/linux-6.1.9/drivers/rapidio/ |
D | rio-access.c | 34 (struct rio_mport *mport, u32 offset, type *value) \ 39 res = mport->ops->lcread(mport, mport->id, offset, len, &data); \ 55 (struct rio_mport *mport, u32 offset, type value) \ 58 return mport->ops->lcwrite(mport, mport->id, offset, len, value);\ 86 (struct rio_mport *mport, u16 destid, u8 hopcount, u32 offset, type *value) \ 91 res = mport->ops->cread(mport, mport->id, destid, hopcount, offset, len, &data); \ 107 (struct rio_mport *mport, u16 destid, u8 hopcount, u32 offset, type value) \ 110 return mport->ops->cwrite(mport, mport->id, destid, hopcount, \ 138 int rio_mport_send_doorbell(struct rio_mport *mport, u16 destid, u16 data) in rio_mport_send_doorbell() argument 140 return mport->ops->dsend(mport, mport->id, destid, data); in rio_mport_send_doorbell()
|
D | rio.c | 38 int (*pwcback)(struct rio_mport *mport, void *context, 108 struct rio_net *rio_alloc_net(struct rio_mport *mport) in rio_alloc_net() argument 117 mport->net = net; in rio_alloc_net() 232 int rio_request_inb_mbox(struct rio_mport *mport, in rio_request_inb_mbox() argument 236 void (*minb) (struct rio_mport * mport, void *dev_id, int mbox, in rio_request_inb_mbox() 242 if (!mport->ops->open_inb_mbox) in rio_request_inb_mbox() 250 rc = request_resource(&mport->riores[RIO_INB_MBOX_RESOURCE], in rio_request_inb_mbox() 257 mport->inb_msg[mbox].res = res; in rio_request_inb_mbox() 260 mport->inb_msg[mbox].mcback = minb; in rio_request_inb_mbox() 262 rc = mport->ops->open_inb_mbox(mport, dev_id, mbox, entries); in rio_request_inb_mbox() [all …]
|
D | rio-scan.c | 837 static struct rio_net *rio_scan_alloc_net(struct rio_mport *mport, in rio_scan_alloc_net() argument 842 net = rio_alloc_net(mport); in rio_scan_alloc_net() 850 RIO_MAX_ROUTE_ENTRIES(mport->sys_size) in rio_scan_alloc_net() 863 idtab->max = RIO_MAX_ROUTE_ENTRIES(mport->sys_size); in rio_scan_alloc_net() 869 net->id = mport->id; in rio_scan_alloc_net() 870 net->hport = mport; in rio_scan_alloc_net() 872 net->dev.parent = &mport->dev; in rio_scan_alloc_net() 946 static int rio_enum_mport(struct rio_mport *mport, u32 flags) in rio_enum_mport() argument 951 printk(KERN_INFO "RIO: enumerate master port %d, %s\n", mport->id, in rio_enum_mport() 952 mport->name); in rio_enum_mport() [all …]
|
D | rio_cm.c | 147 struct rio_mport *mport; member 305 msg = rio_get_inb_message(cm->mport, cmbox); in riocm_rx_get_msg() 341 rio_add_inb_buffer(cm->mport, cmbox, cm->rx_buf[i]); in riocm_rx_fill() 490 if (!rio_mport_is_running(cm->mport)) in rio_cm_handler() 586 if (!rio_mport_is_running(cm->mport)) in rio_ibmsg_handler() 617 static void riocm_inb_msg_event(struct rio_mport *mport, void *dev_id, in riocm_inb_msg_event() argument 622 if (rio_mport_is_running(cm->mport) && !work_pending(&cm->rx_work)) in riocm_inb_msg_event() 644 cm->mport->id, slot, cm->tx_cnt); in rio_txcq_handler() 678 rc = rio_add_outb_message(cm->mport, req->rdev, cmbox, in rio_txcq_handler() 694 static void riocm_outb_msg_event(struct rio_mport *mport, void *dev_id, in riocm_outb_msg_event() argument [all …]
|
D | rio.h | 18 extern u32 rio_mport_get_feature(struct rio_mport *mport, int local, u16 destid, 24 extern int rio_mport_chk_dev_access(struct rio_mport *mport, u16 destid, 36 extern struct rio_net *rio_alloc_net(struct rio_mport *mport);
|
D | rio-sysfs.c | 332 struct rio_mport *mport = to_rio_mport(dev); in port_destid_show() local 334 if (mport) in port_destid_show() 335 return sprintf(buf, "0x%04x\n", mport->host_deviceid); in port_destid_show() 344 struct rio_mport *mport = to_rio_mport(dev); in sys_size_show() local 346 if (mport) in sys_size_show() 347 return sprintf(buf, "%u\n", mport->sys_size); in sys_size_show()
|
/linux-6.1.9/include/linux/ |
D | rio.h | 122 int (*add_entry) (struct rio_mport *mport, u16 destid, u8 hopcount, 124 int (*get_entry) (struct rio_mport *mport, u16 destid, u8 hopcount, 126 int (*clr_table) (struct rio_mport *mport, u16 destid, u8 hopcount, 128 int (*set_domain) (struct rio_mport *mport, u16 destid, u8 hopcount, 130 int (*get_domain) (struct rio_mport *mport, u16 destid, u8 hopcount, 221 void (*mcback) (struct rio_mport * mport, void *dev_id, int mbox, int slot); 234 void (*dinb) (struct rio_mport *mport, void *dev_id, u16 src, u16 dst, u16 info); 298 static inline int rio_mport_is_running(struct rio_mport *mport) in rio_mport_is_running() argument 300 return atomic_read(&mport->state) == RIO_DEVICE_RUNNING; in rio_mport_is_running() 400 int (*lcread) (struct rio_mport *mport, int index, u32 offset, int len, [all …]
|
D | rio_drv.h | 230 extern int rio_mport_send_doorbell(struct rio_mport *mport, u16 destid, 311 static inline int rio_add_outb_message(struct rio_mport *mport, in rio_add_outb_message() argument 315 return mport->ops->add_outb_message(mport, rdev, mbox, in rio_add_outb_message() 332 static inline int rio_add_inb_buffer(struct rio_mport *mport, int mbox, in rio_add_inb_buffer() argument 335 return mport->ops->add_inb_buffer(mport, mbox, buffer); in rio_add_inb_buffer() 345 static inline void *rio_get_inb_message(struct rio_mport *mport, int mbox) in rio_get_inb_message() argument 347 return mport->ops->get_inb_message(mport, mbox); in rio_get_inb_message() 365 extern int rio_map_inb_region(struct rio_mport *mport, dma_addr_t local, 367 extern void rio_unmap_inb_region(struct rio_mport *mport, dma_addr_t lstart); 368 extern int rio_map_outb_region(struct rio_mport *mport, u16 destid, u64 rbase, [all …]
|
/linux-6.1.9/arch/powerpc/sysdev/ |
D | fsl_rio.h | 30 #define RIO_REGS_WIN(mport) (((struct rio_priv *)(mport->priv))->regs_win) argument 88 struct rio_mport *mport[MAX_PORT_NUM]; member 96 struct rio_mport *mport[MAX_PORT_NUM]; member 124 extern int fsl_rio_setup_rmu(struct rio_mport *mport, 127 extern int fsl_rio_pw_enable(struct rio_mport *mport, int enable); 131 extern int fsl_rio_doorbell_send(struct rio_mport *mport, 133 extern int fsl_add_outb_message(struct rio_mport *mport, 136 extern int fsl_open_outb_mbox(struct rio_mport *mport, 138 extern void fsl_close_outb_mbox(struct rio_mport *mport, int mbox); 139 extern int fsl_open_inb_mbox(struct rio_mport *mport, [all …]
|
D | fsl_rmu.c | 32 #define GET_RMM_HANDLE(mport) \ argument 33 (((struct rio_priv *)(mport->priv))->rmm_handle) 326 if (fsl_dbell->mport[i]) { in fsl_rio_dbell_handler() 328 &fsl_dbell->mport[i]->dbells, node) { in fsl_rio_dbell_handler() 338 dbell->dinb(fsl_dbell->mport[i], in fsl_rio_dbell_handler() 506 if (pw->mport[i]) in fsl_pw_dpc() 507 rio_inb_pwrite_handler(pw->mport[i], in fsl_pw_dpc() 518 int fsl_rio_pw_enable(struct rio_mport *mport, int enable) in fsl_rio_pw_enable() argument 624 int fsl_rio_doorbell_send(struct rio_mport *mport, in fsl_rio_doorbell_send() argument 660 fsl_add_outb_message(struct rio_mport *mport, struct rio_dev *rdev, int mbox, in fsl_add_outb_message() argument [all …]
|
D | fsl_rio.c | 141 static int fsl_local_config_read(struct rio_mport *mport, in fsl_local_config_read() argument 144 struct rio_priv *priv = mport->priv; in fsl_local_config_read() 163 static int fsl_local_config_write(struct rio_mport *mport, in fsl_local_config_write() argument 166 struct rio_priv *priv = mport->priv; in fsl_local_config_write() 189 fsl_rio_config_read(struct rio_mport *mport, int index, u16 destid, in fsl_rio_config_read() argument 192 struct rio_priv *priv = mport->priv; in fsl_rio_config_read() 254 fsl_rio_config_write(struct rio_mport *mport, int index, u16 destid, in fsl_rio_config_write() argument 257 struct rio_priv *priv = mport->priv; in fsl_rio_config_write() 306 int fsl_map_inb_mem(struct rio_mport *mport, dma_addr_t lstart, in fsl_map_inb_mem() argument 309 struct rio_priv *priv = mport->priv; in fsl_map_inb_mem() [all …]
|
/linux-6.1.9/drivers/rapidio/switches/ |
D | idtcps.c | 21 idtcps_route_add_entry(struct rio_mport *mport, u16 destid, u8 hopcount, in idtcps_route_add_entry() argument 30 rio_mport_write_config_32(mport, destid, hopcount, in idtcps_route_add_entry() 33 rio_mport_read_config_32(mport, destid, hopcount, in idtcps_route_add_entry() 37 rio_mport_write_config_32(mport, destid, hopcount, in idtcps_route_add_entry() 45 idtcps_route_get_entry(struct rio_mport *mport, u16 destid, u8 hopcount, in idtcps_route_get_entry() argument 51 rio_mport_write_config_32(mport, destid, hopcount, in idtcps_route_get_entry() 54 rio_mport_read_config_32(mport, destid, hopcount, in idtcps_route_get_entry() 68 idtcps_route_clr_table(struct rio_mport *mport, u16 destid, u8 hopcount, in idtcps_route_clr_table() argument 75 rio_mport_write_config_32(mport, destid, hopcount, in idtcps_route_clr_table() 77 rio_mport_write_config_32(mport, destid, hopcount, in idtcps_route_clr_table() [all …]
|
D | idt_gen2.c | 87 idtg2_route_add_entry(struct rio_mport *mport, u16 destid, u8 hopcount, in idtg2_route_add_entry() argument 101 rio_mport_write_config_32(mport, destid, hopcount, in idtg2_route_add_entry() 107 rio_mport_write_config_32(mport, destid, hopcount, in idtg2_route_add_entry() 111 rio_mport_write_config_32(mport, destid, hopcount, in idtg2_route_add_entry() 120 idtg2_route_get_entry(struct rio_mport *mport, u16 destid, u8 hopcount, in idtg2_route_get_entry() argument 133 rio_mport_write_config_32(mport, destid, hopcount, in idtg2_route_get_entry() 136 rio_mport_write_config_32(mport, destid, hopcount, in idtg2_route_get_entry() 140 rio_mport_read_config_32(mport, destid, hopcount, in idtg2_route_get_entry() 152 idtg2_route_clr_table(struct rio_mport *mport, u16 destid, u8 hopcount, in idtg2_route_clr_table() argument 165 rio_mport_write_config_32(mport, destid, hopcount, in idtg2_route_clr_table() [all …]
|
D | idt_gen3.c | 37 idtg3_route_add_entry(struct rio_mport *mport, u16 destid, u8 hopcount, in idtg3_route_add_entry() argument 55 err = rio_mport_write_config_32(mport, destid, hopcount, in idtg3_route_add_entry() 64 err = rio_mport_read_config_32(mport, destid, hopcount, in idtg3_route_add_entry() 72 err = rio_mport_write_config_32(mport, destid, hopcount, in idtg3_route_add_entry() 79 idtg3_route_get_entry(struct rio_mport *mport, u16 destid, u8 hopcount, in idtg3_route_get_entry() argument 88 err = rio_mport_read_config_32(mport, destid, hopcount, in idtg3_route_get_entry() 103 err = rio_mport_read_config_32(mport, destid, hopcount, in idtg3_route_get_entry() 118 idtg3_route_clr_table(struct rio_mport *mport, u16 destid, u8 hopcount, in idtg3_route_clr_table() argument 127 err = rio_mport_write_config_32(mport, destid, hopcount, in idtg3_route_clr_table() 137 err = rio_mport_read_config_32(mport, destid, hopcount, in idtg3_route_clr_table() [all …]
|
/linux-6.1.9/drivers/net/ |
D | rionet.c | 52 struct rio_mport *mport; member 105 if (!(data = rio_get_inb_message(rnet->mport, RIONET_MAILBOX))) in rionet_rx_clean() 138 rio_add_inb_buffer(rnet->mport, RIONET_MAILBOX, in rionet_rx_fill() 150 rio_add_outb_message(rnet->mport, rdev, 0, skb->data, skb->len); in rionet_queue_tx_msg() 182 add_num = nets[rnet->mport->id].nact; in rionet_start_xmit() 195 for (i = 0; i < RIO_MAX_ROUTE_ENTRIES(rnet->mport->sys_size); in rionet_start_xmit() 197 if (nets[rnet->mport->id].active[i]) { in rionet_start_xmit() 199 nets[rnet->mport->id].active[i]); in rionet_start_xmit() 206 if (nets[rnet->mport->id].active[destid]) in rionet_start_xmit() 208 nets[rnet->mport->id].active[destid]); in rionet_start_xmit() [all …]
|
/linux-6.1.9/drivers/rapidio/devices/ |
D | rio_mport_cdev.c | 167 struct rio_mport *mport; member 261 struct rio_mport *mport = priv->md->mport; in rio_mport_maint_rd() local 284 ret = __rio_local_read_config_32(mport, in rio_mport_maint_rd() 287 ret = rio_mport_read_config_32(mport, maint_io.rioid, in rio_mport_maint_rd() 306 struct rio_mport *mport = priv->md->mport; in rio_mport_maint_wr() local 337 ret = __rio_local_write_config_32(mport, in rio_mport_maint_wr() 340 ret = rio_mport_write_config_32(mport, maint_io.rioid, in rio_mport_maint_wr() 363 struct rio_mport *mport = md->mport; in rio_mport_create_outbound_mapping() local 373 ret = rio_map_outb_region(mport, rioid, raddr, size, 0, paddr); in rio_mport_create_outbound_mapping() 466 if (!md->mport->ops->unmap_outb) in rio_mport_obw_free() [all …]
|
D | tsi721.c | 57 static int tsi721_lcread(struct rio_mport *mport, int index, u32 offset, in tsi721_lcread() argument 60 struct tsi721_device *priv = mport->priv; in tsi721_lcread() 81 static int tsi721_lcwrite(struct rio_mport *mport, int index, u32 offset, in tsi721_lcwrite() argument 84 struct tsi721_device *priv = mport->priv; in tsi721_lcwrite() 213 static int tsi721_cread_dma(struct rio_mport *mport, int index, u16 destid, in tsi721_cread_dma() argument 216 struct tsi721_device *priv = mport->priv; in tsi721_cread_dma() 218 return tsi721_maint_dma(priv, mport->sys_size, destid, hopcount, in tsi721_cread_dma() 236 static int tsi721_cwrite_dma(struct rio_mport *mport, int index, u16 destid, in tsi721_cwrite_dma() argument 239 struct tsi721_device *priv = mport->priv; in tsi721_cwrite_dma() 242 return tsi721_maint_dma(priv, mport->sys_size, destid, hopcount, in tsi721_cwrite_dma() [all …]
|
D | tsi721_dma.c | 967 struct rio_mport *mport = &priv->mport; in tsi721_register_dma() local 969 INIT_LIST_HEAD(&mport->dma.channels); in tsi721_register_dma() 979 bdma_chan->dchan.device = &mport->dma; in tsi721_register_dma() 994 &mport->dma.channels); in tsi721_register_dma() 998 mport->dma.chancnt = nr_channels; in tsi721_register_dma() 999 dma_cap_zero(mport->dma.cap_mask); in tsi721_register_dma() 1000 dma_cap_set(DMA_PRIVATE, mport->dma.cap_mask); in tsi721_register_dma() 1001 dma_cap_set(DMA_SLAVE, mport->dma.cap_mask); in tsi721_register_dma() 1003 mport->dma.dev = &priv->pdev->dev; in tsi721_register_dma() 1004 mport->dma.device_alloc_chan_resources = tsi721_alloc_chan_resources; in tsi721_register_dma() [all …]
|
/linux-6.1.9/Documentation/driver-api/rapidio/ |
D | mport_cdev.rst | 2 RapidIO subsystem mport character device driver (rio_mport_cdev.c) 21 directory for each registered RapidIO mport device. 'X' in the node name matches 22 to unique port ID assigned to each local mport device. 27 - Reads and writes from/to configuration registers of mport devices 32 - Set RapidIO Destination ID for mport devices (RIO_MPORT_MAINT_HDID_SET) 33 - Set RapidIO Component Tag for mport devices (RIO_MPORT_MAINT_COMPTAG_SET) 34 - Query logical index of mport devices (RIO_MPORT_MAINT_PORT_IDX_GET) 35 - Query capabilities and RapidIO link configuration of mport devices 43 - Configure/Map mport's outbound requests window(s) for specific size, 46 - Configure/Map mport's inbound requests window(s) for specific size, [all …]
|
D | rio_cm.rst | 37 in /dev directory common for all registered RapidIO mport devices. 42 Returns to caller list of local mport devices that 44 Each list entry is combination of mport's index in the system and RapidIO 48 in a RapidIO network associated with the specified mport device. 52 with the specified mport device. 58 mport device. 93 and therefore it can be used with any mport device driver registered by RapidIO 94 subsystem with limitations set by available mport HW implementation of messaging
|
D | tsi721.rst | 2 RapidIO subsystem mport driver for IDT Tsi721 PCI Express-to-SRIO bridge. 8 This driver implements all currently defined RapidIO mport callback functions. 71 Tsi721 mport driver supports DMA data transfers between local system memory and 80 If Tsi721 mport driver have been built with RAPIDIO_DMA_ENGINE support included,
|
/linux-6.1.9/Documentation/ABI/testing/ |
D | sysfs-class-rapidio | 4 (referenced as "Master Port" or "mport") are presented in sysfs 7 subdirectories named as "rapidioN" where N = mport ID registered 10 NOTE: An mport ID is not a RapidIO destination ID assigned to a 11 given local mport device. 33 RapidIO mport device. If value 0xFFFFFFFF is returned this means 34 that no valid destination ID have been assigned to the mport 39 After enumeration or discovery was performed for a given mport device, 41 child RapidIO device connected to the mport. 43 The example below shows mport device subdirectory with several child RapidIO
|
/linux-6.1.9/drivers/net/ethernet/sfc/ |
D | mae.c | 55 efx_dword_t mport; in efx_mae_mport_wire() local 57 EFX_POPULATE_DWORD_2(mport, in efx_mae_mport_wire() 60 *out = EFX_DWORD_VAL(mport); in efx_mae_mport_wire() 65 efx_dword_t mport; in efx_mae_mport_uplink() local 67 EFX_POPULATE_DWORD_3(mport, in efx_mae_mport_uplink() 71 *out = EFX_DWORD_VAL(mport); in efx_mae_mport_uplink() 76 efx_dword_t mport; in efx_mae_mport_vf() local 78 EFX_POPULATE_DWORD_3(mport, in efx_mae_mport_vf() 82 *out = EFX_DWORD_VAL(mport); in efx_mae_mport_vf() 88 efx_dword_t mport; in efx_mae_mport_mport() local [all …]
|
D | ef100_rep.h | 47 u32 mport; member 68 struct efx_rep *efx_ef100_find_rep_by_mport(struct efx_nic *efx, u16 mport);
|
D | ef100_rep.c | 252 rc = efx_mae_lookup_mport(efx, selector, &efv->mport); in efx_ef100_configure_rep() 255 pci_dbg(efx->pci_dev, "VF %u has mport ID %#x\n", efv->idx, efv->mport); in efx_ef100_configure_rep() 257 WARN_ON(efv->mport >> 16); in efx_ef100_configure_rep() 434 struct efx_rep *efx_ef100_find_rep_by_mport(struct efx_nic *efx, u16 mport) in efx_ef100_find_rep_by_mport() argument 444 if (efv->mport == mport) { in efx_ef100_find_rep_by_mport()
|