<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/pepe2k/tools, branch v21.02.0-rc2</title>
<subtitle>Staging tree of Piotr Dymacz</subtitle>
<id>https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v21.02.0-rc2</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v21.02.0-rc2'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/'/>
<updated>2021-05-23T14:10:59Z</updated>
<entry>
<title>fakeroot: Alpine linux libc.musl build error fix</title>
<updated>2021-05-23T14:10:59Z</updated>
<author>
<name>Ruslan Isaev</name>
</author>
<published>2021-05-10T14:56:59Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=a162fe9a96fc83cb890944d40dadaf1091084f98'/>
<id>urn:sha1:a162fe9a96fc83cb890944d40dadaf1091084f98</id>
<content type='text'>
Prevent build error on Alpine Linux host:
libfakeroot.c error: conflicting types for 'id_t'
Error relocating openwrt/staging_dir/host/lib/libfakeroot.so: SEND_GET_XATTR: symbol not found

Signed-off-by: Ruslan Isaev &lt;legale.legale@gmail.com&gt;
(cherry picked from commit 7a70f78fb7da4dc3e8c58e7662f4dc623274a78b)
</content>
</entry>
<entry>
<title>ccache: Build with ENABLE_DOCUMENTATION=OFF</title>
<updated>2021-05-23T14:10:59Z</updated>
<author>
<name>David Adair</name>
</author>
<published>2021-05-14T23:04:27Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=a52842a8d05e71ee46eca70c0165518d02674fa2'/>
<id>urn:sha1:a52842a8d05e71ee46eca70c0165518d02674fa2</id>
<content type='text'>
This adjusts the Makefile to use the new option to turn off the
doc builds. It will not cause any problems except a warning
about unused options if combined with a ccache source missing
the upstream patch.

Since a config setting is required to re-enable the doc build this
is equivalent to unconditionally disabling the docs if the config
setting is not created.

Signed-off-by: David Adair &lt;djabhead@aol.com&gt;
(cherry picked from commit 2d1546832357a3a8bd18680bd31dd92050e739b2)
</content>
</entry>
<entry>
<title>tplink-safeloader: fix product_name of TP-Link AD7200</title>
<updated>2021-05-06T07:53:44Z</updated>
<author>
<name>Alex Henrie</name>
</author>
<published>2021-05-04T03:07:17Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=10a535a90c97c687c15993c8c7464c106d1be9d0'/>
<id>urn:sha1:10a535a90c97c687c15993c8c7464c106d1be9d0</id>
<content type='text'>
The stock firmware does not accept firmware with "Talon" in the name.

Tested on firmware version 1.0.10 Build 20160902 rel. 57400 which came
preinstalled, as well as latest firmware version 2.0.1 Build 20170103
rel.71053 flashed from
AD7200v1-up-ver2-0-1-P1[20170103-rel71053]_2017-01-04_10.08.28.bin.

Fixes: 1a775a4fd033 ("ipq806x: add support for TP-Link Talon AD7200")
Signed-off-by: Alex Henrie &lt;alexhenrie24@gmail.com&gt;
[added details about vendor firmware]
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
(cherry picked from commit dfef88b6cacceec151ca4ce4bb3dc50c1c5cf1d2)
</content>
</entry>
<entry>
<title>tplink-safeloader: fix C7v5 factory flashing from vendor fw &gt; v1.1.x</title>
<updated>2021-04-13T08:36:47Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2021-04-09T12:52:05Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=6fd65c657351908302b37447675ee352ec927d93'/>
<id>urn:sha1:6fd65c657351908302b37447675ee352ec927d93</id>
<content type='text'>
Currently it's not possible to flash factory images on devices shipped
with vendor firmware versions 1.1.0 Build 20201120 rel. 50406 (published
2020-12-22):

 (curFw_ver, newFw_ver) == (1.1, 1.0) [NM_Error](nm_checkSoftVer) 00848: Firmwave not supports, check failed.
 [NM_Error](nm_checkUpdateContent) 01084: software version dismatched
 [NM_Error](nm_buildUpgradeStruct) 01188: checkUpdateContent failed.

They've even following note in release notes:

 Note: You will be unable to downgrade to the previous firmware version
       after updating this firmware.

This version check in vendor firmware is implemented in
/usr/bin/nvrammanager binary likely as following C code[1]:

 sscanf(buf, "%d.%d.%*s",&amp;upd_fw_major, &amp;upd_fw_minor);
 ...
 if (((int)upd_fw_major &lt; (int)cur_fw_major) ||
     ((ret = 1, cur_fw_major == upd_fw_major &amp;&amp; (upd_fw_minor &lt; (int)cur_fw_minor)))) {
       ret = 0;
       printf("[NM_Error](%s) %05d: Firmwave not supports, check failed.\r\n\r\n","nm_checkSoftVer" ,0x350);
 }
 ...
 return ret;

So in order to fix this and make it future proof it should be enough to
ship our factory firmware images with major version 7 (lucky number).

Tested on latest firmware version 1.1.2 Build 20210125 rel.37999:

 Firmwave supports, check OK.
  (curFw_ver, newFw_ver) == (1.1, 7.0) check firmware ok!

Flashing back to vendor firmware
c7v5_us-up-ver1-1-2-P1[20210125-rel37999]_2021-01-25_10.33.55.bin works
as well:

 U-Boot 1.1.4-gbec22107-dirty (Nov 18 2020 - 18:19:12)
 ...
 Firmware downloaded... filesize = 0xeeae77 fileaddr = 0x80060000.
 Firmware Recovery file length : 15642231
 Firmware process id 2.
 handle_fw_cloud 146
 Image verify OK!
 Firmware file Verify ok!
 product-info:product_name:Archer C7
 product_ver:5.0.0
 special_id:55530000
 [Error]sysmgr_cfg_checkSupportList(): 1023 @ specialId 45550000 NOT Match.
 Firmware supports, check OK.
 Firmware Recovery check ok!

1. https://gist.github.com/ynezz/2e0583647d863386a66c3d231541b6d1

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
(cherry picked from commit e6d66375cbbb54e0e82a67030e385a5486273766)
</content>
</entry>
<entry>
<title>firmware-utils: bcm4908img: convert into a package</title>
<updated>2021-04-08T11:16:13Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-04-01T15:06:47Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=91e0865ff576cad261a9cabc6b0e7dc2c7ce7508'/>
<id>urn:sha1:91e0865ff576cad261a9cabc6b0e7dc2c7ce7508</id>
<content type='text'>
bcm4908img is a tool managing BCM4908 platform images. It's used for
creating them as well as checking, modifying and extracting data from.

It's required by both: host (for building firmware images) and target
(for sysupgrade purposes). Make it a host/target package.

Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
(cherry picked from commit 9b4fc4cae9fa0cd0cd9060e1c9d33320c3249ced)
</content>
</entry>
<entry>
<title>firmware-utils: bcm4908img: fix uninitialized var usage</title>
<updated>2021-04-08T11:16:13Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-04-08T07:10:20Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=7b3bde801ba34c945465d6fbcebd56f14616ce0d'/>
<id>urn:sha1:7b3bde801ba34c945465d6fbcebd56f14616ce0d</id>
<content type='text'>
Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
(cherry picked from commit 5a2086d230063b2f83a436ed37b0f6a92706bcb9)
</content>
</entry>
<entry>
<title>firmware-utils: bcm4908img: extract bootfs without padding</title>
<updated>2021-04-08T11:16:13Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-04-07T05:59:57Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=2e2b5833931895f5cb6138b8563aa5ff1010a0ff'/>
<id>urn:sha1:2e2b5833931895f5cb6138b8563aa5ff1010a0ff</id>
<content type='text'>
JFFS2 bootfs partition in a BCM4908 image usually includes some padding.
For flashing it individually (writing to designed MTD partition) we want
just JFFS2 data.

Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
(cherry picked from commit ed7edf88e20c9dd0026e5c5629d8a6500d3e3f80)
</content>
</entry>
<entry>
<title>firmware-utils: bcm4908img: fix extracting cferom</title>
<updated>2021-04-08T11:16:12Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-04-06T22:17:40Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=fe302010d3493286ef1a6a3b440d243208b93a5c'/>
<id>urn:sha1:fe302010d3493286ef1a6a3b440d243208b93a5c</id>
<content type='text'>
Fix offset to extract proper data when image contains vendor header.

Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
(cherry picked from commit dcbde11af181055f2d1c77ebc19f50c29bbab96e)
</content>
</entry>
<entry>
<title>firmware-utils: bcm4908img: support extracting bootfs &amp; rootfs</title>
<updated>2021-04-08T11:16:12Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-04-05T17:30:06Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=e708c5ef08b5d3691d155a6fa2ac40c95ecd4283'/>
<id>urn:sha1:e708c5ef08b5d3691d155a6fa2ac40c95ecd4283</id>
<content type='text'>
It's required for upgrading firmware using single partitions instead of
just blindly writing whole image.

Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
(cherry picked from commit e33957c241abf8f0dbf5f3713058d126fb4599b4)
</content>
</entry>
<entry>
<title>firmware-utils: bcm4908img: replace size with offset</title>
<updated>2021-04-08T11:16:12Z</updated>
<author>
<name>Rafał Miłecki</name>
</author>
<published>2021-04-05T23:06:52Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=cbf8ac82c6e4aea62510ffe10dee85eb8a79e2fb'/>
<id>urn:sha1:cbf8ac82c6e4aea62510ffe10dee85eb8a79e2fb</id>
<content type='text'>
It's much easier to operate on BCM4908 image data with absolute offset
of each section stored. It doesn't require summing sizes over and over.

Signed-off-by: Rafał Miłecki &lt;rafal@milecki.pl&gt;
(cherry picked from commit 5314cab729b743d3b8b08db4e01c3095017f4e68)
</content>
</entry>
</feed>
