mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
imx: nitrogen6x: mx6qsabrelite: Add support for DVI monitors
A little background is probably appropriate for this patch.
Since "the beginning" of usage of the SABRE Lite and Nitrogen6x
boards, DVI detection has been somewhat broken.
Some (most) DVI monitors don't produce the "HPD" bit in
the PHY_STAT0 register, but do show proper toggling of the
RX_SENSE0..3 bits.
Creating a new the bit-mask to include all five bits and
modifying the 'hdmidet' command and internal detection
routines allows these monitors to function properly in U-Boot.
A related patch to our kernels allows things to work under
Linux:
7d8752905c
Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com>
Acked-by: Stefano Babic <sbabic@denx.de>
This commit is contained in:
parent
a11f18737c
commit
10f779da54
3 changed files with 5 additions and 3 deletions
|
@ -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,
|
||||
|
|
|
@ -901,6 +901,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,
|
||||
|
|
|
@ -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 do_enable_hdmi(struct display_info_t const *dev)
|
||||
|
|
Loading…
Reference in a new issue