| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- #!/bin/sh
- # SPDX-License-Identifier: GPL-2.0-only
- #
- # Copyright © 2020 David Woodhouse <[email protected]>
- #
- # Generate as "scatter file" for use with the MediaTek SP Flash tool for
- # writing images to MediaTek boards. This can be used to write images
- # even on a bricked board which has no preloader installed, or broken
- # U-Boot.
- #
- # NOTE: At the time of writing (2020-07-20), the Linux tool linked from
- # the front page of https://spflashtool.com/ is out of date and does not
- # support MT7623. The newer v5.1916 found on the download page at
- # https://spflashtool.com/download/ has been tested on UniElec U7623 and
- # Banana Pi R2 from Linux, and does work.
- #
- SOC=$1
- IMAGE=${2%.gz}
- PROJECT=${3%-scatter.txt}
- DEVICENAME="$4"
- cat <<EOF
- # OpenWrt eMMC scatter file for ${DEVICENAME}
- # For use with SP Flash Tool: https://spflashtool.com/download/
- #
- # Unzip the file system file ${PROJECT}-${IMAGE}.gz before flashing.
- # Connect the device's USB port, although it won't appear to the host yet.
- # Load this scatter file into the SP Flash Tool, select 'Format All + Download'
- # After pressing the 'Download' button, power on the board.
- # The /dev/ttyACM0 device should appear on USB and the tool should find it.
- - general: MTK_PLATFORM_CFG
- info:
- - config_version: V1.1.2
- platform: ${SOC}
- project: ${PROJECT}
- storage: EMMC
- boot_channel: MSDC_0
- block_size: 0x20000
- - partition_index: SYS0
- partition_name: PRELOADER
- file_name: ${PROJECT}-preloader.bin
- is_download: true
- type: SV5_BL_BIN
- linear_start_addr: 0x0
- physical_start_addr: 0x0
- partition_size: 0x40000
- region: EMMC_BOOT_1
- storage: HW_STORAGE_EMMC
- boundary_check: true
- is_reserved: false
- operation_type: BOOTLOADERS
- d_type: FALSE
- reserve: 0x00
- - partition_index: SYS1
- partition_name: OPENWRT
- file_name: ${PROJECT}-${IMAGE}
- is_download: true
- type: NORMAL_ROM
- linear_start_addr: 0x00000
- physical_start_addr: 0x00000
- partition_size: 0x4000000
- region: EMMC_USER
- storage: HW_STORAGE_EMMC
- boundary_check: true
- is_reserved: false
- operation_type: UPDATE
- d_type: FALSE
- reserve: 0x00
- EOF
|