[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMRc=MdNppn0370xAYG76zCjnXPzma0CoVTXR_Vv+uc9EbM_EA@mail.gmail.com>
Date: Wed, 11 Apr 2018 13:14:46 +0200
From: Bartosz Golaszewski <brgl@...ev.pl>
To: Peter Rosin <peda@...ntia.se>
Cc: Andy Shevchenko <andy.shevchenko@...il.com>,
Sven Van Asbroeck <svendev@...x.com>,
linux-i2c <linux-i2c@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/4] eeprom: at24: don't assign the i2c ID table to at24_driver
2018-04-11 12:12 GMT+02:00 Peter Rosin <peda@...ntia.se>:
> On 2018-04-11 12:09, Bartosz Golaszewski wrote:
>> 2018-04-11 11:56 GMT+02:00 Peter Rosin <peda@...ntia.se>:
>>> On 2018-04-10 15:12, Bartosz Golaszewski wrote:
>>>> We switched to using probe_new(), so this is no longer used
>>>> by i2c core.
>>>
>>> It seems to be used in i2c_device_match() ???
>>>
>>> This could easily be me not understanding something...
>>>
>>
>> Yes, but i2c core no longer uses the id_table field in struct
>> i2c_driver. We call i2c_device_match() ourselves instead of letting
>> i2c core do it and pass the driver data to probe().
>>
>> Hope that helps,
>> Bartosz
>>
>
> But, i2c_device_match is a static function in the core. I think you
> are confusing it with i2c_match_id, which is in fact called from
> the static i2c_device_match (with is a bus operation).
>
Right. So probe_new() in i2c no longer has the id parameter and the
users are supposed to call i2c_match_id() themselves but
i2c_device_match() still expects the id_table to be present in struct
i2c_driver. I should have tested it with some board that uses platform
data.
Consider this patch dropped.
Thanks for spotting that,
Bartosz
Powered by blists - more mailing lists