1*83d290c5STom Rini# SPDX-License-Identifier: GPL-2.0+ 2024fba54SPaul Burton# 3024fba54SPaul Burton# Copyright (C) 2013 Imagination Technologies 4024fba54SPaul Burton# 5024fba54SPaul Burton# Programs a MIPS Malta boot flash with a flat binary image. 6024fba54SPaul Burton 7024fba54SPaul Burtonproc flash-boot { binfile } { 8024fba54SPaul Burton puts "flash monitor binary $binfile" 9024fba54SPaul Burton config Coherent on 10024fba54SPaul Burton config CoherencyDuringLoad on 11024fba54SPaul Burton 12024fba54SPaul Burton if {[endian]=="big"} { 13024fba54SPaul Burton puts "CPU in BE mode" 14024fba54SPaul Burton flash device sharp_16x32_be; 15024fba54SPaul Burton } else { 16024fba54SPaul Burton puts "CPU in LE mode" 17024fba54SPaul Burton flash device sharp_16x32; 18024fba54SPaul Burton } 19024fba54SPaul Burton 20024fba54SPaul Burton flash clear all; 21024fba54SPaul Burton flash set 0xBE000000..0xBE0FFFFF 22024fba54SPaul Burton flash erase sector 0xbe000000; 23024fba54SPaul Burton flash erase sector 0xbe020000; 24024fba54SPaul Burton flash erase sector 0xbe040000; 25024fba54SPaul Burton flash erase sector 0xbe060000; 26024fba54SPaul Burton flash erase sector 0xbe080000; 27024fba54SPaul Burton flash erase sector 0xbe0a0000; 28024fba54SPaul Burton flash erase sector 0xbe0c0000; 29024fba54SPaul Burton flash erase sector 0xbe0e0000; 30024fba54SPaul Burton puts "finished erasing boot flash"; 31024fba54SPaul Burton 32024fba54SPaul Burton puts "programming flash, please be patient" 33024fba54SPaul Burton load bin 0xbe000000 $binfile size4 34024fba54SPaul Burton 35024fba54SPaul Burton flash clear all 36024fba54SPaul Burton config CoherencyDuringLoad off 37024fba54SPaul Burton puts "finished programming boot flash"; 38024fba54SPaul Burton} 39