google/scarlet: support INNOLUX P097PFG panel
Add INNOLUX P097PFG panel timing. According to Scalet schematic, if GPIO3_D4 get low status, it will use INNOLUX P097PFG panel; if GPIO3_D4 get high status, it will use KD097d04 panel. Change-Id: I43fa5d859a9a529a84c58a953b37d03953ce648a Signed-off-by: Lin Huang <hl@rock-chips.com> Reviewed-on: https://review.coreboot.org/22780 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
parent
19f67a392a
commit
318a03a417
|
@ -534,12 +534,48 @@ static const struct edid_mode kd097d04_edid_mode = {
|
||||||
.vspw = 2,
|
.vspw = 2,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const struct mipi_panel_data inx097pfg_panel = {
|
||||||
|
.mipi_num = 2,
|
||||||
|
.format = MIPI_DSI_FMT_RGB888,
|
||||||
|
.lanes = 8,
|
||||||
|
.display_on_udelay = 120000,
|
||||||
|
.video_mode_udelay = 5000,
|
||||||
|
};
|
||||||
|
|
||||||
|
static const struct edid_mode inx097pfg_edid_mode = {
|
||||||
|
.name = "1536x2048@60Hz",
|
||||||
|
.pixel_clock = 220000,
|
||||||
|
.refresh = 60,
|
||||||
|
.ha = 1536,
|
||||||
|
.hbl = 224,
|
||||||
|
.hso = 100,
|
||||||
|
.hspw = 24,
|
||||||
|
.va = 2048,
|
||||||
|
.vbl = 38,
|
||||||
|
.vso = 18,
|
||||||
|
.vspw = 2,
|
||||||
|
};
|
||||||
|
|
||||||
const struct mipi_panel_data *mainboard_get_mipi_mode
|
const struct mipi_panel_data *mainboard_get_mipi_mode
|
||||||
(struct edid_mode *edid_mode)
|
(struct edid_mode *edid_mode)
|
||||||
{
|
{
|
||||||
memcpy(edid_mode, &kd097d04_edid_mode, sizeof(struct edid_mode));
|
switch (sku_id()) {
|
||||||
|
case 0:
|
||||||
return &kd097d04_panel;
|
case 2:
|
||||||
|
case 4:
|
||||||
|
case 6:
|
||||||
|
memcpy(edid_mode, &inx097pfg_edid_mode,
|
||||||
|
sizeof(struct edid_mode));
|
||||||
|
return &inx097pfg_panel;
|
||||||
|
case 1:
|
||||||
|
case 3:
|
||||||
|
case 5:
|
||||||
|
case 7:
|
||||||
|
default:
|
||||||
|
memcpy(edid_mode, &kd097d04_edid_mode,
|
||||||
|
sizeof(struct edid_mode));
|
||||||
|
return &kd097d04_panel;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mainboard_enable(device_t dev)
|
static void mainboard_enable(device_t dev)
|
||||||
|
|
Loading…
Reference in New Issue