Files
Gen4_R-Car_Trace32/2_Trunk/demo/arm/flash/pxa27x.cmm
2025-10-14 09:52:32 +09:00

113 lines
3.1 KiB
Plaintext

; --------------------------------------------------------------------------------
; @Title: Example script for programming of PXA27x internal flash.
;
; @Description:
; Internal flash Memory:
; PXA270 no internal flash
; PXA271 32 MByte at 0x00000000--0x01ffffff (16 bit data bus)
; PXA272 64 MByte at 0x00000000--0x03ffffff (32 bit data bus)
; PXA273 32 MByte at 0x00000000--0x01ffffff (32 bit data bus)
;
; @Author: WRD
; @Copyright: (C) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
; @Chip: PXA27*
; --------------------------------------------------------------------------------
; $Id: pxa27x.cmm 10516 2022-02-02 11:39:30Z bschroefel $
; wrd - 21.10.2004
;
; --------------------------------------------------------------------------------
; Select target controlled flash programming or Trace32 tool based
; flash method:
; &flashtarget="yes" | "no"
; Target controlled flash algorithm will need RAM for the flash algorithm
; and for the data buffer.
&flashtarget="no"
IF "&flashtarget"=="yes"
&ramaddr=tbd
; --------------------------------------------------------------------------------
; Flash declaration
;
; Detect selected CPU to declare flash
&cpu=SYStem.CPU()
; Reset flash declaration
FLASH.RESet
IF "&cpu"=="PXA270"
(
; PXA270 does not have internal flash
ENDDO
)
IF "&cpu"=="PXA271"
(
; PXA271 internal flash
IF "&flashtarget"=="no"
(
FLASH.Create 1. 0x00000000--0x0001ffff 0x08000 I28F200K3 Word
FLASH.Create 1. 0x00020000--0x01ffffff 0x20000 I28F200K3 Word
)
ELSE
(
FLASH.Create 1. 0x00000000--0x0001ffff 0x08000 TARGET Word
FLASH.Create 1. 0x00020000--0x01ffffff 0x20000 TARGET Word
FLASH.TARGET &ramaddr &ramaddr+0x1000 0x1000 ~~/demo/arm/flash/word/i28f200k3.bin
)
)
IF "&cpu"=="PXA272"
(
; PXA272 internal flash
IF "&flashtarget"=="no"
(
FLASH.Create 1. 0x00000000--0x0003ffff 0x10000 I28F200K3 Long
FLASH.Create 1. 0x00040000--0x03ffffff 0x40000 I28F200K3 Long
)
ELSE
(
FLASH.Create 1. 0x00000000--0x0003ffff 0x10000 TARGET Long
FLASH.Create 1. 0x00040000--0x03ffffff 0x40000 TARGET Long
FLASH.TARGET &ramaddr &ramaddr+0x1000 0x1000 ~~/demo/arm/flash/long/i28f200k3.bin
)
)
IF "&cpu"=="PXA273"
(
; PXA273 internal flash
IF "&flashtarget"=="no"
(
FLASH.Create 1. 0x00000000--0x0003ffff 0x10000 I28F200K3 Long
FLASH.Create 1. 0x00040000--0x01ffffff 0x40000 I28F200K3 Long
)
ELSE
(
FLASH.Create 1. 0x00000000--0x0003ffff 0x10000 TARGET Long
FLASH.Create 1. 0x00040000--0x01ffffff 0x40000 TARGET Long
FLASH.TARGET &ramaddr &ramaddr+0x1000 0x1000 ~~/demo/arm/flash/long/i28f200k3.bin
)
)
; --------------------------------------------------------------------------------
; Example downloading an application to internal flash.
DIALOG.YESNO "Program flash memory?"
ENTRY &progflash
IF &progflash
(
; All sectors are locked after power-up and need to be unlocked to
; program any data to flash.
FLASH.UNLOCK ALL
; Erase flash
FLASH.Erase ALL
; Program flash
FLASH.Program.ALL
Data.LOAD.auto *
FLASH.Program.off
; If wanted, relock all sectors after programming
FLASH.LOCK ALL
)
ENDDO