On 30/10/2023 12:50, Amadeusz Sławiński wrote: > On 10/28/2023 10:46 AM, Krzysztof Kozlowski wrote: >> On 27/10/2023 13:05, Amadeusz Sławiński wrote: >>> To support AVS-rt5514 configuration add machine board connecting AVS >>> platform component driver with rt5514 codec one. >>> >>> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@xxxxxxxxxxxxxxx> >>> --- >>> sound/soc/intel/avs/boards/Kconfig | 10 ++ >>> sound/soc/intel/avs/boards/Makefile | 2 + >>> sound/soc/intel/avs/boards/rt5514.c | 187 ++++++++++++++++++++++++++++ >>> 3 files changed, 199 insertions(+) >>> create mode 100644 sound/soc/intel/avs/boards/rt5514.c >> >> ... >> >>> + >>> +static struct platform_driver avs_rt5514_driver = { >>> + .probe = avs_rt5514_probe, >>> + .driver = { >>> + .name = "avs_rt5514", >>> + .pm = &snd_soc_pm_ops, >>> + }, >>> +}; >>> + >>> +module_platform_driver(avs_rt5514_driver); >>> + >>> +MODULE_LICENSE("GPL"); >>> +MODULE_ALIAS("platform:avs_rt5514"); >> >> You should not need MODULE_ALIAS() in normal cases. If you need it, >> usually it means your device ID table is wrong. >> > > In theory yes, in practice it is a bit more complicated, as we use the > driver alias in sound/soc/intel/avs/board_selection.c in > snd_soc_acpi_mach and they should match. > > For example for rt286, there is: > # modinfo > /lib/modules/6.4.0-rc3+/kernel/sound/soc/intel/avs/boards/snd-soc-avs-rt286.ko > | grep 286 > filename: > /lib/modules/6.4.0-rc3+/kernel/sound/soc/intel/avs/boards/snd-soc-avs-rt286.ko > alias: platform:avs_rt286 > name: snd_soc_avs_rt286 > as you can see platform_driver::driver::name is not matching the driver > name. > > I've did quick test with removing alias and changing snd_soc_acpi_mach > definition for one board and it didn't load. Sorry, but why do you talk about platform name? We talk about ID table! > > Now that you pointed it out I also lean towards trying to remove > MODULE_ALIAS() from board drivers, but it will probably require some > more investigation if we really want to do it and implementing it properly. Ehm? We have been there. I've been dropping these useless aliases as well. You miss DEVICE_TABLE and proper ID entries, not adding aliases. Best regards, Krzysztof