mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22863 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -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/
|
||||
@@ -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"
|
||||
@@ -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
|
||||
@@ -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 ...
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user