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

From: Andy Shevchenko
Date: Wed Feb 20 2019 - 10:55:36 EST


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()

> + return PTR_ERR(data->port_node);
> + }

--
With Best Regards,
Andy Shevchenko