From: Lee Jones <lee.jones@linaro.org>
To: Javier Martinez Canillas <javier@osg.samsung.com>
Cc: Kieran Bingham <kieran@ksquared.org.uk>,
Wolfram Sang <wsa@the-dreams.de>,
linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org,
grant.likely@linaro.org, sameo@linux.intel.com
Subject: Re: [PATCHv5 8/8] mfd: as3722: Rid driver of superfluous I2C device ID structure
Date: Tue, 10 May 2016 15:01:52 +0100 [thread overview]
Message-ID: <20160510140152.GN19473@dell> (raw)
In-Reply-To: <8df98822-22d4-7d03-2b84-6e96e0b6f8af@osg.samsung.com>
On Tue, 10 May 2016, Javier Martinez Canillas wrote:
> Hello Lee,
>
> On 05/10/2016 03:33 AM, Lee Jones wrote:
> > On Tue, 10 May 2016, Javier Martinez Canillas wrote:
>
> [snip]
>
> >>>
> >>> -static const struct i2c_device_id as3722_i2c_id[] = {
> >>> - { "as3722", 0 },
> >>> - {},
> >>> -};
> >>> -MODULE_DEVICE_TABLE(i2c, as3722_i2c_id);
> >>> -
> >>
> >> Just a note that this can only be made because the driver's Kconfig symbol
> >> is bool and not tristate. Since for drivers that can be built as a module,
> >> the I2C core always reports a MODALIAS of the form "i2c:as3722" and so the
> >> i2c_device_id array and the MODULE_DEVICE_TABLE() are needed even when not
> >> used by the driver.
> >>
> >> As mentioned the change is correct for this driver but I just wanted to
> >> point out in case other authors try to do the same change for drivers that
> >> can be built as a module and so breaking module auto-loading.
> >
> > Sounds like a subsequent patch might be required to fix that use-case
> > too. I'll add it to my TODO. :)
> >
>
> Well, the fix is really trivial and I've posted it as an RFC patch a [0] a
> long time ago. That is what Kieran and my used to test module autoload with
> this patch series.
>
> The problem is that a lot of I2C drivers are relying on how the subsystem
> behave (always match using i2c_device_id table and report i2c: modalias)
> and so OF drivers don't have an of_device_id table since was not necessary.
>
> So if the RFC patch lands [0], that will break a lot of drivers since after
> that, the I2C devices registered via OF will report a of: modalias but will
> not have a OF aliases in their modules.
>
> We need a flag day to change the I2C subsystem behaviour and that can only
> happen after all the in-tree I2C drivers have proper exported of_device_id.
>
> I posted a patch series almost a year ago [1] trying to fix the I2C drivers
> that I could find using a script but then found that removing the I2C table
> was not possible also due how the subsystem did the matching. Fortunately
> your patch series fixed this :)
>
> So after your series land, I plan to do the same investigation again and
> post patches to fix all the remaining I2C drivers so the modalias patch can
> finally land and the I2C subsystem report modalias like other subsystems do.
Sounds perfect. Thanks for the explanation.
Wolfram,
Things are looking up for the subsystem, please do your thing, so we
can ensure awesomeness. :)
> [0]: https://patchwork.ozlabs.org/patch/502201/
> [1]: https://lkml.org/lkml/2015/7/30/519
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2016-05-10 14:01 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-04 15:14 [PATCHv5 0/8] 2c: Relax mandatory I2C ID table passing Kieran Bingham
2016-05-04 15:14 ` [PATCHv5 1/8] i2c: Add pointer dereference protection to i2c_match_id() Kieran Bingham
2016-05-10 4:54 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 2/8] i2c: Add the ability to match device to compatible string without an of_node Kieran Bingham
2016-05-10 4:57 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 3/8] i2c: Match using traditional OF methods, then by vendor-less compatible strings Kieran Bingham
2016-05-10 4:58 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 4/8] i2c: Make I2C ID tables non-mandatory for DT'ed devices Kieran Bingham
2016-05-10 5:01 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 5/8] i2c: Export i2c_match_id() for direct use by device drivers Kieran Bingham
2016-05-10 5:02 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 6/8] i2c: Provide a temporary .probe_new() call-back type Kieran Bingham
2016-05-10 5:04 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 7/8] mfd: 88pm860x: Move over to new I2C device .probe() call Kieran Bingham
2016-05-10 5:07 ` Javier Martinez Canillas
2016-05-04 15:14 ` [PATCHv5 8/8] mfd: as3722: Rid driver of superfluous I2C device ID structure Kieran Bingham
2016-05-10 5:20 ` Javier Martinez Canillas
2016-05-10 7:33 ` Lee Jones
2016-05-10 13:23 ` Javier Martinez Canillas
2016-05-10 14:01 ` Lee Jones [this message]
2016-05-10 14:39 ` [PATCH] cocci: Find i2c drivers with an of_device table that isn't exported Kieran Bingham
2016-05-10 15:07 ` [PATCH] cocci: Provide script to find i2c_tables missing exports Kieran Bingham
2016-05-11 20:07 ` Javier Martinez Canillas
2016-05-09 9:14 ` [PATCHv5 0/8] 2c: Relax mandatory I2C ID table passing Lee Jones
2016-05-09 13:21 ` Javier Martinez Canillas
2016-05-10 5:31 ` Javier Martinez Canillas
2016-05-10 7:48 ` Kieran Bingham
2016-06-09 14:24 ` Lee Jones
2016-06-09 19:15 ` Wolfram Sang
2016-06-09 19:45 ` Javier Martinez Canillas
2016-06-09 20:04 ` Wolfram Sang
2016-06-10 10:03 ` Kieran Bingham
2016-06-10 11:00 ` Wolfram Sang
2016-06-10 12:07 ` Kieran Bingham
2016-06-10 13:32 ` Wolfram Sang
2016-06-12 21:13 ` [TEST PATCH] rtc: convert ds1307 to interim probe_new Kieran Bingham
2016-06-12 21:26 ` kbuild test robot
2016-06-12 21:26 ` kbuild test robot
2016-06-13 17:13 ` Wolfram Sang
2016-07-11 9:13 ` Kieran Bingham
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160510140152.GN19473@dell \
--to=lee.jones@linaro.org \
--cc=grant.likely@linaro.org \
--cc=javier@osg.samsung.com \
--cc=kieran@ksquared.org.uk \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sameo@linux.intel.com \
--cc=wsa@the-dreams.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).