On Fri, Jun 11, 2021 at 12:00:02PM +0300, Andy Shevchenko wrote: > On Thu, Jun 10, 2021 at 7:40 PM Ioana Ciornei <ciorneiioana@xxxxxxxxx> wrote: > > > > From: Ioana Ciornei <ioana.ciornei@xxxxxxx> > > > > This patch set provides ACPI support to DPAA2 network drivers. > > > > It also introduces new fwnode based APIs to support phylink and phy > > layers > > Following functions are defined: > > phylink_fwnode_phy_connect() > > fwnode_mdiobus_register_phy() > > fwnode_get_phy_id() > > fwnode_phy_find_device() > > device_phy_find_device() > > fwnode_get_phy_node() > > fwnode_mdio_find_device() > > acpi_get_local_address() > > > > First one helps in connecting phy to phylink instance. > > Next three helps in getting phy_id and registering phy to mdiobus > > Next two help in finding a phy on a mdiobus. > > Next one helps in getting phy_node from a fwnode. > > Last one is used to get local address from _ADR object. > > > > Corresponding OF functions are refactored. > > In general it looks fine to me. What really worries me is the calls like > > of_foo -> fwnode_bar -> of_baz. > > As I have commented in one patch the idea of fwnode APIs is to have a > common ground for all resource providers. So, at the end it shouldn't > be a chain of calls like above mentioned. Either fix the name (so, the > first one will be in fwnode or device namespace) or fix the API that > it will be fwnode/device API. These types of cyclic calls do not exist anymore. The fwnode_mdio does not call back into of_mdio but instead it directly implements any necessary operations using the fwnode_handle. The only calls happening are 'of_mdio -> fwnode_mdio' so that we leverage the common fwnode handling and do not duplicate code. Ioana