Lines Matching defs:mport
39 DBG_MPORT = BIT(2), /* mport add/remove */
147 struct rio_mport *mport;
305 msg = rio_get_inb_message(cm->mport, cmbox);
341 rio_add_inb_buffer(cm->mport, cmbox, cm->rx_buf[i]);
490 if (!rio_mport_is_running(cm->mport))
586 if (!rio_mport_is_running(cm->mport))
617 static void riocm_inb_msg_event(struct rio_mport *mport, void *dev_id,
622 if (rio_mport_is_running(cm->mport) && !work_pending(&cm->rx_work))
644 cm->mport->id, slot, cm->tx_cnt);
678 rc = rio_add_outb_message(cm->mport, req->rdev, cmbox,
694 static void riocm_outb_msg_event(struct rio_mport *mport, void *dev_id,
699 if (cm && rio_mport_is_running(cm->mport))
741 if (cm->mport == NULL) {
753 rc = rio_add_outb_message(cm->mport, rdev, cmbox, buffer, len);
819 * internal transfer buffer (true for all RIONET compatible mport
820 * drivers). Must be reviewed if mport driver uses the buffer directly.
962 ch->loc_destid = cm->mport->host_deviceid;
986 * internal transfer buffer. Must be reviewed if mport driver uses
1059 * @new_ch_id: local mport device
1064 * -ENODEV - cannot find specified channel or mport,
1218 * riocm_ch_bind - associate a channel object and an mport device
1220 * @mport_id: local mport device ID
1224 * -ENODEV if cannot find specified mport,
1239 if ((cm->mport->id == mport_id) &&
1240 rio_mport_is_running(cm->mport)) {
1263 ch->loc_destid = cm->mport->host_deviceid;
1544 if (cm->mport->id == mport_id) {
1580 if (cm->mport->id == (u8)info[1])
1605 ((u32 *)buf)[1] = info[1]; /* put back an mport ID */
1614 * cm_mport_get_list() - Returns list of available local mport devices
1638 *entry_ptr = (cm->mport->id << 16) |
1639 cm->mport->host_deviceid;
1794 if (cm->mport->id == chan.mport_id) {
1803 if (chan.remote_destid >= RIO_ANY_DESTID(cm->mport->sys_size)) {
1963 if (cm->mport == rdev->net->hport)
2007 if (cm->mport == rdev->net->hport) {
2088 * riocm_add_mport - add new local mport device into channel management core
2089 * @dev: device object associated with mport
2091 * When a new mport device is added, CM immediately reserves inbound and
2099 struct rio_mport *mport = to_rio_mport(dev);
2101 riocm_debug(MPORT, "add mport %s", mport->name);
2107 cm->mport = mport;
2109 rc = rio_request_outb_mbox(mport, cm, cmbox,
2113 cmbox, mport->name);
2118 rc = rio_request_inb_mbox(mport, cm, cmbox,
2122 cmbox, mport->name);
2123 rio_release_outb_mbox(mport, cmbox);
2130 rio_release_inb_mbox(mport, cmbox);
2131 rio_release_outb_mbox(mport, cmbox);
2165 * riocm_remove_mport - remove local mport device from channel management core
2166 * @dev: device object associated with mport
2168 * Removes a local mport device from the list of registered devices that provide
2169 * channel management services. Returns an error if the specified mport is not
2174 struct rio_mport *mport = to_rio_mport(dev);
2182 riocm_debug(MPORT, "%s", mport->name);
2187 if (cm->mport == mport) {
2200 /* Release channels bound to this mport */
2205 mport->name, ch->id);
2219 rio_release_inb_mbox(mport, cmbox);
2220 rio_release_outb_mbox(mport, cmbox);
2233 riocm_debug(MPORT, "%s done", mport->name);
2279 * rio_mport_interface handles addition/removal local mport devices
2314 * mport additions and removals.