1*024fba54SPaul Burton# 2*024fba54SPaul Burton# Copyright (C) 2013 Imagination Technologies 3*024fba54SPaul Burton# 4*024fba54SPaul Burton# Programs a MIPS Malta boot flash with a flat binary image. 5*024fba54SPaul Burton# 6*024fba54SPaul Burton# SPDX-License-Identifier: GPL-2.0+ 7*024fba54SPaul Burton# 8*024fba54SPaul Burton 9*024fba54SPaul Burtonproc flash-boot { binfile } { 10*024fba54SPaul Burton puts "flash monitor binary $binfile" 11*024fba54SPaul Burton config Coherent on 12*024fba54SPaul Burton config CoherencyDuringLoad on 13*024fba54SPaul Burton 14*024fba54SPaul Burton if {[endian]=="big"} { 15*024fba54SPaul Burton puts "CPU in BE mode" 16*024fba54SPaul Burton flash device sharp_16x32_be; 17*024fba54SPaul Burton } else { 18*024fba54SPaul Burton puts "CPU in LE mode" 19*024fba54SPaul Burton flash device sharp_16x32; 20*024fba54SPaul Burton } 21*024fba54SPaul Burton 22*024fba54SPaul Burton flash clear all; 23*024fba54SPaul Burton flash set 0xBE000000..0xBE0FFFFF 24*024fba54SPaul Burton flash erase sector 0xbe000000; 25*024fba54SPaul Burton flash erase sector 0xbe020000; 26*024fba54SPaul Burton flash erase sector 0xbe040000; 27*024fba54SPaul Burton flash erase sector 0xbe060000; 28*024fba54SPaul Burton flash erase sector 0xbe080000; 29*024fba54SPaul Burton flash erase sector 0xbe0a0000; 30*024fba54SPaul Burton flash erase sector 0xbe0c0000; 31*024fba54SPaul Burton flash erase sector 0xbe0e0000; 32*024fba54SPaul Burton puts "finished erasing boot flash"; 33*024fba54SPaul Burton 34*024fba54SPaul Burton puts "programming flash, please be patient" 35*024fba54SPaul Burton load bin 0xbe000000 $binfile size4 36*024fba54SPaul Burton 37*024fba54SPaul Burton flash clear all 38*024fba54SPaul Burton config CoherencyDuringLoad off 39*024fba54SPaul Burton puts "finished programming boot flash"; 40*024fba54SPaul Burton} 41