[PATCH] ibm ocp gpio

Kenneth Johansson kenneth.johansson at inn.ericsson.se
Wed May 22 20:58:05 EST 2002


On Tue, 2002-05-21 at 20:26, andrew may wrote:
>
> On Tue, May 21, 2002 at 06:28:41PM +0200, Kenneth Johansson wrote:
> > On Tue, 2002-05-21 at 18:08, andrew may wrote:
> >
> > > Well no it doesn't need to be in the driver, but you then are forced with
> > > having every other driver doing there own timer to turn off the bit rather
> > > than having one timer take care of them all. And do you really want to
> >
> > Well I don't think that would be a problem and if we are talking led's
> > its not going to happen more than a few time a second you have to see
> > the thing flash. I don't want more code in the kernel than absolutely
> > necessary all it takes is one bug.
> >
> > If you really want to make something that can't be done other than in
> > the driver it's some type of streaming mode and then you have to have
> > timers to control the speed. Think any card that needs to program sram
> > based FPGA it would probably go many times faster than todays interface.
>
> Look at the code and stop the hand-waving generalities.

relax I did not say your code was buggy it was more .. well general
hand-waving :)

> The other motto of the kernel is do it once right. If this code is not
> there every thing that just wants to turn on a LED for a half second needs
> to do their own timer. I have a couple drivers where I use some LED's on the
> GPIO pins and I don't want to do a timer in each one of them.

I do not see a problem with everyone doing the timers but it's not me
you have to convince I can't commit the code anyway.

It would be better if you made a more generic interface. perhaps
something that took commands in the form of.

struct gpio_command{
	int action;
	int value;
	int ns_wait;
	}

action would code in what register to use and if you want to set or
clear the bits specified in value.

Now you could do a mode that loop over an array of this type of
commands.

This would have the "side effect" of speeding up large transfers over
SPI bus or similar things and help you with flashing your led.


--
Kenneth Johansson
Ericsson AB                       Tel: +46 8 404 71 83
Borgafjordsgatan 9                Fax: +46 8 404 72 72
164 80 Stockholm                  kenneth.johansson at etx.ericsson.se


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-embedded mailing list