Ang: Re: [PATCH 0/2] Setting GPIOs simultaneously
Joakim Tjernlund
joakim.tjernlund at transmode.se
Wed Aug 5 00:59:13 EST 2009
Anton Vorontsov <avorontsov at ru.mvista.com> wrote on 04/08/2009 16:22:50:
>
> On Tue, Aug 04, 2009 at 03:38:40PM +0200, Joakim Tjernlund wrote:
> > Anton Vorontsov <avorontsov at ru.mvista.com> wrote on 15/07/2009 00:09:31:
> > >
> > > On Tue, Jul 14, 2009 at 11:20:13PM +0200, Joakim Tjernlund wrote:
> > > [...]
> > > > >But any users of the legacy bindings should be in-tree.
> > > >
> > > > ehh, it was working until you made it OF only. Why do call the native
> > > > way legacy? It is the method all non OF arch uses.
> > >
> > > It's legacy because there are no in-tree users anymore. Nowadays
> > > we're trying to pass all needed information via OF, and we're
> > > trying to avoid ugly platform-dependant hacks. Your SPI scheme
> > > can be easily described via OF, but sure, it's hard to implement
> > > it with the current SPI/OF subsystem.
> >
> > Sorry for the long delay, I have been on vaction and been busy with other stuff.
> >
> > Tell me, how does this new OF SPI device scheme work out if you want
> > to use the bitbanged SPI driver?
>
> spi-controller {
> ...
> compatible = "generic-bitbang-spi";
> gpios = <GPIO_CLK GPIO_MOSI GPIO_MISO>;
> spi,chip-select-machines = <&gpio_csm &board_csm>;
>
> gpio_csm: chip-select-machine {
> #address-cells = <1>;
> #size-cells = <0>;
> compatible = "generic-gpio-csm";
> gpios = <GPIO_CS1 GPIO_CS2>;
>
> touchscreen at 0 {
> reg = <0>; /* using GPIO CS1 */
> };
>
> eeprom at 1 {
> reg = <1>; /* using GPIO CS2 */
> };
> };
> };
>
> localbus {
> ...
> board_csm: chip-select-machine {
> #address-cells = <1>;
> #size-cells = <0>;
> compatibe = "board-specific-csm";
>
> light-sensor at 0 {
> reg = <0>; /* using board-specific "CS3" */
> };
>
> battery at 1 {
> reg = <1>; /* using board-specific "CS4" */
> };
> };
> };
hmm, this looks promising. Can I write my own board-specific-csm
and attach it to the SPI CS engine? I don't quite
se how, the 8xxx SPI driver only looks for gpio functions.
Perhaps this is something that you are working on?
Jocke
More information about the Linuxppc-dev
mailing list