[alsa-devel] [PATCH 01/11] ASoC: rt5651: Avoid duplicating DMI quirks between codec and machine driver
Hans de Goede
hdegoede at redhat.com
Thu Feb 22 21:38:05 CET 2018
Hi,
On 22-02-18 12:35, Mark Brown wrote:
> On Thu, Feb 22, 2018 at 12:08:29PM +0100, Hans de Goede wrote:
>
>> So thinking more about this I think that having the codec driver only
>> check device-properties and completely killing platform_data is the best
>> way forward / best way to clean this up.
>
>> Combined with either device-tree or the machine driver setting these device
>> properties for now, and in the future the ACPI tables can set these properties
>> directly and we can hopefully won't need to add new quirks to the machine
>> driver.
>
> The device properties thing seems reasonable enough. I'm still not
> super convinced the machine driver is the right place, but let's see the
> code. I think ideally the arch code would have a way to put all the
> device property based quirks for these systems like we IIRC do for some
> DT fixups.
We've already tried something like that for fixing a similar situation
(not enough info in ACPI for the driver to function) for silead
touchscreens:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/drivers/platform/x86/silead_dmi.c
Note that this device-property providing driver can only be
builtin, it cannot be built as a module (otherwise we're back
to having ordering issues). We (Dmitry and I) have gotten quite
some flack about needlessly growing the bzImage size with data
only used on a small subset of x86 devices and this construction
is not something which I want to repeat (nor would advise
others to repeat).
We really need to have a way to have these quirks table in a module
which only loads on devices which need it. So in my mind the
machine driver is a good place for this.
Regards,
Hans
More information about the Alsa-devel
mailing list