2018-01-25 07:35:52

by Akash Gajjar

[permalink] [raw]
Subject: [PATCH] media: leds: as3645a: Add CONFIG_OF support

From: Akash Gajjar <[email protected]>

Witth this changes, the driver builds with CONFIG_OF support

Signed-off-by: Akash Gajjar <[email protected]>
---
drivers/media/i2c/as3645a.c | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/drivers/media/i2c/as3645a.c b/drivers/media/i2c/as3645a.c
index af5db71..24233fa 100644
--- a/drivers/media/i2c/as3645a.c
+++ b/drivers/media/i2c/as3645a.c
@@ -858,6 +858,14 @@ static int as3645a_remove(struct i2c_client *client)
};
MODULE_DEVICE_TABLE(i2c, as3645a_id_table);

+#if IS_ENABLED(CONFIG_OF)
+static const struct of_device_id as3645a_of_match[] = {
+ { .compatible = "ams,as3645a", },
+ { /* sentinel */ },
+};
+MODULE_DEVICE_TABLE(of, as3645a_of_match);
+#endif
+
static const struct dev_pm_ops as3645a_pm_ops = {
.suspend = as3645a_suspend,
.resume = as3645a_resume,
@@ -867,6 +875,7 @@ static int as3645a_remove(struct i2c_client *client)
.driver = {
.name = AS3645A_NAME,
.pm = &as3645a_pm_ops,
+ .of_match_table = of_match_ptr(as3645a_of_match),
},
.probe = as3645a_probe,
.remove = as3645a_remove,
--
1.9.1



2018-01-25 08:41:49

by Laurent Pinchart

[permalink] [raw]
Subject: Re: [PATCH] media: leds: as3645a: Add CONFIG_OF support

Hi Akash,

Thank you for the patch.

On Thursday, 25 January 2018 09:34:36 EET Akash Gajjar wrote:
> From: Akash Gajjar <[email protected]>
>
> Witth this changes, the driver builds with CONFIG_OF support

Does the driver fail to build with CONFIG_OF at the moment ?

> Signed-off-by: Akash Gajjar <[email protected]>
> ---
> drivers/media/i2c/as3645a.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/media/i2c/as3645a.c b/drivers/media/i2c/as3645a.c
> index af5db71..24233fa 100644
> --- a/drivers/media/i2c/as3645a.c
> +++ b/drivers/media/i2c/as3645a.c
> @@ -858,6 +858,14 @@ static int as3645a_remove(struct i2c_client *client)
> };
> MODULE_DEVICE_TABLE(i2c, as3645a_id_table);
>
> +#if IS_ENABLED(CONFIG_OF)
> +static const struct of_device_id as3645a_of_match[] = {
> + { .compatible = "ams,as3645a", },

As far as I know I2C can match the compatible string's device name after the
comma with the I2C device IDs table without requiring an of_device_id array.

Furthermore, given the following check

if (client->dev.platform_data == NULL)
return -ENODEV;

at the beginning of the probe function, I doubt the driver will be functional.

> + { /* sentinel */ },
> +};
> +MODULE_DEVICE_TABLE(of, as3645a_of_match);
> +#endif
> +
> static const struct dev_pm_ops as3645a_pm_ops = {
> .suspend = as3645a_suspend,
> .resume = as3645a_resume,
> @@ -867,6 +875,7 @@ static int as3645a_remove(struct i2c_client *client)
> .driver = {
> .name = AS3645A_NAME,
> .pm = &as3645a_pm_ops,
> + .of_match_table = of_match_ptr(as3645a_of_match),
> },
> .probe = as3645a_probe,
> .remove = as3645a_remove,

--
Regards,

Laurent Pinchart


2018-01-25 10:53:51

by Sakari Ailus

[permalink] [raw]
Subject: Re: [PATCH] media: leds: as3645a: Add CONFIG_OF support

Hi Akash,

On Thu, Jan 25, 2018 at 01:04:36PM +0530, Akash Gajjar wrote:
> From: Akash Gajjar <[email protected]>
>
> Witth this changes, the driver builds with CONFIG_OF support
>
> Signed-off-by: Akash Gajjar <[email protected]>

Sorry; this driver has been removed in favour of the LED framework driver
for the same device. It can be found in drivers/leds/leds-as3645a.c

--
Regards,

Sakari Ailus
e-mail: [email protected]