Hi Tomi, On Mon, Dec 26, 2022 at 09:25:34PM +0200, Tomi Valkeinen wrote: > On 26/12/2022 18:56, Laurent Pinchart wrote: > > On Wed, Dec 14, 2022 at 08:36:47AM +0200, Tomi Valkeinen wrote: > >> On 14/12/2022 08:29, Tomi Valkeinen wrote: > >> > >>>> wondering if the struct device of the DS90UB913 could be passed instead > >>>> of the port, to avoid passing the port throught > >>>> ds90ub9xx_platform_data. > >>> > >>> Interesting thought. That would limit the number of remote i2c busses to > >>> one, though. Not a problem for FPD-Link, but I wonder if that's assuming > >>> too much for the future users. Then again, this is an in-kernel API so > >>> we could extend it later if needed. So I'll try this out and see if I > >>> hit any issues. > >> > >> Right, so the issue with this one would be that it would prevent a > >> single device uses. E.g. a single chip which acts as an ATR (similar to > >> i2c-mux chips), i.e. it contains both the main and the remote i2c busses. > > > > I don't think I understand this, sorry. > > What you are suggesting above means that we'd have a separate device for > each port of the ATR. Which is fine in our current case, as the i2c > master busses are behind separate remote devices. > > But if you consider a case similar to i2c-mux, where we have a single > chip with the slave bus and, say, 4 master busses. We would probably > have only a single device for that. Hmmm... Yes you're right, it won't work in that case. Maybe we could have two functions, the existing i2c_atr_add_adapter(), and another one that wraps it ? It would be nice if we could get rid of the platform data for the UB913 and UB953 drivers. -- Regards, Laurent Pinchart