Loading...
/* SPDX-License-Identifier: GPL-2.0 */ /* * Shared Memory Communications over RDMA (SMC-R) and RoCE * * PNET table queries * * Copyright IBM Corp. 2016 * * Author(s): Thomas Richter <tmricht@linux.vnet.ibm.com> */ #ifndef _SMC_PNET_H #define _SMC_PNET_H #if IS_ENABLED(CONFIG_HAVE_PNETID) #include <asm/pnet.h> #endif struct smc_ib_device; struct smcd_dev; static inline int smc_pnetid_by_dev_port(struct device *dev, unsigned short port, u8 *pnetid) { #if IS_ENABLED(CONFIG_HAVE_PNETID) return pnet_id_by_dev_port(dev, port, pnetid); #else return -ENOENT; #endif } int smc_pnet_init(void) __init; void smc_pnet_exit(void); int smc_pnet_remove_by_ibdev(struct smc_ib_device *ibdev); void smc_pnet_find_roce_resource(struct sock *sk, struct smc_ib_device **smcibdev, u8 *ibport, unsigned short vlan_id, u8 gid[]); void smc_pnet_find_ism_resource(struct sock *sk, struct smcd_dev **smcismdev); #endif |