mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-10 21:07:02 +09:00
phy: rockchip: inno-hdmi: manual power down RK3328 post-PLL with no uboot logo
For 3328, inno hdmi phy post pll is enabled by default, it's need to manual power down post pll if uboot logo is not shown. Change-Id: Ia175ff0aad006be950b8bc13e1cf2ecb4f00e04c Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
This commit is contained in:
@@ -726,25 +726,6 @@ inno_hdmi_phy_rk3228_pre_pll_update(struct inno_hdmi_phy *inno,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void inno_hdmi_phy_rk3328_init(struct inno_hdmi_phy *inno)
|
||||
{
|
||||
/*
|
||||
* Use phy internal register control
|
||||
* rxsense/poweron/pllpd/pdataen signal.
|
||||
*/
|
||||
inno_write(inno, 0x01, 0x07);
|
||||
inno_write(inno, 0x02, 0x91);
|
||||
|
||||
/*
|
||||
* reg0xc8 default value is 0xc0, if phy had been set in uboot,
|
||||
* the value of bit[7:6] will be zero.
|
||||
*/
|
||||
if ((inno_read(inno, 0xc8) & 0xc0) == 0) {
|
||||
dev_info(inno->dev, "phy had been powered up\n");
|
||||
inno->phy->power_count = 1;
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
inno_hdmi_phy_rk3328_power_on(struct inno_hdmi_phy *inno,
|
||||
const struct post_pll_config *cfg,
|
||||
@@ -838,6 +819,28 @@ static void inno_hdmi_phy_rk3328_power_off(struct inno_hdmi_phy *inno)
|
||||
inno_update_bits(inno, 0xaa, 1, 1);
|
||||
}
|
||||
|
||||
static void inno_hdmi_phy_rk3328_init(struct inno_hdmi_phy *inno)
|
||||
{
|
||||
/*
|
||||
* Use phy internal register control
|
||||
* rxsense/poweron/pllpd/pdataen signal.
|
||||
*/
|
||||
inno_write(inno, 0x01, 0x07);
|
||||
inno_write(inno, 0x02, 0x91);
|
||||
|
||||
/*
|
||||
* reg0xc8 default value is 0xc0, if phy had been set in uboot,
|
||||
* the value of bit[7:6] will be zero.
|
||||
*/
|
||||
if ((inno_read(inno, 0xc8) & 0xc0) == 0) {
|
||||
dev_info(inno->dev, "phy had been powered up\n");
|
||||
inno->phy->power_count = 1;
|
||||
} else {
|
||||
/* manual power down post-PLL */
|
||||
inno_hdmi_phy_rk3328_power_off(inno);
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
inno_hdmi_phy_rk3328_pre_pll_update(struct inno_hdmi_phy *inno,
|
||||
const struct pre_pll_config *cfg)
|
||||
|
||||
Reference in New Issue
Block a user