diff options
Diffstat (limited to 'target')
3 files changed, 54 insertions, 70 deletions
| diff --git a/target/linux/generic-2.6/patches-2.6.25/921-gpio_spi_driver.patch b/target/linux/generic-2.6/patches-2.6.25/921-gpio_spi_driver.patch index 4608a222d..760d27aed 100644 --- a/target/linux/generic-2.6/patches-2.6.25/921-gpio_spi_driver.patch +++ b/target/linux/generic-2.6/patches-2.6.25/921-gpio_spi_driver.patch @@ -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 diff --git a/target/linux/generic-2.6/patches-2.6.25/922-gpiommc.patch b/target/linux/generic-2.6/patches-2.6.25/922-gpiommc.patch index 326e6bf5f..58c214498 100644 --- a/target/linux/generic-2.6/patches-2.6.25/922-gpiommc.patch +++ b/target/linux/generic-2.6/patches-2.6.25/922-gpiommc.patch @@ -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 diff --git a/target/linux/generic-2.6/patches-2.6.25/923-gpiommc-configfs-locking.patch b/target/linux/generic-2.6/patches-2.6.25/923-gpiommc-configfs-locking.patch index 1d0f5ba65..e68d4ab01 100644 --- a/target/linux/generic-2.6/patches-2.6.25/923-gpiommc-configfs-locking.patch +++ b/target/linux/generic-2.6/patches-2.6.25/923-gpiommc-configfs-locking.patch @@ -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; | 
