Commit Graph

945 Commits

Author SHA1 Message Date
Tianling Shen
ef0da86253
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-09-01 09:52:11 +08:00
Daniel Golle
a8cbee8e2d mediatek: mt7622: set DEVICE_DTC_ADDR for BPi-R64
Relocating the device tree is required for being apply to apply
device tree overylay at boot.

Fixes: 34bb33094a ("mediatek: use updated device tree overlay mechanism for BPi-R64")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-31 19:22:15 +01:00
Tianling Shen
2436d166cb
mediatek: fix lan ports for cmcc rax3000m
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-31 12:59:18 +08:00
Tianling Shen
5078ac8777
mediatek: add CMCC RAX3000M NAND version support
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-30 19:27:17 +08:00
Tianling Shen
1a1b5a12a4
mediatek: rename LC-HX3001 to ubootmod layout
Keep it consistent with other devices.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-30 15:44:10 +08:00
Tianling Shen
675be8a572
mediatek: fix typo error for h3c nx30 pro
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-30 15:35:56 +08:00
Tianling Shen
01c8e6e4bc
mediatek: add NMBM layout for H3C Magic NX30 Pro
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-30 15:30:33 +08:00
Tianling Shen
1dd1065198
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-30 11:51:39 +08:00
Daniel Golle
8f5986355c mediatek: filogic: remove stray quote
When adapting the network configuration for MT7988 RFB a stray quote
was left in a script. Remove it to fix generating the default network
configuration.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 21:54:02 +01:00
Daniel Golle
f631c7bbb1 generic: sync MediaTek Ethernet driver with upstream
Import commits from upstream Linux replacing some downstream patches.
Move accepted patches from pending-{5.15,6.1} to backport-{5.15,6.1}.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 16:35:22 +01:00
Daniel Golle
a0f4eadf6a mediatek: add support for Ubiquiti UniFi 6 LR v3
Some recent models of the Ubiquiti Networks UniFi 6 LR access point
come with a RealTek RTL8211FS 1000M/100M/10M PHY instead of the
Aquantia AQR112 2500M/1000M/100M/10M PHY used in both v1 and v2. Add
build for this variant so we can support Ethernet with the PHY.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 16:35:22 +01:00
Daniel Golle
035a88ae55 mediatek: generate bootloader artifacts for mt7988_rfb
Switch to OpenWrt uImage.FIT bootmethod and include various bootloader
artifacts with the generated binaries.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 16:35:22 +01:00
Daniel Golle
3ef8760e87 mediatek: improve mt7981.dtsi
* re-factor WED components to boot fine also on limited loaders
 * add LEDs of integrated GE PHY

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 13:55:38 +01:00
Daniel Golle
9f8fde216d mediatek: filogic: improve pinctrl drivers
Set correct pull-type data and add additional uart groups for MT7981.
Assign functions to configure pin bias for MT7986.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 13:55:38 +01:00
Daniel Golle
2544dc34f2 mediatek: i2c: mt65xx: allow optional pmic clock
Using the I2C host controller on the MT7981 SoC requires 4 clocks to
be enabled. One of them, the pmic clk, is only enabled in case
'mediatek,have-pmic' is also set which has other consequences which
are not desired in this case.

Allow defining a pmic clk even in case the 'mediatek,have-pmic' propterty
is not present and the bus is not used to connect to a pmic, but may
still require to enable the pmic clock.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 13:55:38 +01:00
Daniel Golle
06a150aed7 mediatek: re-add dropped properties on BPi-R3
Unfortunately some device tree properties have slipped under the table
when switching from our downstream device tree.

Bring back 3W power for SFP cages and restore thermal trip points to
make sense again.

Fixes: 7a0ec001ff ("mediatek: sync MT7986 device trees with upstream")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 13:55:38 +01:00
Tianling Shen
e5a645846c
mediatek: fix partition layout for Livinet ZR-3020
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-27 20:37:09 +08:00
Tianling Shen
e26decebb4
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-26 11:04:26 +08:00
John Audia
4b3e3c3fd7 kernel: bump 6.1 to 6.1.47
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.47

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne
Run-tested: x86/64/AMD Cezanne

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-08-26 00:07:16 +02:00
David Bauer
6dc0675e5b mediatek: enable NMBM remapping for NWA50AX Pro UBI
Don't skip remapping of the UBI area for the ZyXEL NWA50AX Pro. This is
due to the kernel being loaded from the UBI partition by U-Boot.

Link: https://github.com/openwrt/openwrt/pull/13335

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-08-25 21:42:31 +02:00
Tianling Shen
6da6b360c3
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-23 08:49:49 +08:00
David Bauer
4c0fdad7ea mediatek: enable NWA50AX Pro eth LEDs
Enable the ethernet LED's on the ZyXEL NWA50AX Pro to show link-state as
well as activity.

Both LED's are configured pulsing.

AMBER | 10/100
GREEN | 1000
A+G   | 2500

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-08-22 13:37:27 +02:00
Stefan Agner
4af06aaf33 mediatek: filogic: wax220: cleanup device tree
Fix compatible string to match what is supported upstream, fix alignment
and order MTD partitions according to offset.

Signed-off-by: Stefan Agner <stefan@agner.ch>
2023-08-22 13:37:27 +02:00
Stefan Agner
fa9d977f97 mediatek: filogic: wax220: support factory image
Enable building a factory image which can be flashed through the OEM
firmware's web interface. It seems that the web interface requires a
minimum file size of 10MiB, otherwise it will not accept the image.

The update image is a regular sysupgrade tarball packed in a Netgear
encrypted image. The Netgear encrypted image is the same as used in
WAX202 or WAX206, including the encryption keys and IV.

This adds a script which creates the rootfs_data volume on first
startup. This is required since the OEM firmware's sysupgrade scripts
do not create such a paritition. Note that any script ordered after
70_initramfs_test will not get executed on initramfs. Hence this new
script 75_rootfs_prepare won't create the rootfs_data volume when
using the recovery initramfs.

Also, this deletes the kernel_backup and rootfs_backup volumes in case
we have to create the rootfs_data volumes. This makes sure that
OpenWrt is the actual backup firmware instead of the stock firmware.

References in WAX220 GPL source:
https://www.downloads.netgear.com/files/GPL/WAX220-V1.0.2.8-gpl-src.tar.gz

* package/base-files/files/lib/upgrade/nand.sh:186
  Creation of rootfs_data is disabled

* Uboot-upstream/board/mediatek/common/ubi_helper.c
  Automatic creation of UBI backup volumes

Signed-off-by: Stefan Agner <stefan@agner.ch>
2023-08-22 13:37:27 +02:00
David Bauer
c35ff41ccc mediatek: add missing packages for Acer Predator W6
Add missing packages for creating the overlay filesystem.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-08-22 12:24:34 +02:00
Tianling Shen
709a855316
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-20 21:41:32 +08:00
Bjørn Mork
6cc14bf66a filogic: support Telenor branded ZyXEL EX5700
Telenor quirks
--------------
The operator specific firmware running on the Telenor branded
ZyXEL EX5700 includes U-Boot modifications affecting the OpenWrt
installation.

Notable changes to U-Boot include
- environment is stored in RAM and reset to defaults when power
  cycled
- dual partition scheme with "nomimal" or "rescue" systems, falling
  back to "rescue" unless the OS signals success in 3 attempts
- several runtime additions to the device-tree

Some of these modifications have side effects requiring workarounds
- U-Boot modifies /chosen/bootargs in an unsafe manner, and will crash
  unless this node exists
- U-Boot verifies that the selected rootfs UBI volume exists, and
  refuses to boot if it doesn't. The chosen "rootfs" volume must contain
  a squashfs signature even for tftp or initramfs booting.
- U-Boot parses the "factoryparams" UBI volume, setting the "ethaddr"
  variable to the label mac.  But "factoryparams" does not always
  exist.  Instead there is a "RIP" volume containing all the factory
  data.  Copying the "RIP" volume to  "factoryparams" will fix this

Hardware
--------
SOC:   MediaTek MT7986
RAM:   1GB DDR4
FLASH: 512MB SPI-NAND (Mikron xxx)
WIFI:  Mediatek MT7986 802.11ax 5 GHz
       Mediatek MT7916 DBDC 802.11ax 2.4 + 6 GHz
ETH:   MediaTek MT7531 Switch + SoC
       3 x builtin 1G phy (lan1, lan2, lan3)
       2 x MaxLinear GPY211C 2.5 N-Base-T phy (lan4, wan)
USB:   1 x USB 3.2 Enhanced SuperSpeed port
UART:  3V3 115200 8N1 (Pinout: GND KEY RX TX VCC)

Installation
------------
1. Download the OpenWrt initramfs image. Copy the image to a TFTP server
   reachable at 192.168.1.2/24. Rename the image to C0A80101.img.

2. Connect the TFTP server to lan1, lan2 or lan3. Connect to the serial
   console, Interrupt the autoboot process by pressing ESC when prompted.

3. Download and boot the OpenWrt initramfs image.

   $ env set uboot_bootcount 0
   $ env set firmware nominal
   $ tftpboot
   $ bootm

4. Wait for OpenWrt to boot. Transfer the sysupgrade image to the device
   using scp and install using sysupgrade.

   $ sysupgrade -n <path-to-sysupgrade.bin>

Missing features
----------------

- The "lan1", "lan2" and "lan3" port LEDs are driven by the switch but
  OpenWrt does not correctly configure the output.
- The "lan4" and "wan" port LEDs are driven by the GPH211C phys and
  not configured by OpenWrt.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
2023-08-20 01:14:06 +02:00
Bjørn Mork
1dd1ac2c35 mediatek: filogic: set wan label in preinit
Implement the functionality of
target/linux/ramips/patches-5.15/700-net-ethernet-mediatek-support-net-labels.patch
in userspace, since the driver patch has been rejected as a generic solution:
https://github.com/openwrt/openwrt/pull/11435

Signed-off-by: Bjørn Mork <bjorn@mork.no>
2023-08-20 01:14:06 +02:00
Tianling Shen
85f33fceb3
mediatek: add image size for redmi ax6000
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-19 08:36:44 +08:00
Yangyu Chen
72569c43c9
mediatek: fix 2.5G LED for TP-Link TL-XDR4288/608x
The RTL8221B PHY will set LED0 Ethernet link select to only 10M by
default, so the 2.5G Port of TP-Link TL-XDR4288/608x will only blink
when the link speed is 10Mbps if we do not change anything after reset.

This patch set LCR2 of RTL8221B PHY on TP-Link TL-XDR4288/608x to have
all speeds bitmasks(2.5G/2.5GLite/1G/100M/10M) set and then the LEDs
work normally.

Run-tested: TP-Link TL-XDR6088

Signed-off-by: Yangyu Chen <cyy@cyyself.name>
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-18 12:29:06 +08:00
Tianling Shen
bcf91ea360
mediatek: adjust LED behaviour on Redmi AX6000
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-18 11:06:22 +08:00
Tianling Shen
df169cfdbd
mediatek: build factory image for ax6000 custom u-boot
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-18 10:18:26 +08:00
Tianling Shen
01189fab53
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-15 08:41:38 +08:00
Daniel Golle
0454691960 mediatek: filogic: mt7988: mark RTC clock as critical
A dependency of the MT7988 MMC host controller on the SoC's RTC clock
being running has been discovered. Mark RTC clock as critical to fix
MMC host on MT7988.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-13 15:01:36 +01:00
John Audia
64782497db kernel: bump 5.15 to 5.15.126
1. Disable unneeded errata Kconfig symbols
2. Update kernel

Changelog: https://lore.kernel.org/stable/2023081111-unlocking-synopsis-d7d5@gregkh/

All 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>
2023-08-13 13:03:43 +02:00
Tianling Shen
5a3ed058da
mediatek: adjust led trigger for lc-hx301
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-12 15:20:21 +08:00
Tianling Shen
772e135630
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-11 08:33:22 +08:00
Tianling Shen
86557c8aa0
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-10 18:22:42 +08:00
Tianling Shen
9777c5e853
mediatek: add Imou LC-HX3001 support
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-10 10:00:47 +08:00
John Audia
1e0ee72b72 kernel: bump 6.1 to 6.1.44
Changelog: https://lore.kernel.org/stable/2023080822-repost-unfiled-2f01@gregkh/

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-08-09 20:39:20 -04:00
John Audia
549e710fc0 kernel: bump 6.1 to 6.1.43
1. Disable Ampere errata fix in target/linux/generic/config-6.1

2. Update kernel Changelog: https://lore.kernel.org/stable/2023061431-modular-data-8489@gregkh/

Manually rebased:
        bcm27xx/patches-6.1/950-0359-xhci-quirks-add-link-TRB-quirk-for-VL805.patch
        bcm27xx/patches-6.1/950-0362-usb-xhci-add-VLI_TRB_CACHE_BUG-quirk.patch
        bcm27xx/patches-6.1/950-0390-usb-xhci-add-a-quirk-for-Superspeed-bulk-OUT-transfe.patch
        bcm27xx/patches-6.1/950-0469-usb-xhci-add-XHCI_VLI_HUB_TT_QUIRK.patch
        bcm27xx/patches-6.1/950-0520-xhci-constrain-XHCI_VLI_HUB_TT_QUIRK-to-old-firmware.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, filogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-08-09 20:39:20 -04:00
John Audia
daed3322d3 kernel: bump 5.15 to 5.15.125
1. Add new symbols to generic config
2. Bump kernel
   Changelog: https://lore.kernel.org/stable/2023080818-groin-gradient-a031@gregkh/

   All patches automatically rebased.

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-08-09 22:06:24 +02:00
John Audia
81c1172c36 kernel: bump 5.15 to 5.15.124
Changelog: https://lore.kernel.org/stable/2023080341-curliness-salary-4158@gregkh/

1. Needed to make a change to to package/kernel/linux/modules/netsupport.mk
   due to upstream moving vxlan to its own directory[1].  @john-tho suggested
   using the the 6.1 xvlan FILES to circumvent.
2. All patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.124&id=77396fa9096abdbfbb87d63e73ad44d5621cf103

Signed-off-by: John Audia <therealgraysky@proton.me>
2023-08-09 22:06:23 +02:00
Tianling Shen
2728fce688
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-07 03:49:54 +08:00
David Bauer
7e7eb5312d mediatek: add support for Acer Predator W6
Hardware
--------
SOC:   MediaTek MT7986A
RAM:   1GB DDR4
FLASH: 4GB eMMC
WiFi:  2x2 2.4 GHz 802.11 b/g/n/ax MT7916 DBDC
       4x4 5 GHz   802.11 a/n/ac/ax MT7986
       2x2 6 GHz   802.11ax MT7916 DBDC
ETH:   4x LAN 1Gbit/s (MT7531)
       1x WAN 2.5Gbit/s (GPY211)
BTN:   RESET, WPS
LED:   Antenna LEDs (GPIO)
       Mood-LED (Kinetic KTD2601) - unsupported
UART:  Header nest to USB port - 3V3 115200 8N1
       [BUTTON] GND - RX - TX [USB]

Installation
------------

1. Connect to the device using serial console.

2. Interrupt the Autoboot process when promted by sending '0' twice.

3. Serve the OpenWrt initramfs image using TFTP at 192.168.1.66. Name
   the image "predator.bin" and conenct the TFTP server to the routers
   LAN port.

4. Configure U-Boot to allow loading unsigned images from MMC

   $ setenv bootcmd 'mmc read 0x40000000 0x00004400 0x0010000;
     fdt addr $(fdtcontroladdr); fdt rm /signature; bootm 0x40000000';
     saveenv

5. Transfer the image from U-Boot

   $ setenv serverip 192.168.1.66; setenv ipaddr 192.168.1.1;
     tftpboot 0x46000000 predator.bin; fdt addr $(fdtcontroladdr);
     fdt rm /signature; bootm

6. Wait for OpenWrt to boot

7. Transfer the OpenWrt sysupgrade image to the router using scp.

8. Install OpenWrt using sysupgrade.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-08-05 18:42:45 +02:00
Daniel Golle
1eb67cb070 mediatek: filogic: restore non-const type in pinctrl-mt7988 driver
When building with Linux 5.15 the 'const' type results in warnings.
Restore the original non-const type in those cases.

Fixes: 36d0aa9c2d ("mediatek: filogic: sync pinctrl-mt7988 with MediaTek SDK")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-03 23:34:22 +01:00
Tianling Shen
7298db5a9a
mediatek: fix merge conflict
Fixes: #1027

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-04 02:03:35 +08:00
Daniel Golle
64b99802a6 mediatek: filogic: update MT7988 device tree
* move ethernet to mt7988a.dtsi
 * move switch definition to mt7988a.dtsi
 * add PHY LEDs

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-03 15:47:51 +01:00
Daniel Golle
36d0aa9c2d mediatek: filogic: sync pinctrl-mt7988 with MediaTek SDK
Update pinctrl driver for the MT7988 with driver from mtk-openwrt-feeds.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-03 15:47:51 +01:00
Tianling Shen
85daf36dff
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-08-03 11:20:16 +08:00