[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200812291232.09174.david-b@pacbell.net>
Date: Mon, 29 Dec 2008 12:32:08 -0800
From: David Brownell <david-b@...bell.net>
To: "Jaya Kumar" <jayakumar.lkml@...il.com>
Cc: "Ben Nizette" <bn@...sdigital.com>,
"Robin Getz" <rgetz@...ckfin.uclinux.org>,
"Eric Miao" <eric.y.miao@...il.com>,
"Sam Ravnborg" <sam@...nborg.org>,
"Eric Miao" <eric.miao@...vell.com>,
"Haavard Skinnemoen" <hskinnemoen@...el.com>,
"Philipp Zabel" <philipp.zabel@...il.com>,
"Russell King" <rmk@....linux.org.uk>,
"Ben Gardner" <bgardner@...tec.com>, "Greg KH" <greg@...ah.com>,
linux-arm-kernel@...ts.arm.linux.org.uk,
linux-fbdev-devel@...ts.sourceforge.net,
linux-kernel@...r.kernel.org, linux-embedded@...r.kernel.org
Subject: Re: [RFC 2.6.27 1/1] gpiolib: add support for batch set of pins
On Sunday 28 December 2008, Jaya Kumar wrote:
> I'd like to get the start/length approach out there and in-play to
> find out if other people want to use it and how they end up using it.
As an *implementation* constraint, I might agree ... so
long as it's easily changed later.
As an *interface* constraint, I don't ... interfaces are
rarely easy to change.
However, in terms of implementation, most gpio chips have
primitives that work in terms of bitmasks rather than any
kind of start/length primitive. Example:
- To set bits in "u32 mask":
iowrite32(mask, bank_base + SET_REG)
- To clear bits in "u32 mask"
iowrite32(mask, bank_base + CLR_REG)
- To read bits in "u32 mask",
return mask & ioread32(bank_base + VALUE_REG)
In short, start/length looks most like a policy, of the
"keep them out of interfaces!" flavor, than something
appropriate for an interface. As noted above, gpio_chip
interfaces would more naturally use masks.
- Dave
--
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