[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <9F25E89E-9194-4725-8A8C-053DCBADA1DB@antoniou-consulting.com>
Date: Thu, 1 Nov 2012 15:59:50 +0200
From: Pantelis Antoniou <panto@...oniou-consulting.com>
To: Alan Cox <alan@...rguk.ukuu.org.uk>
Cc: <balbi@...com>, "Cousson, Benoit" <b-cousson@...com>,
Tony Lindgren <tony@...mide.com>,
<linux-kernel@...r.kernel.org>,
Koen Kooi <koen@...inion.thruhere.net>,
Matt Porter <mporter@...com>, Russ Dill <Russ.Dill@...com>,
<linux-omap@...r.kernel.org>, Kevin Hilman <khilman@...com>,
Paul Walmsley <paul@...an.com>
Subject: Re: [PATCH 0/3] capebus moving omap_devices to mach-omap2
Hi Alan,
On Nov 1, 2012, at 3:51 PM, Alan Cox wrote:
>> What they want, and what every user wants, is I plug this board in, and
>> the driver make sure everything is loaded and ready. No, the end users
>> don't want to see any of the implementation details of how the bitfile
>> is transported; the driver can handle it.
>
> That doesn't necessarily make it a bus merely some kind of hotplug
> enumeration of devices. That should all work properly both for devices
> and busses with spi and i²c as the final bits needed for it got fixed
> some time ago.
>
> In an ideal world you don't want to be writing custom drivers for stuff.
> If your cape routes an i²c serial device to the existing system i²c
> busses then you want to just create an instance of any existing driver on
> the existing i²c bus not create a whole new layer of goop.
>
> It does need to do the plumbing and resource management for the plumbing
> but thats not the same as being a bus.
>
> Alan
Fair enough. But there's no such thing a 'hotplug enumeration construct' in Linux
yet, and a bus is the closest thing to it. It does take advantage of the nice
way device code matches drivers and devices though.
I'm afraid that having the I2C/SPI drivers doing the detection won't work.
The capes can have arbitrary I2C/SPI devices (and even more weird components).
There is no way to assure for example that the I2C device responding to address 'foo'
in cape A is the same I2C device responding to the same address in cape B.
In a nutshell, no, I'm not writing any custom drivers for the stuff that exists
already. There is no extra layer after the device is created and operates as it was
located in the proper place in the DTS.
The custom drivers are only needed for complex capes where you can't
have the device simply work by creating the devices.
Regards
-- Pantelis
--
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