pci_free_consistent(dev->pdev, INIT_HCA_IN_SIZE, inbox, indma); 
mthca_free_mailbox(dev, mailbox); 
int mthca_INIT_IB(struct mthca_dev *dev,		  struct mthca_init_ib_param *param,		  int port, u8 *status){	u32 *inbox;	dma_addr_t indma;	int err;	u32 flags;#define INIT_IB_IN_SIZE          56#define INIT_IB_FLAGS_OFFSET     0x00#define INIT_IB_FLAG_SIG         (1 << 18)#define INIT_IB_FLAG_NG          (1 << 17)#define INIT_IB_FLAG_G0          (1 << 16)#define INIT_IB_FLAG_1X          (1 << 8)#define INIT_IB_FLAG_4X          (1 << 9)#define INIT_IB_FLAG_12X         (1 << 11)#define INIT_IB_VL_SHIFT         4#define INIT_IB_MTU_SHIFT        12#define INIT_IB_MAX_GID_OFFSET   0x06#define INIT_IB_MAX_PKEY_OFFSET  0x0a#define INIT_IB_GUID0_OFFSET     0x10#define INIT_IB_NODE_GUID_OFFSET 0x18#define INIT_IB_SI_GUID_OFFSET   0x20	inbox = pci_alloc_consistent(dev->pdev, INIT_IB_IN_SIZE, &indma);	if (!inbox)		return -ENOMEM;	memset(inbox, 0, INIT_IB_IN_SIZE);	flags = 0;	flags |= param->enable_1x     ? INIT_IB_FLAG_1X  : 0;	flags |= param->enable_4x     ? INIT_IB_FLAG_4X  : 0;	flags |= param->set_guid0     ? INIT_IB_FLAG_G0  : 0;	flags |= param->set_node_guid ? INIT_IB_FLAG_NG  : 0;	flags |= param->set_si_guid   ? INIT_IB_FLAG_SIG : 0;	flags |= param->vl_cap << INIT_IB_VL_SHIFT;	flags |= param->mtu_cap << INIT_IB_MTU_SHIFT;	MTHCA_PUT(inbox, flags, INIT_IB_FLAGS_OFFSET);	MTHCA_PUT(inbox, param->gid_cap,   INIT_IB_MAX_GID_OFFSET);	MTHCA_PUT(inbox, param->pkey_cap,  INIT_IB_MAX_PKEY_OFFSET);	MTHCA_PUT(inbox, param->guid0,     INIT_IB_GUID0_OFFSET);	MTHCA_PUT(inbox, param->node_guid, INIT_IB_NODE_GUID_OFFSET);	MTHCA_PUT(inbox, param->si_guid,   INIT_IB_SI_GUID_OFFSET);	err = mthca_cmd(dev, indma, port, 0, CMD_INIT_IB,			CMD_TIME_CLASS_A, status);	pci_free_consistent(dev->pdev, INIT_HCA_IN_SIZE, inbox, indma);	return err;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/ed878458eeff9754d66f1b0325df6ebbfcdce668/mthca_cmd.c/clean/drivers/infiniband/hw/mthca/mthca_cmd.c