All patches of LSDK 19.03 were ported to Openwrt kernel. We still used an all-in-one patch for each IP/feature for OpenWrt. Below are the changes this patch introduced. - Updated original IP/feature patches to LSDK 19.03. - Added new IP/feature patches for eTSEC/PTP/TMU. - Squashed scattered patches into IP/feature patches. - Updated config-4.14 correspondingly. - Refreshed all patches. More info about LSDK and the kernel: - https://lsdk.github.io/components.html - https://source.codeaurora.org/external/qoriq/qoriq-components/linux Signed-off-by: Biwen Li <biwen.li@nxp.com> Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
		
			
				
	
	
		
			341 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			341 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 2a1351617985ef47581de825ae1bbf1d42bf3200 Mon Sep 17 00:00:00 2001
 | 
						|
From: Yangbo Lu <yangbo.lu@nxp.com>
 | 
						|
Date: Mon, 6 May 2019 17:29:32 +0800
 | 
						|
Subject: [PATCH] config: support layerscape
 | 
						|
MIME-Version: 1.0
 | 
						|
Content-Type: text/plain; charset=UTF-8
 | 
						|
Content-Transfer-Encoding: 8bit
 | 
						|
 | 
						|
This is an integrated patch of config for layerscape
 | 
						|
 | 
						|
Signed-off-by: Alison Wang <alison.wang@nxp.com>
 | 
						|
Signed-off-by: Bharat Bhushan <Bharat.Bhushan@nxp.com>
 | 
						|
Signed-off-by: Biwen Li <biwen.li@nxp.com>
 | 
						|
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
 | 
						|
Signed-off-by: Bogdan Purcareata <bogdan.purcareata@nxp.com>
 | 
						|
Signed-off-by: Calvin Johnson <calvin.johnson@nxp.com>
 | 
						|
Signed-off-by: Camelia Groza <camelia.groza@nxp.com>
 | 
						|
Signed-off-by: Chenhui Zhao <chenhui.zhao@nxp.com>
 | 
						|
Signed-off-by: Florin Chiculita <florinlaurentiu.chiculita@nxp.com>
 | 
						|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 | 
						|
Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
 | 
						|
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
 | 
						|
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
 | 
						|
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@nxp.com>
 | 
						|
Signed-off-by: Li Yang <leoyang.li@nxp.com>
 | 
						|
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
 | 
						|
Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
 | 
						|
Signed-off-by: Pankaj Bansal <pankaj.bansal@nxp.com>
 | 
						|
Signed-off-by: Pankit Garg <pankit.garg@nxp.com>
 | 
						|
Signed-off-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
 | 
						|
Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
 | 
						|
Signed-off-by: Razvan Stefanescu <razvan.stefanescu@nxp.com>
 | 
						|
Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
 | 
						|
Signed-off-by: Subrahmanya Lingappa <l.subrahmanya@mobiveil.co.in>
 | 
						|
Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com>
 | 
						|
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
 | 
						|
Signed-off-by: Yogesh Gaur <yogeshnarayan.gaur@nxp.com>
 | 
						|
Signed-off-by: Zhang Ying-22455 <ying.zhang22455@nxp.com>
 | 
						|
Signed-off-by: Zhao Qiang <qiang.zhao@nxp.com>
 | 
						|
---
 | 
						|
 drivers/Makefile                        |  2 ++
 | 
						|
 drivers/irqchip/Makefile                |  1 +
 | 
						|
 drivers/net/ethernet/freescale/Kconfig  | 14 +++++----
 | 
						|
 drivers/net/ethernet/freescale/Makefile |  3 ++
 | 
						|
 drivers/ptp/Kconfig                     | 16 +++++-----
 | 
						|
 drivers/soc/Kconfig                     |  1 +
 | 
						|
 drivers/soc/fsl/Kconfig                 | 22 +++++++++++++
 | 
						|
 drivers/soc/fsl/Kconfig.arm             | 16 ++++++++++
 | 
						|
 drivers/soc/fsl/Makefile                |  5 +++
 | 
						|
 drivers/soc/fsl/layerscape/Kconfig      | 10 ++++++
 | 
						|
 drivers/soc/fsl/layerscape/Makefile     |  1 +
 | 
						|
 drivers/staging/Kconfig                 |  4 +++
 | 
						|
 drivers/staging/Makefile                |  2 ++
 | 
						|
 drivers/staging/fsl-dpaa2/Kconfig       | 56 ++++++++++++++++++++++++++++++++-
 | 
						|
 drivers/staging/fsl-dpaa2/Makefile      |  4 +++
 | 
						|
 15 files changed, 142 insertions(+), 15 deletions(-)
 | 
						|
 create mode 100644 drivers/soc/fsl/Kconfig.arm
 | 
						|
 create mode 100644 drivers/soc/fsl/layerscape/Kconfig
 | 
						|
 create mode 100644 drivers/soc/fsl/layerscape/Makefile
 | 
						|
 | 
						|
--- a/drivers/Makefile
 | 
						|
+++ b/drivers/Makefile
 | 
						|
@@ -20,6 +20,8 @@ obj-$(CONFIG_PCI)		+= pci/
 | 
						|
 obj-$(CONFIG_PCI_ENDPOINT)	+= pci/endpoint/
 | 
						|
 # PCI dwc controller drivers
 | 
						|
 obj-y				+= pci/dwc/
 | 
						|
+# PCI mobiveil controller drivers
 | 
						|
+obj-y				+= pci/mobiveil/
 | 
						|
 
 | 
						|
 obj-$(CONFIG_PARISC)		+= parisc/
 | 
						|
 obj-$(CONFIG_RAPIDIO)		+= rapidio/
 | 
						|
--- a/drivers/irqchip/Makefile
 | 
						|
+++ b/drivers/irqchip/Makefile
 | 
						|
@@ -80,3 +80,4 @@ obj-$(CONFIG_ARCH_ASPEED)		+= irq-aspeed
 | 
						|
 obj-$(CONFIG_STM32_EXTI) 		+= irq-stm32-exti.o
 | 
						|
 obj-$(CONFIG_QCOM_IRQ_COMBINER)		+= qcom-irq-combiner.o
 | 
						|
 obj-$(CONFIG_IRQ_UNIPHIER_AIDET)	+= irq-uniphier-aidet.o
 | 
						|
+obj-$(CONFIG_QUICC_ENGINE)		+= irq-qeic.o
 | 
						|
--- a/drivers/net/ethernet/freescale/Kconfig
 | 
						|
+++ b/drivers/net/ethernet/freescale/Kconfig
 | 
						|
@@ -5,10 +5,11 @@
 | 
						|
 config NET_VENDOR_FREESCALE
 | 
						|
 	bool "Freescale devices"
 | 
						|
 	default y
 | 
						|
-	depends on FSL_SOC || QUICC_ENGINE || CPM1 || CPM2 || PPC_MPC512x || \
 | 
						|
-		   M523x || M527x || M5272 || M528x || M520x || M532x || \
 | 
						|
-		   ARCH_MXC || ARCH_MXS || (PPC_MPC52xx && PPC_BESTCOMM) || \
 | 
						|
-		   ARCH_LAYERSCAPE || COMPILE_TEST
 | 
						|
+	depends on FSL_SOC || (QUICC_ENGINE && PPC32) || CPM1 || CPM2 || \
 | 
						|
+		   PPC_MPC512x || M523x || M527x || M5272 || M528x || M520x || \
 | 
						|
+		   M532x || ARCH_MXC || ARCH_MXS || \
 | 
						|
+		   (PPC_MPC52xx && PPC_BESTCOMM) || ARCH_LAYERSCAPE || \
 | 
						|
+		   COMPILE_TEST
 | 
						|
 	---help---
 | 
						|
 	  If you have a network (Ethernet) card belonging to this class, say Y.
 | 
						|
 
 | 
						|
@@ -73,7 +74,7 @@ config FSL_XGMAC_MDIO
 | 
						|
 
 | 
						|
 config UCC_GETH
 | 
						|
 	tristate "Freescale QE Gigabit Ethernet"
 | 
						|
-	depends on QUICC_ENGINE
 | 
						|
+	depends on QUICC_ENGINE && FSL_SOC && PPC32
 | 
						|
 	select FSL_PQ_MDIO
 | 
						|
 	select PHYLIB
 | 
						|
 	---help---
 | 
						|
@@ -94,7 +95,8 @@ config GIANFAR
 | 
						|
 	  This driver supports the Gigabit TSEC on the MPC83xx, MPC85xx,
 | 
						|
 	  and MPC86xx family of chips, the eTSEC on LS1021A and the FEC
 | 
						|
 	  on the 8540.
 | 
						|
-
 | 
						|
+source "drivers/net/ethernet/freescale/sdk_fman/Kconfig"
 | 
						|
+source "drivers/net/ethernet/freescale/sdk_dpaa/Kconfig"
 | 
						|
 source "drivers/net/ethernet/freescale/dpaa/Kconfig"
 | 
						|
 
 | 
						|
 endif # NET_VENDOR_FREESCALE
 | 
						|
--- a/drivers/net/ethernet/freescale/Makefile
 | 
						|
+++ b/drivers/net/ethernet/freescale/Makefile
 | 
						|
@@ -20,5 +20,8 @@ gianfar_driver-objs := gianfar.o \
 | 
						|
 obj-$(CONFIG_UCC_GETH) += ucc_geth_driver.o
 | 
						|
 ucc_geth_driver-objs := ucc_geth.o ucc_geth_ethtool.o
 | 
						|
 
 | 
						|
+obj-$(if $(CONFIG_FSL_SDK_FMAN),y) += sdk_fman/
 | 
						|
+obj-$(if $(CONFIG_FSL_SDK_DPAA_ETH),y) += sdk_dpaa/
 | 
						|
+
 | 
						|
 obj-$(CONFIG_FSL_FMAN) += fman/
 | 
						|
 obj-$(CONFIG_FSL_DPAA_ETH) += dpaa/
 | 
						|
--- a/drivers/ptp/Kconfig
 | 
						|
+++ b/drivers/ptp/Kconfig
 | 
						|
@@ -41,19 +41,19 @@ config PTP_1588_CLOCK_DTE
 | 
						|
 	  To compile this driver as a module, choose M here: the module
 | 
						|
 	  will be called ptp_dte.
 | 
						|
 
 | 
						|
-config PTP_1588_CLOCK_GIANFAR
 | 
						|
-	tristate "Freescale eTSEC as PTP clock"
 | 
						|
-	depends on GIANFAR
 | 
						|
+config PTP_1588_CLOCK_QORIQ
 | 
						|
+	tristate "Freescale QorIQ 1588 timer as PTP clock"
 | 
						|
+	depends on GIANFAR || FSL_DPAA_ETH || FSL_SDK_DPAA_ETH
 | 
						|
 	depends on PTP_1588_CLOCK
 | 
						|
 	default y
 | 
						|
 	help
 | 
						|
-	  This driver adds support for using the eTSEC as a PTP
 | 
						|
-	  clock. This clock is only useful if your PTP programs are
 | 
						|
-	  getting hardware time stamps on the PTP Ethernet packets
 | 
						|
-	  using the SO_TIMESTAMPING API.
 | 
						|
+	  This driver adds support for using the Freescale QorIQ 1588
 | 
						|
+	  timer as a PTP clock. This clock is only useful if your PTP
 | 
						|
+	  programs are getting hardware time stamps on the PTP Ethernet
 | 
						|
+	  packets using the SO_TIMESTAMPING API.
 | 
						|
 
 | 
						|
 	  To compile this driver as a module, choose M here: the module
 | 
						|
-	  will be called gianfar_ptp.
 | 
						|
+	  will be called ptp_qoriq.
 | 
						|
 
 | 
						|
 config PTP_1588_CLOCK_IXP46X
 | 
						|
 	tristate "Intel IXP46x as PTP clock"
 | 
						|
--- a/drivers/soc/Kconfig
 | 
						|
+++ b/drivers/soc/Kconfig
 | 
						|
@@ -5,6 +5,7 @@ source "drivers/soc/amlogic/Kconfig"
 | 
						|
 source "drivers/soc/atmel/Kconfig"
 | 
						|
 source "drivers/soc/bcm/Kconfig"
 | 
						|
 source "drivers/soc/fsl/Kconfig"
 | 
						|
+source "drivers/soc/fsl/ls2-console/Kconfig"
 | 
						|
 source "drivers/soc/imx/Kconfig"
 | 
						|
 source "drivers/soc/mediatek/Kconfig"
 | 
						|
 source "drivers/soc/qcom/Kconfig"
 | 
						|
--- a/drivers/soc/fsl/Kconfig
 | 
						|
+++ b/drivers/soc/fsl/Kconfig
 | 
						|
@@ -16,3 +16,25 @@ config FSL_GUTS
 | 
						|
 	  Initially only reading SVR and registering soc device are supported.
 | 
						|
 	  Other guts accesses, such as reading RCW, should eventually be moved
 | 
						|
 	  into this driver as well.
 | 
						|
+
 | 
						|
+config FSL_QIXIS
 | 
						|
+	tristate "QIXIS system controller driver"
 | 
						|
+	depends on OF
 | 
						|
+	select REGMAP_I2C
 | 
						|
+	select REGMAP_MMIO
 | 
						|
+	select MFD_CORE
 | 
						|
+	default n
 | 
						|
+	help
 | 
						|
+	  Say y here to enable QIXIS system controller api. The qixis driver
 | 
						|
+	  provides FPGA functions to control system.
 | 
						|
+
 | 
						|
+config FSL_SLEEP_FSM
 | 
						|
+	bool
 | 
						|
+	help
 | 
						|
+	  This driver configures a hardware FSM (Finite State Machine) for deep sleep.
 | 
						|
+	  The FSM is used to finish clean-ups at the last stage of system entering deep
 | 
						|
+	  sleep, and also wakes up system when a wake up event happens.
 | 
						|
+
 | 
						|
+if ARM || ARM64
 | 
						|
+source "drivers/soc/fsl/Kconfig.arm"
 | 
						|
+endif
 | 
						|
--- /dev/null
 | 
						|
+++ b/drivers/soc/fsl/Kconfig.arm
 | 
						|
@@ -0,0 +1,16 @@
 | 
						|
+#
 | 
						|
+# Freescale ARM SOC Drivers
 | 
						|
+#
 | 
						|
+
 | 
						|
+config LS_SOC_DRIVERS
 | 
						|
+	bool "Layerscape Soc Drivers"
 | 
						|
+	depends on ARCH_LAYERSCAPE || SOC_LS1021A
 | 
						|
+	default n
 | 
						|
+	help
 | 
						|
+	Say y here to enable Freescale Layerscape Soc Device Drivers support.
 | 
						|
+	The Soc Drivers provides the device driver that is a specific block
 | 
						|
+	or feature on Layerscape platform.
 | 
						|
+
 | 
						|
+if LS_SOC_DRIVERS
 | 
						|
+	source "drivers/soc/fsl/layerscape/Kconfig"
 | 
						|
+endif
 | 
						|
--- a/drivers/soc/fsl/Makefile
 | 
						|
+++ b/drivers/soc/fsl/Makefile
 | 
						|
@@ -5,4 +5,9 @@
 | 
						|
 obj-$(CONFIG_FSL_DPAA)                 += qbman/
 | 
						|
 obj-$(CONFIG_QUICC_ENGINE)		+= qe/
 | 
						|
 obj-$(CONFIG_CPM)			+= qe/
 | 
						|
+obj-$(CONFIG_FSL_QIXIS) 		+= qixis_ctrl.o
 | 
						|
 obj-$(CONFIG_FSL_GUTS)			+= guts.o
 | 
						|
+obj-$(CONFIG_FSL_LS2_CONSOLE)		+= ls2-console/
 | 
						|
+obj-$(CONFIG_SUSPEND)			+= rcpm.o
 | 
						|
+obj-$(CONFIG_LS_SOC_DRIVERS)		+= layerscape/
 | 
						|
+obj-$(CONFIG_FSL_SLEEP_FSM)	+= sleep_fsm.o
 | 
						|
--- /dev/null
 | 
						|
+++ b/drivers/soc/fsl/layerscape/Kconfig
 | 
						|
@@ -0,0 +1,10 @@
 | 
						|
+#
 | 
						|
+# Layerscape Soc drivers
 | 
						|
+#
 | 
						|
+config  FTM_ALARM
 | 
						|
+	bool "FTM alarm driver"
 | 
						|
+	default n
 | 
						|
+	help
 | 
						|
+	Say y here to enable FTM alarm support.  The FTM alarm provides
 | 
						|
+	alarm functions for wakeup system from deep sleep.  There is only
 | 
						|
+	one FTM can be used in ALARM(FTM 0).
 | 
						|
--- /dev/null
 | 
						|
+++ b/drivers/soc/fsl/layerscape/Makefile
 | 
						|
@@ -0,0 +1 @@
 | 
						|
+obj-$(CONFIG_FTM_ALARM) += ftm_alarm.o
 | 
						|
--- a/drivers/staging/Kconfig
 | 
						|
+++ b/drivers/staging/Kconfig
 | 
						|
@@ -118,4 +118,8 @@ source "drivers/staging/vboxvideo/Kconfi
 | 
						|
 
 | 
						|
 source "drivers/staging/pi433/Kconfig"
 | 
						|
 
 | 
						|
+source "drivers/staging/fsl_qbman/Kconfig"
 | 
						|
+
 | 
						|
+source "drivers/staging/fsl_ppfe/Kconfig"
 | 
						|
+
 | 
						|
 endif # STAGING
 | 
						|
--- a/drivers/staging/Makefile
 | 
						|
+++ b/drivers/staging/Makefile
 | 
						|
@@ -50,3 +50,5 @@ obj-$(CONFIG_BCM2835_VCHIQ)	+= vc04_serv
 | 
						|
 obj-$(CONFIG_CRYPTO_DEV_CCREE)	+= ccree/
 | 
						|
 obj-$(CONFIG_DRM_VBOXVIDEO)	+= vboxvideo/
 | 
						|
 obj-$(CONFIG_PI433)		+= pi433/
 | 
						|
+obj-$(CONFIG_FSL_SDK_DPA)      += fsl_qbman/
 | 
						|
+obj-$(CONFIG_FSL_PPFE)		+= fsl_ppfe/
 | 
						|
--- a/drivers/staging/fsl-dpaa2/Kconfig
 | 
						|
+++ b/drivers/staging/fsl-dpaa2/Kconfig
 | 
						|
@@ -4,7 +4,7 @@
 | 
						|
 
 | 
						|
 config FSL_DPAA2
 | 
						|
 	bool "Freescale DPAA2 devices"
 | 
						|
-	depends on FSL_MC_BUS && ARCH_LAYERSCAPE
 | 
						|
+	depends on FSL_MC_BUS
 | 
						|
 	---help---
 | 
						|
 	  Build drivers for Freescale DataPath Acceleration
 | 
						|
 	  Architecture (DPAA2) family of SoCs.
 | 
						|
@@ -16,3 +16,57 @@ config FSL_DPAA2_ETH
 | 
						|
 	---help---
 | 
						|
 	  Ethernet driver for Freescale DPAA2 SoCs, using the
 | 
						|
 	  Freescale MC bus driver
 | 
						|
+
 | 
						|
+if FSL_DPAA2_ETH
 | 
						|
+config FSL_DPAA2_ETH_USE_ERR_QUEUE
 | 
						|
+	bool "Enable Rx error queue"
 | 
						|
+	default n
 | 
						|
+	---help---
 | 
						|
+	  Allow Rx error frames to be enqueued on an error queue
 | 
						|
+	  and processed by the driver (by default they are dropped
 | 
						|
+	  in hardware).
 | 
						|
+	  This may impact performance, recommended for debugging
 | 
						|
+	  purposes only.
 | 
						|
+
 | 
						|
+# QBMAN_DEBUG requires some additional DPIO APIs
 | 
						|
+config FSL_DPAA2_ETH_DEBUGFS
 | 
						|
+	depends on DEBUG_FS
 | 
						|
+	bool "Enable debugfs support"
 | 
						|
+	default y
 | 
						|
+	---help---
 | 
						|
+	  Enable advanced statistics through debugfs interface.
 | 
						|
+
 | 
						|
+config FSL_DPAA2_ETH_DCB
 | 
						|
+        bool "Data Center Bridging (DCB) Support"
 | 
						|
+        default n
 | 
						|
+        depends on DCB
 | 
						|
+        ---help---
 | 
						|
+          Say Y here if you want to use Data Center Bridging (DCB) features
 | 
						|
+          (PFC) in the driver.
 | 
						|
+
 | 
						|
+          If unsure, say N.
 | 
						|
+
 | 
						|
+config FSL_DPAA2_PTP_CLOCK
 | 
						|
+	tristate "Freescale DPAA2 as PTP clock"
 | 
						|
+	select PTP_1588_CLOCK
 | 
						|
+	default y
 | 
						|
+	help
 | 
						|
+	  This driver adds support for using the DPAA2 1588 timer module
 | 
						|
+	  as a PTP clock. This clock is only useful if your PTP programs are
 | 
						|
+	  getting hardware time stamps on the PTP Ethernet packets
 | 
						|
+	  using the SO_TIMESTAMPING API.
 | 
						|
+
 | 
						|
+	  To compile this driver as a module, choose M here: the module
 | 
						|
+	  will be called dpaa2-rtc.
 | 
						|
+endif
 | 
						|
+
 | 
						|
+source "drivers/staging/fsl-dpaa2/mac/Kconfig"
 | 
						|
+source "drivers/staging/fsl-dpaa2/evb/Kconfig"
 | 
						|
+
 | 
						|
+config FSL_DPAA2_ETHSW
 | 
						|
+	tristate "Freescale DPAA2 Ethernet Switch"
 | 
						|
+	depends on FSL_DPAA2
 | 
						|
+	depends on NET_SWITCHDEV
 | 
						|
+	---help---
 | 
						|
+	Driver for Freescale DPAA2 Ethernet Switch. Select
 | 
						|
+	BRIDGE to have support for bridge tools.
 | 
						|
--- a/drivers/staging/fsl-dpaa2/Makefile
 | 
						|
+++ b/drivers/staging/fsl-dpaa2/Makefile
 | 
						|
@@ -3,3 +3,7 @@
 | 
						|
 #
 | 
						|
 
 | 
						|
 obj-$(CONFIG_FSL_DPAA2_ETH)	+= ethernet/
 | 
						|
+obj-$(CONFIG_FSL_DPAA2_MAC)	+= mac/
 | 
						|
+obj-$(CONFIG_FSL_DPAA2_EVB)	+= evb/
 | 
						|
+obj-$(CONFIG_FSL_DPAA2_PTP_CLOCK) += rtc/
 | 
						|
+obj-$(CONFIG_FSL_DPAA2_ETHSW)	+= ethsw/
 |