GPIO SUPPORT FOR SCx200 & PC8736x
This patch-set reworks the 2.4 vintage scx200_gpio driver for modern
2.6, and refactors GPIO support to reuse it in a new driver for the
GPIO on PC-8736x chips.
05/19. patch.unsigned-minor:
By standard practice, device minor numbers are unsigned.
Signed-off-by: Jim Cromie <jim.cromie@xxxxxxxxx>
diffstat patch.unsigned-minor
arch/i386/kernel/scx200.c | 2 +-
include/linux/scx200_gpio.h | 14 +++++++-------
2 files changed, 8 insertions(+), 8 deletions(-)
diff -ruNp -X dontdiff -X exclude-diffs k16r-4/arch/i386/kernel/scx200.c
k16r-5/arch/i386/kernel/scx200.c
--- k16r-4/arch/i386/kernel/scx200.c 2006-03-19 22:53:29.000000000 -0700
+++ k16r-5/arch/i386/kernel/scx200.c 2006-05-28 12:20:19.000000000 -0600
@@ -87,7 +87,7 @@ static int __devinit scx200_probe(struct
return 0;
}
-u32 scx200_gpio_configure(int index, u32 mask, u32 bits)
+u32 scx200_gpio_configure(unsigned index, u32 mask, u32 bits)
{
u32 config, new_config;
unsigned long flags;
diff -ruNp -X dontdiff -X exclude-diffs k16r-4/include/linux/scx200_gpio.h
k16r-5/include/linux/scx200_gpio.h
--- k16r-4/include/linux/scx200_gpio.h 2006-05-28 12:18:49.000000000 -0600
+++ k16r-5/include/linux/scx200_gpio.h 2006-05-28 12:20:22.000000000 -0600
@@ -1,6 +1,6 @@
#include <linux/spinlock.h>
-u32 scx200_gpio_configure(int index, u32 set, u32 clear);
+u32 scx200_gpio_configure(unsigned index, u32 set, u32 clear);
extern unsigned scx200_gpio_base;
extern long scx200_gpio_shadow[2];
@@ -17,7 +17,7 @@ extern long scx200_gpio_shadow[2];
/* returns the value of the GPIO pin */
-static inline int scx200_gpio_get(int index) {
+static inline int scx200_gpio_get(unsigned index) {
__SCx200_GPIO_BANK;
__SCx200_GPIO_IOADDR + 0x04;
__SCx200_GPIO_INDEX;
@@ -29,7 +29,7 @@ static inline int scx200_gpio_get(int in
driven if the GPIO is configured as an output, it might not be the
state of the GPIO right now if the GPIO is configured as an input) */
-static inline int scx200_gpio_current(int index) {
+static inline int scx200_gpio_current(unsigned index) {
__SCx200_GPIO_BANK;
__SCx200_GPIO_INDEX;
@@ -38,7 +38,7 @@ static inline int scx200_gpio_current(in
/* drive the GPIO signal high */
-static inline void scx200_gpio_set_high(int index) {
+static inline void scx200_gpio_set_high(unsigned index) {
__SCx200_GPIO_BANK;
__SCx200_GPIO_IOADDR;
__SCx200_GPIO_SHADOW;
@@ -49,7 +49,7 @@ static inline void scx200_gpio_set_high(
/* drive the GPIO signal low */
-static inline void scx200_gpio_set_low(int index) {
+static inline void scx200_gpio_set_low(unsigned index) {
__SCx200_GPIO_BANK;
__SCx200_GPIO_IOADDR;
__SCx200_GPIO_SHADOW;
@@ -60,7 +60,7 @@ static inline void scx200_gpio_set_low(i
/* drive the GPIO signal to state */
-static inline void scx200_gpio_set(int index, int state) {
+static inline void scx200_gpio_set(unsigned index, int state) {
__SCx200_GPIO_BANK;
__SCx200_GPIO_IOADDR;
__SCx200_GPIO_SHADOW;
@@ -73,7 +73,7 @@ static inline void scx200_gpio_set(int i
}
/* toggle the GPIO signal */
-static inline void scx200_gpio_change(int index) {
+static inline void scx200_gpio_change(unsigned index) {
__SCx200_GPIO_BANK;
__SCx200_GPIO_IOADDR;
__SCx200_GPIO_SHADOW;
|