mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-26 08:51:13 +00:00
ba6096d04b
OpenWRT's developer guide prefers having actual patches so they an be sent upstream more easily. However, in this case, Adding proper fields also allows for `git am` to properly function. Some of these patches are quite old, and lack much traceable history. This commit tries to rectify that, by digging in the history to find where and how it was first added. It is by no means perfect and also shows some patches that should have been long gone. Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
122 lines
4.4 KiB
Diff
122 lines
4.4 KiB
Diff
From: Christopher Hill <ch6574@gmail.com>
|
|
Subject: [PATCH] ath79: add Mikrotik rb4xx series drivers
|
|
|
|
This adds 3 Mikrotik rb4xx series drivers as follows:
|
|
|
|
rb4xx-cpld: This is in the mfd subsystem, and is the parent CPLD device
|
|
that interfaces between the SoC SPI bus and its two children below.
|
|
rb4xx-gpio: This is the GPIO expander.
|
|
rb4xx-nand: This is the NAND driver.
|
|
|
|
The history of this code comes in three phases.
|
|
|
|
1. The first is a May 2015 attempt to push the equivalient ar71xx rb4xx
|
|
drivers upstream. See https://lore.kernel.org/patchwork/patch/940880/.
|
|
|
|
Module-author: Gabor Juhos <juhosg@openwrt.org>
|
|
Module-author: Imre Kaloz <kaloz@openwrt.org>
|
|
Module-author: Bert Vermeulen <bert@biot.com>
|
|
|
|
2. Next several ar71xx patches were applied bringing the code current.
|
|
|
|
commit 7bbf4117c6fe4b764d9d7c62fb2bcf6dd93bff2c
|
|
Submitted-by: Hauke Mehrtens <hauke@hauke-m.de>
|
|
|
|
commit af79fdbe4af32a287798b579141204bda056b8aa
|
|
commit 889272d92db689fd9c910243635e44c9d8323095
|
|
commit e21cb649a235180563363b8af5ba8296b9ac0baa
|
|
commit 7c09fa4a7492ca436f2c94bd9a465b7c5bbeed6f
|
|
Submitted-by: Felix Fietkau <nbd@nbd.name>
|
|
|
|
3. Finally a heavy refactor to split the driver into the three new
|
|
subsystems, and updated to work with the device tree configuration, plus
|
|
updates and review feedback incorporated
|
|
|
|
Reviewed-by: Thibaut VARÈNE <hacks@slashdirt.org>
|
|
Submitted-by: Christopher Hill <ch6574@gmail.com>
|
|
---
|
|
drivers/mfd/Kconfig | 8 ++++++++
|
|
drivers/mfd/Makefile | 1 +
|
|
drivers/gpio/Kconfig | 6 ++++++
|
|
drivers/gpio/Makefile | 1 +
|
|
drivers/mtd/nand/raw/Kconfig | 7 +++++++
|
|
drivers/mtd/nand/raw/Makefile | 1 +
|
|
6 files changed, 24 insertions(+)
|
|
|
|
--- a/drivers/mfd/Kconfig
|
|
+++ b/drivers/mfd/Kconfig
|
|
@@ -2142,6 +2142,14 @@ config RAVE_SP_CORE
|
|
Select this to get support for the Supervisory Processor
|
|
device found on several devices in RAVE line of hardware.
|
|
|
|
+config MFD_RB4XX_CPLD
|
|
+ tristate "CPLD driver for Mikrotik RB4xx series boards"
|
|
+ select MFD_CORE
|
|
+ depends on ATH79 || COMPILE_TEST
|
|
+ help
|
|
+ Enables support for the CPLD chip (NAND & GPIO) on Mikrotik
|
|
+ Routerboard RB4xx series.
|
|
+
|
|
config SGI_MFD_IOC3
|
|
tristate "SGI IOC3 core driver"
|
|
depends on PCI && MIPS && 64BIT
|
|
--- a/drivers/mfd/Makefile
|
|
+++ b/drivers/mfd/Makefile
|
|
@@ -264,6 +264,7 @@ obj-$(CONFIG_MFD_ROHM_BD718XX) += rohm-b
|
|
obj-$(CONFIG_MFD_STMFX) += stmfx.o
|
|
obj-$(CONFIG_MFD_KHADAS_MCU) += khadas-mcu.o
|
|
|
|
+obj-$(CONFIG_MFD_RB4XX_CPLD) += rb4xx-cpld.o
|
|
obj-$(CONFIG_SGI_MFD_IOC3) += ioc3.o
|
|
obj-$(CONFIG_MFD_SIMPLE_MFD_I2C) += simple-mfd-i2c.o
|
|
obj-$(CONFIG_MFD_INTEL_M10_BMC) += intel-m10-bmc.o
|
|
--- a/drivers/gpio/Kconfig
|
|
+++ b/drivers/gpio/Kconfig
|
|
@@ -1520,6 +1520,12 @@ config GPIO_SODAVILLE
|
|
help
|
|
Say Y here to support Intel Sodaville GPIO.
|
|
|
|
+config GPIO_RB4XX
|
|
+ tristate "GPIO expander for Mikrotik RB4xx series boards"
|
|
+ depends on MFD_RB4XX_CPLD
|
|
+ help
|
|
+ GPIO driver for Mikrotik Routerboard RB4xx series.
|
|
+
|
|
endmenu
|
|
|
|
menu "SPI GPIO expanders"
|
|
--- a/drivers/gpio/Makefile
|
|
+++ b/drivers/gpio/Makefile
|
|
@@ -121,6 +121,7 @@ obj-$(CONFIG_GPIO_PL061) += gpio-pl061.
|
|
obj-$(CONFIG_GPIO_PMIC_EIC_SPRD) += gpio-pmic-eic-sprd.o
|
|
obj-$(CONFIG_GPIO_PXA) += gpio-pxa.o
|
|
obj-$(CONFIG_GPIO_RASPBERRYPI_EXP) += gpio-raspberrypi-exp.o
|
|
+obj-$(CONFIG_GPIO_RB4XX) += gpio-rb4xx.o
|
|
obj-$(CONFIG_GPIO_RC5T583) += gpio-rc5t583.o
|
|
obj-$(CONFIG_GPIO_RCAR) += gpio-rcar.o
|
|
obj-$(CONFIG_GPIO_RDA) += gpio-rda.o
|
|
--- a/drivers/mtd/nand/raw/Kconfig
|
|
+++ b/drivers/mtd/nand/raw/Kconfig
|
|
@@ -564,4 +564,11 @@ config MTD_NAND_AR934X
|
|
Enables support for NAND controller on Qualcomm Atheros SoCs.
|
|
This controller is found on AR934x and QCA955x SoCs.
|
|
|
|
+config MTD_NAND_RB4XX
|
|
+ tristate "Support for NAND driver for Mikrotik RB4xx series boards"
|
|
+ depends on MFD_RB4XX_CPLD
|
|
+ help
|
|
+ Enables support for the NAND flash chip on Mikrotik Routerboard
|
|
+ RB4xx series.
|
|
+
|
|
endif # MTD_RAW_NAND
|
|
--- a/drivers/mtd/nand/raw/Makefile
|
|
+++ b/drivers/mtd/nand/raw/Makefile
|
|
@@ -59,6 +59,7 @@ obj-$(CONFIG_MTD_NAND_MESON) += meson_n
|
|
obj-$(CONFIG_MTD_NAND_CADENCE) += cadence-nand-controller.o
|
|
obj-$(CONFIG_MTD_NAND_ARASAN) += arasan-nand-controller.o
|
|
obj-$(CONFIG_MTD_NAND_AR934X) += ar934x_nand.o
|
|
+obj-$(CONFIG_MTD_NAND_RB4XX) += nand_rb4xx.o
|
|
|
|
nand-objs := nand_base.o nand_legacy.o nand_bbt.o nand_timings.o nand_ids.o
|
|
nand-objs += nand_onfi.o
|