Re: [PATCH 1/2] platform/x86: intel_cht_int33fe: Provide fwnode for the USB connector

From: Heikki Krogerus
Date: Thu Feb 21 2019 - 04:35:15 EST


On Wed, Feb 20, 2019 at 05:55:21PM +0200, Andy Shevchenko wrote:
> On Tue, Feb 19, 2019 at 2:00 PM Heikki Krogerus
> <heikki.krogerus@xxxxxxxxxxxxxxx> wrote:
> >
> > In ACPI, and now also in DT, the USB connectors usually have
> > their own device nodes. In case of USB Type-C, those
> > connector (port) nodes are child nodes of the controller or
> > PHY device, in our case the fusb302. The software fwnodes
> > allow us to create a similar child node for fusb302 that
> > represents the connector also on Intel CHT.
> >
> > This makes it possible replace the fusb302 specific device
> > properties which were deprecated with the common USB
> > connector properties that tcpm.c is able to use directly.
>
> > + /* Node for the FUSB302 controller */
> > + data->fusb302_node = fwnode_create_software_node(fusb302_props, NULL);
> > + if (IS_ERR(data->fusb302_node))
> > + return PTR_ERR(data->fusb302_node);
> > +
> > + /* Node for the connector (FUSB302 is the parent) */
> > + data->port_node = fwnode_create_software_node(usb_connector_props,
> > + data->fusb302_node);
> > + if (IS_ERR(data->port_node)) {
>
> > + fwnode_remove_software_node(data->fusb302_node);
>
> Sounds like a candidate for
> devm_fwnode_create_software_node()

If you don't mind, let's think about that later.

I'm not comfortable at all with the idea of introducing
devm_fwnode_create_software_node(). I would like to talk about that
separately. It's not going to be a problem to change this driver later
even if we decide to add the function.


thanks,

--
heikki