Remove me from the gpio-spi related stuff

SVN-Revision: 13011
owl
Michael Büsch 2008-10-19 11:43:22 +00:00
parent 1e570a9288
commit 0b84952303
3 changed files with 54 additions and 70 deletions

View File

@ -1,11 +1,12 @@
--- /dev/null
+++ b/include/linux/spi/spi_gpio.h
@@ -0,0 +1,73 @@
Index: linux-2.6.25.17/include/linux/spi/spi_gpio.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.25.17/include/linux/spi/spi_gpio.h 2008-10-18 23:32:31.000000000 +0200
@@ -0,0 +1,72 @@
+/*
+ * spi_gpio interface to platform code
+ *
+ * Copyright (c) 2008 Piotr Skamruk
+ * Copyright (c) 2008 Michael Buesch
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
@ -74,14 +75,15 @@
+int spi_gpio_next_id(void);
+
+#endif /* _LINUX_SPI_SPI_GPIO */
--- /dev/null
+++ b/drivers/spi/spi_gpio.c
@@ -0,0 +1,251 @@
Index: linux-2.6.25.17/drivers/spi/spi_gpio.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.25.17/drivers/spi/spi_gpio.c 2008-10-18 23:31:27.000000000 +0200
@@ -0,0 +1,249 @@
+/*
+ * Bitbanging SPI bus driver using GPIO API
+ *
+ * Copyright (c) 2008 Piotr Skamruk
+ * Copyright (c) 2008 Michael Buesch
+ *
+ * based on spi_s3c2410_gpio.c
+ * Copyright (c) 2006 Ben Dooks
@ -325,12 +327,13 @@
+module_exit(spi_gpio_exit);
+
+MODULE_AUTHOR("Piot Skamruk <piotr.skamruk at gmail.com>");
+MODULE_AUTHOR("Michael Buesch");
+MODULE_DESCRIPTION("Platform independent GPIO bitbanging SPI driver");
+MODULE_LICENSE("GPL v2");
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -100,6 +100,19 @@
Index: linux-2.6.25.17/drivers/spi/Kconfig
===================================================================
--- linux-2.6.25.17.orig/drivers/spi/Kconfig 2008-10-18 23:30:41.000000000 +0200
+++ linux-2.6.25.17/drivers/spi/Kconfig 2008-10-18 23:30:43.000000000 +0200
@@ -100,6 +100,19 @@ config SPI_BUTTERFLY
inexpensive battery powered microcontroller evaluation board.
This same cable can be used to flash new firmware.
@ -350,9 +353,11 @@
config SPI_IMX
tristate "Freescale iMX SPI controller"
depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL
--- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile
@@ -16,6 +16,7 @@
Index: linux-2.6.25.17/drivers/spi/Makefile
===================================================================
--- linux-2.6.25.17.orig/drivers/spi/Makefile 2008-10-18 23:30:41.000000000 +0200
+++ linux-2.6.25.17/drivers/spi/Makefile 2008-10-18 23:30:43.000000000 +0200
@@ -16,6 +16,7 @@ obj-$(CONFIG_SPI_BFIN) += spi_bfin5xx.
obj-$(CONFIG_SPI_BITBANG) += spi_bitbang.o
obj-$(CONFIG_SPI_AU1550) += au1550_spi.o
obj-$(CONFIG_SPI_BUTTERFLY) += spi_butterfly.o
@ -360,17 +365,3 @@
obj-$(CONFIG_SPI_IMX) += spi_imx.o
obj-$(CONFIG_SPI_LM70_LLP) += spi_lm70llp.o
obj-$(CONFIG_SPI_PXA2XX) += pxa2xx_spi.o
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3685,6 +3685,11 @@
L: spi-devel-general@lists.sourceforge.net
S: Maintained
+SPI GPIO MASTER DRIVER
+P: Michael Buesch
+M: mb@bu3sch.de
+S: Maintained
+
STABLE BRANCH:
P: Greg Kroah-Hartman
M: greg@kroah.com

View File

@ -1,13 +1,13 @@
--- /dev/null
+++ b/drivers/mmc/host/gpiommc.c
@@ -0,0 +1,608 @@
Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.25.17/drivers/mmc/host/gpiommc.c 2008-10-18 23:33:54.000000000 +0200
@@ -0,0 +1,605 @@
+/*
+ * Driver an MMC/SD card on a bitbanging GPIO SPI bus.
+ * This module hooks up the mmc_spi and spi_gpio modules and also
+ * provides a configfs interface.
+ *
+ * Copyright 2008 Michael Buesch <mb@bu3sch.de>
+ *
+ * Licensed under the GNU/GPL. See COPYING for details.
+ */
+
@ -32,7 +32,6 @@
+
+
+MODULE_DESCRIPTION("GPIO based MMC driver");
+MODULE_AUTHOR("Michael Buesch");
+MODULE_LICENSE("GPL");
+
+
@ -609,9 +608,11 @@
+ platform_driver_unregister(&gpiommc_plat_driver);
+}
+module_exit(gpiommc_modexit);
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -130,3 +130,27 @@
Index: linux-2.6.25.17/drivers/mmc/host/Kconfig
===================================================================
--- linux-2.6.25.17.orig/drivers/mmc/host/Kconfig 2008-10-18 23:30:41.000000000 +0200
+++ linux-2.6.25.17/drivers/mmc/host/Kconfig 2008-10-18 23:32:54.000000000 +0200
@@ -130,3 +130,27 @@ config MMC_SPI
If unsure, or if your system has no SPI master driver, say N.
@ -639,22 +640,24 @@
+ help
+ This option automatically enables configfs support for gpiommc
+ if configfs is available.
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
@@ -17,4 +17,4 @@
Index: linux-2.6.25.17/drivers/mmc/host/Makefile
===================================================================
--- linux-2.6.25.17.orig/drivers/mmc/host/Makefile 2008-10-18 23:30:41.000000000 +0200
+++ linux-2.6.25.17/drivers/mmc/host/Makefile 2008-10-18 23:32:54.000000000 +0200
@@ -17,4 +17,4 @@ obj-$(CONFIG_MMC_OMAP) += omap.o
obj-$(CONFIG_MMC_AT91) += at91_mci.o
obj-$(CONFIG_MMC_TIFM_SD) += tifm_sd.o
obj-$(CONFIG_MMC_SPI) += mmc_spi.o
-
+obj-$(CONFIG_GPIOMMC) += gpiommc.o
--- /dev/null
+++ b/include/linux/mmc/gpiommc.h
@@ -0,0 +1,71 @@
Index: linux-2.6.25.17/include/linux/mmc/gpiommc.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.25.17/include/linux/mmc/gpiommc.h 2008-10-18 23:34:21.000000000 +0200
@@ -0,0 +1,69 @@
+/*
+ * Device driver for MMC/SD cards driven over a GPIO bus.
+ *
+ * Copyright (c) 2008 Michael Buesch
+ *
+ * Licensed under the GNU/GPL version 2.
+ */
+#ifndef LINUX_GPIOMMC_H_
@ -721,8 +724,10 @@
+int gpiommc_next_id(void);
+
+#endif /* LINUX_GPIOMMC_H_ */
--- /dev/null
+++ b/Documentation/gpiommc.txt
Index: linux-2.6.25.17/Documentation/gpiommc.txt
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.25.17/Documentation/gpiommc.txt 2008-10-18 23:32:54.000000000 +0200
@@ -0,0 +1,97 @@
+GPIOMMC - Driver for an MMC/SD card on a bitbanging GPIO SPI bus
+================================================================
@ -821,17 +826,3 @@
+(/config/gpiommc/my_mmc in this example).
+There's no need to first unregister the device before removing it. That will
+be done automatically.
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1736,6 +1736,11 @@
W: http://gigaset307x.sourceforge.net/
S: Maintained
+GPIOMMC DRIVER
+P: Michael Buesch
+M: mb@bu3sch.de
+S: Maintained
+
HARDWARE MONITORING
P: Mark M. Hoffman
M: mhoffman@lightlink.com

View File

@ -1,9 +1,11 @@
The gpiommc configfs context structure needs locking, as configfs
does not lock access between files.
--- a/drivers/mmc/host/gpiommc.c
+++ b/drivers/mmc/host/gpiommc.c
@@ -143,6 +143,8 @@
Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
===================================================================
--- linux-2.6.25.17.orig/drivers/mmc/host/gpiommc.c 2008-10-18 23:33:54.000000000 +0200
+++ linux-2.6.25.17/drivers/mmc/host/gpiommc.c 2008-10-18 23:34:33.000000000 +0200
@@ -140,6 +140,8 @@ struct gpiommc_configfs_device {
struct platform_device *pdev;
/* The configuration */
struct gpiommc_platform_data pdata;
@ -12,7 +14,7 @@ does not lock access between files.
};
#define GPIO_INVALID -1
@@ -233,6 +235,8 @@
@@ -230,6 +232,8 @@ static ssize_t gpiommc_config_attr_show(
unsigned int gpio;
int err = 0;
@ -21,7 +23,7 @@ does not lock access between files.
if (attr == &gpiommc_attr_DI) {
gpio = dev->pdata.pins.gpio_di;
if (gpio == GPIO_INVALID)
@@ -293,6 +297,8 @@
@@ -290,6 +294,8 @@ static ssize_t gpiommc_config_attr_show(
WARN_ON(1);
err = -ENOSYS;
out:
@ -30,7 +32,7 @@ does not lock access between files.
return err ? err : count;
}
@@ -352,6 +358,8 @@
@@ -349,6 +355,8 @@ static ssize_t gpiommc_config_attr_store
int err = -EINVAL;
unsigned long data;
@ -39,7 +41,7 @@ does not lock access between files.
if (attr == &gpiommc_attr_register) {
err = strict_strtoul(page, 10, &data);
if (err)
@@ -477,6 +485,8 @@
@@ -474,6 +482,8 @@ static ssize_t gpiommc_config_attr_store
WARN_ON(1);
err = -ENOSYS;
out:
@ -48,7 +50,7 @@ does not lock access between files.
return err ? err : count;
}
@@ -513,6 +523,7 @@
@@ -510,6 +520,7 @@ static struct config_item *gpiommc_make_
if (!dev)
return NULL;