1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Shared Memory Communications over RDMA (SMC-R) and RoCE
7 * Copyright IBM Corp. 2016
9 * Author(s): Thomas Richter <tmricht@linux.vnet.ibm.com>
15 #if IS_ENABLED(CONFIG_HAVE_PNETID)
23 * struct smc_pnettable - SMC PNET table anchor
24 * @lock: Lock for list action
25 * @pnetlist: List of PNETIDs
27 struct smc_pnettable
{
29 struct list_head pnetlist
;
32 static inline int smc_pnetid_by_dev_port(struct device
*dev
,
33 unsigned short port
, u8
*pnetid
)
35 #if IS_ENABLED(CONFIG_HAVE_PNETID)
36 return pnet_id_by_dev_port(dev
, port
, pnetid
);
42 int smc_pnet_init(void) __init
;
43 int smc_pnet_net_init(struct net
*net
);
44 void smc_pnet_exit(void);
45 void smc_pnet_net_exit(struct net
*net
);
46 void smc_pnet_find_roce_resource(struct sock
*sk
,
47 struct smc_ib_device
**smcibdev
, u8
*ibport
,
48 unsigned short vlan_id
, u8 gid
[]);
49 void smc_pnet_find_ism_resource(struct sock
*sk
, struct smcd_dev
**smcismdev
);