Skip to contentSkip to conversation

phy: broadcom: bcm63xx-usbh: fix section mismatches

PATCH Applied Johan Hovold 3 participants 4 messages Oct 17, 2025 – Nov 20, 2025

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 phy: broadcom: bcm63xx-usbh: fix section mismatches

Platform drivers can be probed after their init sections have been discarded (e.g. on probe deferral or manual rebind through sysfs) so the probe function and match table must not live in init.

Fixes 783f6d3dcf35 ("phy: bcm63xx-usbh: Add BCM63xx USBH driver")
Cc Álvaro Fernández Rojas <[email protected]>
---
 drivers/phy/broadcom/phy-bcm63xx-usbh.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/phy/broadcom/phy-bcm63xx-usbh.c +3 -3
index 647644de041b..29fd6791bae6 100644
@@ -375,7 +375,7 @@ static struct phy *bcm63xx_usbh_phy_xlate(struct device *dev,
 	return of_phy_simple_xlate(dev, args);
 }
 
-static int __init bcm63xx_usbh_phy_probe(struct platform_device *pdev)
+static int bcm63xx_usbh_phy_probe(struct platform_device *pdev)
 {
 	struct device *dev = &pdev->dev;
 	struct bcm63xx_usbh_phy	*usbh;
@@ -432,7 +432,7 @@ static int __init bcm63xx_usbh_phy_probe(struct platform_device *pdev)
 	return 0;
 }
 
-static const struct of_device_id bcm63xx_usbh_phy_ids[] __initconst = {
+static const struct of_device_id bcm63xx_usbh_phy_ids[] = {
 	{ .compatible = "brcm,bcm6318-usbh-phy", .data = &usbh_bcm6318 },
 	{ .compatible = "brcm,bcm6328-usbh-phy", .data = &usbh_bcm6328 },
 	{ .compatible = "brcm,bcm6358-usbh-phy", .data = &usbh_bcm6358 },
@@ -443,7 +443,7 @@ static const struct of_device_id bcm63xx_usbh_phy_ids[] __initconst = {
 };
 MODULE_DEVICE_TABLE(of, bcm63xx_usbh_phy_ids);
 
-static struct platform_driver bcm63xx_usbh_phy_driver __refdata = {
+static struct platform_driver bcm63xx_usbh_phy_driver = {
 	.driver	= {
 		.name = "bcm63xx-usbh-phy",
 		.of_match_table = bcm63xx_usbh_phy_ids,
Signature · 1 line
2.49.1
#1 lore raw
Quoted 9 lines · Johan Hovold

Platform drivers can be probed after their init sections have been discarded (e.g. on probe deferral or manual rebind through sysfs) so the probe function and match table must not live in init.

Fixes 783f6d3dcf35 ("phy: bcm63xx-usbh: Add BCM63xx USBH driver")
Cc Álvaro Fernández Rojas <[email protected]>

---

Can this one be picked up for 6.19?

Johan

reviewer Reviewed-by on v1 1/1
#2 lore raw
In reply to Johan Hovold
Quoted 35 lines · Johan Hovold

Platform drivers can be probed after their init sections have been discarded (e.g. on probe deferral or manual rebind through sysfs) so the probe function and match table must not live in init.

Fixes 783f6d3dcf35 ("phy: bcm63xx-usbh: Add BCM63xx USBH driver")
Cc Álvaro Fernández Rojas <[email protected]>
---
  drivers/phy/broadcom/phy-bcm63xx-usbh.c | 6 +++---
  1 file changed, 3 insertions(+), 3 deletions(-)
drivers/phy/broadcom/phy-bcm63xx-usbh.c +2 -2
index 647644de041b..29fd6791bae6 100644
@@ -375,7 +375,7 @@ static struct phy *bcm63xx_usbh_phy_xlate(struct device *dev,
  	return of_phy_simple_xlate(dev, args);
  }
 
-static int __init bcm63xx_usbh_phy_probe(struct platform_device *pdev)
+static int bcm63xx_usbh_phy_probe(struct platform_device *pdev)
  {
  	struct device *dev = &pdev->dev;
  	struct bcm63xx_usbh_phy	*usbh;
@@ -432,7 +432,7 @@ static int __init bcm63xx_usbh_phy_probe(struct platform_device *pdev)
  	return 0;
  }
 
-static const struct of_device_id bcm63xx_usbh_phy_ids[] __initconst = {
+static const struct of_device_id bcm63xx_usbh_phy_ids[] = {
  	{ .compatible = "brcm,bcm6318-usbh-phy", .data = &usbh_bcm6318 },
  	{ .compatible = "brcm,bcm6328-usbh-phy", .data = &usbh_bcm6328 },
  	{ .compatible = "brcm,bcm6358-usbh-phy", .data = &usbh_bcm6358 },

drivers/phy/broadcom/phy-bcm63xx-usbh.c static const struct of_device_id bcm63xx_usbh_phy_ids[] __initconst = { · line 449

Quoted 8 lines
drivers/phy/broadcom/phy-bcm63xx-usbh.c +1 -1
@@ -443,7 +443,7 @@ static const struct of_device_id bcm63xx_usbh_phy_ids[] __initconst = {
  };
  MODULE_DEVICE_TABLE(of, bcm63xx_usbh_phy_ids);
 
-static struct platform_driver bcm63xx_usbh_phy_driver __refdata = {
+static struct platform_driver bcm63xx_usbh_phy_driver = {
  	.driver	= {
  		.name = "bcm63xx-usbh-phy",
  		.of_match_table = bcm63xx_usbh_phy_ids,
maintainer Applied
#3 lore raw
In reply to Johan Hovold
Quoted 5 lines · Johan Hovold

Platform drivers can be probed after their init sections have been discarded (e.g. on probe deferral or manual rebind through sysfs) so the probe function and match table must not live in init.

Applied, thanks!

[1/1] phy: broadcom: bcm63xx-usbh: fix section mismatches

      commit: 356d1924b9a6bc2164ce2bf1fad147b0c37ae085

Best regards,

Signature · 1 line
~Vinod