Commit Graph

3809 Commits

Author SHA1 Message Date
Robert Marko
362f9c41a4 ramips: mt7621: disable Edgerouter X image generation
With kernel 6.1 image size is too large for Edgerouter X current size
limit and is causing the buildbots to fail building so images for other
devices are not updated as well.

So, disable building Edgerouter X images until a workaround is found.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-03-20 12:06:35 +01:00
Nick Hainke
7b89388674 ramips: 5.15: delete remaining files
Remove the remaining configuration entries that were omitted in the
previous commit.

Fixes: 1576474f55 ("ramips: switch to 6.1 kernel")
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-03-13 23:51:23 +01:00
Mikhail Zhilkin
1d3d6ef826 ramips: add support for Z-ROUTER ZR-2660
This commit adds support for Z-ROUTER ZR-2660 (also known as Routerich
AX1800) wireless WiFi 6 router.

Specification
-------------
- SoC       : MediaTek MT7621AT, MIPS, 880 MHz
- RAM       : 256 MiB
- Flash     : NAND 128 MiB (AMD/Spansion S34ML01G2)
- WLAN      :
  - 2.4 GHz : MediaTek MT7905D/MT7975 (14c3:7916), b/g/n/ax, MIMO 2x2
  - 5 GHz   : MediaTek MT7915E (14c3:7915), a/n/ac/ax, MIMO 2x2
- Ethernet  : 10/100/1000 Mbps x4 (1x WAN, 3x LAN)
- USB       : 1x 2.0
- UART      : 3.3V, 115200n8, pins are silkscreened on the pcb
- Buttons   : 1x Reset
- LEDs      : 1x WiFi 2.4 GHz (green)
              1x WiFi 5 GHz (green)
              1x LAN (green)
              1x WAN (green)
              1x WAN no-internet (red)
- Power     : 12 VDC, 1 A

Installation
------------
1. Run tftp server on your PC (IP: 192.168.2.2) and put OpenWrt initramfs
   image (initramfs.bin) to the tftp root dir
2. Open the following link in the browser to enable telnet:
	http://192.168.2.1/cgi-bin/telnet_ssh
3. Connect to the router (default IP: 192.168.2.1) using telnet shell
   (credentials - user:admin)
4. Run the following commands in the telnet shell (this will install
   OpenWrt initramfs image on nand flash):
	cd /tmp
	tftp -g -r initramfs.bin 192.168.2.2
	mtd write initramfs.bin firmware
	mtd erase firmware_backup
	reboot
5. Copy OpenWrt sysupgrade image (sysupgrade.bin) to the /tmp dir of the
   router
6. Connect to the router (IP: 192.168.1.1) using ssh shell and run
   sysupgrade command:
	sysupgrade -n /tmp/sysupgrade.bin

Return to stock
---------------
1. Copy stock firmware (stock.bin) to the /tmp dir of the router using scp
2. Run following command in the router shell:
	cd /tmp
	mtd write stock.bin firmware
	reboot

Recovery
--------
Connect uart (pins are silkscreened on the pcb), interrupt boot process by
pressing any key, use u-boot menu to flash stock firmware image or OpenWrt
initramfs image.

MAC addresses
-------------
+---------+-------------------+-----------+
|         | MAC               | Algorithm |
+---------+-------------------+-----------+
| LAN     | 24:0f:5e:xx:xx:4c | label     |
| WAN     | 24:0f:5e:xx:xx:4d | label+1   |
| WLAN 2g | 24:0f:5e:xx:xx:4e | label+2   |
| WLAN 5g | 24:0f:5e:xx:xx:4f | label+3   |
+---------+-------------------+-----------+
The WLAN 2.4 MAC was found in 'factory', 0x4
The LAN MAC was found in 'factory', 0xfff4
The WAN MAC was found in 'factory', 0xfffa

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2024-03-12 23:57:41 +01:00
Daniel Golle
65df33fc76 ramips: add support for YunCore G720
The YunCore G720 is a dual band 802.11ax router with 5 GbE ports.

Specs:
- SoC: MediaTek MT7621
- Ethernet: 5x GbE ports (built-in MT7530)
- Wireless 2.4GHz / 5GHz: MediaTek MT7915E
- RAM: 256MiB
- ROM: 16MiB (W25Q128)
- 1 Button (reset)
- 8 LEDs (1x system, 2x wifi, 5x switch ports)

Flash instructions:
The vendor firmware is based on OpenWrt, the sysupgrade image can be
flashed using the '-F' (force) option on the CLI.
Make sure not to keep settings when doing so.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-03-12 16:48:42 +00:00
Nick Hainke
1576474f55 ramips: switch to 6.1 kernel
We have had the testing kernel for several weeks now. Let's switch to 6.1
to have more testers. Additionally, 6.6 is already in the pipeline.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-03-12 17:28:52 +01:00
John Audia
dd02da54e9 kernel: bump 6.1 to 6.1.81
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.81

All patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3, flogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3, flogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-03-11 21:51:37 +01:00
Sungbo Eo
261876a067 ramips: improve support for STORYLiNK SAP-G3200U3
* Increase flash SPI frequency to 50MHz

  The maximum SPI frequency of MX25L6406EM2I is 86 MHz,
  but in this patch 50 MHz was chosen as a safe value.

* Update Ethernet MAC addresses

  Till now LAN/WAN MAC addresses were flipped
  compared to stock firmware.

* Fix Wi-Fi LEDs by adding mt76 led nodes

* Fix LAN port order

  LAN ports are in reverse order of switch ports.

* Fix the well-known "LZMA ERROR 1" error by using lzma-loader

* Set uImage name, which enables installation via stock web interface:

  1.  Upload **initramfs** image file to the web page.
  2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
85a8f58483 ramips: add factory image for ipTIME AX2004M
Unlike the recovery image, this initramfs-factory image can be flashed
using the stock firmware web interface (from any active boot partition),
as well as the bootloader recovery web page. Drop the recovery image in
favor of the factory image.

Installation via stock/recovery web interface:
1.  Flash **initramfs-factory** image through the web page.
2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
b94ea51819 ramips: mt7621: use variable for relocate-kernel argument
The "0x80001000" address logically comes from "loadaddr-y" variable for
mt7621 subtarget. Let's replace the hardcoded value with the predefined
variable. This change is purely cosmetic.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
ec45f2f246 ramips: rename mtd partition of ipTIME NAND devices
Contrary to common ipTIME NOR devices, the "Config" partition of T5004
and AX2004M contain normal U-Boot environment variables. Renaming the
partition into "u-boot-env" serves for better description, and it also
conforms to common naming practice in OpenWrt.

This patch might also be extended to A3004T, but its u-boot-env
partition layout has not been confirmed yet.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
Sungbo Eo
7e04a611bc ramips: add NMBM support for ipTIME AX2004M
AX2004M uses NMBM on its NAND flash, but it was not enabled in DTS as the
device support [1] had been added before NMBM feature in mtk_bmt driver [2].
Let's enable it now.

With this change, there is a low possibility of boot failure after
sysupgrade from older versions. As AX2004M already has gone through
two stable releases in the meantime, it would be safe to warn users
by bumping DEVICE_COMPAT_VERSION.

[1] 37753f34ac ("ramips: add support for ipTIME AX2004M")
[2] 06382d1af7 ("kernel: add support for mediatek NMBM flash mapping support")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2024-03-10 16:32:14 +09:00
David Bentham
f5b2b08190 ramips: Unielec u7621-01: remove invalid led status
The original commit had an invalid setting of the
led status for this device.

There is no gpio pin connected to that led so lets
remove these from the u7621-01 dtsi file.

Signed-off-by: David Bentham <db260179@gmail.com>
2024-03-02 14:08:08 +01:00
Mieczyslaw Nalewaj
6e37f41e9e ramips: fix nvmem-cells for routers based on TP-Link Archer
Added missing nvmem-cells located in the loaded file mt7620a_tplink_archer.dtsi

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-02-29 21:24:56 +01:00
Mieczyslaw Nalewaj
ab853e1571 ramips: removing unnecessary compatibility for TP-Link Archer C2 v1
Removing: compatible = "rtl8367b"
This string is not used anywhere in the code.

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-02-27 22:09:07 +01:00
Mieczyslaw Nalewaj
52cd3c74f1
ramips: TP-Link Archer C5 v4: license and file formatting fixes
mt7620a_tplink_archer-c5-v4.dts - added missing SPDX-License-Identifier

mt7620.mk: added missing tabulator

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-02-24 22:03:57 +01:00
John Audia
33e72e0b3d kernel: bump 6.1 to 6.1.79
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.1.79

Manually rebased:
	ath79/patches-6.1/900-unaligned_access_hacks.patch

All other patches automatically rebased.

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3, flogic/xiaomi_redmi-router-ax6000-ubootmod
Run-tested: x86/64/AMD Cezanne, ramips/tplink_archer-a6-v3, flogic/xiaomi_redmi-router-ax6000-ubootmod

Signed-off-by: John Audia <therealgraysky@proton.me>
2024-02-24 19:25:02 +01:00
Mieczyslaw Nalewaj
fdd3a05c40 ramips: add support for TP-Link Archer C5 v4
TP-Link Archer C5 v4 is a dual band router with 5 GbE ports
Advertised as AC1200 for its 867Mbps (2x2) 5GHz band
and 300 Mbps (2x2) 2.4GHz band.

Specs:
- SoC: MediaTek MT7620A
- Ethernet: 5x GbE ports (Realtek RTL8367S)
- Wireless 2.4GHz: MediaTek MT7620A
- Wireless 5GHz: MediaTek MT7612E
- RAM: 64MiB
- ROM: 8MiB (GD25Q64CSIG)
- 1 USB 2.0 port
- 2 Buttons (WPS and reset)
- 8 LEDs

Flash instructions:
Currently one has to install OpenWrt only via the serial console

1. Rename the factory.bin to to test.bin
2. start a TFTP server from IP address 192.168.0.225 and serve the image named test.bin
3. connect your device to the LAN port
4. power up the router and press 4 on the console to stop the boot process.
5. enter the following commands on the router console
	tftp 0x80060000 test.bin
	erase tplink 0x20000 0x7a0000
	cp.b 0x80060000 0x20000 0x7a0000
	reset

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[Update leds, add fast-read]
Signed-off-by: Gaspare Bruno <gaspare@anlix.io>
[Rebuilt version based on mt7620 tplink_archer.dtsi, support for external LNA, remove bad cell count info]
Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-02-24 19:23:03 +01:00
Mieczyslaw Nalewaj
9092fa3a53 ramips: fix TP-Link Archer MAC address for ethernet
This fixes:
[    0.981884] OF: /ethernet@10100000: #nvmem-cell-cells = 1 found 0

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
2024-02-24 19:23:03 +01:00
Alan Luck
e222c8054c ramips: fix and clean up D-Link MAC address
add back WIFI eprom addresses pointer in mt7621_dlink_dir-xx60-a1.dtsi
Change MAC address pointer from factory_e006 to factory_e000 + 3
	same as used in D-link firmware 1.11 DIR-1960-A1
	DIR-1960-A1,DIR-2640-A1,DIR-2660-A1,DIR-3060-A1

Clean-up MAC addresses in D-Link NOR devices DTS's
Change WIFI MAC Addressees to the same as NAND cousins macaddr_factory_e000 + ?
	as later devices don't have the MAC address in factory configuration
	same as used in D-Link firmware 1.30 DIR-878-A1
	DIR-867-A1,DIR-878-A1,DIR-878-R1,DIR-882-A1,DIR-882-R1,DIR-1935-A1

* D-link software differs between source of wan address

Signed-off-by: Alan Luck <luckyhome2008@gmail.com>
2024-02-22 22:53:30 +01:00
Shiji Yang
01996b785d ramips: clean up useless dts partition labels
The previous NVMEM eeprom conversions[1][2] left a lot of partition
labels that were no longer used. They can be removed now.

[1] https://github.com/openwrt/openwrt/pull/13584
[2] https://github.com/openwrt/openwrt/pull/13587

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-02-21 13:31:18 +01:00
Daniel Golle
dc0cf0fc50 ramips: mt76x8: fix build due to renamed U-Boot binary
The U-Boot binary for the RAVPower RP-WD009 has been renamed.
In order to be uniform with all other U-Boot binaries generated the SoC type has been prepended.
Set that new name also in the image build recipe for that device in order to fix build.

Fixes: 927334a8f7 ("uboot-mediatek: add basic build for ZBT-WG3526 (MT7621, 16M SPI-NOR)")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-16 05:18:47 +00:00
Daniel Golle
4cb6bd9a6d mediatek: switch to pending XFI 10G Ethernet drivers
Replace previous patch adding paths and SerDes modes with patch series
pending upstream adding dedicated drivers for XFI T-PHY and USXGMII PCS,
extends LynxI PCS to be a standalone platform driver and as a consequence
makes much less changes to the actual Ethernet driver mtk_eth_soc.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Daniel Golle
d40756563c kernel: backport phylink changes from mainline Linux
Let's pick a bunch of useful phylink changes which allow us to keep
drivers in sync with mainline Linux.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:36 +00:00
Shiji Yang
4a3beb3ae7 ramips: mt76x8: drop AT803X phy driver
This Qualcomm Gigabit phy driver was mistakenly added because
MT76x8 does not support external phy, and it only supports max
100M full duplex speed.

Fixes: cadf517107 ("ralink: add support for mt7628")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-02-12 09:49:51 +01:00
Christian Marangi
16364e4100
generic: 6.1: backport QCA807x PHY patches
Backport QCA807x PHY patches merged upstream that introduce the new
concept of PHY package.

Also add in generic config the new Kconfig CONFIG_QCA807X_PHY.

All affected patch automatically refreshed with make
target/linux/refresh.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-11 21:08:26 +01:00
Shiji Yang
88d1322fcf ramips: mtk_eth_soc: fix NULL pointer dereference for syncp
u64_stats_init() has been unable to handle NULL pointer since
6.1 kernel. This patch fixes kernel oops on mt76x8 and rt305x
sub-target.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-02-11 12:21:41 +01:00
Shiji Yang
00586674e4 ramips: hsdma-mtk: fix build on 5.15 kernel
In the 5.15 kernel, we use the staging driver version instead of the
downstream file.

Fixes: 88d982e3bd ("ramips: 6.1: mt7621-dma: add hsdma driver to files")
Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-02-11 09:05:21 +00:00
Nick Hainke
7181eb9f81 ramips: add support for 6.1 kernel
Remove upstreamed patches:
- 000-v5.18-01-dt-bindings-reset-add-dt-binding-header-for-Mediatek.patch
- 000-v5.18-02-staging-mt7621-dts-align-resets-with-binding-documen.patch
- 001-v5.18-01-dt-bindings-clock-mediatek-mt7621-sysc-add-reset-cel.patch
- 001-v5.18-02-clk-ralink-make-system-controller-node-a-reset-provi.patch
- 002-v6.0-MIPS-ralink-mt7621-avoid-to-init-common-ralink-reset.patch
- 100-v5.16-PCI-mt7621-Add-MediaTek-MT7621-PCIe-host-controller-.patch
- 101-v5.17-PCI-mt7621-Rename-mt7621_pci_-to-mt7621_pcie_.patch
- 102-v5.17-PCI-mt7621-Declare-mt7621_pci_ops-static.patch
- 103-v5.17-PCI-mt7621-Move-MIPS-setup-to-pcibios_root_bridge_pr.patch
- 104-v5.17-PCI-mt7621-Drop-of_match_ptr-to-avoid-unused-variabl.patch
- 105-v5.17-PCI-mt7621-Remove-unused-function-pcie_rmw.patch
- 106-v5.17-PCI-Let-pcibios_root_bridge_prepare-access-bridge-wi.patch
- 107-v6.2-PCI-mt7621-Add-sentinel-to-quirks-table.patch
- 108-v6.3-PCI-mt7621-Delay-phy-ports-initialization.patch

Manually refresh:
- 006-v6.5-mips-ralink-introduce-commonly-used-remap-node-funct.patch
- 320-MIPS-add-support-for-buggy-MT7621S-core-detection.patch
- 405-mtd-spi-nor-Add-support-for-BoHong-bh25q128as.patch
- 410-mtd-rawnand-add-driver-support-for-MT7621-nand-flash.patch
- 805-pinctrl-AW9523.patch
- 825-i2c-MIPS-adds-ralink-I2C-driver.patch
- 830-mmc-MIPS-ralink-add-sdhci-for-mt7620a-SoC.patch

Automatically refresh:
- 200-add-ralink-eth.patch
- 314-MIPS-add-bootargs-override-property.patch
- 315-owrt-hack-fix-mt7688-cache-issue.patch
- 700-net-ethernet-mediatek-support-net-labels.patch
- 720-Revert-net-phy-simplify-phy_link_change-arguments.patch
- 721-NET-no-auto-carrier-off-support.patch
- 800-dmaengine-mediatek-add-HSDMA-support-for-mt7621.patch
- 802-GPIO-MIPS-ralink-add-gpio-driver-for-ralink-SoC.patch
- 810-uvc-add-iPassion-iP2970-support.patch
- 821-SPI-ralink-add-Ralink-SoC-spi-driver.patch
- 835-asoc-add-mt7620-support.patch
- 840-serial-add-ugly-custom-baud-rate-hack.patch
- 845-pwm-add-mediatek-support.patch
- 850-awake-rt305x-dwc2-controller.patch

Tested-by: Andre Heider <a.heider@gmail.com> # netgear,wac124
Tested-by: Andrey Jr. Melnikov <temnota.am@gmail.com> # Xiaomi Mi Router 3G
Tested-by: Timo Dorfner <timo.capa@gmail.com> # mt7621/mir3g mt7621/rm2100
Reviewed-by: Shiji Yang <yangshiji66@qq.com>
Co-Developed-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Mieczyslaw Nalewaj
cc4d01cd60 ramips: 6.1: ralink: fix ethernet driver with 6.1
Fixes errors in the form of:
  make[9]: Entering directory '/home/nick/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7620/linux-6.1.77'
    CC      drivers/net/ethernet/ralink/mtk_eth_soc.o
  drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_init':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1368:51: warning: passing argument 2 of 'of_get_mac_address' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   1368 |         of_get_mac_address(priv->dev->of_node, dev->dev_addr);
        |                                                ~~~^~~~~~~~~~
  In file included from drivers/net/ethernet/ralink/mtk_eth_soc.c:26:
  ./include/linux/of_net.h:16:59: note: expected 'u8 *' {aka 'unsigned char *'} but argument is of type 'const unsigned char *'
     16 | extern int of_get_mac_address(struct device_node *np, u8 *mac);
        |                                                       ~~~~^~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_probe':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1641:9: error: too many arguments to function 'netif_napi_add'
   1641 |         netif_napi_add(netdev, &priv->rx_napi, fe_poll, napi_weight);
        |         ^~~~~~~~~~~~~~
  In file included from ./include/linux/etherdevice.h:21,
                   from drivers/net/ethernet/ralink/mtk_eth_soc.c:21:
  ./include/linux/netdevice.h:2611:1: note: declared here
   2611 | netif_napi_add(struct net_device *dev, struct napi_struct *napi,
        | ^~~~~~~~~~~~~~

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
[split commit and rewrite commit message]
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Mieczyslaw Nalewaj
10452ea407 ramips: 6.1: spi: fix patch by replacing cs_gpio with cs_gpiod
Upstream commit f48dc6b96649 ("spi: Retire legacy GPIO handling") [0]
removed support using GPIOs as chip select. Fix it by replacing cs_gpio
with cs_gpiod.

[0] - f48dc6b966

Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
[split commit and rewrite commit message]
Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
31c4fc7414 ramips: 6.1: ralink: fix const warning in the ethernet driver
Change fe_hw_set_macaddr and the set_mac parameter to const to fix
errors in the form of:

   drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_set_mac_address':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:174:53: error: passing argument 2 of 'priv->soc->set_mac' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
    174 |                         priv->soc->set_mac(priv, dev->dev_addr);
        |                                                  ~~~^~~~~~~~~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c:174:53: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
  drivers/net/ethernet/ralink/mtk_eth_soc.c: In function 'fe_hw_init':
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1220:45: error: passing argument 2 of 'priv->soc->set_mac' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
   1220 |                 priv->soc->set_mac(priv, dev->dev_addr);
        |                                          ~~~^~~~~~~~~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1220:45: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
  drivers/net/ethernet/ralink/mtk_eth_soc.c:1222:44: error: passing argument 2 of 'fe_hw_set_macaddr' discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
   1222 |                 fe_hw_set_macaddr(priv, dev->dev_addr);
        |                                         ~~~^~~~~~~~~~
  drivers/net/ethernet/ralink/mtk_eth_soc.c:155:75: note: expected 'unsigned char *' but argument is of type 'const unsigned char *'
    155 | static inline void fe_hw_set_macaddr(struct fe_priv *priv, unsigned char *mac)
        |                                                            ~~~~~~~~~~~~~~~^~~
  cc1: all warnings being treated as errors

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
eeeb0b5349 ramips: 6.1: pwm: rewrite mtk_pwm_ops to fix pwm driver
Upstream dropped support for legacy driver [0]. Rewrite the driver like
the renesas pwm driver [1].

Fixes erros in the form of:
   make: *** [/__w/openwrt/openwrt/openwrt/include/toplevel.mk:232: target/compile] Error 1
  ====== Make errors from logs/target/linux/compile.txt ======
        |                   ^~~~~~~~~~~~~~
  drivers/pwm/pwm-mediatek-ramips.c:107:19: note: (near initialization for 'mtk_pwm_ops.free')
  drivers/pwm/pwm-mediatek-ramips.c:108:10: error: 'const struct pwm_ops' has no member named 'disable'
    108 |         .disable = mtk_pwm_disable,
        |          ^~~~~~~
  drivers/pwm/pwm-mediatek-ramips.c:108:20: error: initialization of 'int (*)(struct pwm_chip *, struct pwm_device *, struct pwm_capture *, long unsigned int)' from incompatible pointer type 'void (*)(struct pwm_chip *, struct pwm_device *)' [-Werror=incompatible-pointer-types]
    108 |         .disable = mtk_pwm_disable,
        |                    ^~~~~~~~~~~~~~~
  drivers/pwm/pwm-mediatek-ramips.c:108:20: note: (near initialization for 'mtk_pwm_ops.capture')
  cc1: all warnings being treated as errors

[0] - 0829c35dc5
[1] - ec00cd5e63

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
31b3e61d77 ramips: 6.1: dai_dma: drop dma_data->slave_id in mt7620 support patch
Upstream dropped slave_id in dai_dma [0]. So drop it also in the mt7620
support patch.

Fixes errors in the form of:
   sound/soc/ralink/ralink-i2s.c: In function 'ralink_i2s_init_dma_data':
  sound/soc/ralink/ralink-i2s.c:452:17: error: 'struct snd_dmaengine_dai_dma_data' has no member named 'slave_id'
    452 |         dma_data->slave_id = i2s->txdma_req;
        |                 ^~
  sound/soc/ralink/ralink-i2s.c:462:17: error: 'struct snd_dmaengine_dai_dma_data' has no member named 'slave_id'
    462 |         dma_data->slave_id = i2s->rxdma_req;
        |                 ^~

[0] - https://lore.kernel.org/r/20211122222203.4103644-3-arnd@kernel.org

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
3358045d1d ramips: 6.1: pinctrl: fix compilation with 6.1
Upstream changed in ed5c2f5fd10d ("i2c: Make remove callback return void")
the i2c driver's remove function to return no value. Adapt the driver code
to compile with 5.15 and 6.1 like it is done in other projects [0].

Fixes errors in the form of:
  make[8]: Leaving directory '/home/nick/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-6.1.29'
    CC      drivers/pinctrl/pinctrl-aw9523.o
  drivers/pinctrl/pinctrl-aw9523.c:1117:19: error: initialization of 'void (*)(struct i2c_client *)' from incompatible pointer type 'int (*)(struct i2c_client *)' [-Werror=incompatible-pointer-types]
 1117 |         .remove = aw9523_remove,
      |                   ^~~~~~~~~~~~~
  drivers/pinctrl/pinctrl-aw9523.c:1117:19: note: (near initialization for 'aw9523_driver.remove')
  cc1: all warnings being treated as errors

[0] - https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/10/diffs

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
0561613319 ramips: 6.1: mt7621-dma: apply dma handle error from device_reset patch
Apply the "109-drivers-mt7621-dma-handle-error-from-device_reset.patch"
directly on the downstream maintained dma driver.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
88d982e3bd ramips: 6.1: mt7621-dma: add hsdma driver to files
Commit 87dd67f496f7 ("staging: mt7621-dma: remove driver from tree")
removed the mt7621-dma driver. Maintain the driver downstream in the
folder of the other mediatek drivers.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Nick Hainke
0dcbe4e931 ramips: 6.1: copy config and patches
Copy config and patches from 5.15. This simplifies reviewing process.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2024-02-10 13:06:05 +01:00
Christian Marangi
1765973c40
ramips: fix dts error in LED color/function conversion
Fix DTS error in LED color/function conversion due to a bug in the
conversion script.

Fixes: 19c45b95db ("ramips: convert to new LED color/function format where possible")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-08 00:01:22 +01:00
Christian Marangi
19c45b95db
ramips: convert to new LED color/function format where possible
Initial conversion to new LED color/function format
and drop label format where possible. The same label
is composed at runtime.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-07 14:48:43 +01:00
Christian Marangi
7630c052c4
ramips: drop redundant label with new LED color/function format
Drop redundant label with new LED color/function format declared.
This was needed previously when the new format wasn't supported by
leds.sh functions script. Now that is supported this property
can be removed in favor of the new format.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2024-02-07 14:48:43 +01:00
John Audia
99c9d8abd6 kernel: bump 5.15 to 5.15.148
Changelog: https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.15.148

Removed upstreamed:
	generic/hack-5.15/321-powerpc_crtsavres_prereq.patch[1]

Manually rebased:
	target/linux/octeontx/patches-5.15/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch[2]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.148&id=0b11a145eb00d51f7ef18cfcae587b93f9adb1e9
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit?h=v5.15.148&id=b67064bd372300a75293efbbc70624996dccffd4

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>
2024-02-01 21:36:00 +01:00
Rafał Miłecki
2df8a0ccb0 kernel: 5.15: backport v6.1 PHY changes required for Aquantia
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2024-01-26 11:48:50 +01:00
Tomasz Maciej Nowak
fd46680966 ramips: mt76x8: enable small_flash feature
Some of devices in this target have only 8 MiB space and are closing to
borders of usable space. Particularly, TP-Link RE305 v1 already suffers
from this issue[1], where with current partition layout, on release
images, there's not enough space for overlay. So activate small_flash
feature, which will remove some userspace hardening but will gain almost
1 MiB additional flash memory space. Here is small size comparison of
similar device (RE365 v1) with default config + LuCI:

		kernel		rootfs		sysupgrade
current:	2305728		3635044		5964584
small_flash:	1713571		3320132		5047080

1. https://github.com/openwrt/openwrt/issues/14215

Suggested-by: Sander Vanheule <sander@svanheule.net>
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2024-01-22 12:32:23 +01:00
Shiji Yang
3f8ed239a6
ramips: mt7621: convert Linksys devices EEPROM to NVMEM format
-+-----------------------------+-
 |    Model   |       NIC      |
-+-----------------------------+-
 | EA6350 v4 | MT7603 + MT7613 |
-+-----------------------------+-
 | EA7300 v2 | MT7603 + MT7615 |
-+-----------------------------+-
 |  Others   |    MT7615 *2    |
-+-----------------------------+-

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:50 +01:00
Shiji Yang
a6724ba702
ramips: mt7621: convert NETGEAR devices EEPROM to NVMEM format
-+------------------------------+-
 |    Model   |       NIC       |
-+------------------------------+-
 | chj series | MT7603 + MT7615 |
-+------------------------------+-
 | bzv series |    MT7615 *2    |
-+------------------------------+-

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:50 +01:00
Shiji Yang
52c3f951f0
ramips: mt7621: convert Wavlink devices EEPROM to NVMEM format
-+------------------------------+-
 |    Model   |       NIC       |
-+------------------------------+-
 | WL-WN531A6 | MT7603 + MT7615 |
-+------------------------------+-
 | WL-WN533A8 |    MT7615 *2    |
-+------------------------------+-

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:50 +01:00
Shiji Yang
3158a09bef
ramips: mt7621: convert Ubiquiti devices EEPROM to NVMEM format
-+-------------------------+-
 | Model |       NIC       |
-+-------------------------+-
 | All   | MT7603 + MT7615 |
-+-------------------------+-

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:50 +01:00
Shiji Yang
cd9088c6f9
ramips: mt7621: convert I-O DATA devices EEPROM to NVMEM format
-+-------------------------------------------+-
 |          Model          |       NIC       |
-+-------------------------------------------+-
 | WN-DX1167R/WN-AX1167GR2 |     MT7615D     |
-+-------------------------------------------+-
 | WN-AX2033GR/WN-DX2033GR | MT7603 + MT7615 |
-+-------------------------------------------+-

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:49 +01:00
Shiji Yang
afc390a69f
ramips: mt7621: convert Xiaomi devices EEPROM to NVMEM format
-+---------------------------+-
 |  Model  |       NIC       |
-+---------------------------+-
 | AC2100  | MT7603 + MT7615 |
-+---------------------------+-
 | MI4A V2 | MT7603 + MT7613 |
-+---------------------------+-
 | Others  | MT7603 + MT7612 |
-+---------------------------+-

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:49 +01:00
Shiji Yang
0e6179e50e
ramips: mt7621: convert MT7915 EEPROM to NVMEM format
Some MT7915 calibration data consists of two parts. The first part
"eeprom" size is 0xe00. The second part "precal" size is 0x19c10.

Though some devices may not have precal data, it's better to assume
that precal data exists as no users/developers confirm it. On the
other hand, some devices definitely do not contain precal data
because the EEPROM partition size is smaller than the precal NVMEM
cell size.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2024-01-17 01:14:46 +01:00