Lines Matching refs:mhi_dev

31 	struct device *dev = &mhi_cntrl->mhi_dev->dev;
150 struct device *dev = &mhi_cntrl->mhi_dev->dev;
209 * We also need to check for mhi_dev != NULL because, the host
213 if (!(ch_id % 2) && !mhi_chan->mhi_dev) {
241 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
275 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
308 bool mhi_ep_queue_is_empty(struct mhi_ep_device *mhi_dev, enum dma_data_direction dir)
310 struct mhi_ep_chan *mhi_chan = (dir == DMA_FROM_DEVICE) ? mhi_dev->dl_chan :
311 mhi_dev->ul_chan;
312 struct mhi_ep_cntrl *mhi_cntrl = mhi_dev->mhi_cntrl;
325 struct device *dev = &mhi_cntrl->mhi_dev->dev;
366 dev_err(&mhi_chan->mhi_dev->dev, "Error reading from channel\n");
396 dev_err(&mhi_chan->mhi_dev->dev,
412 dev_err(&mhi_chan->mhi_dev->dev,
445 dev_err(&mhi_chan->mhi_dev->dev, "Client driver not available\n");
452 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
462 dev_err(&mhi_chan->mhi_dev->dev, "Failed to read channel\n");
468 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
473 } while (!mhi_ep_queue_is_empty(mhi_chan->mhi_dev, DMA_TO_DEVICE));
482 int mhi_ep_queue_skb(struct mhi_ep_device *mhi_dev, struct sk_buff *skb)
484 struct mhi_ep_cntrl *mhi_cntrl = mhi_dev->mhi_cntrl;
485 struct mhi_ep_chan *mhi_chan = mhi_dev->dl_chan;
486 struct device *dev = &mhi_chan->mhi_dev->dev;
509 if (mhi_ep_queue_is_empty(mhi_dev, DMA_FROM_DEVICE)) {
567 struct device *dev = &mhi_cntrl->mhi_dev->dev;
675 struct device *dev = &mhi_cntrl->mhi_dev->dev;
716 struct device *dev = &mhi_cntrl->mhi_dev->dev;
749 struct device *dev = &mhi_cntrl->mhi_dev->dev;
816 struct device *dev = &mhi_cntrl->mhi_dev->dev;
934 struct device *dev = &mhi_cntrl->mhi_dev->dev;
987 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
997 device_for_each_child(&mhi_cntrl->mhi_dev->dev, NULL, mhi_ep_destroy_device);
1062 struct device *dev = &mhi_cntrl->mhi_dev->dev;
1077 struct device *dev = &mhi_cntrl->mhi_dev->dev;
1148 if (!mhi_chan->mhi_dev)
1159 dev_dbg(&mhi_chan->mhi_dev->dev, "Suspending channel\n");
1178 if (!mhi_chan->mhi_dev)
1189 dev_dbg(&mhi_chan->mhi_dev->dev, "Resuming channel\n");
1201 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1203 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1204 mhi_dev->mhi_cntrl->mhi_dev = NULL;
1207 * We need to set the mhi_chan->mhi_dev to NULL here since the MHI
1209 * if the mhi_dev associated with it is NULL.
1211 if (mhi_dev->ul_chan)
1212 mhi_dev->ul_chan->mhi_dev = NULL;
1214 if (mhi_dev->dl_chan)
1215 mhi_dev->dl_chan->mhi_dev = NULL;
1217 kfree(mhi_dev);
1223 struct mhi_ep_device *mhi_dev;
1226 mhi_dev = kzalloc(sizeof(*mhi_dev), GFP_KERNEL);
1227 if (!mhi_dev)
1230 dev = &mhi_dev->dev;
1241 dev->parent = &mhi_cntrl->mhi_dev->dev;
1243 mhi_dev->mhi_cntrl = mhi_cntrl;
1244 mhi_dev->dev_type = dev_type;
1246 return mhi_dev;
1259 struct mhi_ep_device *mhi_dev;
1269 mhi_dev = mhi_ep_alloc_device(mhi_cntrl, MHI_DEVICE_XFER);
1270 if (IS_ERR(mhi_dev))
1271 return PTR_ERR(mhi_dev);
1274 mhi_dev->ul_chan = mhi_chan;
1275 get_device(&mhi_dev->dev);
1276 mhi_chan->mhi_dev = mhi_dev;
1280 mhi_dev->dl_chan = mhi_chan;
1281 get_device(&mhi_dev->dev);
1282 mhi_chan->mhi_dev = mhi_dev;
1285 mhi_dev->name = mhi_chan->name;
1286 ret = dev_set_name(&mhi_dev->dev, "%s_%s",
1287 dev_name(&mhi_cntrl->mhi_dev->dev),
1288 mhi_dev->name);
1290 put_device(&mhi_dev->dev);
1294 ret = device_add(&mhi_dev->dev);
1296 put_device(&mhi_dev->dev);
1303 struct mhi_ep_device *mhi_dev;
1310 mhi_dev = to_mhi_ep_device(dev);
1311 mhi_cntrl = mhi_dev->mhi_cntrl;
1314 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1317 ul_chan = mhi_dev->ul_chan;
1318 dl_chan = mhi_dev->dl_chan;
1321 put_device(&ul_chan->mhi_dev->dev);
1324 put_device(&dl_chan->mhi_dev->dev);
1326 dev_dbg(&mhi_cntrl->mhi_dev->dev, "Destroying device for chan:%s\n",
1327 mhi_dev->name);
1396 struct mhi_ep_device *mhi_dev;
1471 mhi_dev = mhi_ep_alloc_device(mhi_cntrl, MHI_DEVICE_CONTROLLER);
1472 if (IS_ERR(mhi_dev)) {
1474 ret = PTR_ERR(mhi_dev);
1478 ret = dev_set_name(&mhi_dev->dev, "mhi_ep%u", mhi_cntrl->index);
1482 mhi_dev->name = dev_name(&mhi_dev->dev);
1483 mhi_cntrl->mhi_dev = mhi_dev;
1485 ret = device_add(&mhi_dev->dev);
1489 dev_dbg(&mhi_dev->dev, "MHI EP Controller registered\n");
1494 put_device(&mhi_dev->dev);
1522 struct mhi_ep_device *mhi_dev = mhi_cntrl->mhi_dev;
1534 device_del(&mhi_dev->dev);
1535 put_device(&mhi_dev->dev);
1543 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1545 struct mhi_ep_chan *ul_chan = mhi_dev->ul_chan;
1546 struct mhi_ep_chan *dl_chan = mhi_dev->dl_chan;
1551 return mhi_drv->probe(mhi_dev, mhi_dev->id);
1556 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1563 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1568 mhi_chan = dir ? mhi_dev->ul_chan : mhi_dev->dl_chan;
1578 mhi_chan->xfer_cb(mhi_chan->mhi_dev, &result);
1587 mhi_drv->remove(mhi_dev);
1620 const struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1623 mhi_dev->name);
1628 struct mhi_ep_device *mhi_dev = to_mhi_ep_device(dev);
1636 if (mhi_dev->dev_type == MHI_DEVICE_CONTROLLER)
1640 if (!strcmp(mhi_dev->name, id->chan)) {
1641 mhi_dev->id = id;