aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* ath79: add support for TP-Link CPE610 v2Andrew Cameron2020-06-201-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link CPE610 v2 is an outdoor wireless CPE for 5 GHz with one Ethernet port based on Atheros AR9344 Specifications: - 560/450/225 MHz (CPU/DDR/AHB) - 1x 10/100 Mbps Ethernet - 64 MB of DDR2 RAM - 8 MB of SPI-NOR Flash - 23dBi high-gain directional 2×2 MIMO antenna and a dedicated metal reflector - Power, LAN, WLAN5G green LEDs - 3x green RSSI LEDs Flashing instructions: Flash factory image through stock firmware WEB UI or through TFTP To get to TFTP recovery just hold reset button while powering on for around 4-5 seconds and release. Rename factory image to recovery.bin Stock TFTP server IP:192.168.0.100 Stock device TFTP adress:192.168.0.254 Signed-off-by: Andrew Cameron <apcameron@softhome.net>
* mkchkimg: use higher version codeJoseph C. Lehner2020-06-091-7/+2
| | | | | | | | | | | This patch changes the version code of the image header from `1.1.99_0.0.0.0` to `99.99.99_99.99.99.99`. This is neccessary on some devices where the stock firmware checks the version field, possibly preventing third-party firmware from being installed. Reviewed-by: Thibaut VARÈNE <hacks@slashdirt.org> Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
* ath79: add support for TP-Link RE450 v3Andreas Wiese2020-05-311-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link RE450 v3 is a dual band router/range-extender based on Qualcomm/Atheros QCA9563 + QCA9880. This device is nearly identical to RE450 v2 besides a modified flash layout (hence I think force-flashing a RE450v2 image will lead to at least loss of MAC address). Specification: - 775 MHz CPU - 64 MB of RAM (DDR2) - 8 MB of FLASH (SPI NOR) - 3T3R 2.4 GHz - 3T3R 5 GHz - 1x 10/100/1000 Mbps Ethernet (AR8033 PHY) - 7x LED, 4x button- - possible UART header on PCB¹ Flash instruction: Apply factory image in OEM firmware web-gui. ¹ Didn't check to connect as I didn't even manage to connect on RE450v2 (AFAIU it requires disconnecting some resistors, which I was too much of a coward to do). But given the similarities to v2 I think it's the same or very similar procedure (and most likely also the only way to debrick). Signed-off-by: Andreas Wiese <aw-openwrt@meterriblecrew.net> [remove dts-v1 and compatible in DTSI] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* tools: add zstdMatthias Schiffer2020-05-313-1/+82
| | | | Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* ccache: update to 3.7.9DENG Qingfang2020-05-282-3/+3
| | | | | | | | | Update ccache to 3.7.9 Release notes: https://ccache.dev/releasenotes.html#_ccache_3_7_9 Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* squashfs: Fix compile with GCC 10Hauke Mehrtens2020-05-241-0/+25
| | | | | | | | | Fixes the following build error with GCC 10: /usr/bin/ld: read_fs.o:(.bss+0x0): multiple definition of `swap'; mksquashfs.o:(.bss+0x1b2a88): first defined here And a compile warning. Fixes: FS#3104, FS#3119 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* tools: add autoconf-archiveKarel Kočí2020-05-202-1/+29
| | | | | | | | | | | | | | | | Some autotools based build systems are using autoconf-archive scripts and are expecting them to almost always be available. This is not required for regular releases as tar balls generated for releases commonly have existing configure script. This is rather intended to be used with autotools.mk's autoreconf and in cases it is not always possible to get release tar ball. Including this adds little to no overhead in terms of build time as those are just m4 scripts copied to an appropriate location. Signed-off-by: Karel Kočí <karel.koci@nic.cz> [fixed From: to match SoB] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* firmware-utils: mkfwimage: add support for Ubiquiti XC devicesRoger Pueyo Centelles2020-05-171-0/+9
| | | | | | | | This commit adds support for Ubiquiti devices based on the XC board type, such as the PowerBeam 5AC 500. The factory binary structure is the same as the WA type. Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
* tools/mkimage: update to 2020.04Lucian Cristian2020-04-267-241/+113
| | | | | | | | | also change the download source to https and add a mirror drop merged patches Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com> [Add extra changes to compile on FreeBSD, merge two patches] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* tools/e2fsprogs: fix build under macosKevin Darbyshire-Bryant2020-04-101-1/+1
| | | | | | | | | macos doesn't define a loff_t type, the native off_t type being 64bit anyway. Persuade e2fsprogs to accept off_t instead on macos Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* tools/mm-macros: Update to 1.0.0Daniel Engberg2020-04-091-3/+5
| | | | | | Update mm-macros to 1.0.0 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/xz: Update to 5.2.5Daniel Engberg2020-04-091-2/+3
| | | | | | | Update xz to 5.2.5 Disable NLS support to be consistent with other tools such as bison, e2fsprogs and sed. Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/mtools: Update to 4.0.24Daniel Engberg2020-04-091-2/+2
| | | | | | Update mtools to 4.0.24 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/findutils: Update to 4.7.0Daniel Engberg2020-04-093-120/+9
| | | | | | | | | | | | Update findutils to 4.7.0 Remove patches Enable pthreads Disable NLS support to be consistent with other tools such as bison, e2fsprogs and sed. Disable selinux support to be consistent with other tools such as sed and tar Disable rpath as we don't need hardcoded paths Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/e2fsprogs: Update to 1.45.6Daniel Engberg2020-04-091-2/+2
| | | | | | Update e2fsprogs to 1.45.6 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/cmake: update to 3.17.0Rosen Penev2020-04-066-74/+37
| | | | | | | | | | | Remove libressl patches; they are no longer needed as LibreSSl adde support Replace qt tests patch with one that disables all of them. Refresh remaining one. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* firmware-utils: ptgen: add GPT support李国2020-03-312-24/+319
| | | | | | | | | | | | | | | | Add GPT support to ptgen, so we can generate EFI bootable images. Introduced two options: -g generate GPT partition table -G GUID use GUID for disk and increase last bit for all partitions We drop The alternate partition table to reduce size, This may cause problems when generate vmdk images or vdi images. We have to pad enough sectors when generate these images. Signed-off-by: 李国 <uxgood.org@gmail.com> [fixed compilation on macOS] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* tplink-safeloader: update soft_ver for TP-Link Archer C6 v2 (EU)Georgi Vlaev2020-03-301-1/+1
| | | | | | | | | | | | The last couple of TP-Link firmware releases for Archer C6 v2 (EU) have switched to version 1.2.x. Bump the soft_ver to "1.2.1" to allow firmware updates from the vendor web interface. TP-Link vendor firmware releases supported by this change: * Archer C6(EU)_V2_200110: soft_ver:1.2.1 Build 20200110 rel.60119 * Archer C6(EU)_V2_191014: soft_ver:1.2.0 Build 20191014 rel.33289 Signed-off-by: Georgi Vlaev <georgi.vlaev@gmail.com>
* tools: squashfskit4: fix build with GCC10Robert Marko2020-03-222-1/+44
| | | | | | | | In order to build squashfskit with GCC10, this backport from upstream is needed. Signed-off-by: Robert Marko <robert.marko@sartura.hr> [increase PKG_RELEASE] Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* squashfskit4/Makefile: introduce PKG_RELEASE=1Alexander Couzens2020-03-221-1/+1
| | | | | | When adding patches, the PKG_RELEASE should be increased. Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* ath79: add support for TP-Link Archer C60 v3Adrian Schmutzler2020-03-181-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link Archer C60 v3 is a dual-band AC1350 router, based on Qualcomm/Atheros QCA9561 + QCA9886. It seems to be identical to the v2 revision, except that it lacks a WPS LED and has different GPIO for amber WAN LED. Specification: - 775/650/258 MHz (CPU/DDR/AHB) - 64 MB of RAM (DDR2) - 8 MB of FLASH (SPI NOR) - 3T3R 2.4 GHz - 2T2R 5 GHz - 5x 10/100 Mbps Ethernet - 6x LED, 2x button - UART header on PCB Flash instruction (WebUI): Download *-factory.bin image and upload it via the firmwary upgrade function of the stock firmware WebUI. Flash instruction (TFTP): 1. Set PC to fixed IP address 192.168.0.66 2. Download *-factory.bin image and rename it to tp_recovery.bin 3. Start a tftp server with the file tp_recovery.bin in its root directory 4. Turn off the router 5. Press and hold reset button 6. Turn on router with the reset button pressed and wait ~15 seconds 7. Release the reset button and after a short time the firmware should be transferred from the tftp server 8. Wait ~30 second to complete recovery While TFTP works for OpenWrt images, my device didn't accept the only available official firmware "Archer C60(EU)_V3.0_190115.bin". In contrast to earlier revisions (v2), the v3 contains the (same) MAC address twice, once in 0x1fa08 and again in 0x1fb08. While the partition-table on the device refers to the latter, the firmware image contains a different partition-table for that region: name device firmware factory-boot 0x00000-0x1fb00 0x00000-0x1fa00 default-mac 0x1fb00-0x1fd00 0x1fa00-0x1fc00 pin 0x1fd00-0x1fe00 0x1fc00-0x1fd00 product-info 0x1fe00-0x1ff00 0x1fd00-0x1ff00 device-id 0x1ff00-0x20000 0x1ff00-0x20000 While the MAC address is present twice, other data like the PIN isn't, so with the partitioning from the firmware image the PIN on the device would actually be outside of its partition. Consequently, the patch uses the MAC location from the device (which is the same as for the v2). Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* pkgconf: always retain -I and -L flagsJo-Philipp Wich2020-03-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The pkgconf fork filters -I and -L flag values from .pc files which match pkgconf's builtin system directory value. During configure, pkgconf derives the default system include and library search path values from exec_prefix, which is set to staging_dir/host in the host tool build phase. Due to that, pkgconf will drop all -I and -L flags pointing to staging_dir/host/include or staging_dir/host/lib, unless invoked with --keep-system-cflags and --keep-system-libs respectively, breaking our kernel libelf discovery / stack validation workarounds. In order to inhibit the filtering, add --keep-system-cflags and --keep-system-libs to our pkg-config shell wrapper. Fixes: GH#2832 Fixes: 867298cf47 ("tools/pkg-config: Replace with pkgconf") Ref: https://lists.infradead.org/pipermail/openwrt-devel/2020-March/022182.html Ref: https://git.openwrt.org/fe43969336201f2cc7d103b68fd6e65989bee184 Signed-off-by: Jo-Philipp Wich <jo@mein.io> Acked-by: Petr Štetiar <ynezz@true.cz>
* build: fix kernel 5.4 on macosKevin Darbyshire-Bryant2020-03-142-0/+28
| | | | | | | | | | As part of the kernel build process there are utilities built to run on the host system that expect linux kernel headers to be available. Unfortunately macos/darwin doesn't have these headers. vdso2c requires types.h so provide a minimal stub to satisfy it. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* tools/cmake: Update to 3.16.5Yufei Miao2020-03-121-2/+2
| | | | | | Update cmake to 3.16.5 Signed-off-by: Yufei Miao <myf@myf.cloud>
* mkrasimage: fix segmentation faultMichael T Farnworth2020-03-011-9/+10
| | | | | | | | | | | | | Code was attempting to determine the size of the file before it was actually known and allocating insufficient memory space. Images above a certain size caused a segmentation fault. Moving the calloc() ensured ensured that large images didn't result in a buffer overflow on memcpy(). Signed-off-by: Michael T Farnworth <michael@turf.org> [fixed name in From to match one in SoB] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* tools/pkgconf: Run pkg-config wrapper through shellcheckRosen Penev2020-03-011-1/+4
| | | | | | | | Mainly quoting fixes. Separated parameters by \ for easier readability. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* tools/pkg-config: Replace with pkgconfRosen Penev2020-03-014-16/+46
| | | | | | | | | | | | | | | | | | | | | | pkgconf is a newer, actively maintained implementation of pkg-config that supports more aspects of the pkg-config file specification and provides a library interface that applications can use to incorporate intelligent handling of pkg-config files into themselves (such as build file generators, IDEs, and compilers). Through its pkg-config compatibility interface (activated when it is run as "pkg-config"), it also can completely replace the original implementation. It is also lighterweight and does not require glib2, as pkg-config does. On other distros, pkgconf is symlinked to pkg-config. For simplicity here, it is renamed to pkg-config.real, as in the original package. Initial results have been positive. As before, pkgconf works as long as the pkg-config files point to the proper paths. Signed-off-by: Rosen Penev <rosenp@gmail.com> [backported upstream fix for Meson] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* tools: Fix "lib" symlink created inside $(STAGING_DIR_HOST)/libJeffery To2020-03-011-1/+1
| | | | | | | | | | | | | | | | | | | Currently, if "make tools/install" is called after tools have already been installed, a symbolic link named "lib" will be created inside $(STAGING_DIR_HOST)/lib, pointing to "lib" (i.e. itself). During tools/prepare, a "lib64" symlink is created inside $(STAGING_DIR_HOST) that points to "lib" (also inside $(STAGING_DIR_HOST)). If tools/prepare is called and the "lib64" symlink already exists, then ln will treat it as a directory and instead create a symlink named "lib" inside of that directory. This adds the -n option for ln so that $(STAGING_DIR_HOST)/lib64 is always treated as a normal file (the link name), not as a directory. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* tools/bison: Update to 3.5.1Daniel Engberg2020-02-191-3/+3
| | | | | | | | Update bison to 3.5.1 Use POSIX threads as the previous option is no longer valid Disable NLS support to be consistent with other tools such as e2fsprogs and sed Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/e2fsprogs: Update to 1.45.5Daniel Engberg2020-02-181-3/+4
| | | | | | | Update e2fsprogs to 1.45.5 Enable pthreads support Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/gmp: Remove obsolete optionsDaniel Engberg2020-02-181-2/+1
| | | | | | Remove mpbsd argument Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/sed: Update to 4.8Daniel Engberg2020-02-181-3/+5
| | | | | | | | Update sed to 4.8 Use POSIX threads Disable i18n and selinux support Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/patchelf: Update to 0.10Daniel Engberg2020-02-181-2/+2
| | | | | | Update patchelf to 0.10 Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* tools/libressl: Update to 3.0.2Daniel Engberg2020-02-182-25/+2
| | | | | | Update libressl to 3.0.2 and remove 010-avoid-glibc.patch as fix is added by upstream Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* firmware-utils: add lxlfw tool for generating Luxul firmwaresDan Haab2020-02-072-0/+283
| | | | | | It's a simple tool prepending image with a Luxul header. Signed-off-by: Dan Haab <dan.haab@legrand.com>
* ramips: add support for TP-Link RE200 v2Andreas Böhler2020-02-011-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link RE200 v2 is a wireless range extender with Ethernet and 2.4G and 5G WiFi with internal antennas. It's based on MediaTek MT7628AN+MT7610EN. Specifications -------------- - MediaTek MT7628AN (580 Mhz) - 64 MB of RAM - 8 MB of FLASH - 2T2R 2.4 GHz and 1T1R 5 GHz - 1x 10/100 Mbps Ethernet - UART header on PCB (57600 8n1) - 8x LED (GPIO-controlled), 2x button There are 2.4G and 5G LEDs in red and green which are controlled separately. MAC addresses ------------- The MAC address assignment matches stock firmware, i.e.: LAN : *:0D 2.4G: *:0E 5G : *:0F Installation ------------ Web Interface ------------- It is possible to upgrade to OpenWrt via the web interface. Simply flash the -factory.bin from OEM. In contrast to a stock firmware, this will not overwrite U-Boot. Serial console -------------- Opening the case is quite hard, since it is welded together. Rename the OpenWrt factory image to "test.bin", then plug in the device and quickly press "2" to enter flash mode (no line feed). Follow the prompts until OpenWrt is installed. Unfortunately, this devices does not offer a recovery mode or a tftp installation method. If the web interface upgrade fails, you have to open your device and attach serial console. Additonal notes --------------- It is possible to flash back to stock by using tplink-safeloader to create a sysupgrade image based on a stock update. After the first boot, it is necessary upgrade to another stock image, otherwise subsequent boots fail with LZMA ERROR 1 and you have to attach serial to recover the device. Signed-off-by: Andreas Böhler <dev@aboehler.at> [remove DEVICE_VARS change] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* tools/gmp: update to 6.2.0Hannu Nyman2020-01-251-2/+2
| | | | | | | | Update GNU gmp to version 6.2.0 Release notes: https://gmplib.org/gmp6.2.html Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* ar71xx: use dynamic partitioning for TP-Link TL-WA850RE v2Adrian Schmutzler2020-01-221-2/+1
| | | | | | | This moves the TP-Link TL-WA850RE v2 to dynamic partitioning and will allow to use this for ath79 as well. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* tools/bison: update to 3.5Hannu Nyman2020-01-212-3/+3
| | | | | | | | | | | | | | | Update bison to 3.5 Release notes: https://lists.gnu.org/archive/html/info-gnu/2019-12/msg00002.html Note for future: release notes mention that YYPRINT macro is declared deprecated, but apparently still works for now. I found one possible use of that in scripts/config/zconf.tab.c_shipped That might be modernized at some point, but as the file is synced with the one from upstream Linux, it might get fixed there. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* tools: tplink-safeloader: update soft_ver for TP-Link Archer C6 v2 (EU)Anderson Vulczak2020-01-191-1/+1
| | | | | | | | | | | | | | | | This patch updates "soft_ver" for TP-Link Archer C6 v2 (EU). It makes possible to upload OpenWrt on lastest vendor's firmware as the web-based updater checks for major.minor version during upload. Due to that on next major/minor version update TP-Link will stop us from using the web-based firmware update tool, so it will require a new patch on soft_ver to match major and minor version. Up to today's latest stock firmware the patch (major.minor.patch) version does not matters, that allows downgrade from 1.1.4 to 1.1.1 but do not allow downgrade from 1.1.X to 1.0.X. Signed-off-by: Anderson Vulczak <andi@andi.com.br>
* ramips: add support for TP-Link RE305 v1Steffen Förster2020-01-181-0/+36
| | | | | | | | | | | | | | | | | | | | | | Specification: SoC: MediaTek MT7628AN RAM: 64MiB Flash: 8MiB Wifi: - 2.4GHz: MT7628AN - 5GHz: MT7612EN LAN: 1x 10/100 Mbps Flash instructions: Flash factory image through stock firmware WEB UI. Back to stock is possible by using TFTP and stripping down the Firmware provided by TP-Link to a initramfs. The flash space between 0x650000 and 0x7f0000 is blank in the stock firmware so I left it out as well. Signed-off-by: Steffen Förster <nemesis@chemnitz.freifunk.net>
* tools/cmake: update to 3.16.2Hannu Nyman2020-01-184-9/+9
| | | | | | | | | Update cmake to 3.16.2 and refresh patches. Release notes: https://cmake.org/cmake/help/v3.16/release/3.16.html Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
* ccache: update to 3.7.7DENG Qingfang2020-01-162-3/+3
| | | | | | | | | Update ccache to 3.7.7 Release notes: https://ccache.dev/releasenotes.html#_ccache_3_7_7 Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* wrt350nv2-builder: Fix memory leakAndrea Dalla Costa2020-01-141-0/+1
| | | | | | | Add missing call to `free` for variable `buffer` in function `create_bin_file`. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>
* firmware-utils/mktitanimg: fix possible resource leakAndrea Dalla Costa2020-01-141-0/+1
| | | | | | Add missing call to `fclose` for file pointer `nsp_image`. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>
* firmware-utils/mksenaofw: fix possible memory leakAndrea Dalla Costa2020-01-141-0/+2
| | | | | | Add missing calls to `free` for variable `pmodel`. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>
* firmware-utils/mkfwimage: fix possible memory and resource leakAndrea Dalla Costa2020-01-142-0/+6
| | | | | | | | | Add missing calls to `free` for variable `mem`. Add missing call to `fclose` for variable `f`. The same changes were made in both `mkfwimage.c` and `mkfwimage2.c`. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>
* firmware-utils/mkchkimg: fix possible resource leaksAndrea Dalla Costa2020-01-141-0/+8
| | | | | | | | Add missing `fclose` calls for file pointers `kern_fp`, `fs_fp` and `out_fp`. Not closing files could lead to resource leaks. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>
* firmware-utils: fix possible memory leak and resource leakAndrea Dalla Costa2020-01-141-0/+3
| | | | | | | | | | Add missing calls to `free` for variable `buffer`. This could lead to a memory leak. Add missing call to `close` for file pointer `fdin`. This could lead to a resource leak. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>
* firmware-utils/dgfirmare: fix possible resource leakAndrea Dalla Costa2020-01-141-0/+6
| | | | | | | | Add missing calls to `fclose` in functions `write_img`, `write_rootfs` and `write_kernel`. The not-closed files could lead to resource leaks. Signed-off-by: Andrea Dalla Costa <andrea@dallacosta.me>