🔥 Sync 2026-02-04 00:01:29
All checks were successful
target_linux_rockchip / Update target_linux_rockchip (openwrt-25.12) (push) Successful in 8s

This commit is contained in:
2026-02-04 00:01:29 +00:00
parent 60183a3ac8
commit 50af113bed
9 changed files with 36 additions and 38 deletions

View File

@@ -19,7 +19,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -435,7 +435,8 @@ static int rockchip_usb2phy_extcon_regis @@ -433,7 +433,8 @@ static int rockchip_usb2phy_extcon_regis
rockchip_usb2phy_extcon_cable); rockchip_usb2phy_extcon_cable);
if (IS_ERR(edev)) if (IS_ERR(edev))
@@ -28,4 +28,4 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
+ "failed to allocate extcon device\n"); + "failed to allocate extcon device\n");
ret = devm_extcon_dev_register(rphy->dev, edev); ret = devm_extcon_dev_register(rphy->dev, edev);
if (ret) { if (ret)

View File

@@ -83,7 +83,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
init.parent_names = &clk_name; init.parent_names = &clk_name;
init.num_parents = 1; init.num_parents = 1;
} else { } else {
@@ -1407,11 +1425,13 @@ static int rockchip_usb2phy_probe(struct @@ -1408,16 +1426,26 @@ static int rockchip_usb2phy_probe(struct
if (IS_ERR(rphy->phy_reset)) if (IS_ERR(rphy->phy_reset))
return PTR_ERR(rphy->phy_reset); return PTR_ERR(rphy->phy_reset);
@@ -101,10 +101,8 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
+ rphy->num_clks = ret < 0 ? 0 : ret; + rphy->num_clks = ret < 0 ? 0 : ret;
ret = rockchip_usb2phy_clk480m_register(rphy); ret = rockchip_usb2phy_clk480m_register(rphy);
if (ret) { if (ret)
@@ -1419,6 +1439,14 @@ static int rockchip_usb2phy_probe(struct return dev_err_probe(dev, ret, "failed to register 480m output clock\n");
return ret;
}
+ ret = clk_bulk_prepare_enable(rphy->num_clks, rphy->clks); + ret = clk_bulk_prepare_enable(rphy->num_clks, rphy->clks);
+ if (ret) + if (ret)

View File

@@ -17,7 +17,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -1524,6 +1524,30 @@ static int rk3128_usb2phy_tuning(struct @@ -1521,6 +1521,30 @@ static int rk3128_usb2phy_tuning(struct
BIT(2) << BIT_WRITEABLE_SHIFT | 0); BIT(2) << BIT_WRITEABLE_SHIFT | 0);
} }
@@ -48,7 +48,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
static int rk3588_usb2phy_tuning(struct rockchip_usb2phy *rphy) static int rk3588_usb2phy_tuning(struct rockchip_usb2phy *rphy)
{ {
int ret; int ret;
@@ -1952,6 +1976,84 @@ static const struct rockchip_usb2phy_cfg @@ -1949,6 +1973,84 @@ static const struct rockchip_usb2phy_cfg
{ /* sentinel */ } { /* sentinel */ }
}; };
@@ -133,7 +133,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org>
static const struct rockchip_usb2phy_cfg rk3588_phy_cfgs[] = { static const struct rockchip_usb2phy_cfg rk3588_phy_cfgs[] = {
{ {
.reg = 0x0000, .reg = 0x0000,
@@ -2123,6 +2225,7 @@ static const struct of_device_id rockchi @@ -2120,6 +2222,7 @@ static const struct of_device_id rockchi
{ .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs }, { .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs },
{ .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs }, { .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs },
{ .compatible = "rockchip,rk3568-usb2phy", .data = &rk3568_phy_cfgs }, { .compatible = "rockchip,rk3568-usb2phy", .data = &rk3568_phy_cfgs },

View File

@@ -117,7 +117,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
static void dwcmshc_rk3568_set_clock(struct sdhci_host *host, unsigned int clock) static void dwcmshc_rk3568_set_clock(struct sdhci_host *host, unsigned int clock)
{ {
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
@@ -734,6 +800,10 @@ static void rk35xx_sdhci_reset(struct sd @@ -741,6 +807,10 @@ static void rk35xx_sdhci_reset(struct sd
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
struct dwcmshc_priv *dwc_priv = sdhci_pltfm_priv(pltfm_host); struct dwcmshc_priv *dwc_priv = sdhci_pltfm_priv(pltfm_host);
struct rk35xx_priv *priv = dwc_priv->priv; struct rk35xx_priv *priv = dwc_priv->priv;
@@ -128,7 +128,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
if (mask & SDHCI_RESET_ALL && priv->reset) { if (mask & SDHCI_RESET_ALL && priv->reset) {
reset_control_assert(priv->reset); reset_control_assert(priv->reset);
@@ -742,6 +812,9 @@ static void rk35xx_sdhci_reset(struct sd @@ -749,6 +819,9 @@ static void rk35xx_sdhci_reset(struct sd
} }
sdhci_reset(host, mask); sdhci_reset(host, mask);
@@ -138,7 +138,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
} }
static int dwcmshc_rk35xx_init(struct device *dev, struct sdhci_host *host, static int dwcmshc_rk35xx_init(struct device *dev, struct sdhci_host *host,
@@ -1235,6 +1308,15 @@ static const struct dwcmshc_pltfm_data s @@ -1242,6 +1315,15 @@ static const struct dwcmshc_pltfm_data s
}; };
#endif #endif
@@ -154,7 +154,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
static const struct dwcmshc_pltfm_data sdhci_dwcmshc_rk35xx_pdata = { static const struct dwcmshc_pltfm_data sdhci_dwcmshc_rk35xx_pdata = {
.pdata = { .pdata = {
.ops = &sdhci_dwcmshc_rk35xx_ops, .ops = &sdhci_dwcmshc_rk35xx_ops,
@@ -1243,6 +1325,7 @@ static const struct dwcmshc_pltfm_data s @@ -1250,6 +1332,7 @@ static const struct dwcmshc_pltfm_data s
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN | .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN, SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN,
}, },
@@ -162,7 +162,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
.init = dwcmshc_rk35xx_init, .init = dwcmshc_rk35xx_init,
.postinit = dwcmshc_rk35xx_postinit, .postinit = dwcmshc_rk35xx_postinit,
}; };
@@ -1292,7 +1375,8 @@ static const struct cqhci_host_ops dwcms @@ -1299,7 +1382,8 @@ static const struct cqhci_host_ops dwcms
.set_tran_desc = dwcmshc_set_tran_desc, .set_tran_desc = dwcmshc_set_tran_desc,
}; };
@@ -172,7 +172,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
{ {
struct cqhci_host *cq_host; struct cqhci_host *cq_host;
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
@@ -1322,7 +1406,10 @@ static void dwcmshc_cqhci_init(struct sd @@ -1329,7 +1413,10 @@ static void dwcmshc_cqhci_init(struct sd
} }
cq_host->mmio = host->ioaddr + priv->vendor_specific_area2; cq_host->mmio = host->ioaddr + priv->vendor_specific_area2;
@@ -184,7 +184,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
/* Enable using of 128-bit task descriptors */ /* Enable using of 128-bit task descriptors */
dma64 = host->flags & SDHCI_USE_64_BIT_DMA; dma64 = host->flags & SDHCI_USE_64_BIT_DMA;
@@ -1491,7 +1578,7 @@ static int dwcmshc_probe(struct platform @@ -1498,7 +1585,7 @@ static int dwcmshc_probe(struct platform
priv->vendor_specific_area2 = priv->vendor_specific_area2 =
sdhci_readw(host, DWCMSHC_P_VENDOR_AREA2); sdhci_readw(host, DWCMSHC_P_VENDOR_AREA2);

View File

@@ -45,7 +45,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c --- a/drivers/mmc/host/sdhci-of-dwcmshc.c
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c +++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
@@ -1338,6 +1338,7 @@ static const struct dwcmshc_pltfm_data s @@ -1345,6 +1345,7 @@ static const struct dwcmshc_pltfm_data s
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN | .quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN, SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN,
}, },

View File

@@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
status = "okay"; status = "okay";
--- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
@@ -112,6 +112,11 @@ @@ -111,6 +111,11 @@
status = "disabled"; status = "disabled";
}; };

View File

@@ -86,7 +86,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
} }
static unsigned long static unsigned long
@@ -577,7 +567,6 @@ static int rockchip_usb2phy_power_on(str @@ -574,7 +564,6 @@ static int rockchip_usb2phy_power_on(str
{ {
struct rockchip_usb2phy_port *rport = phy_get_drvdata(phy); struct rockchip_usb2phy_port *rport = phy_get_drvdata(phy);
struct rockchip_usb2phy *rphy = dev_get_drvdata(phy->dev.parent); struct rockchip_usb2phy *rphy = dev_get_drvdata(phy->dev.parent);
@@ -94,7 +94,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
int ret; int ret;
dev_dbg(&rport->phy->dev, "port power on\n"); dev_dbg(&rport->phy->dev, "port power on\n");
@@ -589,7 +578,7 @@ static int rockchip_usb2phy_power_on(str @@ -586,7 +575,7 @@ static int rockchip_usb2phy_power_on(str
if (ret) if (ret)
return ret; return ret;
@@ -103,7 +103,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
if (ret) { if (ret) {
clk_disable_unprepare(rphy->clk480m); clk_disable_unprepare(rphy->clk480m);
return ret; return ret;
@@ -618,7 +607,6 @@ static int rockchip_usb2phy_power_off(st @@ -615,7 +604,6 @@ static int rockchip_usb2phy_power_off(st
{ {
struct rockchip_usb2phy_port *rport = phy_get_drvdata(phy); struct rockchip_usb2phy_port *rport = phy_get_drvdata(phy);
struct rockchip_usb2phy *rphy = dev_get_drvdata(phy->dev.parent); struct rockchip_usb2phy *rphy = dev_get_drvdata(phy->dev.parent);
@@ -111,7 +111,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
int ret; int ret;
dev_dbg(&rport->phy->dev, "port power off\n"); dev_dbg(&rport->phy->dev, "port power off\n");
@@ -626,7 +614,7 @@ static int rockchip_usb2phy_power_off(st @@ -623,7 +611,7 @@ static int rockchip_usb2phy_power_off(st
if (rport->suspended) if (rport->suspended)
return 0; return 0;
@@ -120,7 +120,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
if (ret) if (ret)
return ret; return ret;
@@ -790,28 +778,22 @@ static const char *chg_to_string(enum po @@ -787,28 +775,22 @@ static const char *chg_to_string(enum po
static void rockchip_chg_enable_dcd(struct rockchip_usb2phy *rphy, static void rockchip_chg_enable_dcd(struct rockchip_usb2phy *rphy,
bool en) bool en)
{ {
@@ -155,33 +155,33 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
} }
#define CHG_DCD_POLL_TIME (100 * HZ / 1000) #define CHG_DCD_POLL_TIME (100 * HZ / 1000)
@@ -823,7 +805,6 @@ static void rockchip_chg_detect_work(str @@ -820,7 +802,6 @@ static void rockchip_chg_detect_work(str
struct rockchip_usb2phy_port *rport = struct rockchip_usb2phy_port *rport =
container_of(work, struct rockchip_usb2phy_port, chg_work.work); container_of(work, struct rockchip_usb2phy_port, chg_work.work);
struct rockchip_usb2phy *rphy = dev_get_drvdata(rport->phy->dev.parent); struct rockchip_usb2phy *rphy = dev_get_drvdata(rport->phy->dev.parent);
- struct regmap *base = get_reg_base(rphy); - struct regmap *base = get_reg_base(rphy);
bool is_dcd, tmout, vout; bool is_dcd, tmout, vout, vbus_attach;
unsigned long delay; unsigned long delay;
@@ -834,7 +815,7 @@ static void rockchip_chg_detect_work(str @@ -834,7 +815,7 @@ static void rockchip_chg_detect_work(str
if (!rport->suspended)
rockchip_usb2phy_power_off(rport->phy); rockchip_usb2phy_power_off(rport->phy);
/* put the controller in non-driving mode */ /* put the controller in non-driving mode */
- property_enable(base, &rphy->phy_cfg->chg_det.opmode, false); if (!vbus_attach)
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, false); - property_enable(base, &rphy->phy_cfg->chg_det.opmode, false);
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, false);
/* Start DCD processing stage 1 */ /* Start DCD processing stage 1 */
rockchip_chg_enable_dcd(rphy, true); rockchip_chg_enable_dcd(rphy, true);
rphy->chg_state = USB_CHG_STATE_WAIT_FOR_DCD; rphy->chg_state = USB_CHG_STATE_WAIT_FOR_DCD;
@@ -897,7 +878,7 @@ static void rockchip_chg_detect_work(str @@ -898,7 +879,7 @@ static void rockchip_chg_detect_work(str
fallthrough;
case USB_CHG_STATE_DETECTED: case USB_CHG_STATE_DETECTED:
/* put the controller in normal mode */ /* put the controller in normal mode */
- property_enable(base, &rphy->phy_cfg->chg_det.opmode, true); if (!vbus_attach)
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, true); - property_enable(base, &rphy->phy_cfg->chg_det.opmode, true);
+ property_enable(rphy->grf, &rphy->phy_cfg->chg_det.opmode, true);
rockchip_usb2phy_otg_sm_work(&rport->otg_sm_work.work); rockchip_usb2phy_otg_sm_work(&rport->otg_sm_work.work);
dev_dbg(&rport->phy->dev, "charger = %s\n", dev_dbg(&rport->phy->dev, "charger = %s\n",
chg_to_string(rphy->chg_type)); chg_to_string(rphy->chg_type));
@@ -1352,29 +1333,14 @@ static int rockchip_usb2phy_probe(struct @@ -1353,29 +1334,14 @@ static int rockchip_usb2phy_probe(struct
if (!rphy) if (!rphy)
return -ENOMEM; return -ENOMEM;

View File

@@ -107,7 +107,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
} }
static unsigned long static unsigned long
@@ -1335,9 +1360,13 @@ static int rockchip_usb2phy_probe(struct @@ -1336,9 +1361,13 @@ static int rockchip_usb2phy_probe(struct
if (!dev->parent || !dev->parent->of_node || if (!dev->parent || !dev->parent->of_node ||
of_property_present(np, "rockchip,usbgrf")) { of_property_present(np, "rockchip,usbgrf")) {

View File

@@ -28,7 +28,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -1519,6 +1519,28 @@ static int rk3128_usb2phy_tuning(struct @@ -1516,6 +1516,28 @@ static int rk3128_usb2phy_tuning(struct
BIT(2) << BIT_WRITEABLE_SHIFT | 0); BIT(2) << BIT_WRITEABLE_SHIFT | 0);
} }
@@ -57,7 +57,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
static int rk3576_usb2phy_tuning(struct rockchip_usb2phy *rphy) static int rk3576_usb2phy_tuning(struct rockchip_usb2phy *rphy)
{ {
int ret; int ret;
@@ -1901,6 +1923,57 @@ static const struct rockchip_usb2phy_cfg @@ -1898,6 +1920,57 @@ static const struct rockchip_usb2phy_cfg
{ /* sentinel */ } { /* sentinel */ }
}; };
@@ -115,7 +115,7 @@ Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
static const struct rockchip_usb2phy_cfg rk3568_phy_cfgs[] = { static const struct rockchip_usb2phy_cfg rk3568_phy_cfgs[] = {
{ {
.reg = 0xfe8a0000, .reg = 0xfe8a0000,
@@ -2219,6 +2292,7 @@ static const struct of_device_id rockchi @@ -2216,6 +2289,7 @@ static const struct of_device_id rockchi
{ .compatible = "rockchip,rk3328-usb2phy", .data = &rk3328_phy_cfgs }, { .compatible = "rockchip,rk3328-usb2phy", .data = &rk3328_phy_cfgs },
{ .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs }, { .compatible = "rockchip,rk3366-usb2phy", .data = &rk3366_phy_cfgs },
{ .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs }, { .compatible = "rockchip,rk3399-usb2phy", .data = &rk3399_phy_cfgs },