xref: /dpdk/drivers/net/nfp/nfpcore/nfp_target.h (revision 055ccb33f61d00ed5bec0174dd727d3b143963ac)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2018 Netronome Systems, Inc.
3  * All rights reserved.
4  */
5 
6 #ifndef __NFP_TARGET_H__
7 #define __NFP_TARGET_H__
8 
9 #include <stdint.h>
10 
11 /* CPP Target IDs */
12 #define NFP_CPP_TARGET_INVALID          0
13 #define NFP_CPP_TARGET_NBI              1
14 #define NFP_CPP_TARGET_QDR              2
15 #define NFP_CPP_TARGET_ILA              6
16 #define NFP_CPP_TARGET_MU               7
17 #define NFP_CPP_TARGET_PCIE             9
18 #define NFP_CPP_TARGET_ARM              10
19 #define NFP_CPP_TARGET_CRYPTO           12
20 #define NFP_CPP_TARGET_ISLAND_XPB       14      /* Shared with CAP */
21 #define NFP_CPP_TARGET_ISLAND_CAP       14      /* Shared with XPB */
22 #define NFP_CPP_TARGET_CT_XPB           14
23 #define NFP_CPP_TARGET_LOCAL_SCRATCH    15
24 #define NFP_CPP_TARGET_CLS              NFP_CPP_TARGET_LOCAL_SCRATCH
25 
26 int nfp_target_pushpull(uint32_t cpp_id, uint64_t address);
27 int nfp_target_cpp(uint32_t cpp_island_id, uint64_t cpp_island_address,
28 		uint32_t *cpp_target_id, uint64_t *cpp_target_address,
29 		const uint32_t *imb_table);
30 
31 #endif /* __NFP_TARGET_H__ */
32