Messages in this thread | | | Date | Wed, 14 Nov 2012 13:38:36 +0100 | From | Alexander Holler <> | Subject | Re: [PATCH 1/2] i2c: Add possibility for user-defined (i2c-)devices for bus-drivers. |
| |
Hello,
Am 14.11.2012 10:40, schrieb Jean Delvare:
>> It isn't possible to do such, because the only ID available for >> i2c-busses is given them at runtime. So people have to live with that >> imho artificially problem, if they use my patch. I don't have any other >> solution until the numbering is predictable. But I assume you already >> know all that, otherwise you wouldn't have mentioned it. > > The problem is inherent to external, hot-plug I2C adapters. You can't > predict their bus number, and actually you can't even always predict > their name. In the case of usb-tiny-i2c, you may be able to look-up the > bus number from the adapter name, but you won't be able to always > differentiate between two adapters, if they are connected to paired USB > ports. > > This is a design issue with the i2c-tiny-usb hardware in the first > place. If it is needed to differentiate between adapters, their would > need to be a locally unique ID in every adapter, which the kernel can > query. I suppose this was not deemed necessary at design time, as most > people will only connect one such adapter at a time to their system.
Actually many of the available USB devices (e.g. many usb-serials) don't offer a unique ID by themself. That isn't just a problem of the i2c-tiny-usb. But in contrast to other solutions, it shouldn't be very hard to give those adapters a unique ID. As the whole SUB solution is just software (and open source), one likely just would to write some small piece of additional code.
> I have already experienced this and yes, it is a pain. But I would > think that a system designed without a RTC in the first place has > another way of getting its time correct at boot time, for example NTP. > As I understand it the RTC chip is only there to set the system time at > boot, right, the actual timekeeping during run-time is still done by the > CPU?
Whatever those people which want to us it decide. If I didn't want to help other people by offering them some small documentation about how to build such theirself, I wouldn't have taken the usual and almost unavoidable pain trying feed some silly patches into the kernel. ;)
Anyway, maybe Till Harbaum will like that solution and won't get blocked by you. And maybe in some years we will see how many other bus-drivers have adopted the same solution. In fact the in-driver solution was my first one and I've thought others might be interested too, so I've moved the few lines from the driver itself into the i2c-core before I sent the patches. Unfortunately a waste of time.
Regards,
Alexander
| |