fixed flash scripts (flash sector erase was not correct) which are now all verified and working
This commit is contained in:
@@ -72,14 +72,23 @@ flash 0xE0000000
|
|||||||
# flash-plugin (target-based flashing) does not work yet
|
# flash-plugin (target-based flashing) does not work yet
|
||||||
#flash-plugin 0x10000000 0x4000 flash29.plugin
|
#flash-plugin 0x10000000 0x4000 flash29.plugin
|
||||||
|
|
||||||
erase 0xE0000000 0
|
# Erase flash from 0xE0000000 to 0xE00FFFFF (reserved space for BaS)
|
||||||
erase 0xE0000000 0x1000
|
#
|
||||||
erase 0xE0000000 0x2000
|
# Caution: sector offset numbers need to be the ones from the x16 address range
|
||||||
erase 0xE0000000 0x3000
|
# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
|
||||||
|
#
|
||||||
|
# contrary to documentation, it seems we need to erase-wait after each sector
|
||||||
|
|
||||||
|
erase 0xE0000000 0x00000
|
||||||
|
erase-wait 0xE0000000
|
||||||
|
erase 0xE0000000 0x08000
|
||||||
|
erase-wait 0xE0000000
|
||||||
|
erase 0xE0000000 0x10000
|
||||||
|
erase-wait 0xE0000000
|
||||||
|
erase 0xE0000000 0x18000
|
||||||
erase-wait 0xE0000000
|
erase-wait 0xE0000000
|
||||||
|
|
||||||
load -v bas.elf
|
load -v bas.elf
|
||||||
#load -v ram.elf
|
|
||||||
wait
|
wait
|
||||||
sleep 100
|
sleep 100
|
||||||
execute
|
execute
|
||||||
|
|||||||
@@ -13,24 +13,44 @@ write 0xFF000504 0x007F0001 4
|
|||||||
# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
|
# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
|
||||||
flash 0xe0000000
|
flash 0xe0000000
|
||||||
|
|
||||||
# flash-plugin (target-based flashing) does not work yet
|
# Erase flash from 0xE0600000 to 0xE06FFFFF (reserved space for EmuTOS)
|
||||||
# flash-plugin 0x10000000 0x4000 flash29.plugin
|
#
|
||||||
|
# Caution: sector offset numbers need to be the ones from the x16 address range
|
||||||
|
# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
|
||||||
|
#
|
||||||
|
# contrary to documentation, it seems we need to erase-wait after each sector
|
||||||
|
|
||||||
erase 0xe0000000 0x600000
|
erase 0xe0000000 0x300000
|
||||||
erase 0xe0000000 0x610000
|
|
||||||
erase 0xe0000000 0x620000
|
|
||||||
erase 0xe0000000 0x630000
|
|
||||||
erase 0xe0000000 0x640000
|
|
||||||
erase 0xe0000000 0x650000
|
|
||||||
erase 0xe0000000 0x660000
|
|
||||||
erase 0xe0000000 0x670000
|
|
||||||
erase 0xe0000000 0x680000
|
|
||||||
erase 0xe0000000 0x690000
|
|
||||||
erase 0xe0000000 0x6a0000
|
|
||||||
erase 0xe0000000 0x6b0000
|
|
||||||
erase 0xe0000000 0x6c0000
|
|
||||||
erase 0xe0000000 0x6d0000
|
|
||||||
erase 0xe0000000 0x6e0000
|
|
||||||
erase 0xe0000000 0x6f0000
|
|
||||||
erase-wait 0xe0000000
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x308000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x310000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x318000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x320000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x328000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x330000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x338000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x340000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x348000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x350000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x358000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x360000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x368000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x370000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x378000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
|
||||||
load -v emutosfb.elf
|
load -v emutosfb.elf
|
||||||
|
|||||||
@@ -16,7 +16,44 @@ flash 0xe0000000
|
|||||||
# flash-plugin (target-based flashing) does not work yet
|
# flash-plugin (target-based flashing) does not work yet
|
||||||
# flash-plugin 0x10000000 0x4000 flash29.plugin
|
# flash-plugin 0x10000000 0x4000 flash29.plugin
|
||||||
|
|
||||||
|
# Erase flash from 0xE0400000 to 0xE04FFFFF (reserved space for FireTOS)
|
||||||
|
#
|
||||||
|
# Caution: sector offset numbers need to be the ones from the x16 address range
|
||||||
|
# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
|
||||||
|
#
|
||||||
# contrary to documentation, it seems we need to erase-wait after each sector
|
# contrary to documentation, it seems we need to erase-wait after each sector
|
||||||
#erase 0xe0000000 -1
|
|
||||||
#erase-wait 0xe0000000
|
erase 0xe0000000 0x200000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x208000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x210000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x218000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x220000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x228000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x230000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x238000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x240000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x248000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x250000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x258000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x260000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x268000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x270000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x278000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
|
||||||
load -v firetos.elf
|
load -v firetos.elf
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
# firebee board initialization for bdmctrl
|
# firebee board initialization for bdmctrl
|
||||||
#
|
#
|
||||||
open $1
|
open $1
|
||||||
reset
|
#reset
|
||||||
|
|
||||||
# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
|
# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
|
||||||
write 0xFF000500 0xE0000000 4
|
write 0xFF000500 0xE0000000 4
|
||||||
@@ -14,9 +14,64 @@ write 0xFF000504 0x007F0001 4
|
|||||||
flash 0xe0000000
|
flash 0xe0000000
|
||||||
|
|
||||||
# flash-plugin (target-based flashing) does not work yet
|
# flash-plugin (target-based flashing) does not work yet
|
||||||
# flash-plugin 0x10000000 0x4000 flash29.plugin
|
#flash-plugin 0x10000000 0x4000 flash29.plugin
|
||||||
|
|
||||||
|
# Erase flash from 0xE0700000 to 0xE07FFFFF (reserved space for FPGA)
|
||||||
|
#
|
||||||
|
# Caution: sector offset numbers need to be the ones from the x16 address range
|
||||||
|
# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
|
||||||
|
#
|
||||||
# contrary to documentation, it seems we need to erase-wait after each sector
|
# contrary to documentation, it seems we need to erase-wait after each sector
|
||||||
#erase 0xe0000000 -1
|
|
||||||
#erase-wait 0xe0000000
|
erase 0xe0000000 0x380000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x388000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x390000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x398000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3A0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3A0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3A8000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3B0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3B8000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3C0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3C8000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3D0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3D8000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3E0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3E8000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3F0000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3F8000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3F9000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3FA000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3FB000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3FC000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3FD000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3FE000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
erase 0xe0000000 0x3FF000
|
||||||
|
erase-wait 0xe0000000
|
||||||
|
|
||||||
|
wait
|
||||||
|
|
||||||
load -v FPGA.elf
|
load -v FPGA.elf
|
||||||
|
|||||||
72
SD_CARD/BaS_gcc/run_bas.bdm
Executable file
72
SD_CARD/BaS_gcc/run_bas.bdm
Executable file
@@ -0,0 +1,72 @@
|
|||||||
|
#!/usr/local/bin/bdmctrl -D2
|
||||||
|
#
|
||||||
|
# firebee board initialization for bdmctrl
|
||||||
|
#
|
||||||
|
open $1
|
||||||
|
reset
|
||||||
|
sleep 10
|
||||||
|
|
||||||
|
wait
|
||||||
|
|
||||||
|
# set VBR
|
||||||
|
#write-ctrl 0x0801 0x00000000
|
||||||
|
sleep 10
|
||||||
|
# Turn on MBAR at 0xFF00_0000
|
||||||
|
write-ctrl 0x0C0F 0xFF000000
|
||||||
|
|
||||||
|
# Turn on MMUBAR at 0xFF04_0000
|
||||||
|
write-ctrl 0x0008 0xFF040001
|
||||||
|
|
||||||
|
# Turn on RAMBAR0 at address FF10_0000
|
||||||
|
write-ctrl 0x0C04 0xFF100007
|
||||||
|
sleep 10
|
||||||
|
# Turn on RAMBAR1 at address FF10_1000
|
||||||
|
write-ctrl 0x0C05 0xFF101001
|
||||||
|
sleep 10
|
||||||
|
|
||||||
|
# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
|
||||||
|
write 0xFF000500 0xE0000000 4
|
||||||
|
write 0xFF000508 0x00001180 4
|
||||||
|
write 0xFF000504 0x007F0001 4
|
||||||
|
# Init CS1 (Atari I/O address range)
|
||||||
|
write 0xFF00050C 0xFFF00000 4
|
||||||
|
write 0xFF000514 0x00002180 4
|
||||||
|
write 0xFF000510 0x000F0001 4
|
||||||
|
# Init CS2 (FireBee 32 bit I/O address range)
|
||||||
|
write 0xFF000518 0xF0000000 4
|
||||||
|
write 0xFF000520 0x00002100 4
|
||||||
|
write 0xFF00051C 0x07FF0001 4
|
||||||
|
# Init CS3 (FireBee 16 bit I/O address range)
|
||||||
|
write 0xFF000524 0xF8000000 4
|
||||||
|
write 0xFF00052C 0x00000180 4
|
||||||
|
write 0xFF000528 0x03FF0001 4
|
||||||
|
# Init CS4 (FireBee video address range)
|
||||||
|
write 0xFF000530 0x40000000 4
|
||||||
|
write 0xFF000538 0x00000018 4
|
||||||
|
write 0xFF000534 0x003F0001 4
|
||||||
|
|
||||||
|
|
||||||
|
# SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes
|
||||||
|
write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
|
||||||
|
write 0xFF000020 0x0000001A 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
|
||||||
|
write 0xFF000024 0x0800001A 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
|
||||||
|
write 0xFF000028 0x1000001A 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
|
||||||
|
write 0xFF00002C 0x1800001A 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
|
||||||
|
write 0xFF000108 0x73622830 4 # SDCFG1
|
||||||
|
write 0xFF00010C 0x46770000 4 # SDCFG2
|
||||||
|
|
||||||
|
write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
|
||||||
|
write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
|
||||||
|
write 0xFF000100 0x048D0000 4 # SDMR (write to LMR)
|
||||||
|
write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
|
||||||
|
write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
|
||||||
|
write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
|
||||||
|
write 0xFF000100 0x008D0000 4 # SDMR (write to LMR)
|
||||||
|
write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
|
||||||
|
|
||||||
|
write 0xFF000240 0x80000000 4 # disable watchdog arbiter
|
||||||
|
|
||||||
|
load -v ram.elf
|
||||||
|
wait
|
||||||
|
sleep 100
|
||||||
|
execute
|
||||||
Reference in New Issue
Block a user