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

From: Andy Shevchenko
Date: Thu Feb 21 2019 - 08:23:20 EST


On Thu, Feb 21, 2019 at 11:35 AM Heikki Krogerus
<heikki.krogerus@xxxxxxxxxxxxxxx> wrote:
>
> 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.

Sure.

>
> 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.

--
With Best Regards,
Andy Shevchenko