This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP L138 Writes to reserved memory writes on DDR address

Hi,

The OMAP L138 have the DDR mapped from 0xC000 0000 to 0xDFFF FFFF and next to it has a reserved zone, from 0xE000 0xFFFF FFFF.

Using devmem2 [1] it appears that any write to the reserved zone is mapped on ddr space.

For example,

root@arago:~# devmem2 0xE0000FF0
/dev/mem opened.
Memory mapped at address 0xb6f82000.
Read at address  0xE0000FF0 (0xb6f82ff0): 0xE3A0000B
root@arago:~# devmem2 0xC0000FF0
/dev/mem opened.
Memory mapped at address 0xb6fa1000.
Read at address  0xC0000FF0 (0xb6fa1ff0): 0xE3A0000B
root@arago:~# devmem2 0xC0000FF0 w 0x123
/dev/mem opened.
Memory mapped at address 0xb6f87000.
Read at address  0xC0000FF0 (0xb6f87ff0): 0xE3A0000B
Write at address 0xC0000FF0 (0xb6f87ff0): 0x00000123, readback 0x00000123
root@arago:~# devmem2 0xE0000FF0
/dev/mem opened.
Memory mapped at address 0xb6f08000.
Read at address  0xE0000FF0 (0xb6f08ff0): 0x00000123

The Memory Protection Unit don't offer any protection against this behavior, don't allow address so high but the write still goes to ddr, making memory corruption.

Any idea why we can block this behavior ?

Thanks.

Regards,
Aníbal

  •  

    AnIbal,

    Please refer to the latest version of the Datasheet for DDR2/mDDR Memory map starting at 0xC000 0000 to 0xCFFF FFFF .And for the reserved location starting at 0xD000 0000 to 0xFFFC FFFF

    http://www.ti.com/lit/ds/symlink/omap-l138.pdf

    Please define the updated memory map value for DDR2/mDDR and check once

    Regards

    Antony

  • Thank you for your reply.

    I don't know if my message was clear or if I don't quite understand your message.

    What I want is to prevent writes to reserved space, specially the ones that follow ddr.

    Is possible to configure the ddr/arm/dsp to restring the address that can access ? Memory Protection Unit don't work because don't protect the reserved address.

  • Hi Pinto,

    We've not guaranteed to Read/Write to the reserved memory location .Basically these are used for testing or for future enhancement.

    Reading and writing to the reserved memory location will cause invalid results

    Regards

    Antony

    •  --------------------------------------------------------------------------------------------------------
      Please click the Verify Answer button on this post if it answers your question.
      --------------------------------------------------------------------------------------------------------
  • Hi Antony,

    I have understood that I cannot write on reserved memory, but unfortunately it isn't been easy to explain that to dsp application ...

    And because the writes on reserved space (the ones that follow the ddr), write on ddr we hope to find a solution that blocks that writes, to prevent bad behavior from dsp.

    Do you know anything that can block the read/write to reserved memory ? The Memory Protection Unit (MPU) don't allow the full range of address :-(

    Thanks.

    Regards,
    Aníbal