aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>2017-01-17 03:29:04 -0500
committerArchit Taneja <architt@codeaurora.org>2017-01-17 22:59:35 -0500
commit0c674948b7f4e4ffc19ba5af65a274e945c0c689 (patch)
treedac461835e4d375dcd47e6539f8d04d604faa5bb
parent0527e12e8264ae96b1fcc550b4a9e5940f4ffc30 (diff)
drm: bridge: dw-hdmi: Detect AHB audio DMA using correct register
Bit 0 in CONFIG1_ID tells whether the IP core uses an AHB slave interface for control. The correct way to identify AHB audio DMA support is through bit 1 in CONFIG3_ID. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Reviewed-by: Jose Abreu <joabreu@synopsys.com> Signed-off-by: Archit Taneja <architt@codeaurora.org> Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-15-laurent.pinchart+renesas@ideasonboard.com
-rw-r--r--drivers/gpu/drm/bridge/dw-hdmi.c6
-rw-r--r--drivers/gpu/drm/bridge/dw-hdmi.h4
2 files changed, 7 insertions, 3 deletions
diff --git a/drivers/gpu/drm/bridge/dw-hdmi.c b/drivers/gpu/drm/bridge/dw-hdmi.c
index 1809247745b8..730a7558d4d4 100644
--- a/drivers/gpu/drm/bridge/dw-hdmi.c
+++ b/drivers/gpu/drm/bridge/dw-hdmi.c
@@ -1836,7 +1836,7 @@ __dw_hdmi_probe(struct platform_device *pdev,
1836 u8 prod_id0; 1836 u8 prod_id0;
1837 u8 prod_id1; 1837 u8 prod_id1;
1838 u8 config0; 1838 u8 config0;
1839 u8 config1; 1839 u8 config3;
1840 1840
1841 hdmi = devm_kzalloc(dev, sizeof(*hdmi), GFP_KERNEL); 1841 hdmi = devm_kzalloc(dev, sizeof(*hdmi), GFP_KERNEL);
1842 if (!hdmi) 1842 if (!hdmi)
@@ -1988,9 +1988,9 @@ __dw_hdmi_probe(struct platform_device *pdev,
1988 pdevinfo.id = PLATFORM_DEVID_AUTO; 1988 pdevinfo.id = PLATFORM_DEVID_AUTO;
1989 1989
1990 config0 = hdmi_readb(hdmi, HDMI_CONFIG0_ID); 1990 config0 = hdmi_readb(hdmi, HDMI_CONFIG0_ID);
1991 config1 = hdmi_readb(hdmi, HDMI_CONFIG1_ID); 1991 config3 = hdmi_readb(hdmi, HDMI_CONFIG3_ID);
1992 1992
1993 if (config1 & HDMI_CONFIG1_AHB) { 1993 if (config3 & HDMI_CONFIG3_AHBAUDDMA) {
1994 struct dw_hdmi_audio_data audio; 1994 struct dw_hdmi_audio_data audio;
1995 1995
1996 audio.phys = iores->start; 1996 audio.phys = iores->start;
diff --git a/drivers/gpu/drm/bridge/dw-hdmi.h b/drivers/gpu/drm/bridge/dw-hdmi.h
index 91d7fabbd6e5..a4fd64a203c9 100644
--- a/drivers/gpu/drm/bridge/dw-hdmi.h
+++ b/drivers/gpu/drm/bridge/dw-hdmi.h
@@ -559,6 +559,10 @@ enum {
559/* CONFIG1_ID field values */ 559/* CONFIG1_ID field values */
560 HDMI_CONFIG1_AHB = 0x01, 560 HDMI_CONFIG1_AHB = 0x01,
561 561
562/* CONFIG3_ID field values */
563 HDMI_CONFIG3_AHBAUDDMA = 0x02,
564 HDMI_CONFIG3_GPAUD = 0x01,
565
562/* IH_FC_INT2 field values */ 566/* IH_FC_INT2 field values */
563 HDMI_IH_FC_INT2_OVERFLOW_MASK = 0x03, 567 HDMI_IH_FC_INT2_OVERFLOW_MASK = 0x03,
564 HDMI_IH_FC_INT2_LOW_PRIORITY_OVERFLOW = 0x02, 568 HDMI_IH_FC_INT2_LOW_PRIORITY_OVERFLOW = 0x02,