drivers/rapidio: Import OnePlus Changes
Signed-off-by: Cyber Knight <cyberknight755@gmail.com>
This commit is contained in:
parent
63269dedbb
commit
d0ff892c18
|
@ -25,7 +25,7 @@ config RAPIDIO_ENABLE_RX_TX_PORTS
|
|||
config RAPIDIO_DMA_ENGINE
|
||||
bool "DMA Engine support for RapidIO"
|
||||
depends on RAPIDIO
|
||||
depends on DMADEVICES
|
||||
select DMADEVICES
|
||||
select DMA_ENGINE
|
||||
help
|
||||
Say Y here if you want to use DMA Engine frameork for RapidIO data
|
||||
|
|
|
@ -900,16 +900,15 @@ rio_dma_transfer(struct file *filp, u32 transfer_mode,
|
|||
rmcd_error("get_user_pages_unlocked err=%ld",
|
||||
pinned);
|
||||
nr_pages = 0;
|
||||
} else {
|
||||
} else
|
||||
rmcd_error("pinned %ld out of %ld pages",
|
||||
pinned, nr_pages);
|
||||
/*
|
||||
* Set nr_pages up to mean "how many pages to unpin, in
|
||||
* the error handler:
|
||||
*/
|
||||
nr_pages = pinned;
|
||||
}
|
||||
ret = -EFAULT;
|
||||
/*
|
||||
* Set nr_pages up to mean "how many pages to unpin, in
|
||||
* the error handler:
|
||||
*/
|
||||
nr_pages = pinned;
|
||||
goto err_pg;
|
||||
}
|
||||
|
||||
|
@ -1739,7 +1738,6 @@ static int rio_mport_add_riodev(struct mport_cdev_priv *priv,
|
|||
struct rio_dev *rdev;
|
||||
struct rio_switch *rswitch = NULL;
|
||||
struct rio_mport *mport;
|
||||
struct device *dev;
|
||||
size_t size;
|
||||
u32 rval;
|
||||
u32 swpinfo = 0;
|
||||
|
@ -1754,10 +1752,8 @@ static int rio_mport_add_riodev(struct mport_cdev_priv *priv,
|
|||
rmcd_debug(RDEV, "name:%s ct:0x%x did:0x%x hc:0x%x", dev_info.name,
|
||||
dev_info.comptag, dev_info.destid, dev_info.hopcount);
|
||||
|
||||
dev = bus_find_device_by_name(&rio_bus_type, NULL, dev_info.name);
|
||||
if (dev) {
|
||||
if (bus_find_device_by_name(&rio_bus_type, NULL, dev_info.name)) {
|
||||
rmcd_debug(RDEV, "device %s already exists", dev_info.name);
|
||||
put_device(dev);
|
||||
return -EEXIST;
|
||||
}
|
||||
|
||||
|
@ -2468,6 +2464,13 @@ static struct mport_dev *mport_cdev_add(struct rio_mport *mport)
|
|||
cdev_init(&md->cdev, &mport_fops);
|
||||
md->cdev.owner = THIS_MODULE;
|
||||
|
||||
ret = cdev_device_add(&md->cdev, &md->dev);
|
||||
if (ret) {
|
||||
rmcd_error("Failed to register mport %d (err=%d)",
|
||||
mport->id, ret);
|
||||
goto err_cdev;
|
||||
}
|
||||
|
||||
INIT_LIST_HEAD(&md->doorbells);
|
||||
spin_lock_init(&md->db_lock);
|
||||
INIT_LIST_HEAD(&md->portwrites);
|
||||
|
@ -2487,13 +2490,6 @@ static struct mport_dev *mport_cdev_add(struct rio_mport *mport)
|
|||
#else
|
||||
md->properties.transfer_mode |= RIO_TRANSFER_MODE_TRANSFER;
|
||||
#endif
|
||||
|
||||
ret = cdev_device_add(&md->cdev, &md->dev);
|
||||
if (ret) {
|
||||
rmcd_error("Failed to register mport %d (err=%d)",
|
||||
mport->id, ret);
|
||||
goto err_cdev;
|
||||
}
|
||||
ret = rio_query_mport(mport, &attr);
|
||||
if (!ret) {
|
||||
md->properties.flags = attr.flags;
|
||||
|
|
Loading…
Reference in New Issue