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>
		
			
				
	
	
		
			109 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 4026225a854760fa355e393a386b6c96d794bce2 Mon Sep 17 00:00:00 2001
 | |
| From: Madalin Bucur <madalin.bucur@nxp.com>
 | |
| Date: Tue, 24 Apr 2018 17:07:25 +0300
 | |
| Subject: [PATCH] sdk_dpa: adapt ceetm code to new kernel API
 | |
| 
 | |
| Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
 | |
| ---
 | |
|  .../ethernet/freescale/sdk_dpaa/dpaa_eth_ceetm.c   | 26 +++++++++++++---------
 | |
|  1 file changed, 16 insertions(+), 10 deletions(-)
 | |
| 
 | |
| --- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_ceetm.c
 | |
| +++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_ceetm.c
 | |
| @@ -577,7 +577,8 @@ nla_put_failure:
 | |
|  
 | |
|  /* Configure a root ceetm qdisc */
 | |
|  static int ceetm_init_root(struct Qdisc *sch, struct ceetm_qdisc *priv,
 | |
| -			   struct tc_ceetm_qopt *qopt)
 | |
| +			   struct tc_ceetm_qopt *qopt,
 | |
| +			   struct netlink_ext_ack *extack)
 | |
|  {
 | |
|  	struct netdev_queue *dev_queue;
 | |
|  	struct Qdisc *qdisc;
 | |
| @@ -622,7 +623,7 @@ static int ceetm_init_root(struct Qdisc
 | |
|  				      TC_H_MIN(i + PFIFO_MIN_OFFSET));
 | |
|  
 | |
|  		qdisc = qdisc_create_dflt(dev_queue, &pfifo_qdisc_ops,
 | |
| -					  parent_id);
 | |
| +					  parent_id, extack);
 | |
|  		if (!qdisc) {
 | |
|  			err = -ENOMEM;
 | |
|  			goto err_init_root;
 | |
| @@ -1035,7 +1036,8 @@ err_init_wbfs:
 | |
|  }
 | |
|  
 | |
|  /* Configure a generic ceetm qdisc */
 | |
| -static int ceetm_init(struct Qdisc *sch, struct nlattr *opt)
 | |
| +static int ceetm_init(struct Qdisc *sch, struct nlattr *opt,
 | |
| +		      struct netlink_ext_ack *extack)
 | |
|  {
 | |
|  	struct tc_ceetm_qopt *qopt;
 | |
|  	struct nlattr *tb[TCA_CEETM_QOPS + 1];
 | |
| @@ -1053,7 +1055,7 @@ static int ceetm_init(struct Qdisc *sch,
 | |
|  		return -EINVAL;
 | |
|  	}
 | |
|  
 | |
| -	ret = tcf_block_get(&priv->block, &priv->filter_list, sch);
 | |
| +	ret = tcf_block_get(&priv->block, &priv->filter_list, sch, extack);
 | |
|  	if (ret)
 | |
|  		return ret;
 | |
|  
 | |
| @@ -1087,7 +1089,7 @@ static int ceetm_init(struct Qdisc *sch,
 | |
|  
 | |
|  	switch (priv->type) {
 | |
|  	case CEETM_ROOT:
 | |
| -		ret = ceetm_init_root(sch, priv, qopt);
 | |
| +		ret = ceetm_init_root(sch, priv, qopt, extack);
 | |
|  		break;
 | |
|  	case CEETM_PRIO:
 | |
|  		ret = ceetm_init_prio(sch, priv, qopt);
 | |
| @@ -1224,7 +1226,8 @@ change_err:
 | |
|  }
 | |
|  
 | |
|  /* Edit a ceetm qdisc */
 | |
| -static int ceetm_change(struct Qdisc *sch, struct nlattr *opt)
 | |
| +static int ceetm_change(struct Qdisc *sch, struct nlattr *opt,
 | |
| +			struct netlink_ext_ack *extack)
 | |
|  {
 | |
|  	struct tc_ceetm_qopt *qopt;
 | |
|  	struct nlattr *tb[TCA_CEETM_QOPS + 1];
 | |
| @@ -1410,7 +1413,8 @@ static int ceetm_cls_change_wbfs(struct
 | |
|  
 | |
|  /* Add a ceetm root class or configure a ceetm root/prio/wbfs class */
 | |
|  static int ceetm_cls_change(struct Qdisc *sch, u32 classid, u32 parentid,
 | |
| -			    struct nlattr **tca, unsigned long *arg)
 | |
| +			    struct nlattr **tca, unsigned long *arg,
 | |
| +			    struct netlink_ext_ack *extack)
 | |
|  {
 | |
|  	int err;
 | |
|  	u64 bps;
 | |
| @@ -1505,7 +1509,7 @@ static int ceetm_cls_change(struct Qdisc
 | |
|  	if (!cl)
 | |
|  		return -ENOMEM;
 | |
|  
 | |
| -	err = tcf_block_get(&cl->block, &cl->filter_list, sch);
 | |
| +	err = tcf_block_get(&cl->block, &cl->filter_list, sch, extack);
 | |
|  	if (err) {
 | |
|  		kfree(cl);
 | |
|  		return err;
 | |
| @@ -1699,7 +1703,8 @@ static struct Qdisc *ceetm_cls_leaf(stru
 | |
|  }
 | |
|  
 | |
|  static int ceetm_cls_graft(struct Qdisc *sch, unsigned long arg,
 | |
| -			   struct Qdisc *new, struct Qdisc **old)
 | |
| +			   struct Qdisc *new, struct Qdisc **old,
 | |
| +			   struct netlink_ext_ack *extack)
 | |
|  {
 | |
|  	if (new && strcmp(new->ops->id, ceetm_qdisc_ops.id)) {
 | |
|  		pr_err("CEETM: only ceetm qdiscs can be attached to ceetm classes\n");
 | |
| @@ -1763,7 +1768,8 @@ static int ceetm_cls_dump_stats(struct Q
 | |
|  	return gnet_stats_copy_app(d, &xstats, sizeof(xstats));
 | |
|  }
 | |
|  
 | |
| -static struct tcf_block *ceetm_tcf_block(struct Qdisc *sch, unsigned long arg)
 | |
| +static struct tcf_block *ceetm_tcf_block(struct Qdisc *sch, unsigned long arg,
 | |
| +					 struct netlink_ext_ack *extack)
 | |
|  {
 | |
|  	struct ceetm_qdisc *priv = qdisc_priv(sch);
 | |
|  	struct ceetm_class *cl = (struct ceetm_class *)arg;
 |