lkml.org 
[lkml]   [2022]   [Jun]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] rtc: use simple i2c probe
Hi Alexandre,

Le 11/06/2022 16:48, Alexandre Belloni a écrit :
> On 10/06/2022 18:23:43+0200, Stephen Kitt wrote:
>> All these drivers have an i2c probe function which doesn't use the
>> "struct i2c_device_id *id" parameter, so they can trivially be
>> converted to the "probe_new" style of probe with a single argument.
>>
>
> I think you should explain why you want to do that as the trend is to
> do
> the exact opposite to allow support for those RTCS on x86 systems.

Indeed, I should have given more context. The idea is to continue the
transition started with
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b8a1a4cd5a98a2adf8dfd6902cd98e57d910ee12
(in 2016...). I²C drivers using probe() involve a call to i2c_match_id:
in drivers/i2c/i2c-core-base.c,

/*
* When there are no more users of probe(),
* rename probe_new to probe.
*/
if (driver->probe_new)
status = driver->probe_new(client);
else if (driver->probe)
status = driver->probe(client,
i2c_match_id(driver->id_table,
client));
else
status = -EINVAL;

Many drivers don't actually need the second parameter, so instead of
having probe() with both parameters, the goal is to switch to a probe
function with only "struct i2c_client *". Probe functions that *do* need
the "struct i2c_device_id" can call i2c_match_id themselves (as is done
currently with of_match_id).

I discussed this briefly with Wolfram beginning of June at Kernel
Recipes, and as I understood it the plan was still to continue with this
transition (in fact, the plan was for *me* to continue with this
transition).

Do you have an example of a change requiring id to support RTCs on x86
systems?

Regards,

Stephen

\
 
 \ /
  Last update: 2022-06-12 21:24    [W:0.076 / U:2.832 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site