mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
dm: Introduce xxx_get_dma_range()
Add the following functions to get a specific device's DMA ranges: - dev_get_dma_range() - ofnode_get_dma_range() - of_get_dma_range() - fdt_get_dma_range() They are specially useful in oder to be able validate a physical address space range into a bus's and to convert addresses from and to address spaces. Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Peter Robinson <pbrobinson@gmail.com> Signed-off-by: Matthias Brugger <mbrugger@suse.com>
This commit is contained in:
committed by
Matthias Brugger
parent
c709243ee0
commit
51bdb50904
@@ -998,6 +998,22 @@ u64 ofnode_translate_address(ofnode node, const fdt32_t *in_addr);
|
||||
*/
|
||||
u64 ofnode_translate_dma_address(ofnode node, const fdt32_t *in_addr);
|
||||
|
||||
/**
|
||||
* ofnode_get_dma_range() - get dma-ranges for a specific DT node
|
||||
*
|
||||
* Get DMA ranges for a specifc node, this is useful to perform bus->cpu and
|
||||
* cpu->bus address translations
|
||||
*
|
||||
* @param blob Pointer to device tree blob
|
||||
* @param node_offset Node DT offset
|
||||
* @param cpu Pointer to variable storing the range's cpu address
|
||||
* @param bus Pointer to variable storing the range's bus address
|
||||
* @param size Pointer to variable storing the range's size
|
||||
* @return translated DMA address or OF_BAD_ADDR on error
|
||||
*/
|
||||
int ofnode_get_dma_range(ofnode node, phys_addr_t *cpu, dma_addr_t *bus,
|
||||
u64 *size);
|
||||
|
||||
/**
|
||||
* ofnode_device_is_compatible() - check if the node is compatible with compat
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user