RE: [PATCH] phy: freescale: imx8qm-hsio: fix NULL pointer dereference

From: Hongxing Zhu

Date: Wed Jan 14 2026 - 20:52:29 EST


> -----Original Message-----
> From: Thomas Richard <thomas.richard@xxxxxxxxxxx>
> Sent: 2026年1月15日 0:50
> To: Vinod Koul <vkoul@xxxxxxxxxx>; Neil Armstrong
> <neil.armstrong@xxxxxxxxxx>; Shawn Guo <shawnguo@xxxxxxxxxx>; Sascha
> Hauer <s.hauer@xxxxxxxxxxxxxx>; Pengutronix Kernel Team
> <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; Frank Li
> <frank.li@xxxxxxx>; Hongxing Zhu <hongxing.zhu@xxxxxxx>
> Cc: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxx>;
> linux-phy@xxxxxxxxxxxxxxxxxxx; imx@xxxxxxxxxxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Thomas
> Richard <thomas.richard@xxxxxxxxxxx>
> Subject: [PATCH] phy: freescale: imx8qm-hsio: fix NULL pointer dereference
>
> [You don't often get email from thomas.richard@xxxxxxxxxxx. Learn why this is
> important at https://aka.ms/LearnAboutSenderIdentification ]
>
> During the probe the refclk_pad pointer is set to NULL if the
> 'fsl,refclk-pad-mode' property is not defined in the devicetree node. But in
> imx_hsio_configure_clk_pad() this pointer is unconditionally used which could
> result in a NULL pointer dereference. So check the pointer before to use it.
>
> Fixes: 82c56b6dd24f ("phy: freescale: imx8qm-hsio: Add i.MX8QM HSIO PHY
> driver support")
> Signed-off-by: Thomas Richard <thomas.richard@xxxxxxxxxxx>
Thanks for your patch.
Reviewed-by: Richard Zhu <hongxing.zhu@xxxxxxx>

Best Regards
Richard Zhu
> ---
> drivers/phy/freescale/phy-fsl-imx8qm-hsio.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> b/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> index 977d21d753a5..279b8ac7822d 100644
> --- a/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> +++ b/drivers/phy/freescale/phy-fsl-imx8qm-hsio.c
> @@ -251,7 +251,7 @@ static void imx_hsio_configure_clk_pad(struct phy
> *phy)
> struct imx_hsio_lane *lane = phy_get_drvdata(phy);
> struct imx_hsio_priv *priv = lane->priv;
>
> - if (strncmp(priv->refclk_pad, "output", 6) == 0) {
> + if (priv->refclk_pad && strncmp(priv->refclk_pad, "output", 6)
> + == 0) {
> pll = true;
> regmap_update_bits(priv->misc, HSIO_CTRL0,
> HSIO_IOB_A_0_TXOE |
> HSIO_IOB_A_0_M1M0_MASK,
>
> ---
> base-commit: c537e12daeecaecdcd322c56a5f70659d2de7bde
> change-id:
> 20260114-phy-fsl-imx8qm-hsio-fix-null-pointer-dereference-67b110635f77
>
> Best regards,
> --
> Thomas Richard <thomas.richard@xxxxxxxxxxx>