aboutsummaryrefslogtreecommitdiff
path: root/src/northbridge/intel/i945/chip.h
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2017-01-14 22:31:54 +0100
committerNico Huber <nico.h@gmx.de>2017-03-18 16:54:08 +0100
commit8e079000dc606e4d54d36051173710f4186443c2 (patch)
tree70f84ae65487732ee2abbd57753fc9fafc406a96 /src/northbridge/intel/i945/chip.h
parent216712ae01993e83265470de1e29744a0970e4fa (diff)
nb/i945/gma.c: Refactor panel setup
This reuses some of gm45 code to set up the panel. Panel start and stop delays and pwm frequency can now be set in devicetree. Linux does not make the difference between 945gm and gm45 for panel delays, so it is safe to assume the semantics of those registers are the same. The core display clock is computed according to "Mobile IntelĀ® 945 Express Chipset Family" Datasheet. This selects Legacy backlight mode since most targets have some smm code that rely on this. This sets the same backlight frequency as vendor bios on Thinkpad X60 and T60. A default of 180Hz is selected for the PWM frequency if it is not defined in the devicetree, this might be annoying for displays that are LED backlit, but is a safe value for CCFL backlit displays. Change-Id: I1c47b68eecc19624ee534598c22da183bc89425d Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/18141 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Nico Huber <nico.h@gmx.de>
Diffstat (limited to 'src/northbridge/intel/i945/chip.h')
-rw-r--r--src/northbridge/intel/i945/chip.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/northbridge/intel/i945/chip.h b/src/northbridge/intel/i945/chip.h
index 8eaa5b4a40..3925a73ff2 100644
--- a/src/northbridge/intel/i945/chip.h
+++ b/src/northbridge/intel/i945/chip.h
@@ -4,8 +4,17 @@
#include <drivers/intel/gma/i915.h>
struct northbridge_intel_i945_config {
+ /* In units of 100us timer */
+ /* Timings as defined in VESA Notebook Panel Standard */
+ u16 gpu_panel_power_up_delay; /* T1+T2 time sequence */
+ u16 gpu_panel_power_down_delay; /* T3 time sequence */
+ u16 gpu_panel_power_backlight_on_delay; /* T5 time sequence */
+ u16 gpu_panel_power_backlight_off_delay; /* Tx time sequence */
+ /* In units of 0.1s */
+ u8 gpu_panel_power_cycle_delay;
+
u32 gpu_hotplug;
- u32 gpu_backlight;
+ u32 pwm_freq;
int gpu_lvds_use_spread_spectrum_clock;
struct i915_gpu_controller_info gfx;
int pci_mmio_size;