[lkml]   [2008]   [May]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
SubjectRe: Latest gpio gumph
On Tuesday 27 May 2008, Ben Nizette wrote:
> Hey David,
> Have you got a git/quilt repo somewhere with all the latest gpiolib (and
> gpio framework) stuff glued in? I've seen most of it hit -mm but
> developing against -mm on (especially on obscure archs like AVR32 as I
> do) is always fraught.

All the relevant stuff is now upstream (2.6.26-rc4) except:

- the userspace sysfs interface (which is in MM, and ISTR
you were cc'd on that)

- an avr32 patch, appended (no response on the avr32 list)

Nothing else touches core code; if you're using AVR32, then
you won't care about at91 gpiolib and inlining support, or the
patch sent this AM on LKML (which I've not yet reviewed).

- Dave

====== CUT HERE
From: David Brownell <>
Subject: AVR32: minor GPIO handling updates

* gpio_direction_output() should disable the pullups just like
at32_select_gpio(... AT32_GPIOF_OUTPUT) does, for consistency
between those alternative initialization paths.

* On the odd chance some code uses a pin as a GPIO IRQ without
calling gpio_request() or gpio_direction_input(), the debug
dump should still show its pin status.

Signed-off-by: David Brownell <>
arch/avr32/mach-at32ap/pio.c | 3 +++
1 files changed, 3 insertions(+)

--- a/arch/avr32/mach-at32ap/pio.c 2008-05-02 12:30:59.000000000 -0700
+++ b/arch/avr32/mach-at32ap/pio.c 2008-05-02 12:41:29.000000000 -0700
@@ -191,6 +191,7 @@ static int direction_output(struct gpio_
return -EINVAL;

gpio_set(chip, offset, value);
+ pio_writel(pio, PUDR, mask);
pio_writel(pio, OER, mask);
return 0;
@@ -318,6 +319,8 @@ static void pio_bank_show(struct seq_fil
const char *label;

label = gpiochip_is_requested(chip, i);
+ if (!label && (imr & mask))
+ label = "[irq]";
if (!label)

 \ /
  Last update: 2008-05-28 06:59    [W:0.032 / U:1.032 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site