Lines Matching defs:mhi_dev
31 struct device *dev = &mhi_cntrl->mhi_dev->dev;
166 struct device *dev = &mhi_cntrl->mhi_dev->dev;
227 * We also need to check for mhi_dev != NULL because, the host
231 if (!(ch_id % 2) && !mhi_chan->mhi_dev) {
259 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
293 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
326 bool mhi_ep_queue_is_empty(struct mhi_ep_device *mhi_dev, enum dma_data_direction dir)
328 struct mhi_ep_chan *mhi_chan = (dir == DMA_FROM_DEVICE) ? mhi_dev->dl_chan :
329 mhi_dev->ul_chan;
330 struct mhi_ep_cntrl *mhi_cntrl = mhi_dev->mhi_cntrl;
339 struct mhi_ep_device *mhi_dev = buf_info->mhi_dev;
340 struct mhi_ep_cntrl *mhi_cntrl = mhi_dev->mhi_cntrl;
341 struct mhi_ep_chan *mhi_chan = mhi_dev->ul_chan;
352 mhi_chan->xfer_cb(mhi_dev, &result);
371 dev_err(&mhi_chan->mhi_dev->dev,
387 dev_err(&mhi_chan->mhi_dev->dev,
405 struct device *dev = &mhi_cntrl->mhi_dev->dev;
445 buf_info.mhi_dev = mhi_chan->mhi_dev;
453 dev_err(&mhi_chan->mhi_dev->dev, "Error reading from channel\n");
462 } while (!mhi_ep_queue_is_empty(mhi_chan->mhi_dev, DMA_TO_DEVICE));
486 dev_err(&mhi_chan->mhi_dev->dev, "Client driver not available\n");
493 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
498 dev_err(&mhi_chan->mhi_dev->dev, "Failed to read channel\n");
508 struct mhi_ep_device *mhi_dev = buf_info->mhi_dev;
509 struct mhi_ep_cntrl *mhi_cntrl = mhi_dev->mhi_cntrl;
510 struct mhi_ep_chan *mhi_chan = mhi_dev->dl_chan;
513 struct device *dev = &mhi_dev->dev;
522 mhi_chan->xfer_cb(mhi_dev, &result);
536 int mhi_ep_queue_skb(struct mhi_ep_device *mhi_dev, struct sk_buff *skb)
538 struct mhi_ep_cntrl *mhi_cntrl = mhi_dev->mhi_cntrl;
539 struct mhi_ep_chan *mhi_chan = mhi_dev->dl_chan;
540 struct device *dev = &mhi_chan->mhi_dev->dev;
562 if (mhi_ep_queue_is_empty(mhi_dev, DMA_FROM_DEVICE)) {
579 buf_info.mhi_dev = mhi_dev;
622 struct device *dev = &mhi_cntrl->mhi_dev->dev;
730 struct device *dev = &mhi_cntrl->mhi_dev->dev;
771 struct device *dev = &mhi_cntrl->mhi_dev->dev;
804 struct device *dev = &mhi_cntrl->mhi_dev->dev;
868 struct device *dev = &mhi_cntrl->mhi_dev->dev;
986 struct device *dev = &mhi_cntrl->mhi_dev->dev;
1039 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
1049 device_for_each_child(&mhi_cntrl->mhi_dev->dev, NULL, mhi_ep_destroy_device);
1114 struct device *dev = &mhi_cntrl->mhi_dev->dev;
1129 struct device *dev = &mhi_cntrl->mhi_dev->dev;
1201 if (!mhi_chan->mhi_dev)
1212 dev_dbg(&mhi_chan->mhi_dev->dev, "Suspending channel\n");
1231 if (!mhi_chan->mhi_dev)
1242 dev_dbg(&mhi_chan->mhi_dev->dev, "Resuming channel\n");
1254 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1256 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1257 mhi_dev->mhi_cntrl->mhi_dev = NULL;
1260 * We need to set the mhi_chan->mhi_dev to NULL here since the MHI
1262 * if the mhi_dev associated with it is NULL.
1264 if (mhi_dev->ul_chan)
1265 mhi_dev->ul_chan->mhi_dev = NULL;
1267 if (mhi_dev->dl_chan)
1268 mhi_dev->dl_chan->mhi_dev = NULL;
1270 kfree(mhi_dev);
1276 struct mhi_ep_device *mhi_dev;
1279 mhi_dev = kzalloc(sizeof(*mhi_dev), GFP_KERNEL);
1280 if (!mhi_dev)
1283 dev = &mhi_dev->dev;
1294 dev->parent = &mhi_cntrl->mhi_dev->dev;
1296 mhi_dev->mhi_cntrl = mhi_cntrl;
1297 mhi_dev->dev_type = dev_type;
1299 return mhi_dev;
1312 struct mhi_ep_device *mhi_dev;
1322 mhi_dev = mhi_ep_alloc_device(mhi_cntrl, MHI_DEVICE_XFER);
1323 if (IS_ERR(mhi_dev))
1324 return PTR_ERR(mhi_dev);
1327 mhi_dev->ul_chan = mhi_chan;
1328 get_device(&mhi_dev->dev);
1329 mhi_chan->mhi_dev = mhi_dev;
1333 mhi_dev->dl_chan = mhi_chan;
1334 get_device(&mhi_dev->dev);
1335 mhi_chan->mhi_dev = mhi_dev;
1338 mhi_dev->name = mhi_chan->name;
1339 ret = dev_set_name(&mhi_dev->dev, "%s_%s",
1340 dev_name(&mhi_cntrl->mhi_dev->dev),
1341 mhi_dev->name);
1343 put_device(&mhi_dev->dev);
1347 ret = device_add(&mhi_dev->dev);
1349 put_device(&mhi_dev->dev);
1356 struct mhi_ep_device *mhi_dev;
1363 mhi_dev = to_mhi_ep_device(dev);
1364 mhi_cntrl = mhi_dev->mhi_cntrl;
1367 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1370 ul_chan = mhi_dev->ul_chan;
1371 dl_chan = mhi_dev->dl_chan;
1374 put_device(&ul_chan->mhi_dev->dev);
1377 put_device(&dl_chan->mhi_dev->dev);
1379 dev_dbg(&mhi_cntrl->mhi_dev->dev, "Destroying device for chan:%s\n",
1380 mhi_dev->name);
1449 struct mhi_ep_device *mhi_dev;
1529 mhi_dev = mhi_ep_alloc_device(mhi_cntrl, MHI_DEVICE_CONTROLLER);
1530 if (IS_ERR(mhi_dev)) {
1532 ret = PTR_ERR(mhi_dev);
1536 ret = dev_set_name(&mhi_dev->dev, "mhi_ep%u", mhi_cntrl->index);
1540 mhi_dev->name = dev_name(&mhi_dev->dev);
1541 mhi_cntrl->mhi_dev = mhi_dev;
1543 ret = device_add(&mhi_dev->dev);
1547 dev_dbg(&mhi_dev->dev, "MHI EP Controller registered\n");
1552 put_device(&mhi_dev->dev);
1580 struct mhi_ep_device *mhi_dev = mhi_cntrl->mhi_dev;
1592 device_del(&mhi_dev->dev);
1593 put_device(&mhi_dev->dev);
1601 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1603 struct mhi_ep_chan *ul_chan = mhi_dev->ul_chan;
1604 struct mhi_ep_chan *dl_chan = mhi_dev->dl_chan;
1609 return mhi_drv->probe(mhi_dev, mhi_dev->id);
1614 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1621 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1626 mhi_chan = dir ? mhi_dev->ul_chan : mhi_dev->dl_chan;
1636 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
1645 mhi_drv->remove(mhi_dev);
1678 const struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1681 mhi_dev->name);
1686 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1694 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1698 if (!strcmp(mhi_dev->name, id->chan)) {
1699 mhi_dev->id = id;