This is Allwinner's ARM926EJ-S core, which is one of its early products, reappearing in recent compact designs. The SoC includes 32/64Mb memory in the same physical package, and has display and USB interfaces, allowing for very small footprint boards.
The target consists of basic 6.12 support, with u-boot. Instead of creating a separate suniv target, as both the kernel and u-boot supports enough of this SoC by now with minimal patching, add it into sunxi as a subtarget.
realtek: dts: rearrange mdio-bus for tplink_sg2xxx
This appears to have been missed in #19986.
Signed-off-by: Daniel Tang <tangrs@google.com> Link: https://github.com/openwrt/openwrt/pull/20306 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 515a86b)
kernel: modules: load e1000e driver during pre-init stage
Set the pre-init boot flag for the e1000e network device driver so that it is loaded during the early pre-init stage of the boot process instead of later.
Then, it is possible to rename its network ports via the ucidef_set_network_device_path function from the 02_network script while booting.
Signed-off-by: Til Kaiser <mail@tk154.de> Link: https://github.com/openwrt/openwrt/pull/17251 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: f22f533)
Currently, the interfaces of the Mellanox Spectrum Switch QSFP ports are all labeled eth*. Their order doesn't match the faceplate and is different for each model.
They could be named during boot, but this isn't sufficient because they support port splitting. After such ports are split, their port naming begins again with eth*, and the same is true after they are unsplit again.
A hotplug script is used here that reads from the sysfs file phys_port_name, which contains p1, p2, p3, ... for unsplit ports and p1s0, p1s1, p1s2 for split ports.
Signed-off-by: Til Kaiser <mail@tk154.de> Link: https://github.com/openwrt/openwrt/pull/17251 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 8edcd77)
base-files: add ucidef_set_interface_netdev_range function
The ucidef_set_interface* functions can be used to add network interfaces to a default network configuration. Such network interfaces often have the same base interface name (e.g., eth* or lan*). On devices with many network ports, adding all ports to the default config can become inconvenient.
This commit adds a new uci function ucidef_set_interface_netdev_range, which adds network interfaces for a specific port range to a given OpenWrt interface. The first parameter is the OpenWrt interface, the second is the base interface name, the third is the port start, and the fourth is the port end range.
Signed-off-by: Til Kaiser <mail@tk154.de> Link: https://github.com/openwrt/openwrt/pull/17251 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 055d877)
x86: rename and configure Mellanox Spectrum interfaces
This commit renames all management network ports of the SN2100, SN2700, SN3420, and SN3700 switches based on their PCI address during boot.
For the default network config, the management and QSFP port(s) are put into the br-lan bridge.
Signed-off-by: Til Kaiser <mail@tk154.de> Link: https://github.com/openwrt/openwrt/pull/17251 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: badf145)
iproute2: stop writing unused snapshot information
iproute2 already generates and uses a proper version string based off of git since 2020 [1]. Since the aforementioned commit has already removed the include for SNAPSHOT.h, this bit of code has had no effect since then other than disabling the built-in configure script invocation.
Signed-off-by: George Tsiamasiotis <george@tsiamasiotis.gr> Link: https://github.com/openwrt/openwrt/pull/20281 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 2069b83)
iproute2: split iproute2 configure and compile logic
Previously we relied on the iproute2 makefile automatically running the configure script on first run. This does not allow control of some configure options, or of when the configure script is re-run.
The motivating usecase here is ./configure --color=auto, though that is not implemented in this commit.
Signed-off-by: George Tsiamasiotis <george@tsiamasiotis.gr> Link: https://github.com/openwrt/openwrt/pull/20281 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 4153205)
iproute2: enable automatic color output by default
Support for color output has existed in iproute2 since forever and we never compile it out, even in tiny variants. As such, not requiring people to constantly add -c to their ip commands is a nice QoL feature.
Signed-off-by: George Tsiamasiotis <george@tsiamasiotis.gr> Link: https://github.com/openwrt/openwrt/pull/20281 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 2730d11)
There are switches which share the same overall hardware design but remove just a couple of components for the low cost variant. For example, a 8+2 (ethernet+SFP) switch might have a low cost variant which only has 8 ethernet ports. In this case, the PCB will be shared but components for SFP will just be dropped.
The LED shift registers will be the same between the two switches but the ports are different. But since the rtl930x_led_init code is trying to calculate the number of LEDs using the LED ports, the ethernet status ports will then suddenly be shifted by two ports.
It is therefore necessary to have a mechanism to overwrite the detection of the ethernet ports in the LED initialization and force some ports to "virtually there" for the LED controller.
Signed-off-by: Harshal Gohel <hg@simonwunderlich.de> Co-developed-by: Sven Eckelmann <se@simonwunderlich.de> Signed-off-by: Sven Eckelmann <se@simonwunderlich.de> Link: https://github.com/openwrt/openwrt/pull/20300 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (commit: ebb79d0)
realtek: rtl930x: Fix out-of-bounds check in LED set configuration
of_property_count_u32_elems returns the number of u32 and not the number of bytes. It must therefore be checked against the number of u32 in set_config and not the bytes in set_config.
Fixes: 2cfb1ecf1035 ("rtl930x: Rework per port LED configuration") Signed-off-by: Sven Eckelmann <se@simonwunderlich.de> Link: https://github.com/openwrt/openwrt/pull/20300 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (commit: fb01b90)
RTL930x received support for specifying active low/high LEDs in commit bec9e79a99ad ("realtek: dsa: support active-high LEDs"). But this was completely forgotten on RTL931x.
The LED sets must be configured before per-port LEDs are actually assigned. At the same time, the LED set configuration was basically unreadable and the RTL930x from commit 2cfb1ecf1035 ("rtl930x: Rework per port LED configuration") does a better job. Instead of moving the old implementation around, just adopt the one from RTL930x.
There are switches which share the same overall hardware design but remove just a couple of components for the low cost variant. For example, a 8+2 (ethernet+SFP) switch might have a low cost variant which only has 8 ethernet ports. In this case, the PCB will be shared but components for SFP will just be dropped.
The LED shift registers will be the same between the two switches but the ports are different. But since the rtl930x_led_init code is trying to calculate the number of LEDs using the LED ports, the ethernet status ports will then suddenly be shifted by two ports.
It is therefore necessary to have a mechanism to overwrite the detection of the ethernet ports in the LED initialization and force some ports to "virtually there" for the LED controller.
This functionality was already implemented for Plasma Cloud PSX8 (RTL930x) but some devices using RTL931x might also benefit from a similar feature.
Signed-off-by: Harshal Gohel <hg@simonwunderlich.de> Co-developed-by: Sven Eckelmann <se@simonwunderlich.de> Signed-off-by: Sven Eckelmann <se@simonwunderlich.de> Link: https://github.com/openwrt/openwrt/pull/20300 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (commit: 9f5e43b)
The A1 and B1 devices are largely the same. The differences seem to be: - RTL8218D (A1) vs RTL8218E (B1) PHY for the eight 1 Gbps TP ports - Aquantia (A1) vs RTL8261N (B1) PHY for the three 10 Gbps TP ports
RTL8218D/E share the same driver and support was added already by commit c8c187f0f0 ("realtek: add support for RTL8218E").
The RTL8261N is also already supported but it's located at different addresses compared to the A1 device. This requires the device tree to be split. As a result, the devices are require different images.
I found the smi addresses on the forum: https://forum.openwrt.org/t/support-for-rtl838x-based-managed-switches/57875/3622 And I can conform on my B1 device that this is working.
Not hashing CWD is potentially unsafe since it involves deliberately poisoning the cache in certain situations in exchange for performance gain. It can lead to debug information pointing out either no longer existing or much worse incorrect source files, possibly leading developers onto a false track and wasting a lot of time.
If one wishes to save build time by sharing the cache between multiple source trees, this can be achieved safely by enabling reproducible debug information, like this:
Note that CWD hashing gets disabled implicitly when reproducible debug information is enabled. The CCACHE_NOHASHDIR option is only for disabling CWD hashing in cases where it is not safe to do so.
Signed-off-by: Erik Karlsson <erik.karlsson@iopsys.eu> Link: https://github.com/openwrt/openwrt/pull/20317 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 11820ef)
Switch: 1 WAN, 4 LAN (Gigabit) Gigabit RJ45 PoE Ports on 2~5 Max Power on a Single PoE Ports 30W PoE Ports : The PoE ports comply with IEEE 802.3at/af standards. Ports: 1 USB-A 3.0 Ports
LED:
System PoE Max Status Link/ACT/PoE Status of Each PoE Port
Physical Buttons:
Reset Button
Power Input:
DC Jack
Power Methods:
DC: 54V 1.11A 802.3at/af PoE Passive PoE: 24/48V
Max Power Consumption (W):
Total: 60W PoE: 55W PoE (when USB Device is plugged in): 50W No PoE: 5W
Installation:
To install OpenWRT, you need the intermediate firmware from Cudy. (U-boot is locked). After installing the intermediate firmware, you can install OpenWRT via sysupgrade.
Recovery:
TFTP available. 1. Place the recovery.bin in the serving directory of your TFTP server. 2. Set your IP to 192.168.1.88/24. 3. Press the “Reset” button of Cudy router and hold it. Before the Cudy router is powered on and before TFTP start to download the firmware, don't release the “Reset” button. 4. Power on the Cudy router. 5. You can release the reset button only when TFTP starts downloading firmware. 6. When the SYSTEM LED turns solid green, the upgrade is complete.
Serial:
1. Serial connection parameters: 115200 / 8N1 2. Serial connection voltage: 3.3V
PoE is not supported at the time of PR. The IP804R chip is not yet supported by OpenWRT.
Changelog: a52bda0 (HEAD, tag: v6.17) bump version to 6.17 c5bfa2a iw: add support to print link level information in station dump efaf786 iw: Add support to set per-radio RTS threshold in multi-radio wiphy 009ad3b update nl80211.h aef3798 iw: don't set stupid socket buffer size 8d52fb4 iw: scan: Add partial Multi-Link element printing cfc0695 iw: print HE mcs correctly when mcs_len 8e4808f iw: Add command to enable/disable EPCS 85b79b3 update nl80211.h 612f9f5 iw: Prevent segfault in ftm get stats 1558e60 iw: print NO-EHT flags for reg get command 59660a3 iw: fix EHT capabilities on Big Endian platforms 8ea80d3 iw: scan: Add printing of EHT Operation Element 7c0511b util: rename hz to Hz vol 2 c2a12a5 util: rename hz to Hz 0cc98ae iw: scan: Decode additional WPA3 group ciphers f04e5c5 iw: scan: Decode additional WPA3 AKM suite types 41a07a8 iw: fix HE operation on Big Endian platforms c41971e iw: fix HE capabilities on Big Endian platforms a6ad3f1 iw: scan: add eht capability parsing 4c85991 iw: util: update and clean up eht capa printing a0a7dde iw: scan: replace passed ie buffer with ie context 7bc2a84 iw: print tx power per link for MLD 478ddd4 iw: add output for wiphy interface combinations 93e2309 update nl80211.h 966c590 iw: scan: add enum for element IDs 422419e scan: Add printing of HE Operation Element d088c8a update nl80211.h 73231dd iw: fix formats under MIPS64/PPC 8609336 iw: remove sizer section and related code c8b9e77 util: clarify comment about 'parsed' pointer b29da20 iw: add puncturing support cce9897 iw: refactor frequency help
Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl> Link: https://github.com/openwrt/openwrt/pull/20321 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (commit: b64fded)
In the conversion to nvmem of eax500 and unifi-ac-hd, the address was set to 0 as is the case with most platforms, but not this one.
The wifi node also needs to be wrapped in a bridge node.
Matches every other device in ipq806x.
Fixes: 148f82ad4525 ("ipq806x: use nvmem for wifi mac") Signed-off-by: Rosen Penev <rosenp@gmail.com> Link: https://github.com/openwrt/openwrt/pull/20325 Signed-off-by: Robert Marko <robimarko@gmail.com> (commit: 1a3f05e)
The package bump to version rc6 incorporates two recent changes, first, the stored `mtime` honors SOURCE_DATE_EPOCH, making a prior "touch" obsolete. Secondly the order of files added to created packages is now sorted, improving reproducibility, too.
Signed-off-by: Paul Spooren <mail@aparcar.org> (commit: 4bef775)