[SOLVED] I would like the explanation of JLinkDevices.xml to be easier to understand.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] I would like the explanation of JLinkDevices.xml to be easier to understand.

    I'm using OZone, JFlash, Flasher Portable with Open Flash Loader for custom board using STM32F730V8, but I ran into unnecessary troubles due to lack of understanding of how to write JLinkDevices.xml.
    The following description is tested with OZone (v3.22a) and J-Link (V6.92). Also, by executing JLinkDLLUpdater.exe, OZone is set to refer to J-Link (v6.92).

    1) Inheritance of existing device settings
    From the J-Link release notes and the URL below, I thought that it could not be inherited with the Aliases attribute, but when I tried it with J-Link of v6.92, I found that it could be inherited with Aliases.
    However, regarding FlashBankInfo, OZone has the expected settings, but JFlash does not reflect the settings.



    [SOLVED] JFlash/JLink v6.34e and Aliases in JLinkDevices.xml

    For example, when the following settings are added to JLinkDevices.xml, the device selection screen for OZone and JFlash is as follows.

    JLinkDevices.xml

    XML Source Code

    1. <Device>
    2. <ChipInfo Vendor="ST" Name="STM32F730V8" Core="JLINK_CORE_CORTEX_M7" Aliases="Palawan_1;Palawan_2" />
    3. </Device>
    4. <Device>
    5. <ChipInfo Vendor="ST" Name="Palawan_1" Core="JLINK_CORE_CORTEX_M7" WorkRAMAddr="0x20010000" WorkRAMSize="0x0002C000" />
    6. <FlashBankInfo Name="QSPI Flash" BaseAddr="0x90000000" MaxSize="0x01000000" Loader="Devices/ST/STM32F7/ST_STM32F730V8_Palawan_QSPI.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" AlwaysPresent="1" />
    7. </Device>
    8. <Device>
    9. <ChipInfo Vendor="ST" Name="Palawan_2" Core="JLINK_CORE_CORTEX_M7" WorkRAMAddr="0x20020000" WorkRAMSize="0x0001C000" />
    10. <FlashBankInfo Name="QSPI Flash" BaseAddr="0x90000000" MaxSize="0x08000000" Loader="Devices/ST/STM32F7/ST_STM32F730V8_Palawan_QSPI.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" AlwaysPresent="1" />
    11. </Device>
    Display All
    OZone:
    forum.segger.com/index.php/Att…02b592e61cfb4fa17e83f7a31


    JFlash:
    forum.segger.com/index.php/Att…02b592e61cfb4fa17e83f7a31

    forum.segger.com/index.php/Att…02b592e61cfb4fa17e83f7a31forum.segger.com/index.php/Att…02b592e61cfb4fa17e83f7a31forum.segger.com/index.php/Att…02b592e61cfb4fa17e83f7a31



    2) Regarding WorkRAMAddr and WorkRAMSize
    Regarding WorkRAMAddr and WorkRAMSize, if you do not set it in JLinkDevices.xml, it seems that the default values built into J-Link (WorkRAMAddr = 0x20020000, WorkRAMSize = 0x1C000 for STM32F730V8) are used, but JFlash ignores this setting. And it works as expected with the Flash Loader settings (Loader Project MemoryMap.xml settings). In contrast, OZone always follows WorkRAMAddr and WorkRAMSize.

    For this reason, I was worried about why FlashLoader, which works with JFlash, does not work with OZone. It happened that when I checked the contents of the RAM, I found that the FlashLoader wasn't loaded at the expected address, and realized the need for WorkRAMAddr and WorkRAMSize.
  • Hi,
    Thank you for your inquiry and sorry for the delay in response.
    This somehow slipped through.

    Unfortunately, it seems like something went wrong when you uploaded the pictures.
    I am not able to see them.

    In general, regarding to your case:
    If a device is extended (as in your case with the STM32F730V8),
    you would not have to add the Work-RAM, as it is already selected for this device.
    If you still want to add the RAM, we recommend to use the values we use in our DLL:
    Addr: 0x20020000; Size: 0x1C000
    This would also have to be added to the ES Project.

    If you have any problems with this, please come back to us and we will try to help.

    I would also recommend to take a look at this section:
    wiki.segger.com/Open_Flashload…ending_an_Existing_Device

    Best regards,
    Fabian
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.