[PATCH v4 4/7] drm/rockchip: cdn-dp: Support handle lane info without extcon
Dmitry Baryshkov
dmitry.baryshkov at oss.qualcomm.com
Mon Sep 22 03:01:44 PDT 2025
On Mon, Sep 22, 2025 at 09:20:36AM +0800, Chaoyi Chen wrote:
> From: Chaoyi Chen <chaoyi.chen at rock-chips.com>
>
> This patch add support for get PHY lane info without help of extcon.
>
> There is no extcon needed if the Type-C controller is present. In this
> case, the lane info can be get from PHY instead of extcon.
>
> The extcon device should still be supported if Type-C controller is
> not present.
>
> Signed-off-by: Chaoyi Chen <chaoyi.chen at rock-chips.com>
> ---
>
> Changes in v4:
> - Remove cdn_dp_hpd_notify().
>
> (no changes since v3)
>
> Changes in v2:
> - Ignore duplicate HPD events.
>
> drivers/gpu/drm/rockchip/cdn-dp-core.c | 25 +++++++++++++++++--------
> 1 file changed, 17 insertions(+), 8 deletions(-)
>
> @@ -1120,14 +1129,14 @@ static int cdn_dp_probe(struct platform_device *pdev)
> PTR_ERR(phy) == -EPROBE_DEFER)
> return -EPROBE_DEFER;
>
> - if (IS_ERR(extcon) || IS_ERR(phy))
> + if (IS_ERR(phy) || PTR_ERR(extcon) != -ENODEV)
> continue;
This will break the case when the extcon is present. It should be
(IS_ERR(extcon) && PTR_ERR(extcon) != -ENODEV)
>
> port = devm_kzalloc(dev, sizeof(*port), GFP_KERNEL);
> if (!port)
> return -ENOMEM;
>
> - port->extcon = extcon;
> + port->extcon = IS_ERR(extcon) ? NULL : extcon;
> port->phy = phy;
> port->dp = dp;
> port->id = i;
> --
> 2.49.0
>
--
With best wishes
Dmitry
More information about the linux-arm-kernel
mailing list