From 130a5ca25fbedb58e49b613e4a7cece715b545ae Mon Sep 17 00:00:00 2001
From: Nicholas Chin <nic.c3.14@gmail.com>
Date: Mon, 20 May 2024 10:24:16 -0600
Subject: [PATCH 18/48] mb/dell/e6400: Use 100 MHz reference clock for display

The E6400 uses a 100 MHz reference clock for spread spectrum support on
LVDS, whereas libgfxinit previously assumed a 96 MHz input clock. For
the more common 1280 x 800 display panels, the numerical error was not
large enough to cause noticable issues, but the actual pixel clock
frequency derived from a 100 MHz reference using PLL configs calculated
assuming a 96 MHz reference was not close enough for 1440 x 900 panels,
which require a much higher pixel clock. This resulted in a garbled
display in the pre-OS graphics environment provided by libgfxinit.

Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
---
 src/mainboard/dell/gm45_latitude/Kconfig | 2 ++
 src/northbridge/intel/gm45/Kconfig       | 4 ++++
 2 files changed, 6 insertions(+)

diff --git a/src/mainboard/dell/gm45_latitude/Kconfig b/src/mainboard/dell/gm45_latitude/Kconfig
index edc79b0d43..5020744990 100644
--- a/src/mainboard/dell/gm45_latitude/Kconfig
+++ b/src/mainboard/dell/gm45_latitude/Kconfig
@@ -22,6 +22,8 @@ config BOARD_DELL_E6400
 	select BOARD_DELL_GM45_LATITUDE_COMMON
 
 if BOARD_DELL_GM45_LATITUDE_COMMON
+config INTEL_GMA_DPLL_REF_FREQ
+	default 100000000
 
 config MAINBOARD_DIR
 	default "dell/gm45_latitude"
diff --git a/src/northbridge/intel/gm45/Kconfig b/src/northbridge/intel/gm45/Kconfig
index a776217475..35e89b0c88 100644
--- a/src/northbridge/intel/gm45/Kconfig
+++ b/src/northbridge/intel/gm45/Kconfig
@@ -14,6 +14,10 @@ config NORTHBRIDGE_INTEL_GM45
 
 if NORTHBRIDGE_INTEL_GM45
 
+config INTEL_GMA_DPLL_REF_FREQ
+	int
+	default 96000000
+
 config VBOOT
 	select VBOOT_STARTS_IN_BOOTBLOCK
 
-- 
2.47.3

