Commit Graph

374 Commits

Author SHA1 Message Date
Daniel Golle
9630906317 mediatek: mt7988: fix peripheral SPI busses
The clocks for SPI busses were named wrongly which resulted in the
spi-mt65xx driver not requesting them. This has apparently been
worked around by marking the clocks required for SPI0 which is used
for SPI-NOR and SPI-NAND flash chips as critical.
Fix the device tree for all 3 generic SPI host controllers and no
longer mark clocks as critical.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-11-04 10:01:00 +08:00
Daniel Golle
f942a330fe mediatek: filogic: BPi-R4: wire up pinctrl for pwm-fan
Assign pwm function of PWM0 pin to the pwm-fan.
This is mostly just cosmetics as it basically reflects the default
setting of that pin.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-11-03 23:01:21 +08:00
Daniel Golle
6bcceed653 mediatek: pinctrl-mt7988: add missing PWM pingroups
Add additionals possible pinctrl group for pwm2~7 on pins
pin  4 (GPIO_A)        pwm7
pin 58 (JTAG_JTDI)     pwm2
pin 59 (JTAG_JTDO)     pwm3
pin 60 (JTAG_JTMS)     pwm4
pin 61 (JTAG_JTCLK)    pwm5
pin 62 (JTAG_JTRST_N)  pwm6

They can be useful e.g. on the BPi-R4 as in that way pwm2~6 can be exposed
on the 26-pin header (pwm6 always, pwm2~5 instead of the full UART).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-11-03 23:00:07 +08:00
Daniel Golle
011c3ad78d mediatek: backport pending Ethernet PHY driver patches
Use pending patchset for 2.5GE PHY driver, unifying LED handling
accross all MediaTek Ethernet PHYs.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-11-02 22:16:02 +08:00
Daniel Golle
b1684789ed mediatek: mt7988: add DT entries for WED
Add memory regions and devices used for wireless offloading to the
device tree for MT7988.

This allows using WED on devices with MT7988 SoC and MT7995E, MT7996E or
MT7992E wireless controllers.

Devices with 4 GiB of RAM (or more) will still need ajustments to avoid
running out of swiotlb entries.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-10-28 10:06:12 +08:00
Tianling Shen
02c320a0cf
mediatek: minor fixes for openembed som7981 (#12598)
Signed-off-by: Tianling Shen <i@cnsztl.eu.org>
2024-10-25 21:20:26 +08:00
coolsnowwolf
eaa043c4cf mediatek: Add support for GL.iNet X3000 (Spitz AX) and XE3000 (Puli AX) 2024-10-18 17:33:52 +08:00
Beginner
ecaf84009c
kernel: bump 6.6 to 6.6.56 (#12530) 2024-10-12 10:10:41 +08:00
Tianling Shen
8061c8b8f9
mediatek: add support for OpenEmbed SOM7981 (#12524)
* kernel: crypto: add atmel i2c hw accelerator support

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>

* kernel: add led act/polarity select for rtl8221 phy

Signed-off-by: Tianling Shen <cnsztl@gmail.com>

* mediatek: add support for OpenEmbed SOM7981

Hardware specification:
  SoC: MediaTek MT7981B 2x A53
  Flash: 256 MiB SPI-NAND
  RAM: 0.5/1 GB DDR4
  Ethernet: 1x 1GbE, 1x 2.5GbE (RTL8221B)
  WiFi: MediaTek MT7976C
  USB: 1x M.2 B-Key
  GPIO: 26-Pin header
  UART: 6 GND, 8 TX, 10 RX (in Pin header)
  Button: Reset

Installation:
The board comes with a third-party custom OpenWrt image, you can upload
sysupgrade image via LuCI directly WITHOUT keeping configurations.

Or power on the board with pressing reset button for 5 second, then visit
http://192.168.1.1 and upload -factory.bin firmware.

Signed-off-by: Tianling Shen <cnsztl@gmail.com>

---------

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Signed-off-by: Tianling Shen <cnsztl@gmail.com>
2024-10-08 19:42:37 +08:00
Beginner
6df0b2d9f4
kernel: bump 6.6 to 6.6.54 (#12519) 2024-10-05 01:55:15 +08:00
aiamadeus
801f345131 kernel: refresh 6.1 patches
Fixes: 718ac37 ("kernel: bump 6.1 to 6.1.111")
Closed: #12487
2024-09-21 15:16:16 +08:00
John Audia
530265022e kernel: bump 6.6 to 6.6.50 (#16351)
All patch 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>
2024-09-12 22:40:09 +08:00
Zheng Zhang
0c35082a17 mediatek: fix wed use-after-free kernel panic
Fix a use-after-free bug in mtk_wed_setup_tc_block_cb()
which leads to kernel panic when setup multiple ap
interfaces on one band of mt798x.

Signed-off-by: Zheng Zhang <everything411@qq.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-09-09 23:36:05 +08:00
coolsnowwolf
166b4bd84e mediatek: add missing wifi for hf-m7986r1 2024-08-23 23:15:19 +08:00
aakkll
a6c9d54925 kernel: bump 6.6 to 6.6.46 and update config (#12413) 2024-08-17 18:40:01 +08:00
coolsnowwolf
3341f523c2 update default packages for filogic and ipq60xx, x86
Fixes: #12388
2024-08-08 22:08:37 +08:00
Daniel Golle
a03505e141 mediatek: fix PCIe #PERST de-asserted too early
The driver for MediaTek gen3 PCIe hosts de-asserts all reset
signals at the same time using a single register write operation.
Delay the de-assertion of the #PERST signal by 100ms as some PCIe
devices fail to come up otherwise.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-07-30 23:20:19 +08:00
coolsnowwolf
ff2689bd48 mediatek: fixes kernel 5.15 build
Fixes: #12356
2024-07-24 21:30:03 +08:00
John Audia
062d85f8fd kernel: bump 6.6 to 6.6.40 (#15956)
All other patches automatically rebased.

Signed-off-by: John Audia <therealgraysky@proton.me>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-07-23 22:00:08 +08:00
aiamadeus
64b80093dd mediatek: replace mac-address-increment hack 2024-07-19 23:00:27 +08:00
Zxl hhyccc
991451d002 kernel: bump 6.1 to 6.1.98 (#15935) 2024-07-14 23:15:14 +08:00
coolsnowwolf
8a8bf45736 mediatek: filogic: fix HF-M7986R1 typo 2024-07-11 22:10:15 +08:00
Beginner
8cf859bf01
kernel: bump 5.15 to 5.15.162 (#12317) 2024-07-08 14:57:44 +08:00
Qingfang Deng
adfb25ecd0 mediatek: fit: fix use of uninitialized variable
When building the kernel with -Wmaybe-uninitialized, GCC reports this
warning:

block/partitions/fit.c: In function 'parse_fit_partitions':
block/partitions/fit.c:164:3: warning: 'images' may be used uninitialized in this function [-Wmaybe-uninitialized]
  164 |   printk(KERN_ERR "FIT: Cannot find %s node: %d\n", FIT_CONFS_PATH, images);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

It appears to be a copy paste error. It's the "config" variable that is
supposed to be printed.

Fixes: e6aac8d98f56 ("image: add support for building FIT image with filesystem")
Signed-off-by: Qingfang Deng <qingfang.deng@siflower.com.cn>
2024-07-07 22:23:03 +08:00
coolsnowwolf
df4e307b30 mediatek: fix PWM fan on BPi-R4 for 6.1 kernel 2024-07-04 02:51:44 +08:00
coolsnowwolf
c2a01cf771 mediatek: sync kernel 6.1 from upstream 2024-07-04 02:26:54 +08:00
coolsnowwolf
382d2c2e3d mediatek: filogic: fix HF-M7986R1 reset button 2024-07-04 01:11:24 +08:00
coolsnowwolf
b4fe0e2919 mediatek: filogic: add HF-M7986R1 emmc sysupgrade support 2024-07-03 20:13:09 +08:00
Beginner
12be5cfdd6
kernel: bump 6.1 to 6.1.96 (#12298) 2024-07-03 13:12:10 +08:00
Beginner
79c106c720
kernel: bump 6.6 to 6.6.36 (#12299) 2024-07-03 12:10:03 +08:00
coolsnowwolf
6dfcc5e782 Revert "mediatek: backport a hell of thermal commits"
This reverts commit e1132c36d9.
2024-07-02 23:31:41 +08:00
coolsnowwolf
e1132c36d9 mediatek: backport a hell of thermal commits 2024-07-02 15:55:07 +08:00
coolsnowwolf
b3e60d1892 generic: sync kernel 6.1 from upstream 2024-07-02 15:24:05 +08:00
coolsnowwolf
2f7ba54f99 mediatek: include fitblk package for subtargets 2024-07-02 13:44:11 +08:00
coolsnowwolf
319b46b4bd base-files: recognize bootdevice on devices using fitblk 2024-07-02 13:14:41 +08:00
coolsnowwolf
4d50adb8ef mediatek: filogic: add HF-M7986R1 EMMC Version support 2024-07-02 12:09:12 +08:00
coolsnowwolf
141a53a029 mediatek: filogic: enable HF-M7986R1 emmc support 2024-07-01 16:39:42 +08:00
Daniel Golle
08aaf074b9 mediatek: add support for BananaPi BPI-R4 board
Hardware
--------
SOC:    MediaTek MT7988A (4x Cortex-A73)
RAM:    4 GiB DDR4
Flash:  128 MiB Winbond SPI-NAND
MMC:    8 GiB eMMC *or* microSD (cannot be used both)
ETH:    4x 1GE (1x WAN, 3x LAN)
        2x SFP+ (10G, 5G, 2.5G, 1G)
USB:    on-board USB 3.2 4-port hub
        1x USB 3.2 port (type A connector)
        1x M.2 for 4G/5G modem
        2x mPCIe for additional modems
WiFi:   optional MediaTek MT7996 Wi-Fi 7 module
        (using 2x PCIe gen3 x2 on the mPCIe slots and 12V power)

Installation
------------
1. Decompress and write the sdcard image to a micro SD card and use that
to boot the R4 (both dip switches in upper position).

2. Use the bootloader menu accessible via the serial console to install
to SPI-NAND.

3. Switch to boot from SPI-NAND and install to eMMC.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-07-01 13:36:10 +08:00
Daniel Golle
2dd024a02e kernel: allow skipping deprecated uImage.FIT partition parser
In order to allow gradually migrating the boards currently using the
uImage.FIT partition (deprecated/rejected) parser to the new fitblk
driver, skip the partition parser code in case the new fitblk driver
(which serves the same purpose) is used.

As an indicator for the use of the new fitblk driver, check if the
/chosen/rootdisk property is present in the Device Tree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-07-01 10:51:32 +08:00
Daniel Golle
b763c5cb75 kernel: move uImage.FIT partition parser to mediatek target
The partition parser approach has been rejected upstream, it will be
replaced by a small block driver which is the solution suggestion by
upstream maintainers.
As the partition parser has only been used by the mediatek target, as
a first step, move it there.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-07-01 10:39:51 +08:00
coolsnowwolf
78c0839c9b mediatek: filogic: add HF-M7986R1 support 2024-06-30 13:27:48 +08:00
coolsnowwolf
aea7d683f1 mediatek: 6.6: refresh patches 2024-06-30 10:44:13 +08:00
coolsnowwolf
a9dd459fa8 mediatek: switch to Linux version 6.1 2024-06-26 20:13:50 +08:00
Beginner
c1573c8ac8
kernel: bump 6.1 to 6.1.94 (#12245) 2024-06-17 14:15:10 +08:00
Beginner
330337a644
kernel: bump 5.15 to 5.15.161 (#12243) 2024-06-16 22:41:02 +08:00
Christian Marangi
fb661b4744 generic: backport initial LEDs hw control support
Backport initial LEDs hw control support. Currently this is limited to
only rx/tx and link events for the netdev trigger but the API got
accepted and the additional modes are working on and will be backported
later.

Refresh every patch and add the additional config flag for QCA8K new
LEDs support.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-06-16 17:16:13 +08:00
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
b3bbc4b90d mediatek: improve reliability of Fidelix SPI-NAND
Prior to performing a PROGRAM LOAD RANDOM DATA operation, a WRITE
ENABLE (06h) command must be issued to change the contents of the
memory array. Following a WRITE ENABLE (06) command, **first a PROGRAM
LOAD (02h or 32h) command must be issued to reset the cache**, then
issue a PROGRAM LOAD RANDOM DATA (84h or 34h) command

This is dirty fix provided to use by MediaTek engineer Sky Huang which
may resolve the "OpenWrt Kiss of Death" issue we've been seeing on the
Linksys E8450 aka. Belkin RT3200. However, it means that everything has
to be re-written with that patch already applied, ie. we need to rebuild
the installer once it is part of snapshot builds to have any effect.

Users already on FIP-in-UBI layout are advised to re-write 'fip' UBI
volume and 'bl2' MTD partition manually once from within Linux after
this fix has been applied.

A similar fix will also be required for U-Boot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-06-08 22:26:03 +08:00
Beginner
4819907434
kernel: bump 6.1 to 6.1.92 (#12187) 2024-05-26 23:50:17 +08:00