* [PATCH] gpio_free might sleep, mips architecture [not found] ` <1221508963-27259-2-git-send-email-ukleinek@informatik.uni-freiburg.de> @ 2008-09-15 20:02 ` Uwe Kleine-König 2008-09-17 21:39 ` Andrew Morton 0 siblings, 1 reply; 4+ messages in thread From: Uwe Kleine-König @ 2008-09-15 20:02 UTC (permalink / raw) To: linux-kernel Cc: David Brownell, Ralf Baechle, linux-mips, Guennadi Liakhovetski, Greg KH, Kay Sievers, Andrew Morton, Russell King According to the documentation gpio_free should only be called from task context only. To make this more explicit add a might sleep to all implementations. This patch changes the gpio_free implementations for the mips architecture. Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de> Cc: David Brownell <david-b@pacbell.net> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: linux-mips@linux-mips.org Cc: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> Cc: Greg KH <greg@kroah.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Russell King <rmk+kernel@arm.linux.org.uk> --- include/asm-mips/mach-au1x00/gpio.h | 2 ++ include/asm-mips/mach-bcm47xx/gpio.h | 3 +++ include/asm-mips/mach-rc32434/gpio.h | 2 ++ 3 files changed, 7 insertions(+), 0 deletions(-) diff --git a/include/asm-mips/mach-au1x00/gpio.h b/include/asm-mips/mach-au1x00/gpio.h index 2dc61e0..31eddba 100644 --- a/include/asm-mips/mach-au1x00/gpio.h +++ b/include/asm-mips/mach-au1x00/gpio.h @@ -1,6 +1,7 @@ #ifndef _AU1XXX_GPIO_H_ #define _AU1XXX_GPIO_H_ +#include <linux/kernel.h> #include <linux/types.h> #define AU1XXX_GPIO_BASE 200 @@ -31,6 +32,7 @@ static inline int gpio_request(unsigned gpio, const char *label) static inline void gpio_free(unsigned gpio) { /* Not yet implemented */ + might_sleep(); } static inline int gpio_direction_input(unsigned gpio) diff --git a/include/asm-mips/mach-bcm47xx/gpio.h b/include/asm-mips/mach-bcm47xx/gpio.h index cfc8f4d..af17ccd 100644 --- a/include/asm-mips/mach-bcm47xx/gpio.h +++ b/include/asm-mips/mach-bcm47xx/gpio.h @@ -9,6 +9,8 @@ #ifndef __BCM47XX_GPIO_H #define __BCM47XX_GPIO_H +#include <linux/kernel.h> + #define BCM47XX_EXTIF_GPIO_LINES 5 #define BCM47XX_CHIPCO_GPIO_LINES 16 @@ -25,6 +27,7 @@ static inline int gpio_request(unsigned gpio, const char *label) static inline void gpio_free(unsigned gpio) { + might_sleep(); } static inline int gpio_to_irq(unsigned gpio) diff --git a/include/asm-mips/mach-rc32434/gpio.h b/include/asm-mips/mach-rc32434/gpio.h index f946f5f..9b4722e 100644 --- a/include/asm-mips/mach-rc32434/gpio.h +++ b/include/asm-mips/mach-rc32434/gpio.h @@ -13,6 +13,7 @@ #ifndef _RC32434_GPIO_H_ #define _RC32434_GPIO_H_ +#include <linux/kernel.h> #include <linux/types.h> struct rb532_gpio_reg { @@ -88,6 +89,7 @@ static inline int gpio_request(unsigned gpio, const char *label) static inline void gpio_free(unsigned gpio) { /* Not yet implemented */ + might_sleep(); } static inline int gpio_direction_input(unsigned gpio) -- 1.5.6.5 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] gpio_free might sleep, mips architecture 2008-09-15 20:02 ` [PATCH] gpio_free might sleep, mips architecture Uwe Kleine-König @ 2008-09-17 21:39 ` Andrew Morton 2008-09-18 9:32 ` Uwe Kleine-König 0 siblings, 1 reply; 4+ messages in thread From: Andrew Morton @ 2008-09-17 21:39 UTC (permalink / raw) To: Uwe Kleine-König Cc: linux-kernel, david-b, ralf, linux-mips, g.liakhovetski, greg, kay.sievers, rmk+kernel On Mon, 15 Sep 2008 22:02:41 +0200 Uwe Kleine-K__nig <ukleinek@informatik.uni-freiburg.de> wrote: > According to the documentation gpio_free should only be called from task > context only. To make this more explicit add a might sleep to all > implementations. > > This patch changes the gpio_free implementations for the mips > architecture. > > Signed-off-by: Uwe Kleine-K__nig <ukleinek@informatik.uni-freiburg.de> > Cc: David Brownell <david-b@pacbell.net> > Cc: Ralf Baechle <ralf@linux-mips.org> > Cc: linux-mips@linux-mips.org > Cc: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> > Cc: Greg KH <greg@kroah.com> > Cc: Kay Sievers <kay.sievers@vrfy.org> > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: Russell King <rmk+kernel@arm.linux.org.uk> > --- > include/asm-mips/mach-au1x00/gpio.h | 2 ++ > include/asm-mips/mach-bcm47xx/gpio.h | 3 +++ > include/asm-mips/mach-rc32434/gpio.h | 2 ++ > 3 files changed, 7 insertions(+), 0 deletions(-) > > diff --git a/include/asm-mips/mach-au1x00/gpio.h b/include/asm-mips/mach-au1x00/gpio.h > index 2dc61e0..31eddba 100644 > --- a/include/asm-mips/mach-au1x00/gpio.h > +++ b/include/asm-mips/mach-au1x00/gpio.h > @@ -1,6 +1,7 @@ > #ifndef _AU1XXX_GPIO_H_ > #define _AU1XXX_GPIO_H_ > > +#include <linux/kernel.h> > #include <linux/types.h> > > #define AU1XXX_GPIO_BASE 200 > @@ -31,6 +32,7 @@ static inline int gpio_request(unsigned gpio, const char *label) > static inline void gpio_free(unsigned gpio) > { > /* Not yet implemented */ > + might_sleep(); > } > > static inline int gpio_direction_input(unsigned gpio) > diff --git a/include/asm-mips/mach-bcm47xx/gpio.h b/include/asm-mips/mach-bcm47xx/gpio.h > index cfc8f4d..af17ccd 100644 > --- a/include/asm-mips/mach-bcm47xx/gpio.h > +++ b/include/asm-mips/mach-bcm47xx/gpio.h > @@ -9,6 +9,8 @@ > #ifndef __BCM47XX_GPIO_H > #define __BCM47XX_GPIO_H > > +#include <linux/kernel.h> > + > #define BCM47XX_EXTIF_GPIO_LINES 5 > #define BCM47XX_CHIPCO_GPIO_LINES 16 > > @@ -25,6 +27,7 @@ static inline int gpio_request(unsigned gpio, const char *label) > > static inline void gpio_free(unsigned gpio) > { > + might_sleep(); > } > > static inline int gpio_to_irq(unsigned gpio) > diff --git a/include/asm-mips/mach-rc32434/gpio.h b/include/asm-mips/mach-rc32434/gpio.h > index f946f5f..9b4722e 100644 > --- a/include/asm-mips/mach-rc32434/gpio.h > +++ b/include/asm-mips/mach-rc32434/gpio.h > @@ -13,6 +13,7 @@ > #ifndef _RC32434_GPIO_H_ > #define _RC32434_GPIO_H_ > > +#include <linux/kernel.h> > #include <linux/types.h> > > struct rb532_gpio_reg { > @@ -88,6 +89,7 @@ static inline int gpio_request(unsigned gpio, const char *label) > static inline void gpio_free(unsigned gpio) > { > /* Not yet implemented */ > + might_sleep(); > } > There is no gpio_free() in linux-next's include/asm-mips/mach-rc32434/gpio.h ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] gpio_free might sleep, mips architecture 2008-09-17 21:39 ` Andrew Morton @ 2008-09-18 9:32 ` Uwe Kleine-König 2008-09-18 13:59 ` Ralf Baechle 0 siblings, 1 reply; 4+ messages in thread From: Uwe Kleine-König @ 2008-09-18 9:32 UTC (permalink / raw) To: Andrew Morton Cc: linux-kernel, david-b, ralf, linux-mips, g.liakhovetski, greg, kay.sievers, rmk+kernel Hello, Andrew Morton wrote: > > diff --git a/include/asm-mips/mach-rc32434/gpio.h b/include/asm-mips/mach-rc32434/gpio.h > > index f946f5f..9b4722e 100644 > > --- a/include/asm-mips/mach-rc32434/gpio.h > > +++ b/include/asm-mips/mach-rc32434/gpio.h > > @@ -13,6 +13,7 @@ > > #ifndef _RC32434_GPIO_H_ > > #define _RC32434_GPIO_H_ > > > > +#include <linux/kernel.h> > > #include <linux/types.h> > > > > struct rb532_gpio_reg { > > @@ -88,6 +89,7 @@ static inline int gpio_request(unsigned gpio, const char *label) > > static inline void gpio_free(unsigned gpio) > > { > > /* Not yet implemented */ > > + might_sleep(); > > } > > > > There is no gpio_free() in linux-next's include/asm-mips/mach-rc32434/gpio.h This is OK. This machine type is converted to GPIO lib in linus-next. So just drop the two hunks for this file. (Note, you only dropped the addition of might_sleep, but then including linux/kernel.h isn't needed either.) Best regards and thanks Uwe -- Uwe Kleine-König exit vi, lesson II: : w q ! <CR> NB: write the current file ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] gpio_free might sleep, mips architecture 2008-09-18 9:32 ` Uwe Kleine-König @ 2008-09-18 13:59 ` Ralf Baechle 0 siblings, 0 replies; 4+ messages in thread From: Ralf Baechle @ 2008-09-18 13:59 UTC (permalink / raw) To: Uwe Kleine-König, Andrew Morton, linux-kernel, david-b, linux-mips, g.liakhovetski, greg, kay.sievers, rmk+kernel On Thu, Sep 18, 2008 at 11:32:42AM +0200, Uwe Kleine-König wrote: > Andrew Morton wrote: > > > diff --git a/include/asm-mips/mach-rc32434/gpio.h b/include/asm-mips/mach-rc32434/gpio.h > > > index f946f5f..9b4722e 100644 > > > --- a/include/asm-mips/mach-rc32434/gpio.h > > > +++ b/include/asm-mips/mach-rc32434/gpio.h > > > @@ -13,6 +13,7 @@ > > > #ifndef _RC32434_GPIO_H_ > > > #define _RC32434_GPIO_H_ > > > > > > +#include <linux/kernel.h> > > > #include <linux/types.h> > > > > > > struct rb532_gpio_reg { > > > @@ -88,6 +89,7 @@ static inline int gpio_request(unsigned gpio, const char *label) > > > static inline void gpio_free(unsigned gpio) > > > { > > > /* Not yet implemented */ > > > + might_sleep(); > > > } > > > > > > > There is no gpio_free() in linux-next's include/asm-mips/mach-rc32434/gpio.h > This is OK. This machine type is converted to GPIO lib in linus-next. > So just drop the two hunks for this file. (Note, you only dropped the > addition of might_sleep, but then including linux/kernel.h isn't needed > either.) A few days ago I've put a patch to move include/asm-mips/ to arch/ like several other architectures already did so you patch may conflict ... Ralf ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-09-18 14:00 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1216884515-12084-1-git-send-email-Uwe.Kleine-Koenig@digi.com>
[not found] ` <1221508963-27259-1-git-send-email-ukleinek@informatik.uni-freiburg.de>
[not found] ` <1221508963-27259-2-git-send-email-ukleinek@informatik.uni-freiburg.de>
2008-09-15 20:02 ` [PATCH] gpio_free might sleep, mips architecture Uwe Kleine-König
2008-09-17 21:39 ` Andrew Morton
2008-09-18 9:32 ` Uwe Kleine-König
2008-09-18 13:59 ` Ralf Baechle
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox