Á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)
Mathew McBride [Mon, 13 Feb 2023 06:51:26 +0000 (06:51 +0000)]
armvirt: 64: disable CONFIG_SMC91X
The SMC91X family is a ISA-age Ethernet controller.
I'm not particularly sure what it's doing in armvirt/64,
as it's unlikely there is a QEMU or real hardware configuration
that exists with it.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05/5.15 version of commit
214e94cddf1bfd4e6141f79a70f532267fe1bea0)
Mathew McBride [Mon, 5 Sep 2022 06:56:49 +0000 (16:56 +1000)]
armvirt: base-files: add tty0 to inittab
tty0 is the default console for devices with screens/framebuffers.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
e41b82f619ca02f427f34ae439d4584ab441e245)
Mathew McBride [Mon, 5 Sep 2022 06:55:02 +0000 (16:55 +1000)]
armvirt: config changes required for framebuffer console
These Kconfig options are required to get a screen console
working with the VMware Fusion ARM (Apple Silicon) preview.
They are likely to be the same for other Arm standard
"desktop" hardware that may emerge.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05/5.15 version of
83f564f7464c34c7713b20b61007b24b217f0b88)
Mathew McBride [Tue, 18 Apr 2023 03:34:23 +0000 (03:34 +0000)]
armvirt: package and select Rockchip DWMAC Ethernet driver
For devices that implement the "rockchip,*-gmac" compatible controller,
including:
- RK3328
- RK3399
- RK3568
- RK3588
- PX30
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
abbffe55ddded36d2a4d0eee6e96c742eaffbbd2)
Mathew McBride [Mon, 20 Mar 2023 02:53:31 +0000 (02:53 +0000)]
armvirt: 64: add Allwinner A3/A83T/A64 (sun8i family) Ethernet
Add support for the dwmac (stmmac) variant used by Allwinner
Arm64 boards.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
847467a5729995a98aa34329f6fa0ed4cb79d210)
Luiz Angelo Daros de Luca [Fri, 9 Jun 2023 02:41:54 +0000 (23:41 -0300)]
kernel: modules: fix mdio-bus-mux description
Simple error during copy/paste
Fixes: 2dbeb607251b ("kernel: add mdio-bus-mux support")
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
(cherry picked from commit
1e4bc13eaa3fdba897ca1721b2bfe9f2dbb30770)
Mathew McBride [Sat, 11 Feb 2023 03:58:09 +0000 (03:58 +0000)]
armvirt: 64: add Marvell (formerly Cavium) ThunderX series network driver
Based on working configuration supplied by Anton Antonov.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
5d2a5f739840caa6e72b5c907d355f6aaca227d4)
Anton Antonov [Thu, 22 Dec 2022 12:01:59 +0000 (12:01 +0000)]
armvirt: 64: Add storage support for qemu-sbsa platform
Enable SATA support, which is used by the Server Base
System Architecture reference board[1].
Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
Signed-off-by: Mathew McBride <matt@traverse.com.au>
[1] - https://qemu.readthedocs.io/en/latest/system/arm/sbsa.html
(23.05/5.15 version of
26905c96124af10a795167509116252e9357baea)
Anton Antonov [Thu, 22 Dec 2022 12:00:12 +0000 (12:00 +0000)]
armvirt: 64: Add NXP i.MX 8M Mini/Nano/Quad/Plus EVK support
Also includes Advantech RSB-3720 (iMX8 Plus) support.
Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
Signed-off-by: Mathew McBride <matt@traverse.com.au>
[Re-sort into kernel config, move network into modules]
(23.05/5.15 version of commit
3efb3b801bb1393897ff58b9af3753157f28f441)
Mathew McBride [Fri, 15 Jul 2022 02:38:02 +0000 (02:38 +0000)]
armvirt: 64: add support for other SystemReady-compatible vendors
These changes are to support other vendors that have SystemReady/EFI
support, including:
* Marvell Armada
** (This is speculative as I don't have a machine of my own to test)
* Amazon Graviton (tested bare-metal and virtualized instances)
* VMware (Fusion for ARM Mac preview)
* NXP/Freescale (Layerscape series not already selected)
* HiSilicon
* Allwinner/sunxi
* Rockchip (untested, options taken from arm64 defconfig)
To give an idea of the hardware certified for SystemReady,
see
https://www.arm.com/architecture/system-architectures/systemready-certification-program/ir
and
https://www.arm.com/architecture/system-architectures/systemready-certification-program/es
Other vendors that _should_ work include Marvell Octeon 10
and Ampere. I understand these systems should work
"out of the box" in ACPI mode but may require other drivers
(e.g PCIe NICs and storage controllers).
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05/5.15 version of
c3151b6f04579a937b7cb166bbeff0d0ee539946)
Mathew McBride [Fri, 10 Jun 2022 05:57:03 +0000 (05:57 +0000)]
armvirt: add options and driver modules for NXP Layerscape DPAA2 platform
Tested with a Traverse Technologies Ten64 (LS1088A) board.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05/5.15 version of commit
54bb95f879aaa62c4253d30390e77bc8180f4ed7)
Mathew McBride [Fri, 15 Jul 2022 02:47:52 +0000 (02:47 +0000)]
armvirt: add 5.15 patches for NXP DPAA2 platform
This fixes an issue with NXP's DPAA2 platforms (LS1088/2088/LX2160)
* A deadlock issue when attempting to detach the SFP management from
a PHY interface (e.g when trying to reboot). These issues were fixed
in kernel 6.2[1], but it's version does not cleanly apply onto 5.15.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
[1] - see patch series "Fix rtnl_mutex deadlock with DPAA2 and SFP modules",
https://patchwork.kernel.org/project/netdevbpf/cover/
20221129141221.872653-1-vladimir.oltean@nxp.com/
Mathew McBride [Thu, 9 Jun 2022 04:51:59 +0000 (04:51 +0000)]
armvirt: add ACPI support
ACPI support is required for Arm 'SystemReady' server and workstation
systems (and as an option on embedded platforms).
These config changes allow OpenWrt to boot in a QEMU virtual machine
with a UEFI/EDKII 'BIOS', but with no other hardware enabled yet.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05/5.15 version of
cb3bbbf00cfb465de3333e4b84e8da9138985595)
Mathew McBride [Wed, 12 Jan 2022 05:53:55 +0000 (05:53 +0000)]
build: enable vmdk/vmware images for arm64 target
This is useful for VMware's ARM64 products, e.g Fusion for M1/ARM Macs.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
f899e0e024825861e129b0e8fbfb31c1d614273a)
Mathew McBride [Tue, 1 Jun 2021 01:48:25 +0000 (01:48 +0000)]
build: use 128MiB as the boot/kernel partition size on armvirt target
The nominal partition type for EFI boot partitions is FAT32,
which has a minimum size of 32MiB on a 512-byte-sector block device.
To ensure that the boot partition is created as FAT32 set a size
well above this minimum.
A useful discussion about EFI partition sizes can be found here:
https://superuser.com/questions/
1310927/what-is-the-absolute-minimum-size-a-uefi-system-partition-can-be
I have found 128MiB works pretty consistently across both
tools (mkfs.fat) and firmwares (EDKII)
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
71e56b2ff1e8aeb3205784c0b5f8ca6ba0fbbf63)
Mathew McBride [Mon, 24 Jan 2022 23:16:56 +0000 (23:16 +0000)]
armvirt: remove model name override
Now that armvirt has been expanded to boot on more generic
ARM machines, remove the board and model name override.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
3d99314569a059a1d5e015086e534b3e04ff2097)
Mathew McBride [Thu, 20 Apr 2023 06:38:22 +0000 (06:38 +0000)]
armvirt: set kernel partition as the EFI system partition
U-Boot with EFI boot manager functionality will store
EFI boot order data on the ESP in the ubootefi.var file.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
9a76b99c1bd781248c18d69abe570f35932db8a3)
Mathew McBride [Thu, 20 Apr 2023 06:36:50 +0000 (06:36 +0000)]
scripts: gen_image_generic: allow the partition types to be set
The use case for this is to set the kernel partition as the
EFI system partition. Versions of U-Boot with the
EFI boot manager (eficonfig and efidebug commands) will
store their boot order data on the ESP.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
701d774f54aef2f9fe3c584700773dcb260dd03c)
Mathew McBride [Wed, 24 Feb 2021 04:53:40 +0000 (04:53 +0000)]
grub2: enable EFI for armvirt
This adds a separate package for EFI on Arm SystemReady
compatible machines. 32-bit Arm UEFI is supported as well.
It is very similar to x86-64 EFI setup, without the
need for BIOS backward compatibility and slightly
different default modules.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
8f29b1573ddf3b7ed7c53bee1a7d55e574806205)
Mathew McBride [Wed, 19 Jan 2022 03:24:45 +0000 (03:24 +0000)]
armvirt: update README with new image names
The introduction of EFI support has changed how armvirt
images are generated. The kernel and filesystem binaries
can still be used as before with QEMU directly.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
97c5d317f59e071c9f691add5748a74a75665038)
Mathew McBride [Wed, 28 Sep 2022 05:47:30 +0000 (15:47 +1000)]
armvirt: disable LD dead code elimination on ARM32
This interferes with the generation of the EFI stub section for
ARM32. As this target is not size constrained, disable the dead code
data elimination hack.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05 version of
eb0e61285d4da910317e082de559337a305fa1dc)
Mathew McBride [Wed, 19 Jan 2022 02:25:23 +0000 (02:25 +0000)]
armvirt: add EFI support
EFI booting is used on newer machines compatible with the
Arm SystemReady specifications.
This commit restructures armvirt into a more 'generic'
target similar to x86.
See https://github.com/openwrt/openwrt/pull/4956
for a history of this port.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(23.05 version of
e0f06ddc23b2503a1791ae7e97b02e2647e8a70d)
Petr Štetiar [Mon, 5 Jun 2023 12:10:44 +0000 (14:10 +0200)]
ipq807x: image: fix eMMC flashing/recovery from within initramfs
Having initramfs image built with same config as on buildbots:
CONFIG_TARGET_MULTI_PROFILE=y
CONFIG_TARGET_ALL_PROFILES=y
CONFIG_TARGET_PER_DEVICE_ROOTFS=y
Its currently impossible to flash/recover the device using that image as
losetup is missing:
root@OpenWrt:/# sysupgrade -v /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin
...
/lib/upgrade/do_stage2: line 38: losetup: not found
Failed to detach all loop devices. Skip this try.
So lets fix it by including the needed utils for sysupgrade in
DEFAULT_PACKAGES set.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
07fe8bc62a866e78e131c3f63a08554a94e931f8)
Petr Štetiar [Mon, 5 Jun 2023 10:13:04 +0000 (12:13 +0200)]
ipq807x: add initial support for prpl Foundation Haze board
Haze is prpl Foundation's reference board (WNC LVRP).
Board info:
- IPQ8072A SoC
- 2 GiB RAM
- 4 GiB eMMC
- 8MiB SPI NOR (MX25U6435F)
- 3x 1GigE ports (QCA8075)
- 1x 10GigE port (AQR113C)
- 1x SFP cage
- WiFi 6GHz 160MHz (QCN9074)
- WiFi 5GHz 80+80MHz (QCN5054)
- WiFi 2.4G (QCN5024)
- ARM Standard 20-pin 2.54mm/0.1" JTAG (1V8 !!!)
- Bluetooth v5.0 + EDR with integrated Class 1 PA (CYW20704)
- 1x M.2 B-key socket with PCIe 3.0
- 1x USB 3.0 port
- UART marked J6 is 4-pin 2.54mm/0.1" connector 3V3(arrow),RX,TX,GND (115200 8N1)
- Reset and WPS buttons
Flashing instructions:
1. From U-Boot boot OpenWrt using initramfs image:
IPQ807x# tftpboot openwrt-ipq807x-generic-prpl_haze-initramfs-uImage.itb && bootm
2. In OpenWrt running from initramfs execute sysupgrade:
root@OpenWrt:/# sysupgrade -n /tmp/openwrt-ipq807x-generic-prpl_haze-squashfs-sysupgrade.bin
Work in progress/known issues:
* SFP feature not implemented/tested
* M.2 feature not implemented/tested
* Bluetooth feature not implemented/tested
* 6GHz wireless should be working, but not tested
* MAC address assigments for LAN interfaces
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
2e910039dd7170fd28641e7686c376dba6f0d8a5)
Petr Štetiar [Mon, 5 Jun 2023 10:06:41 +0000 (12:06 +0200)]
ipq-wifi: update to version 2023-06-03
Contains following updates:
* ipq8074: update RegDB in new submitted BDF
* Revert "ipq8074: update RegDB in new submitted BDF"
* qcn9074: update RegDB in new submitted BDF
* ipq8074: update RegDB in new submitted BDF
* qca-wireless: ipq40xx: add BDFs for ZTE MF287+
* Add BDFs for prpl Foundation Haze board
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
c2bb9f055b252f167d58540bddb9e5e9586fa986)
Antti Nykänen [Thu, 25 May 2023 06:43:46 +0000 (09:43 +0300)]
ipq-wifi: bump to latest git HEAD
0f73d32 ipq8074: update RegDB in new submitted BDF
a4cd21f ipq8074: add Compex WPQ873 BDF
c888dd0 qca-wireless: ipq40xx: Add BDFs for Eero Cento
6388ba9 ipq8074: update regdb for Netgear SXK80 BDF
77775d2 ipq8074: add Netgear SXK80
Signed-off-by: Antti Nykänen <antti.nykanen@nokia.com>
(cherry picked from commit
86e7614e0deb5e97083103600b045833c6517c6b)
Petr Štetiar [Tue, 30 May 2023 14:31:39 +0000 (16:31 +0200)]
ipq807x: image: cleanup unused variables
BLOCKSIZE and PAGESIZE seems to be unused on qnap_301w and zyxel_nbg7815
device which use eMMC storage.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
fdea7cb61776192ddb808a639af0a585d5b01b5b)
Michael Pratt [Tue, 30 May 2023 09:22:54 +0000 (05:22 -0400)]
tools/coreutils: rename list of installed programs
Rename the list of programs installed by coreutils
to PKG_PROGRAMS, which will create a stampfile for each
through a new feature in host-build.mk.
Also, cleanup a bit to save lines
regarding the usage of this list.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
14a85d929b4a0a728dc4390ad34dcf8d69ac3475)
Michael Pratt [Tue, 30 May 2023 09:43:00 +0000 (05:43 -0400)]
tools/findutils: define list of installed programs
Define the variable PKG_PROGRAMS for the list
of programs installed by findutils,
which will create a stampfile for each
through a new feature in host-build.mk.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
04053e3f2050b6ea2cdb83c0956034e5fd368d10)
Michael Pratt [Tue, 30 May 2023 11:20:19 +0000 (07:20 -0400)]
host-build: add support for a stampfile per installed binary
Some individual build items install a group of programs
instead of a program matching the name of the build item.
Add support for installing stampfiles for each of the
programs installed by that build item,
which will allow more control and awareness
of what is installed by the rest of the build system,
if, for example, prereq symlink checks are looking
for the same program which is built already.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
84f7a45e9e83339d84bcc15f06259b1064cb961a)
Michael Pratt [Mon, 29 May 2023 09:38:33 +0000 (05:38 -0400)]
prereq-build: replace relative symlinks only if broken
Some programs installed to staging_dir/host/bin
also install some symlinks to itself
for an alternative name.
Some of those new symlinks are overwriting
symlinks that were installed by prereq stage.
If prereq stage were to somehow be run again,
it should not be overwriting symlinks
that point to programs that are already built.
To filter that out, catch all symlinks
after first catching all symlinks
that have an absolute target
after all other cases in the case statement,
make sure it is not broken, and if so exit successfully.
Suggested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
b890e2fbf9211648ad4a74f3e8b47bbf04a3cc7a)
Michael Pratt [Sat, 27 May 2023 21:11:47 +0000 (17:11 -0400)]
prereq-build: do not replace binaries with symlinks
Some programs, like bash and patch, are checked by prereq stage
and have a symlink installed, but then is later built from source.
Now that the prereq-build checks are not successful
just by finding the file alone, it is possible for
a new symlink to overwrite the installed binary.
If a normal file is found in staging_dir/host/bin,
let the check look for the associated stampfile, and if found,
skip creation of a symlink and exit successfully.
Suggested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
729909c07fae4201591e51895833112cb88485e1)
Michael Pratt [Thu, 25 May 2023 06:31:52 +0000 (02:31 -0400)]
prereq-build: fix inconsistent value of $PATH
In the recipe SetupHostCommand for checking
and creating symlinks, $PATH was only overridden
for one of several commands.
This causes the symlinks to be included
in the paths to pick a program from
when the check was repeated, because
staging_dir/host/bin was included in $PATH,
but only *sometimes*.
When the check ran again, the command succeded
with a $PATH including the symlink,
(eval "$$$$$$$$cmd")
while the path to the program was evaluated
with a $PATH NOT including the symlink,
(bin=...)
causing the symlink to be relinked incorrectly,
instead of passing as exactly the same.
Coincidentally, this was only a problem
if the symlink targeted the alternative
program with a different name.
By overriding the value of $PATH at the invocation of Make,
it will apply to the entire environment of the checks.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
665fe2f818300f0b84c8c458fc49ae58ff8853aa)
Michael Pratt [Thu, 25 May 2023 06:31:17 +0000 (02:31 -0400)]
treewide: add ORIG_PATH variable
Add a variable that stores the original value of $PATH
in the host system's shell, before Make alters it.
This can be useful for when it is necessary
to ignore symlinks and programs made by the build system.
Define this new variable before all instances of
'export PATH:=' or similar.
Signed-off-by: Michael Pratt <mcpratt@pm.me>
(cherry picked from commit
d87a8aa148ddf93b199a759deb088fff73787025)
Petr Štetiar [Tue, 30 May 2023 14:36:05 +0000 (16:36 +0200)]
ipq807x: image: factor out common eMMC bits
For better maintainability and reusability.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
a9be186466fdb4987c158916781d99329d1c3712)
Petr Štetiar [Mon, 29 May 2023 17:27:15 +0000 (19:27 +0200)]
qca-nss-dp: fix oops in nss_dp_probe
Currently kernel crashes when of_phy_connect has issues:
Unable to handle kernel access to user memory outside uaccess routines at virtual address
0000000000000308
...
pc : phy_attached_print+0x28/0x1b0
lr : phy_attached_info+0x14/0x20
...
Call trace:
phy_attached_print+0x28/0x1b0
phy_attached_info+0x14/0x20
nss_dp_adjust_link+0x544/0x6c4 [qca_nss_dp]
of_phy_connect returns either pointer or NULL, so can't be checked with
IS_ERR macro.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit
38c7cf0e69aeefdec44d513307732e4daf7d9794)
Felix Fietkau [Wed, 24 May 2023 08:21:23 +0000 (10:21 +0200)]
libubox: update to the latest version
b09b316aeaf6 blobmsg: add blobmsg_parse_attr function
eac92a4d5d82 blobmsg: add blobmsg_parse_array_attr
ef5e8e38bd38 usock: fix poll return code check
6fc29d1c4292 jshn.sh: Add pretty-printing to json_dump
5893cf78da40 blobmsg: Don't do at run-time what can be done at compile-time
362951a2d96e uloop: fix uloop_run_timeout
75a3b870cace uloop: add support for integrating with a different event loop
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit
b6e0a24c492537e5bbfa015e2a3638ccc53c164b)
Felix Fietkau [Sun, 4 Jun 2023 14:54:19 +0000 (16:54 +0200)]
unetd: update to the latest version
412d03012f13 network: prevent adding endpoint routes for addresses on the network
faaf9cee6ef4 utils: fix ipv4 checksum issue
0e1c2fad3540 pex-msg: fix memory leak on fread fail in pex_msg_update_request_init
51be0ed659d0 host: fix crash parsing gateway when no endpoint is specified
ca17601dc24e wg-linux: add support for splitting netlink messages for allowed ips
7d3986b7a5a2 wg-linux: increase default messages size
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit
7b1e8983365746876034534ef22004d423c390e0)
Robert Marko [Fri, 2 Jun 2023 12:12:01 +0000 (14:12 +0200)]
mac80211: ath11k: sync with ath-next
Synchronize the ath11k backports with the current ath-next tree.
This introduces support for MBSSID and EMA, adds factory test mode and
some new HTT stats.
Tested-by: Francisco G Luna <frangonlun@gmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit
acde5271a68835f51185aae1b11343439a9d4cab)
Robert Marko [Fri, 2 Jun 2023 12:08:31 +0000 (14:08 +0200)]
mac80211: backport EMA beacon support
Backport EMA beacon support from kernel 6.4.
It is required for MBSSID/EMA suport in ath11k that will follow.
Tested-by: Francisco G Luna <frangonlun@gmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit
84b5735b4c59c8fcb3db647430a4ffd574fb10a3)
Olliver Schinagl [Wed, 24 May 2023 10:58:37 +0000 (12:58 +0200)]
realtek: eth: Do not write directly to dev->addr
One is never to write to dev->addr directly. In 6.1 it will be a const and
with the newly enabled WERROR, we get a failing grade.
Lets fix this ahead of time.
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
(cherry picked from commit
d881f65da1e6f3bc4237b39cf2373bef51c3828c)
Olliver Schinagl [Thu, 25 May 2023 11:38:47 +0000 (13:38 +0200)]
realtek: Add missing headers
We are missing a bunch of headers, which trigger errors on 6.1, probably
due to changed header-in-header dependencies. Best add them now.
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
(cherry picked from commit
9fb1dbb1df35911b407fa0faaa2443fbc0f0ddde)
Robert Marko [Fri, 2 Jun 2023 10:27:19 +0000 (12:27 +0200)]
generic: b53: rename exported symbols to avoid upstream conflict
Upstream DSA driver is exporting symbols with the same name as our
downstream swconfig driver, so lets rename the downstream symbols to make
them unique and avoid the conflict on 6.1 kernel.
Without this change, building 6.1 with kmod-switch-bcm53xx would conflict
with the B53 DSA driver and CI would fail.
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit
effccdd444a956afc5493ef8f1c79a7e7ffa8490)
Mathew McBride [Mon, 20 Mar 2023 04:16:04 +0000 (04:16 +0000)]
kernel: add mdio-bus-mux support
The MDIO bus multiplexing framework is used by some drivers
such as dwmac-sun8i.
As this is a per-driver requirement, set it to be hidden in the menu.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
(cherry picked from commit
2dbeb607251b75b506dcc8f1294cd9ed0bac9694)
Christian Marangi [Wed, 31 May 2023 13:19:31 +0000 (15:19 +0200)]
kernel: fix wrong detection of Linux-Testing-Version in makefile DUMP
When the split was done, the case for testing kernel version wasn't
handled and only the to-be-compiled kernel version details files was
included. This cause the kernel Linux-Testing-Version output from
makefile target DUMP to report only the kernel version without the minor
version (example 6.1 instead of 6.1.29).
This value is expected with the full kernel version and this cause the
dump-target-info.pl script to not correctly identify if a target have a
testing kernel for the kernels calls.
Fix this regression by correctly including the kernel details files if
the target declare support for a testing kernel version.
Fixes: 0765466a42f4 ("kernel: split kernel version to dedicated files")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
595608eb3f05cba31da59e0d5d82504ab6731c0b)
Álvaro Fernández Rojas [Sun, 11 Jun 2023 16:44:36 +0000 (18:44 +0200)]
bmips: add support for Comtrend AR-5381u
The Comtrend AR-5381u 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 DDR
- Flash: 16 MB SPI NOR
- Ethernet LAN: 4x 100Mbit
- Wifi 2.4 GHz: miniPCI Broadcom BCM43225 802.11bgn
- USB: 1x 2.0
- Buttons: 1x (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
bcdf861519)
Christian Marangi [Sun, 11 Jun 2023 13:22:49 +0000 (15:22 +0200)]
restool: update source.codeaurora.org repository link
source.codeaurora.org project has been shut down and the nxp
repositories has been moved to github. Update the repository
link to the new location.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
0a1ee5323549bfce30b4d42be2dcc461f694881c)
Christian Marangi [Sun, 11 Jun 2023 13:20:01 +0000 (15:20 +0200)]
ls-dpl: update source.codeaurora.org repository link
source.codeaurora.org project has been shut down and the nxp
repositories has been moved to github. Update the repository
link to the new location.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
52fd8d8ba3ed4d34ed1dbc9d14fc7754960a576d)
Christian Marangi [Sun, 11 Jun 2023 13:12:05 +0000 (15:12 +0200)]
layerscape: 5.15: update source.codeaurora.org ppfe driver reference
source.codeaurora.org project has been shut down and the nxp
repositories has been moved to github. Update the link reference to the
new location.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
(cherry picked from commit
52d86ac6eb82b17769ce130eab5f4ba4efed06d2)
Álvaro Fernández Rojas [Sun, 11 Jun 2023 10:30:57 +0000 (12:30 +0200)]
bmips: add support for Comtrend WAP-5813n
The Comtrend WAP-5813n is a wifi gigabit router, 2.4 GHz single band with
two external antennas.
Hardware:
- SoC: Broadcom BCM6369
- CPU: dual core BMIPS4350 @ 400Mhz
- RAM: 64 MB DDR
- Flash: 8 MB parallel NOR
- LAN switch: Broadcom BCM53115, 5x 1Gbit
- Wifi 2.4 GHz: miniPCI Broadcom BCM4322 802.11bgn
- USB: 1x 2.0 (optional)
- Buttons: 3x (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
c3b1ef2dfd)
Volodymyr Puiul [Sat, 10 Jun 2023 14:23:17 +0000 (18:23 +0400)]
ramips: mt7621-dts: move wan port to gmac1 YunCore FAP-640
move wan port to gmac1 to achieve 2Gbps CPU bandwidth between wan and
lan on YunCore FAP-640
Signed-off-by: Volodymyr Puiul <volodymyr.puiul@gmail.com>
(cherry picked from commit
47c2d50c0312412582fff7950b843d619400da9f)
Álvaro Fernández Rojas [Sun, 11 Jun 2023 08:53:10 +0000 (10:53 +0200)]
bmips: add support for Comtrend VR-3025un
The Comtrend VR-3025un is a wifi gigabit router, 2.4 GHz single band with
two external antennas.
Hardware:
- SoC: Broadcom BCM6368
- CPU: dual core BMIPS4350 @ 400Mhz
- RAM: 64 MB DDR
- Flash: 8 MB parallel NOR
- Ethernet LAN: 4x 100Mbit
- Wifi 2.4 GHz: miniPCI Broadcom BCM43222 802.11bgn
- USB: 1x 2.0
- Buttons: 1x (reset)
- LEDs: yes
- UART: yes
Installation via CFE web UI:
1. Power off the router.
2. Press reset button near the antenna.
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
3baa45fbd8)
Álvaro Fernández Rojas [Sun, 11 Jun 2023 08:25:03 +0000 (10:25 +0200)]
bmips: dgnd3700v1/dgnd3800b: add missing kmod-leds-gpio
Commit
ed79519b8d89 missed adding kmod-leds-gpio to these devices.
Fixes: ed79519b8d89 ("bmips: add support for Netgear DGND3700 v1, DGND3800B")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Álvaro Fernández Rojas [Sun, 11 Jun 2023 08:17:50 +0000 (10:17 +0200)]
bmips: image: rename Device/bcm63xx_netgear
Every other Device definition in the target is using hyphens instead of
underscores.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Álvaro Fernández Rojas [Sun, 11 Jun 2023 08:14:25 +0000 (10:14 +0200)]
bmips: dts: improve and align device tree files
Align all the device tree files and follow the same criteria before more
devices are ported from bcm63xx and this goes out of control.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Daniel González Cabanelas [Sat, 10 Jun 2023 19:05:33 +0000 (21:05 +0200)]
bmips: add support for Netgear EVG2000
The Netgear EVG2000 is a wifi gigabit router, 2.4 GHz single band with
two internal antennas integrated in the main PCB.
Hardware:
- SoC: Broadcom BCM6369
- CPU: dual core BMIPS4350 V3.1 @400Mhz
- RAM: 64 MB DDR
- Flash: 16 MB parallel NOR
- LAN switch: Broadcom BCM53115, 5x 1Gbit
- Wifi 2.4 GHz: Broadcom BCM4322 802.11bgn
- USB: 2x 2.0
- Buttons: 2x, 1 reset
- LEDs: 10x
- FXS: 2x
- UART: yes
Installation via CFE web UI:
1. Power off the router and make a temporal TX-RX shortcircuit on the
serial pins.
2. Power on the router and wait 3 or more seconds
3. Remove the TX-RX shortcircuit
4. Browse to http://192.168.1.1 or http://192.168.0.1 and upload the
firmware
5. Wait a few minutes for it to finish
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Thomas Schröder [Fri, 9 Jun 2023 10:03:31 +0000 (12:03 +0200)]
ramips: fix button definitions for Zyxel WSM20
Setting the events of the WPS and LED buttons to
the best matching values based from the documentation:
<https://openwrt.org/docs/guide-user/hardware/hardware.button#procd_buttons>
Signed-off-by: Thomas Schröder <tschroeder_github@outlook.com>
(cherry picked from commit
b0120f7c8bb35088f298f00eb4a630f62fb4183f)
Arınç ÜNAL [Fri, 9 Jun 2023 08:55:21 +0000 (11:55 +0300)]
ramips: fix first boot network configuration for TOZED ZLT S12 PRO
The network configuration at first boot for TOZED ZLT S12 PRO lacks setting
up the LAN and WAN network interfaces. Address this. The WAN port is
advertised as WAN/LAN on the device and is put on LAN on stock firmware so
put it on LAN here as well.
Fixes: ce1f9fa625 ("ramips: add support for TOZED ZLT S12 PRO")
Reported-by: Andre Cruz <me@1conan.com>
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
(cherry picked from commit
b61253f92abb4c0d21ec7358a74438eae8d7e6b4)
Aleksander Jan Bajkowski [Thu, 25 May 2023 20:20:15 +0000 (22:20 +0200)]
kernel: use struct group to wipe psb6970 volatile priv data
Instead of reference vlan and do strange subtraction, use the handy
struct_group() to create a virtual struct of the same size of the
members. This permits to have a more secure memset and fix compilation
warning in 6.1 where additional checks are done.
Fix compilation warning:
| inlined from 'psb6970_reset_switch' at drivers/net/phy/psb6970.c:275:2:
| ./include/linux/fortify-string.h:314:25: error: call to '__write_overflow_field'
| declared with attribute warning: detected write beyond size of field
| (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]
| 314 | __write_overflow_field(p_size_field, size);
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|cc1: all warnings being treated as errors
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
(cherry picked from commit
d69becd3071d560cd1c9ea655cbba26adce91f61)