public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: David Brownell <david-b@pacbell.net>
To: Linux Kernel list <linux-kernel@vger.kernel.org>
Cc: Andrew Morton <akpm@osdl.org>,
	Andrew Victor <andrew@sanpeople.com>,
	Bill Gatliff <bgat@billgatliff.com>,
	Haavard Skinnemoen <hskinnemoen@atmel.com>,
	jamey.hicks@hp.com, Kevin Hilman <khilman@mvista.com>,
	Nicolas Pitre <nico@cam.org>, Russell King <rmk@arm.linux.org.uk>,
	Tony Lindgren <tony@atomide.com>,
	pHilipp Zabel <philipp.zabel@gmail.com>
Subject: [patch 2.6.20-rc1 0/6] arch-neutral GPIO calls
Date: Wed, 20 Dec 2006 13:04:02 -0800	[thread overview]
Message-ID: <200612201304.03912.david-b@pacbell.net> (raw)
In-Reply-To: <200611111541.34699.david-b@pacbell.net>

Based on earlier discussion, I'm sending a refresh of the generic GPIO
patch, with several (ARM based) implementations in separate patches:

 - Core patch, doc + <asm-arm/gpio.h> + <asm-generic/gpio.h>
 - OMAP implementation
 - AT91 implementation
 - PXA implementation
 - SA1100 implementation
 - S3C2410 implementation

I know there's an AVR32 implementation too; and there's been interest
in this for some PPC support as well.

This time I'm proposing that at least the core patch go into the MM
tree; I think there's been enough discussion, and a general acceptance
that we need this kind of API.  Russell usually wants ARM patches to
go through his system, so those implementations above should probably
not go through MM.


With the exception of the AT91 implementation, those are all trivial
wrappers around the existing calls ... which should highlight the fact
that this API reflects existing practice, but with more generic syntax.
AT91 differed only because it needed to split out a "configure as GPIO"
primitive, not merged with the "set gpio direction" call.

Other than clarifications, the main change in the doc is defining
new calls safe for use with GPIOs on things like pcf8574 I2C gpio
expanders; those new calls can sleep, but are otherwise the same as
the spinlock-safe versions.  The implementations above implement that
as a wrapper (the asm-generic header) around the spinlock-safe calls.

This API is orthogonal to pin configuration (configure ball X17 as
GPIO 23 rather than R33, with pulldown, etc) which is in any case
highly platform-specific.

Also, as an API rather than an implementation framework, this does
not expose a notion of a "GPIO controller", of which any given
system might have several.  It's allowed by the API (e.g. see the
OMAP code), but is not required.  I expect that sort of thing will
come later; it's common enough to have SOC-based boards with GPIOs
on the SOC as well as a couple external chips.  

- Dave


  parent reply	other threads:[~2006-12-20 21:19 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-11 23:41 [patch/rfc 2.6.19-rc5] arch-neutral GPIO calls David Brownell
2006-11-12  1:27 ` H. Peter Anvin
2006-11-12  3:04   ` David Brownell
2006-11-12  3:15     ` H. Peter Anvin
2006-11-13  3:30 ` Bill Gatliff
2006-11-13 17:38 ` Paul Mundt
2006-11-13 17:56   ` Thiago Galesi
2006-11-13 19:25     ` David Brownell
2006-11-13 19:50       ` Bill Gatliff
2006-11-13 18:19   ` Bill Gatliff
2006-11-13 18:38     ` Paul Mundt
2006-11-13 19:29       ` Bill Gatliff
2006-11-13 20:15         ` Paul Mundt
2006-11-20 21:49           ` David Brownell
2006-11-21  3:44             ` Bill Gatliff
2006-11-21  4:45               ` David Brownell
2006-11-21  5:09                 ` Bill Gatliff
2006-11-21  5:35                   ` David Brownell
2006-11-21  6:09                     ` Paul Mundt
2006-11-21 18:13                       ` David Brownell
2006-11-22  3:36                         ` Bill Gatliff
2006-11-22  3:55                           ` Paul Mundt
2006-11-22  4:45                           ` [Bulk] " David Brownell
2006-11-22  4:47                             ` Bill Gatliff
2006-11-21 15:57                     ` Bill Gatliff
2006-11-23  0:40                       ` David Brownell
2006-11-30  6:57                         ` pHilipp Zabel
2006-11-30  7:29                           ` pHilipp Zabel
2006-11-30 22:24                           ` David Brownell
2006-11-20 22:15           ` David Brownell
2006-11-21  2:56             ` Bill Gatliff
2006-11-13 20:00       ` David Brownell
2006-11-13 21:30         ` Paul Mundt
2006-11-14  3:21           ` David Brownell
2006-11-13 19:21   ` David Brownell
2006-11-13 19:43     ` Bill Gatliff
2006-11-13 20:15       ` David Brownell
2006-11-13 20:26         ` Bill Gatliff
2006-11-13 20:53           ` David Brownell
2006-11-13 20:58             ` Bill Gatliff
2006-11-13 20:29         ` Bill Gatliff
2006-11-16 14:54 ` [RFC/PATCH] arch-neutral GPIO calls: AVR32 implementation Haavard Skinnemoen
2006-11-20 21:47   ` David Brownell
2006-11-21  3:11     ` Bill Gatliff
2006-11-21  5:06       ` David Brownell
2006-11-21  5:51         ` Bill Gatliff
2006-11-21 18:19           ` David Brownell
2006-11-21  9:11     ` Haavard Skinnemoen
2006-11-21 19:03       ` David Brownell
2006-11-28 12:36         ` [RFC/PATCH] arch-neutral GPIO calls: AVR32 implementation [take 2] Haavard Skinnemoen
2006-11-30 19:05           ` David Brownell
2006-12-01  9:51             ` Haavard Skinnemoen
2006-12-20 21:04 ` David Brownell [this message]
2006-12-20 21:08   ` [patch 2.6.20-rc1 1/6] GPIO core David Brownell
2006-12-27 17:49     ` Pavel Machek
2006-12-28 22:05       ` David Brownell
2006-12-29  0:27         ` Pavel Machek
2006-12-30  1:18           ` David Brownell
2007-01-01 20:55             ` Pavel Machek
2007-01-01 21:27               ` David Brownell
2007-01-02 14:18                 ` Pavel Machek
2006-12-20 21:09   ` [patch 2.6.20-rc1 2/6] OMAP GPIO wrappers David Brownell
2006-12-20 21:11   ` [patch 2.6.20-rc1 3/6] AT91 " David Brownell
2006-12-21  6:10     ` Andrew Morton
2006-12-21  6:45       ` David Brownell
2006-12-20 21:12   ` [patch 2.6.20-rc1 4/6] PXA " David Brownell
2006-12-21  6:12     ` Andrew Morton
2006-12-21  6:44       ` David Brownell
2006-12-21 14:27         ` Nicolas Pitre
2006-12-21 15:03           ` pHilipp Zabel
2006-12-21 17:25             ` Nicolas Pitre
2006-12-21 19:32               ` pHilipp Zabel
2006-12-21 20:10                 ` Nicolas Pitre
2006-12-21 20:32                   ` Bill Gatliff
2006-12-22  6:53                   ` pHilipp Zabel
2006-12-28 20:47                     ` David Brownell
2006-12-30  2:15                       ` Nicolas Pitre
2006-12-30  2:38                         ` David Brownell
2007-01-01 19:43                         ` David Brownell
2006-12-30  1:13                     ` David Brownell
2006-12-21 19:25             ` David Brownell
2006-12-27 17:53     ` Pavel Machek
2006-12-28 20:48       ` David Brownell
2006-12-28 20:50         ` Pavel Machek
2006-12-28 20:53           ` Pavel Machek
2006-12-20 21:13   ` [patch 2.6.20-rc1 5/6] SA1100 " David Brownell
2006-12-21  6:13     ` Andrew Morton
2006-12-22  7:16       ` pHilipp Zabel
2006-12-22 15:05         ` Nicolas Pitre
2006-12-30  2:21         ` David Brownell
2006-12-30  3:15           ` Nicolas Pitre
2006-12-30  6:01             ` David Brownell
2006-12-30 13:59               ` pHilipp Zabel
2006-12-30 15:08                 ` Russell King
2006-12-23 11:37     ` Russell King
2006-12-23 20:39       ` David Brownell
2006-12-27 18:24     ` Pavel Machek
2006-12-20 21:14   ` [patch 2.6.20-rc1 6/6] S3C2410 " David Brownell
2006-12-21 10:33     ` Arnaud Patard
2006-12-21 15:29       ` pHilipp Zabel
2006-12-23 11:40       ` Russell King
2006-12-20 23:30   ` [patch 2.6.20-rc1 0/6] arch-neutral GPIO calls Håvard Skinnemoen
2006-12-20 23:46     ` David Brownell
  -- strict thread matches above, loose matches on Subject: below --
2006-12-31 19:11 Kevin O'Connor
2007-01-01 20:06 ` David Brownell
2007-01-01 23:17   ` Kevin O'Connor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200612201304.03912.david-b@pacbell.net \
    --to=david-b@pacbell.net \
    --cc=akpm@osdl.org \
    --cc=andrew@sanpeople.com \
    --cc=bgat@billgatliff.com \
    --cc=hskinnemoen@atmel.com \
    --cc=jamey.hicks@hp.com \
    --cc=khilman@mvista.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nico@cam.org \
    --cc=philipp.zabel@gmail.com \
    --cc=rmk@arm.linux.org.uk \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox