17 Aug
2021
17 Aug
'21
1:41 a.m.
diff --git a/sound/soc/codecs/cs35l41-i2c.c b/sound/soc/codecs/cs35l41-i2c.c +#ifdef CONFIG_ACPI +static const struct acpi_device_id cs35l41_acpi_match[] = {
- { "CSC3541", 0 }, /* Cirrus Logic PnP ID + part ID */
- {},
+}; +MODULE_DEVICE_TABLE(acpi, cs35l41_acpi_match); +#endif
+static struct i2c_driver cs35l41_i2c_driver = {
- .driver = {
.name = "cs35l41",
.of_match_table = of_match_ptr(cs35l41_of_match),
.acpi_match_table = ACPI_PTR(cs35l41_acpi_match),
- },
- .id_table = cs35l41_id_i2c,
- .probe = cs35l41_i2c_probe,
- .remove = cs35l41_i2c_remove,
+};
+module_i2c_driver(cs35l41_i2c_driver);
+#ifdef CONFIG_ACPI +static const struct acpi_device_id cs35l41_acpi_match[] = {
- { "CSC3541", 0 }, /* Cirrus Logic PnP ID + part ID */
- {},
+}; +MODULE_DEVICE_TABLE(acpi, cs35l41_acpi_match); +#endif
+static struct spi_driver cs35l41_spi_driver = {
- .driver = {
.name = "cs35l41",
.of_match_table = of_match_ptr(cs35l41_of_match),
.acpi_match_table = ACPI_PTR(cs35l41_acpi_match),
- },
- .id_table = cs35l41_id_spi,
- .probe = cs35l41_spi_probe,
- .remove = cs35l41_spi_remove,
+};
+module_spi_driver(cs35l41_spi_driver);
Is the ACPI probe smart enough to deal with two different drivers registering for the *same* HID?
I haven't seen any precedent, e.g. the RT6777 uses a different ACPI HID for its I2C and SPI modes.