On Tue, Nov 03, 2015 at 11:24:58AM +0000, Mark Brown wrote:
For this case the machine entry name is "skl_alc286s_i2s", which is the RT ALC 286 codec combination on Skylake. The SKL machine driver needs this as platform device and we create it here
+static struct sst_machines sst_skl_devdata[] = {
- { "INT343A", "skl_alc286s_i2s" },
+};
This says for SKL, with codec ID "INT343A" create "skl_alc286s_i2s" machine platform device For different codec combination we can use codec ACPI names to match
I'm having a hard time seeing the difference between this and what's going on in sst-acpi. They seem to be doing the same thing in slightly different ways, they both match tables of CODEC IDs to machine driver names with the distinction being that this doesn't provide a firmware filename whereas sst-acpi does but the mechanics of mapping a CODEC to a machine driver seem otherwise the same.
I don't disagree with your observation, the code does same stuff and only difference is the data we require here, so commonizing becomes tricky
I am not sure I follow the comment on user, the SKL driver here is user in this
There are no machines defined for this.
sound/soc/intel/boards/skl_rt286.c
Ugh, the machines table is *really* buried at the bottom of the file here :(
Ah sorry for that, I can add a comment here and send an update