| /linux/drivers/dibs/ |
| H A D | dibs_main.c | 39 struct dibs_dev *dibs) in dibs_setup_forwarding() argument 43 spin_lock_irqsave(&dibs->lock, flags); in dibs_setup_forwarding() 44 dibs->subs[client->id] = client; in dibs_setup_forwarding() 45 spin_unlock_irqrestore(&dibs->lock, flags); in dibs_setup_forwarding() 50 struct dibs_dev *dibs; in dibs_register_client() local 69 list_for_each_entry(dibs, &dibs_dev_list.list, list) { in dibs_register_client() 70 dibs->priv[i] = NULL; in dibs_register_client() 71 client->ops->add_dev(dibs); in dibs_register_client() 72 dibs_setup_forwarding(client, dibs); in dibs_register_client() 83 struct dibs_dev *dibs; in dibs_unregister_client() local [all …]
|
| H A D | dibs_loopback.c | 29 static u16 dibs_lo_get_fabric_id(struct dibs_dev *dibs) in dibs_lo_get_fabric_id() argument 34 static int dibs_lo_query_rgid(struct dibs_dev *dibs, const uuid_t *rgid, in dibs_lo_query_rgid() argument 38 if (!uuid_equal(rgid, &dibs->gid)) in dibs_lo_query_rgid() 48 static int dibs_lo_register_dmb(struct dibs_dev *dibs, struct dibs_dmb *dmb, in dibs_lo_register_dmb() argument 57 ldev = dibs->drv_priv; in dibs_lo_register_dmb() 108 spin_lock_irqsave(&dibs->lock, flags); in dibs_lo_register_dmb() 109 dibs->dmb_clientid_arr[sba_idx] = client->id; in dibs_lo_register_dmb() 110 spin_unlock_irqrestore(&dibs->lock, flags); in dibs_lo_register_dmb() 137 static int dibs_lo_unregister_dmb(struct dibs_dev *dibs, struct dibs_dmb *dmb) in dibs_lo_unregister_dmb() argument 143 ldev = dibs->drv_priv; in dibs_lo_unregister_dmb() [all …]
|
| H A D | Kconfig | 11 dibs devices and dibs clients like the SMC protocol. 12 The module name is dibs. 15 bool "intra-OS shortcut with dibs loopback" 19 DIBS_LO enables the creation of an software-emulated dibs device 22 dibs clients, since dibs loopback is independent of architecture or
|
| H A D | Makefile | 6 dibs-y += dibs_main.o 7 obj-$(CONFIG_DIBS) += dibs.o 8 dibs-$(CONFIG_DIBS_LO) += dibs_loopback.o
|
| H A D | dibs_loopback.h | 36 struct dibs_dev *dibs; member
|
| /linux/net/smc/ |
| H A D | smc_ism.c | 30 static void smcd_register_dev(struct dibs_dev *dibs); 31 static void smcd_unregister_dev(struct dibs_dev *dibs); 32 static void smcd_handle_event(struct dibs_dev *dibs, 34 static void smcd_handle_irq(struct dibs_dev *dibs, unsigned int dmbno, 74 struct dibs_dev *dibs = smcd->dibs; in smc_ism_cantalk() local 78 return dibs->ops->query_remote_gid(dibs, &ism_rgid, vlan_id ? 1 : 0, in smc_ism_cantalk() 92 return smcd->dibs->ops->get_fabric_id(smcd->dibs); in smc_ism_get_chid() 141 if (!smcd->dibs->ops->add_vlan_id) in smc_ism_get_vlan() 164 if (smcd->dibs->ops->add_vlan_id(smcd->dibs, vlanid)) { in smc_ism_get_vlan() 188 if (!smcd->dibs->ops->del_vlan_id) in smc_ism_put_vlan() [all …]
|
| H A D | smc_ism.h | 72 rc = smcd->dibs->ops->move_data(smcd->dibs, dmb_tok, idx, sf, offset, in smc_ism_write() 91 u16 chid = smcd->dibs->ops->get_fabric_id(smcd->dibs); in smc_ism_is_emulated() 96 static inline bool smc_ism_is_loopback(struct dibs_dev *dibs) in smc_ism_is_loopback() argument 98 return (dibs->ops->get_fabric_id(dibs) == DIBS_LOOPBACK_FABRIC); in smc_ism_is_loopback()
|
| H A D | smc_pnet.c | 172 dev_name(&smcd->dibs->dev), in smc_pnet_remove_by_pnetid() 335 if (!strncmp(dev_name(&smcd_dev->dibs->dev), smcd_name, in smc_pnet_find_smcd() 337 (smcd_dev->dibs->dev.parent && in smc_pnet_find_smcd() 338 !strncmp(dev_name(smcd_dev->dibs->dev.parent), smcd_name, in smc_pnet_find_smcd() 437 dev_name(&smcd->dibs->dev), in smc_pnet_add_ib() 1209 dev_name(&smcddev->dibs->dev), in smc_pnetid_by_table_smcd() 1211 (smcddev->dibs->dev.parent && in smc_pnetid_by_table_smcd() 1213 dev_name(smcddev->dibs->dev.parent), in smc_pnetid_by_table_smcd()
|
| H A D | smc_diag.c | 178 copy_to_smcdgid(&smcd_gid, &smcd->dibs->gid); in __smc_diag_dump()
|
| H A D | smc_clc.c | 920 copy_to_smcdgid(&smcd_gid, &smcd->dibs->gid); in smc_clc_send_proposal() 970 copy_to_smcdgid(&smcd_gid, &smcd->dibs->gid); in smc_clc_send_proposal() 1063 copy_to_smcdgid(&smcd_gid, &smcd->dibs->gid); in smcd_clc_prep_confirm_accept()
|
| H A D | smc_core.c | 558 copy_to_smcdgid(&smcd_gid, &smcd->dibs->gid); in smc_nl_fill_smcd_lgr() 941 get_device(&smcd->dibs->dev); in smc_lgr_create() 1491 put_device(&lgr->smcd->dibs->dev); in smc_lgr_free()
|
| /linux/drivers/s390/net/ |
| H A D | ism_drv.c | 180 static int ism_read_local_gid(struct dibs_dev *dibs) in ism_read_local_gid() argument 182 struct ism_dev *ism = dibs->drv_priv; in ism_read_local_gid() 194 memset(&dibs->gid, 0, sizeof(dibs->gid)); in ism_read_local_gid() 195 memcpy(&dibs->gid, &cmd.response.gid, sizeof(cmd.response.gid)); in ism_read_local_gid() 200 static int ism_query_rgid(struct dibs_dev *dibs, const uuid_t *rgid, in ism_query_rgid() argument 203 struct ism_dev *ism = dibs->drv_priv; in ism_query_rgid() 277 static int ism_register_dmb(struct dibs_dev *dibs, struct dibs_dmb *dmb, in ism_register_dmb() argument 280 struct ism_dev *ism = dibs->drv_priv; in ism_register_dmb() 306 spin_lock_irqsave(&dibs->lock, flags); in ism_register_dmb() 307 dibs->dmb_clientid_arr[dmb->idx - ISM_DMB_BIT_OFFSET] = client->id; in ism_register_dmb() [all …]
|
| H A D | ism.h | 229 struct dibs_dev *dibs; member
|
| /linux/include/linux/ |
| H A D | dibs.h | 457 int dibs_dev_add(struct dibs_dev *dibs); 462 void dibs_dev_del(struct dibs_dev *dibs);
|
| H A D | ism.h | 22 struct dibs_dev *dibs; member
|
| /linux/include/net/ |
| H A D | smc.h | 40 struct dibs_dev *dibs; member
|
| /linux/drivers/ |
| H A D | Makefile | 200 obj-$(CONFIG_DIBS) += dibs/
|
| /linux/net/ |
| H A D | Kconfig | 91 source "drivers/dibs/Kconfig"
|
| /linux/ |
| H A D | MAINTAINERS | 7464 F: drivers/dibs/ 7465 F: include/linux/dibs.h
|