Message ID | 20250112-mainlining-mc3510c-v3-3-9ee6520ab69d@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | iio: accel: mc3230: add mount matrix, of match and mc3510c support | expand |
On Sun, 12 Jan 2025 15:25:37 +0300 Vasiliy Doylov via B4 Relay <devnull+nekodevelopper.gmail.com@kernel.org> wrote: > From: Vasiliy Doylov <nekodevelopper@gmail.com> > > This will make the driver auto loaded via device-tree. Are you sure that didn't previously work? I thought there were fallbacks that would make it use the driver name if nothing else matched. > > Signed-off-by: Vasiliy Doylov <nekodevelopper@gmail.com> > --- > drivers/iio/accel/mc3230.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/iio/accel/mc3230.c b/drivers/iio/accel/mc3230.c > index a153a3f715ed7f2f1417618715767f265b49191d..ba30c904d3f67002deeb3ca5a7e12bfae312e05f 100644 > --- a/drivers/iio/accel/mc3230.c > +++ b/drivers/iio/accel/mc3230.c > @@ -205,9 +205,16 @@ static const struct i2c_device_id mc3230_i2c_id[] = { > }; > MODULE_DEVICE_TABLE(i2c, mc3230_i2c_id); > > +static const struct of_device_id mc3230_of_match[] = { > + { .compatible = "mcube,mc3230" }, > + {} { } here as well. > +}; > +MODULE_DEVICE_TABLE(of, mc3230_of_match); > + > static struct i2c_driver mc3230_driver = { > .driver = { > .name = "mc3230", > + .of_match_table = mc3230_of_match, > .pm = pm_sleep_ptr(&mc3230_pm_ops), > }, > .probe = mc3230_probe, >
On 1/12/25 7:29 PM, Jonathan Cameron wrote: > Are you sure that didn't previously work? I thought there were > fallbacks that would make it use the driver name if nothing else matched. It works if I modprobe module, but module doesn't loading automatically on boot like other modules. With OF match it loads automatically during boot, without i need to call modprobe explicitly
diff --git a/drivers/iio/accel/mc3230.c b/drivers/iio/accel/mc3230.c index a153a3f715ed7f2f1417618715767f265b49191d..ba30c904d3f67002deeb3ca5a7e12bfae312e05f 100644 --- a/drivers/iio/accel/mc3230.c +++ b/drivers/iio/accel/mc3230.c @@ -205,9 +205,16 @@ static const struct i2c_device_id mc3230_i2c_id[] = { }; MODULE_DEVICE_TABLE(i2c, mc3230_i2c_id); +static const struct of_device_id mc3230_of_match[] = { + { .compatible = "mcube,mc3230" }, + {} +}; +MODULE_DEVICE_TABLE(of, mc3230_of_match); + static struct i2c_driver mc3230_driver = { .driver = { .name = "mc3230", + .of_match_table = mc3230_of_match, .pm = pm_sleep_ptr(&mc3230_pm_ops), }, .probe = mc3230_probe,