On 09/08/2016 12:16 AM, John Crispin wrote:

On 08/09/2016 07:04, J Mo wrote:
The tew827dru requires a u-boot hush shell script to install it's factory image. Additionally, a 
"bootconfig" partition blob is needed to direct the OEM's "Fail Safe" system to 
boot from the proper UBI partition.

Signed-off-by: jmomo <jm...@jmomo.net>
---
  .../linux/ipq806x/image/tew827dru-bootconfig.bin   | Bin 0 -> 84 bytes
  target/linux/ipq806x/image/tew827dru-flash.scr     |  57 +++++++++++++++++++++
  2 files changed, 57 insertions(+)
  create mode 100644 target/linux/ipq806x/image/tew827dru-bootconfig.bin
  create mode 100644 target/linux/ipq806x/image/tew827dru-flash.scr

target/linux/ipq806x/image/tew827dru-flash.scr
        This u-boot hush shell script is required to install the factory image 
via the u-boot HTTP backup loader.
        If this file should be moved somewhere else, let me know.

target/linux/ipq806x/image/tew827dru-bootconfig.bin
        This binary blob is used by the OEM's "Fail Safe" boot system.
        This gets installed by the u-boot script above.
        If this file should be moved somewhere else, let me know.

diff --git a/target/linux/ipq806x/image/tew827dru-bootconfig.bin 
b/target/linux/ipq806x/image/tew827dru-bootconfig.bin
new file mode 100644
index 
0000000000000000000000000000000000000000..16816a91a70ad71120c49a1ab7f13681cb023a65
GIT binary patch
literal 84
zcmZ3maPd+GAYcY!11raXfM6#d5FZQ}AyiR*eo0y}R18Ex#j{h3@=|k<#Gy<86T}JG

literal 0
HcmV?d00001
where does this blob come from. can we build it from source ?


The blob is a tiny partition already on devices. It's just a map with a magic header, the name of two partitions, and a couple of lose bytes that get flipped between 0 and 1.

The OEM uses it as a map to indicate which of the two redundant u-boot and UBI partitions is active.... except that their system is actually broken and doesn't work. We just use it to set the defaults, so that we can be sure which kernel and UBI the system loads.

-->hd target/linux/ipq806x/image/tew827dru-bootconfig.bin
00000000 a0 a1 a3 a5 00 00 00 00 03 00 00 00 30 3a 41 50 |............0:AP| 00000010 50 53 42 4c 00 00 00 00 00 00 00 00 00 01 00 00 |PSBL............| 00000020 00 00 00 00 72 6f 6f 74 66 73 00 00 00 00 00 00 |....rootfs......| 00000030 00 00 00 00 00 01 00 00 00 00 00 00 6b 65 72 6e |............kern| 00000040 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |el..............|
00000050  00 00 00 00                                       |....|
00000054

The factory image must contain this file in the FIT.

I could probably make something to generate it, but it's static data for us. The same exact 84 bytes every single time.

I'm not actually sure where in the OEM build system this file gets produced, but I know where it's format is documented.

What do you want to do?



diff --git a/target/linux/ipq806x/image/tew827dru-flash.scr 
b/target/linux/ipq806x/image/tew827dru-flash.scr
new file mode 100644
index 0000000..3cdc42e
--- /dev/null
+++ b/target/linux/ipq806x/image/tew827dru-flash.scr
where does this get used ?

"This u-boot hush shell script is required to install the factory image via the 
u-boot HTTP backup loader."

It goes into the FIT image. The u-boot executes the script to install the UBI 
and bootconfig file onto NAND.



_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to