Remoteproc: DRA7xx: Fix incorrect DSP HEAP1 address Commit 23a7eefaf8e2 ("Remoteproc: DRA7xx: Adjust entries to fix carveout allocation failures") has split up the single DSP heap at 0x95200000 of size 3 MB into two chunks of 2 MB and 1 MB. This erroneously used the address 0x95300000 for the second 1 MB chunk, when it should really be 0x95400000. Fix this properly. Fixes: 23a7eefaf8e2 ("Remoteproc: DRA7xx: Adjust entries to fix carveout allocation failures") Signed-off-by: Suman Anna <s-anna@ti.com>
K2: Use FW_RSC_ADDR_ANY for vrings in R5F resource table Mark the vring device addresses as FW_RSC_ADDR_ANY, so that Linux kernel knows it needs to update these to the actual dynamically allocated memory locations. The virtqueue driver itself will poll for the completion status of this update. Signed-off-by: Sam Nelson <sam.nelson@ti.com>
VirtQueue: K2: poll for init completion status Virtqueue device address is provided by host, so poll the completion status for this operation before proceeding. Otherwise we end up using bad virtqueue address. Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Remoteproc: AM65XX: Use FW_RSC_ADDR_ANY for vrings in R5F resource table Mark the vring device addresses as FW_RSC_ADDR_ANY, so that Linux kernel knows it needs to update these to the actual dynamically allocated memory locations. The virtqueue driver itself will poll for the completion status of this update. Signed-off-by: Sam Nelson <sam.nelson@ti.com>
VirtQueue: AM65X: poll for init completion status Virtqueue device address is provided by host, so poll the completion status for this operation before proceeding. Otherwise we end up using bad virtqueue address. Signed-off-by: Sam Nelson <sam.nelson@ti.com>
am65xx: Remove dependence on DEVMEM entry AM65XX does not have an IOMMU, and currently the DEVMEM entry is used as a work around. But in reality the VA and PA are directly mapped and dependence on DEVMEM to do the address translation need to be removed. Signed-off-by: Sam Nelson <sam.nelson@ti.com>
Remoteproc: DRA7xx: Use FW_RSC_ADDR_ANY for vrings in IPU resource table Mark the vring device addresses as FW_RSC_ADDR_ANY, so that Linux kernel knows it needs to update these to the actual dynamically allocated memory locations. The virtqueue driver itself will poll for the completion status of this update. Signed-off-by: Tero Kristo <t-kristo@ti.com>
Remoteproc: DRA7xx: Use FW_RSC_ADDR_ANY for vrings in DSP resource table Mark the vring device addresses as FW_RSC_ADDR_ANY, so that Linux kernel knows it needs to update these to the actual dynamically allocated memory locations. The virtqueue driver itself will poll for the completion status of this update. Signed-off-by: Tero Kristo <t-kristo@ti.com>
VirtQueue: dra7xx: poll for init completion status Virtqueue device address is provided by host, so poll the completion status for this operation before proceeding. Otherwise we end up using bad virtqueue address. Signed-off-by: Tero Kristo <t-kristo@ti.com>
Remoteproc: DRA7xx: Adjust entries to fix carveout allocation failures If the linux device tree uses DMA pools for carving out memory for the slave cores, the DMA pools uses the next power of 2 page order fitting the requested size (eg: 6 MB gets attempted to be allocated using 8 MB and at 8 MB alignments), and this may result in allocation failures if the overall DMA pool size does not have enough room to support the different RSC_CARVEOUT aligned size. This adjustment of the entries are updated carefully to make sure the allocation does not fail due to this alignment. The 1 MB IPC_DATA carveout entry is placed immediately after the vdev resource so that the image carveouts are always aligned on an even 2 MB boundary. Signed-off-by: Sam Nelson <sam.nelson@ti.com> Signed-off-by: Suman Anna <s-anna@ti.com>
Remoteproc: DRA7xx: Drop invalid MEM_IOBUFS devmem entry The MEM_IOBUFS DEVMEM entry of size 90 MB was a left-over from OMAP4/OMAP5 code, and this was used to map a static carveout of the same size at 0xBA300000 address into the DSP and IPU MMUs. This region is fully owned by the Linux kernel on DRA7xx/AM57xx SoCs, so it should not be mapped into the IPU and DSP memory space. Drop these invalid entries from both the IPU & DSP resource tables. Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Sam Nelson <sam.nelson@ti.com>
package.bld: Remove --gcc option --gcc is deprecated and will be removed in a subsequent release. GCC compatibility is implemented through the --relaxed_ansi option and is the default behavior of the compiler. Signed-off-by: Sam Nelson <sam.nelson@ti.com>
tests: Add error check to be more robust Signed-off-by: Sam Nelson <sam.nelson@ti.com>