blob: 593144d1d072b80982b34b1e4efd60fa315a119a [file] [log] [blame]
Angel Pons4b429832020-04-02 23:48:50 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Aaron Durbin76c37002012-10-30 09:03:43 -05002
Iru Caid7ee9dd2016-02-24 15:03:58 +08003#ifndef NORTHBRIDGE_INTEL_HASWELL_CHIP_H
4#define NORTHBRIDGE_INTEL_HASWELL_CHIP_H
5
Vladimir Serbinenkodd2bc3f2014-10-31 09:16:31 +01006#include <drivers/intel/gma/i915.h>
7
Aaron Durbin76c37002012-10-30 09:03:43 -05008/*
9 * Digital Port Hotplug Enable:
Angel Pons1db5bc72020-01-15 00:49:03 +010010 * 0x04 = Enabled, 2ms short pulse
Aaron Durbin76c37002012-10-30 09:03:43 -050011 * 0x05 = Enabled, 4.5ms short pulse
Angel Pons1db5bc72020-01-15 00:49:03 +010012 * 0x06 = Enabled, 6ms short pulse
Aaron Durbin76c37002012-10-30 09:03:43 -050013 * 0x07 = Enabled, 100ms short pulse
14 */
15struct northbridge_intel_haswell_config {
16 u8 gpu_dp_b_hotplug; /* Digital Port B Hotplug Config */
17 u8 gpu_dp_c_hotplug; /* Digital Port C Hotplug Config */
18 u8 gpu_dp_d_hotplug; /* Digital Port D Hotplug Config */
19
20 u8 gpu_panel_port_select; /* 0=LVDS 1=DP_B 2=DP_C 3=DP_D */
21 u8 gpu_panel_power_cycle_delay; /* T4 time sequence */
22 u16 gpu_panel_power_up_delay; /* T1+T2 time sequence */
23 u16 gpu_panel_power_down_delay; /* T3 time sequence */
24 u16 gpu_panel_power_backlight_on_delay; /* T5 time sequence */
25 u16 gpu_panel_power_backlight_off_delay; /* Tx time sequence */
26
Nico Huberc2e46422020-03-23 01:22:49 +010027 unsigned int gpu_pch_backlight_pwm_hz;
28 enum {
29 GPU_BACKLIGHT_POLARITY_HIGH = 0,
30 GPU_BACKLIGHT_POLARITY_LOW,
31 } gpu_pch_backlight_polarity;
Vladimir Serbinenkodd2bc3f2014-10-31 09:16:31 +010032
Tristan Corrick1a73eb02018-10-31 02:27:29 +130033 bool gpu_ddi_e_connected;
34
Vladimir Serbinenkodd2bc3f2014-10-31 09:16:31 +010035 struct i915_gpu_controller_info gfx;
Aaron Durbin76c37002012-10-30 09:03:43 -050036};
37
Iru Caid7ee9dd2016-02-24 15:03:58 +080038#endif /* NORTHBRIDGE_INTEL_HASWELL_CHIP_H */