Difference between revisions of "Electrosmith Daisy Seed"

From SEGGER Wiki
Jump to: navigation, search
m (Matthias moved page Daisy Seed to Electrosmith Daisy Seed)
(JLinkDevices.xml)
 
(2 intermediate revisions by the same user not shown)
Line 9: Line 9:
   
 
== Example implementation ==
 
== Example implementation ==
As described in the generic article, the reference flash algorithm is based on the SEGGER ''Open Flashloader'' and therefore needs to be added manually using a JLinkDevices.xml file. An example JLinkDevices.xml file as well as pinout used on the Daisy Seed board, is given below. For further information regarding the ''Open Flashloader'' and how to use the JLinkDevices.xml file, please refer to the J-Link User Manual (UM08001), chapter ''10 Open Flash Loader''.
+
As described in the generic article, the reference flash algorithm is based on the SEGGER ''Open Flashloader'' and therefore needs to be added manually using a JLinkDevices.xml file. An example JLinkDevices.xml file as well as pinout used on the Daisy Seed board, is given below. For further information regarding the ''Open Flashloader'' and how to use the JLinkDevices.xml file, please refer to the Open Flashloader article, section [[Open_Flashloader#Using_a_Precompiled_Flashloader | Using a precompiled Flashloader]].
   
 
===Quad-SPI Interface Pins===
 
===Quad-SPI Interface Pins===
Line 31: Line 31:
   
 
===JLinkDevices.xml===
 
===JLinkDevices.xml===
  +
* The following example creates a new device entry, that only supports flash programming for the QSPI flash.
 
<Database>
 
<Database>
 
<Device>
 
<Device>
Line 38: Line 39:
 
</Database>
 
</Database>
   
  +
* This example replaces the existing entry for the STM32H750IB QSPI flash bank with one that uses the Daisy Seed flashloader. All other flashbanks (Internal flash) are unaffected and can still be programmed as with STM32H750IB devices.
For further information how to include this flashloader into your J-Link software, please refer to:<br>
 
  +
{{Note|
https://wiki.segger.com/Adding_Support_for_New_Devices#Using_a_Precompiled_Flashloader
 
  +
*Please note that the default JLinkDevices.xml already comes with an entry for STM32H750IB. When devices entries have the same name, the last found entry is used. <br> To make sure that the correct flashloader is used, the entry below should replace the existing device entry.
  +
}}
  +
  +
<Database>
  +
<Device>
  +
<ChipInfo Vendor="ST" Name="STM32H750IB" />
  +
<FlashBankInfo Name="External QSPI flash" BaseAddr="0x90000000" MaxSize="0x04000000" Loader="Devices/ElectroSmith/DaisySeed_Flashloader.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" />
  +
</Device>
  +
</Database>
   
 
===Flash algorithm (*.elf)===
 
===Flash algorithm (*.elf)===

Latest revision as of 09:02, 29 October 2021

Electrosmith Daisy Seed

This article describes specifics for the Electrosmith Daisy Seed evaluation board. The board contains the ST STM32H750IBK6 chip and has an ISSI IS25LP064 64 MBit SPI flash.

QSPI Flash Programming Support

Before continuing with this article, please read the generic article about QSPI flash programming support on STM32H7 devices (STM32H7 (Q)SPI support).

Example implementation

As described in the generic article, the reference flash algorithm is based on the SEGGER Open Flashloader and therefore needs to be added manually using a JLinkDevices.xml file. An example JLinkDevices.xml file as well as pinout used on the Daisy Seed board, is given below. For further information regarding the Open Flashloader and how to use the JLinkDevices.xml file, please refer to the Open Flashloader article, section Using a precompiled Flashloader.

Quad-SPI Interface Pins

The Electrosmith Daisy Seed uses the following port pins to interface the (Q)SPI flash.

Alternate function Port / Pin
QSPI_CLK PF10
QSPI_CS PG6
QSPI_BK1_D0 PF8
QSPI_BK1_D1 PF9
QSPI_BK1_D2 PF7
QSPI_BK1_D3 PF6

JLinkDevices.xml

  • The following example creates a new device entry, that only supports flash programming for the QSPI flash.
<Database>
 <Device>
  <ChipInfo Vendor="ST" Name="STM32H750IB_DaisySeed" Core="JLINK_CORE_CORTEX_M7" WorkRAMAddr="0x24000000" WorkRAMSize="0x00080000"/>
  <FlashBankInfo Name="QSPI Flash" BaseAddr="0x90000000" MaxSize="0x04000000" Loader="Devices/ElectroSmith/DaisySeed_Flashloader.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" />
 </Device>
</Database>
  • This example replaces the existing entry for the STM32H750IB QSPI flash bank with one that uses the Daisy Seed flashloader. All other flashbanks (Internal flash) are unaffected and can still be programmed as with STM32H750IB devices.
Note:
  • Please note that the default JLinkDevices.xml already comes with an entry for STM32H750IB. When devices entries have the same name, the last found entry is used.
    To make sure that the correct flashloader is used, the entry below should replace the existing device entry.
<Database>
 <Device>
  <ChipInfo Vendor="ST" Name="STM32H750IB" />
  <FlashBankInfo Name="External QSPI flash" BaseAddr="0x90000000" MaxSize="0x04000000" Loader="Devices/ElectroSmith/DaisySeed_Flashloader.elf" LoaderType="FLASH_ALGO_TYPE_OPEN" />
 </Device> 
</Database>

Flash algorithm (*.elf)

This file contains the program routines used by the J-Link DLL during flash programming for single SPI flash using the above described pins.