On Sat, 11 Mar 2023 13:30:01 +0100 Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote: > On 11/03/2023 13:28, Jonathan Cameron wrote: > > On Sat, 11 Mar 2023 12:14:57 +0100 > > Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote: > > > >> The driver can be compile tested with !CONFIG_OF or !CONFIG_ACPI making > >> certain data unused: > >> > >> drivers/iio/proximity/sx9500.c:1039:34: error: ‘sx9500_of_match’ defined but not used [-Werror=unused-const-variable=] > >> > >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> > > > > Hi Krysztof > > > > Thanks for looking at these warnings. > > > > Drop the protection macros instead. The tables are trivial in size and > > the of_match_ptr() breaks some ways this driver can be used. > > ACPI_PTR() isn't as bad, but is pretty much pointless given this size of > > the array. > > > > For ACPI platform, ACPI table is used, so nothing for PRP0001. For OF > platform, OF table is used. So you would think, but nope.. That's not how it works (I was surprised when I came across this the first time too) PRP0001 is magic and requires no specific support in an individual driver beyond not using that of_match_ptr() macro! https://elixir.bootlin.com/linux/latest/source/drivers/acpi/bus.c#L754 Docs here https://elixir.bootlin.com/linux/latest/source/Documentation/firmware-guide/acpi/enumeration.rst#L450 > > What usage exactly is broken here? What ways? > > Best regards, > Krzysztof >