On Wed, Jan 20, 2021 at 7:44 PM Andy Shevchenko <andy.shevchenko@xxxxxxxxx> wrote: > > On Wed, Jan 20, 2021 at 8:18 PM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote: > > On Tue, Jan 12, 2021 at 4:47 PM Andy Shevchenko > > <andy.shevchenko@xxxxxxxxx> wrote: > > > On Tue, Jan 12, 2021 at 3:42 PM Calvin Johnson > > > <calvin.johnson@xxxxxxxxxxx> wrote: > > ... > > > > > +int fwnode_get_id(struct fwnode_handle *fwnode, u32 *id) > > > > +{ > > > > +#ifdef CONFIG_ACPI > > > > + unsigned long long adr; > > > > + acpi_status status; > > > > +#endif > > > > + int ret; > > > > + > > > > + ret = fwnode_property_read_u32(fwnode, "reg", id); > > > > + if (!(ret && is_acpi_node(fwnode))) > > > > + return ret; > > > > + > > > > +#ifdef CONFIG_ACPI > > > > + status = acpi_evaluate_integer(ACPI_HANDLE_FWNODE(fwnode), > > > > + METHOD_NAME__ADR, NULL, &adr); > > > > + if (ACPI_FAILURE(status)) > > > > + return -EINVAL; > > > > + *id = (u32)adr; > > > > > > Shouldn't be > > > > > > return 0; > > > #else > > > return -EINVAL; > > > #endif > > > > > > ? > > > > > > Yes, it's a theoretical case when is_acpi_node() returns true when > > > CONFIG_ACPI=n. > > > > How so? is_acpi_node() is defined as a static inline returning false then. > > I understand that, that's why it's pure theoretical when, for example, > the semantics is changed. But I believe it's unlucky to happen. Changing the definition of it for CONFIG_ACPI=n would be a regression given the current usage of it.