diff mbox series

[v3,3/5] iio: accel: mc3230: add OF match table

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

Commit Message

Vasiliy Doylov via B4 Relay Jan. 12, 2025, 12:25 p.m. UTC
From: Vasiliy Doylov <nekodevelopper@gmail.com>

This will make the driver auto loaded via device-tree.

Signed-off-by: Vasiliy Doylov <nekodevelopper@gmail.com>
---
 drivers/iio/accel/mc3230.c | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Jonathan Cameron Jan. 12, 2025, 4:29 p.m. UTC | #1
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,
>
Vasiliy Doylov Jan. 12, 2025, 4:38 p.m. UTC | #2
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 mbox series

Patch

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,