From e38af60ecf1dcc422c53f0f46a42cc38ffe69b23 Mon Sep 17 00:00:00 2001 From: Jianwei Zheng Date: Mon, 10 Feb 2025 16:33:26 +0800 Subject: [PATCH] phy: rockchip: inno-usb2: disable vbus detection in low power mode This patch disable vbus detection in low power mode to save power. Change-Id: Ic9536d26d6e9d9ab57e4e20b9f43859f445ada0c Signed-off-by: Jianwei Zheng --- drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c index d9c3cf376008..0661c8094bea 100644 --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c @@ -2649,8 +2649,12 @@ rockchip_usb2phy_low_power_enable(struct rockchip_usb2phy *rphy, if (ret) return ret; - ret = property_enable(rphy->grf, &rport->port_cfg->vbus_det_en, - !value); + if (rphy->phy_cfg->vbus_detect) + rphy->phy_cfg->vbus_detect(rphy, &rport->port_cfg->vbus_det_en, + !value); + else + ret = property_enable(rphy->grf, &rport->port_cfg->vbus_det_en, + !value); } else if (rport->port_id == USB2PHY_PORT_HOST) { dev_info(&rport->phy->dev, "set host port low power state %d\n", value); @@ -4030,7 +4034,7 @@ static const struct rockchip_usb2phy_cfg rk3506_phy_cfgs[] = { .utmi_iddig = { 0x0118, 6, 6, 0, 1 }, .utmi_ls = { 0x0118, 5, 4, 0, 1 }, .utmi_hstdet = { 0x0118, 7, 7, 0, 1 }, - .vbus_det_en = { 0x003c, 15, 15, 1, 0 }, + .vbus_det_en = { 0x003c, 7, 7, 0, 1 }, .port_ls_filter_con = { 0x0160, 19, 0, 0x30100, 0x20 }, }, [USB2PHY_PORT_HOST] = { @@ -4062,7 +4066,7 @@ static const struct rockchip_usb2phy_cfg rk3506_phy_cfgs[] = { .utmi_iddig = { 0x0118, 14, 14, 0, 1 }, .utmi_ls = { 0x0118, 13, 12, 0, 1 }, .utmi_hstdet = { 0x0118, 15, 15, 0, 1 }, - .vbus_det_en = { 0x043c, 15, 15, 1, 0 }, + .vbus_det_en = { 0x043c, 7, 7, 0, 1 }, .port_ls_filter_con = { 0x0180, 19, 0, 0x30100, 0x20 }, } },