mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2024-12-20 22:01:38 +00:00
d6d8851d12
Manually rebased: bcm27xx/patches-5.15/950-0421-Support-RPi-DPI-interface-in-mode6-for-18-bit-color.patch bcm27xx/patches-5.15/950-0706-media-i2c-imx219-Scale-the-pixel-clock-rate-for-the-.patch ramips/patches-5.15/810-uvc-add-iPassion-iP2970-support.patch Removed upstreamed: bcm27xx/patches-5.15/950-0707-drm-vc4-For-DPI-MEDIA_BUS_FMT_RGB565_1X16-is-mode-1-.patch[1] bcm27xx/patches-5.15/950-0596-drm-vc4-dpi-Add-option-for-inverting-pixel-clock-and.patch[2] ipq807x/0006-v5.16-arm64-dts-qcom-Fix-IPQ8074-PCIe-PHY-nodes.patch [3] ipq807x/0034-v6.1-arm64-dts-qcom-ipq8074-fix-PCIe-PHY-serdes-size.patch [4] ipq807x/0103-arm64-dts-qcom-ipq8074-fix-Gen2-PCIe-QMP-PHY.patch [5] ipq807x/0104-arm64-dts-qcom-ipq8074-fix-Gen3-PCIe-QMP-PHY.patch [6] ipq807x/0105-arm64-dts-qcom-ipq8074-correct-Gen2-PCIe-ranges.patch [7] ipq807x/0108-arm64-dts-qcom-ipq8074-fix-Gen3-PCIe-node.patch [8] ipq807x/0109-arm64-dts-qcom-ipq8074-correct-PCIe-QMP-PHY-output-c.patch [9] ipq807x/0132-arm64-dts-qcom-ipq8074-correct-USB3-QMP-PHY-s-clock-.patch [10] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.99&id=d2991e6b30020e286f2dd9d3b4f43548c547caa6 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/gpu/drm/vc4/vc4_dpi.c?h=v5.15.100&id=8e04aaffb6de5f1ae61de7b671c1531172ccf429 3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=a55a645aa303a3f7ec37db69822d5420657626da 4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=d9df682bcea57fa25f37bbf17eae56fa05662635 5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=7e6eeb5fb3aa9e5feffdb6e137dcc06f5f6410e1 6. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=e88204931d9a60634cd50bbc679f045439c4b91d 7. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=1563af0f28afd3b6d64ac79a2aecced3969c90bf 8. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=feb8c71f015d416f1afe90e1f62cf51e47376c67 9. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=69c7a270357a7d50ffd3471b14c60250041200e3 10. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/qcom/ipq8074.dtsi?h=v5.15.99&id=dd3d021ae5471d98adf81f1e897431c8657d0a18 Build system: x86_64 Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3 Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3 Signed-off-by: John Audia <therealgraysky@proton.me> Tested-by: Robert Marko <robimarko@gmail.com> #ipq807x/Dynalink WRX36 Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> #ipq807x/ax3600, x86_64/FW-7543B, ath79/tl-wdr3600, ipq806x/g10, ipq806x/nbg6817
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
|
|
@@ -2176,6 +2176,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
|
|
bool "SGI IOC3 core driver"
|
|
depends on PCI && MIPS && 64BIT
|
|
--- a/drivers/mfd/Makefile
|
|
+++ b/drivers/mfd/Makefile
|
|
@@ -267,6 +267,7 @@ obj-$(CONFIG_MFD_KHADAS_MCU) += khadas-
|
|
obj-$(CONFIG_MFD_ACER_A500_EC) += acer-ec-a500.o
|
|
obj-$(CONFIG_MFD_QCOM_PM8008) += qcom-pm8008.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
|
|
@@ -1574,6 +1574,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
|
|
@@ -122,6 +122,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
|
|
@@ -563,4 +563,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_INTEL_LGM) += inte
|
|
obj-$(CONFIG_MTD_NAND_ROCKCHIP) += rockchip-nand-controller.o
|
|
obj-$(CONFIG_MTD_NAND_PL35X) += pl35x-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
|