Hi Siarhei,
Le dim., oct. 16 2022 at 18:12:56 +0300, Siarhei Volkau
<lis8215@xxxxxxxxx> a écrit :
The JZ4755 has 4 DMA channels per DMA unit, two idential DMA units.
The JZ4755 has the similar DMA engine to JZ4725b, so I assume it has
the
same bug as JZ4725b, see commit a40c94be2336.
Can you verify that?
It should be pretty simple, if it has the bug you'll see I/O errors on
the SD card.
Cheers,
-Paul
Signed-off-by: Siarhei Volkau <lis8215@xxxxxxxxx>
---
drivers/dma/dma-jz4780.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/dma/dma-jz4780.c b/drivers/dma/dma-jz4780.c
index 2a483802d..9c1a6e9a9 100644
--- a/drivers/dma/dma-jz4780.c
+++ b/drivers/dma/dma-jz4780.c
@@ -1038,6 +1038,13 @@ static const struct jz4780_dma_soc_data
jz4725b_dma_soc_data = {
JZ_SOC_DATA_BREAK_LINKS,
};
+static const struct jz4780_dma_soc_data jz4755_dma_soc_data = {
+ .nb_channels = 4,
+ .transfer_ord_max = 5,
+ .flags = JZ_SOC_DATA_PER_CHAN_PM | JZ_SOC_DATA_NO_DCKES_DCKEC |
+ JZ_SOC_DATA_BREAK_LINKS,
+};
+
static const struct jz4780_dma_soc_data jz4760_dma_soc_data = {
.nb_channels = 5,
.transfer_ord_max = 6,
@@ -1101,6 +1108,7 @@ static const struct jz4780_dma_soc_data
x1830_dma_soc_data = {
static const struct of_device_id jz4780_dma_dt_match[] = {
{ .compatible = "ingenic,jz4740-dma", .data = &jz4740_dma_soc_data
},
{ .compatible = "ingenic,jz4725b-dma", .data =
&jz4725b_dma_soc_data },
+ { .compatible = "ingenic,jz4755-dma", .data = &jz4755_dma_soc_data
},
{ .compatible = "ingenic,jz4760-dma", .data = &jz4760_dma_soc_data
},
{ .compatible = "ingenic,jz4760-mdma", .data =
&jz4760_mdma_soc_data },
{ .compatible = "ingenic,jz4760-bdma", .data =
&jz4760_bdma_soc_data },
--
2.36.1