mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 05:54:26 -04:00 
			
		
		
		
	Add patches for linux-5.4. The patches are from NXP LSDK-20.04 release which was tagged LSDK-20.04-V5.4. https://source.codeaurora.org/external/qoriq/qoriq-components/linux/ For boards LS1021A-IOT, and Traverse-LS1043 which are not involved in LSDK, port the dts patches from 4.14. The patches are sorted into the following categories: 301-arch-xxxx 302-dts-xxxx 303-core-xxxx 701-net-xxxx 801-audio-xxxx 802-can-xxxx 803-clock-xxxx 804-crypto-xxxx 805-display-xxxx 806-dma-xxxx 807-gpio-xxxx 808-i2c-xxxx 809-jailhouse-xxxx 810-keys-xxxx 811-kvm-xxxx 812-pcie-xxxx 813-pm-xxxx 814-qe-xxxx 815-sata-xxxx 816-sdhc-xxxx 817-spi-xxxx 818-thermal-xxxx 819-uart-xxxx 820-usb-xxxx 821-vfio-xxxx Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
		
			
				
	
	
		
			133 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 03117a1e7db4cd3d745c663c697e446695ebb8e1 Mon Sep 17 00:00:00 2001
 | |
| From: Camelia Groza <camelia.groza@nxp.com>
 | |
| Date: Wed, 8 Jan 2020 18:41:33 +0200
 | |
| Subject: [PATCH] sdk_dpaa: ceetm: fix recursive dependencies
 | |
| 
 | |
| Due to dependencies between the fsl_ceetm and fsl_dpa modules, remove
 | |
| the module support for the ceetm driver and integrate it into the main
 | |
| DPAA Ethernet driver.
 | |
| 
 | |
| The registration of the CEETM Qdisc was the only operation done at
 | |
| module init. Pass the management of the Qdisc register and unregister
 | |
| operations to the loading and unloading of the DPAA driver.
 | |
| 
 | |
| Signed-off-by: Camelia Groza <camelia.groza@nxp.com>
 | |
| ---
 | |
|  drivers/net/ethernet/freescale/sdk_dpaa/Makefile   |  3 +-
 | |
|  drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth.c | 19 +++++++++++++
 | |
|  .../ethernet/freescale/sdk_dpaa/dpaa_eth_ceetm.c   | 32 +---------------------
 | |
|  3 files changed, 21 insertions(+), 33 deletions(-)
 | |
| 
 | |
| --- a/drivers/net/ethernet/freescale/sdk_dpaa/Makefile
 | |
| +++ b/drivers/net/ethernet/freescale/sdk_dpaa/Makefile
 | |
| @@ -20,8 +20,7 @@ endif
 | |
|  
 | |
|  ifeq ($(CONFIG_FSL_DPAA_CEETM),y)
 | |
|  ccflags-y += -I$(srctree)/drivers/net/ethernet/freescale/sdk_fman/src/wrapper
 | |
| -obj-$(CONFIG_FSL_SDK_DPAA_ETH) += fsl_ceetm.o
 | |
| -fsl_ceetm-objs += dpaa_eth_ceetm.o
 | |
| +fsl_dpa-objs += dpaa_eth_ceetm.o
 | |
|  endif
 | |
|  
 | |
|  fsl_mac-objs += mac.o mac-api.o
 | |
| --- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth.c
 | |
| +++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth.c
 | |
| @@ -72,6 +72,9 @@
 | |
|  #ifdef CONFIG_FSL_DPAA_DBG_LOOP
 | |
|  #include "dpaa_debugfs.h"
 | |
|  #endif /* CONFIG_FSL_DPAA_DBG_LOOP */
 | |
| +#ifdef CONFIG_FSL_DPAA_CEETM
 | |
| +#include "dpaa_eth_ceetm.h"
 | |
| +#endif
 | |
|  
 | |
|  /* CREATE_TRACE_POINTS only needs to be defined once. Other dpa files
 | |
|   * using trace events only need to #include <trace/events/sched.h>
 | |
| @@ -116,6 +119,10 @@ static uint8_t dpa_priv_common_bpid;
 | |
|  struct net_device *dpa_loop_netdevs[20];
 | |
|  #endif
 | |
|  
 | |
| +#ifdef CONFIG_FSL_DPAA_CEETM
 | |
| +extern struct Qdisc_ops ceetm_qdisc_ops;
 | |
| +#endif
 | |
| +
 | |
|  #ifdef CONFIG_PM
 | |
|  
 | |
|  static int dpaa_suspend(struct device *dev)
 | |
| @@ -1158,6 +1165,14 @@ static int __init __cold dpa_load(void)
 | |
|  	pr_debug(KBUILD_MODNAME ": %s:%s() ->\n",
 | |
|  		KBUILD_BASENAME".c", __func__);
 | |
|  
 | |
| +#ifdef CONFIG_FSL_DPAA_CEETM
 | |
| +	_errno = register_qdisc(&ceetm_qdisc_ops);
 | |
| +	if (unlikely(_errno))
 | |
| +		pr_err(KBUILD_MODNAME
 | |
| +		       ": %s:%hu:%s(): register_qdisc() = %d\n",
 | |
| +		       KBUILD_BASENAME ".c", __LINE__, __func__, _errno);
 | |
| +#endif
 | |
| +
 | |
|  	return _errno;
 | |
|  }
 | |
|  module_init(dpa_load);
 | |
| @@ -1167,6 +1182,10 @@ static void __exit __cold dpa_unload(voi
 | |
|  	pr_debug(KBUILD_MODNAME ": -> %s:%s()\n",
 | |
|  		KBUILD_BASENAME".c", __func__);
 | |
|  
 | |
| +#ifdef CONFIG_FSL_DPAA_CEETM
 | |
| +	unregister_qdisc(&ceetm_qdisc_ops);
 | |
| +#endif
 | |
| +
 | |
|  	platform_driver_unregister(&dpa_driver);
 | |
|  
 | |
|  #ifdef CONFIG_FSL_DPAA_DBG_LOOP
 | |
| --- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_ceetm.c
 | |
| +++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_ceetm.c
 | |
| @@ -33,16 +33,13 @@
 | |
|  #include <linux/init.h>
 | |
|  #include "dpaa_eth_ceetm.h"
 | |
|  
 | |
| -#define DPA_CEETM_DESCRIPTION "FSL DPAA CEETM qdisc"
 | |
| -MODULE_LICENSE("Dual BSD/GPL");
 | |
| -MODULE_DESCRIPTION(DPA_CEETM_DESCRIPTION);
 | |
| -
 | |
|  const struct nla_policy ceetm_policy[TCA_CEETM_MAX + 1] = {
 | |
|  	[TCA_CEETM_COPT] = { .len = sizeof(struct tc_ceetm_copt) },
 | |
|  	[TCA_CEETM_QOPS] = { .len = sizeof(struct tc_ceetm_qopt) },
 | |
|  };
 | |
|  
 | |
|  struct Qdisc_ops ceetm_qdisc_ops;
 | |
| +EXPORT_SYMBOL(ceetm_qdisc_ops);
 | |
|  
 | |
|  /* Obtain the DCP and the SP ids from the FMan port */
 | |
|  static void get_dcp_and_sp(struct net_device *dev, enum qm_dc_portal *dcp_id,
 | |
| @@ -2086,30 +2083,3 @@ drop:
 | |
|  	dev_kfree_skb_any(skb);
 | |
|  	return NET_XMIT_SUCCESS;
 | |
|  }
 | |
| -EXPORT_SYMBOL(ceetm_tx);
 | |
| -
 | |
| -static int __init ceetm_register(void)
 | |
| -{
 | |
| -	int _errno = 0;
 | |
| -
 | |
| -	pr_info(KBUILD_MODNAME ": " DPA_CEETM_DESCRIPTION "\n");
 | |
| -
 | |
| -	_errno = register_qdisc(&ceetm_qdisc_ops);
 | |
| -	if (unlikely(_errno))
 | |
| -		pr_err(KBUILD_MODNAME
 | |
| -		       ": %s:%hu:%s(): register_qdisc() = %d\n",
 | |
| -		       KBUILD_BASENAME ".c", __LINE__, __func__, _errno);
 | |
| -
 | |
| -	return _errno;
 | |
| -}
 | |
| -
 | |
| -static void __exit ceetm_unregister(void)
 | |
| -{
 | |
| -	pr_debug(KBUILD_MODNAME ": %s:%s() ->\n",
 | |
| -		 KBUILD_BASENAME ".c", __func__);
 | |
| -
 | |
| -	unregister_qdisc(&ceetm_qdisc_ops);
 | |
| -}
 | |
| -
 | |
| -module_init(ceetm_register);
 | |
| -module_exit(ceetm_unregister);
 |