> but just compatible = "lan8650" does not work. The device tree binding says that is valid, so this needs fixing. Maybe copy max1111.c in hwmon: static const struct spi_device_id max1111_ids[] = { { "max1110", max1110 }, { "max1111", max1111 }, { "max1112", max1112 }, { "max1113", max1113 }, { }, }; MODULE_DEVICE_TABLE(spi, max1111_ids); static struct spi_driver max1111_driver = { .driver = { .name = "max1111", }, .id_table = max1111_ids, .probe = max1111_probe, .remove = max1111_remove, }; Interestingly, there is no compatible table. So the device tree binding probably should change, not require two compatibles for lan8651. Andrew