aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/netronome/nfp/abm/main.h
diff options
context:
space:
mode:
authorJakub Kicinski <jakub.kicinski@netronome.com>2018-05-25 21:53:28 -0700
committerDavid S. Miller <davem@davemloft.net>2018-05-29 09:49:15 -0400
commit25e0036fcd241fcb4541522e511168871d7c8bed (patch)
tree37108f89d88ec14e0a7158a76c7e0caab346c710 /drivers/net/ethernet/netronome/nfp/abm/main.h
parentnfp: abm: enable advanced queuing on demand (diff)
downloadlinux-dev-25e0036fcd241fcb4541522e511168871d7c8bed.tar.xz
linux-dev-25e0036fcd241fcb4541522e511168871d7c8bed.zip
nfp: abm: add helpers for configuring queue marking levels
Queue levels for simple ECN marking are stored in _abi_nfd_out_q_lvls_X symbol, where X is the PCIe PF id. Find out the location of that symbol and add helpers for modifying it. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/netronome/nfp/abm/main.h')
-rw-r--r--drivers/net/ethernet/netronome/nfp/abm/main.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/netronome/nfp/abm/main.h b/drivers/net/ethernet/netronome/nfp/abm/main.h
index 7d129b205535..1ac651cdc140 100644
--- a/drivers/net/ethernet/netronome/nfp/abm/main.h
+++ b/drivers/net/ethernet/netronome/nfp/abm/main.h
@@ -49,11 +49,13 @@ struct nfp_net;
* @pf_id: ID of our PF link
* @eswitch_mode: devlink eswitch mode, advanced functions only visible
* in switchdev mode
+ * @q_lvls: queue level control area
*/
struct nfp_abm {
struct nfp_app *app;
unsigned int pf_id;
enum devlink_eswitch_mode eswitch_mode;
+ const struct nfp_rtsym *q_lvls;
};
/**
@@ -72,6 +74,7 @@ struct nfp_abm_link {
void nfp_abm_ctrl_read_params(struct nfp_abm_link *alink);
int nfp_abm_ctrl_find_addrs(struct nfp_abm *abm);
+int nfp_abm_ctrl_set_all_q_lvls(struct nfp_abm_link *alink, u32 val);
int nfp_abm_ctrl_qm_enable(struct nfp_abm *abm);
int nfp_abm_ctrl_qm_disable(struct nfp_abm *abm);
#endif