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

86 lines
1.9 KiB
Plaintext

; --------------------------------------------------------------------------------
; @Title: NVIDIA TEGRA250 NAND FLASH Programming Script
; @Description:
; NAND FLASH(HYNIX,27UF08) is connected NANDCE0
;
; Internal SRAM : 0x40000000
; NFC Base Register : 0x70008000
;
; @Author: jjeong
; @Copyright: (C) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
; @Keywords: HYNIX 27UF08 NAND
; --------------------------------------------------------------------------------
; $Id: tegra250-nand2g08.cmm 10516 2022-02-02 11:39:30Z bschroefel $
LOCAL &arg1
ENTRY &arg1
&arg1=STRing.UPpeR("&arg1") // for example "PREPAREONLY"
SYStem.RESet
SYStem.JtagClock RTCK
SYStem.CPU CORTEXA9
SYStem.Option DACR ON
SYStem.Option EnReset OFF
SYStem.CONFIG.COREBASE APB:0x80010000
SYStem.CONFIG.IRPRE 0.
SYStem.CONFIG.IRPOST 0.
SYStem.CONFIG.DRPRE 0.
SYStem.CONFIG.DRPOST 0.
SYStem.CONFIG.DAPIRPOST 4
SYStem.CONFIG.DAPDRPOST 1
SYStem.CONFIG.DAPIRPRE 0
SYStem.CONFIG.DAPDRPRE 0
Trace.DISable
SYStem.Mode.Attach
IF STATE.RUN()
Break.direct
SYStem.Option.INTDIS ON
&cp15=Data.Long(C15:0x1)
IF (&cp15&0x1)==0x1
(
PRINT "MMU Address"
;D.S ZSD:0xFE7080144 %LE %LONG 0xC8830000 ; Ecc
FLASHFILE.CONFIG 0xFE708000 0x0 0x0
FLASHFILE.TARGET 0xCF800000++0x1FFF 0xCF802000++0x1FFF ~~/demo/arm/flash/byte/nand2g08_tegra.bin
)
ELSE
(
;D.S ZSD:0x700080144 %LE %LONG 0xC8830000 ; Ecc
FLASHFILE.RESet
FLASHFILE.CONFIG 0x70008000 0x0 0x0
FLASHFILE.TARGET 0x40000000++0x1FFF 0x40002000++0x1FFF ~~/demo/arm/flash/byte/nand2g08_tegra.bin
)
//Read FLASH Manufacture and Device ID
FLASHFILE.GETID
//End of the test prepareonly
IF "&arg1"=="PREPAREONLY"
ENDDO
//Erase NAND FLASH Main and Bad block inforamtion
; FLASHFILE.ERASE 0x0--0xFFFFFFF /EraseBadBlocks
//Write NAND FLASH
; FLASHFILE.LOAD * 0x0 /WriteBadBlocks
//Dump Window
FLASHFILE.DUMP 0x0 ; Main Area
; FLASHFILE.DUMP 0x0 /Spare /Track ; Spare Area
ENDDO