pdm360ng: add EDID property to FDT display node

PDM360NG board uses this functionality to pass display
timing info to the Linux Framebuffer driver.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
master
Anatolij Gustschin 15 years ago committed by Wolfgang Denk
parent beca5a5f5b
commit 6213b8ffa5
  1. 43
      board/pdm360ng/pdm360ng.c

@ -515,6 +515,46 @@ struct node_info nodes[] = {
};
#endif
#if defined(CONFIG_VIDEO)
/*
* EDID block has been generated using Phoenix EDID Designer 1.3.
* This tool creates a text file containing:
*
* EDID BYTES:
* 0x 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
* ------------------------------------------------
* 00 | 00 FF FF FF FF FF FF 00 42 C9 34 12 01 00 00 00
* 10 | 0A 0C 01 03 80 98 5B 78 CA 7E 50 A0 58 4E 96 25
* 20 | 1E 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
* 30 | 01 01 01 01 01 01 80 0C 20 00 31 E0 2D 10 2A 80
* 40 | 12 08 30 E4 10 00 00 18 00 00 00 FD 00 38 3C 1F
* 50 | 3C 04 0A 20 20 20 20 20 20 20 00 00 00 FF 00 50
* 60 | 4D 30 37 30 57 4C 33 0A 0A 0A 0A 0A 00 00 00 FF
* 70 | 00 41 30 30 30 30 30 30 30 30 30 30 30 31 00 D4
*
* Then this data has been manually converted to the char
* array below.
*/
static unsigned char edid_buf[128] = {
0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
0x42, 0xC9, 0x34, 0x12, 0x01, 0x00, 0x00, 0x00,
0x0A, 0x0C, 0x01, 0x03, 0x80, 0x98, 0x5B, 0x78,
0xCA, 0x7E, 0x50, 0xA0, 0x58, 0x4E, 0x96, 0x25,
0x1E, 0x50, 0x54, 0x00, 0x00, 0x00, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x80, 0x0C,
0x20, 0x00, 0x31, 0xE0, 0x2D, 0x10, 0x2A, 0x80,
0x12, 0x08, 0x30, 0xE4, 0x10, 0x00, 0x00, 0x18,
0x00, 0x00, 0x00, 0xFD, 0x00, 0x38, 0x3C, 0x1F,
0x3C, 0x04, 0x0A, 0x20, 0x20, 0x20, 0x20, 0x20,
0x20, 0x20, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x50,
0x4D, 0x30, 0x37, 0x30, 0x57, 0x4C, 0x33, 0x0A,
0x0A, 0x0A, 0x0A, 0x0A, 0x00, 0x00, 0x00, 0xFF,
0x00, 0x41, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
0x30, 0x30, 0x30, 0x30, 0x30, 0x31, 0x00, 0xD4,
};
#endif
void ft_board_setup(void *blob, bd_t *bd)
{
u32 val[8];
@ -525,6 +565,9 @@ void ft_board_setup(void *blob, bd_t *bd)
#ifdef CONFIG_FDT_FIXUP_PARTITIONS
fdt_fixup_mtdparts(blob, nodes, ARRAY_SIZE(nodes));
#endif
#if defined(CONFIG_VIDEO)
fdt_add_edid(blob, "fsl,mpc5121-diu", edid_buf);
#endif
/* Fixup NOR FLASH mapping */
val[i++] = 0; /* chip select number */

Loading…
Cancel
Save