Re: [PATCH v5 13/15] MIPS: JZ4770: Workaround for corrupted DMA transfers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hi,
Hi,

[...]

 +/*
+ * We have seen MMC DMA transfers read corrupted data from SDRAM when a burst + * interval ends at physical address 0x10000000. To avoid this problem, we
 + * remove the final page of low memory from the memory map.
 + */
 +void __init jz4770_reserve_unsafe_for_dma(void)
 +{
 +       int i;
 +
 +       for (i = 0; i < boot_mem_map.nr_map; i++) {
+ struct boot_mem_map_entry *entry = boot_mem_map.map + i;
 +
 +               if (entry->type != BOOT_MEM_RAM)
 +                       continue;
 +
 +               if (entry->addr + entry->size != 0x10000000)
 +                       continue;
 +
 +               entry->size -= PAGE_SIZE;
 +               break;
 +       }
 +}
 +

Just a wild idea (probably bad too). Changing the memory node in the
device tree to skip this physical address would work I think. What is
your opinion about that?

I guess it would work as well, but I don't think this fix should be in devicetree.

-Paul

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux