drm/i915: fix ELD writing for SandyBridge
Subsystems (2)
PATCH 1/1 drm/i915: fix ELD writing for SandyBridge
SandyBridge should be using the same register addresses as IvyBridge.
btw, rename the register names accordingly.
Signed-off-by Wu Fengguang <[email protected]>
--- drivers/gpu/drm/i915/i915_reg.h | 6 +++--- drivers/gpu/drm/i915/intel_display.c | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-)
drivers/gpu/drm/i915/i915_reg.h +3 -3
@@ -3543,8 +3543,8 @@#define GEN5_ELD_VALIDB (1 << 0)#define GEN5_CP_READYB (1 << 1) -#define GEN7_HDMIW_HDMIEDID_A 0xE5050 -#define GEN7_AUD_CNTRL_ST_A 0xE50B4 -#define GEN7_AUD_CNTRL_ST2 0xE50C0 +#define GEN6_HDMIW_HDMIEDID_A 0xE5050 +#define GEN6_AUD_CNTL_ST_A 0xE50B4 +#define GEN6_AUD_CNTRL_ST2 0xE50C0#endif /* _I915_REG_H_ */
drivers/gpu/drm/i915/intel_display.c +5 -5
@@ -5857,14 +5857,14 @@ static void ironlake_write_eld(struct drint aud_cntl_st;int aud_cntrl_st2; -if (IS_IVYBRIDGE (connector->dev)) { - hdmiw_hdmiedid =GEN7_HDMIW_HDMIEDID_A ; - aud_cntl_st =GEN7_AUD_CNTRL_ST_A ; - aud_cntrl_st2 =GEN7_AUD_CNTRL_ST2 ; - }else { +if (IS_GEN5 (connector->dev)) { hdmiw_hdmiedid =GEN5_HDMIW_HDMIEDID_A ; aud_cntl_st =GEN5_AUD_CNTL_ST_A ; aud_cntrl_st2 =GEN5_AUD_CNTL_ST2 ; + }else { + hdmiw_hdmiedid =GEN6_HDMIW_HDMIEDID_A ; + aud_cntl_st =GEN6_AUD_CNTL_ST_A ; + aud_cntrl_st2 =GEN6_AUD_CNTRL_ST2 ; } i =to_intel_crtc (crtc)->pipe;