[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200319162806.25705-5-grygorii.strashko@ti.com>
Date: Thu, 19 Mar 2020 18:27:59 +0200
From: Grygorii Strashko <grygorii.strashko@...com>
To: Peter Ujfalusi <peter.ujfalusi@...com>,
Rob Herring <robh+dt@...nel.org>,
Tero Kristo <t-kristo@...com>,
"David S . Miller" <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>, Roger Quadros <rogerq@...com>,
<devicetree@...r.kernel.org>, Jakub Kicinski <kuba@...nel.org>
CC: Murali Karicheri <m-karicheri2@...com>,
Sekhar Nori <nsekhar@...com>,
Kishon Vijay Abraham I <kishon@...com>,
<linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
Grygorii Strashko <grygorii.strashko@...com>
Subject: [PATCH net-next v5 04/11] net: ethernet: ti: ale: am65: add support for default thread cfg
Add support for default thread configuration for AM65x CPSW NUSS ALE to
allow route all ingress packets to one default RX UDMA flow.
Signed-off-by: Grygorii Strashko <grygorii.strashko@...com>
Tested-by: Murali Karicheri <m-karicheri2@...com>
---
drivers/net/ethernet/ti/cpsw_ale.c | 18 ++++++++++++++++++
drivers/net/ethernet/ti/cpsw_ale.h | 2 ++
2 files changed, 20 insertions(+)
diff --git a/drivers/net/ethernet/ti/cpsw_ale.c b/drivers/net/ethernet/ti/cpsw_ale.c
index 719e7846127c..0374e6936091 100644
--- a/drivers/net/ethernet/ti/cpsw_ale.c
+++ b/drivers/net/ethernet/ti/cpsw_ale.c
@@ -44,6 +44,8 @@
#define ALE_UNKNOWNVLAN_FORCE_UNTAG_EGRESS 0x9C
#define ALE_VLAN_MASK_MUX(reg) (0xc0 + (0x4 * (reg)))
+#define AM65_CPSW_ALE_THREAD_DEF_REG 0x134
+
#define ALE_TABLE_WRITE BIT(31)
#define ALE_TYPE_FREE 0
@@ -843,6 +845,22 @@ static struct ale_control_info ale_controls[ALE_NUM_CONTROLS] = {
.port_shift = 0,
.bits = 6,
},
+ [ALE_DEFAULT_THREAD_ID] = {
+ .name = "default_thread_id",
+ .offset = AM65_CPSW_ALE_THREAD_DEF_REG,
+ .port_offset = 0,
+ .shift = 0,
+ .port_shift = 0,
+ .bits = 6,
+ },
+ [ALE_DEFAULT_THREAD_ENABLE] = {
+ .name = "default_thread_id_enable",
+ .offset = AM65_CPSW_ALE_THREAD_DEF_REG,
+ .port_offset = 0,
+ .shift = 15,
+ .port_shift = 0,
+ .bits = 1,
+ },
};
int cpsw_ale_control_set(struct cpsw_ale *ale, int port, int control,
diff --git a/drivers/net/ethernet/ti/cpsw_ale.h b/drivers/net/ethernet/ti/cpsw_ale.h
index eaca73c17ae7..6a3cb6898728 100644
--- a/drivers/net/ethernet/ti/cpsw_ale.h
+++ b/drivers/net/ethernet/ti/cpsw_ale.h
@@ -66,6 +66,8 @@ enum cpsw_ale_control {
ALE_PORT_MACONLY_CAF,
ALE_PORT_BCAST_LIMIT,
ALE_PORT_MCAST_LIMIT,
+ ALE_DEFAULT_THREAD_ID,
+ ALE_DEFAULT_THREAD_ENABLE,
ALE_NUM_CONTROLS,
};
--
2.17.1
Powered by blists - more mailing lists