mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-10-02 01:20:47 +09:00
arm: mx6: cm-fx6: map HDMI to IPU1 DI0 explicitly
U-Boot does not explicitly assign the display to an IPU interface. Instead, it relies on the power-on default of DI0. Since the kernel reassigns HDMI display to DI1, after a warm reset the HDMI display no longer works in U-Boot. Fix this by explicitly assigning HDMI to IPU1 DI0 in U-Boot. Cc: Stefano Babic <sbabic@denx.de> Cc: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
This commit is contained in:
parent
361b715bbf
commit
75dbbbfdf3
@ -83,6 +83,7 @@ size_t display_count = ARRAY_SIZE(displays);
|
|||||||
static void cm_fx6_setup_display(void)
|
static void cm_fx6_setup_display(void)
|
||||||
{
|
{
|
||||||
struct mxc_ccm_reg *mxc_ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
|
struct mxc_ccm_reg *mxc_ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
|
||||||
|
struct iomuxc *const iomuxc_regs = (struct iomuxc *)IOMUXC_BASE_ADDR;
|
||||||
int reg;
|
int reg;
|
||||||
|
|
||||||
enable_ipu_clock();
|
enable_ipu_clock();
|
||||||
@ -90,6 +91,7 @@ static void cm_fx6_setup_display(void)
|
|||||||
reg = __raw_readl(&mxc_ccm->CCGR3);
|
reg = __raw_readl(&mxc_ccm->CCGR3);
|
||||||
reg |= MXC_CCM_CCGR3_IPU1_IPU_DI0_MASK;
|
reg |= MXC_CCM_CCGR3_IPU1_IPU_DI0_MASK;
|
||||||
writel(reg, &mxc_ccm->CCGR3);
|
writel(reg, &mxc_ccm->CCGR3);
|
||||||
|
clrbits_le32(&iomuxc_regs->gpr[3], MXC_CCM_CCGR3_IPU1_IPU_DI0_MASK);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
static inline void cm_fx6_setup_display(void) {}
|
static inline void cm_fx6_setup_display(void) {}
|
||||||
|
Loading…
Reference in New Issue
Block a user