1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-01 00:32:04 +02:00

dm: core: Introduce xxx_translate_dma_address()

Add the following functions to translate DMA address to CPU address:
- dev_translate_dma_address()
- ofnode_translate_dma_address()
- of_translate_dma_address()
- fdt_translate_dma_address()
These functions work the same way as xxx_translate_address(), with the
difference that the translation relies on the "dma-ranges" property
instead of the "ranges" property.

Add related test. Test report:
=> ut dm fdt_translation
Test: dm_test_fdt_translation: test-fdt.c
Test: dm_test_fdt_translation: test-fdt.c (flat tree)
Failures: 0

Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
This commit is contained in:
Fabien Dessenne
2019-05-31 15:11:30 +02:00
committed by Patrick Delaunay
parent 0de8153564
commit 641067fb0c
10 changed files with 115 additions and 2 deletions

View File

@@ -1292,6 +1292,12 @@ u64 fdt_translate_address(const void *blob, int node_offset,
return __of_translate_address(blob, node_offset, in_addr, "ranges");
}
u64 fdt_translate_dma_address(const void *blob, int node_offset,
const fdt32_t *in_addr)
{
return __of_translate_address(blob, node_offset, in_addr, "dma-ranges");
}
/**
* fdt_node_offset_by_compat_reg: Find a node that matches compatiable and
* who's reg property matches a physical cpu address