aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ipq806x: ecw5410: use bootloader provided MAC-sRobert Marko2021-10-312-4/+2
| | | | | | | | | | | Currently, we are overriding the bootloader provided MAC-s as the ethernet aliases are reversed so MAC-s were fixed up in userspace. There is no need to do that as we can just fix the aliases instead and get rid of MAC setting via userspace helper. Fixes: 59f0a0f ("ipq806x: add Edgecore ECW5410 support") Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ipq806x: ecw5410: fix PCI1 radio caldataRobert Marko2021-10-311-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | ECW5410 has 2 QCA9984 cards, one per PCI controller. They are located at PCI adresses 0001:01:00.0 and 0002:01:00.0. Currently, pre-cal is not provided for 0001:01:00.0 at all,but for 0000:01:00.0 which is incorrect and causes the ath10k driver to not be able to fetch the BMI ID and use that to fetch the proper BDF but rather fail with: [ 12.029708] ath10k 5.10 driver, optimized for CT firmware, probing pci device: 0x46. [ 12.031816] ath10k_pci 0001:01:00.0: enabling device (0140 -> 0142) [ 12.037660] ath10k_pci 0001:01:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0 [ 13.173898] ath10k_pci 0001:01:00.0: qca9984/qca9994 hw1.0 target 0x01000000 chip_id 0x00000000 sub 168c:cafe [ 13.174015] ath10k_pci 0001:01:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0 [ 13.189304] ath10k_pci 0001:01:00.0: firmware ver 10.4b-ct-9984-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc35 [ 15.492322] ath10k_pci 0001:01:00.0: failed to fetch board data for bus=pci,vendor=168c,device=0046,subsystem-vendor=168c,subsystem-device=cafe,variant=Edgecore-ECW541 from ath10k/QCA9984/hw1.0/board-2.bin [ 15.543883] ath10k_pci 0001:01:00.0: failed to fetch board-2.bin or board.bin from ath10k/QCA9984/hw1.0 [ 15.543920] ath10k_pci 0001:01:00.0: failed to fetch board file: -12 [ 15.552281] ath10k_pci 0001:01:00.0: could not probe fw (-12) So, provide the pre-cal for the actual PCI card and not the non-existent one. Fixes: 59f0a0f ("ipq806x: add Edgecore ECW5410 support") Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ipq806x: ecw5410: drop GPIO based MDIO1 nodeRobert Marko2021-10-311-19/+10
| | | | | | | | | | | | It looks like this is a leftover before there was a proper MDIO driver. Since both PHY-s are connected to the HW MDIO bus there is no reason for this to exist anymore, especially since it uses the same pins as the HW controller and has the pinmux for the set to "MDIO" so this worked by pure luck as GPIO MDIO would probe first and override the HW driver. Move the GMAC3 to simply use the same MDIO bus phandle. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
* ath79: fix parallel image generation for Zyxel NBG6716André Valentin2021-10-311-5/+4
| | | | | | | | | This changes the image generation to use a unique directory. With parallel building it may occur that two concurrent jobs try to create an image which leds to errors. It also removes a needless subdirecory. Signed-off-by: André Valentin <avalentin@marcant.net>
* ramips: add support for HiLink HLK-7621A evaluation boardSergio Paracuellos2021-10-312-0/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifications: - SoC: MediaTek MT7621AT - RAM: 256 MB (DDR3) - Flash: 32 MB SPI NOR 44MHz - Switch: 1 WAN, 4 LAN (Gigabit) - LEDs: 1 WAN, 4 LAN (controlled by PHY) - USB Ports: 1 x USB2, 1 x USB3 - WLAN: 1 x 2.4, 5 GHz 866Mbps (MT7612E) - Button: 1 button (reset) - UART Serial: UART1 as console : 57600 baud - Power: 12VDC, 1A Installation: Update openWRT firmware using internal GNUBEE uboot: https://github.com/gnubee-git/GnuBee-MT7621-uboot By HTTP: Initial uboot address is http://10.10.10.123, your address needs to be 10.10.10.x, and mask 255.255.255.0. By TFTP: Uboot is in client mode, the address of the firmware must be tftp://10.10.10.3/uboot.bin Recovery: Manufacturer provides MTK OpenWrt 14.07 source code, compile then flash it by uboot. HLK-7621A is a stamp hole package module for embedded development, users have to design IO boards to use it. MAC addresses: - u-boot-env contains a placeholder address: > mtd_get_mac_ascii u-boot-env ethaddr 03:17:73:ab:cd:ef - phy0 gets a valid-looking address: > cat /sys/class/ieee80211/phy0/macaddress f8:62:aa:**:**:a8 - Calibration data for &pcie2 contains a valid address, however the zeros in the right half look like it's not real: 8c:88:2b:00:00:1b - Since it's an evaluation board and there is no solid information about the MAC address assignment, the ethernet MAC address is left random. Signed-off-by: Chen Yijun <cyjason@bupt.edu.cn> [add keys and pcie nodes to properly support evaluation board] Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> [remove ethernet address, wrap lines properly] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add support for Xiaomi MiWifi 3CEduardo Santos2021-10-313-0/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for Xiaomi MiWiFi 3C device. Xiaomi MiWifi 3C has almost the same system architecture as the Xiaomi Mi WiFi Nano, which is already officially supported by OpenWrt. The differences are: - Numbers of antennas (4 instead of 2). The antenna management is done via the µC. There is no configuration needed in the software code. - LAN port assignments are different. LAN1 and WAN are interchanged. OpenWrt Wiki: https://openwrt.org/toh/xiaomi/mir3c OpenWrt developers forum page: https://forum.openwrt.org/t/support-for-xiaomi-mi-3c Specifications: - CPU: MediaTek MT7628AN (575MHz) - Flash: 16MB - RAM: 64MB DDR2 - 2.4 GHz: IEEE 802.11b/g/n with Integrated LNA and PA - Antennas: 4x external single band antennas - WAN: 1x 10/100M - LAN: 2x 10/100M - LED: 1x amber/blue/red. Programmable - Button: Reset MAC addresses as verified by OEM firmware: use address source LAN *:92 factory 0x28 WAN *:92 factory 0x28 2g *:93 factory 0x4 OEM firmware uses VLAN's to create the network interface for WAN and LAN. Bootloader info: The stock bootloader uses a "Dual ROM Partition System". OS1 is a deep copy of OS2. The bootloader start OS2 by default. To force start OS1 it is needed to set "flag_try_sys2_failed=1". How to install: 1- Use OpenWRTInvasion to gain telnet, ssh and ftp access. https://github.com/acecilia/OpenWRTInvasion (IP: 192.168.31.1 - Username: root - Password: root) 2- Connect to router using telnet or ssh. 3- Backup all partitions. Use command "dd if=/dev/mtd0 of=/tmp/mtd0". Copy /tmp/mtd0 to computer using ftp. 4- Copy openwrt-ramips-mt76x8-xiaomi_miwifi-3c-squashfs-sysupgrade.bin to /tmp in router using ftp. 5- Enable UART access and change start image for OS1. ``` nvram set uart_en=1 nvram set flag_last_success=1 nvram set boot_wait=on nvram set flag_try_sys2_failed=1 nvram commit ``` 6- Installing Openwrt on OS1 and free OS2. ``` mtd erase OS1 mtd erase OS2 mtd -r write /tmp/openwrt-ramips-mt76x8-xiaomi_miwifi-3c-squashfs-sysupgrade.bin OS1 ``` Limitations: For the first install the image size needs to be less than 7733248 bits. Thanks for all community and especially for this device: minax007, earth08, S.Farid Signed-off-by: Eduardo Santos <edu.2000.kill@gmail.com> [wrap lines, remove whitespace errors, add mediatek,mtd-eeprom to &wmac, convert to nvmem] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: mikrotik: enable SFP on RB921GS-5HPacD (mANTBox 15s)Roger Pueyo Centelles2021-10-314-51/+51
| | | | | | | | | | | | This patch enables the SFP cage on the MikroTik RouterBOARD 921GS-5HPacD (mANTBox 15s). The RB922UAGS-5HPacD had it already working, so the support code is moved to the common DTSI file both devices share. Tested on a RouterBOARD 921GS-5HPacD with a MikroTik S-53LC20D module. Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
* ramips: fix LAVA LR-25G001 broken wifi led triggersJani Partanen2021-10-302-4/+2
| | | | | | | | | | | | | | | LED labels for this device are different in 01_leds file and in device DTS. Switch to DT triggers, which works on Telewell TW-4 (LTE) clone device. This has not been tested on the LR-25G001 itself, just on the clone mentioned above. Fixes: 20b09a2125f5 ("ramips: add support for Lava LR-25G001") Signed-off-by: Jani Partanen <rtfm@iki.fi> [rephrase commit title/message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: consolidate 11-ath10k-caldataAdrian Schmutzler2021-10-301-26/+12
| | | | | | | After the ath10k_patch_mac lines have been removed, a lot of blocks can be consolidated. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: remove transition workarounds for qcom-smem partitionsAdrian Schmutzler2021-10-304-56/+10
| | | | | | | | | | | | | | | | | | The out-of-tree qcom-smem patches traditionally displayed mtd partition names in upper case, starting with the new mainline qcom-smem support in kernel v5.10, it switched to normalizing the partition names to lower case. While both 5.4 and 5.10 were supported in the target, we carried a workaround to support both of them. Since the target has dropped 5.4 recently, those can be removed now. Ref: 2db9dded0a1a ("ipq806x: nbg6817: case-insensitive qcom-smem partitions") 435dc2e77e3b ("ipq806x: ecw5410: case-insensitive qcom-smem partitions") f70e11cd974e ("ipq806x: g10: case-insensitive qcom-smem partitions") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq806x: provide WiFI mac-addresses from dtsAnsuel Smith2021-10-308-12/+216
| | | | | | | | | | Use nvmem framework for supported mac-address stored in nvmem cells and drop mac patch function for hotplug script for supported devices. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> [rebase, move to correct node for d7800, include xr500] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: add support for TP-Link RE305 v3Michal Kozuch2021-10-305-81/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specs (same as in v1): - MT7628AN (575 MHz) - 64MB RAM - 8MB of flash (SPI NOR) - 1x 10/100Mbps Ethernet (MT7628AN built-in switch with vlan) - 1x 2.4GHz wifi (MT7628AN) - 1x 5Ghz wifi (MT7612E) - 4x LEDs (5 GPIO-controlled) - 1x reset button - 1x WPS button The only and important difference between v1 & v3 is in flash memory layout, so pls don't interchange these 2 builds! Installation through web-ui (on OEM factory firmware): 1. Visit http://tplinkrepeater.net or the configured IP address of your RE305 v3 (default 192.168.0.254). 2. Log in with the password you've set during initial setup of the RE305 (there is no default password). 3. Go to Settings -> System Tools -> Firmware upgrade 4. Click Browse and select the OpenWRT image with factory.bin suffix (not sysupgrade.bin) 5. A window with a progress bar will appear. Wait until it completes. 6. The RE305 will reboot into OpenWRT and serve DHCP requests on the ethernet port. 7. Connect an RJ45 cable from the RE305 to your computer and access LuCI at http://192.168.1.1/ to configure (or use ssh). Disassembly: Just unscrew 4 screws in the corners & take off the back cover. Serial is exposed to the right side of the main board (in the middle) and marked with TX/RX/3V3/GND, but the holes are filled with solder. Installation through serial: 1. connect trough serial (1n8, baudrate=57600) 2. setup the TFTP server and connect it via ethernet (ipaddr=192.168.0.254 of device, serverip=192.168.0.184 - your pc) 3. boot from a initramfs image first (choose 1 in the bootloader options) 4. test it a bit with that, then proceed to run sysupgrade build MAC addresses as verified by OEM firmware: use OpenWrt address reference LAN eth0 *:d2 label 2g wlan0 *:d1 label - 1 5g wlan1 *:d0 label - 2 The label MAC address can be found in config 0x2008. Signed-off-by: Michal Kozuch <servitkar@gmail.com> [redistribute WLAN node properties between DTS/DTSI, remove compatible on DTSI, fix indent/wrapping, split out firmware-utils change] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* build: move elecom-wrc-gs-factory to image-commands.mkINAGAKI Hiroshi2021-10-301-13/+0
| | | | | | | | ELECOM WRC-X3200GST3 uses the same header/footer as WRC-GS/GST devices in ramips/mt7621 subtarget, so move "Build/elecom-wrc-gs-factory" to image-commands.mk to use from mediatek/mt7622 subtarget. Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* sunxi: Nanopi R1S H5: enable LAN LED configurationChukun Pan2021-10-302-0/+60
| | | | | | This enables the LEDs on the LAN interfaces. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* sunxi: add support for FriendlyARM NanoPi R1S H5Chukun Pan2021-10-309-19/+587
| | | | | | | | | | | | | | | | | | | | | | | | | | | Specification: CPU: Allwinner H5, Quad-core Cortex-A53 DDR3 RAM: 512MB Network: 10/100/1000M Ethernet x 2 USB Host: Type-A x 1 MicroSD Slot x 1 MicroUSB: for power input Debug Serial Port: 3Pin pin-header LED: WAN, LAN, SYS KEY: Reset Power Supply: DC 5V/2A Installation: Write the image to SD Card with dd. Note: 1. OpenWrt currently does not support LED_FUNCTION, change back to the previous practice (Consistent with NanoPi R1). 2. Since the upstream commit https://github.com/torvalds/linux/bbc4d71 ("net: phy: realtek: fix rtl8211e rx/tx delay config"), we need to change the phy-mode from rgmii to rgmii-id. So set phy-mode for 5.4 and 5.10 respectively. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* rockchip: move r8152 related patches to genericChukun Pan2021-10-304-0/+0
| | | | | | | These patches can be used on other platforms, so move it to generic. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* kernel: bump 5.10 to 5.10.76Rui Salvaterra2021-10-3025-133/+43
| | | | | | | | | | | | | | | | Deleted (upstreamed): bcm27xx/patches-5.10/950-0145-xhci-add-quirk-for-host-controllers-that-don-t-updat.patch [1] Manually rebased: bcm27xx/patches-5.10/950-0355-xhci-quirks-add-link-TRB-quirk-for-VL805.patch bcm53xx/patches-5.10/180-usb-xhci-add-support-for-performing-fake-doorbell.patch Note: although automatically rebaseable, the last patch has been edited to avoid conflicting bit definitions. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.10.y&id=b6f32897af190d4716412e156ee0abcc16e4f1e5 Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* ipq40xx: detangle ath10k-board-qca4019 from ath10k-firmware-qca4019*Christian Lamparter2021-10-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | Back in the day, the board-2.bin came with ath10k-firmware-qca4019. This changed with commit c3b2efaf24b5 ("linux-firmware: ath10k: add board firmware packages") which placed the board-2.bin into a separate package: ath10k-board-qca4019. This was great, because it addressed one of the caveat of the original ipq-wifi package: commit fa03d441e96e ("firmware: add custom IPQ wifi board definitions") | 2. updating ath10k-firmware-qca4019 will also replace | the board-2.bin. For this cases the user needs to | manually reinstall the wifi-board package once the | ath10k-firmware-qca4019 is updated. This could be extended further so that ipq-wifi packages no longer use "install-override" and the various QCA4019 variants list the ath10k-board-qca4019 as a CONFLICT package. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath9k: OF: qca,disable-(2|5)ghz => ieee80211-freq-limitChristian Lamparter2021-10-306-8/+8
| | | | | | | | | | | | | | | | | | OpenWrt maintains two special out-of-tree DT properties: "qca,disable-5ghz" and "qca,disable-2ghz". These are implemented in a mac80211 ath9k patch "550-ath9k-disable-bands-via-dt.patch". With the things being what they are, now might be a good point to switch the devices to the generic and upstream "ieee80211-freq-limit" property. This property is much broader and works differently. Instead of disabling the drivers logic which would add the affected band and channels. It now disables all channels which are not within the specified frequency range. Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> # HH5A Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* realtek: re-enable IPv6 routingBjørn Mork2021-10-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Commit 03e1d93e0779 ("realtek: add driver support for routing offload") added routing offload for IPv4, but broke IPv6 routing completely. The routing table is empty and cannot be updated: root@gs1900-10hp:~# ip -6 route root@gs1900-10hp:~# ip -6 route add unreachable default RTNETLINK answers: Invalid argument As a side effect, this breaks opkg on IPv4 only systems too, since uclient-fetch fails when there are no IPv6 routes: root@gs1900-10hp:~# uclient-fetch http://192.168.99.1 Downloading 'http://192.168.99.1' Failed to send request: Operation not permitted Fix by returning NOTIFY_DONE when offloading is unsupported, falling back to default behaviour. Fixes: 03e1d93e0779 ("realtek: add driver support for routing offload") Signed-off-by: Bjørn Mork <bjorn@mork.no>
* realtek: fix ZyXEL initramfs image generationBjørn Mork2021-10-301-2/+2
| | | | | | | | | | | | | | | | The current rule produces empty trailers, causing the OEM firmware update application to reject our images. The double expansion of a makefile variable does not work inside shell code. The second round is interpreted as a shell expansion, attempting to run the command ZYXEL_VERS instead of expanding the $(ZYXEL_VERS) makefile variable. Fix by removing one level of variable indirection. Fixes: c6c8d597e183 ("realtek: Add generic zyxel_gs1900 image definition") Tested-by: Sander Vanheule <sander@svanheule.net> Signed-off-by: Bjørn Mork <bjorn@mork.no>
* bcm53xx: MR32: replace i2c-gpio with SoC's i2cChristian Lamparter2021-10-303-1/+118
| | | | | | | | | During review of the MR32, Florian Fainelli pointed out that the SoC has a real I2C-controller. Furthermore, the connected pins (SDA and SCL) would line up perfectly for use. This patch swaps out the the bitbanged i2c-gpio with the real deal. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* sunxi: deselect CONFIG_VIDEO_SUN6I_CSI by defaultDaniel Golle2021-10-291-0/+1
| | | | | | | | Deselect CONFIG_VIDEO_SUN6I_CSI Kconfig symbol for now. If anyone wants to use CSI (camera interface) they should package the kernel module. After this change, sunxi targets build again. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* sunxi: add CONFIG_ARM_CRYPTO Kconfig symbolDaniel Golle2021-10-291-0/+1
| | | | | | | And another missing symbol... Reported-by: Chen Minqiang <ptpt52@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* sunxi: add yet another missing Kconfig symbolDaniel Golle2021-10-291-0/+1
| | | | | | Set CONFIG_CRYPTO_CRCT10DIF_ARM_CE=y for sunxi targets. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* bcm53xx: backport patch fixing pinctrl driverRafał Miłecki2021-10-292-33/+106
| | | | | | | This switches pinctrl driver to use the old & good DT binding. There is no more need to adjust upstream DTS file. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* sunxi: add missing CONFIG_VIDEO_SUN4I_CSI Kconfig symbolDaniel Golle2021-10-291-0/+1
| | | | | | | Simply disable this for now, if anyone wants to use CSI feel free to package it as a kernel module package. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: make sure MMC is not busy before commencing sysupgradeDaniel Golle2021-10-282-0/+2
| | | | | | | | | In case of the block device still being in use, re-reading the partition table fails. In that case, abort sysupgrade to avoid corrupting the just-written image because of wrong offsets caused by failure to re-read the partition table. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ipq806x: add support for Netgear Nighthawk Pro Gaming XR500Peter Geis2021-10-269-448/+545
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the Netgear Nighthawk Pro Gaming XR500. It is the successor to the Netgear Nighthawk R7800 and shares almost identical hardware to that device. The stock firmware is a heavily modified version of OpenWRT. Specifications: SoC: Qualcomm Atheros IPQ8065 RAM: 512 MB Storage: 256 MiB NAND Flash Wireless: 2x Qualcomm Atheros QCA9984 Ethernet: 2x 1000/100/10 dedicated interfaces Switch: 5x 1000/100/10 external ports USB: 2x 3.0 ports More information: Manufacturer page: https://www.netgear.com/gaming/xr500/ Almost identical to Netgear R7800 Differences (r7800 > xr500): Flash: 128MiB > 256MiB Removed esata swapped leds: usb1 (gpio 7 > 8) usb2 (gpio 8 > 26) guest/esata (gpio 26 > 7) MAC addresses: On the OEM firmware, the mac addresses are: WAN: *:50 art 0x6 LAN: *:4f art 0x0 (label) 2G: *:4f art 0x0 5G: *:51 art 0xc Installation: Install via Web Interface (preferred): Utilize openwrt-ipq806x-netgear_xr500-squashfs-factory.img Install via TFTP recovery: 1.Turn off the power, push and hold the reset button (in a hole on backside) with a pin 2.Turn on the power and wait till power led starts flashing white (after it first flashes orange for a while) 3.Release the reset button and tftp the factory img in binary mode. The power led will stop flashing if you succeeded in transferring the image, and the router reboots rather quickly with the new firmware. 4.Try to ping the router (ping 192.168.1.1). If does not respond, then tftp will not work either. Uploading the firmware image with a TFTP client $ tftp 192.168.1.1 bin put openwrt-ipq806x-netgear_xr500-squashfs-factory.img Note: The end of the last partition is at 0xee00000. This was chosen by the initial author, but nobody was able to tell why this particular arbitrary size was chosen. Since it's not leaving too much empty space and it's the only issue left, let's just keep it for now. Based on work by Adam Hnat <adamhnat@gmail.com> ref: https://github.com/openwrt/openwrt/pull/3215 Signed-off-by: Peter Geis <pgwipeout@gmail.com> [squash commits, move common LEDs to DTSI, remove SPDX on old files, minor whitespace cleanup, commit message facelift, add MAC address overview, add Notes, fix MAC addresses, use generic name for partition nodes in DTS] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: minew g1-c: Allow dynamic RAM sizesBruno Randolf2021-10-261-5/+0
| | | | | | | | Allow RAM size to be passed thru U-Boot. There are 128MB and 64MB versions of Minew G1-C. This is also in line with the behaviour of most other RAMIPS boards. Signed-off-by: Bruno Randolf <br1@einfach.org>
* sunxi: switch to Kernel 5.10Paul Spooren2021-10-251-2/+2
| | | | | | | | Compile tested and run tested on Pine64+. Acked-by: Daniel Golle <daniel@makrotopia.org> Acked-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Paul Spooren <mail@aparcar.org>
* kernel: Add extra configuration optionsHauke Mehrtens2021-10-242-1/+7
| | | | | | These options show up when compiling the at91 target. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* at91: add support for sam9x60-ek boardClaudiu Beznea2021-10-241-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for SAM9X60-EK board. Hardware: - SoC: SAM9X60 - RAM: Winbond W972GG6KB-25 (2Gbit DDR2) - NAND Flash: Micron MT29F4G08ABAEA - QSPI Flash: Microchip SST26VF064B - EEPROM: Microchip 24AA02E48 - SDMMC: One standard 4-bit SD card interface - USB: two stacked Type-A connectors with power switches, one micro-B USB device - CAN: 2 interfaces (Microchip MCP2542) - Ethernet: one 10/100Mbps - WiFi/BT: one optional WiFi/Bluetooth interface - Audio: one ClassD port - Display: one 24-bit LCD interface - Camera: one 12-bit image sensor interface - IO: one IO expander (Microchip MCP23008) - Debug ports: one J-Link-OB + CDC, one JTAG interface - Leds: one RGB LED - Buttons: 4 push button switches - Expansion: one PIO connector, one mikrobus connector - Power management: two power regulators, two power consumption measurement devices Flashing: - follow the procedure at [1] [1] https://www.linux4sam.org/bin/view/Linux4SAM/Sam9x60EKMainPage#Create_a_SD_card_with_the_demo Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* at91: enable kernel config for sam9x60Claudiu Beznea2021-10-241-2/+27
| | | | | | Enable kernel config for SAM9X60. Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* at91: add support for sama5d27-wlsom1-ek boardClaudiu Beznea2021-10-241-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for SAMA5D27 WLSOM1-EK board. Hardware: - SIP: SAMA5D27C-LD2G-CU including SAMA5D27 MPU and 2Gbit LPDDR2-SDRAM - MMC: one standard SD card interface - Flash: 64 Mb serial quad I/O flash memory (SST26VF064BEUIT-104I/MF) with embedded EUI-48 and EUI-64 MAC addresses - USB: one USB device, one USB host one HSIC interface - Ethernet: 1x10/100Mbps port - WiFi/BT: IEEE 802.11 b/g/n Wi-Fi plus Bluetooth (Wi-Fi/BT) module (ATWILC3000-MR110UA) - Crypto: one ATECC608B-TNGTLS secure element - Video: one LCD RGB 18-bit interface, one ISC 12-bit camera interface - Debug port: one JTAG interface, one UART interface, one WILC UART interface - Leds: one RGB LED - Buttons: start, reset, wakeup, user buttons - Expansion: one tamper connector, one mikrobus interface, 2 XPRO PTC connector - Power managament: PMIC (MCP16502) Flashing: - follow procedure at [1] [1] https://www.linux4sam.org/bin/view/Linux4SAM/Sama5d27WLSom1EKMainPage#Create_a_SD_card_with_the_demo Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* at91: add support for sama5d2 icp boardClaudiu Beznea2021-10-241-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for SAMA5D2 ICP board. Hardware: - SoC: SAMA5D27 - RAM: 512 MB DDR3L - MMC: One stanard SD card interface - USB: One USB host switch 4 ports with power switch, One USB device type Micro-AB - CAN: 2 interfaces - Ethernet: One Gigabit Ethernet PHY through HSIC, One ETH switchport, One EtherCAT interface - WiFi/BT: Footprint for IEEE 802.11 b/g/n Wi-Fi plus Bluetooth module (Wi-Fi/BT), suitable for Microchip WILC3000-MR110CA or WILC3000-MR110UA - Debug port: One J-Link-OB/J-Link-CDC, one JTAG interface - Leds: one RGB LED - Buttons: reset, wakeup, 2 user buttons - Expansion: one PIOBU/PIO connector, 3 mikrobus sockets - Power mangament: PMIC (MCP16502), one power consumption device (PAC1934) Not working in Linux: - EtherCAT interface: there is no Linux support integrated - PAC1934: driver available at [1] but not integrated in Linux Flashing: - follow the procedure at [2] [1] https://ww1.microchip.com/downloads/en/DeviceDoc/pac193x_linux_driver.zip [2] https://www.linux4sam.org/bin/view/Linux4SAM/Sama5d2IcpMainPage#Create_a_SD_card_with_the_demo Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* at91: enable specific sam9x kernel config flagsClaudiu Beznea2021-10-241-6/+106
| | | | | | Enable specific sam9x kernel config flags. Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* at91: kernel: bump to 5.10Claudiu Beznea2021-10-2414-779/+109
| | | | | | | | | | | | Bump at91 targets to kernel v5.10. With this patches and files for wb45n and wb50n were removed as they are now included in upstream kernel. Along with: - this the kernel config for sama5d2 and sam9x targets has been refreshed (with make kernel_menuconfig + save); - CONFIG_ARCH_AT91 and specific sam9x SoCs (AT91RM9200, AT91SAM9, SAM9X60) has been enabled such that sam9x SoCs to be able to boot. Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
* sunxi: 5.10: enable sun8i-thermalChukun Pan2021-10-242-1/+2
| | | | | | | | | | | | Enable the sun8i-thermal driver to allow reading the temperature of the SoC. As suggested by mans0n, disable this driver in the a8 subtarget because it does not support yet. Tested on NanoPi R1S H5. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* kernel: 5.10: qca8k: backport qca8k_setup tidy-upMatthew Hagan2021-10-241-0/+151
| | | | | | | | Tidy qca8k_setup for loops relating to port handling. No functional changes. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport qca8k cpu_port_index fix in parse_port_configMatthew Hagan2021-10-241-0/+28
| | | | | | | Add cpu_port_index fix to apply settings to correct CPU port. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport qca8k feature additionsMatthew Hagan2021-10-2416-0/+1991
| | | | | | | | | | | | | | | | Backport Ansuel Smith's various qca8k feature additions: - mac-power-sel support - SGMII PLL explicit enable - tx/rx clock phase to falling edge - power-on-sel and LED open drain mode - cpu port 6 - qca8328 support - sgmii internal delay - move port config to dedicated struct - convert to yaml schema Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport QCA83x PHY resume fix, DAC amplitude preferred ↵Matthew Hagan2021-10-245-2/+378
| | | | | | | | | | | master, debug reg names Backport workaround for QCA8327 PHY resume, which does not properly support genphy_suspend/resume. Also add DAC amplitude fix for the QCA8327 PHY, set port to preferred master and add proper names to debug regs. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport at803x QCA83xx phy support improvementsMatthew Hagan2021-10-244-2/+207
| | | | | | | | | | This commit add accepted upstream patches that improve & tidy qca83xx support. 1 - Split qca8327 to A & B variants, identifiable by phy_id 2 - Add suspend/resume support to qca8xx phys 3 - Tidy spacing and phy naming. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport at803x internal QCA8327 PHY supportMatthew Hagan2021-10-241-0/+48
| | | | | | | | | Add support for qca8327 internal phy needed for correct init of the switch port. It does use the same qca8337 function and reg just with a different id. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport qca8k legacy mdio mapping panic fixMatthew Hagan2021-10-241-0/+80
| | | | | | | | Add backport of Ansuel Smith's "net: dsa: qca8k: fix kernel panic with legacy mdio mapping" patch. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport additional qca8k fixesMatthew Hagan2021-10-245-0/+537
| | | | | | | | | | | | Backport fixes including: net: dsa: qca8k: fix missing unlock on error in qca8k_vlan_(add|del) net: dsa: qca8k: check return value of read functions correctly net: dsa: qca8k: add missing check return value in qca8k_phylink_mac_config() net: dsa: qca8k: fix an endian bug in qca8k_get_ethtool_stats() net: dsa: qca8k: check the correct variable in qca8k_set_mac_eee() Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: backport qca8k stability improvementsMatthew Hagan2021-10-2426-5/+2660
| | | | | | | | | This is a backport of Ansuel Smith's "Multiple improvement to qca8k stability" series. The QCA8337 switch is available on multiple platforms including ipq806x, ath79 and bcm53xx. Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
* kernel: 5.10: silence bogus "Missing #address-cells in interrupt provider" ↵Christian Lamparter2021-10-241-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | warnings Rosen reported strange dtc warnings that had their origin in an upstream patch to 5.8-rc1. Upon further digging this revealed an ongoing thread [0] discussing the topic: > [...]I don't think we need a bunch of warning fix patches to add > these everywhere. Also, the need for #address-cells pretty much makes > no sense on any modern system. It is a relic from days when the bus > (address) topology and interrupt topology were related. and later on: > So really, we only need to be checking for #address-cells in nodes > with interrupt-map. This patch backports just the patch which removed the warning message (this is from the upstream dtc project [1] - but not the kernel). the patch does not add the checking of the #address-cells in nodes with interrupt-map. [0] <https://lore.kernel.org/linux-devicetree/91e3405245c89f134676449cf3822285798d2ed2.1612189652.git.michal.simek@xilinx.com/> [1] <https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=d8d1a9a77863a8c7031ae82a1d461aa78eb72a7b> Link: <https://github.com/openwrt/openwrt/pull/4685> Reported-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: ag71xx: Disable napi related interrupts during probeSven Eckelmann2021-10-231-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ag71xx_probe is registering ag71xx_interrupt as handler for the gmac0/gmac1 interrupts. The handler is trying to use napi_schedule to handle the processing of packets. But the netif_napi_add for this device is called a lot later in ag71xx_probe. It can therefore happen that a still running gmac0/gmac1 is triggering the interrupt handler with a bit from AG71XX_INT_POLL set in AG71XX_REG_INT_STATUS. The handler will then call napi_schedule and the napi code will crash the system because the ag->napi is not yet initialized: libphy: Fixed MDIO Bus: probed CPU 0 Unable to handle kernel paging request at virtual address 00000000, epc == 00000000, ra == 81373408 Oops[#1]: CPU: 0 PID: 1 Comm: swapper Not tainted 5.4.152 #0 $ 0 : 00000000 00000001 00000000 8280bf28 $ 4 : 82a98cb0 00000000 81620000 00200140 $ 8 : 00000000 00000000 74657272 7570743a $12 : 0000005b 8280bdb9 ffffffff ffffffff $16 : 00000001 82a98cb0 00000000 8280bf27 $20 : 8280bf28 81620000 ffff8b00 8280bf30 $24 : 00000000 8125af9c $28 : 82828000 8280bed8 81610000 81373408 Hi : 00005fff Lo : 2e48f657 epc : 00000000 0x0 ra : 81373408 __napi_poll+0x3c/0x11c Status: 1100dc03 KERNEL EXL IE Cause : 00800008 (ExcCode 02) BadVA : 00000000 PrId : 00019750 (MIPS 74Kc) Modules linked in: Process swapper (pid: 1, threadinfo=(ptrval), task=(ptrval), tls=00000000) Stack : ffff8afb ffff8afa 81620000 00200140 00000000 82a98cb0 00000008 0000012c 81625620 81373684 ffffffff ffffffff ffffffef 00000008 816153d8 81620000 815b0d60 815bbd54 00000000 81753700 8280bf28 8280bf28 8280bf30 8280bf30 81753748 00000008 00000003 00000004 0000000c 00000100 3fffffff 8175373c 816059f0 814ddb48 00000001 8160ab30 81615488 810618bc 00000006 00000000 ... Call Trace: [<81373684>] net_rx_action+0xfc/0x26c [<814ddb48>] __do_softirq+0x118/0x2ec [<810618bc>] handle_percpu_irq+0x50/0x80 [<8125ab8c>] plat_irq_dispatch+0x94/0xc8 [<81004e98>] handle_int+0x138/0x144 Code: (Bad address in epc) ---[ end trace a60d797432b656b2 ]--- The gmcc0/gmac1 must be brought in a state in which it doesn't signal a AG71XX_INT_POLL related status bits as interrupt before registering the interrupt handler. ag71xx_hw_start will take care of re-initializing the AG71XX_REG_INT_ENABLE. Fixes: f529a3742043 ("surprise :p") Signed-off-by: Sven Eckelmann <sven@narfation.org>