70 Commits

Author SHA1 Message Date
Daniel Golle
fb42176cd1 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>
2024-06-13 22:20:05 +08:00
Daniel Golle
e5dffcaddd 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>
2024-06-12 23:02:49 +08:00
Daniel Golle
8f988ed371 mediatek: filogic: enable driver for MediaTek XS-PHY
Enable driver for MediaTek SuperSpeedPlus XS-PHY transceiver
for the USB3.1 GEN2 controllers found in the MT7988 SoC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-05-22 23:38:42 +08:00
aiamadeus
2a4194fa4b mediatek: add Nokia EA0326GMP support 2024-03-22 19:50:10 +08:00
Tony91590
735ea0d11e
mediatek: filogic: set special upgrade for Asus AX4200 (#11893) 2024-02-16 22:40:15 +08:00
Daniel Golle
f2be6935f8 mediatek: adapt kernel configuration for Linux 6.1
Update kernel configuration to build Linux 6.1 for all subtargets.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-13 22:09:10 +08:00
Daniel Golle
1eef526cb9 mediatek: copy config-5.15 to config-6.1 for all subtargets
To ease review, first copy all subtargets' kernel config-5.15 to the
to-be-adapted config-6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-12 22:54:20 +08:00
Daniel Golle
b018b4df31 mediatek: set new compat version if booted on R64 and R3
If the board comes up with OpenWrt that means that the bootloader is
recent enough and knows about the new device tree overlays.

Using /etc/board.d/ is not enough in this case because it doesn't
overwrite existing configuration which may exist (and is fine to exist)
if the user updated with 'sysupgrade -F *.itb' and has kept
configuration. They would still need to manually set compat_version
even though the fact that the bootloader env has been updated can be
implied by the fact that the system has started.

Hence we can always set compat_version=1.1 for those two boards using
uci-defaults.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-11 23:05:20 +08:00
Daniel Golle
1dbf719902 mediatek: sync MT7986 device trees with upstream
Sync device tree files for MT7986 boards with what landed in upstream
Linux tree to easy maintainance and also allow for a smooth update to
Linux 6.1.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-08 21:21:12 +08:00
coolsnowwolf
eb3e9ad2e3 mediatek: filogic: add support for CMCC RAX3000M (NAND and eMMC version) 2024-02-03 21:31:05 +08:00
aiamadeus
6606bb39b6 mediatek: add support for ABT ASR3000 2024-02-03 15:10:15 +08:00
HHJLKK
ce91432bb0
mediatek: add support for IMOU LC-HX3001 (#11812) 2024-01-21 16:00:17 +08:00
Felix Fietkau
6f40d7387d mediatek: fix BPI-R3 wifi mac address
Setting/clearing bits on the first byte of the mac address causes collisions
when using multiple SSIDs on both PHYs. Change the allocation to alter the
last byte instead.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2024-01-10 22:18:51 +08:00
Ashley Lee
e2a09540eb
mediatek: add support for Ruijie RG-X60 Pro (#11745)
Informations:
- SoC       : MediaTek MT7986A 2.0GHz
- RAM       : DDR3 512MiB (W634GU6QB)
- Flash     : SPI-NAND 128 MiB (W25N01GVZEIG)
- WLAN      : MediaTek MT7986A integration dual-band WiFi 6
  - 2.4 GHz : b/g/n/ax, MIMO 4x4
  - 5 GHz   : a/n/ac/ax, MIMO 4x4
- Ethernet  : 10/100/1000 Mbps x4 (MediaTek MT7531AE)
              2500Mbps x 1 (Realtek RTL8221B-VB-CG)
- UART      : through-hole on PCB
  - [J500] GND, TX, RX, 3.3V (115200n1)
- Buttons   : Mesh, Reset
- LEDs      : 1x Power (Blue)
                  1x Turbo (Purple)
- Power     : 12 VDC, 3 A

About MAC Address:
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| WAN     | 10:82:3D:XX:XX:9E | label     |
| LAN     | 10:82:3D:XX:XX:9F | label+1   |
| WLAN 2g | 10:82:3D:XX:XX:A0 | label+2   |
| WLAN 5g | 10:82:3D:XX:XX:A1 | label+3   |
+---------+-------------------+-----------+

Signed-off-by: Ashley Lee <code@emtips.net>
2024-01-05 18:30:25 +08:00
Sam Shih
d58209efb8 mediatek: add basic mt7988 device tree support
This add basic device tree support for mediatek MT7988 SoC

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-12-29 22:28:01 +08:00
Sam Shih
bd6b41e301 mediatek: add mt7988 pinctrl driver support
This adds provisional pinctrl driver support for the MediaTek MT7988 SoC.

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-12-28 23:28:24 +08:00
Sam Shih
ba49394aee mediatek: add mt7988 clock drivers support
This adds clock drivers for the MediaTek MT7988 SoC

Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-12-28 23:26:48 +08:00
aiamadeus
1cd3b4e4d0 mediatek: add support for FZS P3 2023-12-15 21:08:13 +08:00
coolsnowwolf
09d5ae78b4 mediatek: add support for JDCloud AX6000 2023-12-06 22:08:30 +08:00
David Bauer
4fa8f64776 mediatek: add support for GL.iNet GL-MT2500
Hardware
--------
SoC:  MediaTek MT7981BA
RAM:  1GB DDR4 (NANYA NT5AD512M16C4-JR)
MMC:  8GB eMMC (Samsung 8GTF4R)
ETH:  1000Base-T LAN (ePHY)
      2500Base-T WAN (MaxLinear GPY211C)
BTN:  1x Reset Button
LED:  System (blue/white)
      VPN (white)
USB:  1x USB-A (USB 3.0)
UART: 115200 8N1 - Pinout on board next to LAN port
      Don't connect 3.3V!

Known Issues
------------
U-Boot vendor recovery does not seem to accept any images, neither
GL.iNet images nor OpenWrt images. Recovery requires serial access!

Installation
------------
Upload the OpenWrt sysupgrade image to the Gl.iNet Web-UI. Make sure to
not retain existing settings.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-11-27 22:10:03 +08:00
Daniel Golle
4b44ca4957 mediatek: add driver for built-in 2.5G Ethernet PHY
Add driver for the built-in 2.5G Ethernet PHY found in the MT7988 SoC.
To function the PHY also needs firmware files which have not yet been
published via linux-firmware.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-11-24 23:20:03 +08:00
Daniel Golle
cce9d689eb mediatek: update pending SoC Ethernet PHY driver
Update driver for MediaTek's built-in Gigabit Ethernet PHYs which can be
found in the MT7981 and MT7988 SoCs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-11-24 23:18:04 +08:00
Daniel Golle
ac4e3b75ad mediatek: filogic: add driver for Richtek RT5190A regulator
The Richtek RT5190A is used on the MT7988 reference board. Backport and
enable the driver on the filogic subtarget, so we can support cpufreq
on the MT7988 reference board.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-11-22 22:56:08 +08:00
Daniel Golle
36fccf085d generic: mt7530: backport support for the MT7988 built-in switch
Backport commits adding support for the MT7988 built-in switch to the
mt7530 driver.

This change results in the Kconfig symbol NET_DSA_MT7530 to be extended
by NET_DSA_MT7530_MDIO (everything formally covered by NET_DSA_MT7530)
and NET_DSA_MT7530_MMIO (a new driver for the MMIO-connected built-in
switch of the MT7988 SoC).

Select NET_DSA_MT7530_MDIO for all targets previously selecting
NET_DSA_MT7530, with the exception of mediatek/filogic which also
selects NET_DSA_MT7530_MMIO.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-11-21 22:32:40 +08:00
Daniel Golle
40e94fc5fd generic: add support for MediaTek NETSYS v3
In order to support Ethernet on the MT7988 SoC add support for NETSYS v3
as well as new paths and USXGMII SerDes to the mtk_eth_soc driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-11-21 22:20:37 +08:00
coolsnowwolf
f852316284 mediatek: fix gl-mt6000 wireless 2023-11-06 22:15:40 +08:00
zheshifandian
a2c8782d53
mediatek: improve GL-MT6000 support (#11636)
* mediatek: fix sysupgrade for gl-mt6000

* mediatek: add u-boot support for gl-mt6000

* mediatek: fix lan port for gl-mt6000

* mediatek: fix wifi mac for gl-mt6000
2023-11-04 14:19:47 +08:00
aiamadeus
a8ddfc2e10 mediatek: add Netcore N60 support
Connect to the router using ssh or telnet,
username: useradmin, password is the web
login password of the router.

Signed-off-by: AnYun <amadeus@openjmu.xyz>
2023-11-01 22:28:50 +08:00
aiamadeus
6939d662fb mediatek: add TP-Link TL-XTR8488 support
The TP-Link TL-XTR8488 has the same hardware as the
TP-Link TL-XDR6088 except for the wifi and ram part.

RAM: MT40A512M16TB DDR4 1GB
WiFi1: MT7976GN 2.4GHz 4T4R
WiFi2: MT7976AN 5.2GHz 4T4R
WiFi3: MT7915AN 5.8GHz 4T4R

Signed-off-by: AnYun <amadeus@openjmu.xyz>
2023-11-01 22:16:26 +08:00
AmadeusGhost
02b57804f8 mediatek: add Xiaomi AX3000T support 2023-09-25 21:56:38 +08:00
AmadeusGhost
36bd1e35ad mediatek: filogic: sync upstream dts changes 2023-09-24 22:59:00 +08:00
Patricia Lee
2fdceb465c mediatek: add support for Cetron CT3003
**Hardware specification:**

- SoC: MediaTek MT7981B 2x A53
- Flash: ESMT F50L1G41LB 128MB
- RAM: Nanya NT5CC128M16JR-EK 256MB
- Ethernet: 4 x 10/100/1000 Mbps
- Switch: MediaTek MT7531AE
- WiFi: MediaTek MT7976C
- Button: Reset, Mesh
- Power: DC 12V 1A
- UART: 3.3v, 115200n8

**Flash instructions:**

1. Rename `openwrt-mediatek-filogic-cetron_ct3003-squashfs-factory.bin` to `factory.bin`.
2. Upload the `factory.bin` using the device's Web interface.
3. Click the upgrade button and wait for the process to finish.
4. Access the OpenWrt interface using the same password.
5. Use the 'Restore' function to reset the firmware to its initial state.

**Notes:**

If you plan to recovery the stock firmware in the future, it's advisable
to connect the device via the serial port and enter failsafe mode to
back up all the MTD partitions before proceeding the steps above.

Signed-off-by: Patricia Lee <patricialee320@gmail.com>
2023-09-24 22:51:33 +08:00
lean
77abd0b975 filogic: add support for GL.iNet GL-MT6000 support 2023-09-08 16:33:49 +08:00
coolsnowwolf
663be7c70c mediatek: add CETRON CT3003 support 2023-07-05 19:34:20 +08:00
coolsnowwolf
a14bb92a80 mediatek: add JCG Q30 (Pro) support 2023-06-30 12:02:12 +08:00
AmadeusGhost
654f7ab462 mediatek: add H3C Magic NX30 Pro support 2023-06-27 23:08:57 +08:00
AmadeusGhost
defd518694 mediatek: add Xiaomi WR30U support 2023-06-27 23:05:18 +08:00
AmadeusGhost
5f59c3dea6 mediatek: add Qihoo 360T7 support 2023-06-27 23:03:09 +08:00
AmadeusGhost
e7bd136138 mediate: filogic: sync upstream dts changes 2023-06-26 22:02:36 +08:00
Daniel Golle
911a5f623e mediatek: add support for the GL.iNet GL-MT3000
The MT-3000 is a pocket-sized Wi-Fi 6 router based on MediaTek MT7981.

Specification:
 - SoC: MediaTek MT7981B
 - CPU: 2x 1.3 GHz Cortex-A53
 - Flash: 256 MiB Macronix SPI NAND
 - RAM: 512 MiB Nanya DDR4
 - WLAN: 2.4 GHz, 5 GHz (MediaTek MT7976CN)
 - Ethernet:
    - 1x 10/100/1000 Mbps built-in PHY (LAN)
    - 1x 10/100/1000/2500 Mbps MaxLinear GPY211 PHY (WAN)
 - USB 3.0 port
 - Buttons: 1 button, 1 switch
 - LEDs: 1x light-blue, 1x warm-white
 - Serial console: internal 4-pin header, 115200 8n1
 - PWM controlled fan with tacho
 - Power: 5 VDC, 3 A (USB Type-C)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-21 23:30:02 +08:00
Daniel Golle
4c48c9a80f mediatek: filogic: update kernel config-5.15
Expose thermal-zone as hwmon sensor, remove thermal emulation driver
and add some missing symbols.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-18 22:56:54 +08:00
Daniel Golle
357222b386 mediatek: broaden filogic target description
The filogic subtarget now also supports MT7981 and will in future
also support MT7988. Reflect that in the target description.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-17 19:26:10 +08:00
Daniel Golle
995f53f723 mediatek: add support for built-in GE PHYs of newer SoCs
MT7981 and the upcoming MT7988 have built-in Gigabit Ethernet PHYs.
While they share some design properties with the PHYs present in
MT753x, they do need calibration data from the SoC's efuse.

Add driver to support them. Upstreaming it is planned, but there are
still some ongoing discussions with MediaTek.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-15 23:09:55 +08:00
Daniel Golle
d4339fda71 mediatek: backport pinctrl driver for MT7981 SoC
Backport the pinctrl driver for the MT7981 SoC. The driver has also
been submitted upstream and is part of Linux 6.3.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-15 23:07:49 +08:00
Daniel Golle
7c648c2ff2 mediatek: backport clk driver for MT7981 SoC
Backport driver for common clocks in MT7981 SoC. The driver has also
been submitted upstream and became part of Linux 6.3.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-06-15 23:06:13 +08:00
David Bauer
1b65d382b2 mediatek: fix typo
Signed-off-by: David Bauer <mail@david-bauer.net>
2023-05-18 23:50:43 +08:00
AmadeusGhost
e4901141b5 mediatek: add support for TP-Link TL-XDR4288
The TP-Link TL-XDR4288 has the same hardware as the
TP-Link TL-XDR6088 except for the wireless part.

Note: WiFi: MT7976DAN (2.4G 2T2R, 5G 3T3R)

Signed-off-by: AnYun <amadeus@openjmu.xyz>
2023-04-09 23:18:51 +08:00
Felix Fietkau
6b2559f0aa linux-firmware: add mt7986 offload firmware
This is needed for WED support on MT7986.
Enable it by default for the filogic subtarget.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2023-03-28 23:00:04 +08:00
David Bauer
57ec2f4f11 filogic: add support for ASUS TUF-AX4200
Hardware
--------
SOC:   MediaTek MT7986
RAM:   512MB DDR3
FLASH: 256MB SPI-NAND (Winbond W25N02KV)
WIFI:  Mediatek MT7986 DBDC 802.11ax 2.4/5 GHz
ETH:   MediaTek MT7531 Switch
       MaxLinear GPY211C 2.5 N-Base-T PHY
UART:  3V3 115200 8N1 (Pinout silkscreened / Do not ocnnect VCC)

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

1. Download the OpenWrt initramfs image. Copy the image to a TFTP server
   reachable at 192.168.1.66/24. Rename the image to tufax4200.bin.

2. Connect the TFTP server to the AX4200. Conect to the serial console,
   interrupt the autoboot process by pressing '4' when prompted.

3. Download & Boot the OpenWrt initramfs image.

   $ setenv ipaddr 192.168.1.1
   $ setenv serverip 192.168.1.66
   $ tftpboot 0x46000000 tufax4200.bin
   $ bootm 0x46000000

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 LAN port LEDs are driven by the switch but OpenWrt does not
   correctly configure the output.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-26 22:18:00 +08:00
David Bauer
2dff7b910a mediatek: enable bootargs-override for filogic subtarget
The ASUS TUF-AX4200 bootloader adds invalid parameters for the rootfs.
Without overwriting the cmdline, the kernel crashes when trying to
attach the rootfs, as OpenWrt uses a different partition than the vendor
OS.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-26 22:12:10 +08:00