media: i2c: rk628: reduce power consumption when there is no hdmi in

Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: Idc4b5f2b6372414e61634b3144b01d6ca0acc447
This commit is contained in:
Chen Shunqing
2024-08-09 14:48:56 +08:00
committed by Tao Huang
parent e67dbfb61f
commit b56ae053d3
2 changed files with 5 additions and 7 deletions

View File

@@ -246,10 +246,10 @@ EXPORT_SYMBOL(rk628_txphy_power_on);
void rk628_txphy_power_off(struct rk628 *rk628)
{
rk628_i2c_update_bits(rk628, COMBTXPHY_CON0, SW_TX_IDLE_MASK | SW_TX_PD_MASK |
SW_PD_PLL_MASK | SW_MODULEB_EN_MASK |
SW_MODULEA_EN_MASK, SW_TX_IDLE(0x3ff) |
SW_TX_PD(0x3ff) | SW_PD_PLL);
rk628_i2c_update_bits(rk628, COMBTXPHY_CON0, SW_TX_IDLE_MASK | SW_TX_PD_MASK |
SW_PD_PLL_MASK | SW_MODULEB_EN_MASK | SW_MODULEA_EN_MASK |
SW_GVI_LVDS_EN_MASK | SW_MIPI_DSI_EN_MASK,
SW_TX_IDLE(0x3ff) | SW_TX_PD(0x3ff) | SW_PD_PLL);
}
EXPORT_SYMBOL(rk628_txphy_power_off);

View File

@@ -494,6 +494,7 @@ static void rk628_hdmirx_plugout(struct v4l2_subdev *sd)
rk628_hdmirx_hpd_ctrl(sd, false);
rk628_hdmirx_inno_phy_power_off(sd);
rk628_hdmirx_verisyno_phy_power_off(csi->rk628);
mipi_dphy_power_off(csi);
}
static void rk628_hdmirx_config_all(struct v4l2_subdev *sd)
@@ -1458,9 +1459,6 @@ static void rk628_csi_initial_setup(struct v4l2_subdev *sd)
}
csi->rk628->dphy_lane_en = 0x1f;
if (csi->plat_data->tx_mode == CSI_MODE)
mipi_dphy_power_on(csi);
csi->txphy_pwron = true;
if (tx_5v_power_present(sd))
schedule_delayed_work(&csi->delayed_work_enable_hotplug, msecs_to_jiffies(4000));