aboutsummaryrefslogtreecommitdiff
path: root/target
Commit message (Collapse)AuthorAge
...
* qualcommax: ipq807x: Remove unused gpio from QPIC pinsPaweł Owoc2024-05-16
| | | | | | | | | Remove gpio16 from the default NAND pinctrl configuration as its unused and only needed for LCD. Signed-off-by: Paweł Owoc <frut3k7@gmail.com> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq806x: mr42/mr52: fix PCIe portsRobert Marko2024-05-16
| | | | | | | | | | | | | | | | | | | | | | | | All three PCIe ports are reported non working on Meraki MR42/MR52 boards since kernel 6.1 with the issue of PCIe PHY link never coming up thus no WLAN cards are available on the boards. After debugging it seems that PCIe worked on 5.15 and older purely by accident as device DTS was using /delete-property/ perst-gpios; in each of the 3 PCIe nodes but there was no "perst-gpios" property in the SoC DTSI as it was still using the older "perst-gpio" property so it was not getting removed from the device DTS. However, in kernel 6.1 commit ("ARM: dts: qcom-*: replace deprecated perst-gpio with perst-gpios") updated all Qualcomm DTS-es to use the newer "perst-gpios" and thus once ipq806x moved to 6.1 PCIe stopped working as now that property was being dropped from the device DTS. So, since the removal of PERST pins seems to have been wrong from the start lets drop the property removal from MR42/MR52. Fixes: #15408 Link: https://github.com/openwrt/openwrt/pull/15509 Signed-off-by: Robert Marko <robimarko@gmail.com>
* generic: 6.6: remove kernel export stripping patchRobert Marko2024-05-16
| | | | | | | | | | | | | Our kernel export stripping has been broken on 6.6 from the start since upstream kernel really reworked stuff in ("kbuild: generate KSYMTAB entries by modpost") and other commits as well. So, until this is either fixed or reworked lets drop the patch as it doesnt make sense to carry it knowing its broken and it can always be easily restored. Link: https://github.com/openwrt/openwrt/pull/15498 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ramips: Fix use mac-base for TP-Link TL-MR6400 v4 and v5Hauke Mehrtens2024-05-16
| | | | | | Use mac-base for mac-base TP-Link TL-MR6400 v4 and v5 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ramips: Fix wmac dts definition for TP-Link TL-MR6400 v4 and v5Hauke Mehrtens2024-05-16
| | | | | | | | | | | | | | | | | | | This code assumed that the mt7628an_tplink_8m.dtsi file defines mediatek,mtd-eeprom for the wmac and sets status to okay. The mediatek,mtd-eeprom definition was removed in commit e93f41adee3e ("ramips: convert MT7628 EEPROM to NVMEM format") but the dts for these two devices was not adapted to include the eeprom position on its own. The status = "okay" property was removed in 0a1d15642fa6 ("ramips: mt7628: use nvmem-layout"), but the property was not added to these dts files. Without this change wifi does not work for these devices. Fixes: e93f41adee3e ("ramips: convert MT7628 EEPROM to NVMEM format") Fixes: 0a1d15642fa6 ("ramips: mt7628: use nvmem-layout") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: add patch to fix the reset gpio handling in the pci driverMartin Schiller2024-05-15
| | | | | | | | | | | | | | | | | | | | | | Linux kernel commit 90c2d2eb7ab5 ("MIPS: pci: lantiq: switch to using gpiod API") not only switched to the gpiod API, but also inverted / changed the polarity of the GPIO. According to the PCI specification, the RST# pin is an active-low signal. However, most of the device trees that have been widely used for a long time (mainly in the openWrt project) define this GPIO as active-high and the old driver code inverted the signal internally. Apparently there are actually boards where the reset gpio must be operated inverted. For this reason, we cannot use the GPIOD_OUT_LOW/HIGH flag for initialization. Instead, we must explicitly set the gpio to value 1 in order to take into account any "GPIO_ACTIVE_LOW" flag that may have been set. In order to remain compatible with all these existing device trees, we should therefore keep the logic as it was before the commit. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: dts: add missing irqs to mei node on AmazonSE, Danube and AR9Martin Schiller2024-05-15
| | | | | | This adds to missing DyingGasp and USB OC interrupts to the mei node. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: vmmc kernel-in-tree driver: use platform_get_irq to get irqsMartin Schiller2024-05-15
| | | | | | | | | | | This is required for linux-6.1 compatibility. IRQs are not automatically mapped from HW to virtual IRQ numbers when the IRQ domain is registered. This happens when the IRQ number is read from the device tree based on the IRQ domain from the device tree now. In kernel 5.15 it was done when the IRQ domain was registered. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: old gptu timer driver: use platform_get_irq to get irqsMartin Schiller2024-05-15
| | | | | | | | | | | This is required for linux-6.1 compatibility. IRQs are not automatically mapped from HW to virtual IRQ numbers when the IRQ domain is registered. This happens when the IRQ number is read from the device tree based on the IRQ domain from the device tree now. In kernel 5.15 it was done when the IRQ domain was registered. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: ifxmips_pcie: use platform_get_irq to get irqs from dtsMartin Schiller2024-05-15
| | | | | | | | | | | This is required for linux-6.1 compatibility. IRQs are not automatically mapped from HW to virtual IRQ numbers when the IRQ domain is registered. This happens when the IRQ number is read from the device tree based on the IRQ domain from the device tree now. In kernel 5.15 it was done when the IRQ domain was registered. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: dts: vr9: add missing interrupts to pcie nodeMartin Schiller2024-05-15
| | | | | | This adds the missing interrupts to the pcie node. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: ifxmips_pcie: use dev_err_probeMartin Schiller2024-05-15
| | | | | | | | Use dev_err_probe() to get rid of the following warning which is seen when the PCIe PHY has not been probed yet: pcie-xrx200 1d900000.pcie: failed to get the PCIe PHY Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: Add some gswip patchesHauke Mehrtens2024-05-15
| | | | | | | | | | | This backports some patches for the gswip switch driver. I copied them from this repository: https://github.com/xdarklight/linux/commits/lantiq-gswip-integration-20221022 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [drop some patches which may break functionality at the moment] Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: Fix bug in error handling of timer driverHauke Mehrtens2024-05-15
| | | | | | | | | If the reverted timer driver fails to allocate interrupts handle the error better. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [moved printk before the cleanup for-loop] Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: Refresh patches and configurationHauke Mehrtens2024-05-15
| | | | | | | | | | Make all the patches apply and delete the ones already integrated into upstream Linux kernel. This also refreshes some of the kernel configurations. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [refreshed for linux 6.1.89] Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: set Linux 6.1 as testing kernelMartin Schiller2024-05-15
| | | | | | Add KERNEL_TESTING_PATCHVER for Linux 6.1. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* kernel/lantiq: Restore kernel files for v5.15Martin Schiller2024-05-15
| | | | | | | | | | | This is an automatically generated commit which aids following Kernel patch history, as git will see the move and copy as a rename thus defeating the purpose. For the original discussion see: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* kernel/lantiq: Create kernel files for v6.1 (from v5.15)Martin Schiller2024-05-15
| | | | | | | | This is an automatically generated commit. When doing `git bisect`, consider `git bisect --skip`. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* lantiq: Refresh kernel configurationHauke Mehrtens2024-05-15
| | | | | | | | | | | | | | | | | | | This refreshes the configuration for Linux kernel 5.15. I first selected the xrx200 subtarget and then refreshed the target kernel configuration using this command: make kernel_oldconfig CONFIG_TARGET=target Then I selected one subtarget after the other and refreshed their configuration using this command: make kernel_oldconfig CONFIG_TARGET=subtarget I compared the kernel configuration used to compile the kernel from the build directory for each subtarget before and after this task and it was still the same. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> [refreshed config for linux 5.15.158] Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* ipq806x: rt4230w-rev6: fix status reporting via the LEDsRodrigo Balerdi2024-05-14
| | | | | | | | | | | | | | | | | There is a custom LED controller between the 3 SoC GPIO outputs and the red and blue LEDs of the device. It implements a strange mapping that includes fixed, flashing, and breathing modes. The current DTS configuration causes OpenWrt to flash the LEDs over the controller's own flashing, resulting in chaotic output in boot, failsafe, and upgrade modes. This change fixes the LEDs in the best way possible as long as each OpenWrt running state is limited to be signaled by a single led. Signed-off-by: Rodrigo Balerdi <lanchon@gmail.com> Link: https://github.com/openwrt/openwrt/pull/15440 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* ag71xx: Slightly simplify 'ag71xx_rx_packets()'Christophe JAILLET2024-05-14
| | | | | | | | | | | There is no need to use 'list_for_each_entry_safe' here, as nothing is removed from the list in the 'for' loop. Use 'list_for_each_entry' instead, it is slightly less verbose. Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://github.com/openwrt/openwrt/pull/15435 Link: https://github.com/openwrt/openwrt/pull/15435 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* generic: 5.15, 6.1: use RTL_8221B_VB_CG_PHYID in Realtek PHY detectionMieczyslaw Nalewaj2024-05-13
| | | | | | Use the constant RTL_8221B_VB_CG_PHYID instead of a numeric value. Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
* generic: 6.6: fix realtek PHY detection patchMieczyslaw Nalewaj2024-05-13
| | | | | | | | Fixes the issue of RTL8221B-VB-CG not being detected correctly. Reverts changes from f6c27b2, leaving only the read_c45 test. Fixed: #15093 Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com>
* airoha: set KERNEL_TESTING_PATCHVER:=6.6Daniel Golle2024-05-12
| | | | | | | | Lets give Linux 6.6 a try. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Link: https://github.com/openwrt/openwrt/pull/15416 Signed-off-by: Robert Marko <robimarko@gmail.com>
* kernel/airoha: refresh config-6.6Daniel Golle2024-05-12
| | | | | | | | Refresh kernel config for Linux 6.6. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Link: https://github.com/openwrt/openwrt/pull/15416 Signed-off-by: Robert Marko <robimarko@gmail.com>
* kernel/airoha: refresh patch on top of Linux 6.6Daniel Golle2024-05-12
| | | | | | | | Refresh the only remaining downstream patch. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Link: https://github.com/openwrt/openwrt/pull/15416 Signed-off-by: Robert Marko <robimarko@gmail.com>
* kernel/airoha: Restore kernel files for v6.1Daniel Golle2024-05-12
| | | | | | | | | | | | | This is an automatically generated commit which aids following Kernel patch history, as git will see the move and copy as a rename thus defeating the purpose. For the original discussion see: https://lists.openwrt.org/pipermail/openwrt-devel/2023-October/041673.html Signed-off-by: Daniel Golle <daniel@makrotopia.org> Link: https://github.com/openwrt/openwrt/pull/15416 Signed-off-by: Robert Marko <robimarko@gmail.com>
* kernel/airoha: Create kernel files for v6.6 (from v6.1)Daniel Golle2024-05-12
| | | | | | | | | | This is an automatically generated commit. When doing `git bisect`, consider `git bisect --skip`. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Link: https://github.com/openwrt/openwrt/pull/15416 Signed-off-by: Robert Marko <robimarko@gmail.com>
* kernel: bump 5.15 to 5.15.158Hauke Mehrtens2024-05-12
| | | | | | | | | | | | | | Removed because they are upstream: generic/backport-5.15/702-v5.19-01-arm64-dts-mediatek-mt7622-add-support-for-coherent-D.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=506ac5538498717fce699feaddb2ed97ae1c3ca7 generic/backport-5.15/702-v5.19-04-arm64-dts-mediatek-mt7622-introduce-nodes-for-Wirele.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=2f83d3d2cc3c0df89f833cd8c09989187f0c3ce1 Manually adapted: generic/pending-5.15/680-NET-skip-GRO-for-foreign-MAC-addresses.patch Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mvebu: switch to kernel 6.6Stefan Kalscheuer2024-05-12
| | | | | | | | | Update default kernel version to 6.6 and drop configs and patches for kernel 6.1. We can also omit the conditional to include DTS dir. Signed-off-by: Stefan Kalscheuer <stefan@stklcode.de> Link: https://github.com/openwrt/openwrt/pull/15449 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ipq40xx: fixup remaining devices that dont use QCA807x PHYRobert Marko2024-05-12
| | | | | | | | | | | | | Like AVM 1200 these devices also do not use QCA807x PHY at all and thus they disables all of the individual PHY nodes, however this is not enough anymore since the conversion to PHY package. Now its now enough to disable the PHY-s in the package alone, but the PHY package node itself must also be disabled. Fixes: 1b931c33a28e ("ipq40xx: adapt to new Upstream QCA807x PHY driver") Link: https://github.com/openwrt/openwrt/pull/15444 Signed-off-by: Robert Marko <robimarko@gmail.com>
* ramips: add support for ELECOM WMC-S1267GS2INAGAKI Hiroshi2024-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ELECOM WMC-S1267GS2 is a 2.4/5 GHz band 11ac (Wi-Fi 5) mesh extender, based on MT7621A. This device has almost the same hardware as WMC-M1267GST2. Specification: - SoC : MediaTek MT7621A - RAM : DDR3 256 MiB (Nanya NT5CC128M16JR-EK) - Flash : SPI-NOR 32 MiB (Winbond W25Q256JVFIQ) - WLAN : 2.4/5 GHz 2T2R (MediaTek MT7615D) - Ethernet : 10/100/1000 Mbps x4 - switch : MediaTek MT7530 (SoC) - LEDs/Keys : 6x/6x - UART : through-hole on PCB ("J4") - arrangement: 3.3V, GND, TX, RX from tri-angle marking - settings : 57600n8 - Power : 12 VDC, 1 A Flash instruction using factory image: 1. Boot WMC-S1267GS2 normally 2. Set IP address of the computer to 192.168.2.x 3. Access to "http://192.168.2.1/" and open firmware update page ("ファームウェア更新") 4. Select the OpenWrt factory image and click apply ("適用") button 5. Wait ~120 seconds to complete flashing MAC addresses: LAN : 04:AB:18:xx:xx:9E (Factory, 0xFFF4 (hex)) 2.4 GHz: 04:AB:18:xx:xx:9F 5 GHz : 04:AB:18:xx:xx:A0 (Factory, 0x4 (hex)) Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ramips: add support for ELECOM WMC-M1267GST2INAGAKI Hiroshi2024-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ELECOM WMC-M1267GST2 is a 2.4/5 GHz band 11ac (Wi-Fi 5) mesh router, based on MT7621A. Specification: - SoC : MediaTek MT7621A - RAM : DDR3 256 MiB (Nanya NT5CC128M16JR-EK) - Flash : SPI-NOR 32 MiB (Winbond W25Q256JVFIQ) - WLAN : 2.4/5 GHz 2T2R (MediaTek MT7615D) - Ethernet : 10/100/1000 Mbps x5 - switch : MediaTek MT7530 (SoC) - LEDs/Keys : 6x/6x - UART : through-hole on PCB ("J4") - arrangement: 3.3V, GND, TX, RX from tri-angle marking - settings : 57600n8 - Power : 12 VDC, 1 A Flash instruction using factory image: 1. Boot WMC-M1267GST2 normally with "Router" mode 2. Access to "http://192.168.2.1/" and open firmware update page ("ファームウェア更新") 3. Select the OpenWrt factory image and click apply ("適用") button 4. Wait ~120 seconds to complete flashing MAC addresses: LAN : 04:AB:18:xx:xx:61 (Factory, 0xFFF4 (hex)) WAN : 04:AB:18:xx:xx:62 (Factory, 0xFFFA (hex)) 2.4 GHz: 04:AB:18:xx:xx:63 5 GHz : 04:AB:18:xx:xx:64 (Factory, 0x4 (hex)) Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* kernel: bump 5.15 to 5.15.157Hauke Mehrtens2024-05-11
| | | | | | | | | | | | | | | | Removed because they are upstream: generic/backport-5.15/741-v6.9-01-netfilter-flowtable-validate-pppoe-header.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=d06977b9a4109f8738bb276125eb6a0b772bc433 Removed because they are upstream: generic/backport-5.15/741-v6.9-02-netfilter-flowtable-incorrect-pppoe-tuple.patch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.15.y&id=e719b52d0c56989b0f3475a03a6d64f182c85b56 Manual adapted the following patches: generic/pending-5.15/700-netfilter-nft_flow_offload-handle-netdevice-events-f.patch generic/pending-5.15/723-net-mt7531-ensure-all-MACs-are-powered-down-before-r.patch Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 5.15 to 5.15.156Hauke Mehrtens2024-05-11
| | | | | | No manual changes needed. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ramips: add support for JDCloud RE-CP-02Sheng Huang2024-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Soc: MediaTek MT7621AT - RAM: 512 MB (DDR3) - Flash: 16 MB (SPI NOR) - WiFi: MediaTek MT7905DAN, MediaTek MT7975DN - Ethernet: 1 WAN, 3 LAN (Gigabit) - Buttons: Reset, Joylink - LEDs: (red, blue, green), routed to one indicator in the top of the device - Power: DC 12V 1A tip positive - 1 TF Card Slot The pins for the serial console are already labeled on the board J4(V, R, T, G). Serial settings: 3.3V, 115200 MAC addresses: | | MAC | Algorithm | | ------- | ----------------- | --------- | | label | dc:d8:xx:xx:xx:01 | label | | LAN | dc:d8:xx:xx:xx:01 | label | | WAN | dc:d8:xx:xx:xx:02 | label+1 | | WLAN 2g | dc:d8:xx:xx:xx:03 | label+2 | | WLAN 5g | de:d8:xx:xx:xx:04 | label+3 | 1. rename the openwrt-ramips-mt7621-jdcloud_re-cp-02-squashfs-sysupgrade.bin to JDCOS.bin 2. start a TFTP server from IP address 192.168.68.10 and serve the image named JDCOS.bin 3. connect your device to the LAN port 4. power up the router and press any key on the console to interrupt the boot process. 5. enter the following commands on the router console 1. setenv bootcount 6 2. saveenv 3. reset > NOTE: wait for the restart, it will automatically fetch the > image named JDCOS.bin from the TFTP server and write it into > the flash. After the writing is completed, the router will be > automatically restarted. Unable to recognize large-capacity TF card, see #14042. But the patch https://github.com/openwrt/openwrt/issues/14042#issuecomment-1910769942 works Co-Authored-By: Jianti Chen <clbcjt@outlook.com> Signed-off-by: Sheng Huang <shenghuang147@gmail.com>
* mediatek: filogic: add support for Cudy M3000 v1Leon M. Busch-George2024-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware: SoC: MT7981b RAM: 256 MB Flash: 128 MB SPI NAND Ethernet: 1x 2.5Gbps (rtl8221b) 1x 1Gbps (integrated phy) WiFi: 2x2 MT7981 Buttons: Reset, WPS LED: 1x multicolor Solder on UART: - remove rubber ring on the bottom - remove screws - pull up the cylinder, maybe help by push on an ethernet socket with a screwdriver - remove the (3) screws holding the board in the frame - remove the board from the frame to get to the screws for the silver, flat heat shield - remove the (3) screws holding the heat shield - solder UART pins to the back of the board - make sure to have the pins point out on side with the black, finned heat spread - the markings for the pins are going to be below the silver heat shield - Vcc is not needed If you don't intend on using the UART outside of the installation process, you might not want to solder: - carefully scrape off the thin layer of epoxy on the holes (not the copper) - place your pin header with the UART attached in the holes - the pins, starting with the one closest to the socket: - Vcc (not required) - GND - RX - TX - either wedge the header or hold it with your fingers so that the pins stay in contact with the board Installation (UART): - attach an Ethernet cable to the 1Gbps port (black) on the router - hold the reset button while powering the router - press CTRL-C or wait for the timeout to get to the U-Boot prompt - prepare a TFTP server on the network to supply ..-initramfs-kernel.bin - use 'tftpboot' in the U-Boot shell to pull the image - boot the image using 'bootm' - push the ..-sysupgrade to the router using your preferred method - perform the upgrade with 'sysupgrade -n' There is a recovery mechanism that involves fetching a file called 'recovery.bin' but that is not understood yet. Signed-off-by: Leon M. Busch-George <leon@georgemail.eu>
* uboot-envtools: ath79: remove env config for Senao Loader devicesKevin Abraham2024-05-11
| | | | | | uboot-envtools can automatically parse the 'u-boot,env' compatible string from the dts. Signed-off-by: Kevin Abraham <kevin@westhousefarm.com>
* ath79: add support for Senao Engenius ENS1750Kevin Abraham2024-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FCC ID: A8J-EWS660AP Engenius ENS1750 is an outdoor wireless access point with 2 gigabit ethernet ports, dual-band wireless, internal antenna plates, and 802.3at PoE+ Engenius EWS660AP, ENS1750, and ENS1200 are "electrically identical, different model names are for marketing purpose" according to docs provided by Engenius to the FCC. **Specification:** - QCA9558 SOC 2.4 GHz, 3x3 - QCA9880 WLAN mini PCIe card, 5 GHz, 3x3, 26dBm - AR8035-A PHY RGMII GbE with PoE+ IN - AR8033 PHY SGMII GbE with PoE+ OUT - 40 MHz clock - 16 MB FLASH MX25L12845EMI-10G - 2x 64 MB RAM - UART at J1 populated, RX grounded - 6 internal antenna plates (5 dbi, omni-directional) - 5 LEDs, 1 button (power, eth0, eth1, 2G, 5G) (reset) **MAC addresses:** Base MAC addressed labeled as "MAC" Only one Vendor MAC address in flash eth0 *:d4 MAC art 0x0 eth1 *:d5 --- art 0x0 +1 phy1 *:d6 --- art 0x0 +2 phy0 *:d7 --- art 0x0 +3 **Serial Access:** the RX line on the board for UART is shorted to ground by resistor R176 therefore it must be removed to use the console but it is not necessary to remove to view boot log optionally, R175 can be replaced with a solder bridge short the resistors R175 and R176 are next to the UART RX pin **Installation:** 2 ways to flash factory.bin from OEM: Method 1: Firmware upgrade page: OEM webpage at 192.168.1.1 username and password "admin" Navigate to "Firmware Upgrade" page from left pane Click Browse and select the factory.bin image Upload and verify checksum Click Continue to confirm and wait 3 minutes Method 2: Serial to load Failsafe webpage: After connecting to serial console and rebooting... Interrupt uboot with any key pressed rapidly execute `run failsafe_boot` OR `bootm 0x9fd70000` wait a minute connect to ethernet and navigate to "192.168.1.1/index.htm" Select the factory.bin image and upload wait about 3 minutes **Return to OEM:** If you have a serial cable, see Serial Failsafe instructions otherwise, uboot-env can be used to make uboot load the failsafe image ssh into openwrt and run `fw_setenv rootfs_checksum 0` reboot, wait 3 minutes connect to ethernet and navigate to 192.168.1.1/index.htm select OEM firmware image from Engenius and click upgrade **TFTP recovery:** Requires serial console, reset button does nothing rename initramfs.bin to '0101A8C0.img' make available on TFTP server at 192.168.1.101 power board, interrupt boot execute tftpboot and bootm 0x81000000 **Format of OEM firmware image:** The OEM software of ENS1750 is a heavily modified version of Openwrt Kamikaze. One of the many modifications is to the sysupgrade program. Image verification is performed simply by the successful ungzip and untar of the supplied file and name check and header verification of the resulting contents. To form a factory.bin that is accepted by OEM Openwrt build, the kernel and rootfs must have specific names... openwrt-ar71xx-generic-ens1750-uImage-lzma.bin openwrt-ar71xx-generic-ens1750-root.squashfs and begin with the respective headers (uImage, squashfs). Then the files must be tarballed and gzipped. The resulting binary is actually a tar.gz file in disguise. This can be verified by using binwalk on the OEM firmware images, ungzipping then untaring. Newer EnGenius software requires more checks but their script includes a way to skip them, otherwise the tar must include a text file with the version and md5sums in a deprecated format. The OEM upgrade script is at /etc/fwupgrade.sh. OKLI kernel loader is required because the OEM software expects the kernel to be no greater than 1536k and the factory.bin upgrade procedure would otherwise overwrite part of the kernel when writing rootfs. Note on PLL-data cells: The default PLL register values will not work because of the external AR8035 switch between the SOC and the ethernet port. For QCA955x series, the PLL registers for eth0 and eth1 can be see in the DTSI as 0x28 and 0x48 respectively. Therefore the PLL registers can be read from uboot for each link speed after attempting tftpboot or another network action using that link speed with `md 0x18050028 1` and `md 0x18050048 1`. The clock delay required for RGMII can be applied at the PHY side, using the at803x driver `phy-mode`. Therefore the PLL registers for GMAC0 do not need the bits for delay on the MAC side. This is possible due to fixes in at803x driver since Linux 5.1 and 5.3 Tested-by: Kevin Abraham <kevin@westhousefarm.com> Signed-off-by: Kevin Abraham <kevin@westhousefarm.com>
* mediatek: fix PWM fan on BPi-R4Daniel Golle2024-05-11
| | | | | | | Add additional PWM fan cooling step and enable fan on BPi-R4. Suggested-by: Frank Wunderlich <frank-w@public-files.de> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: add missing kernel 6.6 symbolsÁlvaro Fernández Rojas2024-05-10
| | | | | | Add missing kernel 6.6 symbols for bcm27xx. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* realtek: Trap LLDP packets to the CPUKevin Jilissen2024-05-10
| | | | | | | | We should setup the registers for trapping LLDP packets to the CPU. Currently, these packets are forwarded to all ports which is not desired behaviour. Signed-off-by: Kevin Jilissen <info@kevinjilissen.nl>
* realtek: Change LLTP register to LLDPKevin Jilissen2024-05-10
| | | | | | | These registers control the handling of Link Layer Discovery Protocol (LLDP) packets. This seems to be a typo in the naming. Signed-off-by: Kevin Jilissen <info@kevinjilissen.nl>
* ramips: add support for Wavlink WL-WN531G3Eros Brigmann2024-05-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This device is similiar to the Wavlink WL-WN531A3. Hardware -------- SoC: Mediatek MT7620A RAM: 64MB FLASH: 8MB NOR (GigaDevice GD25Q64CS) ETH: - 2x 10/100/1000 Mbps Ethernet (RTL8211F) - 3x 10/100 Mbps Ethernet (integrated in SOC) WIFI: - 2.4GHz: 1x (integrated in SOC) (2x2:2) - 5GHz: 1x MT7612E (2x2:2) - 4 external antennas BTN: - 1x Reset button - 1x Touchlink button - 1x Turbo button - 1x Wps button - 1x ON/OFF switch LEDS: - 1x Red led (system status) - 1x Blue led (system status) - 5x Blue leds (ethernet ports) - 1x Power led - 1x Wifi led UART: - 57600-8-N-1 Everything works correctly. Installation ------------ Flash the initramfs image in the OEM firmware interface When Openwrt boots, flash the sysupgrade image otherwise you won't be able to keep configuration between reboots. In my case the whole device was locked and there was no way to flash the image, except for flashing directly to the flash via an spi-flasher. You need to put the sysupgrade image file at the beginning of 0x60000. Notes ----- 1) Router mac addresses: LAN XX:XX:XX:XX:XX:F0 (factory @ 0x28) WAN XX:XX:XX:XX:XX:F1 (factory @ 0x2e) WIFI 2G XX:XX:XX:XX:XX:F2 (factory @ 0x04) WIFI 5G XX:XX:XX:XX:XX:F3 (factory @ 0x8004) LABEL XX:XX:XX:XX:XX:F2 Signed-off-by: Eros Brigmann <erosbrigmann@gmail.com>
* ath79: enable 6.6 testing kernelShiji Yang2024-05-09
| | | | | | The ath79 target now supports the vanilla 6.6 kernel. Enjoy it! Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ath79: skip reset control for syscon devicesShiji Yang2024-05-09
| | | | | | | Fix the issue of exclusive reset controller acquisition failure on kernel 6.6. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ath79: refresh 6.6 kernel config filesShiji Yang2024-05-09
| | | | | | | | | | All kernel config files are refreshed by `make kernel_oldconfig CONFIG_TARGET={subtarget_target,subtarget}` "CONFIG_SQUASHFS_DECOMP_SINGLE=y" is manually selected as all ath79 SoCs are single core processors. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ath79: refresh 6.6 kernel patchesShiji Yang2024-05-09
| | | | | | | | | | | | | | | | | Some APIs have been changed. Porting them to the new kernel 6.6 version to fix the compile error. Removed upstreamed: 010-v6.4-gpio-ath79-Convert-to-immutable-irq_chip.patch[1] Manually rebased: 700-phy-add-ath79-usb-phys.patch 721-phy-mdio-bitbang-prevent-rescheduling-during-command.patch. ref:[2] [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=b11ce7e48121a02ceedec9f4dfcab4f2bee8f35f [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=002dd3de097c778a74ae9e47e598bea6ad055af0 Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ath79: restore kernel 6.1 config files and patchesShiji Yang2024-05-09
| | | | | | | Copy patches and kernel configs from kernel 6.6 to restore the default 6.1 kernel support files. Signed-off-by: Shiji Yang <yangshiji66@qq.com>
* ath79: rename patches directory and kernel config from 6.1 to 6.6Shiji Yang2024-05-09
| | | | | | | This is preparation for 6.6 kernel support. Renaming files allows us to better track their git history. Signed-off-by: Shiji Yang <yangshiji66@qq.com>