1. Needed to make a change to to package/kernel/linux/modules/netsupport.mk
due to upstream moving vxlan to its own directory[1]. @john-tho suggested
using the the 6.1 xvlan FILES to circumvent.
2. All patches automatically rebased.
Ivan Pavlov [Fri, 4 Aug 2023 12:28:12 +0000 (15:28 +0300)]
openssl: update to 3.0.10
Changes between 3.0.9 and 3.0.10 [1 Aug 2023]
* Fix excessive time spent checking DH q parameter value ([CVE-2023-3817])
* Fix DH_check() excessive time with over sized modulus ([CVE-2023-3446])
* Do not ignore empty associated data entries with AES-SIV ([CVE-2023-2975])
Signed-off-by: Ivan Pavlov <AuthorReflex@gmail.com>
xdp-tools: disable stack protector for BPF programs
When building xdp-tools with CONFIG_USE_LLVM_HOST=y, on a host that
enabled stack protector by default in Clang, compilation fails with the
following error:
CLANG xdp-dispatcher.o
clang-16: error: ignoring '-fstack-protector-strong' option as it is not currently supported for target 'bpfeb' [-Werror,-Woption-ignored]
Add -fno-stack-protector to BPF_CFLAGS to fix this.
Nick Hainke [Thu, 20 Jul 2023 16:32:13 +0000 (18:32 +0200)]
tracecmd: update to v3.2
ChangeLog: 46952ef trace-cmd: Version 3.2 f5871a1 libtracecmd: Version 1.4.0 d498af1 trace-cmd build: Add trace-attach.c to meson build 736df06 trace-cmd: Add initial support for meson e183566 libtracecmd: Add initial support for meson c508713 trace-cmd test: Quiet valgrind from reporting forked children 8ec026f trace-cmd test: Close handle after opening 4c179a6 trace-cmd library: Fix memory leaks of followers aa21520 trace-cmd: Add Makefile target for memory test 925e15f trace-cmd and library: Update the version to the development 4fa31c0 trace-cmd attach: Add new command "attach" 7e721ef trace-cmd library: Add tracecmd_get_tsc2nsec() API 8908555 tracecmd library: Unlock records in tracecmd_iterate_events() 2668b13 trace-cmd agent: Add "IP" to -N argument in help message 22ad81e trace-cmd record: Remove redundant check of instance in allocate_instance() d7ce897 libtracecmd: Free buf_from in error path of tracecmd_compress_copy_from() 6776d7a trace-cmd: Update v7 trace.dat documentation to clarify the strings section 9d6f3ba trace-cmd record/extract: Do not destroy existing instances 9c9d5ed trace-cmd extract: Do not extract top level unless told to 4b92132 libtracecmd: Fix tracecmd_compress_copy_from() write size return f30abfd documentation: trace-cmd-report: Document filter scope 7a390c5 trace-cmd-report: Support global filters 04ad2c6 trace-cmd report: Ensure filter is applied to single input file edf9424 trace-cmd: Open code execvp routine to avoid multiple execve syscalls
Nick Hainke [Thu, 20 Jul 2023 16:29:27 +0000 (18:29 +0200)]
libtracefs: update to 1.7.0
ChangeLog: aebab37 libtracefs: version 1.7 a3237c3 libtracefs: Add initial support for meson b25019f libtarcefs doc: Add tracefs_kprobe_destroy() to index man page 4c2194f libtracefs doc: State that tracefs_dynevent_create() is needed for tracefs_kprobe_alloc() df53d43 libtracefs Documentation: Add missing prototypes in top level man page 9a2df4a libtracefs: Update version to 1.7.dev 18ede68 libtracefs: Add tracefs_kprobe_destory() API 309b1ba libtracefs tests: Add helper function to destroy dynamic events 53dce80 tracefs: Add tracefs_time_conversion() API 5ea4128 libtracefs: Add tracefs_find_cid_pid() API 857dd3e libtracefs/utest: Fix crashing of synth test when synths exist 6332309 libtracefs/utest: Do not use synth for test_synth element 25cd206 libtracefs: Clarify the tracefs_synth_create() man page 6b6d43f libtracefs: Do not allow tracefs_synth_set_instance() on created synth c860f93 libtracefs: Documentation for tracefs_synth_set_instance 0039173 libtracefs: New API to set synthetic event instance e97c311 libtracefs: Do not segfault in tests if synthetic events are not configured 185019c libtracefs: Add tracefs_instance_tracers() API 6775d23 libtracefs: Do not use hwlat tracer and fdb_delete event for tests 5a1a01e libtracefs: Add stacktrace to tracefs_sql() b1b234e libtracefs: Unit test for tracefs_instance_reset() dd620f4 libtracefs: Documentation for tracefs_instance_reset() 789e82d libtracefs: New API to reset ftrace instance
Felix Fietkau [Fri, 26 May 2023 08:23:59 +0000 (10:23 +0200)]
hostapd: add ucode support, use ucode for the main ubus object
This implements vastly improved dynamic configuration reload support.
It can handle configuration changes on individual wifi interfaces, as well
as adding/removing interfaces.
Felix Fietkau [Thu, 16 Mar 2023 10:35:50 +0000 (11:35 +0100)]
hostapd: add experimental radius server
This can be used to run a standalone EAP server that can be used from
other APs. It uses json as user database format and can automatically
handle reload.
Michał Kwiatek [Fri, 28 Jul 2023 13:59:44 +0000 (15:59 +0200)]
ath11k-firmware: update to stable WLAN.HK.2.9.0.1-01862
Changelog from quic:
Bug fixes, stability improvements from previous releases
are present. There are no backward comatibility issues
with this release.
Reviewed-by: Robert Marko <robimarko@gmail.com> Tested-by: Michał Kwiatek <michal@kwiatek.it> # Xiaomi AX3600 Signed-off-by: Michał Kwiatek <michal@kwiatek.it>
Daniel Golle [Mon, 31 Jul 2023 16:46:22 +0000 (17:46 +0100)]
uboot-mediatek: add missing 'memory' nodes to downstream boards
Among the patches adding support for MT7988 also came the switch to
use fdtdec_setup_mem_size_base() and no longer rely on CFG_SYS_SDRAM_BASE.
Take care of our downstream boards which did not have a 'memory' node in
their device trees.
Fixes: 572ea68070 ("uboot-mediatek: add patches for MT7988 and builds for RFB") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Robert Marko [Mon, 31 Jul 2023 10:08:34 +0000 (12:08 +0200)]
qualcommax: ipq807x: fix Gen2 PCIe port
Gen2 PCIe port recently got broken on IPQ807x during update to 6.1.39 as
upstream backported:
("PCI: qcom: Remove PCIE20_ prefix from register definitions") [1]
So, fix it by adding a pending upstream fix for it [2].
Instead of using the hash of the Github-generated tarball use the
hash of the tarball generated by the OpenWrt build system (in this
case they are different, unfortunately).
Reported-by: Chen Minqiang <ptpt52@gmail.com> Fixes: 07dbeb430e ("arm-trusted-firmware-mediatek: update to sources of 2023-07-24") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
rtl8812au-ct: fix even more compilation error with kernel 6.1
Fix more compilation error with kernel 6.1 and make it possible to
compile.
Multiple fix are done due to kernel bump:
- PDE_DATA (now deprecated) to pde_data
- dev_addr now const and require some cast
- prandom_u32 (now deprecated) to get_random_u32
Also other minor fix for always true condition and tasklet type cast not
compatible.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Shiji Yang [Thu, 22 Jun 2023 13:22:32 +0000 (21:22 +0800)]
ramips: mt7621-wdt: use phandle to access system controller registers
These patches allow the driver to access some watchdog registers via a
phandle to the system controller node[1]. To apply these changes, we
need to add "mediatek,sysctl" to the SoC dtsi. This commit also remove
the redundent clocks, interrupts and resets properties.
Shiji Yang [Sat, 17 Jun 2023 11:30:59 +0000 (19:30 +0800)]
ramips: add proper system clock and reset driver support for legacy SoCs
This series of upstream patches properly implement a clock and reset
driver for old ralink SoCs[1]. And it includes some related fixes[2] and
improvements[3][4]. All patches have been merged into linux-next. They
will be part of upcoming Linux 6.5. In order to switch to the new system
controller driver, all clocks and resets properties in SoC dtsi have been
updated, and kernel symbol "CONFIG_CLK_MTMIPS" have been added to the
kernel config files.
Shiji Yang [Sat, 17 Jun 2023 11:30:59 +0000 (19:30 +0800)]
ramips: add proper system clock and reset driver support for mt7621
This series of upstream patches makes the system controller node as a
reset provider[1][2], and it also includes some clock and reset driver
fixes[3][4]. Meanwhile, all clocks and resets properties in the SoC
device tree have been updated to be compatible with the new driver.
Due to some hiccup my local urngd-2023-07-25-7aefb47b.tar.xz ended up
being different from archived one. Repackaging it locally confirmed the
previous hash was incorrect.
Fixes: c74b5e09e692 ("urngd: update to the latest master") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Shiji Yang [Sat, 29 Jul 2023 13:24:10 +0000 (21:24 +0800)]
ramips: pinctrl: support requesting different functions for same group
MT7620 wireless radio needs change the pin group function between
"gpio" and "pa" during the calibration process. However, ralink
pinctrl driver doesn't support requesting different functions for
the same group. This patch enables pinctrl consumers to perform
such operations.
Shiji Yang [Sat, 29 Jul 2023 13:24:09 +0000 (21:24 +0800)]
mac80211: rework MT7620 PA/LNA RF calibration
This patch makes some improvements to the MT7620 RF calibration.
1. Move MT7620 PA/LNA calibration code to dedicated functions.
2. Restore RF and BBP registers before R-Calibration.
3. Do Rx DCOC calibration again before RXIQ calibration.
4. Use SoC specific AGC initial LNA value.
5. Correct MAC_RX_EN mask in rt2800_r_calibration()[1].
[1] This change may fix the "BBP/RF register access failed" error:
ieee80211 phy0: rt2800_wait_bbp_rf_ready: Error - BBP/RF register access failed, aborting
Daniel Golle [Sat, 22 Jul 2023 14:12:27 +0000 (15:12 +0100)]
arm-trusted-firmware-mediatek: update to sources of 2023-07-24
Use updated Trusted Firmware-A sources from MediaTek, now stacked
on top of the ARM Trusted Firmware-A v2.9 release.
Add builds for the newly added MT7988 SoC.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Oli Ze [Thu, 27 Jul 2023 05:23:12 +0000 (07:23 +0200)]
uboot-mvebu: update to version 2023.07.02
Since 2021.07 multiple bugs were introduced that made it impossible to
create a bootable target for mvebu. Those issues should be now fixed since
2023.07-rc1.
References: #11661 Signed-off-by: Oli Ze <olze@trustserv.de> Reviewed-by: Robert Marko <robimarko@gmail.com> Tested-by: Andre Heider <a.heider@gmail.com> # espressobin-v3-v5-1gb-2cs Signed-off-by: Petr Štetiar <ynezz@true.cz> [facelift]
Karsten Sperling [Thu, 16 Mar 2023 01:17:26 +0000 (14:17 +1300)]
build: make git sub-modules to fetch configurable
Currently the git protocol downloads all submodules of the target
repository. This can be unwieldy for repositories with a lot of submodules
where only a subset are required in the context of the OpenWrt build.
This change adds a PKG_SOURCE_SUBMODULES variable to configure this
behavior. It takes a space-separated list of submodule paths, or the word
"skip" to disable submodule downloads entirely. The default is to download
all submodules, i.e. preserving current behavior.
Petr Štetiar [Fri, 28 Jul 2023 06:20:57 +0000 (08:20 +0200)]
mediatek: filogic: fix broken sysupgrade script
Changes introduced in commit 54dc1cde48a4 ("mediatek: filogic: add
support for Xiaomi WR30U") missed to end the case item with mandatory
`;;` which lead to a broken sysupgrade.
Fixes: 54dc1cde48a4 ("mediatek: filogic: add support for Xiaomi WR30U") Signed-off-by: Petr Štetiar <ynezz@true.cz>
Remove debugging `env` dump left over as build environments might
contain some sensitive information, which then might leak into the build
logs.
Fixes: 2105acbe2804 ("kernel-headers: fix compile error caused by wrong host include path when the toolchain is already built") Signed-off-by: Petr Štetiar <ynezz@true.cz>
Petr Štetiar [Thu, 29 Jun 2023 12:29:02 +0000 (14:29 +0200)]
ipq807x: prpl-haze: fix sysupgrade flashing from bootloader
While flashing sysupgrade image from U-Boot, then the rootfs_data
overlay filesystem formatting is left for the fstools during firstboot,
but that wont work as mkfs.f2fs is missing in the sysupgrade image:
mount_root: overlay filesystem in /dev/loop0 has not been formatted yet
mount_root: no usable overlay filesystem found, using tmpfs overlay
sh: mkfs.f2fs: not found
Filesystem Size Used Available Use% Mounted on
/dev/loop0 139.6M 46.9M 92.6M 34% /overlay
Number Start (sector) End (sector) Size Code Name
20 98850 406349 150.1 MiB FFFF rootfs
So lets fix it by adding f2fs support to the sysupgrade image.
Use these commands blow to backup your stock partitions.
```
nanddump -f /tmp/BL2.bin /dev/mtd1
nanddump -f /tmp/Nvram.bin /dev/mtd2
nanddump -f /tmp/Bdata.bin /dev/mtd3
nanddump -f /tmp/Factory.bin /dev/mtd4
nanddump -f /tmp/FIP.bin /dev/mtd5
nanddump -f /tmp/ubi.bin /dev/mtd8
nanddump -f /tmp/KF.bin /dev/mtd12
```
Then, transfer them to your computer via scp, netcat, tftp
or others and keep them in a safe place.
3. Setup Nvram
Get the current stock: `cat /proc/cmdline`
If you find `firmware=0` or `mtd=ubi`, use these commands:
```
nvram set boot_wait=on
nvram set uart_en=1
nvram set flag_boot_rootfs=1
nvram set flag_last_success=1
nvram set flag_boot_success=1
nvram set flag_try_sys1_failed=0
nvram set flag_try_sys2_failed=0
nvram commit
```
If you find `firmware=1` or `mtd=ubi1`, use these commands:
```
nvram set boot_wait=on
nvram set uart_en=1
nvram set flag_boot_rootfs=0
nvram set flag_last_success=0
nvram set flag_boot_success=1
nvram set flag_try_sys1_failed=0
nvram set flag_try_sys2_failed=0
nvram commit
```
4. Flash stock-initramfs-factory.ubi
If you find `firmware=0` or `mtd=ubi`:
`ubiformat /dev/mtd9 -y -f /tmp/stock-initramfs-factory.ubi`
If you find `firmware=1` or `mtd=ubi1`:
`ubiformat /dev/mtd8 -y -f /tmp/stock-initramfs-factory.ubi`
Then reboot your router, it should boot to the openwrt
initramfs system now.
5. Setup uboot-env
Now it will be setup automatically in upgrade process,
you can skip this step.
If your `fw_setenv` did not work, you need run this command:
`echo "/dev/mtd1 0x0 0x10000 0x20000" > /etc/fw_env.config`
Run following command:
`ubiformat /dev/mtd8 -y -f /tmp/ubootmod-initramfs-factory.ubi`
Then reboot your router, it should boot to the openwrt initramfs
system now.
3. Install kmod-mtd-rw
Run command: `opkg update && opkg install kmod-mtd-rw`
Or get it in openwrt server, or build it yourself, then install
it manually
Then run this command:
`insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1`
4. Clean up pstore
Run Command: `rm -f /sys/fs/pstore/*`
5. Format ubi and create new ubootenv volume
```
ubidetach -p /dev/mtd8; ubiformat /dev/mtd8 -y; ubiattach -p /dev/mtd8
ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB
ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB
```
6. Flash ubootmod-squashfs-sysupgrade.itb
Use shell command:
`sysupgrade -n /tmp/ubootmod-squashfs-sysupgrade.itb`
Or go to luci web.
Now everything is done, Enjoy!
Go Back to stock from Openwrt U-Boot:
1. Force flash ubootmod-initramfs-recovery.itb
Use shell command:
`sysupgrade -F -n /tmp/ubootmod-initramfs-recovery.itb`
Or go to luci web.
Then it should boot to the openwrt initramfs system now.
2. Format ubi and Nvram
```
ubidetach -p /dev/mtd8; ubiformat /dev/mtd8 -y; ubiattach -p /dev/mtd8
mtd erase Nvram
```
3. Install kmod-mtd-rw
Run command: `opkg update && opkg install kmod-mtd-rw`
Or get it in openwrt server, or build it yourself, then install
it manually
Then run this command:
`insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1`
4. Flash stock U-Boot and ubi
```
mtd write /tmp/BL2.bin BL2
mtd write /tmp/FIP.bin FIP
mtd write /tmp/ubi.bin ubi
```
Then reboot your router, waiting it finished rollback in minutes.
Go Back to stock from stock layout Openwrt:
Just run command: `ubiformat /dev/mtd8 -y -f /tmp/ubi.bin`
Then reboot your router, waiting it finished rollback in minutes.
Notes:
1. Openwrt U-Boot and ubootmod openwrt did not enable NMBM.
Please make your backup safe.
procd: improve status reporting for partially running services
The existing implementation incorrectly reported `running` for services
without any instances or with all instances stopped/terminated.
Improve the default implementation of `/etc/init.d/* status` to properly
report services with not running instances. In case a service exists,
but without running instance, the status call will now report
"not running" with exit code 5. In case some instances are running and
some are stopped/terminated, the call will report "running (X/Y)" where
`X` denoted the amount of running instances and `Y` the amount of total
registered ones.
8667347 build: allow passing SOVERSION value for dynamic library
Also adjust packaging of the library to only ship the SOVERSION
suffixed library object, to allow for concurrent installation of
ABI-incompible versions in the future.
At least Fedora and RHEL 9 set RSAMinSize=2048, so when trying to use
failsafe, we get 'Bad server host key: Invalid key length'
To workaround the issue, we can use: ssh -o RSAMinSize=1024 ...
Generating 2048 bits RSA is extremely slow, so add ed25519.
We keep RSA 1024 to be as compatible as possible.
Lu jicong [Mon, 24 Jul 2023 07:22:42 +0000 (15:22 +0800)]
rockchip: add FriendlyARM NanoPC T4 support
Hardware
--------
RockChip RK3399 ARM64 (6 cores)
4GB LPDDR3 RAM
1x 1000 Base-T
1 GPIO LED (status)
HDMI 2.0
3.5mm TRRS AV jack
Micro-SD slot
16GB eMMC
1x USB 3.0 Port
2x USB 2.0 Port
1x USB Type-C Port
1x M.2 PCI-E Port
AP6356S (BCM4356) SDIO WiFi & Bluetooth adapter
--------
Note: AP6356S is not supported yet due to the lack of firmware and NVRAM
Felix Fietkau [Wed, 26 Jul 2023 09:20:58 +0000 (11:20 +0200)]
mt76: update to the latest version
53edfc7aaa34 wifi: mt76: mt7603: fix beacon interval after disabling a single vif 7ef4dd12d982 wifi: mt76: mt7603: fix tx filter/flush function 152608a40aa7 wifi: mt76: mt7615: do not advertise 5 GHz on first phy of MT7615D (DBDC) cacac3902a63 wifi: mt76: split get_of_eeprom in subfunction cd3dfe392769 wifi: mt76: add support for providing eeprom in nvmem cells
What's interesting about jitterentropy-rngd v1.2.0 release is that it
bumps its copy of jitterentropy-library from v2.2.0 to the v3.0.0. That
bump includes a relevant commit 3130cd9 ("replace LSFR with SHA-3 256").
When initializing entropy jent calculates time delta. Time values are
obtained using clock_gettime() + CLOCK_REALTIME. There is no guarantee
from CLOCK_REALTIME of unique values and slow devices often return
duplicated ones.
A switch from jent_lfsr_time() to jent_hash_time() resulted in many less
cases of zero delta and avoids ECOARSETIME.
Long story short: on some system this fixes:
[ 6.722725] urngd: jent-rng init failed, err: 2
This is important change for BCM53573 which doesn't include hwrng and
seems to have arch_timer running at 36,8 Hz.
Felix Fietkau [Mon, 24 Jul 2023 12:43:03 +0000 (14:43 +0200)]
kernel: drop mips highmem offset start overrides
The maximum offset that can be supported is 0x20000000
Do not override it to to something bigger than that on MT7621, as that could
cause issues based on the fixed memory mappings. This makes the last 64 MB
RAM unusable on MT7621 devices with 512 MB but avoids incurring a heavy
performance hit
Fixes: cd2b74e01e8d ("ramips: mt7621: disable highmem support and remove highmem offset patch") Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Mon, 24 Jul 2023 11:17:44 +0000 (13:17 +0200)]
ramips: mt7621: disable highmem support and remove highmem offset patch
On MT7621 it was observed, that enabling highmem support causes a significant
performance drop, as documented in: https://github.com/openwrt/openwrt/issues/13151
By adjusting the highmem start offset, we avoid leaving any RAM unaddressable,
even on devices with 512 MB
Fixes: https://github.com/openwrt/openwrt/issues/13151 Signed-off-by: Felix Fietkau <nbd@nbd.name>
bcm53xx: add BCM53573 Ethernet fix sent upstream for v6.6
It seems that DSA-based b53 driver never worked with BCM53573 SoCs and
BCM53125.
In case of swconfig-based b53 this fixes a regression. Switching bgmac
from using mdiobus_register() to of_mdiobus_register() resulted in MDIO
device (BCM53125) having of_node set (see of_mdiobus_register_phy()).
That made downstream b53 driver read invalid data from DT and broke
Ethernet support.
rtl8812au-ct: fix compilation error with kernel 6.1
Kernel 6.1 have renamed complete_and_exit to kthread_complete_and_exit.
This was just a rename and nothing is changed implementation wise.
Fix compilation error by using the new symbol name.
Fix compilation error:
In file included from /builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/include/osdep_service.h:41,
from /builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/include/drv_types.h:32,
from /builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/core/rtw_cmd.c:22:
/builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/core/rtw_cmd.c: In function 'rtw_cmd_thread':
/builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/include/osdep_service_linux.h:166:23: error: implicit declaration of function 'complete_and_exit' [-Werror=implicit-function-declaration]
166 | #define thread_exit() complete_and_exit(NULL, 0)
| ^~~~~~~~~~~~~~~~~
/builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/core/rtw_cmd.c:706:9: note: in expansion of macro 'thread_exit'
706 | thread_exit();
| ^~~~~~~~~~~
/builder/shared-workdir/build/sdk/build_dir/target-aarch64_cortex-a53_musl/linux-bcm27xx_bcm2710/rtl8812au-ct-2021-11-07-39df5596/core/rtw_cmd.c:708:1: error: control reaches end of non-void function [-Werror=return-type]
708 | }
| ^
cc1: all warnings being treated as errors
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Shiji Yang [Sun, 23 Jul 2023 02:14:54 +0000 (10:14 +0800)]
mac80211: limit MT7620 TX power based on eeprom calibration
This patch adds basic TX power control for the MT7620 and limits its
maximum TX power. This can avoid the link speed decrease caused by
chip overheating.
UART Console
------------
Available below the rubber cover next to the ethernet port.
Settings: 115200 8N1
Layout:
<12V> <LAN> GND-RX-TX-VCC
Logic-Level is 3V3. Don't connect VCC to your UART adapter!
Installation Web-UI
-------------------
Upload the Factory image using the devices Web-Interface.
As the device uses a dual-image partition layout, OpenWrt can only
installed on Slot A. This requires the current active image prior
flashing the device to be on Slot B.
In case this is not the case, OpenWrt will boot only one time, returning
to the ZyXEL firmware the second boot.
If this happens, first install a ZyXEL firmware upgrade of any version
and install OpenWrt after that.
Installation TFTP / Recovery
----------------------------
This installation routine is especially useful in case of a bricked
device.
Attach to the UART console header of the device. Interrupt the boot
procedure by pressing Enter.
The bootloader has a reduced command-set available from CLI, but more
commands can be executed by abusing the atns command.
Boot a OpenWrt initramfs image available on a TFTP server at
192.168.1.66. Rename the image to nwa50axpro-openwrt-initramfs.bin.