summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h
diff options
context:
space:
mode:
authorDavid Brunecz2017-04-23 05:17:54 +0200
committerDavid S. Miller2017-04-24 20:35:44 +0200
commit010e2f9cc5b0a9cb730e3238b06dbad54a577816 (patch)
tree3f45a95b1294c79246bc64660b5121787e9404db /drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h
parentnfp: parse metadata prepend before XDP runs (diff)
downloadkernel-qcow2-linux-010e2f9cc5b0a9cb730e3238b06dbad54a577816.tar.gz
kernel-qcow2-linux-010e2f9cc5b0a9cb730e3238b06dbad54a577816.tar.xz
kernel-qcow2-linux-010e2f9cc5b0a9cb730e3238b06dbad54a577816.zip
nfp: add NSP routine to get static information
Retrieve identifying information from the NSP. For now it only contains versions of firmware subcomponents. Signed-off-by: David Brunecz <david.brunecz@netronome.com> 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/nfpcore/nfp_nsp.h')
-rw-r--r--drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h b/drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h
index 7d34ff145fd7..36b21e4dc56d 100644
--- a/drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h
+++ b/drivers/net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h
@@ -147,4 +147,28 @@ int __nfp_eth_set_aneg(struct nfp_nsp *nsp, enum nfp_eth_aneg mode);
int __nfp_eth_set_speed(struct nfp_nsp *nsp, unsigned int speed);
int __nfp_eth_set_split(struct nfp_nsp *nsp, unsigned int lanes);
+/**
+ * struct nfp_nsp_identify - NSP static information
+ * @version: opaque version string
+ * @flags: version flags
+ * @br_primary: branch id of primary bootloader
+ * @br_secondary: branch id of secondary bootloader
+ * @br_nsp: branch id of NSP
+ * @primary: version of primarary bootloader
+ * @secondary: version id of secondary bootloader
+ * @nsp: version id of NSP
+ */
+struct nfp_nsp_identify {
+ char version[40];
+ u8 flags;
+ u8 br_primary;
+ u8 br_secondary;
+ u8 br_nsp;
+ u16 primary;
+ u16 secondary;
+ u16 nsp;
+};
+
+struct nfp_nsp_identify *__nfp_nsp_identify(struct nfp_nsp *nsp);
+
#endif