of: reserved_mem: set dma_ops for devices using reserved mem
For some IPs, there may be virtual child devices created and for them its necessary to set the dma_ops if it's using reserved memory else it will call the dummy dma_ops during buffer operations for the child devices which will lead to memory mapping failure. Signed-off-by: Smitha T Murthy <smitha.t@samsung.com> Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com> Acked-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
6f05afcbb0
commit
a3b398e6f2
|
@ -354,6 +354,10 @@ int of_reserved_mem_device_init_by_idx(struct device *dev,
|
||||||
mutex_lock(&of_rmem_assigned_device_mutex);
|
mutex_lock(&of_rmem_assigned_device_mutex);
|
||||||
list_add(&rd->list, &of_rmem_assigned_device_list);
|
list_add(&rd->list, &of_rmem_assigned_device_list);
|
||||||
mutex_unlock(&of_rmem_assigned_device_mutex);
|
mutex_unlock(&of_rmem_assigned_device_mutex);
|
||||||
|
/* ensure that dma_ops is set for virtual devices
|
||||||
|
* using reserved memory
|
||||||
|
*/
|
||||||
|
of_dma_configure(dev, np);
|
||||||
|
|
||||||
dev_info(dev, "assigned reserved memory node %s\n", rmem->name);
|
dev_info(dev, "assigned reserved memory node %s\n", rmem->name);
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue