Christian Marangi [Wed, 20 Mar 2024 10:16:14 +0000 (11:16 +0100)]
ipq40xx: 6.6: fix DTS to use reference for usb node
Fix DTS to use reference for usb node instead of redefining
them since upstream usb node names changed from usb2/3 to usb.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Christian Marangi [Wed, 20 Mar 2024 10:10:40 +0000 (11:10 +0100)]
ipq40xx: split files in 6.1 and 6.6 dedicated directory
Since with recent kernel version DTS moved to a dedicated directory,
it's required to split files to per kernel version to follow kernel
version directory structure.
Also makes use of DEVICE_DTS_DIR to target the correct DTS directory
based on the kernel version.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Christian Marangi [Wed, 20 Mar 2024 10:09:07 +0000 (11:09 +0100)]
kernel/ipq40xx: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.
See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Christian Marangi [Wed, 20 Mar 2024 10:09:03 +0000 (11:09 +0100)]
kernel/ipq40xx: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.
When doing `git bisect`, consider `git bisect --skip`.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Christian Marangi [Tue, 2 Apr 2024 19:41:59 +0000 (21:41 +0200)]
toolchain: binutils: backport patch to fix mipsel_24kc_24kf
Backport patch to fix mipsel_24kc_24kf. Patch has been merged in
binutils master and these are straight backports with minor rework.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Robert Marko [Tue, 2 Apr 2024 08:27:21 +0000 (10:27 +0200)]
procd: update to Git HEAD (2024-03-30)
254810d16cf1 watchdog: always close fd on watchdog stop
946552a7b598 trace: use standard POSIX header for basename()
Signed-off-by: Robert Marko <robimarko@gmail.com>
Paul Spooren [Tue, 2 Apr 2024 11:18:50 +0000 (13:18 +0200)]
zstd: update to 1.5.6
Full changelog here:
https://github.com/facebook/zstd/releases/tag/v1.5.6
Signed-off-by: Paul Spooren <mail@aparcar.org>
Georgi Valkov [Sat, 30 Mar 2024 20:10:27 +0000 (22:10 +0200)]
toolchain/gcc: fix build errors on macOS with Xcode 15.3
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__locale:550:5: error: '__abi_tag__' attribute only applies to structs, variables, functions, and namespaces
_LIBCPP_INLINE_VISIBILITY
^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__config:891:37: note: expanded from macro '_LIBCPP_INLINE_VISIBILITY'
# define _LIBCPP_INLINE_VISIBILITY _LIBCPP_HIDE_FROM_ABI
^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__config:870:26: note: expanded from macro '_LIBCPP_HIDE_FROM_ABI'
__attribute__((__abi_tag__(_LIBCPP_TOSTRING(_LIBCPP_ODR_SIGNATURE))))
Fixed using backport of upstream commits [1-2] as discussed here
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111632#c21
[1] Include safe-ctype.h after C++ standard headers, to avoid over-poisoning
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=
9970b576b7e4ae337af1268395ff221348c4b34a
[2] libcc1: fix <vector> include
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=
5213047b1d50af63dfabb5e5649821a6cb157e33
Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
Rafał Miłecki [Mon, 1 Apr 2024 21:59:03 +0000 (23:59 +0200)]
mt76: add mt7603 possible workaround for MT7603EN / MT7628AN stability
Add debugfs entry for disabling frames buffering that may be a reason
for mt7603 instability. This patch was sent upstream for review and at
least wasn't rejected yet. Let's add it to let OpenWrt users test if it
really helps.
Example usage:
echo N > /sys/kernel/debug/ieee80211/phy0/mt76/frames_buffering
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Sean Khan [Mon, 1 Apr 2024 02:03:22 +0000 (22:03 -0400)]
qca-nss-dp: cp instead of symlink for `nss_dp_arch.h`
Build files shouldn't be symlinked into the staging directory, as doing so
would create a race condition if the build folder for 'qca-nss-dp' gets
deleted for any reason.
We should instead just copy over the required platform file to avoid
breaking compilation for any dependent packages.
Signed-off-by: Sean Khan <datapronix@protonmail.com>
Gentry Deng [Sun, 31 Mar 2024 13:42:12 +0000 (21:42 +0800)]
README: replace "MacOSX" with "macOS"
In October 2018, the last version of the operating system named "Mac OS X" ended its life cycle.
It's time to change it to "macOS".
Signed-off-by: Gentry Deng <me@gend.moe>
Mieczyslaw Nalewaj [Mon, 1 Apr 2024 08:44:17 +0000 (10:44 +0200)]
generic: 6.1: refresh backport patches
Refresh backport patches for kernel 6.1.82 with make target/linux/refresh.
Fixes: 06cdc07f8cc7 ("ath79: add support for Huawei AP5030DN")
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Sean Khan [Tue, 26 Mar 2024 23:40:21 +0000 (19:40 -0400)]
qca-ssdk: rework make to allow parallel building
The current build procedure always wipes away build files, this is
costly as ssdk is a parent dependency on a whole host of packages and
will always end up rebuilding (and in serial) the whole package.
This patch includes:
1. Module Building Optimization: Instead of creating a temporary
directory (temp) and copying files into it for module building,
the directly invoke the module build command with the
necessary paths. This simplifies the build process
and avoids unnecessary file operations, speeding up
the build process and reducing disk usage.
2. Parallel Build Support: By removing the explicit creation of
the temporary directory and associated file copying operations,
and passing in $(MAKE) $(PKG_JOBS) allows building in parallel.
3. Fix `EXTRA_CFLAGS`: This variable is referenced and set within MAKE_FLAGS,
so doesn't preserve spaces. Should have its defined value quoted.
Signed-off-by: Sean Khan <datapronix@protonmail.com>
Tianling Shen [Thu, 7 Mar 2024 06:19:08 +0000 (14:19 +0800)]
mediatek: add support for OpenEmbed SOM7981
Hardware specification:
SoC: MediaTek MT7981B 2x A53
Flash: 256 MiB SPI-NAND, 32 GB eMMC optional
RAM: 0.5/1 GB DDR4
Ethernet: 1x 1GbE, 1x 2.5GbE (RTL8221B)
WiFi: MediaTek MT7976C
USB: 1x USB 3.0
GPIO: 26-Pin header
UART: 6 GND, 8 TX, 10 RX (in Pin header)
Button: Reset, WPS
Power: Type-C PD
Installation:
The board comes with a third-party custom OpenWrt image, you can upload
sysupgrade image via LuCI directly WITHOUT keeping configurations.
Or power on the board with pressing reset button for 5 second, then visit
http://192.168.1.1 and upload -factory.bin firmware.
Signed-off-by: Tianling Shen <cnsztl@gmail.com>
Radito Wahyu [Sat, 30 Mar 2024 02:28:57 +0000 (09:28 +0700)]
ramips: add support for BOLT BL100
BL100 is a router made by Bolt by a provider in Indonesia
The original firmware created using Mediatek SDK and kernel 2.6.36
- Chipset: MediaTek MT7620A ver 2, eco 6
- RAM: 64 MB
- Bootloader: U Boot
- Flash: Winbond W25Q128BV (16 MB)
- Ports: 2x 10/100 Ethernet, 1x RJ-11 VoIP
- Modem: Qualcomm LTE B40 (2300 Mhz) VID:05c6 PID:9026
- Wireless: Internal MT7620A (2.4 Ghz) & Mediatek MT76x2E (5.8 Ghz)
- Switch: MediaTek MT7620A built-in 5-port 10/100M switch
- Voltage: DC 12V 1A
- Antenna Port: 2x External Antenna, 2 LTE U.FL, 2 WiFi U.FL
- Serial Port: Yes, 3.3 V TTL, Baud 57600 8N1
- Buttons: Reset and WPS
- LED: 15 Total
- 4 blue lte, 2 red lte, 1 reset, 1 power.
- 1 wps, 1 voip, 1 wlan2, 1 wlan5, 1 lan, 1 wan, 1 wlan.
Installation via stock firmware
1. Unlock Telnet access by downloading the backup .tar.gz file
2. Change the Telnet configuration to LAN_Telnet=1
3. Import backup configuration
4. Restart the router
5. Login to telnet with username and password = admin : db40
6. Download sysupgrade binary and mtd_write to the kernel partition
`mtd_write write openwrt-bolt_bl100-squashfs-sysupgrade.bin Kernel`
Signed-off-by: Radito Wahyu <arditogits@gmail.com>
Felix Fietkau [Sun, 31 Mar 2024 17:42:16 +0000 (19:42 +0200)]
unetd: update to Git HEAD (2024-03-31)
52144f723bec pex: after receiving data update req, notify peer of local address/port
29aacb9386e0 pex: track indirect hosts (reachable via gateway) as peers without adding them to wg
48049524d4fc pex: do not send peer notifications for hosts with a gateway
12ac684ee22a pex: do not query for hosts with a gateway
203c88857354 pex: fix endian issues on config transfer
a29d45c71bca network: fix endian issue in converting port to network id
cbbe9d337a17 unet-cli: emit id by default
806457664ab6 unet-cli: strip initial newline in usage message
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Roland Reinl [Sun, 24 Dec 2023 13:42:23 +0000 (14:42 +0100)]
filogic: Add support for D-Link AQUILA PRO AI M30
Specification:
- MT7981 CPU using 2.4GHz and 5GHz WiFi (both AX)
- MT7531 switch
- 512MB RAM
- 128MB NAND flash with two UBI partitions with identical size
- 1 multi color LED (red, green, blue, white) connected via GCA230718
- 3 buttons (WPS, reset, LED on/off)
- 1 1Gbit WAN port
- 4 1Gbit LAN ports
Disassembly:
- There are four screws at the bottom: 2 under the rubber feets, 2 under the label.
- After removing the screws, the white plastic part can be shifted out of the blue part.
- Be careful because the antennas are mounted on the side and the top of the white part.
Serial Interface
- The serial interface can be connected to the 4 pin holes on the side of the board.
- Pins (from front to rear):
- 3.3V
- RX
- TX
- GND
- Settings: 115200, 8N1
MAC addresses:
- WAN MAC is stored in partition "Odm" at offset 0x81
- LAN (as printed on the device) is WAN MAC + 1
- WLAN MAC (2.4 GHz) is WAN MAC + 2
- WLAN MAC (5GHz) is WAN MAC + 3
Flashing via Recovery Web Interface:
- The recovery web interface always flashes to the currently active partition.
- If OpenWrt is flahsed to the second partition, it will not boot.
- Ensure that you have an OEM image available (encrypted and decrypted version). Decryption is described in the end.
- Set your IP address to 192.168.200.10, subnetmask 255.255.255.0
- Press the reset button while powering on the device
- Keep the reset button pressed until the LED blinks red
- Open a Chromium based and goto http://192.168.200.1 (recovery web interface)
- Download openwrt-mediatek-filogic-dlink_aquila-pro-ai-m30-a1-squashfs-recovery.bin
- The recovery web interface always reports successful flashing, even if it fails
- After flashing, the recovery web interface will try to forward the browser to 192.168.0.1 (can be ignored)
- If OpenWrt was flashed to the first partition, OpenWrt will boot (The status LED will start blinking white and stay white in the end). In this case you're done and can use OpenWrt.
- If OpenWrt was flashed to the second partition, OpenWrt won't boot (The status LED will stay red forever). In this case, the following steps are reuqired:
- Start the web recovery interface again and flash the **decrypted OEM image**. This will be flashed to the second partition as well. The OEM firmware web interface is afterwards accessible via http://192.168.200.1.
- Now flash the **encrypted OEM image** via OEM firmware web interface. In this case, the new firmware is flashed to the first partition. After flashing and the following reboot, the OEM firmware web interface should still be accessible via http://192.168.200.1.
- Start the web recovery interface again and flash the OpenWrt recovery image. Now it will be flashed to the first partition, OpenWrt will boot correctly afterwards and is accessible via 192.168.1.1.
Flashing via U-Boot:
- Open the case, connect to the UART console
- Set your IP address to 192.168.200.2, subnet mask 255.255.255.0. Connect to one of the LAN interfaces of the router
- Run a tftp server which provides openwrt-mediatek-filogic-dlink_aquila-pro-ai-m30-a1-initramfs-kernel.bin.
- Power on the device and select "7. Load image" in the U-Boot menu
- Enter image file, tftp server IP and device IP (if they differ from the default).
- TFTP download to RAM will start. After a few seconds OpenWrt initramfs should start
- The initramfs is accessible via 192.168.1.1, change your IP address accordingly (or use multiple IP addresses on your interface)
- Perform a sysupgrade using openwrt-mediatek-filogic-dlink_aquila-pro-ai-m30-a1-squashfs-sysupgrade.bin
- Reboot the device. OpenWrt should start from flash now
Revert back to stock using the Recovery Web Interface:
- Set your IP address to 192.168.200.2, subnetmask 255.255.255.0
- Press the reset button while powering on the device
- Keep the reset button pressed until the LED blinks red
- Open a Chromium based and goto http://192.168.200.1 (recovery web interface)
- Flash a decrypted firmware image from D-Link. Decrypting an firmware image is described below.
Decrypting a D-Link firmware image:
- Download https://github.com/RolandoMagico/firmware-utils/blob/M32/src/m32-firmware-util.c
- Compile a binary from the downloaded file, e.g. gcc m32-firmware-util.c -lcrypto -o m32-firmware-util
- Run ./m32-firmware-util M30 --DecryptFactoryImage <OriginalFirmware> <OutputFile>
- Example for firmware M30A1_FW101B05: ./m32-firmware-util M30 --DecryptFactoryImage M30A1_FW101B05\(
0725091522\).bin M30A1_FW101B05\(
0725091522\)_decrypted.bin
Flashing via OEM web interface is not possible, as it will change the active partition and OpenWrt is only running on the first UBI partition.
Controlling the LEDs:
- The LEDs are controlled by a chip called "GCA230718" which is connected to the main CPU via I2C (address 0x40)
- I didn't find any documentation or driver for it, so the information below is purely based on my investigations
- If there is already I driver for it, please tell me. Maybe I didn't search enough
- I implemented a kernel module (
leds-gca230718) to access the LEDs via DTS
- The LED controller supports PWM for brightness control and ramp control for smooth blinking. This is not implemented in the driver
- The LED controller supports toggling (on -> off -> on -> off) where the brightness of the LEDs can be set individually for each on cycle
- Until now, only simple active/inactive control is implemented (like when the LEDs would have been connected via GPIO)
- Controlling the LEDs requires three sequences sent to the chip. Each sequence consists of
- A reset command (0x81 0xE4) written to register 0x00
- A control command (for example 0x0C 0x02 0x01 0x00 0x00 0x00 0xFF 0x01 0x00 0x00 0x00 0xFF 0x87 written to register 0x03)
- The reset command is always the same
- In the control command
- byte 0 is always the same
- byte 1 (0x02 in the example above) must be changed in every sequence: 0x02 -> 0x01 -> 0x03)
- byte 2 is set to 0x01 which disables toggling. 0x02 would be LED toggling without ramp control, 0x03 would be toggling with ramp control
- byte 3 to 6 define the brightness values for the LEDs (R,G,B,W) for the first on cycle when toggling
- byte 7 defines the toggling frequency (if toggling enabled)
- byte 8 to 11 define the brightness values for the LEDs (R,G,B,W) for the second on cycle when toggling
- byte 12 is constant 0x87
Comparison to M32/R32:
- The algorithms for decrypting the OEM firmware are the same for M30/M32/R32, only the keys differ
- The keys are available in the GPL sources for the M32
- The M32/R32 contained raw data in the firmware images (kernel, rootfs), the R30 uses a sysupgrade tar instead
- Creation of the recovery image is quite similar, only the header start string changes. So mostly takeover from M32/R32 for that.
- Turned out that the bytes at offset 0x0E and 0x0F in the recovery image header are the checksum over the data area
- This checksum was not checked in the recovery web interface of M32/R32 devices, but is now active in R30
- I adapted the recovery image creation to also calculate the checksum over the data area
- The recovery image header for M30 contains addresses which don't match the memory layout in the DTS. The same addresses are also present in the OEM images
- The recovery web interface either calculates the correct addresses from it or has it's own logic to determine where which information must be written
Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Roland Reinl [Sat, 30 Mar 2024 16:59:14 +0000 (17:59 +0100)]
mediatek: Moved recovery image creation to include/image-commands.mk
The recovery image is reqired for D-Link M30 as well. So I moved it to include/image-commands.mk to be able to use it for MT7622 and filogic devices.
Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Roland Reinl [Tue, 26 Dec 2023 07:31:15 +0000 (08:31 +0100)]
filogic: Add LED driver for GCA230718
Add basic support for the LED driver for GCA230718.
- I didn't find any documentation or driver for it, so the information below is purely based on my investigations
- If there is already I driver for it, please tell me. Maybe I didn't search enough
- I implemented a kernel module (
leds-gca230718) to access the LEDs via DTS
- The LED controller supports PWM for brightness control and ramp control for smooth blinking. This is not implemented in the driver
- The LED controller supports toggling (on -> off -> on -> off) where the brightness of the LEDs can be set individually for each on cycle
- Until now, only simple active/inactive control is implemented (like when the LEDs would have been connected via GPIO)
- Controlling the LEDs requires three sequences sent to the chip. Each sequence consists of
- A reset command (0x81 0xE4) written to register 0x00
- A control command (for example 0x0C 0x02 0x01 0x00 0x00 0x00 0xFF 0x01 0x00 0x00 0x00 0xFF 0x87 written to register 0x03)
- The reset command is always the same
- In the control command
- byte 0 is always the same
- byte 1 (0x02 in the example above) must be changed in every sequence: 0x02 -> 0x01 -> 0x03)
- byte 2 is set to 0x01 which disables toggling. 0x02 would be LED toggling without ramp control, 0x03 would be toggling with ramp control
- byte 3 to 6 define the brightness values for the LEDs (R,G,B,W) for the first on cycle when toggling
- byte 7 defines the toggling frequency (if toggling enabled)
- byte 8 to 11 define the brightness values for the LEDs (R,G,B,W) for the second on cycle when toggling
- byte 12 is constant 0x87
Signed-off-by: Roland Reinl <reinlroland+github@gmail.com>
Hauke Mehrtens [Fri, 29 Mar 2024 14:45:50 +0000 (15:45 +0100)]
kernel: bump 5.15 to 5.15.153
Removed because they are upstream:
generic/backport-5.15/704-15-v5.19-net-mtk_eth_soc-move-MAC_MCR-setting-to-mac_finish.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=
c5c0760adc260d55265c086b9efb350ea6dda38b
generic/pending-5.15/735-net-mediatek-mtk_eth_soc-release-MAC_MCR_FORCE_LINK-.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=
448cc8b5f743985f6d1d98aa4efb386fef4c3bf2
generic/pending-5.15/736-net-ethernet-mtk_eth_soc-fix-PPE-hanging-issue.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=
9fcadd125044007351905d40c405fadc2d3bb6d6
Add new configuration symbols for tegra target.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
John Audia [Wed, 27 Mar 2024 08:11:32 +0000 (04:11 -0400)]
kernel: bump 6.6 to 6.6.23
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.23
Removed upstreamed:
pending-6.6/735-net-mediatek-mtk_eth_soc-release-MAC_MCR_FORCE_LINK-.patch[1]
pending-6.6/736-net-ethernet-mtk_eth_soc-fix-PPE-hanging-issue.patch[2]
mediatek/patches-6.6/232-clk-mediatek-mt7981-topckgen-flag-SGM_REG_SEL-as-cri.patch[3]
Manually rebased:
mediatek/patches-6.6/100-dts-update-mt7622-rfb1.patch
Added:
generic/backports-6.6/981-mtd-spinand-Add-support-for-5-byte-IDs.patch[4]
All other patches automatically rebased.
1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.23&id=
1f32abb474c1c9bdb21d9eda74c325a0b3a162e5
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.23&id=
943c14ece95eb1cf98d477462aebcbfdfd714633
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.23&id=
6ff01b314149d1cf59caebc29384f0beed21cba4
4. See comments in https://github.com/openwrt/openwrt/pull/14992 regarding broken flogic/xiaomi_redmi-router-ax6000-ubootmod
Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, flogic/glinet_gl-mt6000
Run-tested: x86/64/AMD Cezannei, flogic/xiaomi_redmi-router-ax6000-ubootmod, flogic/glinet_gl-mt6000
Signed-off-by: John Audia <therealgraysky@proton.me>
Marco von Rosenberg [Sun, 31 Mar 2024 15:07:39 +0000 (17:07 +0200)]
ath79: add support for Huawei AP5030DN
Huawei AP5030DN is a dual-band, dual-radio 802.11ac Wave 1 3x3 MIMO
enterprise access point with two Gigabit Ethernet ports and PoE
support.
Hardware highlights:
- CPU: QCA9550 SoC at 720MHz
- RAM: 256MB DDR2
- Flash: 32MB SPI-NOR
- Wi-Fi 2.4GHz: QCA9550-internal radio
- Wi-Fi 5GHz: QCA9880 PCIe WLAN SoC
- Ethernet 1: 10/100/1000 Mbps Ethernet through Broadcom
B50612E PHY
- Ethernet 2: 10/100/1000 Mbps Ethernet through Marvell
88E1510 PHY
- PoE: input through Ethernet 1 port
- Standalone 12V/2A power input
- Serial console externally available through RJ45 port
- External watchdog: SGM706 (1.6s timeout)
Serial console:
9600n8 (9600 baud, no stop bits, no parity, 8 data bits)
MAC addresses:
Each device has 32 consecutive MAC addresses allocated by
the vendor, which don't overlap between devices.
This was confirmed with multiple devices with consecutive
serial numbers.
The MAC address range starts with the address on the label.
To be able to distinguish between the interfaces,
the following MAC address scheme is used:
- eth0 = label MAC
- eth1 = label MAC + 1
- radio0 (Wi-Fi 5GHz) = label MAC + 2
- radio1 (Wi-Fi 2.4GHz) = label MAC + 3
Installation:
0. Connect some sort of RJ45-to-USB adapter to "Console" port of the AP
1. Power up the AP
2. At prompt "Press f or F to stop Auto-Boot in 3 seconds",
do what they say.
Log in with default admin password "admin@huawei.com".
3. Boot the OpenWrt initramfs from TFTP using the hidden script
"run ramboot". Replace IP address as needed:
> setenv serverip 192.168.1.10
> setenv ipaddr 192.168.1.1
> setenv rambootfile
openwrt-ath79-generic-huawei_ap5030dn-initramfs-kernel.bin
> saveenv
> run ramboot
4. Optional but recommended as the factory firmware cannot
be downloaded publicly:
Back up contents of "firmware" partition using the web interface or ssh:
$ ssh root@192.168.1.1 cat /dev/mtd11 > huawei_ap5030dn_fw_backup.bin
5. Run sysupgrade using sysupgrade image. OpenWrt
shall boot from flash afterwards.
Return to factory firmware (using firmware upgrade package downloaded from
non-public Huawei website):
1. Start a TFTP server in the directory where
the firmware upgrade package is located
2. Boot to u-boot as described above
3. Install firmware upgrade package and format the config partitions:
> update system FatAP5X30XN_SOMEVERSION.bin
> format_fs
Return to factory firmware (from previously created backup):
1. Copy over the firmware partition backup to /tmp,
for example using scp
2. Use sysupgrade with force to restore the backup:
sysupgrade -F huawei_ap5030dn_fw_backup.bin
3. Boot AP to U-Boot as described above
Quirks and known issues
-----------------------
- On initial power-up, the Huawei-modified bootloader suspends both
ethernet PHYs (it sets the "Power Down" bit in the MII control
register). Unfortunately, at the time of the initial port, the kernel
driver for the
B50612E/BCM54612E PHY behind eth0 doesn't have a resume
callback defined which would clear this bit. This makes the PHY unusable
since it remains suspended forever. This is why the backported kernel
patches in this commit are required which add this callback and for
completeness also a suspend callback.
- The stock firmware has a semi dual boot concept where the primary
kernel uses a squashfs as root partition and the secondary kernel uses
an initramfs. This dual boot concept is circumvented on purpose to gain
more flash space and since the stock firmware's flash layout isn't
compatible with mtdsplit.
- The external watchdog's timeout of 1.6s is very hard to satisfy
during bootup. This is why the GPIO15 pin connected to the watchdog input
is configured directly in the LZMA loader to output the CPU_CLK/4 signal
which keeps the watchdog happy until the wdt-gpio kernel driver takes
over. Because it would also take too long to read the whole kernel image
from flash, the uImage header only includes the loader which then reads
the kernel image from flash after GPIO15 is configured.
Signed-off-by: Marco von Rosenberg <marcovr@selfnet.de>
[fixed 6.6 backport patch naming]
Signed-off-by: David Bauer <mail@david-bauer.net>
Felix Fietkau [Sat, 30 Mar 2024 20:58:31 +0000 (21:58 +0100)]
kernel: fix build issue on macOS
On x86, the build failed while trying to compile tools/lib/string.c because
of a clash with the system provided implementation for strlcpy
Add ifdefs to prevent the conflict.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Robert Marko [Fri, 29 Mar 2024 17:57:03 +0000 (18:57 +0100)]
tools: b43-tools: fix compilation with GCC14
GCC14 no longer treats integer types and pointer types as equivalent in
assignments (including implied assignments of function arguments and return
values), and instead fails the compilation with a type error.
So, as a workaround lets disable the newly introduced error
-Werror=int-conversion and just make it print a warning to enable compiling
with GCC14 as Fedora 40 now defaults to it.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Shiji Yang [Tue, 19 Mar 2024 13:25:52 +0000 (21:25 +0800)]
uboot-envtools: ath79: remove D-Link DIR-8x9 and DAP-1720 env config
The uboot-envtools can automatically parse the dts 'u-boot,env'
compatible string. So the env config file is now useless.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Shiji Yang [Tue, 19 Mar 2024 13:25:52 +0000 (21:25 +0800)]
ath79: move D-Link DAP-1720 A1 to tiny sub-target
This device only has 64 MiB RAM and ath10k wireless driver will
consume a lot of memory. Let's move it to the tiny sub-target to
get extra 7 MiB of free space. In this way, we can extend their
lifetime to receive support for the next OpenWrt LTS version. This
patch also trims the duplicate "recovery.bin" image as it's the
same as the "factory.bin".
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Shiji Yang [Tue, 19 Mar 2024 13:25:52 +0000 (21:25 +0800)]
ath79: move D-Link DIR-859 and DIR-869 series to tiny sub-target
These devices only have 64 MiB RAM and ath10k wireless driver will
consume a lot of memory. Let's move them to the tiny sub-target to
get extra 7 MiB of free space. In this way, we can extend their
lifetime to receive support for the next OpenWrt LTS version. This
patch also trims the USB package for the non-existent USB port.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Shiji Yang [Tue, 19 Mar 2024 13:25:52 +0000 (21:25 +0800)]
ath79: tiny: enable NVMEM u-boot-env driver
The upcoming D-Link devices to the tiny sub-target require it to
parse the u-env MAC address. The kernel size will increase by
about 1 KiB.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Shiji Yang [Tue, 19 Mar 2024 13:25:52 +0000 (21:25 +0800)]
ath79: move seama image recipe to the common Makefile
Move seama image recipe to the common Makefile in order for some
tiny sub-target D-Link devices can share it.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Shiji Yang [Tue, 19 Mar 2024 13:25:52 +0000 (21:25 +0800)]
ath79: disable building small Flash EnGenius devices
The buildbot has not successfully built them for a long time due
to small Flash size.
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
Rosen Penev [Thu, 22 Feb 2024 06:22:02 +0000 (22:22 -0800)]
dtc: fix compilation with both libraries
Upstream backports.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Wed, 21 Feb 2024 21:16:35 +0000 (13:16 -0800)]
tools/meson: static host and both libraries
Host packages typically are statically linked to avoid rpath issues and
to avoid libraries not being found as a result. With target packages,
both libraries make the most sense as InstallDev typically installs
both, giving packages flexibility. Default this behavior.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Wed, 21 Feb 2024 21:13:34 +0000 (13:13 -0800)]
tools/meson: update to 1.3.2
Add explicit setup as implicit is deprecated.
Rename pkgconfig as no hyphen is deprecated.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Chukun Pan [Fri, 3 Nov 2023 15:02:35 +0000 (23:02 +0800)]
mediatek: filogic: add Netcore N60 support
Hardware specification:
SoC: MediaTek MT7986A 4x A53
Flash: ESMT F50L1G41LB 128MB
RAM: W632GU6NB DDR3 256MB
Ethernet: 1x 2.5G + 4x 1G
WiFi1: MT7975N 2.4GHz 4T4R
WiFi2: MT7975PN 5GHz 4T4R
Button: Reset, WPS
Power: DC 12V 2A
Flash instructions:
1. Connect to the router using ssh or telnet,
username: useradmin, password is the web
login password of the router.
2. Use scp to upload bl31-uboot.fip and flash:
"mtd write xxx-preloader.bin spi0.0"
"mtd write xxx-bl31-uboot.fip FIP"
"mtd erase ubi"
3. 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)
4. Download initramfs image, reboot router,
waiting for tftp recovery to complete.
5. After openwrt boots up, perform sysupgrade.
Note:
1. Back up all mtd partitions before flashing.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Chukun Pan [Thu, 2 Nov 2023 15:16:28 +0000 (23:16 +0800)]
uboot-mediatek: add Netcore N60 support
The vendor uboot requires special fit verification.
So add a custom uboot build for this device.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Mieczyslaw Nalewaj [Mon, 18 Mar 2024 10:07:35 +0000 (11:07 +0100)]
ramips: mt7620a_tplink_archer-c5-v4: use LED_FUNCTION_WLAN_2GHZ and LED_FUNCTION_WLAN_5GHZ
Use LED_FUNCTION_WLAN_2GHZ and LED_FUNCTION_WLAN_5GHZ instead function-enumerator
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Florian Eckert [Wed, 3 May 2023 11:29:42 +0000 (13:29 +0200)]
imagebuilder: add check if target is sourced from feed
The image generation would fail, if the target is included from a feed.
To fix this, check if targets is found in the feed directory.
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Tested-by: Thomas Richard <thomas.richard@bootlin.com>
Florian Eckert [Thu, 25 Jan 2024 09:25:06 +0000 (10:25 +0100)]
imagebuilder: check if BOARD is located in the feeds sub directory
Fixes the regression so that targets that were installed via a feed can
also be build again with the Image Builder.
Fixes: 84ec8c4 ("imagebuilder: copy from buildroot only target/linux")
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Tested-by: Thomas Richard <thomas.richard@bootlin.com>
Tianling Shen [Mon, 25 Mar 2024 18:25:42 +0000 (02:25 +0800)]
rockchip: remove redundant 'console' parameter from boot script
ttyS2 is the default console used for all rockchip boards.
The redundant 'console=tty1' parameter now breaks the console due to
recent procd update.
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Tianling Shen [Mon, 25 Mar 2024 16:40:37 +0000 (00:40 +0800)]
rockchip: remove 'swiotlb' parameter from boot script
We have hardware IOMMU support and this is totally unnecessary.
The given value is also unreasonable, it's too small and causes
kernel panic in some cases:
[ 5706.856473] sdhci-dwcmshc
fe310000.mmc: swiotlb buffer is full (sz: 28672 bytes), total 512 (slots), used 498 (slots)
[ 5706.864451] sdhci-dwcmshc
fe310000.mmc: swiotlb buffer is full (sz: 65536 bytes), total 512 (slots), used 464 (slots)
This parameter seems to be added by mistake, so remove it.
Fixes: e35c7ab51fd1 ("rockchip: merge bootscript")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Robert Marko [Fri, 29 Mar 2024 10:38:49 +0000 (11:38 +0100)]
qualcommax: default to kernel 6.6
6.6 has been in testing on qualcommax for a while so it should be in a
good shape, but lets default to it to get a wider audience.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Petr Štetiar [Fri, 29 Mar 2024 16:59:01 +0000 (16:59 +0000)]
Revert "tools/xz: update to 5.6.1" (CVE-2024-3094)
This reverts commit
714c91d1a63f29650abaa9cf69ffa47cf2c70297 as probably
the upstream xz repository and the xz tarballs have been backdoored.
References: https://www.openwall.com/lists/oss-security/2024/03/29/4.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Jordan Woyak [Tue, 26 Mar 2024 01:56:06 +0000 (20:56 -0500)]
config: Enable ext4 journaling by default.
Not having a journal by default is a major "gotcha".
Because openwrt does not fsck on boot, a power loss without journaling
can result in a dirty filesystem that openwrt will mount as read-only
which requires intervention to restore the router to working order.
Signed-off-by: Jordan Woyak <jordan.woyak@gmail.com>
Tomasz Maciej Nowak [Fri, 29 Mar 2024 13:58:35 +0000 (14:58 +0100)]
kernel: kmod-phy-smsc: add dependency on crc16
Introduced WoL feature needs CRC16 support.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Felix Fietkau [Sun, 24 Mar 2024 14:43:02 +0000 (15:43 +0100)]
perf: fix build on linux 6.6
- use Makefile.perf to prevent overriding MAKEFLAGS
- fix path to PKG_CONFIG
- link libstdc++ statically (only used for demangling)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Sun, 24 Mar 2024 09:59:22 +0000 (10:59 +0100)]
tools/cmake: disable xcode generator
Fixes build on latest macOS SDK
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Sun, 24 Mar 2024 09:40:31 +0000 (10:40 +0100)]
tools/e2fsprogs: disable building fuse2fs to avoid depending on libfuse
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Hauke Mehrtens [Tue, 26 Mar 2024 00:18:15 +0000 (01:18 +0100)]
kernel: bump 5.15 to 5.15.152
Removed because it is upstream:
generic/backport-5.15/081-v5.17-regmap-allow-to-define-reg_update_bits-for-no-bus.patch
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=
fbddd48f1456db32b675fad95a902de38345902a
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Hauke Mehrtens [Mon, 25 Mar 2024 22:54:57 +0000 (23:54 +0100)]
kernel: bump 5.15 to 5.15.151
No manual changes needed.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Florian Eckert [Wed, 13 Mar 2024 12:22:20 +0000 (13:22 +0100)]
linux-firmware: add missing LICENSE_FILES info
Where it is clear which lincense the firmware package has, the missing
information are added.
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Florian Eckert [Wed, 13 Mar 2024 12:21:34 +0000 (13:21 +0100)]
linux-firmware: add LICENSE_FILES and LICENSE file handling
The firmware blobs have all different licenses from the different
manufacturers of the binary blobs. This information is contained in the
upstream 'linux-firmware' repositroy.
This commit extends the package handling so that this information can be
added as an additional argument during packages generation.
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Robert Marko [Thu, 28 Mar 2024 12:25:09 +0000 (13:25 +0100)]
archs38: remove 5.15 support
Since 6.1 is now default, drop 5.15 support.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Robert Marko [Thu, 28 Mar 2024 12:24:36 +0000 (13:24 +0100)]
archs38: default to kernel 6.1
Default to kernel 6.1 on archs38.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Mieczyslaw Nalewaj [Thu, 28 Mar 2024 15:11:31 +0000 (16:11 +0100)]
generic: 6.6: add kernel missing symbol
Add missing symbol CONFIG_SSIF_IPMI_BMC causing bcm53xx compilation errors.
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Nick Hainke [Fri, 29 Mar 2024 06:18:07 +0000 (07:18 +0100)]
tools/cmake: update to 3.29.0
Changelog:
- https://www.kitware.com/cmake-3-29-0-available-for-download/
Refresh patches:
- 120-curl-fix-libressl-linking.patch
- 130-bootstrap_parallel_make_flag.patch
- 150-zstd-libarchive.patch
Signed-off-by: Nick Hainke <vincent@systemli.org>
Nick Hainke [Thu, 28 Mar 2024 20:36:29 +0000 (21:36 +0100)]
tools/xz: update to 5.6.1
Change mirror to github.
Signed-off-by: Nick Hainke <vincent@systemli.org>
Rafał Miłecki [Thu, 28 Mar 2024 23:10:42 +0000 (00:10 +0100)]
bcm47xx: refresh kernel 6.1 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Thu, 28 Mar 2024 12:57:07 +0000 (13:57 +0100)]
bcm47xx: add testing support for kernel 6.1
Tested on Luxul XWR-1750 (BCM4706). Working: switch (LAN, WAN), LEDs,
sysupgrade.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Thu, 28 Mar 2024 12:28:12 +0000 (13:28 +0100)]
bcm4908: refresh kernel 6.6 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Thu, 28 Mar 2024 11:25:54 +0000 (12:25 +0100)]
bcm4008: prepare to work on kernel 6.6
Don't add KERNEL_TESTING_PATCHVER yet as there are some issues with it.
On TP-Link Archer C2300 serial console seems to stop working after
preinit:
> Press the [f] key and hit [enter] to enter failsafe mode
> Press the [1], [2], [3] or [4] key and hit [enter] to select the de�
On Netgear R8000P XHCI causes external abort:
[ 2.139586] Internal error: synchronous external abort:
0000000096000210 [#1] SMP
[ 2.147212] Modules linked in: xhci_plat_hcd(+) xhci_hcd ohci_platform ohci_hcd fsl_mph_dr_of ehci_platform ehci_fsl ehci_hcd gpio_button_hotplug(O) usbcore nls_base usb_common crc32c_generic
[ 2.164774] CPU: 0 PID: 358 Comm: kmodloader Tainted: G O 6.6.22 #0
[ 2.172658] Hardware name: Netgear R8000P (DT)
[ 2.177229] pstate:
60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 2.184395] pc : xhci_gen_setup+0x80/0x34c [xhci_hcd]
[ 2.189591] lr : xhci_gen_setup+0x74/0x34c [xhci_hcd]
[ 2.194788] sp :
ffffffc0815d37b0
[ 2.198194] x29:
ffffffc0815d37b0 x28:
ffffff8002000000 x27:
ffffff8001172d88
[ 2.205540] x26:
ffffff8002000000 x25:
0000000000000000 x24:
ffffffc078b603c0
[ 2.212888] x23:
ffffffc078b2a008 x22:
ffffff8001172c10 x21:
ffffff8002000000
[ 2.220235] x20:
ffffff8002000000 x19:
ffffff8002000250 x18:
0000000000000000
[ 2.227582] x17:
626d756e20737562 x16:
2064656e67697373 x15:
ffffffffffffffff
[ 2.234929] x14:
ffffff80019e9915 x13:
ffffff80019e9913 x12:
00000000ffffffea
[ 2.242276] x11:
00000000ffffefff x10:
0000000000000062 x9 :
00000000ffffffd0
[ 2.246760] bcm63138_nand
ff801800.nand-controller: timeout waiting for command 0x4
[ 2.249623] x8 :
0000000000000073 x7 :
ffffffc0815d37c0 x6 :
0000000000000075
[ 2.257513] bcm63138_nand
ff801800.nand-controller: intfc status
c00000e0
[ 2.264855] x5 :
0000000000000081 x4 :
0000000000000000 x3 :
ffffff8001b61800
[ 2.279193] x2 :
ffffffc080b5d000 x1 :
ffffff80020003a8 x0 :
ffffff8002000398
[ 2.286540] Call trace:
[ 2.289048] xhci_gen_setup+0x80/0x34c [xhci_hcd]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Thu, 28 Mar 2024 11:01:44 +0000 (12:01 +0100)]
bcm4908: switch to the kernel 6.1
Tested on Netgear R8000P and TP-Link Archer C2300.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Thu, 28 Mar 2024 11:00:04 +0000 (12:00 +0100)]
bcm4908: use DT to mark NAND controller WP pin as not connected
Use cleaner and more upstream-fit solution.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Robert Marko [Tue, 26 Mar 2024 11:57:30 +0000 (12:57 +0100)]
airoha: remove 5.15 support
Now that 6.1 is default, remove 5.15 support.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Robert Marko [Tue, 26 Mar 2024 11:56:34 +0000 (12:56 +0100)]
airoha: default to kernel 6.1
6.1 has been present as testing for a while now, so default to it.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Rafał Miłecki [Thu, 28 Mar 2024 07:41:51 +0000 (08:41 +0100)]
kernel: backport brcmnand support for "brcm,wp-not-connected"
It's required to support NAND controllers with WP pin on boards that
don't have it connected to NAND chip.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Wed, 27 Mar 2024 23:11:37 +0000 (00:11 +0100)]
bcm53xx: refresh kernel 6.6 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Wed, 27 Mar 2024 22:59:46 +0000 (23:59 +0100)]
bcm53xx: add testing support for kernel 6.6
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Wed, 27 Mar 2024 10:58:38 +0000 (11:58 +0100)]
bcm53xx: switch to the kernel 6.1
Successfully verified on Luxul XWR-3150 (BCM47094). Tested LAN, WAN,
Wi-Fi, USB, sysupgrade.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Wed, 27 Mar 2024 10:58:18 +0000 (11:58 +0100)]
bcm53xx: refresh kernel 6.1 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Rafał Miłecki [Wed, 27 Mar 2024 23:03:34 +0000 (00:03 +0100)]
kernel: fix NVMEM looking for OTP NVMEM cells in wrong DT node
It was breaking NAND controllers drivers.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Chukun Pan [Sat, 9 Mar 2024 15:16:25 +0000 (23:16 +0800)]
sunxi: backport h616 thermal sensor support
Backport H616 thermal sensor support from linux-next.
Tested on the Orange Pi Zero 3 (H618 SoC).
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Chukun Pan [Sat, 18 Nov 2023 15:10:25 +0000 (23:10 +0800)]
sunxi: add support for Orange Pi Zero 3
Key features:
Allwinner H618 SoC (Quad core Cortex-A53)
1/1.5/2/4 GiB LPDDR4 DRAM
1 USB 2.0 type C port (Power + OTG)
1 USB 2.0 host port
1Gbps Ethernet port
Micro-HDMI port
MicroSD slot
Installation:
Write the image to SD Card with dd.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Chukun Pan [Fri, 8 Dec 2023 15:10:21 +0000 (23:10 +0800)]
generic: 6.1: backport AXP PMIC support
Backport AXP15060, AXP313a and AXP192 support.
The AXP15060 PMIC is used for starfive boards,
and the AXP313a PMIC is used for sunxi boards.
Remove conflicting patches from starfive target.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Chukun Pan [Fri, 5 Jan 2024 15:16:16 +0000 (23:16 +0800)]
uboot-sunxi: bump to 2024.01
This version supports LPDDR4 DRAM of H618 SoC.
Runtime-tested:
Olimex Olinuxino Micro (A20)
Orange Pi Zero 3 (H618)
Pine64 SoPine (A64)
Tested-by: Zoltan HERPAI <wigyori@uid0.hu>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Robert Marko [Tue, 26 Mar 2024 11:36:27 +0000 (12:36 +0100)]
kernel: qca-ssdk: fix C45 MDIO support on kernel 6.6
Kernel 6.3 has introduced separate C45 read/write operations, and thus
split them out of the C22 operations completely so the old way of marking
C45 reads and writes via the register value does not work anymore.
This is causing SSDK to fail and find C45 only PHY-s such as Aquantia ones:
[ 22.187877] ssdk_phy_driver_init[371]:INFO:dev_id = 0, phy_adress = 8, phy_id = 0x0 phytype doesn't match
[ 22.209924] ssdk_phy_driver_init[371]:INFO:dev_id = 0, phy_adress = 0, phy_id = 0x0 phytype doesn't match
This in turn causes USXGMII MAC autoneg bit to not get set and then UNIPHY
autoneg will time out, causing the 10G ports not to work:
[ 37.292784] uniphy autoneg time out!
So, lets detect C45 reads and writes by the magic BIT(30) in the register
argument and if so call separate C45 mdiobus read/write functions.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Josef Schlehofer [Tue, 26 Mar 2024 09:37:37 +0000 (10:37 +0100)]
tools/expat: update to version 2.6.2
Release notes:
https://github.com/libexpat/libexpat/blob/R_2_6_2/expat/Changes
Fixes:
CVE-2024-28757
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Daniel Golle [Mon, 25 Mar 2024 21:58:49 +0000 (21:58 +0000)]
generic: phy-mediatek-xfi-tphy: fix SGMII issue
Fix issue of transmitting abnormal data which leads to link problems
in 1G and 2.5G SerDes modes (SGMII, 1000Base-X, 2500Base-X) on the
MediaTek MT7988 SoC.
Link: https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/b72d6cba92bf9e29fb035c03052fa1e86664a25b
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Goetz Goerisch [Sun, 24 Mar 2024 17:31:06 +0000 (18:31 +0100)]
realtek: add Zyxel GS1900-8 v2
The Zyxel GS1900-8 v2 or Rev.B1 is a newer variant of the GS1900-8, but
otherwise similar to the other GS1900 switches.
Differences
------------
* Front Button labeled RESTORE
* NO Power Switch on rear
* Serial Header next to the barrel power connector
* Part Number ends 0102F
Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com>
Allen Zhao [Sat, 9 Mar 2024 02:44:58 +0000 (10:44 +0800)]
mediatek: filogic: add Unielec U7981-01 support
Hardware specification:
SoC: MediaTek MT7981B 2x A53
Flash: 8GB eMMC or 128 MB SPI-NAND
RAM: 256MB
Ethernet: 5x 10/100/1000 Mbps
Switch: MediaTek MT7531AE
WiFi: MediaTek MT7976C
Button: Reset
USB: M.2(B-key) for 4G/5G Module
Power: DC 12V 1A
UART: 3.3v, 115200n8
--------------------------
| Layout |
| ----------------- |
| 4 | VCC RX TX GND | <= |
| ----------------- |
--------------------------
The U-boot menu will automatically appear at startup, and then select
the required options through UP/DOWN Key.
NAND Flash and eMMC Flash instructions:
1. Set your computers IP adress to 192.168.1.2.
2. Run a TFTP server providing the sysupgrade.bin image.
3. Power on the router, into the U-Boot menu.
4. Select "2. Upgrade firmware"
5. Update sysupgrade.bin file name, input server IP and input device
IP (if they deviate from the defaults)
6. Wait for automatic startup after burning
Signed-off-by: Allen Zhao <allenzhao@unielecinc.com>
Robert Marko [Mon, 25 Mar 2024 10:50:06 +0000 (11:50 +0100)]
procd: update to Git HEAD (2024-03-25)
79f8cfa58ee7 ci: add github test workflow
428f40e7984f test commit fixing warnings
63058d1f81a5 ci: enable ujail builds
49ea930a862c utils: add key-value offset support to get_cmdline_val()
ca8c30208d5e inittab: fallback when multiple "console=" is detected
Required for the recent Elecom multiple console commits.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Robert Marko [Sun, 24 Mar 2024 19:54:26 +0000 (20:54 +0100)]
hostapd: fix Argument list too long build error
Currently, both CI and local builds of wpa-supplicant will fail with:
/bin/sh: Argument list too long
Its happening as the argument list for mkdir in build.rules is too large
and over the MAX_ARG_STRLEN limit.
It seems that recent introduction of APK compatible version schema has
increased the argument size and thus pushed it over the limit uncovering
the issue.
Fixes: e8725a932e16 ("treewide: use APK compatible version schema")
Signed-off-by: Robert Marko <robimarko@gmail.com>
Paul Spooren [Sat, 23 Mar 2024 12:07:25 +0000 (13:07 +0100)]
treewide: update PKG_MIRROR_HASH after APK version schema
With the change in version schema the downloaded files changed, too,
mostly the hash is now prefixed with a tilde `~` instead of a dash `-`.
Since each downloaded archive contains folder with the same name as the
archive, the checksum changed.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Pawel Dembicki [Wed, 13 Mar 2024 11:35:04 +0000 (12:35 +0100)]
mpc85xx: add 6.6 testing kernel
This commit adds 6.6 kernel as testing verion.
Run tested:
p2020/p2020-rdb
p1010/TL-WDR4900-V1
p1010/BR200-WP
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 10:07:13 +0000 (11:07 +0100)]
mpc85xx: kernel: 6.6: refresh config
config-6.6 refreshed by 'make kernel_oldconfig'
p2020 config-default refreshed manually
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 10:01:01 +0000 (11:01 +0100)]
mpc85xx: kernel: 6.6: refresh patches
Manualy refreshed:
101-powerpc-85xx-hiveap-330-support.patch
105-powerpc-85xx-panda-support.patch
Rest done by 'make target/linux/refresh'
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 09:38:57 +0000 (10:38 +0100)]
kernel/mpc85xx: Restore kernel files for v6.1
This is an automatically generated commit which aids following Kernel patch history,
as git will see the move and copy as a rename thus defeating the purpose.
See: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html
for the original discussion.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 09:38:57 +0000 (10:38 +0100)]
kernel/mpc85xx: Create kernel files for v6.6 (from v6.1)
This is an automatically generated commit.
During a `git bisect` session, `git bisect --skip` is recommended.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 09:38:08 +0000 (10:38 +0100)]
mpc85xx: refresh kernel config
Done by 'make kernel_oldconfig'.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 09:35:47 +0000 (10:35 +0100)]
kernel: generic: add missing symbol
Found durring 'make kernel_oldconfig'.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 07:50:06 +0000 (08:50 +0100)]
mpc85xx: remove 5.15 support
Kernel is switched to 6.1. Lets remove 5.15 support.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 07:48:39 +0000 (08:48 +0100)]
mpc85xx: switch to 6.1 kernel
We need to prepare for 6.6. Switch to 6.1 for wider testing.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Wed, 13 Mar 2024 12:13:51 +0000 (13:13 +0100)]
mpc85xx: copy missing patch from 5.15 to 6.1
patch 150-arch-powerpc-simpleboot-prevent-overwrite-of-CPU1-sp.patch
was missed durring copy from 5.15 to 6.1.
This patch restore it.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Tim Harvey [Mon, 22 Jan 2024 23:30:18 +0000 (15:30 -0800)]
imx: kernel: add imx8mp PCI support
IMX8MP PCI support requires a few patches backported from Linux 6.2.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Fri, 12 Jan 2024 19:34:28 +0000 (11:34 -0800)]
imx: add Gateworks Venice support
Add support for Gateworks Venice imx8m family of boards:
- required kernel modules for on-board devices
- image generation
- initial network config
- sysupgrade support
The resulting compressed disk image
(bin/targets/imx/cortexa53/openwrt-imx-cortexa53-gateworks_venice-squashfs-img.gz)
can be installed on a Gateworks venice board via U-Boot:
u-boot=> tftpboot $loadaddr openwrt-imx-cortexa53-gateworks_venice-squashfs-img.gz && \
gzwrite mmc $dev $loadaddr $filesize
WARNING: this will overwrite any boot firmware on the eMMC user hardware
partition which if being used will brick your board requiring JTAG to
re-program boot firmware and recover
The compressed disk image contains the partition table and filesystems only
and that it is expected that boot firmware is installed properly on the
eMMC boot0 hardware partition. The easiest way to ensure this is to
use the Gateworks JTAG adapter/process to install the latest boot firmware
as follows from a Linux host:
wget http://dev.gateworks.com/jtag/jtag_usbv4
chmod +x jtag_usbv4
wget http://dev.gateworks.com/venice/images/firmware-venice-imx8mm.bin
sudo ./jtag_usbv4 -p firmware-venice-imx8mm.bin
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tim Harvey [Mon, 8 Jan 2024 22:04:15 +0000 (14:04 -0800)]
imx: add imx8m support
Add imx8m support:
- add a cortexa53 subtarget to imx
- move ARCH and KERNELNAME to subtargets
- account for kernel modules that are not used for cortexa53
No device-specific targets or firmware images are created yet but all
imx8m* dtbs will be built.
enabling CONFIG_TARGET_ROOTFS_INITRAMFS results in
openwrt-imx-cortexa53-imx8m-initramfs-kernel.bin which has been
successfully booted on an imx8mm-evk using the following:
u-boot=> tftpboot $fdt_addr_r image-imx8mm-evk.dtb && \
tftpboot $kernel_addr_r openwrt-imx-cortexa53-imx8m-initramfs-kernel.bin && \
booti $kernel_addr_r - $fdt_addr_r
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Petr Štetiar [Mon, 4 Mar 2024 07:16:19 +0000 (07:16 +0000)]
linux-firmware: package Intel AX201 firmware
Alexander reported following:
iwlwifi 0000:00:14.3: Detected crf-id 0x3617, cnv-id 0x20000302 wfpm id 0x80000000
iwlwifi 0000:00:14.3: PCI dev a0f0/0074, rev=0x351, rfid=0x10a100
iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-hr-b0-77.ucode failed with error -2
It seems, that as of the current date, the highest firmware API version
supported by Linux 6.8-rc7 is still 77.
Closes: #14771
Signed-off-by: Petr Štetiar <ynezz@true.cz>
INAGAKI Hiroshi [Mon, 11 Mar 2024 14:30:26 +0000 (23:30 +0900)]
ath79: register ttyATH1 as OpenWrt console for ELECOM WAB-I1750-PS
Add a hotplug script and add ttyATH1 on ELECOM WAB-I1750-PS to
/etc/inittab while booting for using that console as an OpenWrt console.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
INAGAKI Hiroshi [Tue, 12 Mar 2024 09:16:12 +0000 (18:16 +0900)]
ath79: register all ttys as Linux console for ELECOM WAB-I1750-PS
Register ttyS0 and ttyATH1 as Linux console on ELECOM WAB-I1750-PS.
ttyS0 provides "SERVICE" port and internal pin header for debugging and
recoverying by maker, ttyATH1 provides "SERIAL" port for configuration
by users.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Pawel Dembicki [Thu, 14 Mar 2024 12:57:25 +0000 (13:57 +0100)]
kirkwood: resize kernel partition for kirkwood devices
The 6.1 kernel has caused another increase in kernel size, and now
it's more than 3MB:
WARNING: Image file iom_ix4-200d-uImage is too big:
3170394 >
3145728
WARNING: Image file iom_ix2-200-uImage is too big:
3171494 >
3145728
WARNING: Image file linksys_e4200-v2-uImage is too big:
3171879 >
3145728
WARNING: Image file linksys_ea4500-uImage is too big:
3171871 >
3145728
WARNING: Image file linksys_ea3500-uImage is too big:
3171651 >
3145728
This causes problems for 5 devices:
- Iomega StorCenter ix2/ix4
- Linksys EA3500/EA4200/EA4500
They have enough resources for proper operation with 6.1, but all of
them had a 3MB kernel size limit. Let's keep them alive and
resize kernel partitions to 4MB.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Pawel Dembicki [Tue, 5 Mar 2024 21:34:58 +0000 (22:34 +0100)]
kirkwood: remove 5.15 kernel support
Kernel was switched to 6.1. Lets drop 5.15 support.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>