Re: [PATCH] i2c: i801: Register optional lis3lv02d i2c device on Dell machines

Pali Rohár
2016-12-28T09:05:28Z

[-- Attachment #1: Type: Text/Plain, Size: 1813 bytes --]

On Wednesday 28 December 2016 08:55:18 Andy Shevchenko wrote:
> On Wed, Dec 28, 2016 at 12:41 AM, <Valdis.Kletnieks@vt.edu> wrote:
> > On Wed, 28 Dec 2016 00:15:30 +0200, Andy Shevchenko said:
> >> On Tue, Dec 27, 2016 at 3:51 PM, Pali Rohár <pali.rohar@gmail.com> wrote:
> >
> >> > I have no idea how to do it (properly) outside of i2c-i801.c file.
> >>
> >> I doubt we need a single line of code for this. See [1] and perhaps
> >> create an EFI variable with necessary upgrade device node.
> >>
> >> > Same thing is done for Fujitsu machines, see function
> >> > i801_probe_optional_slaves() in i2c-i801.c file. So I did similar
> >> > approach for Dell machines.
> >>
> >> Perhaps, this also needs to be converted to use EFI variable.
> >>
> >> [1] https://lwn.net/Articles/693212/
> >
> > There's no guarantee that the laptops in question are booted with UEFI,
> > as Dell still supports legacy boot. So assuming the presence of EFI variables
> > is somewhat problematic.
>
>
> > In addition, it requires the user (or something in userspace) to set the UEFI
> > variable or configfs tweak, rather than Just Working Out Of The Box.
>
> I have no strong opinion, though I don't support the idea to put all
> hacks in the world to the kernel. For example, we have user space tool
> to switch USB modem from storage to actual communication device and
> that is just working out of the box.
>
> Mika, Darren, what are your opinions?

I have absolutely no idea how to you want to achieve calling that i2c_new_device() registration
without kernel patches.

So before starting discussion which option to use (EFI, kernel patch, userspace script, etc...)
please describe how would you implement such logic with different options.

--
Pali Rohár
pali.rohar@gmail.com

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]