Daniel Golle [Mon, 12 Jun 2023 03:07:57 +0000 (04:07 +0100)]
scripts/mkits.sh: DT overlays don't need a loadaddr
DT overlays do not need relocation in order to be applied, so drop
defining the load address for dtbos.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit
cff3786bd54cec8276f1fd08d5c6697846f393a5)
Daniel Golle [Mon, 12 Jun 2023 03:06:40 +0000 (04:06 +0100)]
uboot-mediatek: support classic uImage.FIT with internal images in imszb
The side-effect and main motivation is to also drop the FIT structure size
limit because with multiple device tree overlays it may easily grow beyond
the previous 4kB limit in the future.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit
98e3f82c3fb729c1d9de78fef215322528b50cb4)
Daniel Golle [Sat, 8 Jul 2023 16:31:24 +0000 (17:31 +0100)]
mediatek: replace hack for MaxLinear 2.5G PHY
Replace hack with proper patch also for Linux 5.15.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit
712fa3eff82086da8a13e7e5bc577df17892a581)
Daniel Golle [Sat, 8 Jul 2023 15:48:39 +0000 (16:48 +0100)]
mediatek: dts: mt7988a: remove boottrap hack
The PHY driver now uses regmap created from pio syscon, we no longer
need the boottrap device.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit
f321a49fd523a8d393be8e3cd2de41d67855da91)
Daniel Golle [Sat, 8 Jul 2023 16:21:27 +0000 (17:21 +0100)]
mediatek: use backported Ethernet PHY driver also for 5.15
Backport in-SoC Gigabit Ethernet PHY driver instead of carrying the
driver in files-5.15.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit
9fac59009657068d5a58b3d0255d4ca1507dd457)
Daniel Golle [Sat, 8 Jul 2023 15:27:25 +0000 (16:27 +0100)]
mediatek: dts: mt7988a: wire-up mediatek,pio for PHY LEDs
The PHY driver needs to read a register containing the values of the
bootstrap pins (which happen to be the PHY LEDs) to determine the LED
polarities. Allow regmap access to first pinctrl bank by adding the
'syscon' compatible, and reference the pinctrl in the MDIO bus where
the PHY driver will look for it.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit
1f1e0b1144ebaa4ba8b948a12d989a0a6fc9b76f)
Chukun Pan [Sun, 21 May 2023 15:00:16 +0000 (23:00 +0800)]
mediatek: filogic: add H3C Magic NX30 Pro support
Hardware specification:
SoC: MediaTek MT7981B 2x A53
Flash: W25N01GVZEIG 128MB
RAM: NT5CB128M16JR-FL 256MB
Ethernet: 4x 10/100/1000 Mbps
Switch: MediaTek MT7531AE
WiFi: MediaTek MT7976C
Button: Reset, WPS
Power: DC 12V 1A
Flash instructions:
1. PC run command: "telnet 192.168.124.1 99"
Username: H3C, password is the web login
password of the router.
2. Download preloader.bin and bl31-uboot.fip
3. PC run command: "python3 -m http.server 80"
4. Download files in the telnet window:
"wget http://192.168.124.xx/xxx.bin"
Replace xx with your PC's IP and
the preloader.bin and bl31-uboot.fip.
5. Flushing openwrt's uboot:
"mtd write xxx-preloader.bin BL2"
"mtd write xxx-bl31-uboot.fip FIP"
6. Connect to the router via the Lan port,
set a static ip of your PC.
(ip 192.168.1.254, gateway 192.168.1.1)
7. Download initramfs image, reboot router,
waiting for tftp recovery to complete.
8. After openwrt boots up, perform sysupgrade.
Note:
1. The u-boot-env partition on mtd is empty,
OEM stores their env on ubi:u-boot-env.
2. Back up all mtd partitions before flashing.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
(cherry picked from commit
e78d1a06c8a47be9ea5a306bfb43f3d7ceb89646)
Chukun Pan [Sat, 20 May 2023 15:03:06 +0000 (23:03 +0800)]
uboot-mediatek: add H3C Magic NX30 Pro support
The OEM uboot limit brush into 3rd-party firmware.
So add a custom uboot build to support openwrt.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
(cherry picked from commit
437e79ad6d01100afac9786d287976de6d5cf363)
Wenli Looi [Thu, 30 Mar 2023 19:46:19 +0000 (19:46 +0000)]
mediatek: add support for Netgear EX6250v2 series
Netgear EX6250v2, EX6400v3, EX6410v2, EX6470 are wall-plug 802.11ac
(Wi-Fi 5) extenders. Like other MT7629 devices, Wi-Fi does not work
currently as there is no driver.
Related: https://github.com/openwrt/openwrt/pull/5084
For future reference, 2.4GHz MAC = LAN+1, 5GHz MAC = LAN+2.
Specifications:
* MT7629, 256 MiB RAM, 16 MiB SPI NOR
* MT7761N (2.4GHz) / MT7762N (5GHz) - no driver
* Ethernet: 1 port 10/100/1000
* UART: 115200 baud (labeled on board)
Installation:
* Flash the factory image through the stock web interface, or TFTP to
the bootloader. NMRP can be used to TFTP without opening the case.
* After installation, perform a factory reset. Wait for the device to
boot, then hold the reset button for 10 seconds. This is needed
because sysupgrade in the stock firmware will attempt to preserve its
configuration using sysupgrade.tgz.
See https://github.com/openwrt/openwrt/pull/4182
Revert to stock firmware:
* Flash the stock firmware to the bootloader using TFTP/NMRP.
Signed-off-by: Wenli Looi <wlooi@ucalgary.ca>
(cherry picked from commit
73de41898fcd06d837b013449c370c493bcdc595)
Wenli Looi [Thu, 30 Mar 2023 22:27:11 +0000 (22:27 +0000)]
image: add additional fields to Netgear encrypted image
These fields are used for EAX12 and EX6250v2 series, and perhaps other
devices. Compatibility is preserved with the WAX202 and WAX206.
In addition, adds the related vars to DEVICE_VARS so that the variables
work correctly with multiple devices.
References in GPL source:
https://www.downloads.netgear.com/files/GPL/EAX12_EAX11v2_EAX15v2_GPL_V1.0.3.34_src.tar.gz
* tools/imgencoder/src/gj_enc.c
Contains code that generates the encrypted image.
Signed-off-by: Wenli Looi <wlooi@ucalgary.ca>
(cherry picked from commit
0a1ebccc8702cadc50bc096f1e185472f3927786)
Pavel Pernička [Tue, 27 Jun 2023 16:34:03 +0000 (18:34 +0200)]
ath79: DTS improvement for buzzer on RB951G-2HnD
Mikrotik RB951 router has a buzzer on the board, which makes annoying noises
due to the interference caused by PoE input or Wifi transmission
when no GPIO pin state is set.
I added buzzer node to device's DTS in order to set deault level to 1
and to provide easier access for it.
Signed-off-by: Pavel Pernička <pernicka.pa@gmail.com>
(cherry picked from commit
dac0a133cf8dbf0bd9afabecdc1092456c451ec7)
Michał Kępień [Sat, 17 Jun 2023 17:12:21 +0000 (19:12 +0200)]
ath79: add support for MikroTik RB951G-2HnD
MikroTik RB951G-2HnD is a wireless SOHO router that was previously
supported by the ar71xx target, see commit
7a709573d7 ("ar71xx: add
kernel support for the Mikrotik RB951G board").
Specifications
--------------
- SoC: Atheros AR9344 (600 MHz)
- RAM: 128 MB (2x 64 MB)
- Storage: 128 MB NAND flash (various manufacturers)
- Ethernet: Atheros AR8327 switch, 5x 10/100/1000 Mbit/s
- 1x PoE in (port 1, 8-30 V input)
- Wireless: Atheros AR9340 (802.11b/g/n)
- USB: 2.0 (1A)
- 8x LED:
- 1x power (green, not configurable)
- 1x user (green, not configurable)
- 5x GE ports (green, not configurable)
- 1x wireless (green, not configurable)
- 1x button (restart)
Unlike on the RB951Ui-2HnD, none of the LEDs on this device seem to be
GPIO-controllable, which was also the case for older OpenWRT versions
that supported this board via a mach file. The Ethernet port LEDs are
controlled by the switch chip.
See https://mikrotik.com/product/RB951G-2HnD for more details.
Flashing
--------
TFTP boot initramfs image and then perform sysupgrade. Follow
common MikroTik procedures at https://openwrt.org/toh/mikrotik/common.
Signed-off-by: Michał Kępień <openwrt@kempniu.pl>
(cherry picked from commit
db02cecd6ad2e5962e6e9d8307da34855a083ad6)
Michał Kępień [Thu, 15 Jun 2023 13:59:44 +0000 (15:59 +0200)]
ath79: mikrotik: extract common bits for RB951x-2HnD devices
Mikrotik RouterBOARD 951Ui-2HnD and Mikrotik RouterBOARD RB951G-2HnD are
very similar devices. Extract the DTS bits that are identical for these
two boards to a separate DTSI file.
Signed-off-by: Michał Kępień <openwrt@kempniu.pl>
(cherry picked from commit
c6ef4170945c6ab5432382110389f31fea92a76c)
Rafał Miłecki [Tue, 11 Jul 2023 08:30:08 +0000 (10:30 +0200)]
bcm53xx: backport DT changes from v6.5
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit
8674b41c0d84f09e14bf8ebe08e1d6dc6ac5fa64)
Rafał Miłecki [Mon, 10 Jul 2023 09:38:23 +0000 (11:38 +0200)]
kernel: bgmac: fix regressed support for BCM53573 SoCs
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit
d54f3b2cfdbd34aa61ca67fd590eebfdf3db51cf)
Rafał Miłecki [Mon, 10 Jul 2023 09:38:01 +0000 (11:38 +0200)]
bcm47xx: fix bgmac MTU patch filename
Fixes: 4970dd027bce ("bcm47xx: revert bgmac back to the old limited max frame size")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit
83aeb0bbd47638b42ee6cdda351d0c51e014d790)
Rafał Miłecki [Fri, 16 Jun 2023 07:16:39 +0000 (09:16 +0200)]
kernel: backport NVMEM patches queued for the v6.5
This includes some driver changes and support for fixed cells layout.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit
07bdc5551558287f7a99f6ae8e6d82d7d09d5781)
Martin Schiller [Tue, 27 Jun 2023 07:57:53 +0000 (09:57 +0200)]
kernel: net: phy: realtek: fix rtl822x_probe on unsupported devices
Calling rtl822x_probe() on phy devices which uses the rtl822x_read_mmd()
and rtl822x_write_mmd() functions makes no sense and the probe ends with
an EOPNOTSUPP error.
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
(cherry picked from commit
5af7d47cd7fb936dc7d640e1ba63443152d0416a)
Felix Fietkau [Fri, 30 Jun 2023 12:46:19 +0000 (14:46 +0200)]
ramips/mt7621: disable the cpufreq driver
It causes a noticeable performance decrease
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit
dc38199b96ee3ef0ac52873893c42e28fa0564fa)
Aleksander Jan Bajkowski [Mon, 22 May 2023 21:27:52 +0000 (23:27 +0200)]
kernel: sort generic configuration
This was done by executing these commands:
$ ./scripts/kconfig.pl '+' target/linux/generic/config-5.15 /dev/null > target/linux/generic/config-5.15-new
$ mv target/linux/generic/config-5.15-new target/linux/generic/config-5.15
$ ./scripts/kconfig.pl '+' target/linux/generic/config-6.1 /dev/null > target/linux/generic/config-6.1-new
$ mv target/linux/generic/config-6.1-new target/linux/generic/config-6.1
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
(cherry picked from commit
4f197f91342bc5e1f202c091c2c2f90e949d0749)
John Audia [Wed, 5 Jul 2023 20:54:48 +0000 (16:54 -0400)]
kernel: bump 5.15 to 5.15.120
All patches automatically rebased.
Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
0dc0504fc8e5f0c3cafe6c1da7192f51a09c5bc3)
Nick Hainke [Sun, 2 Apr 2023 21:32:11 +0000 (23:32 +0200)]
wolfssl: update to 5.6.3
Release Notes:
- https://github.com/wolfSSL/wolfssl/releases/tag/v5.6.0-stable
- https://github.com/wolfSSL/wolfssl/releases/tag/v5.6.2-stable
- https://github.com/wolfSSL/wolfssl/releases/tag/v5.6.3-stable
Refresh patch:
- 100-disable-hardening-check.patch
Backport patch:
- 001-fix-detection-of-cut-tool-in-configure.ac.patch
Signed-off-by: Nick Hainke <vincent@systemli.org>
(cherry picked from commit
0e83b5e6cc8e2970905a2b32c990fa7491ff733c)
John Thomson [Sat, 1 Jul 2023 00:23:35 +0000 (10:23 +1000)]
kernel: fix KernelPackage when all KCONFIG are versioned
If a kernel package was defined where all KCONFIG symbols were dynamic,
and versioned, no FILES would be installed, as the foreach evaluation was
providing the value of the variable defined by the KCONFIG symbol name
including the version test
Fix this by calling the version_filter function on the list of KCONFIG
variable names run through by foreach
Example, kernel 6.1:
KCONFIG:=CONFIG_OLD@lt6.1 CONFIG_NEW@ge6.1
filter-out any KCONFIG settings forced by package:
CONFIG_OLD@lt6.1 CONFIG_NEW@ge6.1
there are dynamic settings, so for each of them,
get the value of the make variable defined by symbol name:
CONFIG_OLD@lt6.1 is not set
CONFIG_NEW@ge6.1 is not set
versus
CONFIG_OLD is not set
CONFIG_NEW=m
test if any of these are m, or y
if yes, install files, otherwise, nothing to install
Signed-off-by: John Thomson <git@johnthomson.fastmail.com.au>
(cherry picked from commit
b3448b3fdb59d25dce05991dc8f322c1020b090b)
John Audia [Mon, 3 Jul 2023 09:25:56 +0000 (05:25 -0400)]
x86: set CONFIG_X86_AMD_PLATFORM_DEVICE
Needed by AMD processors using Carrizo and later chipsets
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
946100ba4128dbee8faf3c03afb692bca74d75fa)
Zoltan HERPAI [Sun, 29 Jan 2023 17:26:10 +0000 (18:26 +0100)]
mxs: rework image generation
Migrate to "new" image generation method. Device profiles will be generated
based on image/Makefile instead of profiles/ , which will also allow to
automatically build images for all supported devices via buildbot.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
Christian Lamparter [Tue, 4 Jul 2023 18:42:22 +0000 (20:42 +0200)]
ipq-wifi: fix upstream board-2.bin ZTE M289F snafu
The upstream board-2.bin file in the linux-firmware.git
repository for the QCA4019 contains a packed board-2.bin
for this device for both 2.4G and 5G wifis. This isn't
something that the ath10k driver supports.
Until this feature either gets implemented - which is
very unlikely -, or the upstream boardfile is mended
(both, the original submitter and ath10k-firmware
custodian have been notified). OpenWrt will go back
and use its own bespoke boardfile. This unfortunately
means that 2.4G and on some revisions the 5G WiFi is
not available in the initramfs image for this device.
Fixes: #12886
Reported-by: Christian Heuff <christian@heuff.at>
Debugged-by: Georgios Kourachanis <geo.kourachanis@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit
75505c5ec724b9b961dcb411bac1d4b9aede3e1d)
Felix Fietkau [Tue, 4 Jul 2023 04:16:44 +0000 (06:16 +0200)]
mt76: update to the latest version
f704e4f83c6f mt76: mt7915: fix copy&paste issue on capability check rework
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit
816933bee6e6b68156f6aeea083117208bf859f8)
Sander Vanheule [Sat, 24 Jun 2023 20:18:35 +0000 (22:18 +0200)]
ramips: mt7621: add TP-Link EAP613 v1
The TP-Link EAP613 v1 is a ceiling-mount 802.11ax access point. It can
be powered via PoE or a DC barrel connector (12V). Connecting to the
UART requires fine soldering and careful manipulation of any soldered
wires.
Device details:
* SoC: MT7621AT
* Flash: 16 MiB SPI NOR
* RAM: 256 MiB DDR3L
* Wi-Fi:
* MT7905DA + MT7975D: 2.4 GHz + 5 GHz (DBDC), 2x2:2
* Two stamped metal antennas (ANT1, ANT2)
* One PCB antenna (ANT3)
* One unpopulated antenna (ANT4)
* Ethernet:
* 1× 10/100/1000 Mbps port with PoE
* LEDs:
* Array of four blue LEDs with one control line
* Buttons:
* Reset
* Board test points:
* UART: next to CPU RF-shield and power circuits
* JTAG: under CPU RF-shield (untested)
* Watchdog: 3PEAK TPV706 (not implemented)
Althought three antennas are populated, the MT7905DA does not support
the additional Rx chain for background DFS detection (or Bluetooth)
according to commit
6cbcc34f50a3 ("ramips: disable unsupported
background radar detection").
MAC addresses:
* LAN: 48:22:54:xx:xx:a2 (device label)
* WLAN 2.4 GHz: 48:22:54:xx:xx:a2
* WLAN 5 GHz: 48:22:54:xx:xx:a3
The radio calibration blob stored in flash also contains valid MAC
addresses for both radio bands (OUI 00:0c:43).
Factory install:
1. Enable SSH on the device via web interface
2. Log in with SSH, and run `cliclientd stopcs`
3. Upload -factory.bin image via web interface. It may be necessary to
shorten the filename of the image to e.g. 'factory.bin'.
Recovery:
1. Open the device by unscrewing four screws from the backside
2. Carefully remove board from the housing
3. Connect to UART (3.3V):
* Find test points labelled "VCC", "GND", "UART_TX", "UART_RX"
* Solder wires to test points or connect otherwise. Be careful not
to damage the PCB e.g. by pulling on soldered wires.
* Open console with 115200n8 settings
4. Interrupt bootloader and use tftpboot to start an initramfs:
setenv ipaddr $DEVICE_IP
setenv serverip $SERVER_IP
tftpboot
84000000 openwrt-initramfs-kernel.bin
bootm
DO NOT use saveenv to store modified u-boot environment variables. The
environment is saved at flash offset 0x30000, which erases part of the
(secondary) bootloader.
The device uses two bootloader stages. The first stage will load the
second stage from a uImage stored at flash offset 0x10000. In case of
a damaged second stage, the first stage should allow uploading a new
image via y-modem (untested).
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit
11588c52b47c2c3b2cdc7849ce9e4804bfdb8bb5)
Sander Vanheule [Thu, 29 Jun 2023 14:13:33 +0000 (16:13 +0200)]
firmware-utils: bump to git HEAD
Add support for a number of new TP-Link devices.
9e2de8515be1 tplink-safeloader: add EAP610 v3 and EAP613 v1
bb12cf5c3fa9 tplink-safeloader: Add support for TP-Link Deco M5
a2d49fb1e188 tplink-safeloader: add RU support-list entry for Archer C6U v1
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit
0cdcf0338290a83d7679005e80cf7f547860bfc5)
David Bauer [Fri, 30 Jun 2023 17:30:09 +0000 (19:30 +0200)]
mediatek: define NMBM management region for WAX220
The NETGEAR WAX220 employs NMBM on SPI-NAND. In order to avoid dealing
with invalid factory data, enable NMBM in the area preceding the UBI
volume.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit
92eec257dd562547bc08ee76c1901eb22b66937c)
Hauke Mehrtens [Sat, 1 Jul 2023 10:06:34 +0000 (12:06 +0200)]
libnl-tiny: update to latest git HEAD
d433990 Make struct nla_policy and struct nlattr const
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit
513bcfdf78d7ffbcf244da2e6910a3d04b17ae01)
Mathew McBride [Tue, 27 Jun 2023 01:23:40 +0000 (01:23 +0000)]
linux-firmware: ibt-firmware: install sfi/ddc files for AX210 card
When using an Intel AX210 card, the Bluetooth hci interface failed
to start due to a missing "ibt-0041-0041.sfi" file.
Bluetooth: hci0: Failed to load Intel firmware file intel/ibt-0041-0041.sfi (-2)
A device specific configuration file (DDC) is also required:
Bluetooth: hci0: Found device firmware: intel/ibt-0041-0041.sfi
Bluetooth: hci0: Waiting for firmware download to complete
...
Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-0041-0041.ddc
Bluetooth: hci0: Applying Intel DDC parameters completed
Bluetooth: hci0: Firmware timestamp 2023.13 buildtype 1 build 62562
Fixes: #8558
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
fff6833d4c01205156f9431a111a51f96642b476)
Robert Marko [Tue, 27 Jun 2023 08:11:44 +0000 (10:11 +0200)]
generic: filter out CONFIG_FRAME_WARN
CONFIG_FRAME_WARN value is set by config/Config-kernel.in based on the
target type dynamically since commit:
16a2051 ("kernel: Set CONFIG_FRAME_WARN depending on target").
However, CONFIG_FRAME_WARN was not set to get filtered out so it ended up
in multiple target configs during refreshes.
So, lets filter out CONFIG_FRAME_WARN as its set dynamically to prevent it
ending up in more target configs.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
(cherry picked from commit
7a9a4168bb7f4b77c300afb99c163c793305e84f)
Joshua O'Leary [Wed, 7 Jun 2023 10:32:22 +0000 (11:32 +0100)]
zbt-wd323: add GPIO WDT support
Watchdog has not been properly configured for this router - the PCB has a
hardware watchdog connected to one of the GPIO pin 21 [1]
This commit provides this fix [2]
Without this fix, the ZBT-WD323 is unusable in OpenWRT because it power
cycles every 30 seconds due to the watchdog tripping
[1] https://forum.openwrt.org/t/zbt-wd323-router-power-cycles-every-30-seconds/77535/7
[2] https://forum.openwrt.org/t/zbt-wd323-images-unusable-proposed-workaround/162145/5
Signed-off-by: Joshua O'Leary <josh.oleary@mobile-power.co.uk>
(cherry picked from commit
008cc836fe42577af2843730dfefd31b750c7de6)
Mikhail Zhilkin [Sun, 11 Jun 2023 20:50:23 +0000 (20:50 +0000)]
ramips: add support for Sercomm S1500 devices
This commit adds support for following wireless routers:
- Beeline SmartBox PRO (Serсomm S1500 AWI)
- WiFire S1500.NBN (Serсomm S1500 BUC)
This commit is based on this PR:
Link: https://github.com/openwrt/openwrt/pull/4770
- Author: Maximilian Weinmann <x1@disroot.org>
The opening of this PR was agreed with author.
My changes:
- Sorting, minor changes and some movings between dts and dtsi
- Move leds to dts when possible
- Recipes for the factory image
- Update of the installation/recovery/return to stock guides
- Add reset GPIO for the pcie1
Common specification
--------------------
SoC: MediaTek MT7621AT (880 MHz, 2 cores)
Switch: MediaTek MT7530 (via SoC MT7621AT)
Wireless: 2.4 GHz, MT7602EN, b/g/n, 2x2
Wireless: 5 GHz, MT7612EN, a/n/ac, 2x2
Ethernet: 5 ports - 5×GbE (WAN, LAN1-4)
Mini PCIe: via J2 on PCB, not soldered on the board
UART: J4 -> GND[], TX, VCC(3.3V), RX
BootLoader: U-Boot SerComm/Mediatek
Beeline SmartBox PRO specification
----------------------------------
RAM (Nanya NT5CB128M16FP): 256 MiB
NAND-Flash (ESMT F59L2G81A): 256 MiB
USB ports: 2xUSB2.0
LEDs: Status (white), WPS (blue), 2g (white), 5g (white) + 10 LED Ethernet
Buttons: 2 button (reset, wps), 1 switch button (ROUT<->REP)
Power: 12 VDC, 1.5 A
PCB Sticker: 970AWI0QW00N256SMT Ver. 1.0
CSN: SG15********
MAC LAN: 94:4A:0C:**:**:**
Manufacturer's code: 0AWI0500QW1
WiFire S1500.NBN specification
------------------------------
RAM (Nanya NT5CC64M16GP): 128 MiB
NAND-Flash (ESMT F59L1G81MA): 128 MiB
USB ports: 1xUSB2.0
LEDs: Status (white), WPS (white), 2g (white), 5g (white) + 10 LED Ethernet
Buttons: 2 button (RESET, WPS)
Power: 12 VDC, 1.0 A
PCB Sticker: 970BUC0RW00N128SMT Ver. 1.0
CSN: MH16********
MAC WAN: E0:60:66:**:**:**
Manufacturer's code: 0BUC0500RW1
MAC address table (PRO)
-----------------------
use address source
LAN *:23 factory 0x1000 (label)
WAN *:24 factory $label +1
2g *:23 factory $label
5g *:25 factory $label +2
MAC addresses (NBN)
-------------------
use address source
LAN *:0e factory 0x1000
WAN *:0f LAN +1 (label)
2g *:0f LAN +1
5g *:10 LAN +2
OEM easy installation
---------------------
1. Remove all dots from the factory image filename (except the dot
before file extension)
2. Upload and update the firmware via the original web interface
3. Two options are possible after the reboot:
a. OpenWrt - that's OK, the mission accomplished
b. Stock firmware - install Stock firmware (to switch booflag from
Sercomm0 to Sercomm1) and then OpenWrt factory image.
Return to Stock
---------------
1. Change the bootflag to Sercomm1 in OpenWrt CLI and then reboot:
printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock2
reboot
2. Install stock firmware via the web OEM firmware interface
Recovery
--------
Use sercomm-recovery tool.
Link: https://github.com/danitool/sercomm-recovery
Tested-by: Pavel Ivanov <pi635v@gmail.com>
Tested-by: Denis Myshaev <denis.myshaev@gmail.com>
Tested-by: Oleg Galeev <olegingaleev@gmail.com>
Tested-By: Ivan Pavlov <AuthorReflex@gmail.com>
Co-authored-by: Maximilian Weinmann <x1@disroot.org>
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
(cherry picked from commit
2d6784a033a994043759fa3b94c48afd5df81f88)
Mikhail Zhilkin [Sun, 11 Jun 2023 20:48:49 +0000 (20:48 +0000)]
ramips: sercomm.mk: preparation for Sercomm s1500 devices support
This commit moves a part of the code from the "sercomm-factory-cqr" recipe
to the separate "sercomm-mkhash" recipe. This simplifies recipes and
allows insert additional recipes between these code blocks (required for
the future support for Beeline SmartBox PRO router).
dd automatically fills the file by 0x00 if the filesize is less than
offset where we start writing. We drop such dd command so we need to add
--extra-padding-size 0x190 to the sercomm-pid.py call.
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
(cherry picked from commit
f560be583a858bc3099f2b1f0aa0ddec62cfd91c)
John Audia [Wed, 28 Jun 2023 10:53:45 +0000 (06:53 -0400)]
kernel: bump 5.15 to 5.15.119
Build system: x86_64
Build-tested: x86_64/ACEMAGICIAN T8PLUS, ramips/tplink_archer-a6-v3
Run-tested: x86_64/ACEMAGICIAN T8PLUS, ramips/tplink_archer-a6-v3
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
42cb0f0f260484ac07e3d698ebc5c546e1800051)
Felix Fietkau [Sat, 1 Jul 2023 20:09:07 +0000 (22:09 +0200)]
mt76: fix download hash
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit
a3e173e00e7a7f647528ec04be432bccfb5995ad)
Felix Fietkau [Thu, 22 Jun 2023 17:37:13 +0000 (19:37 +0200)]
mt76: update to the latest version
2c9c8ffe9d8c wifi: mt76: mt7615: fix possible race in mt7615_mac_sta_poll
3365c80f4202 wifi: mt76: connac: fix stats->tx_bytes calculation
b69d82130b47 wifi: mt76: connac: do not check WED status for non-mmio devices
1f9cd65b55d7 wifi: mt76: mt7921e: fix probe timeout after reboot
42dace9ce247 wifi: mt76: mt7921: Fix use-after-free in fw features query.
540adbb38205 wifi: mt76: mt7921: add Netgear AXE3000 (A8000) support
150e2d0ffc0c wifi: mt76: mt7996: fix possible NULL pointer dereference in mt7996_mac_write_txwi()
5b7519be2bf6 wifi: mt76: mt7996: fix endianness of MT_TXD6_TX_RATE
40f6e433f747 wifi: mt76: mt76x02: remove WEP support
84ea1a24f5b5 mt76: mt7921: don't assume adequate headroom for SDIO headers
5c28e17f8c78 wifi: mt76: mt7996: fix header translation logic
2386cec860fa wifi: mt76: mt7996: enable BSS_CHANGED_MU_GROUPS support
748d4a2bfebd wifi: mt76: mt7615: enable BSS_CHANGED_MU_GROUPS support
458ad0af21be wifi: mt76: enable UNII-4 channel 177 support
7fb046011293 wifi: mt76: mt7915: fix background radar event being blocked
d2a77a9954bb wifi: mt76: mt7915: report tx retries/failed counts for non-WED path
f76b102b09ca wifi: mt76: mt7915: rework tx packets counting when WED is active
5637d9e37d9e wifi: mt76: mt7915: rework tx bytes counting when WED is active
34bdc7fcb4c0 wifi: mt76: report non-binding skb tx rate when WED is active
d71aa7b992a3 wifi: mt76: mt7915: drop return in mt7915_sta_statistics
251c363c3087 wifi: mt76: mt7996: drop return in mt7996_sta_statistics
150bb95cb153 wifi: mt76: mt7921: do not support one stream on secondary antenna only
d480c3281f21 wifi: mt76: mt7921: remove macro duplication in regs.h
18b1027e5b6e wifi: mt76: mt7915: move mib_stats structure in mt76.h
25ec4b91020e wifi: mt76: mt7996: rely on mib_stats shared definition
6541afa88b3b wifi: mt76: mt7921: rely on mib_stats shared definition
eeb60eb9a5a0 wifi: mt76: mt7915: add support for MT7981 [sync with upstream]
d5b7e6a3d735 wifi: mt76: mt7921e: report tx retries/failed counts in tx free event
f0f19cea6646 wifi: mt76: mt7921: fix skb leak by txs missing in AMSDU
edd8a830f6e3 wifi: mt76: add tx_nss histogram to ethtool stats
e48235308b3e wifi: mt76: mt7915: accumulate mu-mimo ofdma muru stats
a729242363d9 wifi: mt76: mt7921: fix non-PSC channel scan fail
8d52436ee0cd wifi: mt76: mt7921: Support temp sensor
d152c8688c14 wifi: mt76: mt7915: disable WFDMA Tx/Rx during SER recovery
d07785c344ac wifi: mt76: mt7996: disable WFDMA Tx/Rx during SER recovery
2a19784137f9 wifi: mt76: mt7921: make mt7921_mac_sta_poll static
da8e33a15e71 wifi: mt76: mt7915: fix command timeout in AP stop period
cc58d5c4a9c9 mt76: mt7996: rely on mt76_sta_stats in mt76_wcid
98a37c82a373 wifi: mt76: mt7921: get rid of MT7921_RESET_TIMEOUT marco
ece724cf562b wifi: mt76: mt7996: move radio ctrl commands to proper functions
527cbbc5ede7 wifi: mt76: connac: add support for dsp firmware download
44e323340637 wifi: mt76: mt7996: fix bss wlan_idx when sending bss_info command
63f0053df07a wifi: mt76: mt7996: enable VHT extended NSS BW feature
e1bb4ef7b2bb wifi: mt76: connac: add support to set ifs time by mcu command
080ca19cc686 wifi: mt76: mt7996: use correct phy for background radar event
2c163f1812a3 wifi: mt76: mt7996: fix WA event ring size
b511a437ace4 wifi: mt76: mt7996: add muru support
ece67c98dc1c wifi: mt76: mt7996: increase tx token size
7c2515d85117 wifi: mt76: mt7921e: fix init command fail with enabled device
30706095c566 wifi: mt76: mt7915: move sta_poll_list and sta_poll_lock in mt76_dev
b06ed10ee271 wifi: mt76: mt7603: rely on shared sta_poll_list and sta_poll_lock
b59bdae339de wifi: mt76: mt7615: rely on shared sta_poll_list and sta_poll_lock
6da2e0e4ef54 wifi: mt76: mt7996: rely on shared sta_poll_list and sta_poll_lock
b19d3ad88e8b wifi: mt76: mt7921: rely on shared sta_poll_list and sta_poll_lock
595b033275a3 wifi: mt76: mt7915: move poll_list in mt76_wcid
16fcad171849 wifi: mt76: mt7603: rely on shared poll_list field
e19f84091d2e wifi: mt76: mt7615: rely on shared poll_list field
b87e4dad1e84 wifi: mt76: mt7996: rely on shared poll_list field
6d7950e258d0 wifi: mt76: mt7921: rely on shared poll_list field
f5c5eece5038 wifi: mt76: move ampdu_state in mt76_wcid
7e44467469fe mt76: connac: move more mt7921/mt7915 mac shared code in connac lib
39a70710ddcd wifi: mt76: move rate info in mt76_vif
0dc4326991df wifi: mt76: connac: move connac3 definitions in mt76_connac3_mac.h
29cfabbb4b90 wifi: mt76: connac: add connac3 mac library
d60b401867f4 linux-firmware: update firmware for MT7922 WiFi device
9404601a6c97 linux-firmware: update firmware for MT7922 WiFi device
2f851902d6b1 linux-firmware: update firmware for MT7921 WiFi device
f36b921692b9 Revert "wifi: mt76: mt76x02: remove WEP support
c50be0b54cdd wifi: mt76: mt7915: fix capabilities in non-AP mode
d7d7479b00e9 wifi: mt7915: fix beaconing in mesh mode
1377f586c6f5 wifi: mt7915: move capability check to start_ap
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit
01885bc6a33dbfa6f3c9e97778fd8f4f60e2514f)
(cherry picked from commit
86ebaef5d427c5732847168f6ceeda12bf528414)
Mikhail Zhilkin [Sat, 13 May 2023 13:51:45 +0000 (13:51 +0000)]
mediatek: add support for Mercusys MR90X v1
This commit adds support for Mercusys MR90X(EU) v1 router.
Device specification
--------------------
SoC Type: MediaTek MT7986BLA, Cortex-A53, 64-bit
RAM: MediaTek MT7986BLA (512MB)
Flash: SPI NAND GigaDevice GD5F1GQ5UEYIGY (128 MB)
Ethernet: MediaTek MT7531AE + 2.5GbE MaxLinear GPY211C0VC (SLNW8)
Ethernet: 1x2.5Gbe (WAN/LAN 2.5Gbps), 3xGbE (WAN/LAN 1Gbps, LAN1, LAN2)
WLAN 2g: MediaTek MT7975N, b/g/n/ax, MIMO 4x4
WLAN 5g: MediaTek MT7975P(N), a/n/ac/ax, MIMO 4x4
LEDs: 1 orange and 1 green status LEDs, 4 green gpio-controlled
LEDs on ethernet ports
Button: 1 (Reset)
USB ports: No
Power: 12 VDC, 2 A
Connector: Barrel
Bootloader: Main U-Boot - U-Boot 2022.01-rc4. Additionally, both UBI
slots contain "seconduboot" (also U-Boot 2022.01-rc4)
Serial console (UART)
---------------------
V
+-------+-------+-------+-------+
| +3.3V | GND | TX | RX |
+---+---+-------+-------+-------+
|
+--- Don't connect
The R3 (TX line) and R6 (RX line) are absent on the PCB. You should
solder them or solder the jumpers.
Installation (UART)
-------------------
1. Place OpenWrt initramfs image on tftp server with IP 192.168.1.2
2. Attach UART, switch on the router and interrupt the boot process by
pressing 'Ctrl-C'
3. Load and run OpenWrt initramfs image:
tftpboot initramfs-kernel.bin
bootm
4. Once inside OpenWrt, set / update env variables:
fw_setenv baudrate 115200
fw_setenv bootargs "ubi.mtd=ubi0 console=ttyS0,115200n1 loglevel=8 earlycon=uart8250,mmio32,0x11002000 init=/etc/preinit"
fw_setenv fdtcontroladdr
5ffc0e70
fw_setenv ipaddr 192.168.1.1
fw_setenv loadaddr 0x46000000
fw_setenv mtdids "spi-nand0=spi-nand0"
fw_setenv mtdparts "spi-nand0:2M(boot),1M(u-boot-env),50M(ubi0),50M(ubi1),8M(userconfig),4M(tp_data)"
fw_setenv netmask 255.255.255.0
fw_setenv serverip 192.168.1.2
fw_setenv stderr serial@
11002000
fw_setenv stdin serial@
11002000
fw_setenv stdout serial@
11002000
fw_setenv tp_boot_idx 0
5. Run 'sysupgrade -n' with the sysupgrade OpenWrt image
Installation (without UART)
---------------------------
1. Login as root via SSH (router IP, port 20001, password - your web
interface password)
2. Open for editing /etc/hotplug.d/iface/65-iptv (e.g., using WinSCP and
SSH settings from the p.1)
3. Add a newline after "#!/bin/sh":
telnetd -l /bin/login.sh
4. Save "65-iptv" file
5. Toggle "IPTV/VLAN Enable" checkbox in the router web interface and
save
6. Make sure that telnetd is running:
netstat -ltunp | grep 23
7. Login via telnet to router IP, port 23 (no username and password are
required)
8 Upload OpenWrt "initramfs-kernel.bin" to the "/tmp" folder of the
router (e.g., using WinSCP and SSH settings from the p.1)
9. Stock busybox doesn't contain ubiupdatevol command. Hence, we need to
download and upload the full version of busybox to the router. For
example, from here:
https://github.com/xerta555/Busybox-Binaries/raw/master/busybox-arm64
Upload busybox-arm64 to the /tmp dir of the router and run:
in the telnet shell:
cd /tmp
chmod a+x busybox-arm64
10. Check "initramfs-kernel.bin" size:
du -h initramfs-kernel.bin
11. Delete old and create new "kernel" volume with appropriate size
(greater than "initramfs-kernel.bin" size):
ubirmvol /dev/ubi0 -N kernel
ubimkvol /dev/ubi0 -n 1 -N kernel -s 9MiB
12. Write OpenWrt "initramfs-kernel.bin" to the flash:
./busybox-arm64 ubiupdatevol /dev/ubi0_1 /tmp/initramfs-kernel.bin
13. u-boot-env can be empty so lets create it (or overwrite it if it
already exists) with the necessary values:
fw_setenv baudrate 115200
fw_setenv bootargs "ubi.mtd=ubi0 console=ttyS0,115200n1 loglevel=8 earlycon=uart8250,mmio32,0x11002000 init=/etc/preinit"
fw_setenv fdtcontroladdr
5ffc0e70
fw_setenv ipaddr 192.168.1.1
fw_setenv loadaddr 0x46000000
fw_setenv mtdids "spi-nand0=spi-nand0"
fw_setenv mtdparts "spi-nand0:2M(boot),1M(u-boot-env),50M(ubi0),50M(ubi1),8M(userconfig),4M(tp_data)"
fw_setenv netmask 255.255.255.0
fw_setenv serverip 192.168.1.2
fw_setenv stderr serial@
11002000
fw_setenv stdin serial@
11002000
fw_setenv stdout serial@
11002000
fw_setenv tp_boot_idx 0
14. Reboot to OpenWrt initramfs:
reboot
15. Login as root via SSH (IP 192.168.1.1, port 22)
16. Upload OpenWrt sysupgrade.bin image to the /tmp dir of the router
17. Run sysupgrade:
sysupgrade -n /tmp/sysupgrade.bin
Recovery
--------
1. Press Reset button and power on the router
2. Navigate to U-Boot recovery web server (http://192.168.1.1/) and
upload the OEM firmware
Recovery (UART)
---------------
1. Place OpenWrt initramfs image on tftp server with IP 192.168.1.2
2. Attach UART, switch on the router and interrupt the boot process by
pressing 'Ctrl-C'
3. Load and run OpenWrt initramfs image:
tftpboot initramfs-kernel.bin
bootm
4. Do what you need (restore partitions from a backup, install OpenWrt
etc.)
Stock layout
------------
0x000000000000-0x000000200000 : "boot"
0x000000200000-0x000000300000 : "u-boot-env"
0x000000300000-0x000003500000 : "ubi0"
0x000003500000-0x000006700000 : "ubi1"
0x000006700000-0x000006f00000 : "userconfig"
0x000006f00000-0x000007300000 : "tp_data"
ubi0/ubi1 format
----------------
U-Boot at boot checks that all volumes are in place:
+-------------------------------+
| Volume Name: uboot Vol ID: 0|
| Volume Name: kernel Vol ID: 1|
| Volume Name: rootfs Vol ID: 2|
+-------------------------------+
MAC addresses
-------------
+---------+-------------------+-----------+
| | MAC | Algorithm |
+---------+-------------------+-----------+
| label | 00:eb:xx:xx:xx:be | label |
| LAN | 00:eb:xx:xx:xx:be | label |
| WAN | 00:eb:xx:xx:xx:bf | label+1 |
| WLAN 2g | 00:eb:xx:xx:xx:be | label |
| WLAN 5g | 00:eb:xx:xx:xx:bd | label-1 |
+---------+-------------------+-----------+
label MAC address was found in UBI partition "tp_data", file
"default-mac". OEM wireless eeprom is also there (file
"MT7986_EEPROM.bin").
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
(cherry picked from commit
e4fe3097ef6a961874b66932a0ac4be18070630a)
[Fix merging conflict]
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Andreas Böhler [Wed, 7 Jun 2023 19:24:18 +0000 (21:24 +0200)]
ipq4019: add support for ZTE MF287+ aka DreiNeo
The ZTE MF287+ is a LTE router used (exclusively?) by the network operator
"3". The MF287 (i.e. non-plus aka 3Neo) is also supported (the only
difference is the LTE modem)
Specifications
==============
SoC: IPQ4018
RAM: 256MiB
Flash: 8MiB SPI-NOR + 128MiB SPI-NAND
LAN: 4x GBit LAN
LTE: ZTE Cat12 (MF287+) / ZTE Cat6 (MF287)
WiFi: 802.11a/b/g/n/ac SoC-integrated
MAC addresses
=============
LAN: from config + 2
WiFi 1: from config
WiFi 2: from config + 1
Installation
============
Option 1 - TFTP
---------------
TFTP installation using UART is preferred. Disassemble the device and
connect serial. Put the initramfs image as openwrt.bin to your TFTP server
and configure a static IP of 192.168.1.100. Load the initramfs image by
typing:
setenv serverip 192.168.1.100
setenv ipaddr 192.168.1.1
tftpboot 0x82000000 openwrt.bin
bootm 0x82000000
From this intiramfs boot you can take a backup of the currently installed
partitions as no vendor firmware is available for download:
ubiattach -m14
cat /dev/ubi0_0 > /tmp/ubi0_0
cat /dev/ubi0_1 > /tmp/ubi0_1
Copy the files /tmp/ubi0_0 and /tmp/ubi0_1 somewhere save.
Once booted, transfer the sysupgrade image and run sysupgrade. You might
have to delete the stock volumes first:
ubirmvol /dev/ubi0 -N ubi_rootfs
ubirmvol /dev/ubi0 -N kernel
Option 2 - From stock firmware
------------------------------
The installation from stock requires an exploit first. The exploit consists
of a backup file that forces the firmware to download telnetd via TFTP from
192.168.0.22 and run it. Once exploited, you can connect via telnet and
login as admin:admin.
The exploit will be available at the device wiki page.
Once inside the stock firmware, you can transfer the -factory.bin file to
/tmp by using "scp" from the stock frmware or "tftp".
ZTE has blocked writing to the NAND. Fortunately, it's easy to allow write
access - you need to read from one file in /proc. Once done, you need to
erase the UBI partition and flash OpenWrt. Before performing the operation,
make sure that mtd13 is the partition labelled "rootfs" by calling
"cat /proc/mtd".
Complete commands:
cd /tmp
tftp -g -r factory.bin 192.168.0.22
cat /proc/driver/sensor_id
flash_erase /dev/mtd13 0 0
dd if=/tmp/factory.bin of=/dev/mtdblock13 bs=131072
Afterwards, reboot your device and you should have a working OpenWrt
installation.
Restore Stock
=============
Option 1 - via UART
-------------------
Boot an OpenWrt initramfs image via TFTP as for the initial installation.
Transfer the two backed-up files to your box to /tmp.
Then, run the following commands - replace $kernel_length and $rootfs_size
by the size of ubi0_0 and ubi0_1 in bytes.
ubiattach -m 14
ubirmvol /dev/ubi0 -N kernel
ubirmvol /dev/ubi0 -N rootfs
ubirmvol /dev/ubi0 -N rootfs_data
ubimkvol /dev/ubi0 -N kernel -s $kernel_length
ubimkvol /dev/ubi0 -N ubi_rootfs -s $rootfs_size
ubiupdatevol /dev/ubi0_0 /tmp/ubi0_0
ubiupdatevol /dev/ubi0_1 /tmp/ubi0_1
Option 2 - from within OpenWrt
------------------------------
This option requires to flash an initramfs version first so that access
to the flash is possible. This can be achieved by sysupgrading to the
recovery.bin version and rebooting. Once rebooted, you are again in a
default OpenWrt installation, but no partition is mounted.
Follow the commands from Option 1 to flash back to stock.
LTE Modem
=========
The LTE modem is similar to other ZTE devices and controls some more LEDs
and battery management.
Configuring the connection using uqmi works properly, the modem
provides three serial ports and a QMI CDC ethernet interface.
Signed-off-by: Andreas Böhler <dev@aboehler.at>
(cherry picked from commit
f70ee53b08466f612546f699c556cbdaa39e1466)
Andreas Böhler [Sun, 14 May 2023 14:39:15 +0000 (16:39 +0200)]
ipq40xx: Enable gpio-restart in kernel configuration
Some ZTE devices require the gpio-restart driver to support restarting the
LTE modem along with OpenWrt
Signed-off-by: Andreas Böhler <dev@aboehler.at>
(cherry picked from commit
9ffdaa7fa1478146b5d8c77d4b3a5d4d4007a487)
Jianhui Zhao [Mon, 5 Jun 2023 03:02:07 +0000 (03:02 +0000)]
uboot-envtools: Add u-boot env config for GL-MT3000
This commit add u-boot env config for GL-MT3000, so
that we can use fw_printenv to print u-boot env and
use fw_setenv to set u-boot env in GL-MT3000.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
(cherry picked from commit
6892603efa11603c6f365bee1cf94e98336d72aa)
Hauke Mehrtens [Tue, 27 Jun 2023 22:08:33 +0000 (00:08 +0200)]
OpenWrt v23.05.0-rc2: revert to branch defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Tue, 27 Jun 2023 22:08:24 +0000 (00:08 +0200)]
OpenWrt v23.05.0-rc2: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Flole Systems [Mon, 10 Apr 2023 21:36:59 +0000 (23:36 +0200)]
filogic: add support for Netgear WAX220
Hardware
--------
SOC: MediaTek MT7986
RAM: 1024MB DDR3
FLASH: 128MB SPI-NAND (Winbond)
WIFI: Mediatek MT7986 DBDC 802.11ax 2.4/5 GHz
ETH: Realtek RTL8221B-VB-CG 2.5 N-Base-T PHY with PoE
UART: 3V3 115200 8N1 (Pinout silkscreened / Do not connect VCC)
Installation
------------
1. Download the OpenWrt initramfs image. Copy the image to a TFTP server
2. Connect the TFTP server to the WAX220. Conect to the serial console,
interrupt the autoboot process by pressing '0' when prompted.
3. Download & Boot the OpenWrt initramfs image.
$ setenv ipaddr 192.168.2.1
$ setenv serverip 192.168.2.2
$ tftpboot openwrt.bin
$ bootm
4. Wait for OpenWrt to boot. Transfer the sysupgrade image to the device
using scp and install using sysupgrade.
$ sysupgrade -n <path-to-sysupgrade.bin>
Signed-off-by: Flole Systems <flole@flole.de>
Signed-off-by: Stefan Agner <stefan@agner.ch>
(cherry picked from commit
984786a2f7ec622c99e8c9cdada65d0ea0cf4e0b)
Hauke Mehrtens [Sun, 25 Jun 2023 18:03:42 +0000 (20:03 +0200)]
uhttpd: update to latest git HEAD
34a8a74 uhttpd/file: fix string out of buffer range on uh_defer_script
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit
7a6f6b812632a5983cd34ab5c41271d5d4de5fbf)
John Audia [Wed, 21 Jun 2023 16:17:06 +0000 (12:17 -0400)]
kernel: bump 5.15 to 5.15.118
All patches automatically rebased.
Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
1f5fce27c195373fedcf233a48470de97752058f)
Lech Perczak [Wed, 21 Jun 2023 00:30:20 +0000 (02:30 +0200)]
ipq40xx: meraki-mr33, meraki-mr74: disable image generation
After migrating to kernel 5.15, upgrading causes the units to become
soft-bricked, hanging forever at the kernel startup.
Kernel size limitation of
4000000 bytes is suspected here, but this is
not fully confirmed.
Disable the images to protect users from inadvertent bricking of units,
because recovery of those is painful with Cisco's U-boot, until the root
cause is found and fixed.
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
(cherry picked from commit
9d64cc068fbb15d9e6498c1eba79851823b2f4f5)
Davide Fioravanti [Wed, 21 Jun 2023 19:53:07 +0000 (21:53 +0200)]
ramips: fix lan leds for Wavlink WL-WN535K1
Previously both lan1 and lan2 leds were wrongly labelled as lan2.
Moreover they were connected to the wrong lan port.
Fixes
8fde82095ba0 ("ramips: add support for Wavlink WL-WN535K1")
Reported-by: Nicolò Maria Semprini <nicosemp@gmail.com>
Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
(cherry picked from commit
c71dada92654a53c63bbc5bebcc40fe924750ed7)
Kim DoHyoung [Thu, 11 Aug 2022 08:13:35 +0000 (08:13 +0000)]
ramips: mt7621: add support for Zbtlink ZBT-WG1608 (32M)
Zbtlink ZBT-WG1608 is a Wi-Fi router intendent to use with WWAN (4G/5G)
modems.
Specifications:
* SoC: MediaTek MT7621A
* RAM: 256/512 MiB
* Flash: 16/32 MiB (SPI NOR)
* Wi-Fi:
* MediaTek MT7603E : 2.4Ghz
* MediaTek MT7613BE : 5Ghz
* Ethernet: 10/100/1000 Mbps Ethernet x5 ports (4xLAN + WAN)
* M.2: 1x slot with USB&SIM
* EM7455/EM12-G/EM160R/RM500Q-AE
* USB: 1x 3.0 Type-A port
* External storage: 1x microSD (SDXC) slot
* UART: console (115200 baud)
* LED:
* 1 power indicator
* 1 WLAN 2.4G controlled (wlan 2G)
* 3 SoC controlled (wlan 5G, wwan, internet)
* 5 per Eth phy (4xLAN + WAN)
MAC Addresses:
* LAN : f8:5e:3c:xx:xx:e0 (Factory, 0xe000 (hex))
* WAN : f8:5e:3c:xx:xx:e1 (Factory, 0xe006 (hex))
* 2.4 GHz: f8:5e:3c:xx:xx:de (Factory, 0x0004 (hex))
* 5 GHz : f8:5e:3c:xx:xx:df (Factory, 0x8004 (hex))
Installation:
* Vendor's firmware is OpenWrt (LEDE) based, so the sysupgrade image can
be directly used to install OpenWrt. Firmware must be upgraded using the
'force' and 'do not save configuration' command line options (or
correspondig web interface checkboxes) since the vendor firmware is from
the pre-DSA era.
Recovery Mode:
* Press reset button, power up the device, wait for about 10sec.
* Upload sysupgrade image through the firmware recovery mode web page at
192.168.1.1.
Signed-off-by: Kim DoHyoung <azusahmr@k-on.kr>
(cherry picked from commit
0bbd5699c81d6887c4d895e85b56d8c23b1211ec)
Christian Marangi [Sat, 24 Jun 2023 17:06:42 +0000 (19:06 +0200)]
odhcpd: bump to latest git HEAD
5211264 odhcpd: add support for dhcpv6_pd_min_len parameter
c6bff6f router: Add PREF64 (RFC 8781) support
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
acd9981b4ef750544202df9d9e2d0143a6dfd478)
Christian Marangi [Fri, 23 Jun 2023 15:44:10 +0000 (17:44 +0200)]
netfilter: fix typo in nf-socket and nf-tproxy kconfig
Fix a typo where the wrong KCONFIG was used and fix selecting the
correct kernel config option to use these packages.
Fixes: 4f443c885ded ("netfilter: separate packages for kmod-ipt-socket and kmod-ipt-tproxy")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
3ebebf08be950a8a0f3bf5b2c3db910621f2cc21)
David Bauer [Wed, 17 May 2023 10:04:00 +0000 (12:04 +0200)]
mac80211: always use mac80211 loss detection
ath10k does not report excessive loss in case of broken block-ack
sessions. The loss is communicated to the host-os, but ath10k does not
trigger a low-ack events by itself.
The mac80211 framework for loss detection however detects this
circumstance well in case of ath10k. So use it regardless of ath10k's
own loss detection mechanism.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit
ed816f6ba8b5e3df609e5fc53f7bcb09bdaa16be)
David Bauer [Mon, 3 Apr 2023 11:56:58 +0000 (13:56 +0200)]
ath79: add support for Aruba AP-115
Hardware
========
CPU Qualcomm Atheros QCA9558
RAM 256MB DDR2
FLASH 2x 16M SPI-NOR (Macronix MX25L12805D)
WIFI Qualcomm Atheros QCA9558
Atheros AR9590
Installation
============
1. Attach to the serial console of the AP-105.
Interrupt autoboot and change the U-Boot env.
$ setenv rb_openwrt "setenv ipaddr 192.168.1.1;
setenv serverip 192.168.1.66;
netget 0x80060000 ap115.bin; go 0x80060000"
$ setenv fb_openwrt "bank 1;
cp.b 0xbf100040 0x80060000 0x10000; go 0x80060000"
$ setenv bootcmd "run fb_openwrt"
$ saveenv
2. Load the OpenWrt initramfs image on the device using TFTP.
Place the initramfs image as "ap105.bin" in the TFTP server
root directory, connect it to the AP and make the server reachable
at 192.168.1.66/24.
$ run rb_openwrt
3. Once OpenWrt booted, transfer the sysupgrade image to the device
using scp and use sysupgrade to install the firmware.
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit
1b467a902ec9b8bf29805c6928627e8bbad0f14c)
Daniel González Cabanelas [Wed, 21 Jun 2023 21:14:02 +0000 (23:14 +0200)]
bmips: add support for Arcadyan AR7516
The Arcadyan AR7516, AKA Orange Bright Box or EE Bright Box 1, is a wifi
fast ethernet router, 2.4 GHz single band with two internal antennas. It
comes with a horizontal stand black shiny casing.
Newer Bright Box 1 model stands vertically, and comes with a totally
different board inside, not compatible with this firmware.
Hardware:
- SoC: Broadcom BCM6328
- CPU: single core BMIPS4350 V7.5 @ 320Mhz
- RAM: 64 MB DDR2
- Flash: 8 MB SPI NOR
- Ethernet LAN: 4x 100Mbit
- Wifi 2.4 GHz: Broadcom BCM43227 802.11bgn (onboard)
- USB: 1x 2.0
- ADSL: yes, unsupported
- Buttons: 2x
- LEDs: 9x, power LED is hardware controlled
- UART: yes
Installation in two steps, new CFE bootloader and firmware:
Install new CFE:
1. Power off the router and press the RESET button
2. Power on the router and wait some seconds
3. Release the RESET button
3. Browse to http://192.168.1.1, this web interface will offer both
firmware (“Software”) upgrade and bootloader upgrade; be sure to
use the bootloader section of the upload form.
4. Upload the new CFE (availabe at the wiki page)
5. Wait about a minute for flashing to finish and reboot into the new bootloader.
Install OpenWrt via new CFE web UI:
1. After installing the new CFE, visit http://192.168.1.1
2. Upload the Openwrt cfe firmware
5. Wait a few minutes for it to finish
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
(cherry-picked from
df8e4b6c2e6440bc9a31467de1739c69c328e391)
Etienne Champetier [Sun, 11 Jun 2023 03:13:33 +0000 (23:13 -0400)]
kernel: remove bridge offload hack
This patch initially introduced in
94b4da9b4aaded6ed8a5bd93bf38a7c92753fe68
breaks mvebu devices when using vlan filtering with kernel 5.15 or 6.1,
it was working ok in 5.10.
With this patch, frame that should exit untagged from the switch exit tagged.
Running 'tcpdump -Q out -evnnli eth1' (eth1 being the dsa interface)
- with the hack, frame is sent directly to the
destination port 4 with VID 2, so the switch leave the tag as instructed:
11:22:33:44:55:66 > 77:88:99:aa:bb:cc, Marvell EDSA ethertype 0xdada (Unknown), rsvd 0 0, mode From CPU, target dev 0, port 4, tagged, VID 2, FPri 0, ethertype ARP (0x0806), length 50: Ethernet (len 6), IPv4 (len 4), Request who-has 5.6.7.8 tell 1.2.3.4, length 28
- without the hack, frame is sent to the switch that
performs the forwarding decision and untagging:
11:22:33:44:55:66 > 77:88:99:aa:bb:cc, Marvell EDSA ethertype 0xdada (Unknown), rsvd 0 0, mode Forward, dev 1, port 0, tagged, VID 2, FPri 0, ethertype ARP (0x0806), length 50: Ethernet (len 6), IPv4 (len 4), Request who-has 5.6.7.8 tell 1.2.3.4, length 28
Removing this patch makes my Turris Omnia usable with vlan filtering,
ie wifi device can talk to wired device again.
Using kernel 5.15 some broadcast/multicast traffic is still leaked
(on a VLAN 2 access port I see tagged VLAN 3 frame),
using kernel 6.1 fixes that.
People needing the extra performance should try the bridger package.
Acked-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
(cherry picked from commit
244328b19c3943bb145b72f0d85062f535e56fbd)
Daniel González Cabanelas [Sun, 18 Jun 2023 19:34:59 +0000 (21:34 +0200)]
bmips: add support for NuCom R5010UNv2
The NuCom R5010UNv2 is a wifi fast ethernet router, 2.4 GHz single band
with two external antennas.
Hardware:
- SoC: Broadcom BCM6328
- CPU: single core BMIPS4350 V7.5 @ 320Mhz
- RAM: 64 MB DDR2
- Flash: 16 MB SPI NOR
- Ethernet LAN: 4x 100Mbit
- Wifi 2.4 GHz: Broadcom BCM43217 802.11bgn (onboard)
- USB: 1x 2.0
- Buttons: 2x
- ADSL: yes, unsupported
- LEDs: 7x
- UART: yes
Installation via CFE web UI:
1. Power off the router and press the RESET button
2. Power on the router and wait 12 or more seconds
3. Release the RESET button
4. Browse to http://192.168.1.1 and upload the Openwrt cfe firmware
5. Wait a few minutes for it to finish
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
(cherry picked from commit
6cb3328b4fd4939f3800d4be9d52744b753de1b6)
Daniel González Cabanelas [Sat, 17 Jun 2023 17:34:05 +0000 (19:34 +0200)]
bmips: enable the data Read Ahead Cache for BMIPS4350
The data RAC is left disabled by the bootloader in some SoCs, at least in
the core it boots from. Enabling this feature increases the performance up
to +30% depending on the task.
The kernel enables the whole RAC unconditionally on BMIPS3300 CPUs. Enable
the data RAC in a similar way also for BMIPS4350.
Tested on DGND3700 v1 (BCM6368) and HG556a (BCM6358).
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
(cherry picked from commit
6d1265b14850abaf8980e5cebef3e559b1fdcfb9)
Álvaro Fernández Rojas [Sat, 10 Jun 2023 15:17:11 +0000 (17:17 +0200)]
bmips: fix DMA RAC flush
BMIPS_GET_CBR() returns an invalid address on some SoCs.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
62cdca25edc7e02249a7dd01c2218ee83e6ed145)
Maximilian Weinmann [Wed, 7 Dec 2022 16:44:09 +0000 (23:44 +0700)]
ramips: Add support for Beeline SmartBox TURBO+
This adds support for Beeline Smart Box TURBO+ (Serсomm S3 CQR) router.
Device specification
--------------------
SoC Type: MediaTek MT7621AT (880 MHz, 2 cores)
RAM (Nanya NT5CC64M16GP): 128 MiB
Flash (Macronix MX30LF1G18AC): 128 MiB
Wireless 2.4 GHz (MT7603EN): b/g/n, 2x2
Wireless 5 GHz (MT7615N): a/n/ac, 4x4
Ethernet: 5 ports - 5×GbE (WAN, LAN1-4)
USB ports: 1xUSB3.0
Buttons: 2 button (reset, wps)
LEDs: Red, Green, Blue
Zigbee (EFR32MG1B232GG): 3.0
Stock bootloader: U-Boot 1.1.3
Power: 12 VDC, 1.5 A
Installation (fw 2.0.9)
-----------------------
1. Login to the web interface under SuperUser (root) credentials.
Password: SDXXXXXXXXXX, where SDXXXXXXXXXX is serial number of the
device written on the backplate stick.
2. Navigate to Setting -> WAN. Add:
Name - WAN1
Connection Type - Static
IP Address - 172.16.0.1
Netmask - 255.255.255.0
Save -> Apply. Set default: WAN1
3. Enable SSH and HTTP on WAN. Setting -> Remote control. Add:
Protocol - SSH
Port - 22
IP Address - 172.16.0.1
Netmask - 255.255.255.0
WAN Interface - WAN1
Save ->Apply
Add:
Protocol - HTTP
Port - 80
IP Address - 172.16.0.1
Netmask - 255.255.255.0
WAN interface - WAN1
Save -> Apply
4. Set up your PC ethernet:
Connection Type - Static
IP Address - 172.16.0.2
Netmask - 255.255.255.0
Gateway - 172.16.0.1
5. Connect PC using ethernet cable to the WAN port of the router
6. Connect to the router using SSH shell under SuperUser account
7. Make a mtd backup (optional, see related section)
8. Change bootflag to Sercomm1 and reboot:
printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3
reboot
9. Login to the router web interface under admin account
10. Remove dots from the OpenWrt factory image filename
11. Update firmware via web using OpenWrt factory image
Revert to stock
---------------
Change bootflag to Sercomm1 in OpenWrt CLI and then reboot:
printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3
mtd backup
----------
1. Set up a tftp server (e.g. tftpd64 for windows)
2. Connect to a router using SSH shell and run the following commands:
cd /tmp
for i in 0 1 2 3 4 5 6 7 8 9 10; do nanddump -f mtd$i /dev/mtd$i; \
tftp -l mtd$i -p 172.16.0.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done
tftp -l mtd.md5 -p 171.16.0.2
Recovery
--------
Use sercomm-recovery tool.
Link: https://github.com/danitool/sercomm-recovery
MAC Addresses (fw 2.0.9)
------------------------
+-----+------------+---------+
| use | address | example |
+-----+------------+---------+
| LAN | label | *:e8 |
| WAN | label + 1 | *:e9 |
| 2g | label + 4 | *:ec |
| 5g | label + 5 | *:ed |
+-----+------------+---------+
The label MAC address was found in Factory 0x21000
Factory image format
--------------------
+---+-------------------+-------------+--------------------+
| # | Offset | Size | Description |
+---+-------------------+-------------+--------------------+
| 1 | 0x0 | 0x200 | Tag Header Factory |
| 2 | 0x200 | 0x100 | Tag Header Kernel1 |
| 3 | 0x300 | 0x100 | Tag Header Kernel2 |
| 4 | 0x400 | SIZE_KERNEL | Kernel |
| 5 | 0x400+SIZE_KERNEL | SIZE_ROOTFS | RootFS(UBI) |
+---+-------------------+-------------+--------------------+
Co-authored-by: Mikhail Zhilkin <csharper2005@gmail.com>
Signed-off-by: Maximilian Weinmann <x1@disroot.org>
(cherry picked from commit
8fcfb21b16e7537b9a871a1f67cb218c6be93149)
Mikhail Zhilkin [Fri, 2 Dec 2022 15:26:17 +0000 (15:26 +0000)]
scripts: sercomm-kernel-header.py: improve compatibility
This improves compatibility with the elder stock firmwares of the
following devices, which have not yet been merged into OpenWrt:
- Beeline SmartBox Pro
- Beeline SmartBox Turbo+
- WiFire S1500.NBN
Without this, OpenWrt factory image installation may fail.
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
Signed-off-by: Maximilian Weinmann <x1@disroot.org>
(cherry picked from commit
35a4418d3966ccf6229916b0021bd18871ef22dd)
Jitao Lu [Wed, 14 Jun 2023 09:25:03 +0000 (17:25 +0800)]
openssl: passing cflags to configure
openssl sets additional cflags in its configuration script. We need to
make it aware of our custom cflags to avoid adding conflicting cflags.
Fixes: #12866
Signed-off-by: Jitao Lu <dianlujitao@gmail.com>
(cherry picked from commit
51f57e7c2dd2799e34036ec74b3436bf490fade0)
Tianling Shen [Wed, 14 Jun 2023 11:25:28 +0000 (19:25 +0800)]
rockchip: fix setup network config for nanopi r2c
Without it the WAN port won't be initialized properly.
Fixes: 8f578c15b314 ("rockchip: add NanoPi R2C support")
Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
(cherry picked from commit
d312f12b1a6ee41e7bf1e07ec0349e141c07b92e)
John Audia [Thu, 15 Jun 2023 20:00:09 +0000 (16:00 -0400)]
kernel: bump 5.15 to 5.15.117
Manually rebased:
generic/backport-5.15/346-v5.18-01-Revert-ata-ahci-mvebu-Make-SATA-PHY-optional-for-Arm.patch
Removed upstreamed:
generic/backport-5.15/830-v6.2-ata-ahci-fix-enum-constants-for-gcc-13.patch
All other patches automatically rebased.
Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
0e89ba8430a5d9a638f71d9534ea4152fc26e278)
John Audia [Sat, 10 Jun 2023 20:57:15 +0000 (16:57 -0400)]
kernel: bump 5.15 to 5.15.116
All patches rebased automatically.
Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
5dc78d8f18e8f536317d9438b096a484a9c49862)
John Audia [Sun, 11 Jun 2023 17:11:52 +0000 (13:11 -0400)]
kernel: add CONFIG_DRM_RCAR_USE_LVDS is not set
Added missing symbol.
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
fc3383a55877150ffe8068c46fe61f6881b1033c)
John Audia [Tue, 6 Jun 2023 14:45:47 +0000 (10:45 -0400)]
kernel: bump 5.15 to 5.15.115
Manually rebased:
backport-5.15/603-v5.19-page_pool-Add-recycle-stats-to-page_pool_put_page_bu.patch
pending-5.15/723-net-mt7531-ensure-all-MACs-are-powered-down-before-r.patch*
Removed upstreamed:
generic-backport/610-v6.3-net-page_pool-use-in_softirq-instead.patch[1]
backport-5.15/705-12-v6.0-net-dsa-mt7530-rework-mt753-01-_setup.patch[2]
backport-5.15/790-v6.4-0010-net-dsa-mt7530-split-off-common-parts-from-mt7531_se.patch[3]
backport-5.15/703-10-v5.16-net-dsa-introduce-helpers-for-iterating-through-port.patch[4]
All other patches automatically rebased.
* Modified to define the variable i as suggested by DragonBluep in PR discussion.
See: https://github.com/openwrt/openwrt/pull/12823#issuecomment-
1578518576
1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.115&id=
3af319d5147454dc63665ef451229c674b538377
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.115&id=
0753c1ef24194580f7165ae6e259b59a851392f2
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.115&id=
5a7266feaa6d708fc6880a161786eaa884ef3c8e
4. https://github.com/gregkh/linux/commit/
9902f91cf666124a6b50bbcf483b46ecb09ef408
Build system: x86_64
Build-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: bcm2711/RPi4B, ramips/tplink_archer-a6-v3, filogic/xiaomi_redmi-router-ax6000-ubootmod
Signed-off-by: John Audia <therealgraysky@proton.me>
(cherry picked from commit
5714660643e9170920be2abbb2297d9aac0b9533)
Christian Marangi [Fri, 16 Jun 2023 09:18:05 +0000 (11:18 +0200)]
ipq806x: set PERFORMANCE as the default cpufreq governor
Move default cpufreq governor from ONDEMAND to PERFORMANCE. The temp
increase is just 2°C and Watt usage the change is minimal in the order
of additional millwatt. The SoC and krait in general looks to suffer for
some problem with cache scaling. To have better system stability, force
cpu freq and cache freq to the max value supported by the system. This
follows mvebu platform where cpufreq is broken and cause minimal
temp/watt increase.
User can still tweak the governor to ondemand using sysfs entry if
needed.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
6f5ea752d7c95ba426ca21a6588cae8812bb3e7c)
Christian Marangi [Fri, 16 Jun 2023 09:32:52 +0000 (11:32 +0200)]
Revert "ipq806x: disable cache and fabric devfreq driver to improve stability"
This reverts commit
60fc93b35935a88b1e31d853a0abacf0847d8de4.
Reenable devfreq and revert for both 5.15 and 6.1.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
37e459321360aab13ed89647ed5c5033281047ae)
Piotr Dymacz [Mon, 12 Jun 2023 19:22:52 +0000 (21:22 +0200)]
CI: labeler: add sifiveu target
Add support for 'sifiveu' target and its specific packages in labeler.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit
92b8b18c2685e9e509d2b8b797de7e03424d17d1)
Tianling Shen [Sat, 10 Jun 2023 11:08:04 +0000 (19:08 +0800)]
toolchain: gcc: backport inline subword atomic support for riscv
RISC-V has no support for subword atomic operations; code currently
generates libatomic library calls.
This patch changes the default behavior to fast inline subword atomic
calls that do not require libatomic.
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
(cherry picked from commit
7b4a966de88aa0e1f9b7faa62a4d6cb7b01e9f8f)
Daniel González Cabanelas [Fri, 16 Jun 2023 12:24:13 +0000 (14:24 +0200)]
bcm63xx: fix the Home Hub 2a power LED
Power LED register is wrong at dts. Fix it.
Fixes: 9ceeaf4c6cac ("brcm63xx: switch to hardware led controllers")
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
(cherry picked from commit
0e01ba93610240ad84f9bbc5fc6e5982a07d39f9)
Álvaro Fernández Rojas [Thu, 15 Jun 2023 16:16:21 +0000 (18:16 +0200)]
bmips: add support for Comtrend VG-8050
The Comtrend VG-8050 is a wifi gigabit ethernet router, 2.4 GHz single band with
two external antennas.
Hardware:
- SoC: Broadcom BCM63169
- CPU: dual core BMIPS4350 @ 400Mhz
- RAM: 128 MB DDR
- Flash: 128 MB NAND
- LAN switch: Broadcom BCM53125, 5x 1Gbit
- Wifi 2.4 GHz: SoC (BCM63268) 802.11bgn
- USB: 1x 2.0 (optional)
- Buttons: 2x (reset)
- LEDs: yes
- UART: yes
Installation via CFE web UI:
1. Power off the router.
2. Press reset button near the power switch.
3. Keep it pressed while powering up during ~20+ seconds.
4. Browse to http://192.168.1.1 and upload the firmware.
5. Wait a few minutes for it to finish.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
47cc09aa7a9a12cb7b18ef96f0b5d0bcb5d84b9e)
Álvaro Fernández Rojas [Thu, 15 Jun 2023 18:53:11 +0000 (20:53 +0200)]
bmips: dts: dgnd3700: fix WAN port
All switch ports are labeled as port@address so let's follow the same pattern.
Fixes: ed79519b8d89 ("bmips: add support for Netgear DGND3700 v1, DGND3800B")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
d9210c5ff797896317d1b6293a5ad768b7482cfe)
Álvaro Fernández Rojas [Mon, 12 Jun 2023 17:51:22 +0000 (19:51 +0200)]
bmips: add support for Sercomm AD1018
The Sercomm AD1018 is a wifi fast ethernet router, 2.4 GHz single band with
two internal antennas.
Hardware:
- SoC: Broadcom BCM6328
- CPU: single core BMIPS4350 @ 320Mhz
- RAM: 64 MB (v1) / 128 MB (v2) DDR
- Flash: 128 MB NAND
- Ethernet LAN: 4x 100Mbit
- Wifi 2.4 GHz: miniPCI Broadcom BCM43217 802.11bgn
- USB: 1x 2.0
- Buttons: 3x (reset)
- LEDs: yes
- UART: yes
Installation via OEM web UI:
1. Use the admin credentials to login via web UI
2. Go to Managament->Update firmware and select the OpenWrt CFE firmware
3. Press "Update Firmware" button and wait some minutes until it finish
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
38ebb2eafde604ff6d9b0021d1d21208070a2d09)
Álvaro Fernández Rojas [Thu, 15 Jun 2023 11:21:18 +0000 (13:21 +0200)]
bmips: bump LOADER_ENTRY to RAM + 16M
This is needed on devices like Sercomm AD1018 for booting recent kernels due
to bigger kernels.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
434434ca4748ba669176ce38b70a6525f90598b6)
Daniel González Cabanelas [Tue, 13 Jun 2023 20:45:53 +0000 (22:45 +0200)]
bmips: add support for Actiontec R1000H
The Actiontec R1000H is a gigabit wifi router, 2.4 GHz single band with
two external antennas. It comes with a coaxial HomePNA port.
Hardware:
- SoC: Broadcom BCM6368
- CPU: dual core BMIPS4350 V3.1 @400Mhz
- RAM: 64 MB DDR
- Flash: 32 MB parallel NOR
- LAN switch: Broadcom BCM53115, 5x 1Gbit
- LAN coaxial : 1x HPNA 3.1, CG3211 + CG3213
- Wifi 2.4 GHz: Broadcom BCM4322 802.11bgn
- USB: 1x 2.0
- Buttons: 2x, 1 reset
- LEDs: 7x
- UART: yes
The HPNA hardware probably needs a firmware to make the coaxial port work.
In the OEM firmware, it's apparently sent with an utility (inhpna) through
the ethernet port.
Installation via CFE web UI:
1. Connect the UART serial port.
2. Power on the router and press enter at the console prompt to stop the
bootloader.
4. Browse to http://192.168.1.1 and upload the OpenWrt CFE firmware
5. Wait a few minutes for it to finish
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
(cherry picked from commit
e1a55de7a7eafd40a4fab5f29153a1a3c3606818)
Álvaro Fernández Rojas [Thu, 15 Jun 2023 08:53:08 +0000 (10:53 +0200)]
bcm63xx: switch to standard nand_do_upgrade
Now that JFFS2 cleanmarkers are supported on the standard nand_do_upgrade
function we can start using it on bcm63xx.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from
60fc3bc9487cbda7092e1b926467b07ea041bc60)
Álvaro Fernández Rojas [Thu, 15 Jun 2023 08:48:25 +0000 (10:48 +0200)]
bmips: switch to standard nand_do_upgrade
Now that JFFS2 cleanmarkers are supported on the standard nand_do_upgrade
function we can start using it on bmips.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from
464dfac049daecad145184f8c2dd4a46a7fdd37c)
Álvaro Fernández Rojas [Thu, 15 Jun 2023 08:46:10 +0000 (10:46 +0200)]
base-files: upgrade: nand: add JFFS2 cleanmarkers support
Some Broadcom MIPS devices require JFFS2 cleanmarkers to be present on the
kernel partition or the bootloader will identify the partition as corrupt and
won't boot the kernel.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
434df8df549a4d709be9eb19c0d2bd8abb4d4881)
Álvaro Fernández Rojas [Wed, 14 Jun 2023 21:27:29 +0000 (23:27 +0200)]
bcm63xx: fix NETGEAR DGND3700v2 boot loop
The DGND3700v2 renames the cferam bootloader from cferam to cfeXXX, where XXX
is the number of firmware upgrades performed by the bootloader. Other bcm63xx
devices rename cferam.000 to cferam.XXX, but this device is special because
the cferam name isn't changed on the first firmware flashing but it's changed
on the subsequent ones.
Therefore, we need to look for "cfe" instead of "cferam" to properly detect
the cferam partition and fix the bootlop.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
cdfcac6e246de9f237d1425e498db3f34ddebbaf)
Álvaro Fernández Rojas [Wed, 14 Jun 2023 21:23:14 +0000 (23:23 +0200)]
bmips: fix NETGEAR DGND3700v2 boot loop
The DGND3700v2 renames the cferam bootloader from cferam to cfeXXX, where XXX
is the number of firmware upgrades performed by the bootloader. Other bcm63xx
devices rename cferam.000 to cferam.XXX, but this device is special because
the cferam name isn't changed on the first firmware flashing but it's changed
on the subsequent ones.
Therefore, we need to look for "cfe" instead of "cferam" to properly detect
the cferam partition and fix the bootlop.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
915e914cfaa243ea36f8c7a4f0f045ec890304fa)
Álvaro Fernández Rojas [Wed, 14 Jun 2023 21:21:34 +0000 (23:21 +0200)]
kernel: mtd: bcm-wfi: add cferam name support
Some devices rename cferam bootloader using specific patterns and don't follow
broadcom standards for renaming cferam files. This requires supporting
different cferam file names.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit
8813edd8d9695d4e3939fdaa3c530c682f91de11)
Zoltan HERPAI [Sun, 16 Dec 2018 10:05:58 +0000 (11:05 +0100)]
sifiveu: add new target for SiFive U-based boards
RISC-V is a new CPU architecture aimed to be fully free and open. This
target will add support for it, based on 5.15.
Supports running on:
- HiFive Unleashed - FU540, first generation
- HiFive Unmatched - FU740, current latest generation, PCIe
SD-card images are generated, where the partitions are required to have
specific type codes. As it is commonplace nowadays, OpenSBI is used as the
first stage, with U-boot following as the proper bootloader.
Specifications:
HiFive Unleashed:
- CPU: SiFive FU540 quad-core RISC-V (U54, RV64IMAFDC or RV64GC)
- Memory: 8Gb
- Ethernet: 1x 10/100/1000
- Console: via microUSB
HiFive Unmatched:
- CPU: SiFive FU740 quad-core RISC-V (U74, RV64IMAFDCB or RV64GCB)
- Memory: 16Gb
- Ethernet: 1x 10/100/1000
- USB: 4x USB 3.2
- PCIe: - 1x PCIe Gen3 x8
- 1x M.2 key M (PCIe x4)
- 1x M.2 Key E (PCIe x1 / USB2.0)
- Console: via microUSB
Installation:
Standard SD-card installation via dd-ing the generated image to
an SD-card of at least 256Mb.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit
a3469a90c47edd94daae6a23b810b74cd8389ce3)
Zoltan HERPAI [Sun, 26 Jan 2020 22:46:18 +0000 (23:46 +0100)]
uboot-sifiveu: add bootloader package for SiFive Ux40 boards
Add new package for building bootloader for the SiFive U-series boards. Supported
boards at this stage are the HiFive Unleashed and HiFive Unmatched.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit
91406797f9d06c0008f0a8c2c8455abfb37bf28c)
Zoltan HERPAI [Sat, 23 Apr 2022 17:06:28 +0000 (19:06 +0200)]
firmware-utils: ptgen: add SiFive-related GUID types
Add patch until it gets accepted in firmware-utils upstream.
The SiFive RISC-V SoCs use two special partition types in the boot process.
As a first step, the ZSBL (zero-stage bootloader) in the CPU looks for a
partition with a GUID of
5B193300-FC78-40CD-8002-
E86C45580B47 to load the
first-stage bootloader - which in OpenWrt's case is an SPL image. The FSBL
(SPL) then looks for a partition with a GUID of
2E54B353-1271-4842-806F-
E436D6AF6985 to load the SSBL which is usually an
u-boot.
With ptgen already supporting GPT partition creation, add the required GUID
types and name them accordingly to be invoked with the '-T <GPT partition
type>' parameter.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit
18238c442866a6ae93533e2421a6f44bc9e57ac6)
Zoltan HERPAI [Wed, 15 May 2019 15:21:45 +0000 (17:21 +0200)]
openssl: add linux-riscv64 into the targets list
Add "linux-riscv64-openwrt" into openssl configurations to enable building
on riscv64.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit
a0840ecd5309921b62fcf5f563180ef8f955509e)
Zoltan HERPAI [Sun, 26 Jan 2020 22:45:48 +0000 (23:45 +0100)]
opensbi: add package for RISC-V
OpenSBI is a form of a first-stage bootloader, which initializes
certain parts of an SoC and then passes on control to the second
stage bootloader i.e. an u-boot image.
We're introducing the package with release v1.2, which provides
SBI v0.3 and the SBI SRST extensions which helps to gracefully
reboot/shutdown various HiFive-U SoCs.
Tested on SiFive Unleashed and Unmatched boards.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit
944b13b3ee1d89e11a0121fbeeaa465ab1e25c3c)
Zoltan HERPAI [Sun, 16 Dec 2018 09:45:53 +0000 (10:45 +0100)]
generic: groundwork for RISC-V
Add build infrastructure for RISC-V.
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
(cherry picked from commit
50c05f6cd721130701cbbc77a75d2e090259c4e5)
Petr Štetiar [Fri, 2 Jun 2023 11:48:38 +0000 (13:48 +0200)]
uboot-armsr: add support for QEMU armv7/armv8
Add new package so we can use self-compiled bootloader during QEMU based
testing and development.
Backported fix[1] is needed for EFI boot from virtio devices.
1. https://patchwork.ozlabs.org/project/uboot/patch/
20230424134946.v10.7.Ia5f5e39c882ac22b5f71c4d576941b34e868eeba@changeid/
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
b8e3fa2d1205213c71bc356744e9bed6cd8e69f9)
Petr Štetiar [Fri, 2 Jun 2023 11:54:20 +0000 (13:54 +0200)]
u-boot.mk: add support for config customization
Make it possible to easily customize U-Boot config options via new
`UBOOT_CUSTOMIZE_CONFIG` variable, so we don't need to patch config
files or override config step with shell hackery.
This generic approach uses `config` CLI to tweak the .config as needed,
for example:
UBOOT_CUSTOMIZE_CONFIG := \
--enable CMD_EFIDEBUG \
--enable CMD_BOOTMENU \
--enable AUTOBOOT \
--enable AUTOBOOT_MENU_SHOW \
--disable AUTOBOOT_KEYED \
--disable AUTOBOOT_USE_MENUKEY \
--disable BOOTMENU_DISABLE_UBOOT_CONSOLE \
--set-val BOOTDELAY 2
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
186b97590b9b2f47abc535c9df0687e00e60f78e)
Mathew McBride [Fri, 9 Jun 2023 03:57:52 +0000 (03:57 +0000)]
CI: change armvirt reference to armsr
The armvirt target has been renamed to armsr.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
3df01b1aa40a8e783dbbebdbe6088a49aed186f8)
Mathew McBride [Fri, 9 Jun 2023 02:19:40 +0000 (02:19 +0000)]
scripts: qemustart: change armvirt references to armsr
The armvirt target has been renamed to 'armsr' (Arm SystemReady)
after inclusion of EFI support.
Change references (including subtargets) accordingly.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
36bf9d861082d30fdb1cf1d00f819e60b8bb84a7)
Mathew McBride [Tue, 6 Jun 2023 23:24:18 +0000 (23:24 +0000)]
wolfssl: change armvirt reference to armsr
armvirt target has been renamed to armsr (Arm SystemReady).
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
203deef82cdcb2c4deb01e2a4cee62a600723320)
Mathew McBride [Tue, 6 Jun 2023 23:23:33 +0000 (23:23 +0000)]
kernel: netdevices: change armvirt references to armsr
armvirt target has been renamed to armsr (Arm SystemReady)
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
c0bcfde58e751d674adfac51944df9e20ab978e4)
Mathew McBride [Tue, 6 Jun 2023 23:22:36 +0000 (23:22 +0000)]
grub2: change armvirt reference to armsr
The armvirt target has been renamed to armsr (Arm SystemReady),
so the GRUB configuration also needs to change.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
4ce7d6c8885a0e1873011f8f48b67e2ecd18e43d)
Mathew McBride [Tue, 6 Jun 2023 23:22:01 +0000 (23:22 +0000)]
config: change references from armvirt to armsr
armvirt target has been renamed to armsr (Arm SystemReady),
so the config defaults need to be changed as well.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
40ce6a7920a8f56d07228795a526576a8762aead)
Mathew McBride [Fri, 9 Jun 2023 00:43:33 +0000 (00:43 +0000)]
armsr: rename from armvirt
Now that the armvirt target supports real hardware, not just
VMs, thanks to the addition of EFI, rename it to something
more appropriate.
'armsr' (Arm SystemReady) was chosen after the name of
the Arm standards program.
The 32 and 64 bit targets have also been renamed
armv7 and armv8 respectively, to allow future profiles
where required (such as armv9).
See https://developer.arm.com/documentation/102858/0100/Introduction
for more information.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05 version of commit
40b02a230167626def69389452f19b7109aaeac1)
Mathew McBride [Wed, 5 Oct 2022 01:40:22 +0000 (12:40 +1100)]
kernel: kmod-amazon-ena: move to top level netdevices
The Amazon ENA network devices are also used on the
AWS Arm (Graviton) instance types, so move it from
the x86-only module file to the top level netdevices.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
3a7c8fd15e89237c8c9db62393d057f3a47429d2)