[LEDE-DEV] [PATCH 4/4] Add bootconfig and flash script for the tew827dru

John Crispin john at phrozen.org
Thu Sep 8 03:16:11 PDT 2016



On 08/09/2016 11:35, J Mo wrote:
> 
> 
> 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 <jmomo at 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.
> 

ok, we have a similar file for other targets. i thought it was an
executable. if it is just a config stub it can stay as it is.

> 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.
> 

it should be added in a patch prior to being used, just like the dts
file in that case.

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



More information about the Lede-dev mailing list