aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/patches-2.6.35
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2010-08-31 20:13:47 +0000
committerGabor Juhos <juhosg@openwrt.org>2010-08-31 20:13:47 +0000
commit47f8fd1dde5d2778cad79313f444a03934d5d0b4 (patch)
tree87d1372d917c4e5903da0a42ecdfed9676f96280 /target/linux/ar71xx/patches-2.6.35
parent4ca54a5b3995b80dc814165c244a1d597bfacca1 (diff)
downloadupstream-47f8fd1dde5d2778cad79313f444a03934d5d0b4.tar.gz
upstream-47f8fd1dde5d2778cad79313f444a03934d5d0b4.tar.bz2
upstream-47f8fd1dde5d2778cad79313f444a03934d5d0b4.zip
ar71xx: rewrite SPI drivers for the RB4xx boards
* add a new SPI controller driver * add SPI driver for the CPLD chip * convert the NAND driver * enable the mikroSD slot * enable more LEDs SVN-Revision: 22863
Diffstat (limited to 'target/linux/ar71xx/patches-2.6.35')
-rw-r--r--target/linux/ar71xx/patches-2.6.35/150-drivers-link-spi-before-mtd.patch12
-rw-r--r--target/linux/ar71xx/patches-2.6.35/151-spi-add-various-flags.patch19
-rw-r--r--target/linux/ar71xx/patches-2.6.35/152-rb4xx-spi-driver.patch25
-rw-r--r--target/linux/ar71xx/patches-2.6.35/153-spi-rb4xx-cpld-driver.patch26
-rw-r--r--target/linux/ar71xx/patches-2.6.35/202-spi_vsc7385_driver.patch10
-rw-r--r--target/linux/ar71xx/patches-2.6.35/400-2.6.35-fix-nand_scan_ident-options.patch2
6 files changed, 88 insertions, 6 deletions
diff --git a/target/linux/ar71xx/patches-2.6.35/150-drivers-link-spi-before-mtd.patch b/target/linux/ar71xx/patches-2.6.35/150-drivers-link-spi-before-mtd.patch
new file mode 100644
index 0000000000..eb922dd431
--- /dev/null
+++ b/target/linux/ar71xx/patches-2.6.35/150-drivers-link-spi-before-mtd.patch
@@ -0,0 +1,12 @@
+--- a/drivers/Makefile
++++ b/drivers/Makefile
+@@ -45,8 +45,8 @@ obj-y += macintosh/
+ obj-$(CONFIG_IDE) += ide/
+ obj-$(CONFIG_SCSI) += scsi/
+ obj-$(CONFIG_ATA) += ata/
+-obj-$(CONFIG_MTD) += mtd/
+ obj-$(CONFIG_SPI) += spi/
++obj-$(CONFIG_MTD) += mtd/
+ obj-y += net/
+ obj-$(CONFIG_ATM) += atm/
+ obj-$(CONFIG_FUSION) += message/
diff --git a/target/linux/ar71xx/patches-2.6.35/151-spi-add-various-flags.patch b/target/linux/ar71xx/patches-2.6.35/151-spi-add-various-flags.patch
new file mode 100644
index 0000000000..b3ce1b0797
--- /dev/null
+++ b/target/linux/ar71xx/patches-2.6.35/151-spi-add-various-flags.patch
@@ -0,0 +1,19 @@
+--- a/include/linux/spi/spi.h
++++ b/include/linux/spi/spi.h
+@@ -435,6 +435,8 @@ struct spi_transfer {
+ dma_addr_t rx_dma;
+
+ unsigned cs_change:1;
++ unsigned verify:1;
++ unsigned fast_write:1;
+ u8 bits_per_word;
+ u16 delay_usecs;
+ u32 speed_hz;
+@@ -476,6 +478,7 @@ struct spi_message {
+ struct spi_device *spi;
+
+ unsigned is_dma_mapped:1;
++ unsigned fast_read:1;
+
+ /* REVISIT: we might want a flag affecting the behavior of the
+ * last transfer ... allowing things like "read 16 bit length L"
diff --git a/target/linux/ar71xx/patches-2.6.35/152-rb4xx-spi-driver.patch b/target/linux/ar71xx/patches-2.6.35/152-rb4xx-spi-driver.patch
new file mode 100644
index 0000000000..1a59b44387
--- /dev/null
+++ b/target/linux/ar71xx/patches-2.6.35/152-rb4xx-spi-driver.patch
@@ -0,0 +1,25 @@
+--- a/drivers/spi/Kconfig
++++ b/drivers/spi/Kconfig
+@@ -259,6 +259,12 @@ config SPI_PXA2XX
+ The driver can be configured to use any SSP port and additional
+ documentation can be found a Documentation/spi/pxa2xx.
+
++config SPI_RB4XX
++ tristate "Mikrotik RB4XX SPI master"
++ depends on SPI_MASTER && AR71XX_MACH_RB4XX
++ help
++ SPI controller driver for the Mikrotik RB4xx series boards.
++
+ config SPI_S3C24XX
+ tristate "Samsung S3C24XX series SPI"
+ depends on ARCH_S3C2410 && EXPERIMENTAL
+--- a/drivers/spi/Makefile
++++ b/drivers/spi/Makefile
+@@ -49,6 +49,7 @@ obj-$(CONFIG_SPI_SH_SCI) += spi_sh_sci.
+ obj-$(CONFIG_SPI_SH_MSIOF) += spi_sh_msiof.o
+ obj-$(CONFIG_SPI_STMP3XXX) += spi_stmp.o
+ obj-$(CONFIG_SPI_NUC900) += spi_nuc900.o
++obj-$(CONFIG_SPI_RB4XX) += rb4xx_spi.o
+
+ # special build for s3c24xx spi driver with fiq support
+ spi_s3c24xx_hw-y := spi_s3c24xx.o
diff --git a/target/linux/ar71xx/patches-2.6.35/153-spi-rb4xx-cpld-driver.patch b/target/linux/ar71xx/patches-2.6.35/153-spi-rb4xx-cpld-driver.patch
new file mode 100644
index 0000000000..435effdfec
--- /dev/null
+++ b/target/linux/ar71xx/patches-2.6.35/153-spi-rb4xx-cpld-driver.patch
@@ -0,0 +1,26 @@
+--- a/drivers/spi/Kconfig
++++ b/drivers/spi/Kconfig
+@@ -401,6 +401,13 @@ config SPI_TLE62X0
+ sysfs interface, with each line presented as a kind of GPIO
+ exposing both switch control and diagnostic feedback.
+
++config SPI_RB4XX_CPLD
++ tristate "MikroTik RB4XX CPLD driver"
++ depends on AR71XX_MACH_RB4XX
++ help
++ SPI driver for the Xilinx CPLD chip present on the
++ MikroTik RB4xx boards.
++
+ #
+ # Add new SPI protocol masters in alphabetical order above this line
+ #
+--- a/drivers/spi/Makefile
++++ b/drivers/spi/Makefile
+@@ -58,6 +58,7 @@ spi_s3c24xx_hw-$(CONFIG_SPI_S3C24XX_FIQ)
+ # ... add above this line ...
+
+ # SPI protocol drivers (device/link on bus)
++obj-$(CONFIG_SPI_RB4XX_CPLD) += spi_rb4xx_cpld.o
+ obj-$(CONFIG_SPI_SPIDEV) += spidev.o
+ obj-$(CONFIG_SPI_TLE62X0) += tle62x0.o
+ # ... add above this line ...
diff --git a/target/linux/ar71xx/patches-2.6.35/202-spi_vsc7385_driver.patch b/target/linux/ar71xx/patches-2.6.35/202-spi_vsc7385_driver.patch
index 03db33d2b1..46fe39331a 100644
--- a/target/linux/ar71xx/patches-2.6.35/202-spi_vsc7385_driver.patch
+++ b/target/linux/ar71xx/patches-2.6.35/202-spi_vsc7385_driver.patch
@@ -1,8 +1,8 @@
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
-@@ -403,6 +403,11 @@ config SPI_TLE62X0
- sysfs interface, with each line presented as a kind of GPIO
- exposing both switch control and diagnostic feedback.
+@@ -416,6 +416,11 @@ config SPI_RB4XX_CPLD
+ SPI driver for the Xilinx CPLD chip present on the
+ MikroTik RB4xx boards.
+config SPI_VSC7385
+ tristate "Vitesse VSC7385 ethernet switch driver"
@@ -14,9 +14,9 @@
#
--- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile
-@@ -59,6 +59,7 @@ spi_s3c24xx_hw-$(CONFIG_SPI_S3C24XX_FIQ)
-
+@@ -61,6 +61,7 @@ spi_s3c24xx_hw-$(CONFIG_SPI_S3C24XX_FIQ)
# SPI protocol drivers (device/link on bus)
+ obj-$(CONFIG_SPI_RB4XX_CPLD) += spi_rb4xx_cpld.o
obj-$(CONFIG_SPI_SPIDEV) += spidev.o
+obj-$(CONFIG_SPI_VSC7385) += spi_vsc7385.o
obj-$(CONFIG_SPI_TLE62X0) += tle62x0.o
diff --git a/target/linux/ar71xx/patches-2.6.35/400-2.6.35-fix-nand_scan_ident-options.patch b/target/linux/ar71xx/patches-2.6.35/400-2.6.35-fix-nand_scan_ident-options.patch
index fcd2521a67..dfaad1e0e7 100644
--- a/target/linux/ar71xx/patches-2.6.35/400-2.6.35-fix-nand_scan_ident-options.patch
+++ b/target/linux/ar71xx/patches-2.6.35/400-2.6.35-fix-nand_scan_ident-options.patch
@@ -1,6 +1,6 @@
--- a/drivers/mtd/nand/rb4xx_nand.c
+++ b/drivers/mtd/nand/rb4xx_nand.c
-@@ -431,7 +431,7 @@ static int __init rb4xx_nand_probe(struc
+@@ -218,7 +218,7 @@ static int __init rb4xx_nand_probe(struc
platform_set_drvdata(pdev, info);