Remove me from the gpio-spi related stuff

SVN-Revision: 13011
This commit is contained in:
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 Index: linux-2.6.25.17/include/linux/spi/spi_gpio.h
+++ b/include/linux/spi/spi_gpio.h ===================================================================
@@ -0,0 +1,73 @@ --- /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 + * spi_gpio interface to platform code
+ * + *
+ * Copyright (c) 2008 Piotr Skamruk + * Copyright (c) 2008 Piotr Skamruk
+ * Copyright (c) 2008 Michael Buesch
+ * + *
+ * This program is free software; you can redistribute it and/or modify + * 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 + * it under the terms of the GNU General Public License version 2 as
@ -74,14 +75,15 @@
+int spi_gpio_next_id(void); +int spi_gpio_next_id(void);
+ +
+#endif /* _LINUX_SPI_SPI_GPIO */ +#endif /* _LINUX_SPI_SPI_GPIO */
--- /dev/null Index: linux-2.6.25.17/drivers/spi/spi_gpio.c
+++ b/drivers/spi/spi_gpio.c ===================================================================
@@ -0,0 +1,251 @@ --- /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 + * Bitbanging SPI bus driver using GPIO API
+ * + *
+ * Copyright (c) 2008 Piotr Skamruk + * Copyright (c) 2008 Piotr Skamruk
+ * Copyright (c) 2008 Michael Buesch
+ * + *
+ * based on spi_s3c2410_gpio.c + * based on spi_s3c2410_gpio.c
+ * Copyright (c) 2006 Ben Dooks + * Copyright (c) 2006 Ben Dooks
@ -325,12 +327,13 @@
+module_exit(spi_gpio_exit); +module_exit(spi_gpio_exit);
+ +
+MODULE_AUTHOR("Piot Skamruk <piotr.skamruk at gmail.com>"); +MODULE_AUTHOR("Piot Skamruk <piotr.skamruk at gmail.com>");
+MODULE_AUTHOR("Michael Buesch");
+MODULE_DESCRIPTION("Platform independent GPIO bitbanging SPI driver"); +MODULE_DESCRIPTION("Platform independent GPIO bitbanging SPI driver");
+MODULE_LICENSE("GPL v2"); +MODULE_LICENSE("GPL v2");
--- a/drivers/spi/Kconfig Index: linux-2.6.25.17/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig ===================================================================
@@ -100,6 +100,19 @@ --- 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. inexpensive battery powered microcontroller evaluation board.
This same cable can be used to flash new firmware. This same cable can be used to flash new firmware.
@ -350,9 +353,11 @@
config SPI_IMX config SPI_IMX
tristate "Freescale iMX SPI controller" tristate "Freescale iMX SPI controller"
depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL
--- a/drivers/spi/Makefile Index: linux-2.6.25.17/drivers/spi/Makefile
+++ b/drivers/spi/Makefile ===================================================================
@@ -16,6 +16,7 @@ --- 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_BITBANG) += spi_bitbang.o
obj-$(CONFIG_SPI_AU1550) += au1550_spi.o obj-$(CONFIG_SPI_AU1550) += au1550_spi.o
obj-$(CONFIG_SPI_BUTTERFLY) += spi_butterfly.o obj-$(CONFIG_SPI_BUTTERFLY) += spi_butterfly.o
@ -360,17 +365,3 @@
obj-$(CONFIG_SPI_IMX) += spi_imx.o obj-$(CONFIG_SPI_IMX) += spi_imx.o
obj-$(CONFIG_SPI_LM70_LLP) += spi_lm70llp.o obj-$(CONFIG_SPI_LM70_LLP) += spi_lm70llp.o
obj-$(CONFIG_SPI_PXA2XX) += pxa2xx_spi.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 Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
+++ b/drivers/mmc/host/gpiommc.c ===================================================================
@@ -0,0 +1,608 @@ --- /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. + * Driver an MMC/SD card on a bitbanging GPIO SPI bus.
+ * This module hooks up the mmc_spi and spi_gpio modules and also + * This module hooks up the mmc_spi and spi_gpio modules and also
+ * provides a configfs interface. + * provides a configfs interface.
+ * + *
+ * Copyright 2008 Michael Buesch <mb@bu3sch.de>
+ *
+ * Licensed under the GNU/GPL. See COPYING for details. + * Licensed under the GNU/GPL. See COPYING for details.
+ */ + */
+ +
@ -32,7 +32,6 @@
+ +
+ +
+MODULE_DESCRIPTION("GPIO based MMC driver"); +MODULE_DESCRIPTION("GPIO based MMC driver");
+MODULE_AUTHOR("Michael Buesch");
+MODULE_LICENSE("GPL"); +MODULE_LICENSE("GPL");
+ +
+ +
@ -609,9 +608,11 @@
+ platform_driver_unregister(&gpiommc_plat_driver); + platform_driver_unregister(&gpiommc_plat_driver);
+} +}
+module_exit(gpiommc_modexit); +module_exit(gpiommc_modexit);
--- a/drivers/mmc/host/Kconfig Index: linux-2.6.25.17/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig ===================================================================
@@ -130,3 +130,27 @@ --- 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. If unsure, or if your system has no SPI master driver, say N.
@ -639,22 +640,24 @@
+ help + help
+ This option automatically enables configfs support for gpiommc + This option automatically enables configfs support for gpiommc
+ if configfs is available. + if configfs is available.
--- a/drivers/mmc/host/Makefile Index: linux-2.6.25.17/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile ===================================================================
@@ -17,4 +17,4 @@ --- 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_AT91) += at91_mci.o
obj-$(CONFIG_MMC_TIFM_SD) += tifm_sd.o obj-$(CONFIG_MMC_TIFM_SD) += tifm_sd.o
obj-$(CONFIG_MMC_SPI) += mmc_spi.o obj-$(CONFIG_MMC_SPI) += mmc_spi.o
- -
+obj-$(CONFIG_GPIOMMC) += gpiommc.o +obj-$(CONFIG_GPIOMMC) += gpiommc.o
--- /dev/null Index: linux-2.6.25.17/include/linux/mmc/gpiommc.h
+++ b/include/linux/mmc/gpiommc.h ===================================================================
@@ -0,0 +1,71 @@ --- /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. + * Device driver for MMC/SD cards driven over a GPIO bus.
+ * + *
+ * Copyright (c) 2008 Michael Buesch
+ *
+ * Licensed under the GNU/GPL version 2. + * Licensed under the GNU/GPL version 2.
+ */ + */
+#ifndef LINUX_GPIOMMC_H_ +#ifndef LINUX_GPIOMMC_H_
@ -721,8 +724,10 @@
+int gpiommc_next_id(void); +int gpiommc_next_id(void);
+ +
+#endif /* LINUX_GPIOMMC_H_ */ +#endif /* LINUX_GPIOMMC_H_ */
--- /dev/null Index: linux-2.6.25.17/Documentation/gpiommc.txt
+++ b/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 @@ @@ -0,0 +1,97 @@
+GPIOMMC - Driver for an MMC/SD card on a bitbanging GPIO SPI bus +GPIOMMC - Driver for an MMC/SD card on a bitbanging GPIO SPI bus
+================================================================ +================================================================
@ -821,17 +826,3 @@
+(/config/gpiommc/my_mmc in this example). +(/config/gpiommc/my_mmc in this example).
+There's no need to first unregister the device before removing it. That will +There's no need to first unregister the device before removing it. That will
+be done automatically. +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 The gpiommc configfs context structure needs locking, as configfs
does not lock access between files. does not lock access between files.
--- a/drivers/mmc/host/gpiommc.c Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
+++ b/drivers/mmc/host/gpiommc.c ===================================================================
@@ -143,6 +143,8 @@ --- 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; struct platform_device *pdev;
/* The configuration */ /* The configuration */
struct gpiommc_platform_data pdata; struct gpiommc_platform_data pdata;
@ -12,7 +14,7 @@ does not lock access between files.
}; };
#define GPIO_INVALID -1 #define GPIO_INVALID -1
@@ -233,6 +235,8 @@ @@ -230,6 +232,8 @@ static ssize_t gpiommc_config_attr_show(
unsigned int gpio; unsigned int gpio;
int err = 0; int err = 0;
@ -21,7 +23,7 @@ does not lock access between files.
if (attr == &gpiommc_attr_DI) { if (attr == &gpiommc_attr_DI) {
gpio = dev->pdata.pins.gpio_di; gpio = dev->pdata.pins.gpio_di;
if (gpio == GPIO_INVALID) if (gpio == GPIO_INVALID)
@@ -293,6 +297,8 @@ @@ -290,6 +294,8 @@ static ssize_t gpiommc_config_attr_show(
WARN_ON(1); WARN_ON(1);
err = -ENOSYS; err = -ENOSYS;
out: out:
@ -30,7 +32,7 @@ does not lock access between files.
return err ? err : count; return err ? err : count;
} }
@@ -352,6 +358,8 @@ @@ -349,6 +355,8 @@ static ssize_t gpiommc_config_attr_store
int err = -EINVAL; int err = -EINVAL;
unsigned long data; unsigned long data;
@ -39,7 +41,7 @@ does not lock access between files.
if (attr == &gpiommc_attr_register) { if (attr == &gpiommc_attr_register) {
err = strict_strtoul(page, 10, &data); err = strict_strtoul(page, 10, &data);
if (err) if (err)
@@ -477,6 +485,8 @@ @@ -474,6 +482,8 @@ static ssize_t gpiommc_config_attr_store
WARN_ON(1); WARN_ON(1);
err = -ENOSYS; err = -ENOSYS;
out: out:
@ -48,7 +50,7 @@ does not lock access between files.
return err ? err : count; return err ? err : count;
} }
@@ -513,6 +523,7 @@ @@ -510,6 +520,7 @@ static struct config_item *gpiommc_make_
if (!dev) if (!dev)
return NULL; return NULL;