* [PATCHv2] phy: mediatek: tphy: simplify main allocation
@ 2026-08-12 18:18 Rosen Penev
2026-08-12 18:25 ` sashiko-bot
0 siblings, 1 reply; 2+ messages in thread
From: Rosen Penev @ 2026-08-12 18:18 UTC (permalink / raw)
To: linux-phy
Cc: Chunfeng Yun, Vinod Koul, Neil Armstrong, Manivannan Sadhasivam,
Matthias Brugger, AngeloGioacchino Del Regno, Kees Cook,
Gustavo A. R. Silva, moderated list:ARM/Mediatek USB3 PHY DRIVER,
moderated list:ARM/Mediatek USB3 PHY DRIVER,
open list:ARM/Mediatek SoC support,
open list:KERNEL HARDENING (not covered by other areas):Keyword:b__counted_by(_le|_be|_ptr)?b
Use a flexible array member to replace kzalloc + kcalloc with a single
kzalloc.
Shuffled some code around as __counted_by requires the counting variable
to be assigned first.
Removed NULL check from of_get_match_data as it's never NULL per the
device table.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
v2: add back NULL check
drivers/phy/mediatek/phy-mtk-tphy.c | 17 +++++++----------
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/drivers/phy/mediatek/phy-mtk-tphy.c b/drivers/phy/mediatek/phy-mtk-tphy.c
index acf506529507..e9b9e667b319 100644
--- a/drivers/phy/mediatek/phy-mtk-tphy.c
+++ b/drivers/phy/mediatek/phy-mtk-tphy.c
@@ -340,10 +340,10 @@ struct mtk_tphy {
struct device *dev;
void __iomem *sif_base; /* only shared sif */
const struct mtk_phy_pdata *pdata;
- struct mtk_phy_instance **phys;
- int nphys;
int src_ref_clk; /* MHZ, reference clock for slew rate calibrate */
int src_coef; /* coefficient for slew rate calibrate */
+ int nphys;
+ struct mtk_phy_instance *phys[] __counted_by(nphys);
};
#if IS_ENABLED(CONFIG_DEBUG_FS)
@@ -1572,22 +1572,19 @@ static int mtk_tphy_probe(struct platform_device *pdev)
struct mtk_tphy *tphy;
struct resource res;
int port, ret;
+ size_t nphys;
- tphy = devm_kzalloc(dev, sizeof(*tphy), GFP_KERNEL);
+ nphys = of_get_child_count(np);
+ tphy = devm_kzalloc(dev, struct_size(tphy, phys, nphys), GFP_KERNEL);
if (!tphy)
return -ENOMEM;
+ tphy->nphys = nphys;
+ tphy->dev = dev;
tphy->pdata = of_device_get_match_data(dev);
if (!tphy->pdata)
return -EINVAL;
- tphy->nphys = of_get_child_count(np);
- tphy->phys = devm_kcalloc(dev, tphy->nphys,
- sizeof(*tphy->phys), GFP_KERNEL);
- if (!tphy->phys)
- return -ENOMEM;
-
- tphy->dev = dev;
platform_set_drvdata(pdev, tphy);
sif_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
--
2.55.0
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCHv2] phy: mediatek: tphy: simplify main allocation
2026-08-12 18:18 [PATCHv2] phy: mediatek: tphy: simplify main allocation Rosen Penev
@ 2026-08-12 18:25 ` sashiko-bot
0 siblings, 0 replies; 2+ messages in thread
From: sashiko-bot @ 2026-08-12 18:25 UTC (permalink / raw)
To: Rosen Penev; +Cc: vkoul, neil.armstrong, linux-phy, olteanv
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Meaningful code and commit message mismatch regarding the removal of a NULL check.
--
--- Patch [1]: [PATCHv2] phy: mediatek: tphy: simplify main allocation ---
commit 293b5d4728ba8a57dc62ffcf5575f966eef04ba8
Author: Rosen Penev <rosenp@gmail.com>
phy: mediatek: tphy: simplify main allocation
This commit simplifies the main allocation by replacing a separate kzalloc
and kcalloc with a single kzalloc using a flexible array member. It also
shuffles code to satisfy __counted_by requirements.
> Removed NULL check from of_get_match_data as it's never NULL per the
> device table.
>
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
>
> ---
> v2: add back NULL check
[Severity: Medium]
This isn't a bug, but the commit message body states the NULL check was
removed, while the v2 notes and the patch itself show it was retained. Should
the commit message be updated to remove this line so it accurately reflects
the applied changes?
> diff --git a/drivers/phy/mediatek/phy-mtk-tphy.c b/drivers/phy/mediatek/phy-mtk-tphy.c
> index acf5065295072..e9b9e667b3195 100644
> --- a/drivers/phy/mediatek/phy-mtk-tphy.c
> +++ b/drivers/phy/mediatek/phy-mtk-tphy.c
[ ... ]
> @@ -1572,22 +1572,19 @@ static int mtk_tphy_probe(struct platform_device *pdev)
[ ... ]
> + tphy->nphys = nphys;
> + tphy->dev = dev;
> tphy->pdata = of_device_get_match_data(dev);
> if (!tphy->pdata)
> return -EINVAL;
>
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260812181857.64544-1-rosenp@gmail.com?part=1
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-12 18:25 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-12 18:18 [PATCHv2] phy: mediatek: tphy: simplify main allocation Rosen Penev
2026-08-12 18:25 ` sashiko-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox