2107724ae3
Currently the removed_dma_ops are set only once for dev nodes
which are associated with a reserved-memory region (PIL devices)
in device_init and when the probe of these devices fail,
we end up calling dma_deconfigure which sets the dma_ops to NULL.
Eventually when the probe succeeds, since dma_ops was set to
NULL during probe failure, we end up setting dma_ops to
arm64_swiotlb_dma_ops. Hence in arch_setup_dma_ops, if the
dma_ops is NULL, check to see if there is a reserved memory
associated with the dev and if so set dma_ops to removed_dma_ops
such that the right callback functions are invoked.
Bug: 145617272
Signed-off-by: Swathi Sridhar <swatsrid@codeaurora.org>
[surenb: cherry picked from commit:
903192a541
"mm: Support setting removed_dma_ops in arch_setup_dma_ops"]
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Ibc1028391ba90cbdd5c5826022b5015d9e261c09
8 lines
187 B
C
8 lines
187 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef __LINUX_DMA_REMOVED_H
|
|
#define __LINUX_DMA_REMOVED_H
|
|
|
|
extern const struct dma_map_ops removed_dma_ops;
|
|
|
|
#endif /* __LINUX_DMA_REMOVED_H */
|
|
|