[PATCH v4 4/7] drm/rockchip: cdn-dp: Support handle lane info without extcon
Chaoyi Chen
chaoyi.chen at rock-chips.com
Mon Sep 22 18:15:13 PDT 2025
On 9/22/2025 6:01 PM, Dmitry Baryshkov wrote:
> 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)
Yes, will fix in v5
>
>>
>> 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
>>
--
Best,
Chaoyi
More information about the linux-phy
mailing list