The device is equipped with a GPS module, reporting data via /dev/ttyS1.
A TF card reader is also present. Only one of those components can be
used at once, since they share some PINs.
This commit adds two devicetree overlays to allow for the user to select
the desired configuration. Another overlay configuration to allow booting
from SD card is provided.
Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
All kernel symbols are automatically refreshed by
`make kernel_oldconfig CONFIG_TARGET=target` and
`make kernel_oldconfig CONFIG_TARGET=subtarget`.
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
* Drop obsolete flag I2C_CLASS_SPD. [1]
* Change .remove callback return type to NULL.
* Use strscpy instead of strlcpy.
This patch fixes the following build errors:
drivers/i2c/busses/i2c-lantiq.c:599:41: error: 'I2C_CLASS_SPD' undeclared (first use in this function); did you mean 'I2C_CLASS_HWMON'?
599 | adap->class = I2C_CLASS_HWMON | I2C_CLASS_SPD;
| ^~~~~~~~~~~~~
| I2C_CLASS_HWMON
drivers/i2c/busses/i2c-lantiq.c:600:9: error: implicit declaration of function 'strlcpy'; did you mean 'strncpy'? [-Wimplicit-function-declaration]
600 | strlcpy(adap->name, DRV_NAME "-adapter", sizeof(adap->name));
| ^~~~~~~
| strncpy
drivers/i2c/busses/i2c-lantiq.c:729:19: error: initialization of 'void (*)(struct platform_device *)' from incompatible pointer type 'int (*)(struct platform_device *)' [-Wincompatible-pointer-types]
729 | .remove = ltq_i2c_remove,
|
[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.12.y&id=e61bcf42d290e73025bab38e0e55a5586c2d8ad5
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
This is a preparation for 6.12 kernel support. It can help us
track the files history by using the Git tool.
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
This is a preparation for introducing the 6.12 kernel support.
All configs are automatically refreshed.
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
This patch fixes the following build warnings:
arch/mips/lantiq/xway/vmmc.c:31:14: error: no previous prototype for 'ltq_get_mps_ad0_irq' [-Werror=missing-prototypes]
31 | unsigned int ltq_get_mps_ad0_irq(void)
| ^~~~~~~~~~~~~~~~~~~
arch/mips/lantiq/xway/vmmc.c:40:14: error: no previous prototype for 'ltq_get_mps_ad1_irq' [-Werror=missing-prototypes]
40 | unsigned int ltq_get_mps_ad1_irq(void)
| ^~~~~~~~~~~~~~~~~~~
arch/mips/lantiq/xway/vmmc.c:49:14: error: no previous prototype for 'ltq_get_mps_vc_irq' [-Werror=missing-prototypes]
49 | unsigned int ltq_get_mps_vc_irq(int idx)
| ^~~~~~~~~~~~~~~~~~
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
This patch fixes the following build warnings:
arch/mips/pci/ifxmips_pcie.c:1084:36: error: invalid use of undefined type 'struct platform_device'
1084 | struct device_node *node = pdev->dev.of_node;
| ^~
arch/mips/pci/ifxmips_pcie.c:1204:12: error: no previous prototype for 'ifx_pcie_bios_init' [-Werror=missing-prototypes]
1204 | int __init ifx_pcie_bios_init(void)
| ^~~~~~~~~~~~~~~~~~
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
This patch fixes the following build warnings:
arch/mips/lantiq/xway/ath5k_eep.c:34:12: error: no previous prototype for 'of_ath5k_eeprom_probe' [-Werror=missing-prototypes]
34 | int __init of_ath5k_eeprom_probe(struct platform_device *pdev)
| ^~~~~~~~~~~~~~~~~~~~~
arch/mips/lantiq/xway/eth_mac.c:15:11: error: no previous prototype for 'ltq_get_eth_mac' [-Werror=missing-prototypes]
15 | const u8* ltq_get_eth_mac(void)
| ^~~~~~~~~~~~~~~
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
This patch fixes the following build warnings:
arch/mips/lantiq/xway/timer.c:160:14: error: no previous prototype for 'ltq_get_fpi_bus_clock' [-Werror=missing-prototypes]
160 | unsigned int ltq_get_fpi_bus_clock(int fpi) {
| ^~~~~~~~~~~~~~~~~~~~~
arch/mips/lantiq/xway/timer.c:803:36: error: invalid use of undefined type 'struct platform_device'
803 | ret = devm_mutex_init(&pdev->dev, &timer_dev.gptu_mutex);
| ^~
arch/mips/lantiq/xway/timer.c:864:12: error: no previous prototype for 'lq_gptu_init' [-Werror=missing-prototypes]
864 | int __init lq_gptu_init(void)
| ^~~~~~~~~~~~
arch/mips/lantiq/xway/timer.c:873:13: error: no previous prototype for 'lq_gptu_exit' [-Werror=missing-prototypes]
873 | void __exit lq_gptu_exit(void)
| ^~~~~~~~~~~~
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Add WED related nodes to the device tree of the MT7988 SoC family.
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Import patches from kernel 6.13:
- net: dsa: realtek: Use for_each_child_of_node_scoped()
- net: dsa: realtek: rtl8365mb: Make use of irq_get_trigger_type()
- net: dsa: realtek: rtl8366rb: Make use of irq_get_trigger_type()
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/19381
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Add driver packages for Intel Low-Power Subsystem devices which are part
of some Intel chipsets. They are mainly needed to have access to the I2C
bus used for HID devices.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
The current offset used for extracting QCN6122 calibration data
is incorrect on the Yuncore AX830. This patch corrects the
offset to ensure proper WiFi initialization.
Tested on: Yuncore AX830
Signed-off-by: Shubham Vishwakarma <shubhamvis98@fossfrog.in>
Link: https://github.com/openwrt/openwrt/pull/19416
Signed-off-by: Robert Marko <robimarko@gmail.com>
Support for 6.12 is ready; add it as a testing kernel.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19069
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Most of them were manually refreshed.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19069
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
No need to keep it in kernel specified folder anymore.
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19069
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Many x86 machines can boot from SD cards, and some embedded x86 devices
come with an eMMC. Include drivers for all common MMC/SDHCI controllers
to allow booting from SD/MMC on x86.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Directly call the function "get_linux_version()" to get the integer
kernel version number.
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Link: https://github.com/openwrt/openwrt/pull/19172
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Currently, if OEM recovery flashes OpenWrt to second ubi1,
OpenWrt cannot boot. With this commit, recovery image is built
with initramfs kernel, so that it can boot from either ubi or ubi1.
This adds an extra step to OpenWrt installation from OEM:
user needs to sysupgrade from initramfs to full system.
Signed-off-by: Mateusz Krzak <kszaquitto+github@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18878
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
8mA driving will cause overshoot issue on SPI NAND. Change it to 4mA.
- Reference:
003744197a
On Linux mainline (mt7986.dtsi), spi's source clock is: clocks = <&topckgen CLK_TOP_MPLL_D2>, which is
208MHz. Usable clock division will be:
- 208/4=52MHz
- 208/6~=35MHz
- 208/8=26MHz
and so on
If we specify 50MHz for spi-max-frequency, it will actually run under about 35MHz. Most SPI NAND & NOR
flashes are capable of running with more than 52MHz, include Micorn MT29F4G01ABAFDWB on ZyXEL EX5601.
[Ref: #18752] To reach highest performance on mt7986, use spi-max-frequency = <520000000>. Basically,
this setting should work on all mt7986 PCBs since most mt7986 boards follow reference design. However,
other boards needs further test to guarantee stability.
Signed-off-by: Sky Huang <SkyLake.Huang@mediatek.com>
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/18813
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
In rtl931x_led_init, the number of leds per port is not properly set. It
currently uses a hardcoded value of 1 which seems to be taken initially
from a specific device. This hardcoded value assumes any port always has
exactly two leds.
The RTL930x variant - rtl930x_led_init - does a better job at this. So
take it and use it for RTL931x too with the corresponding register.
While at it, rename the function to a proper naming scheme.
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19241
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
These cpu erratums are used by other SoCs, just remove them.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/19380
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
These cpu erratums are used by other SoCs, just remove them.
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/19380
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Move the following kernel symbol configs to generic:
COMPRESSED_INSTALL and IMX_SCMI related configs
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Link: https://github.com/openwrt/openwrt/pull/19380
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Dell/SonicWall APL27-0B1 (marketed as SonicPoint ACi) is a dual band
wireless access point. Very similar to already supported APL26-0AE,
which all antennas are external, while this variant has internal
antennas. End of life as of 2022-07-31.
Specification
SoC: QualcommAtheros QCA9550
RAM: 256 MB DDR2
Flash: 32 MB SPI NOR
WIFI: 2.4 GHz 3T3R integrated
5 GHz 3T3R QCA9890 oversized Mini PCIe card
Ethernet: 2x 10/100/1000 Mbps QCA8334
port labeled lan1 is PoE capable (802.3at)
USB: 1x 2.0
LEDs: LEDs: 6x which 5 are GPIO controlled and two of them are dual color
Buttons: 1x GPIO controlled
Serial: RJ-45 port, SonicWall pinout
baud: 115200, parity: none, flow control: none
Before flashing, be sure to have a copy of factory firmware, in case You
wish to revert to original firmware.
Installation
1. Prepare TFTP server with OpenWrt sysupgrade image and rename that
image to "ap135.bin".
2. Connect to one of LAN ports.
3. Connect to serial port.
4. Hold the reset button (small through hole on side of the unit),
power on the device and when prompted to stop autoboot, hit any key.
The held button can now be released.
5. Alter U-Boot environment with following commands:
setenv bootcmd bootm 0x9F110000
saveenv
6. Adjust "ipaddr" (access point, default is 192.168.1.1) and "serverip"
(TFTP server, default is 192.168.1.10) addresses in U-Boot
environment, then run following commands:
tftp 0x80060000 ap135.bin
erase 0x9F110000 +0x1EF0000
cp.b 0x80060000 0x9F110000 $filesize
7. After successful flashing, execute:
boot
8. The access point will boot to OpenWrt. Wait few minutes, until the
wrench LED will stop blinking, then it's ready for configuration.
Notes
By default no power is provided on USB port, so attached USB devices
won't enumerate. To change that enable regulator with:
echo "enabled" > /sys/devices/platform/output-usb-vbus/state
To disable power write "disabled" to the same file.
Ther regulator state will reset on reboot, consider running this command
on hotplug event or add it to /etc/rc.local. The hotplug event should
look like this:
if [ "${PRODUCT}" = "1d6b/2/606" ] && [ "${ACTION}" = "add" ]; then
echo "enabled" > /sys/devices/platform/output-usb-vbus/state
fi
Place it in /etc/hotplug.d/usb/10-usb-power.
Known issues
Initramfs image can't be bigger than specified kernel size, otherwise
bootloader will throw LZMA decompressing error. Switching to lzma-loader
should workaround that.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20250529202033.28250-2-tmn505@terefe.re/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Unfortunately they still apear with prolonged serial console usage.
While it's not common to use serial console past initial setup, alas
when the condition is hit the console is almost unusable.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Link: https://patchwork.ozlabs.org/project/openwrt/patch/20250618170045.473711-2-tmn505@terefe.re/
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The bootup of the armsr target sometimes failed like this:
```
[ 0.762283] NET: Registered PF_INET6 protocol family
[ 0.791987] workqueue: Failed to create a worker thread: -EAGAIN
[ 0.801986] workqueue: Failed to create a rescuer kthread for wq "mld": -EAGAIN
[ 0.964017] NET: Unregistered PF_INET6 protocol family
```
Increase the maximum number of threads the kernel allows.
Link: https://github.com/openwrt/openwrt/pull/19376
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The Wavlink Aerial HD3 (WL-WN570HA2) is an AC1200 dual-band outdoor
access point. It supports 802.3AT/AF PoE and is IP67 waterproof.
It is based on the MediaTek MT7628DAN SoC and MT7613BEN WiFi 5 chip.
This model uses the 100Mbit LAN and 2.4Ghz WiFi elements of the
MT7628 and the 5Ghz WiFi of the MT7613.
Specification:
- SoC: MediaTek MT7628DAN (1C/1T) @ 580MHz
- RAM: 64MB DDR2 (integrated in SoC)
- FLASH: 16MB SPI NOR (Fudan FM25Q128A)
- Ethernet: 1x 10/100Mbps
- WiFi: 2.4/5 GHz 2T2R
- 2.4GHz MediaTek MT7628DAN bgn
- 5GHz MediaTek MT7613BEN nac
- Antennas: 2x detachable, dual-band 7dBi with RP-SMA connectors.
- USB: none
- BTN: Reset
- LED: 6 total: power; WAN/LAN; WiFi; WiFi low; WiFi med; Wifi high
- UART: surface-mount on PCB. Pins are marked via silkscreen.
pin1 (square pad, towards Ethernet)=Vcc, pin2=RX,
pin3=TX, pin4=GND. Settings: 57600/8N1.
NOTE: The TX & RX silkscreens were reversed on my test unit.
Installation:
1) This device requires a HTTP recovery procedure to do an initial load
of OpenWRT. You will need:
a. A web browser (private window recommended)
b. Configure an Ethernet interface to 192.168.1.x/24; don't use .1
c. Connect a cable between the computer and the Wavlink's PoE injector.
2) Put the Wavlink in HTTP recovery mode.
a. Do this by pressing and holding the reset button on the bottom while
powering the unit on.
b. As soon as all 6 LEDs light up blue (roughly 2-3 seconds), release
the button.
c. The LEDs should all remain lit, indicating it's in HTTP recovery.
3) Point the browser at http://192.168.1.1/index.html
4) Click "Choose File" and select the OpenWRT sysupgrade image.
5) Click the "Update Firmware" button and wait while the unit flashes
the image and reboots.
6) When the system comes back up fully, only the power LED will be lit.
Wait an extra minute then you should be able to reach OpenWRT on
http://192.168.1.1
5) Log into LuCI as root; there is no password.
Revert to the OEM Firmware:
--------------------------
* U-boot HTTP:
Follow the HTTP recovery steps, and use a firmware image downloaded
from Wavlink.
Signed-off-by: Jonathan Sturges <jsturges@redhat.com>
Link: https://github.com/openwrt/openwrt/pull/18856
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Add/enable 2nd USB bus (integrated ath3k bluetooth) to dts. This already
exists in the qca956x dtsi, adding the pointer here to bring the bluetooth to life.
The 2nd bus hosts the integrated bluetooth at 0x1b400000.
See in the comments for more info:
c5b7ec8cee
Tested-by: Russ Innes <russ.innes@gmail.com> on Ubiquiti Amplifi HD .
Signed-off-by: Russ Innes <russ.innes@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19303
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This device is similar to the TP-Link EX220 v1.
The differences are the number of ports (3 LANs
and 1 WAN) and the number of LEDs (1 LED RGB)
Hardware
--------
CPU: MediaTek MT7621 DAT
RAM: 128MB DDR3 (integrated)
FLASH: 16MB SPI-NOR
WiFi: MediaTek MT7905 + MT7975 (2.4 / 5 DBDC) 802.11ax
SERIAL: 115200 8N1
LED - (TX - RX - GND - 3V3 ) - ETH ports
Installation
------------
Flashing is only possible via a serial connection using the sysupgrade
image; the factory image must be signed. You can flash the sysupgrade
image directly through the U-Boot console, or preferably, by booting the
initramfs image and flashing with the sysupgrade command. Follow these
steps for sysupgrade flashing:
1. Establish a UART serial connection.
2. Set up a TFTP server at 192.168.0.2 and copy the initramfs image
there.
3. Power on the device and press any key to interrupt normal boot.
4. Load the initramfs image using tftpboot.
5. Boot with bootm.
6. If you haven't done so already, back up all stock mtd partitions.
7. Copy the sysupgrade image to the router.
8. Flash OpenWrt through either LuCI or the sysupgrade command. Remember
not to attempt saving settings.
Revert to stock firmware
------------------------
Flash stock firmware via OEM web-recovery mode. If you don't have access
to the stock firmware image, you will need to restore the firmware
partition backed up earlier.
Web-Recovery
------------
The router supports an HTTP recovery mode:
1. Turn off the router.
2. Press the reset button and power on the device.
3. When the LED start flashing, release reset and quickly press it
again.
The interface is reachable at 192.168.0.1 and supports installation of
the OEM factory image. Note that flashing OpenWrt this way is not
possible, as mentioned above.
Signed-off-by: Gustavo Curi <gpcuri@land.ufrj.br>
Link: https://github.com/openwrt/openwrt/pull/19104
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Since not every device sets an ubifs partition name as the same as their
parent mtd partition, this change allows mount_ubi_part to usable in
other devices
Signed-off-by: Yonghyu Ban <yhban@silicon.moe>
Link: https://github.com/openwrt/openwrt/pull/19203
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
**Huasifei WH3000 Pro**
Portable Wi-Fi 6 travel router based on MediaTek MT7981A SoC. MT7981B+MT7976CN+RTL8221B Dual Core 1.3GHZ with 5G modems module and PWM Fan.
**Specifications**
SoC: Filogic 820 MT7981A (1.3GHz)
RAM: DDR4 1GB
Flash: eMMC 8GB
WiFi: 2.4GHz and 5GHz with 3 antennas
Ethernet:
1x WAN (10/100/1000M)
1x LAN (10/100/1000/2500M)
USB: 1x USB 3.0 port
Two buttons: power/reset and mode (BTN_0)
LEDS: blue, red, blue+red=pink
UART: 3.3V, TX, RX, GND / 115200 8N1
**Installation via U-Boot rescue**
1. Set static IP 192.168.1.2 on your computer and default route as 192.168.1.1
2. Connect to the WAN port and hold the reset button while booting the device.
3. Wait for the LED to blink 5 times, and release the reset button.
4. Open U-boot web page on your browser at http://192.168.1.1
5. Select the OpenWRT sysupgrade image, upload it, and start the upgrade.
6. Wait for the router to flash the new firmware.
7. Wait for the router to reboot itself.
**Installation via sysupgrade**
Just flash sysupgrade file via [LuCI upgrade page](http://192.168.1.1/cgi-bin/luci/admin/system/flash) without saving the settings.
**Installation via SSH**
Upload the file to the router `/tmp` directory, `ssh root@192.168.1.1` and issue a command:
```
sysupgrade -n /tmp/openwrt-mediatek-filogic-huasifei_wh3000-pro-squashfs-sysupgrade.bin
```
**Factory MAC**
You can find your Factory MAC which is mentioned on the box at `/dev/mmcblck0p2` partition `factory` starting from `0x4`
```
dd if=/dev/mmcblk0p2 bs=1 skip=4 count=6 | hexdump -C
```
Cherry-picked from 949d0bd77a
Fixed `green` to `blue` LED in dts, added `SUPPORTED_DEVICES += huasifei,fudy-pro` - to make sysupgrade compatible with factory QWRT/Lede fork firmware.
Signed-off-by: Fil Dunsky <filipp.dunsky@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19315
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
The operating mode of a SerDes must be aligned with the attached PHY or
SFP module. That does not only require to change the protocol (e.g. SGMII,
10Gbase-R, ...) but also the speed (e.g. 1.25G). For this the SerDes must
be re-initialized properly.
- It must be taken into power down
- The PLL speed must be set
- Maybe the CMU (clock management unit) must be resetted
- The new mode must be set
- The state machine must be resetted
- The power must be reactivated
Until now this sequence is bugged. First the driver relies on a clean
setup from U-Boot (rtk network on) and second trying to to change mode
and PLL speeds does not work at all. And not to forget: Currently two
adjacent SerDes cannot drive SGMII/HSGMII at the same time. Fix this by
taking care about the right SerDes/PLL/CMU command init order.
P.S. This code is inspired by the work of Jan Hofmann, who tried to
enable parallel SGMII/HSGMII mode. The only missing bit was a proper CMU
reset sequence.
Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19220
Signed-off-by: Robert Marko <robimarko@gmail.com>
Changing the node names arbitrarily broke existing configurations, which
rely on the device path in /etc/config/wireless.
Revert that part of the change without altering the compatible strings.
Fixes: 7e09959efd ("mac80211: fix wmac node names")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
The RTL8261N driver does not work correctly on non-mediatek devices. Remove
some of the power controls for Realtek chips.
This assumes the network has been started by the bootloader already:
(rtk network on).
Co-authored-by: Sebastian Gottschall
- bf45143f03
- 2fb02a5745
- 598a16a8d8
Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19081
Signed-off-by: Robert Marko <robimarko@gmail.com>
Add support for the RTL8264 (quad-10G phy) by matching the appropriate PHY_ID
in the driver.
Signed-off-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19081
Signed-off-by: Robert Marko <robimarko@gmail.com>
Replace .remove_new with .remove for compatibility with future kernel versions.
Dropping compatibility with older kernels.
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/19320
Signed-off-by: Nick Hainke <vincent@systemli.org>
Drop configs and patches for Linux 6.6.
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/19320
Signed-off-by: Nick Hainke <vincent@systemli.org>
Switch to Linux kernel version 6.12.
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Link: https://github.com/openwrt/openwrt/pull/19320
Signed-off-by: Nick Hainke <vincent@systemli.org>
The upstream submission for this mandates the node to be named wifi
instead of wmac. Change all ath79 entries to match the new names and
remove the compatibility patch.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19328
Signed-off-by: Robert Marko <robimarko@gmail.com>
Comes with kernel 6.16. I assume it will be backported at some point.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19329
Signed-off-by: Robert Marko <robimarko@gmail.com>
Patch backporting netdev_tx_reset_subqueue new OP has been already
backported in recent minor kernel version for 6.6.
Drop the related patch to fix compilation error on 6.6.
Fixes: 34ba7e8a8a ("generic: backport some flow offload helper patch")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Backpot upstream patch for Flow Offload support for AN7581 and refresh
all affected patch. To correctly work a dedicated firmware is needed to
use the dedicated Network Coprocessor (NPU).
This also introduce good cleanup and moves the driver in a dedicated
Airoha directory. While currently not totally usable (due to lack of
firmware blob) this is needed to backport support for external PHY/SFP
support.
Refresh all affected patch.
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl> # tested on Quantum W1700k
Tested-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18166
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Backport some upstream patch for Airoha ethernet driver in preparation
for Flow Offload support.
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl> # tested on Quantum W1700k
Tested-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18166
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Backport some flow offload helper patch in preparation for Airoha Flow
Offload support.
Link: https://github.com/openwrt/openwrt/pull/18166
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Replace PCIe patch with upstream version and update DTS with new PBUS
CSR property now required.
Tested-by: Aleksander Jan Bajkowski <olek2@wp.pl> # tested on Quantum W1700k
Tested-by: Andrew LaMarche <andrewjlamarche@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/18166
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Replaced all mt76@ with wifi@ per upstream requirement for all wifi
nodes.
Added missing compatible string where appropriate as stated by mt76.yaml
upstream.
Also updated reg value to be consistent everywhere.
Replace all pci14c3 entries to use mediatek,mt76.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19067
Signed-off-by: Robert Marko <robimarko@gmail.com>
Force update_cache_variantsvariants to use reset for Foresee NAND with bad blocks.
Tested on Xiaomi AX3000T + F35SQA001G with bad blocks and without bad blocks
Signed-off-by: Dim Fish <dimfish@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17963
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
When using apk as the package manager, imagebuilder make command
make manifest STRIP_ABI=1
does not strip package names of their ABI-version suffix. The ASU
server relies on this to validate builds, so many snapshot build
requests are failing.
Fix this by using the already existing package data parser in
make-index-json.py and augment it to write the result in manifest
format.
Fixes: https://github.com/openwrt/openwrt/issues/19274
Signed-off-by: Eric Fahlgren <ericfahlgren@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19278
Signed-off-by: Robert Marko <robimarko@gmail.com>
The RTL931x devices have an other register that describes the
current RAM configuration. Enhance the identification routine.
Tested on LGS352C (RTL9311).
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19284
Signed-off-by: Robert Marko <robimarko@gmail.com>
Until now the rt-loader only works on U-Boot driven devices where the
environment (e.g. coprocessor) is usually setup properly. Devices like
the ZyXEL GS1920 series use BootBase as start environment and skip
some of the basic initialization steps. rt-loader will fail in these
cases. Take care about the CP0 registers.
Additionally enhance the documentation of the printf implementation.
It was optimized during the different revisions of the initial PR.
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19253
Signed-off-by: Robert Marko <robimarko@gmail.com>
There are too many supported Realtek devices so avoid activating the
rt loader recipe in the default builds. Just start with the LGS310C.
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18397
Signed-off-by: Robert Marko <robimarko@gmail.com>
To make use of the new rt-loader provide the needed recipes.
This has been tested with the following devices:
- rtl838x Linksys LGS310: initramfs & flash
- rtl930x Zyxel XGS1210: initramfs
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18397
Signed-off-by: Robert Marko <robimarko@gmail.com>
The bootloader of many Realtek switches only supports gzipped kernel images.
With limited flash space that might get critical in future versions. For better
compression allow support for compressed images. For this a new loader was
developed. Several ideas have been taken over from the existing lzma loader
but this has been enhanced to make integration simpler. What is new:
- Loader is position independent. No need to define load addresses
- Loader identifies device memory on its own
- Loader uses "official" upstream kernel lzma uncompress
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/lib/decompress_unlzma.c
- Loader uses "official" UNMODIFIED nanoprintg that is used by several
bare metal projects. https://github.com/charlesnicholson/nanoprintf
Compiled the loader ist just under 12KiB and during boot it will show:
rt-loader
Found RTL8380M (chip id 6275C) with 256MB
Relocate 2924240 bytes from 0x80100000 to 0x8fce0000
Extract kernel with 2900144 bytes from 0x8fce521c to 0x80100000...
Extracted kernel size is 9814907 bytes
Booting kernel from 0x80100000 ...
[ 0.000000] Linux version 6.12.33 ...
[ 0.000000] RTL838X model is 83806800
...
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/18397
Signed-off-by: Robert Marko <robimarko@gmail.com>
Move changes to mt7988a.dtsi from patch adding the support for the
MT7988A Reference Board to a dedicated patch to ease maintainance.
Fixes: f9206d1111 ("kernel/mediatek: 6.12: replace downstream files by patches")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Restore the conversion to an all-UBI NAND layout and use of fitblk on
SPI-NAND connected via the mt65xx SPI controller.
Apply the same also for SPI-NAND connected via the SNFI controller, and
use fitblk also for boot from SPI-NOR, eMMC and SD.
Fixes: f9206d1111 ("kernel/mediatek: 6.12: replace downstream files by patches")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
The MediaTek MT7988A RFB currently hangs on boot as CCI fails to probe.
This is due to the wrong SoC compatible string "mediatek,mt7988" instead of
"mediatek,mt7988a". Fix that.
Fixes: f9206d1111 ("kernel/mediatek: 6.12: replace downstream files by patches")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
During setup the mdio driver decides the polling mode of the 4 smi
busses depending on the DTS phy settings. This works as follows:
- set polling to c45 if at least one phy is ethernet-phy-ieee802.3-c45
- set polling to c22 if all phys are ethernet-phy-ieee802.3-c22
On RTL930x it is not possible to switch to c22 if uboot has set c45
before. Fix this by overwriting the bitfield properly. While we are
here:
- Sort variables according to kernel style (inverse christmas tree)
- Initialize fields properly with = { 0 }
- Use GENMASK() for better readability
- Make use of RTMDIO_MAX_SMI_BUS
Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
Link: https://github.com/openwrt/openwrt/pull/19161
Signed-off-by: Robert Marko <robimarko@gmail.com>
This will allow more flexibility in using PHY drivers as kmods.
Signed-off-by: Mantas Pucka <mantas@8devices.com>
Link: https://github.com/openwrt/openwrt/pull/18435
Signed-off-by: Robert Marko <robimarko@gmail.com>