Re: [RFC 1/2] i2c: Use stable dev_name for ACPI enumerated I2C slaves

Rafael J. Wysocki
2013-10-25T14:08:08Z

On Friday, October 25, 2013 04:30:23 PM Jarkko Nikula wrote:
> On 10/25/2013 04:18 PM, Rafael J. Wysocki wrote:
> > On Friday, October 25, 2013 03:55:29 PM Jarkko Nikula wrote:
> >>
> >> Well, acpi_bus_get_device() is not available for non-ACPI builds and at
> >> least the gcc I used for test build didn't optimize that block away.
> > Well, it should. ACPI_HANDLE() translates to (NULL) if CONFIG_ACPI
> > is not defined and that causes the check to become "if (NULL)" which
> > should always be dropped by the compiler.
> >
> My very vague memory says the same. I don't know is this gcc version or
> flag dependent behavior. I got the build error from both i386 build
> using gcc 4.8.1 and arm build by using make ARCH=arm omap2plus_defconfig
> and gcc-4.7-arm-linux-gnueabi 4.7.2-4.
> > Does providing a stub acpi_bus_get_device() for !CONFIG_ACPI actually help?
> >
> >
> Hmm, not only. Referencing to dev field in struct acpi_device by
> dev_name(&adev->dev) here will fail too.

Well, something is not quite right here.

One of the *reasons* for having ACPI_HANDLE() defined this way is to avoid
using explicit CONFIG_ACPI checks, so if that doesn't work, then all of that
becomes a bit pointless.

Thanks!

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.