[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <565F5151.20808@osg.samsung.com>
Date: Wed, 2 Dec 2015 17:15:13 -0300
From: Javier Martinez Canillas <javier@....samsung.com>
To: Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc: linux-kernel@...r.kernel.org, Nick Dyer <nick.dyer@...ev.co.uk>,
linux-input@...r.kernel.org
Subject: Re: [PATCH v2] Input: atmel_mxt_ts - Add maxtouch to I2C table for
module autoload
Hello Dmitry,
On 11/20/2015 04:46 PM, Javier Martinez Canillas wrote:
> On 11/20/2015 04:32 PM, Javier Martinez Canillas wrote:
>
> [snip]
>
>>
>> But is not complete because the .driver_data in i2c_device_id is an
>> kernel_ulong_t while the .data in of_device_id is a const void * so
>> some casting will be needed to add an OF table in some drivers that
>
> Some casting in the tables *and* some logic to get the .data from the
> OF table entries, so something like the following will be needed:
>
> static int foo_i2c_probe(struct i2c_client *i2c,
> const struct i2c_device_id *id)
> {
> struct of_device_id *match;
> kernel_ulong_t data;
>
> if (i2c->dev.of_node) {
> match = of_match_node(of_match, i2c->dev.of_node);
> if (!match)
> return -EINVAL;
>
> data = (kernel_ulong_t)match->data;
> } else {
> data = id->driver_data;
> }
> ...
> }
>
> while currently I2C drivers just rely on the model part of the compatible
> string to match with the entry in the I2C device ID table and the core
> always passing the correct .driver_data to the probe function.
>
> So as you can see, converting all the drivers to not rely on the I2C table
> requires some refactoring before proper OF modalias reporting can be used.
>
Any comments about this? I'm planning to address all this at some point but
for now I think we would need $SUBJECT to have module autoloading working
on this driver when the device is registered via OF.
> Best regards,
>
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists