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.

Linux/AM3894: [AM3894] Inquiries about changing the Linux memory map

Part Number: AM3894

Tool/software: Linux

Hello,

I am currently trying to change the physical memory from 2 GB to 1 GB on the AM3894.
At this time, I try to make 256MB of kernel memory and 768MB of User memory, but there is one problem.

Although we worked on referring to the 256MB System Memory Map specified in the EZSDK Memory Map, there was a problem loading the Media Controller firmware.
As a result, it is not possible to change the memory address of the Media Controller firmware (dm816x_hdvicp.xem3 and dm816x_hdvpss.xem3), so the Memory Map can not be applied.

So, I would like to ask if you can provide dm816x_hdvicp.xem3 and dm816x_hdvpss.xem3 files for 256MB.

  • Hi Unseok,

    AM389x device comes with EZSDK. By Default, the EZSDK Ships with a memory map that is configured for 1GB of DDR. The default xem3 binaries are for 1GB memory map. You can remove these binaries (if you want that) from load-firmware-start.sh script.

    Check also below wiki pages:

    Regards,
    Pavel

  • Hi Pavel,

    I know that it basically provides the Media Controller firmware for 1GB Memory Map (dm816x_hdvicp.xem3 and dm816x_hdvpss.xem3) files.

    And as mentioned above, EZSDK Memory Map describes that 256MB Memory Map can be configured, so we are going to change Memory Map.

    We must use the Media Controller firmware (dm816x_hdvicp.xem3 and dm816x_hdvpss.xem3). However, we can not change the Memory Address in the Media Controller firmware because the Media Controller firmware code is not provided.

    So I want to make sure that you can provide the Media Controller firmware for 256MB Memory Map and Memory Map for xem3(MemSegmentDefinition.xs) in addition to the basic Media Controller firmware.

    Please check this issue again.

    Regards,

    Unseok Ham

  • Unseok,

    1GB default memory map means that you have 684MB (364MB + 320MB) for Linux kernel and 364MB for the rest (CMEM, DSP, M3, IPC, etc).

    unseok ham said:
    So I want to make sure that you can provide the Media Controller firmware for 256MB Memory Map and Memory Map for xem3(MemSegmentDefinition.xs) in addition to the basic Media Controller firmware.

    I do not have 256MB M3 firmware version.

    The EZSDK is designed so that the heaps used by the two M3 cores are actually adjustable without having to rebuild the M3 binaries (.xem3). Please refer to the DOC file attached to the below e2e post:

    Check also below e2e threads:

    Regards,
    Pavel

  • Hi, Pavel

    According to EZSDK - MEMORY MAP TABLE (DEFAULT 1GB SYSTEM), category with green color code Memory used for regions that can be adjusted without rebuilding Media Controller executable.

     


     

     

    So, I can change address for IPC_SR_MC_HDVICP2_HDVPSS (IPC_SR_VIDEO_M3_VPSS_M3) from 0x9A100000 to 0x8A100000 and IPC_SR_FRAME_BUFFERS from 0xB3D00000 to 0xA9100000 as Sample MEMORY MAP TABLE FOR 256MB SYSTEM.

    But, category with red color code Memory Reserved for Media Controller Executables.

    And NOTE says Shared Region IPC_SR_COMMON is statically configured within all slave executables.

    Then, how can I change address for IPC_SR_COMMON from 0x9F700000 to 0x8F700000 and other red color code Memory like LOGGER_SM, MEMCFG_SPACE, etc. as Sample MEMORY MAP TABLE FOR 256MB SYSTEM?

     



    Regards,

    Unseok Ham

  • Unseok Ham,

    Check below e2e threads regarding EZSDK 256mb memory map:


    For detailed EZSDK SW support, you can refer to the below e2e post:

    Regards,
    Pavel

  • Hi Pavel,

    I have checked all of the links you mentioned above and the changes to the EZSDK Mamory Map described on the wiki, but I still have problems loading the Media Controller firmware.

    I would like to know if there is really a way I can do without rebuilding the Media Controller Firmware to run properly on the EZSDK 256MB memory map.(Specifically, how to change address for IPC_SR_COMMON from 0x9F700000 to 0x8F700000)

    Regards,

    Unseok Ham

  • Unseok,

    For detailed EZSDK SW support, you can reach out to one of the following third parties:

    Regards,
    Pavel