+ chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

     chardev: GPIO for SCx200 & PC-8736x: migrate gpio_dump to common module

has been added to the -mm tree.  Its filename is

     chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump.patch

See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
out what to do about this

------------------------------------------------------
Subject: chardev: GPIO for SCx200 & PC-8736x: migrate gpio_dump to common module
From: Jim Cromie <jim.cromie@xxxxxxxxx>


Since the meaning of config-bits is the same for scx200 and pc8736x _gpios, we
can share a function to deliver this to user.  Since it is called via the
vtable, its also completely replaceable.  For now, we keep using printk...

Signed-off-by: Jim Cromie <jim.cromie@xxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 arch/i386/kernel/scx200.c  |   16 ----------------
 drivers/char/nsc_gpio.c    |   16 +++++++++++++++-
 drivers/char/scx200_gpio.c |    4 ++--
 3 files changed, 17 insertions(+), 19 deletions(-)

diff -puN arch/i386/kernel/scx200.c~chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump arch/i386/kernel/scx200.c
--- a/arch/i386/kernel/scx200.c~chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump
+++ a/arch/i386/kernel/scx200.c
@@ -110,21 +110,6 @@ u32 scx200_gpio_configure(unsigned index
 	return config;
 }
 
-void scx200_gpio_dump(unsigned index)
-{
-        u32 config = scx200_gpio_configure(index, ~0, 0);
-
-        printk(KERN_INFO NAME ": GPIO-%02u: 0x%08lx %s %s %s %s %s %s %s\n",
-               index, (unsigned long) config,
-               (config & 1) ? "OE"      : "TS",		/* output enabled / tristate */
-               (config & 2) ? "PP"      : "OD",		/* push pull / open drain */
-               (config & 4) ? "PUE"     : "PUD",	/* pull up enabled/disabled */
-               (config & 8) ? "LOCKED"  : "",		/* locked / unlocked */
-               (config & 16) ? "LEVEL"  : "EDGE",	/* level/edge input */
-               (config & 32) ? "HI"     : "LO",		/* trigger on rising/falling edge */
-               (config & 64) ? "DEBOUNCE" : "");	/* debounce */
-}
-
 static int __init scx200_init(void)
 {
 	printk(KERN_INFO NAME ": NatSemi SCx200 Driver\n");
@@ -144,5 +129,4 @@ module_exit(scx200_cleanup);
 EXPORT_SYMBOL(scx200_gpio_base);
 EXPORT_SYMBOL(scx200_gpio_shadow);
 EXPORT_SYMBOL(scx200_gpio_configure);
-EXPORT_SYMBOL(scx200_gpio_dump);
 EXPORT_SYMBOL(scx200_cb_base);
diff -puN drivers/char/nsc_gpio.c~chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump drivers/char/nsc_gpio.c
--- a/drivers/char/nsc_gpio.c~chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump
+++ a/drivers/char/nsc_gpio.c
@@ -19,6 +19,19 @@
 
 #define NAME "nsc_gpio"
 
+void nsc_gpio_dump(unsigned index, u32 config)
+{
+	printk(KERN_INFO NAME ": GPIO-%02u: 0x%08lx %s %s %s %s %s %s %s\n",
+	       index, (unsigned long)config,
+	       (config & 1) ? "OE" : "TS",      /* output-enabled/tristate */
+	       (config & 2) ? "PP" : "OD",      /* push pull / open drain */
+	       (config & 4) ? "PUE" : "PUD",    /* pull up enabled/disabled */
+	       (config & 8) ? "LOCKED" : "",    /* locked / unlocked */
+	       (config & 16) ? "LEVEL" : "EDGE",/* level/edge input */
+	       (config & 32) ? "HI" : "LO",     /* trigger on rise/fall edge */
+	       (config & 64) ? "DEBOUNCE" : "");        /* debounce */
+}
+
 ssize_t nsc_gpio_write(struct file *file, const char __user *data,
 		       size_t len, loff_t *ppos)
 {
@@ -99,9 +112,10 @@ ssize_t nsc_gpio_read(struct file *file,
 	return 1;
 }
 
-/* common routines for both scx200_gpio and pc87360_gpio */
+/* common file-ops routines for both scx200_gpio and pc87360_gpio */
 EXPORT_SYMBOL(nsc_gpio_write);
 EXPORT_SYMBOL(nsc_gpio_read);
+EXPORT_SYMBOL(nsc_gpio_dump);
 
 static int __init nsc_gpio_init(void)
 {
diff -puN drivers/char/scx200_gpio.c~chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump drivers/char/scx200_gpio.c
--- a/drivers/char/scx200_gpio.c~chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump
+++ a/drivers/char/scx200_gpio.c
@@ -35,7 +35,7 @@ static int major = 0;		/* default to dyn
 module_param(major, int, 0);
 MODULE_PARM_DESC(major, "Major device number");
 
-extern void scx200_gpio_dump(unsigned index);
+extern void nsc_gpio_dump(unsigned index);
 
 extern ssize_t nsc_gpio_write(struct file *file, const char __user *data,
 			      size_t len, loff_t *ppos);
@@ -46,7 +46,7 @@ extern ssize_t nsc_gpio_read(struct file
 struct nsc_gpio_ops scx200_access = {
 	.owner		= THIS_MODULE,
 	.gpio_config	= scx200_gpio_configure,
-	.gpio_dump	= scx200_gpio_dump,
+	.gpio_dump	= nsc_gpio_dump,
 	.gpio_get	= scx200_gpio_get,
 	.gpio_set	= scx200_gpio_set,
 	.gpio_set_high	= scx200_gpio_set_high,
_

Patches currently in -mm which might be from jim.cromie@xxxxxxxxx are

chardev-gpio-for-scx200-pc-8736x-whitespace.patch
chardev-gpio-for-scx200-pc-8736x-modernize.patch
chardev-gpio-for-scx200-pc-8736x-add-platforn_device.patch
chardev-gpio-for-scx200-pc-8736x-device-minor.patch
chardev-gpio-for-scx200-pc-8736x-put-gpio_dump.patch
chardev-gpio-for-scx200-pc-8736x-add-v-command.patch
chardev-gpio-for-scx200-pc-8736x-refactor-scx200_probe.patch
chardev-gpio-for-scx200-pc-8736x-add-gpio-ops.patch
chardev-gpio-for-scx200-pc-8736x-dispatch.patch
chardev-gpio-for-scx200-pc-8736x-add-empty.patch
chardev-gpio-for-scx200-pc-8736x-migrate-file-ops.patch
chardev-gpio-for-scx200-pc-8736x-migrate-gpio_dump.patch
chardev-gpio-for-scx200-pc-8736x-add-new-pc8736x_gpio.patch
chardev-gpio-for-scx200-pc-8736x-add-platform_device.patch
chardev-gpio-for-scx200-pc-8736x-use-dev_dbg.patch
chardev-gpio-for-scx200-pc-8736x-fix-gpio_current.patch
chardev-gpio-for-scx200-pc-8736x-replace-spinlocks.patch
chardev-gpio-for-scx200-pc-8736x-display-pin.patch
chardev-gpio-for-scx200-pc-8736x-add-proper.patch
chardev-gpio-for-scx200-pc-8736x-add-sysfs-gpio.patch
generic-time-add-macro-to-simplify-hide-mask.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux