[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20121113224246.768bf734@endymion.delvare>
Date: Tue, 13 Nov 2012 22:42:46 +0100
From: Jean Delvare <khali@...ux-fr.org>
To: Alexander Holler <holler@...oftware.de>
Cc: linux-kernel@...r.kernel.org, linux-i2c@...r.kernel.org,
Till Harbaum <till@...baum.org>
Subject: Re: [PATCH 1/2] i2c: Add possibility for user-defined (i2c-)devices
for bus-drivers.
On Tue, 13 Nov 2012 22:24:50 +0100, Alexander Holler wrote:
> Am 13.11.2012 22:08, schrieb Jean Delvare:
> > It probes in the sense "check if a device is present", not in the sense
> > "check if the device there is really what the user told me." So very
> > easy to get wrong. Plus there is no universal probe method on I2C,
> > i2c_new_probed_device() uses a default heuristic which may not only
> > fail to detect a device's presence, but may even heavily confuse the
> > device in question. Usage of i2c_new_probed_device() should be limited
> > to very specific cases.
>
> I know about that too. But I prefer such a probe instead of doing it
> without an probe. Just try what happens if you add e.g. an pcf8563 (or
> ds1307) which is not available. The driver doesn't care and you will
> find an /dev/rtcN afterwards in your system. So probing is imho better
> than not.
Question is, what will you do the day someone wants to instantiate a
device for which the default probing mechanism doesn't work?
Plus you don't address the main issues. Your syntax gives you no way to
support two i2c-tiny-usb adapters with different chips at a specific
address. The sysfs interface supports such a setup. Also instantiating
the wrong devices is worse than instating a device that doesn't exist
at all. So the use of i2c_new_probed_device() here will randomly help
in a limited number of cases and randomly be problematic in others.
Hard to justify...
> > I am not questioning the quality of your code, I did not even look at
> > it. I'm questioning the pertinence of adding yet another way to
> > instantiate i2c devices when we already have 4 which made everybody
> > else happy for the past 3 years AFAIK.
>
> As said, currently there is no way to do that whithout either patching
> the kernel or working in userspace. And a RTC is just an example for a
> device you really want before userspace starts (but imho a very good).
I am not familiar with RTC constraints. What is so important about it
that it can't wait for user-space? It'll have to wait for the USB and
I2C stacks to initialize anyway, so it won't be available at the very
early stages of the boot.
--
Jean Delvare
--
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