* Re: [PATCH v5 4/4] phy: airoha: Add support for Airoha AN7581 USB PHY
From: kernel test robot @ 2026-03-05 9:18 UTC (permalink / raw)
To: Christian Marangi, Vinod Koul, Neil Armstrong, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Lorenzo Bianconi,
linux-arm-kernel, linux-phy, devicetree, linux-kernel
Cc: oe-kbuild-all
In-Reply-To: <20260304005843.2680-5-ansuelsmth@gmail.com>
Hi Christian,
kernel test robot noticed the following build warnings:
[auto build test WARNING on next-20260303]
[cannot apply to robh/for-next linus/master v7.0-rc2 v7.0-rc1 v6.19 v7.0-rc2]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Christian-Marangi/dt-bindings-soc-Add-bindings-for-Airoha-SCU-Serdes-lines/20260304-090107
base: next-20260303
patch link: https://lore.kernel.org/r/20260304005843.2680-5-ansuelsmth%40gmail.com
patch subject: [PATCH v5 4/4] phy: airoha: Add support for Airoha AN7581 USB PHY
config: powerpc64-randconfig-r131-20260305 (https://download.01.org/0day-ci/archive/20260305/202603051725.x2cR2ynI-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 9a109fbb6e184ec9bcce10615949f598f4c974a9)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260305/202603051725.x2cR2ynI-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603051725.x2cR2ynI-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/phy/airoha/phy-an7581-usb.c:569:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *base @@ got void [noderef] __iomem * @@
drivers/phy/airoha/phy-an7581-usb.c:569:14: sparse: expected void *base
drivers/phy/airoha/phy-an7581-usb.c:569:14: sparse: got void [noderef] __iomem *
>> drivers/phy/airoha/phy-an7581-usb.c:573:24: sparse: sparse: incorrect type in argument 3 (different address spaces) @@ expected void [noderef] __iomem *regs @@ got void *base @@
drivers/phy/airoha/phy-an7581-usb.c:573:24: sparse: expected void [noderef] __iomem *regs
drivers/phy/airoha/phy-an7581-usb.c:573:24: sparse: got void *base
vim +569 drivers/phy/airoha/phy-an7581-usb.c
545
546 static int an7581_usb_phy_probe(struct platform_device *pdev)
547 {
548 struct phy_provider *phy_provider;
549 struct an7581_usb_phy_priv *priv;
550 struct device *dev = &pdev->dev;
551 unsigned int index;
552 void *base;
553 int ret;
554
555 priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
556 if (!priv)
557 return -ENOMEM;
558
559 priv->dev = dev;
560
561 ret = of_property_read_u32(dev->of_node, "airoha,usb2-monitor-clk-sel",
562 &priv->monclk_sel);
563 if (ret)
564 return dev_err_probe(dev, ret, "Monitor clock selection is mandatory for USB PHY calibration\n");
565
566 if (priv->monclk_sel > 3)
567 return dev_err_probe(dev, -EINVAL, "only 4 Monitor clock are selectable on the SoC\n");
568
> 569 base = devm_platform_ioremap_resource(pdev, 0);
570 if (IS_ERR(base))
571 return PTR_ERR(base);
572
> 573 priv->regmap = devm_regmap_init_mmio(dev, base, &an7581_usb_phy_regmap_config);
574 if (IS_ERR(priv->regmap))
575 return PTR_ERR(priv->regmap);
576
577 platform_set_drvdata(pdev, priv);
578
579 for (index = 0; index < AIROHA_PHY_USB_MAX; index++) {
580 enum an7581_usb_phy_instance_type phy_type;
581 struct an7581_usb_phy_instance *instance;
582
583 switch (index) {
584 case AIROHA_PHY_USB2:
585 phy_type = PHY_TYPE_USB2;
586 break;
587 case AIROHA_PHY_USB3:
588 phy_type = PHY_TYPE_USB3;
589 break;
590 }
591
592 if (phy_type == PHY_TYPE_USB3) {
593 ret = of_property_read_u32(dev->of_node, "airoha,usb3-serdes",
594 &priv->serdes_port);
595 if (ret)
596 return dev_err_probe(dev, ret, "missing serdes line for USB 3.0\n");
597
598 priv->scu = syscon_regmap_lookup_by_compatible("airoha,en7581-scu");
599 if (IS_ERR(priv->scu))
600 return dev_err_probe(dev, PTR_ERR(priv->scu), "failed to get SCU syscon\n");
601 }
602
603 instance = devm_kzalloc(dev, sizeof(*instance), GFP_KERNEL);
604 if (!instance)
605 return -ENOMEM;
606
607 instance->type = phy_type;
608 priv->phys[index] = instance;
609
610 instance->phy = devm_phy_create(dev, NULL, &airoha_phy);
611 if (IS_ERR(instance->phy))
612 return dev_err_probe(dev, PTR_ERR(instance->phy), "failed to create phy\n");
613
614 phy_set_drvdata(instance->phy, instance);
615 }
616
617 phy_provider = devm_of_phy_provider_register(&pdev->dev, an7581_usb_phy_xlate);
618
619 return PTR_ERR_OR_ZERO(phy_provider);
620 }
621
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Joe Perches @ 2026-03-05 9:30 UTC (permalink / raw)
To: Vladimir Oltean, Konrad Dybcio
Cc: linux-phy, Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver
In-Reply-To: <20260305085148.7cwo3yflp7vcfldf@skbuf>
On Thu, 2026-03-05 at 10:51 +0200, Vladimir Oltean wrote:
> On Thu, Mar 05, 2026 at 09:39:35AM +0100, Konrad Dybcio wrote:
> diff --git a/MAINTAINERS b/MAINTAINERS
> > > index 55af015174a5..bdfa47d9c774 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -10713,6 +10713,7 @@ F: Documentation/devicetree/bindings/phy/
> > > F: drivers/phy/
> > > F: include/dt-bindings/phy/
> > > F: include/linux/phy/
> > > +K: \b(devm_)?(of_)?phy_(create|destroy|init|exit|reset|power_(on|off)|configure|validate|calibrate|(get|set)_(mode|media|speed|bus_width|drvdata)|get_max_link_rate|pm_runtime_(get|put)|notify_(connect|disconnect|state)|get|put|optional_get|provider_(un)?register|simple_xlate|(create|remove)_lookup)\b|(struct\s+)?phy(_ops|_attrs|_lookup|_provider)?\b|linux/phy/phy\.h|phy-props\.h|phy-provider\.h
You could use multiple K: entries instead of this monster.
And please use (?:<foo>) to avoid capture groups too.
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v8 14/23] scsi: ufs: mediatek: Remove mediatek,ufs-broken-rtc property
From: Peter Wang (王信友) @ 2026-03-05 9:33 UTC (permalink / raw)
To: chu.stanley@gmail.com, robh@kernel.org,
Chunfeng Yun (云春峰), kishon@kernel.org,
James.Bottomley@HansenPartnership.com, bvanassche@acm.org,
AngeloGioacchino Del Regno, neil.armstrong@linaro.org,
conor+dt@kernel.org, Chaotian Jing (井朝天),
lgirdwood@gmail.com, nicolas.frattaroli@collabora.com,
vkoul@kernel.org, krzk+dt@kernel.org, p.zabel@pengutronix.de,
alim.akhtar@samsung.com, matthias.bgg@gmail.com,
avri.altman@wdc.com, martin.petersen@oracle.com,
broonie@kernel.org
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org, linux-mediatek@lists.infradead.org,
Louis-Alexis Eyraud, kernel@collabora.com
In-Reply-To: <20260304-mt8196-ufs-v8-14-5b0eac23314f@collabora.com>
On Wed, 2026-03-04 at 15:53 +0100, Nicolas Frattaroli wrote:
> This flag property was never described in the binding, and its
> capability wrapper seems pointless.
>
> If one of the MediaTek SoCs needs the ufshcd quirk applied, then this
> can be done per-compatible, without needing to give the device tree
> author the option to forget to set it.
>
> Remove it and the associated capability flag wrapping code.
>
> Reviewed-by: AngeloGioacchino Del Regno
> <angelogioacchino.delregno@collabora.com>
> Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v8 16/23] scsi: ufs: mediatek: Clean up logging prints
From: Peter Wang (王信友) @ 2026-03-05 9:34 UTC (permalink / raw)
To: chu.stanley@gmail.com, robh@kernel.org,
Chunfeng Yun (云春峰), kishon@kernel.org,
James.Bottomley@HansenPartnership.com, bvanassche@acm.org,
AngeloGioacchino Del Regno, neil.armstrong@linaro.org,
conor+dt@kernel.org, Chaotian Jing (井朝天),
lgirdwood@gmail.com, nicolas.frattaroli@collabora.com,
vkoul@kernel.org, krzk+dt@kernel.org, p.zabel@pengutronix.de,
alim.akhtar@samsung.com, matthias.bgg@gmail.com,
avri.altman@wdc.com, martin.petersen@oracle.com,
broonie@kernel.org
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org, linux-mediatek@lists.infradead.org,
Louis-Alexis Eyraud, kernel@collabora.com
In-Reply-To: <20260304-mt8196-ufs-v8-16-5b0eac23314f@collabora.com>
On Wed, 2026-03-04 at 15:53 +0100, Nicolas Frattaroli wrote:
> The Linux kernel's log buffer provides many levels of verbosity,
> associated with different semantic meanings. Care should be taken to
> only log useful information to the info level, and log errors to the
> error level.
>
> The MediaTek UFS driver does not do this. It freely logs verbose
> debug
> information to the info level, errors to the info level, and
> sometimes
> errors to the warning level.
>
> Adjust all the wrapped kprintf invocations to rectify this situation.
> Use user-friendly %pe format codes for printing errors where
> possible.
>
> Reviewed-by: AngeloGioacchino Del Regno
> <angelogioacchino.delregno@collabora.com>
> Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 13/22] phy: introduce phy_get_max_link_rate() helper for consumers
From: Markus Schneider-Pargmann @ 2026-03-05 9:36 UTC (permalink / raw)
To: Vladimir Oltean, linux-phy
Cc: Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver,
Andrzej Hajda, Robert Foss, Laurent Pinchart, Jonas Karlman,
Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Andy Yan,
Marc Kleine-Budde, Vincent Mailhol, Nicolas Ferre,
Alexandre Belloni, Claudiu Beznea, Markus Schneider-Pargmann,
Geert Uytterhoeven, Magnus Damm
In-Reply-To: <20260304175735.2660419-14-vladimir.oltean@nxp.com>
[-- Attachment #1.1: Type: text/plain, Size: 7905 bytes --]
Hi,
On Wed Mar 4, 2026 at 6:57 PM CET, Vladimir Oltean wrote:
> Consumer drivers shouldn't dereference struct phy, not even to get to
> its attributes.
>
> We have phy_get_bus_width() as a precedent for getting the bus_width
> attribute, so let's add phy_get_max_link_rate() and use it in DRM and
> CAN drivers.
>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
> ---
> Cc: Andrzej Hajda <andrzej.hajda@intel.com>
> Cc: Neil Armstrong <neil.armstrong@linaro.org>
> Cc: Robert Foss <rfoss@kernel.org>
> Cc: Laurent Pinchart <Laurent.pinchart@ideasonboard.com>
> Cc: Jonas Karlman <jonas@kwiboo.se>
> Cc: Jernej Skrabec <jernej.skrabec@gmail.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Ripard <mripard@kernel.org>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: David Airlie <airlied@gmail.com>
> Cc: Simona Vetter <simona@ffwll.ch>
> Cc: Andy Yan <andy.yan@rock-chips.com>
> Cc: Marc Kleine-Budde <mkl@pengutronix.de>
> Cc: Vincent Mailhol <mailhol@kernel.org>
> Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Cc: Claudiu Beznea <claudiu.beznea@tuxon.dev>
> Cc: Markus Schneider-Pargmann <msp@baylibre.com>
> Cc: Geert Uytterhoeven <geert+renesas@glider.be>
> Cc: Magnus Damm <magnus.damm@gmail.com>
> ---
> drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c | 4 ++--
> drivers/gpu/drm/bridge/synopsys/dw-dp.c | 2 +-
> drivers/net/can/at91_can.c | 2 +-
> drivers/net/can/flexcan/flexcan-core.c | 2 +-
> drivers/net/can/m_can/m_can_platform.c | 2 +-
> drivers/net/can/rcar/rcar_canfd.c | 2 +-
> drivers/phy/phy-core.c | 6 ++++++
> include/linux/phy/phy.h | 6 ++++++
> 8 files changed, 19 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c b/drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c
> index a8b6ae58cb0a..ed7ed82ddb64 100644
> --- a/drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c
> +++ b/drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c
> @@ -1300,7 +1300,7 @@ static u32 cdns_mhdp_get_training_interval_us(struct cdns_mhdp_device *mhdp,
>
> static void cdns_mhdp_fill_host_caps(struct cdns_mhdp_device *mhdp)
> {
> - unsigned int link_rate;
> + u32 link_rate;
>
> /* Get source capabilities based on PHY attributes */
>
> @@ -1308,7 +1308,7 @@ static void cdns_mhdp_fill_host_caps(struct cdns_mhdp_device *mhdp)
> if (!mhdp->host.lanes_cnt)
> mhdp->host.lanes_cnt = 4;
>
> - link_rate = mhdp->phy->attrs.max_link_rate;
> + link_rate = phy_get_max_link_rate(mhdp->phy);
> if (!link_rate)
> link_rate = drm_dp_bw_code_to_link_rate(DP_LINK_BW_8_1);
> else
> diff --git a/drivers/gpu/drm/bridge/synopsys/dw-dp.c b/drivers/gpu/drm/bridge/synopsys/dw-dp.c
> index 4ab6922dd79c..79c72ee8e263 100644
> --- a/drivers/gpu/drm/bridge/synopsys/dw-dp.c
> +++ b/drivers/gpu/drm/bridge/synopsys/dw-dp.c
> @@ -536,7 +536,7 @@ static int dw_dp_link_parse(struct dw_dp *dp, struct drm_connector *connector)
>
> link->revision = link->dpcd[DP_DPCD_REV];
> link->rate = min_t(u32, min(dp->plat_data.max_link_rate,
> - dp->phy->attrs.max_link_rate * 100),
> + phy_get_max_link_rate(dp->phy) * 100),
> drm_dp_max_link_rate(link->dpcd));
> link->lanes = min_t(u8, phy_get_bus_width(dp->phy),
> drm_dp_max_lane_count(link->dpcd));
> diff --git a/drivers/net/can/at91_can.c b/drivers/net/can/at91_can.c
> index 58da323f14d7..b56db253f02d 100644
> --- a/drivers/net/can/at91_can.c
> +++ b/drivers/net/can/at91_can.c
> @@ -1126,7 +1126,7 @@ static int at91_can_probe(struct platform_device *pdev)
> can_rx_offload_add_timestamp(dev, &priv->offload);
>
> if (transceiver)
> - priv->can.bitrate_max = transceiver->attrs.max_link_rate;
> + priv->can.bitrate_max = phy_get_max_link_rate(transceiver);
>
> if (at91_is_sam9263(priv))
> dev->sysfs_groups[0] = &at91_sysfs_attr_group;
> diff --git a/drivers/net/can/flexcan/flexcan-core.c b/drivers/net/can/flexcan/flexcan-core.c
> index f5d22c61503f..3a4307bc1d61 100644
> --- a/drivers/net/can/flexcan/flexcan-core.c
> +++ b/drivers/net/can/flexcan/flexcan-core.c
> @@ -2211,7 +2211,7 @@ static int flexcan_probe(struct platform_device *pdev)
> priv->transceiver = transceiver;
>
> if (transceiver)
> - priv->can.bitrate_max = transceiver->attrs.max_link_rate;
> + priv->can.bitrate_max = phy_get_max_link_rate(transceiver);
>
> if (priv->devtype_data.quirks & FLEXCAN_QUIRK_NR_IRQ_3) {
> priv->irq_boff = platform_get_irq(pdev, 1);
> diff --git a/drivers/net/can/m_can/m_can_platform.c b/drivers/net/can/m_can/m_can_platform.c
> index 56da411878af..73525be6566b 100644
> --- a/drivers/net/can/m_can/m_can_platform.c
> +++ b/drivers/net/can/m_can/m_can_platform.c
> @@ -132,7 +132,7 @@ static int m_can_plat_probe(struct platform_device *pdev)
> }
>
> if (transceiver)
> - mcan_class->can.bitrate_max = transceiver->attrs.max_link_rate;
> + mcan_class->can.bitrate_max = phy_get_max_link_rate(transceiver);
>
> priv->base = addr;
> priv->mram_base = mram_addr;
> diff --git a/drivers/net/can/rcar/rcar_canfd.c b/drivers/net/can/rcar/rcar_canfd.c
> index eaf8cac78038..645d5671705d 100644
> --- a/drivers/net/can/rcar/rcar_canfd.c
> +++ b/drivers/net/can/rcar/rcar_canfd.c
> @@ -1885,7 +1885,7 @@ static int rcar_canfd_channel_probe(struct rcar_canfd_global *gpriv, u32 ch,
> priv->channel = ch;
> priv->gpriv = gpriv;
> if (transceiver)
> - priv->can.bitrate_max = transceiver->attrs.max_link_rate;
> + priv->can.bitrate_max = phy_get_max_link_rate(transceiver);
> priv->can.clock.freq = fcan_freq;
> dev_info(dev, "can_clk rate is %u\n", priv->can.clock.freq);
>
> diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
> index a1aff00fba7c..89f7410241aa 100644
> --- a/drivers/phy/phy-core.c
> +++ b/drivers/phy/phy-core.c
> @@ -640,6 +640,12 @@ void phy_set_bus_width(struct phy *phy, int bus_width)
> }
> EXPORT_SYMBOL_GPL(phy_set_bus_width);
>
> +u32 phy_get_max_link_rate(struct phy *phy)
> +{
All of the can drivers that would use this function are checking phy
before assigning the max_link_rate:
if (transceiver)
priv->can.bitrate_max = transceiver->attrs.max_link_rate;
Would it be reasonable to have
if (!phy)
return 0;
in this function to be able to drop these individual checks of the
drivers? This would be similar to clk_get_rate() which does the same
check and return 0 for convenience.
Best
Markus
> + return phy->attrs.max_link_rate;
> +}
> +EXPORT_SYMBOL_GPL(phy_get_max_link_rate);
> +
> /**
> * _of_phy_get() - lookup and obtain a reference to a phy by phandle
> * @np: device_node for which to get the phy
> diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h
> index 36307e47760d..af9c3e795786 100644
> --- a/include/linux/phy/phy.h
> +++ b/include/linux/phy/phy.h
> @@ -57,6 +57,7 @@ int phy_notify_disconnect(struct phy *phy, int port);
> int phy_notify_state(struct phy *phy, union phy_notify state);
> int phy_get_bus_width(struct phy *phy);
> void phy_set_bus_width(struct phy *phy, int bus_width);
> +u32 phy_get_max_link_rate(struct phy *phy);
> #else
> static inline struct phy *phy_get(struct device *dev, const char *string)
> {
> @@ -256,6 +257,11 @@ static inline int phy_get_bus_width(struct phy *phy)
> static inline void phy_set_bus_width(struct phy *phy, int bus_width)
> {
> }
> +
> +static inline u32 phy_get_max_link_rate(struct phy *phy)
> +{
> + return 0;
> +}
> #endif /* IS_ENABLED(CONFIG_GENERIC_PHY) */
>
> #endif /* __PHY_CONSUMER_H */
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 289 bytes --]
[-- Attachment #2: Type: text/plain, Size: 112 bytes --]
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v8 17/23] scsi: ufs: mediatek: Rework ufs_mtk_wait_idle_state
From: Peter Wang (王信友) @ 2026-03-05 9:37 UTC (permalink / raw)
To: chu.stanley@gmail.com, robh@kernel.org,
Chunfeng Yun (云春峰), kishon@kernel.org,
James.Bottomley@HansenPartnership.com, bvanassche@acm.org,
AngeloGioacchino Del Regno, neil.armstrong@linaro.org,
conor+dt@kernel.org, Chaotian Jing (井朝天),
lgirdwood@gmail.com, nicolas.frattaroli@collabora.com,
vkoul@kernel.org, krzk+dt@kernel.org, p.zabel@pengutronix.de,
alim.akhtar@samsung.com, matthias.bgg@gmail.com,
avri.altman@wdc.com, martin.petersen@oracle.com,
broonie@kernel.org
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org, linux-mediatek@lists.infradead.org,
Louis-Alexis Eyraud, kernel@collabora.com
In-Reply-To: <20260304-mt8196-ufs-v8-17-5b0eac23314f@collabora.com>
On Wed, 2026-03-04 at 15:53 +0100, Nicolas Frattaroli wrote:
> While ufs_mtk_wait_idle state has some code smells for me (the
> VS_HCE_BASE early exit seems racey at best), it can still benefit
> from
> some general cleanup to make the code flow less convoluted.
>
> Use the iopoll helpers, for one, and specifically the one that sleeps
> and does not busy delay, as it's being done for up to 5ms.
>
> The register read is split out to a helper function that branches
> between new and old style flow.
>
> Every called uses the same 5ms timeout value, so there is no point in
> making this a parameter. Just assume a 5ms timeout in the function.
>
> Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v8 18/23] scsi: ufs: mediatek: Don't acquire dvfsrc-vcore twice
From: Peter Wang (王信友) @ 2026-03-05 9:38 UTC (permalink / raw)
To: chu.stanley@gmail.com, robh@kernel.org,
Chunfeng Yun (云春峰), kishon@kernel.org,
James.Bottomley@HansenPartnership.com, bvanassche@acm.org,
AngeloGioacchino Del Regno, neil.armstrong@linaro.org,
conor+dt@kernel.org, Chaotian Jing (井朝天),
lgirdwood@gmail.com, nicolas.frattaroli@collabora.com,
vkoul@kernel.org, krzk+dt@kernel.org, p.zabel@pengutronix.de,
alim.akhtar@samsung.com, matthias.bgg@gmail.com,
avri.altman@wdc.com, martin.petersen@oracle.com,
broonie@kernel.org
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org, linux-mediatek@lists.infradead.org,
Louis-Alexis Eyraud, kernel@collabora.com
In-Reply-To: <20260304-mt8196-ufs-v8-18-5b0eac23314f@collabora.com>
On Wed, 2026-03-04 at 15:53 +0100, Nicolas Frattaroli wrote:
> As part of its featureset, the ufs-mediatek driver needs to play with
> an
> optional dvfsrc-vcore regulator for some of them.
>
> However, it currently does this by acquiring two different references
> to
> it in two different places, needlessly duplicating logic.
>
> Move reg_vcore to the host struct, acquire it in the same function as
> avdd09 is acquired, and rework the users of reg_vcore.
>
> Reviewed-by: AngeloGioacchino Del Regno
> <angelogioacchino.delregno@collabora.com>
> Signed-off-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Reviewed-by: Peter Wang <peter.wang@mediatek.com>
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v8 20/23] scsi: ufs: mediatek: Back up idle timer in per-instance struct
From: Peter Wang (王信友) @ 2026-03-05 9:39 UTC (permalink / raw)
To: chu.stanley@gmail.com, robh@kernel.org,
Chunfeng Yun (云春峰), kishon@kernel.org,
James.Bottomley@HansenPartnership.com, bvanassche@acm.org,
AngeloGioacchino Del Regno, neil.armstrong@linaro.org,
conor+dt@kernel.org, Chaotian Jing (井朝天),
lgirdwood@gmail.com, nicolas.frattaroli@collabora.com,
vkoul@kernel.org, krzk+dt@kernel.org, p.zabel@pengutronix.de,
alim.akhtar@samsung.com, matthias.bgg@gmail.com,
avri.altman@wdc.com, martin.petersen@oracle.com,
broonie@kernel.org
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org, linux-mediatek@lists.infradead.org,
Louis-Alexis Eyraud, kernel@collabora.com
In-Reply-To: <20260304-mt8196-ufs-v8-20-5b0eac23314f@collabora.com>
On Wed, 2026-03-04 at 15:53 +0100, Nicolas Frattaroli wrote:
> @@ -187,6 +187,7 @@ struct ufs_mtk_host {
> u16 ref_clk_gating_wait_us;
> u32 ip_ver;
> bool legacy_ip_ver;
> + u32 hibernate_idle_timer;
>
Same as in patch V7, this variable is not clear to me.
Please do not omit "auto" or consider using "ahit" as
is customary in the UFS community.
Thanks
Peter
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 19/22] power: supply: cpcap-charger: include missing <linux/property.h>
From: Sebastian Reichel @ 2026-03-05 9:52 UTC (permalink / raw)
To: Vladimir Oltean
Cc: linux-phy, Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver
In-Reply-To: <20260304175735.2660419-20-vladimir.oltean@nxp.com>
[-- Attachment #1.1: Type: text/plain, Size: 1408 bytes --]
Hi,
On Wed, Mar 04, 2026 at 07:57:32PM +0200, Vladimir Oltean wrote:
> This file uses dev_fwnode() without including the proper header for it,
> relying on transitive header inclusion from:
>
> drivers/power/supply/cpcap-charger.c
> - include/linux/phy/omap_usb.h
> - include/linux/usb/phy_companion.h
> - include/linux/usb/otg.h
> - include/linux/phy/phy.h
> - drivers/phy/phy-provider.h
> - include/linux/of.h
> - include/linux/property.h
>
> With the future removal of drivers/phy/phy-provider.h from
> include/linux/phy/phy.h, this transitive inclusion would break.
>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
> ---
> Cc: Sebastian Reichel <sre@kernel.org>
> ---
Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com>
-- Sebastian
> drivers/power/supply/cpcap-charger.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/power/supply/cpcap-charger.c b/drivers/power/supply/cpcap-charger.c
> index d0c3008db534..24221244b45b 100644
> --- a/drivers/power/supply/cpcap-charger.c
> +++ b/drivers/power/supply/cpcap-charger.c
> @@ -21,6 +21,7 @@
> #include <linux/mod_devicetable.h>
> #include <linux/platform_device.h>
> #include <linux/power_supply.h>
> +#include <linux/property.h>
> #include <linux/regmap.h>
>
> #include <linux/gpio/consumer.h>
> --
> 2.43.0
>
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
[-- Attachment #2: Type: text/plain, Size: 112 bytes --]
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v8 11/23] scsi: ufs: mediatek: Remove undocumented downstream reset cruft
From: Nicolas Frattaroli @ 2026-03-05 9:57 UTC (permalink / raw)
To: chu.stanley@gmail.com, robh@kernel.org,
Chunfeng Yun (云春峰), kishon@kernel.org,
James.Bottomley@HansenPartnership.com, bvanassche@acm.org,
AngeloGioacchino Del Regno, neil.armstrong@linaro.org,
conor+dt@kernel.org, Chaotian Jing (井朝天),
lgirdwood@gmail.com, vkoul@kernel.org, krzk+dt@kernel.org,
p.zabel@pengutronix.de, alim.akhtar@samsung.com,
matthias.bgg@gmail.com, avri.altman@wdc.com,
martin.petersen@oracle.com, broonie@kernel.org,
Peter Wang (王信友)
Cc: linux-scsi@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-phy@lists.infradead.org, linux-mediatek@lists.infradead.org,
Louis-Alexis Eyraud, kernel@collabora.com
In-Reply-To: <3aeee75e78fed2be92038c776463a231b94462f3.camel@mediatek.com>
On Thursday, 5 March 2026 10:14:47 Central European Standard Time Peter Wang (王信友) wrote:
> On Wed, 2026-03-04 at 15:53 +0100, Nicolas Frattaroli wrote:
> > @@ -2383,38 +2383,12 @@ MODULE_DEVICE_TABLE(of, ufs_mtk_of_match);
> > static int ufs_mtk_probe(struct platform_device *pdev)
> > {
> > int err;
> > - struct device *dev = &pdev->dev, *phy_dev = NULL;
> >
>
> Will there be a build error if phy_dev is removed?
> Please make sure that each patch can build successfully, one by one.
>
> Thanks
> Peter
>
>
>
>
Yes, these are the kinds of mistakes that happen when you ask someone
to pick apart patches for your downstream convenience.
I'll hand dealing with any further fixups and variable naming concerns
you have over to Angelo, as I can't be bothered to deal with you
anymore.
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 05/22] phy: add <linux/pm_runtime.h> where missing
From: André Draszik @ 2026-03-05 10:02 UTC (permalink / raw)
To: Vladimir Oltean, linux-phy
Cc: Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver,
Peter Griffin, Tudor Ambarus, Geert Uytterhoeven, Magnus Damm,
Heiko Stuebner
In-Reply-To: <20260304175735.2660419-6-vladimir.oltean@nxp.com>
On Wed, 2026-03-04 at 19:57 +0200, Vladimir Oltean wrote:
> It appears that the phy-mapphone-mdm6600, phy-qcom-snps-femto-v2,
> phy-rcar-gen3-pcie, r8a779f0-ether-serdes and phy-rockchip-typec drivers
> call runtime PM operations without including the proper header.
>
> This was provided by <linux/phy/phy.h> but no function exported by this
> header directly needs it. So we need to drop it from there, and fix up
> drivers that used to depend on that.
>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
> drivers/phy/phy-google-usb.c | 1 +
For Google:
Reviewed-by: André Draszik <andre.draszik@linaro.org>
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH] phy: qualcomm: usb-hs-28nm: use flex array
From: Konrad Dybcio @ 2026-03-05 10:06 UTC (permalink / raw)
To: Rosen Penev, linux-phy
Cc: Vinod Koul, Neil Armstrong, Kees Cook, Gustavo A. R. Silva,
open list:ARM/QUALCOMM MAILING LIST, open list,
open list:KERNEL HARDENING (not covered by other areas):Keyword:b__counted_by(_le|_be)?b
In-Reply-To: <20260304230636.27808-1-rosenp@gmail.com>
On 3/5/26 12:06 AM, Rosen Penev wrote:
> Allows simplifying allocation to a single kzalloc call.
>
> Also allows using __counted_by for extra runtime analysis.
>
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
> ---
I don't see how this is an improvement - __counted_by() is useful for
cases where we don't know how many entries there are, but in this
case it's fully deterministic (as priv->num_clks is a compile-time
constant)
Konrad
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* [PATCH] phy: renesas: rzg3e-usb3: Convert to FIELD_MODIFY()
From: Geert Uytterhoeven @ 2026-03-05 10:15 UTC (permalink / raw)
To: Vinod Koul, Neil Armstrong, Biju Das
Cc: linux-phy, linux-renesas-soc, Geert Uytterhoeven
Use the FIELD_MODIFY() helper instead of open-coding the same operation.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
No changes in generated code.
---
drivers/phy/renesas/phy-rzg3e-usb3.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/phy/renesas/phy-rzg3e-usb3.c b/drivers/phy/renesas/phy-rzg3e-usb3.c
index 6b3453ea0004cf59..7f809ef1bb5135ec 100644
--- a/drivers/phy/renesas/phy-rzg3e-usb3.c
+++ b/drivers/phy/renesas/phy-rzg3e-usb3.c
@@ -78,13 +78,11 @@ static void rzg3e_phy_usb2test_phy_init(void __iomem *base)
writel(val, base + USB3_TEST_UTMICTRL2);
val = readl(base + USB3_TEST_PRMCTRL5_R);
- val &= ~USB3_TEST_PRMCTRL5_R_TXPREEMPAMPTUNE0_MASK;
- val |= FIELD_PREP(USB3_TEST_PRMCTRL5_R_TXPREEMPAMPTUNE0_MASK, 2);
+ FIELD_MODIFY(USB3_TEST_PRMCTRL5_R_TXPREEMPAMPTUNE0_MASK, &val, 2);
writel(val, base + USB3_TEST_PRMCTRL5_R);
val = readl(base + USB3_TEST_PRMCTRL6_R);
- val &= ~USB3_TEST_PRMCTRL6_R_OTGTUNE0_MASK;
- val |= FIELD_PREP(USB3_TEST_PRMCTRL6_R_OTGTUNE0_MASK, 7);
+ FIELD_MODIFY(USB3_TEST_PRMCTRL6_R_OTGTUNE0_MASK, &val, 7);
writel(val, base + USB3_TEST_PRMCTRL6_R);
val = readl(base + USB3_TEST_RESET);
--
2.43.0
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply related
* Re: [PATCH v3 2/2] phy: qcom: edp: Add per-version LDO configuration callback
From: Konrad Dybcio @ 2026-03-05 11:26 UTC (permalink / raw)
To: Yongxing Mou, Vinod Koul, Neil Armstrong, Stephen Boyd,
Bjorn Andersson
Cc: linux-arm-msm, linux-phy, linux-kernel, stable
In-Reply-To: <20260302-edp_phy-v3-2-ca8888d793b0@oss.qualcomm.com>
On 3/2/26 9:28 AM, Yongxing Mou wrote:
> For eDP low Vdiff, the LDO setting depends on the PHY version, instead of
> being a simple 0x0 or 0x01. Introduce the com_ldo_config callback to
> correct LDO setting accroding to the HPG.
>
> Since SC7280 uses different LDO settings than SA8775P/SC8280XP, introduce
> qcom_edp_phy_ops_v3 to keep the LDO setting correct.
>
> Cc: stable@vger.kernel.org
> Fixes: f199223cb490 ("phy: qcom: Introduce new eDP PHY driver")
> Signed-off-by: Yongxing Mou <yongxing.mou@oss.qualcomm.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Tested-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> # SC8280XP X13s
Konrad
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Vladimir Oltean @ 2026-03-05 11:43 UTC (permalink / raw)
To: Joe Perches
Cc: Konrad Dybcio, linux-phy, Vinod Koul, Neil Armstrong, dri-devel,
freedreno, linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio,
linux-ide, linux-kernel, linux-media, linux-pci,
linux-renesas-soc, linux-riscv, linux-rockchip, linux-samsung-soc,
linux-sunxi, linux-tegra, linux-usb, netdev, spacemit,
UNGLinuxDriver
In-Reply-To: <f3a5aa3df78553ffc0fd0024f5fd36a4e2158c88.camel@perches.com>
On Thu, Mar 05, 2026 at 01:30:40AM -0800, Joe Perches wrote:
> On Thu, 2026-03-05 at 10:51 +0200, Vladimir Oltean wrote:
> > On Thu, Mar 05, 2026 at 09:39:35AM +0100, Konrad Dybcio wrote:
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > > > index 55af015174a5..bdfa47d9c774 100644
> > > > --- a/MAINTAINERS
> > > > +++ b/MAINTAINERS
> > > > @@ -10713,6 +10713,7 @@ F: Documentation/devicetree/bindings/phy/
> > > > F: drivers/phy/
> > > > F: include/dt-bindings/phy/
> > > > F: include/linux/phy/
> > > > +K: \b(devm_)?(of_)?phy_(create|destroy|init|exit|reset|power_(on|off)|configure|validate|calibrate|(get|set)_(mode|media|speed|bus_width|drvdata)|get_max_link_rate|pm_runtime_(get|put)|notify_(connect|disconnect|state)|get|put|optional_get|provider_(un)?register|simple_xlate|(create|remove)_lookup)\b|(struct\s+)?phy(_ops|_attrs|_lookup|_provider)?\b|linux/phy/phy\.h|phy-props\.h|phy-provider\.h
>
> You could use multiple K: entries instead of this monster.
>
> And please use (?:<foo>) to avoid capture groups too.
Thanks, I wasn't aware of either of those.
I am now working with this:
K: \b(?:__)?(?:devm_)?(?:of_)?phy_(?:create|destroy|provider_(?:un)?register)\b
K: \bphy_(?:create|remove)_lookup\b
K: \bphy_(?:get|set)?_drvdata\b
K: \b(?:devm_)?(?:of_)?phy_(?:optional_)?(?:get|put)(?:_by_index)?\b
K: \bphy_pm_runtime_(?:get|put)(?:_sync)?\b
K: \bphy_(?:init|exit|power_(?:on|off))\b
K: \bphy_|(?:get|set)_(?:mode(?:_ext)?|media|speed|bus_width|max_link_rate)\b
K: \bphy_(?:reset|configure|validate|calibrate)\b
K: \bphy_notify_(?:connect|disconnect|state)\b
K: (?:struct\s+)?phy(?:_ops|_attrs|_lookup|_provider)?\b
K: (?:linux/phy/phy\.h|phy-props\.h|phy-provider\.h)
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 13/22] phy: introduce phy_get_max_link_rate() helper for consumers
From: Vladimir Oltean @ 2026-03-05 11:54 UTC (permalink / raw)
To: Markus Schneider-Pargmann
Cc: linux-phy, Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver,
Andrzej Hajda, Robert Foss, Laurent Pinchart, Jonas Karlman,
Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Andy Yan,
Marc Kleine-Budde, Vincent Mailhol, Nicolas Ferre,
Alexandre Belloni, Claudiu Beznea, Geert Uytterhoeven,
Magnus Damm
In-Reply-To: <DGUQWFYCPRQZ.17SO07GXW2DYA@baylibre.com>
On Thu, Mar 05, 2026 at 10:36:14AM +0100, Markus Schneider-Pargmann wrote:
> All of the can drivers that would use this function are checking phy
> before assigning the max_link_rate:
>
> if (transceiver)
> priv->can.bitrate_max = transceiver->attrs.max_link_rate;
>
> Would it be reasonable to have
>
> if (!phy)
> return 0;
>
> in this function to be able to drop these individual checks of the
> drivers? This would be similar to clk_get_rate() which does the same
> check and return 0 for convenience.
>
> Best
> Markus
Thanks, that's a good point. The transceiver is acquired through
devm_phy_optional_get() and NULL is given by the API as a non-error case,
so I guess it means it should also tolerate NULL coming back to it.
This just leaves an inconsistency with phy_(get|set)_bus_width() which
are not NULL-tolerant but should also be. I'll leave those as is for
now, since I don't want to make the series any larger than it is, but
I'll update the new API with your suggestion.
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Krzysztof Wilczyński @ 2026-03-05 12:15 UTC (permalink / raw)
To: Vladimir Oltean
Cc: Joe Perches, Konrad Dybcio, linux-phy, Vinod Koul, Neil Armstrong,
dri-devel, freedreno, linux-arm-kernel, linux-arm-msm, linux-can,
linux-gpio, linux-ide, linux-kernel, linux-media, linux-pci,
linux-renesas-soc, linux-riscv, linux-rockchip, linux-samsung-soc,
linux-sunxi, linux-tegra, linux-usb, netdev, spacemit,
UNGLinuxDriver
In-Reply-To: <20260305114352.2f7btqixg4tu5bzl@skbuf>
Hello,
> K: \b(?:__)?(?:devm_)?(?:of_)?phy_(?:create|destroy|provider_(?:un)?register)\b
> K: \bphy_(?:create|remove)_lookup\b
> K: \bphy_(?:get|set)?_drvdata\b
> K: \b(?:devm_)?(?:of_)?phy_(?:optional_)?(?:get|put)(?:_by_index)?\b
> K: \bphy_pm_runtime_(?:get|put)(?:_sync)?\b
> K: \bphy_(?:init|exit|power_(?:on|off))\b
> K: \bphy_|(?:get|set)_(?:mode(?:_ext)?|media|speed|bus_width|max_link_rate)\b
> K: \bphy_(?:reset|configure|validate|calibrate)\b
> K: \bphy_notify_(?:connect|disconnect|state)\b
> K: (?:struct\s+)?phy(?:_ops|_attrs|_lookup|_provider)?\b
> K: (?:linux/phy/phy\.h|phy-props\.h|phy-provider\.h)
What about
F: drivers/*/*phy*
or something along these lines.
Krzysztof
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Krzysztof Wilczyński @ 2026-03-05 12:29 UTC (permalink / raw)
To: Vladimir Oltean
Cc: Joe Perches, Konrad Dybcio, linux-phy, Vinod Koul, Neil Armstrong,
dri-devel, freedreno, linux-arm-kernel, linux-arm-msm, linux-can,
linux-gpio, linux-ide, linux-kernel, linux-media, linux-pci,
linux-renesas-soc, linux-riscv, linux-rockchip, linux-samsung-soc,
linux-sunxi, linux-tegra, linux-usb, netdev, spacemit,
UNGLinuxDriver
In-Reply-To: <20260305121532.GA1649635@rocinante>
On 26-03-05 21:15:32, Krzysztof Wilczyński wrote:
> Hello,
>
> > K: \b(?:__)?(?:devm_)?(?:of_)?phy_(?:create|destroy|provider_(?:un)?register)\b
> > K: \bphy_(?:create|remove)_lookup\b
> > K: \bphy_(?:get|set)?_drvdata\b
> > K: \b(?:devm_)?(?:of_)?phy_(?:optional_)?(?:get|put)(?:_by_index)?\b
> > K: \bphy_pm_runtime_(?:get|put)(?:_sync)?\b
> > K: \bphy_(?:init|exit|power_(?:on|off))\b
> > K: \bphy_|(?:get|set)_(?:mode(?:_ext)?|media|speed|bus_width|max_link_rate)\b
> > K: \bphy_(?:reset|configure|validate|calibrate)\b
> > K: \bphy_notify_(?:connect|disconnect|state)\b
> > K: (?:struct\s+)?phy(?:_ops|_attrs|_lookup|_provider)?\b
> > K: (?:linux/phy/phy\.h|phy-props\.h|phy-provider\.h)
>
> What about
>
> F: drivers/*/*phy*
>
> or something along these lines.
For content match, it could also be:
K: phy
I believe this would match everything of interest? Perhaps there is no
need to have any of these complex regular expressions, would be my way of
thinking here. Makes it easier to maintain, too.
Just thinking out loud, really...
Krzysztof
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Vladimir Oltean @ 2026-03-05 12:38 UTC (permalink / raw)
To: Krzysztof Wilczyński
Cc: Joe Perches, Konrad Dybcio, linux-phy, Vinod Koul, Neil Armstrong,
dri-devel, freedreno, linux-arm-kernel, linux-arm-msm, linux-can,
linux-gpio, linux-ide, linux-kernel, linux-media, linux-pci,
linux-renesas-soc, linux-riscv, linux-rockchip, linux-samsung-soc,
linux-sunxi, linux-tegra, linux-usb, netdev, spacemit,
UNGLinuxDriver
In-Reply-To: <20260305121532.GA1649635@rocinante>
On Thu, Mar 05, 2026 at 09:15:32PM +0900, Krzysztof Wilczyński wrote:
> Hello,
>
> > K: \b(?:__)?(?:devm_)?(?:of_)?phy_(?:create|destroy|provider_(?:un)?register)\b
> > K: \bphy_(?:create|remove)_lookup\b
> > K: \bphy_(?:get|set)?_drvdata\b
> > K: \b(?:devm_)?(?:of_)?phy_(?:optional_)?(?:get|put)(?:_by_index)?\b
> > K: \bphy_pm_runtime_(?:get|put)(?:_sync)?\b
> > K: \bphy_(?:init|exit|power_(?:on|off))\b
> > K: \bphy_|(?:get|set)_(?:mode(?:_ext)?|media|speed|bus_width|max_link_rate)\b
> > K: \bphy_(?:reset|configure|validate|calibrate)\b
> > K: \bphy_notify_(?:connect|disconnect|state)\b
> > K: (?:struct\s+)?phy(?:_ops|_attrs|_lookup|_provider)?\b
> > K: (?:linux/phy/phy\.h|phy-props\.h|phy-provider\.h)
>
> What about
>
> F: drivers/*/*phy*
>
> or something along these lines.
>
> Krzysztof
I don't understand your suggestion. Is it meant as a replacement for the
keyword regexes? Your file pattern matches on:
$ ls drivers/*/*phy*
drivers/base/physical_location.c drivers/phy/phy-airoha-pcie.c drivers/phy/phy-core-mipi-dphy.c drivers/phy/phy-snps-eusb2.c
drivers/base/physical_location.h drivers/phy/phy-airoha-pcie-regs.h drivers/phy/phy-google-usb.c drivers/phy/phy-spacemit-k1-pcie.c
drivers/firewire/phy-packet-definitions.h drivers/phy/phy-can-transceiver.c drivers/phy/phy-lgm-usb.c drivers/phy/phy-xgene.c
drivers/net/sungem_phy.c drivers/phy/phy-common-props.c drivers/phy/phy-lpc18xx-usb-otg.c drivers/reset/reset-rzg2l-usbphy-ctrl.c
drivers/nfc/mei_phy.c drivers/phy/phy-common-props-test.c drivers/phy/phy-nxp-ptn3222.c drivers/reset/reset-rzv2h-usb2phy.c
drivers/nfc/mei_phy.h drivers/phy/phy-core.c drivers/phy/phy-pistachio-usb.c
drivers/net/phy:
adin1100.c bcm87xx.c dp83848.c lxt.c mediatek mxl-gpy.c phy_caps.c qsemi.c teranetics.c
adin.c bcm-cygnus.c dp83867.c Makefile meson-gxl.c national.c phy-caps.h qt2025.rs uPD60620.c
air_en8811h.c bcm-phy-lib.c dp83869.c marvell10g.c micrel.c ncn26000.c phy-core.c realtek vitesse.c
amd.c bcm-phy-lib.h dp83tc811.c marvell-88q2xxx.c microchip.c nxp-c45-tja11xx.c phy_device.c rockchip.c xilinx_gmii2rgmii.c
aquantia bcm-phy-ptp.c dp83td510.c marvell-88x2222.c microchip_rds_ptp.c nxp-c45-tja11xx.h phy_led_triggers.c sfp-bus.c
as21xxx.c broadcom.c dp83tg720.c marvell.c microchip_rds_ptp.h nxp-c45-tja11xx-macsec.c phylib.h sfp.c
ax88796b.c cicada.c et1011c.c mdio_bus.c microchip_t1.c nxp-cbtx.c phylib-internal.h sfp.h
ax88796b_rust.rs cortina.c fixed_phy.c mdio_bus_provider.c microchip_t1s.c nxp-tja11xx.c phylink.c smsc.c
bcm54140.c davicom.c icplus.c mdio_device.c mii_timestamper.c open_alliance_helpers.c phy_link_topology.c ste10Xp.c
bcm63xx.c dp83640.c intel-xway.c mdio_devres.c motorcomm.c open_alliance_helpers.h phy_package.c stubs.c
bcm7xxx.c dp83640_reg.h Kconfig mdio-open-alliance.h mscc phy.c phy_port.c swphy.c
bcm84881.c dp83822.c linkmode.c mdio-private.h mxl-86110.c phy-c45.c qcom swphy.h
drivers/usb/phy:
Kconfig phy-ab8500-usb.c phy-am335x-control.h phy-fsl-usb.h phy-gpio-vbus-usb.c phy-mv-usb.h phy-tahvo.c phy-ulpi.c
Makefile phy-am335x.c phy.c phy-generic.c phy-isp1301.c phy-mxs-usb.c phy-tegra-usb.c phy-ulpi-viewport.c
of.c phy-am335x-control.c phy-fsl-usb.c phy-generic.h phy-keystone.c phy-omap-otg.c phy-twl6030-usb.c
There are a lot of false positives, and a lot of false negatives.
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Vladimir Oltean @ 2026-03-05 12:39 UTC (permalink / raw)
To: Krzysztof Wilczyński
Cc: Joe Perches, Konrad Dybcio, linux-phy, Vinod Koul, Neil Armstrong,
dri-devel, freedreno, linux-arm-kernel, linux-arm-msm, linux-can,
linux-gpio, linux-ide, linux-kernel, linux-media, linux-pci,
linux-renesas-soc, linux-riscv, linux-rockchip, linux-samsung-soc,
linux-sunxi, linux-tegra, linux-usb, netdev, spacemit,
UNGLinuxDriver
In-Reply-To: <20260305122957.GA1652563@rocinante>
On Thu, Mar 05, 2026 at 09:29:57PM +0900, Krzysztof Wilczyński wrote:
> For content match, it could also be:
>
> K: phy
>
> I believe this would match everything of interest?
Yeah, and way more. Think USB PHY, network PHY, etc. Don't want to drown
the linux-phy mailing list in unrelated patches, either.
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 18/22] pinctrl: tegra-xusb: include PHY provider header
From: Linus Walleij @ 2026-03-05 12:43 UTC (permalink / raw)
To: Vladimir Oltean
Cc: linux-phy, Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver,
Thierry Reding, Jonathan Hunter, Krzysztof Kozlowski
In-Reply-To: <20260304175735.2660419-19-vladimir.oltean@nxp.com>
On Wed, Mar 4, 2026 at 7:00 PM Vladimir Oltean <vladimir.oltean@nxp.com> wrote:
> The tegra-xusb pinctrl driver is also a PHY provider (calls
> devm_phy_create() for PCIe and SATA). However, according to Vinod Koul,
> having PHY provider drivers outside of drivers/phy/ is discouraged,
> although it would be difficult for me to address a proper movement here.
>
> Include the private provider API header from drivers/phy/, but leave a
> FIXME in place. It will have to be moved, eventually.
>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Fair enough, is this a regression so I should merge it for fixes
or just a nonurgent fix that I can apply for next?
Long term a custom device can be created from the pin
control driver so that the Linux device model can be
used to move the driver over to phy.
Yours,
Linus Walleij
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Russell King (Oracle) @ 2026-03-05 12:44 UTC (permalink / raw)
To: Vladimir Oltean
Cc: Krzysztof Wilczyński, Joe Perches, Konrad Dybcio, linux-phy,
Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver
In-Reply-To: <20260305123956.ojkt4k3ly64xz7fu@skbuf>
On Thu, Mar 05, 2026 at 02:39:56PM +0200, Vladimir Oltean wrote:
> On Thu, Mar 05, 2026 at 09:29:57PM +0900, Krzysztof Wilczyński wrote:
> > For content match, it could also be:
> >
> > K: phy
> >
> > I believe this would match everything of interest?
>
> Yeah, and way more. Think USB PHY, network PHY, etc. Don't want to drown
> the linux-phy mailing list in unrelated patches, either.
Also phylink, any memory management / DMA stuff that happens to mention
"physical", and probably numerous other examples.
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 18/22] pinctrl: tegra-xusb: include PHY provider header
From: Linus Walleij @ 2026-03-05 12:44 UTC (permalink / raw)
To: Vladimir Oltean
Cc: linux-phy, Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver,
Thierry Reding, Jonathan Hunter, Krzysztof Kozlowski
In-Reply-To: <CAD++jLnCtu20rXcg7sMVLBi24EohscJoz0kN46XJaKPJt00O2w@mail.gmail.com>
On Thu, Mar 5, 2026 at 1:43 PM Linus Walleij <linusw@kernel.org> wrote:
> On Wed, Mar 4, 2026 at 7:00 PM Vladimir Oltean <vladimir.oltean@nxp.com> wrote:
>
> > The tegra-xusb pinctrl driver is also a PHY provider (calls
> > devm_phy_create() for PCIe and SATA). However, according to Vinod Koul,
> > having PHY provider drivers outside of drivers/phy/ is discouraged,
> > although it would be difficult for me to address a proper movement here.
> >
> > Include the private provider API header from drivers/phy/, but leave a
> > FIXME in place. It will have to be moved, eventually.
> >
> > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
>
> Fair enough, is this a regression so I should merge it for fixes
> or just a nonurgent fix that I can apply for next?
Sorry I realized it needs to go in with the series.
Reviewed-by: Linus Walleij <linusw@kernel.org>
You can take it from here.
Yours,
Linus Walleij
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 18/22] pinctrl: tegra-xusb: include PHY provider header
From: Vladimir Oltean @ 2026-03-05 12:47 UTC (permalink / raw)
To: Linus Walleij
Cc: linux-phy, Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver,
Thierry Reding, Jonathan Hunter, Krzysztof Kozlowski
In-Reply-To: <CAD++jL=m+cEcqy1i2H0tdeBa3Sy76myGAR9HdBqrT4u-x5v50A@mail.gmail.com>
On Thu, Mar 05, 2026 at 01:44:42PM +0100, Linus Walleij wrote:
> On Thu, Mar 5, 2026 at 1:43 PM Linus Walleij <linusw@kernel.org> wrote:
> > On Wed, Mar 4, 2026 at 7:00 PM Vladimir Oltean <vladimir.oltean@nxp.com> wrote:
> >
> > > The tegra-xusb pinctrl driver is also a PHY provider (calls
> > > devm_phy_create() for PCIe and SATA). However, according to Vinod Koul,
> > > having PHY provider drivers outside of drivers/phy/ is discouraged,
> > > although it would be difficult for me to address a proper movement here.
> > >
> > > Include the private provider API header from drivers/phy/, but leave a
> > > FIXME in place. It will have to be moved, eventually.
> > >
> > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
> >
> > Fair enough, is this a regression so I should merge it for fixes
> > or just a nonurgent fix that I can apply for next?
>
> Sorry I realized it needs to go in with the series.
> Reviewed-by: Linus Walleij <linusw@kernel.org>
>
> You can take it from here.
Yeah, the plan is explained in the cover letter. No regression intended
if it's taken through the same tree as the header split itself.
Thanks for the review.
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH phy-next 22/22] MAINTAINERS: add regex for linux-phy
From: Krzysztof Wilczyński @ 2026-03-05 13:01 UTC (permalink / raw)
To: Russell King (Oracle)
Cc: Vladimir Oltean, Joe Perches, Konrad Dybcio, linux-phy,
Vinod Koul, Neil Armstrong, dri-devel, freedreno,
linux-arm-kernel, linux-arm-msm, linux-can, linux-gpio, linux-ide,
linux-kernel, linux-media, linux-pci, linux-renesas-soc,
linux-riscv, linux-rockchip, linux-samsung-soc, linux-sunxi,
linux-tegra, linux-usb, netdev, spacemit, UNGLinuxDriver
In-Reply-To: <aal6kWDx_3XRGB4K@shell.armlinux.org.uk>
Hello,
> > > For content match, it could also be:
> > >
> > > K: phy
> > >
> > > I believe this would match everything of interest?
> >
> > Yeah, and way more. Think USB PHY, network PHY, etc. Don't want to drown
> > the linux-phy mailing list in unrelated patches, either.
>
> Also phylink, any memory management / DMA stuff that happens to mention
> "physical", and probably numerous other examples.
Makes sense! Sorry for the commotion here, then. :)
Krzysztof
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox