nb/intel/x4x/gma.c: Probe VGA EDID on DVI-I ports

This allows the use of the native VGA init on boards featuring DVI-I
ports. Digital output is not supported.

Change-Id: I11a4dd68746e06c7e27ecf3e765bdd0d8cf40515
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/20890
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Arthur Heymans 2017-08-06 16:00:18 +02:00 committed by Nico Huber
parent ccdef19cfb
commit c3cbe9433c
1 changed files with 14 additions and 1 deletions

View File

@ -74,6 +74,15 @@ static void intel_gma_init(const struct northbridge_intel_x4x_config *info,
u32 pixel_m1 = 1; u32 pixel_m1 = 1;
u32 pixel_m2 = 1; u32 pixel_m2 = 1;
u8 vga_gmbus = GMBUS_PORT_VGADDC;
if (IS_ENABLED(CONFIG_GFX_GMA_ANALOG_I2C_HDMI_B))
vga_gmbus = GMBUS_PORT_DPB;
else if (IS_ENABLED(CONFIG_GFX_GMA_ANALOG_I2C_HDMI_C))
vga_gmbus = GMBUS_PORT_DPC;
else if (IS_ENABLED(CONFIG_GFX_GMA_ANALOG_I2C_HDMI_D))
vga_gmbus = GMBUS_PORT_DPD;
vga_gr_write(0x18, 0); vga_gr_write(0x18, 0);
/* Set up GTT */ /* Set up GTT */
@ -113,7 +122,11 @@ static void intel_gma_init(const struct northbridge_intel_x4x_config *info,
udelay(1); udelay(1);
intel_gmbus_read_edid(mmio + GMBUS0, GMBUS_PORT_VGADDC, 0x50, edid_data, /*
* TODO: check if it is actually an analog display.
* No harm is done but the console output could be confusing.
*/
intel_gmbus_read_edid(mmio + GMBUS0, vga_gmbus, 0x50, edid_data,
sizeof(edid_data)); sizeof(edid_data));
intel_gmbus_stop(mmio + GMBUS0); intel_gmbus_stop(mmio + GMBUS0);
decode_edid(edid_data, decode_edid(edid_data,