public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] imx: nitrogen6x: mx6qsabrelite: Add support for DVI monitors
@ 2013-07-22 20:33 Robert Winkler
  2013-07-23 21:43 ` Eric Nelson
  0 siblings, 1 reply; 4+ messages in thread
From: Robert Winkler @ 2013-07-22 20:33 UTC (permalink / raw)
  To: u-boot

DVI monitors show up as the RX_SENSE bits in the
HDMI_PHY_STAT0 register, ie F0 so we really want to check
against F2 to support both HDMI and DVI.

Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com>
---
 arch/arm/imx-common/cmd_hdmidet.c             | 3 +--
 arch/arm/include/asm/arch-mx6/mxc_hdmi.h      | 3 +++
 board/boundary/nitrogen6x/nitrogen6x.c        | 2 +-
 board/freescale/mx6qsabrelite/mx6qsabrelite.c | 2 +-
 4 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/arch/arm/imx-common/cmd_hdmidet.c b/arch/arm/imx-common/cmd_hdmidet.c
index 794bf50..ce0b26e 100644
--- a/arch/arm/imx-common/cmd_hdmidet.c
+++ b/arch/arm/imx-common/cmd_hdmidet.c
@@ -27,8 +27,7 @@
 static int do_hdmidet(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
 	struct hdmi_regs *hdmi	= (struct hdmi_regs *)HDMI_ARB_BASE_ADDR;
-	u8 reg = readb(&hdmi->phy_stat0) & HDMI_PHY_HPD;
-	return (reg&HDMI_PHY_HPD) ? 0 : 1;
+	return (readb(&hdmi->phy_stat0) & HDMI_DVI_STAT) ? 0 : 1;
 }
 
 U_BOOT_CMD(hdmidet, 1, 1, do_hdmidet,
diff --git a/arch/arm/include/asm/arch-mx6/mxc_hdmi.h b/arch/arm/include/asm/arch-mx6/mxc_hdmi.h
index 9dccb3f..1b55b05 100644
--- a/arch/arm/include/asm/arch-mx6/mxc_hdmi.h
+++ b/arch/arm/include/asm/arch-mx6/mxc_hdmi.h
@@ -896,6 +896,9 @@ enum {
 	HDMI_PHY_HPD = 0x02,
 	HDMI_PHY_TX_PHY_LOCK = 0x01,
 
+/* Convenience macro RX_SENSE | HPD */
+	HDMI_DVI_STAT = 0xF2,
+
 /* PHY_I2CM_SLAVE_ADDR field values */
 	HDMI_PHY_I2CM_SLAVE_ADDR_PHY_GEN2 = 0x69,
 	HDMI_PHY_I2CM_SLAVE_ADDR_HEAC_PHY = 0x49,
diff --git a/board/boundary/nitrogen6x/nitrogen6x.c b/board/boundary/nitrogen6x/nitrogen6x.c
index 8f0f9b8..bb09a6a 100644
--- a/board/boundary/nitrogen6x/nitrogen6x.c
+++ b/board/boundary/nitrogen6x/nitrogen6x.c
@@ -477,7 +477,7 @@ struct display_info_t {
 static int detect_hdmi(struct display_info_t const *dev)
 {
 	struct hdmi_regs *hdmi	= (struct hdmi_regs *)HDMI_ARB_BASE_ADDR;
-	return readb(&hdmi->phy_stat0) & HDMI_PHY_HPD;
+	return readb(&hdmi->phy_stat0) & HDMI_DVI_STAT;
 }
 
 static void enable_hdmi(struct display_info_t const *dev)
diff --git a/board/freescale/mx6qsabrelite/mx6qsabrelite.c b/board/freescale/mx6qsabrelite/mx6qsabrelite.c
index 862bc30..559b082 100644
--- a/board/freescale/mx6qsabrelite/mx6qsabrelite.c
+++ b/board/freescale/mx6qsabrelite/mx6qsabrelite.c
@@ -449,7 +449,7 @@ struct display_info_t {
 static int detect_hdmi(struct display_info_t const *dev)
 {
 	struct hdmi_regs *hdmi	= (struct hdmi_regs *)HDMI_ARB_BASE_ADDR;
-	return readb(&hdmi->phy_stat0) & HDMI_PHY_HPD;
+	return readb(&hdmi->phy_stat0) & HDMI_DVI_STAT;
 }
 
 static void enable_hdmi(struct display_info_t const *dev)
-- 
1.8.3.2

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-07-23 22:12 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-22 20:33 [U-Boot] [PATCH] imx: nitrogen6x: mx6qsabrelite: Add support for DVI monitors Robert Winkler
2013-07-23 21:43 ` Eric Nelson
2013-07-23 21:46   ` Fabio Estevam
2013-07-23 22:12     ` Eric Nelson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox