linux-stable/drivers/net/ethernet/netronome/nfp
Jakub Kicinski 2df03a50f1 nfp: bpf: support accessing the stack beyond 64 bytes
To access beyond 64th byte of the stack we need to set a new
stack pointer register (LMEM is accessed indirectly through
those pointers).  Add a function for encoding local CSR access
instruction.  Use stack pointer number 3.

Note that stack pointer registers allow us to index into 32
bytes of LMEM (with shift operations i.e. when operands are
restricted).  This means if access is crossing 32 byte boundary
we must not use offsetting, we have to set the pointer to the
exact address and move it with post-increments.

We depend on the datapath placing the stack base address in
GPR A22 for our use.

Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Quentin Monnet <quentin.monnet@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-10-24 17:38:37 +09:00
..
bpf nfp: bpf: support accessing the stack beyond 64 bytes 2017-10-24 17:38:37 +09:00
flower nfp: use struct fields for 8 bit-wide access 2017-10-22 03:09:32 +01:00
nfpcore nfp: wait for the NSP resource to appear on boot 2017-09-13 13:29:13 -07:00
nic nfp: separate app vNIC init/clean from alloc/free 2017-09-03 21:22:04 -07:00
Makefile nfp: bpf: move software reg helpers and cmd table out of translator 2017-10-09 09:51:02 -07:00
nfp_app.c nfp: Explicitly include linux/bug.h 2017-10-14 18:31:41 -07:00
nfp_app.h nfp: output control messages to trace_devlink_hwmsg() 2017-10-09 09:51:02 -07:00
nfp_app_nic.c nfp: separate app vNIC init/clean from alloc/free 2017-09-03 21:22:04 -07:00
nfp_asm.c nfp: bpf: direct packet access - write 2017-10-14 11:13:28 -07:00
nfp_asm.h nfp: bpf: support accessing the stack beyond 64 bytes 2017-10-24 17:38:37 +09:00
nfp_devlink.c nfp: devlink add support for getting eswitch mode 2017-06-25 11:42:01 -04:00
nfp_hwmon.c nfp: add hwmon support 2017-05-30 11:27:06 -04:00
nfp_main.c nfp: wait for the NSP resource to appear on boot 2017-09-13 13:29:13 -07:00
nfp_main.h nfp: add basic SR-IOV ndo functions 2017-08-25 19:24:58 -07:00
nfp_net.h nfp: allow retreiving management FW logs on representors 2017-08-18 22:39:27 -07:00
nfp_net_common.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-10-22 13:39:14 +01:00
nfp_net_ctrl.h nfp: bpf: move to datapath ABI version 2 2017-10-09 09:51:03 -07:00
nfp_net_debugfs.c nfp: don't reuse pointers in ring dumping 2017-08-18 22:39:28 -07:00
nfp_net_ethtool.c nfp: fix ethtool stats gather retry 2017-10-10 13:18:33 -07:00
nfp_net_main.c nfp: wait for board state before talking to the NSP 2017-09-13 13:29:13 -07:00
nfp_net_repr.c nfp: add basic SR-IOV ndo functions to representors 2017-08-25 19:24:58 -07:00
nfp_net_repr.h nfp: extend flower matching capabilities 2017-07-01 08:51:32 -07:00
nfp_net_sriov.c nfp: add basic SR-IOV ndo functions 2017-08-25 19:24:58 -07:00
nfp_net_sriov.h nfp: add basic SR-IOV ndo functions 2017-08-25 19:24:58 -07:00
nfp_netvf_main.c nfp: advertise support for NFD ABI 0.5 2017-06-07 12:51:42 -04:00
nfp_port.c nfp: store pointer to MAC statistics in nfp_port 2017-08-18 22:39:28 -07:00
nfp_port.h nfp: add ethtool statistics for representors 2017-08-18 22:39:28 -07:00