[alsa-devel] [PATCH] ASoC: rt5640: ifdef for ACPI module table

Olof Johansson olof at lixom.net
Wed Sep 18 17:13:14 CEST 2013

On Wed, Sep 18, 2013 at 2:41 AM, Mark Brown <broonie at kernel.org> wrote:
> On Tue, Sep 17, 2013 at 11:10:24PM -0700, Olof Johansson wrote:
> Please send things to the advertised maintainer addresses.

I sent it to the person signing off on the patch that this fixes up,
you should probably use your maintainer address for that.

>> Commit 02b80773de37 (ASoC: rt5640: Add ACPI probing support.) causes
>> a warning due to unreferenced variable on non-ACPI configs such as
>> tegra_defconfig on ARM:
>>   sound/soc/codecs/rt5640.c:2085:30: warning: 'rt5640_acpi_match' defined but not used [-Wunused-variable]
>>  static struct acpi_device_id rt5640_acpi_match[] = {
>>       { "INT33CA", 0 },
>>       { },
>>  };
>>  MODULE_DEVICE_TABLE(acpi, rt5640_acpi_match);
>> +#endif
> Shouldn't the fix for this be to do the same as we're doing for the OF
> tables and have an acpi_match_ptr()?  It seems like we're doing the same
> thing so we should be handling it in a similar fashion.

There's already ACPI_PTR(), which is exactly why this warning shows
up. of_match_ptr() and ACPI_PTR() will evaluate to NULL if
CONFIG_OF/ACPI aren't set, which is the case here -- which in turn is
why there's a warning that the match table is defined but never used.

So, the solution is either to not define the table, i.e. ifdef, or to
not use the ACPI_PTR() macro. It makes sense to not advertise the
driver as capable of probing on ACPI if ACPI is not enabled in the
kernel config, which in turn means ifdef.

Unless I'm missing something here, of course. :)


More information about the Alsa-devel mailing list