Re: [PATCH v2 1/2] usb: typec: altmodes/displayport: add support for embedded DP cases

From: Bjorn Andersson
Date: Mon Jul 10 2023 - 00:55:08 EST


On Sun, Jul 09, 2023 at 11:13:08PM +0300, Dmitry Baryshkov wrote:
> In the embedded cases, the DisplayPort connector is handled by the TCPM
> itself. Fallback to the controller fwnode for HPD notifications to
> support such usecases without requiring additional DT properties.
>

More specific, the proposal of adding the "displayport" reference to the
DeviceTree binding was rejected, in favour of properly describing the
electrical signal path using of_graph.

Regards,
Bjorn

> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
> ---
> drivers/usb/typec/altmodes/displayport.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/typec/altmodes/displayport.c b/drivers/usb/typec/altmodes/displayport.c
> index 4e5aa17ce4c8..699438c7755e 100644
> --- a/drivers/usb/typec/altmodes/displayport.c
> +++ b/drivers/usb/typec/altmodes/displayport.c
> @@ -578,7 +578,10 @@ int dp_altmode_probe(struct typec_altmode *alt)
> alt->ops = &dp_altmode_ops;
>
> fwnode = dev_fwnode(alt->dev.parent->parent); /* typec_port fwnode */
> - dp->connector_fwnode = fwnode_find_reference(fwnode, "displayport", 0);
> + if (fwnode_property_present(fwnode, "displayport"))
> + dp->connector_fwnode = fwnode_find_reference(fwnode, "displayport", 0);
> + else
> + dp->connector_fwnode = fwnode_handle_get(fwnode); /* embedded DP */
> if (IS_ERR(dp->connector_fwnode))
> dp->connector_fwnode = NULL;
>
> --
> 2.39.2
>