On Wed, Sep 18, 2019 at 12:46:32PM +0200, Sylwester Nawrocki wrote: > The Arndale boards come with different types of the audio daughter > board. In order to support the WM1811 one we add new definition of > an ASoC card which will be registered when the driver matches on > "samsung,arndale-wm1811" compatible. There is no runtime detection of > the audio daughter board type at the moment, compatible string of the > audio card needs to be adjusted in DT, e.g. by the bootloader, > depending on actual audio board (CODEC) used. > > Signed-off-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx> > --- > -static const struct of_device_id samsung_arndale_rt5631_of_match[] __maybe_unused = { > - { .compatible = "samsung,arndale-rt5631", }, > - { .compatible = "samsung,arndale-alc5631", }, > +static const struct of_device_id arndale_audio_of_match[] __maybe_unused = { If your removing the of_match_ptr below I think the __maybe_unused should be removed as well. Thanks, Charles > + { .compatible = "samsung,arndale-rt5631", .data = &arndale_rt5631 }, > + { .compatible = "samsung,arndale-alc5631", .data = &arndale_rt5631 }, > + { .compatible = "samsung,arndale-wm1811", .data = &arndale_wm1811 }, > {}, > }; > -MODULE_DEVICE_TABLE(of, samsung_arndale_rt5631_of_match); > +MODULE_DEVICE_TABLE(of, arndale_of_match); > > static struct platform_driver arndale_audio_driver = { > .driver = { > - .name = "arndale-audio", > + .name = "arndale-audio", > .pm = &snd_soc_pm_ops, > - .of_match_table = of_match_ptr(samsung_arndale_rt5631_of_match), > + .of_match_table = arndale_audio_of_match,