aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* ramips: add newline for ASUS RT-ACx5P DTSesAdrian Schmutzler2019-11-032-2/+2
| | | | | | Those files are missing the newline at the end. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: remove further redundant mtd-mac-address for wmacAdrian Schmutzler2019-11-024-4/+0
| | | | | | | | | | | | | | | For several devices, wmac MAC address is set from art 0x1002 explicitly by using mtd-mac-address although mtd-cal-data is pulled from art 0x1000. With the MAC address in 0x1002, the driver should automatically use it when reading caldata from 0x1000. Thus, remove the redundant mtd-mac-address for those devices. This patch addresses the cases where the calibration data partition is not labelled art, having been overlooked in the first patch. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq40xx: convert IMAGE_SIZE/KERNEL_SIZE/BLOCKSIZE to kiBAdrian Schmutzler2019-11-021-5/+5
| | | | | | | | | | | | | | This cosmetical patch converts IMAGE_SIZE, KERNEL_SIZE and BLOCKSIZE definitions to kilobytes, as this is consistent and easier to read/type. An exception was made for asus_rt-ac58u, where the IMAGE_SIZE of 20439364 cannot be divided by 1024 (and also does not seem to match anything in DTS). Build-tested for all devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix several issues for ZyXEL NBG6716Adrian Schmutzler2019-11-023-23/+23
| | | | | | | | | | | | | This fixes several issues introduced with ZyXEL NBG6716 support: - Inhomogeneous indent - Wrong ath10k MAC patching function - Wrong brackets for pad-to in nand.mk - Add missing DEVICE_MODEL - Remove k2t.sh include (copy/paste leftover) Fixes: 99835e09992b ("ath79: add support for ZyXEL NBG6716") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for Netgear WNDR4300Michal Cieslakiewicz2019-11-022-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNDR4300. Router was previously supported by ar71xx target only. Note: device requires 'ar934x-nand' driver in kernel. Specification ============= * Description: Netgear WNDR4300 * Loader: U-boot * SOC: Atheros AR9344 (560 MHz) * RAM: 128 MiB * Flash: 128 MiB (NAND) - U-boot binary: 256 KiB - U-boot environment: 256 KiB - ART: 256 KiB - POT: 512 KiB - Language: 2 MiB - Config: 512 KiB - Traffic Meter: 3 MiB - Firmware: 25 MiB - ART Backup: 256 KiB - Reserved: 96 MiB * Ethernet: 5 x 10/100/1000 (4 x LAN, 1 x WAN) (AR8327) * Wireless: - 2.4 GHz b/g/n (internal) - 5 GHz a/n (AR9580) * USB: yes, 1 x USB 2.0 * Buttons: - Reset - WiFi (rfkill) - WPS * LEDs: - Power (amber/green) - WAN (amber/green) - WLAN 2G (green) - WLAN 5G (blue) - 4 x LAN (amber/green) - USB (green) - WPS (amber/green) * UART: 4-pin connector JP1, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 2.5A * MAC addresses: LAN=WLAN2G on case label, WAN +1, WLAN5G +2 Installation ============ * TFTP recovery * TFTP via U-boot prompt * sysupgrade * Web interface Note about partitioning: firmware partition offset (0x6c0000) is hardcoded into vendor's u-boot, so this partition cannot be moved and resized to include Netgear-specific flash areas (pot, language, config, traffic_meter) not used by OpenWrt. Test build configuration ======================== CONFIG_TARGET_ath79=y CONFIG_TARGET_ath79_nand=y CONFIG_TARGET_ath79_nand_DEVICE_netgear_wndr4300=y CONFIG_ALL_KMODS=y CONFIG_DEVEL=y CONFIG_CCACHE=y CONFIG_COLLECT_KERNEL_DEBUG=y CONFIG_IMAGEOPT=y Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: add support for Netgear WNDR4300Michal Cieslakiewicz2019-11-026-0/+349
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNDR4300. Router was previously supported by ar71xx target only. Note: device requires 'ar934x-nand' driver in kernel. Specification ============= * Description: Netgear WNDR4300 * Loader: U-boot * SOC: Atheros AR9344 (560 MHz) * RAM: 128 MiB * Flash: 128 MiB (NAND) - U-boot binary: 256 KiB - U-boot environment: 256 KiB - ART: 256 KiB - POT: 512 KiB - Language: 2 MiB - Config: 512 KiB - Traffic Meter: 3 MiB - Firmware: 25 MiB - ART Backup: 256 KiB - Reserved: 96 MiB * Ethernet: 5 x 10/100/1000 (4 x LAN, 1 x WAN) (AR8327) * Wireless: - 2.4 GHz b/g/n (internal) - 5 GHz a/n (AR9580) * USB: yes, 1 x USB 2.0 * Buttons: - Reset - WiFi (rfkill) - WPS * LEDs: - Power (amber/green) - WAN (amber/green) - WLAN 2G (green) - WLAN 5G (blue) - 4 x LAN (amber/green) - USB (green) - WPS (amber/green) * UART: 4-pin connector JP1, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 2.5A * MAC addresses: LAN=WLAN2G on case label, WAN +1, WLAN5G +2 Installation ============ * TFTP recovery * TFTP via U-boot prompt * sysupgrade * Web interface Note about partitioning: firmware partition offset (0x6c0000) is hardcoded into vendor's u-boot, so this partition cannot be moved and resized to include Netgear-specific flash areas (pot, language, config, traffic_meter) not used by OpenWrt. Test build configuration ======================== CONFIG_TARGET_ath79=y CONFIG_TARGET_ath79_nand=y CONFIG_TARGET_ath79_nand_DEVICE_netgear_wndr4300=y CONFIG_ALL_KMODS=y CONFIG_DEVEL=y CONFIG_CCACHE=y CONFIG_COLLECT_KERNEL_DEBUG=y CONFIG_IMAGEOPT=y Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ipq40xx: ipq4019: Add new device Compex WPJ419Daniel Danzberger2019-11-026-1/+396
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This device contains 2 flash devices. One NOR (32M) and one NAND (128M). U-boot and caldata are on the NOR, the firmware on the NAND. SoC: IPQ4019 CPU: 4x 710MHz ARMv7 RAM: 256MB FLASH: NOR:32MB NAND:128MB ETH: 2x GMAC Gigabit POE: 802.3 af/at POE, IEEE802.3af/IEEE802.3at(48-56V) WIFI: 1x 2.4Ghz Atheros qca4019 2x2 MU-MIMO 1x 5.0Ghz Atheros qca4019 2x2 MU-MIMO USB: 1x 3.0 PCI: 1x Mini PCIe SIM: 1x Slot SD: 1x MicroSD slot BTN: Reset LED: - Power - Ethernet UART: 1x Serial Port 4 Pin Connector (UART) 1x Serial Port 6 Pin Connector (High Speed UART) POWER: 12V 2A Installation ------------ Initial flashing can only be done via u-boot using the following commands: tftpboot openwrt-ipq40xx-generic-compex_wpj419-squashfs-nand-factory.ubi nand erase.chip; nand write ${fileaddr} 0x0 ${filesize} res Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
* ath79: add support for Netgear WNR2200Michal Cieslakiewicz2019-11-017-0/+329
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNR2200. Router was previously supported by ar71xx target only (8 MiB variant). Netgear WNR2200 has two flash versions - 8MiB sold in EU, US etc. and 16 MiB for Russia and China markets. Apart from flash size both variants share the same hardware specification. Specification ============= * Description: Netgear WNR2200 * Loader: U-boot * SOC: Atheros AR7241 (360 MHz) * RAM: 64 MiB * Flash: 8 MiB or 16 MiB (SPI NOR) - U-boot binary: 256 KiB - U-boot environment: 64 KiB - Firmware: 7808 KiB or 16000 KiB - ART: 64 KiB * Ethernet: 4 x 10/100 LAN + 1 x 10/100 WAN * Wireless: 2.4 GHz b/g/n (Atheros AR9287) * USB: yes, 1 x USB 2.0 * Buttons: - Reset - WiFi (rfkill) - WPS * LEDs: - Power (amber/green) - WAN (amber/green) - WLAN (blue) - 4 x LAN (amber/green) - WPS (green) * UART: 4-pin connector JP1, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 1.5A * MAC addresses: LAN on case label, WAN +1, WLAN +2 Installation ============ * TFTP recovery * TFTP via U-boot prompt * sysupgrade * Web interface Test build configuration ======================== CONFIG_TARGET_ath79=y CONFIG_TARGET_ath79_generic=y CONFIG_TARGET_ath79_generic_DEVICE_netgear_wnr2200-8m=y CONFIG_ALL_KMODS=y CONFIG_DEVEL=y CONFIG_CCACHE=y CONFIG_COLLECT_KERNEL_DEBUG=y CONFIG_IMAGEOPT=y CONFIG_KERNEL_DEBUG_INFO=y CONFIG_KERNEL_DEBUG_KERNEL=y Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* kernel: bump 4.19 to 4.19.81Koen Vandeputte2019-10-312-11/+8
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.151Koen Vandeputte2019-10-313-20/+20
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.19 to 4.19.80Koen Vandeputte2019-10-308-24/+11
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.150Koen Vandeputte2019-10-302-2/+2
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: fix swconfig compilation with kernels 5.2+Rafał Miłecki2019-10-281-0/+23
| | | | | | | This is related to the upstream kernel change 3b0f31f2b8c9 ("genetlink: make policy common to family"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* ath79: fix incorrect identation in qca9557.dtsiDavid Bauer2019-10-271-1/+1
| | | | Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: move base-files for ZyXEL NBG6716Adrian Schmutzler2019-10-278-20/+53
| | | | | | | | | | | | | | Due to rebase of the base-files split patch after adding support for the ZyXEL NBG6716, its base-files were added to the generic subtarget, although the device belongs to the nand subtarget. This moves the definitions to their proper locations. Fixes: 0130022baec0 ("ath79: split base-files into subtargets") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> [improve commit message, rebase] Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add support for Aerohive HiveAP 121David Bauer2019-10-275-2/+266
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the Aerohive HiveAP-121. It was previously already supported in the ar71xx subtarget. The following is copied from the commit which added ar71xx support: Specification: - SoC: Atheros AR9344-BC2A at 560MHz - WiFi 1: 2.4GHz Atheros AR9340? - SoC - WiFi 2: 5.0GHz Atheros AR9382-AL1A - Memory: 128MB from 2x Nanya NT5TU32M16DG-AC - SPI: 1MB Macronix MX25L8006E - NAND: 128MB Hynix H27U1G8F2BTR-BC - Ethernet: Atheros AR8035-A - USB: 1x 2.0 - TPM: Atmel SC3204 Flashing: 1. Hook into UART (9600 baud) and enter U-Boot. You may need to enter a password of administrator or AhNf?d@ta06 if prompted. 2. Once in U-Boot, download and flash LEDE factory image over tftp: dhcp; setenv serverip tftp-server-ip; tftpboot 0x81000000 lede-ar71xx-nand-hiveap-121-squashfs-factory.bin; nand erase 0x800000 0x800000; nand write 0x81000000 0x800000 0x800000; reset; Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: enable PCI for whole targetDavid Bauer2019-10-274-18/+18
| | | | | | | | | | This commit adds PCI support for the whole ath79 target. Previously, this was only done in the generic and tiny subtargets. With the introduction of the HiveAP-121, PCI will be a requirement for all subtargets, thus moving PCI support to the target configuration. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: remove redundant mtd-mac-address for wmacAdrian Schmutzler2019-10-279-9/+0
| | | | | | | | | | | | | | For several devices, wmac MAC address is set from art 0x1002 explicitly by using mtd-mac-address although mtd-cal-data is pulled from art 0x1000. With the MAC address in 0x1002, the driver should automatically use it when reading caldata from 0x1000. Thus, remove the redundant mtd-mac-address for those devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Tested-by: Jeff Kletsky <git-commits@allycomm.com> Tested-by: Karl Palsson <karlp@etactica.com>
* ath79: disable delays on AT803X config initDavid Bauer2019-10-272-0/+54
| | | | | | | | | | | | | | Until upstream commit 6d4cd041f0af("net: phy: at803x: disable delay only for RGMII mode"), delays were not disabled on driver probe for the Atheros AR803x PHYs, although the RX delay is enabled on soft and hard reset. In addition, the TX delay setting is retained on soft-reset. This patch disables both delays on config init to align the behavior with kernel 5.1 and higher. It can be safely dropped with kernel 5.1. Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: split base-files into subtargetsAdrian Schmutzler2019-10-2718-126/+314
| | | | | | | | | | | | | | | | | | | | | | | | | | | While most of the target's contents are split into subtargets, the base-files are maintained for the target as a whole. However, OpenWrt already implements a mechanism that will use (and even prefer) files in the subtargets' directories. This can be exploited to make several scripts subtarget-specific and thus save some space (especially helpful for the tiny devices). The only script remaining in parent base-files is /etc/hotplug.d/ieee80211/00-wifi-migration, everything else is moved/split. Note that this will increase overall code lines, but reduce code per subtarget. base-files ipk size reduction: master (generic) 49135 B split (generic) 48533 B (- 0.6 kiB) split (tiny) 43337 B (- 5.7 kiB) split (nand) 44423 B (- 4.6 kiB) Tested on TL-WR1043ND v4 (generic) and TL-WR841N v12 (tiny). Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: ethernet: Replace random_ether_addr with eth_hw_addr_randomRosen Penev2019-10-271-1/+1
| | | | | | eth_hw_addr_random additionally sets addr_assign_type to NET_ADDR_RANDOM. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ipq40xx: add label MAC address for Netgear EX6100v2/EX6150v2Adrian Schmutzler2019-10-271-0/+1
| | | | | | | | | | | | | | | | | | This is based on the EX6150v2, which should be identical to the EX6100v2: The device bears two MAC addresses ("MAC 1" and "MAC 2") that correspond to phy0 and phy1. The ethernet MAC address (gmac0) is the same as phy0. As this one is accessible via local-mac-address in gmac0, the latter is used for label-mac-device. (Although this is a one-port, gmac1 also has a local-mac-address assigned. This has the same vendor part as the other addresses, but completely different data for the device part.) Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq40xx: use DEVICE_VARIANT for Unielec U4019 flash sizeAdrian Schmutzler2019-10-271-1/+2
| | | | | | | If flash size is used as part of a device's title, it should be specified as DEVICE_VARIANT like for the other devices so far. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix remaining IMAGE_SIZE issuesAdrian Schmutzler2019-10-272-1/+2
| | | | | | | | This fixes the remaining IMAGE_SIZE issues in ath79 target. All devices in target have been checked, so together with previous patches this target should be "clean" afterwards. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: fix IMAGE_SIZE for common TP-Link definitionsAdrian Schmutzler2019-10-271-3/+3
| | | | | | | | | | | | | | | | | | | So far, IMAGE_SIZE is set as follows: tplink-4m* 3904k 0x3d0000 tplink-8m* 7936k 0x7c0000 tplink-16m* 15872k 0xf80000 However, based on the size of firmware partitions in DTS it should be: tplink-4m* 3904k 0x3d0000 tplink-8m* 8000k 0x7d0000 tplink-16m* 16192k 0xfd0000 All (!) 8m*/16m* devices actually follow the latter scheme, which is also consistent in terms of left free space for other partitions. Thus, fix it. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: tidy up and fix IMAGE_SIZE for Ubiquiti devicesAdrian Schmutzler2019-10-271-5/+4
| | | | | | | | | | | | This addresses IMAGE_SIZE inconsistencies in generic_ubnt.mk by: 1. (cosmetical) Move IMAGE_SIZE out of top definition ("ubnt"), since despite two all subdefinition have different values. 2. (change) Fix IMAGE_SIZE for ubnt-xm and ubnt-bz (7552k->7488k). 3. (cosmetical) Move IMAGE_SIZE of ubnt-wa devices to parent node since all have same size (it is defined in parent DTSI ...). Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: wnr1000v2: fix image header informationMichal Cieslakiewicz2019-10-271-0/+2
| | | | | | | | Factory image generated for Netgear WNR1000 v2 has incorrect device and hardware ID information in header due to missing makefile variables. This fix adds them to device section. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: add support for ZyXEL NBG6716André Valentin2019-10-278-1/+387
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Attention: Kernel partition size has been enlarged to 4MB. To switch, you must update to latest ar71xx-nand snapshort and flash the sysupgrade-4M-Kernel.bin: zcat openwrt-ath79-nand-zyxel_nbg6716-squashfs-sysupgrade-4M-Kernel.bin | mtd -r -e ubi write - firmware; reboot -f You will end up with a fresh config if you do not inject config into the image. The NBG6716 may come with 128MB or 256MB NAND. ar71xx was able to use all, but ath79 can only use the first 128MB. Therefore the complete NAND needs to be overwritten. If not, the old UBI may make problems and lead to reboot loop. Access the real u-boot shell: ZyXEL uses a proprietary loader/shell on top of u-boot: "ZyXEL zloader v2.02" When the device is starting up, the user can enter the the loader shell by simply pressing a key within the 3 seconds once the following string appears on the serial console: | Hit any key to stop autoboot: 3 The user is then dropped to a locked shell. |NBG6716> HELP |ATEN x[,y] set BootExtension Debug Flag (y=password) |ATSE x show the seed of password generator |ATSH dump manufacturer related data in ROM |ATRT [x,y,z,u] RAM read/write test (x=level, y=start addr, z=end addr, u=iterations) |ATGO boot up whole system |ATUR x upgrade RAS image (filename) |NBG6716> In order to escape/unlock a password challenge has to be passed. Note: the value is dynamic! you have to calculate your own! First use ATSE $MODELNAME (MODELNAME is the hostname in u-boot env) to get the challange value/seed. |NBG6716> ATSE NBG6716 |012345678901 This seed/value can be converted to the password with the help of this bash script (Thanks to http://www.adslayuda.com/Zyxel650-9.html authors): - tool.sh - ror32() { echo $(( ($1 >> $2) | (($1 << (32 - $2) & (2**32-1)) ) )) } v="0x$1" a="0x${v:2:6}" b=$(( $a + 0x10F0A563)) c=$(( 0x${v:12:14} & 7 )) p=$(( $(ror32 $b $c) ^ $a )) printf "ATEN 1,%X\n" $p - end of tool.sh - |# bash ./tool.sh 012345678901 | |ATEN 1,879C711 copy and paste the result into the shell to unlock zloader. |NBG6716> ATEN 1,0046B0017430 If the entered code was correct the shell will change to use the ATGU command to enter the real u-boot shell. |NBG6716> ATGU |NBG6716# Signed-off-by: André Valentin <avalentin@marcant.net>
* ar71xx: fix bug in NBG6716 kernelpacking, add firmware partitionAndré Valentin2019-10-271-2/+3
| | | | | | | -Fix the kernel image generation (more robust) -Add a firmware partition table allowing easy upgrade to ath79 Signed-off-by: André Valentin <avalentin@marcant.net>
* ramips: add support for Xiaomi Mi Wi-Fi Router 3G v2Paul Fertser2019-10-273-1/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - CMIIT ID: 2019AP2581 - SoC: MediaTek MT7621 - Flash: 16MiB NOR SPI (GigaDevice GD25Q128B) - RAM: 128MiB DDR3 (ESMT M15T1G1664A) - Serial: As marked on PCB, 3V3 logic, baudrate is 115200, 8n1 - Ethernet: 3x 10/100/1000 Mbps (switched, 2xLAN + WAN) - WIFI0: MT7603E 2.4GHz 802.11b/g/n - WIFI1: MT7612E 5GHz 802.11ac - Antennas: 4x external (2 per radio), non-detachable - LEDs: Programmable "power" LED (two-coloured, yellow/blue) Non-programmable "internet" LED (shows WAN activity) - Buttons: Reset INSTALLATION: Bootloader won't accept any serial input unless "boot_wait" u-boot environment variable is changed to "on". Vendor firmware (looks like an illegal OpenWrt fork) won't accept any serial input unless "uart_en" is set to "1". Tricks to force u-boot to use default environment do not help as it's restricted in the same way. With bootloader unlocked the easiest way would be to TFTP the sysupgrade image or to sysupgrade after loading an initramfs one. For porting the flash contents were changed externally with an SPI programmer (after lifting Vcc flash IC pin away from the PCB). Forum thread [0] indicates that this device is identical to "Xiaomi Mi Router 4A Gigabit Edition". [0] https://forum.openwrt.org/t/xiaomi-mi-router-4a-gigabit-edition-r4ag-r4a-gigabit-fully-supported-but-requires-overwriting-spi-flash-with-programmer/36685 Signed-off-by: Paul Fertser <fercerpav@gmail.com>
* octeontx: fix thunderx BGX underflow irq nameTim Harvey2019-10-271-4/+11
| | | | | | request_irq requires irq names to be static/allocated and not on the stack Signed-off-by: Tim Harvey <tharvey@gateworks.com>
* ramips: remove phy0tpt trigger from RT-AC65P/RT-AC85P power LEDAdrian Schmutzler2019-10-271-1/+0
| | | | | | | | | | | | This patch removes a phy0tpt trigger from the power LED, which seems to have been added by mistake. WiFi LEDs using phy0radio and phy1radio triggers are present and used correctly. Cc: Birger Koblitz <mail@birger-koblitz.de> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: remove redundant mtd-eeprom in mt76x8 DTS filesAdrian Schmutzler2019-10-278-9/+0
| | | | | | | | | | In mt7628an.dtsi, calibration data for wmac is already defined: mediatek,mtd-eeprom = <&factory 0x0>; Thus, this patch removes redundant entries of this property in derived DTS files. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: remove redundant mtd-mac-address for WiFiAdrian Schmutzler2019-10-273-4/+1
| | | | | | | | | | When caldata locations are defined with mediatek,mtd-eeprom the MAC address is automatically read from offset +4. Thus, specifying that location explicitly is redundant. This patch removes those redundant definitions. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: mtd: spinand: Backport chip definitionsJeff Kletsky2019-10-249-11/+870
| | | | | | | | | | | | | | | | | | | | | | | | | | generic: Add/rename patches for upstream consistency ipq40xx: generic-level patch replaces same-source patches-4.19/ 082-v4.20-mtd-spinand-winbond-Add-support-for-W25N01GV.patch The SPI-NAND framework from Linux uses common driver code that is then "tuned" by a tiny struct of chip-specific data that describes available commands, timing, and layout (data and OOB data). Several manufacturers and chips have been added since 4.19, several of which are used in devices already supported by OpenWrt (typically with no or "legacy" access to their NAND memory). This commit catches up the supported-chip definitions through Linux 5.2-rc6 and linux/next. The driver is only compiled for platforms with CONFIG_MTD_SPI_NAND=y. This presently includes ipq40xx and pistachio, with the addition of ath79-nand in these commits (and not ath79-generic or ath79-tiny). Upstream patches refreshed against 4.19.75 Build-tested-on: ipq40xx Run-tested-on: ath79-nand Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* ath79: Refactor GL.iNet GL-AR300M-series generic.mkJeff Kletsky2019-10-241-3/+3
| | | | | | | | | | Rework DEVICE_VENDOR, DEVICE_MODEL, and DEVICE_VARIANT for the GL-AR300M series on the ath79-generic target. Changes GL-AR300M-Lite to the current form with DEVICE_VARIANT := Lite (board name is unchanged) Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* ath79: GL-AR750S: Add I2C SupportJeff Kletsky2019-10-241-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | The GL-AR750S has an internal header for I2C. Provide DTS definitions for the i2c-gpio driver. The I2C drivers; kmod-i2c-core, kmod-i2c-gpio consume ~20 kB of flash and can be loaded as modules, Default clock measured ~11.2 ms period, ~89 kHz The board has well-labeled (unpopulated) headers for serial and I2C along the front edge of the board (the edge with the LEDs). Looking from the top, rear of the unit (behind Ethernet jacks) ------------------------------------------- 5G_LED 2G_LED PWR_LED O O O O O O O 3 S S G T R G V C D N X X N 3 L A D D Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* ath79: GL-AR300M series: Add I2C SupportJeff Kletsky2019-10-241-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GL-AR300M series have an internal header for I2C. Provide DTS definitions for the i2c-gpio driver. The I2C drivers; kmod-i2c-core, kmod-i2c-gpio consume ~20 kB of flash and can be loaded as modules, Default clock measured ~11.4 ms period, ~88 kHz The board has two sets of (unpopulated) headers. While facing the back of the board (looking into the Ethernet jacks), and looking from the top, the one on the left edge of the baord with four holes is the I2C header. It appears to be labeled J8 on "GL-AR300M-V1.4.0" boards. | (Patch antenna) | | | O GND | O SDA / GPIO 17 | O SCL / GPIO 16 | ⊡ 3V3 (square land) | | (Ethernet jacks) https://docs.gl-inet.com/en/3/hardware/ar300m/#pcb-pinout states "Note: I2C is not working in some early version of the router." Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* ramips: add support for Asus RT-AC65PGabor Varga2019-10-246-155/+190
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Asus RT-AC65P router is identical with the RT-AC85P, but better to make separate images for it. On both routers the installation can be done also via SSH: Note: The user/password for SSH is identical with the one used in the Web-interface. 1. Complete the initial setup wizard. 2. Activate SSH under "Administration" -> "System". 3. Transfer the OpenWrt factory image via scp: > scp openwrt-ramips-mt7621-asus_rt-ac65p-squashfs-factory.bin admin@192.168.50.1:/tmp 4. Connect via SSH to the router. > ssh admin@192.168.50.1 5. Write the OpenWrt image to flash. > mtd-write -i /tmp/openwrt-ramips-mt7621-asus_rt-ac65p-squashfs-factory.bin -d linux 6. Reboot the router > reboot Changelog: v3: removed [] from filename, rebased to latest master v2: Rebased to latest master v1: Initial release Signed-off-by: Gabor Varga <vargagab@gmail.com>
* ar71xx: add model detection for UniFi AC-LRAndreas Ziegler2019-10-232-0/+9
| | | | | | | | | | | | | | This commit adds correct model detection for UniFi AC-LR. Previously, said device was incorrectly detected as UniFi-AC-LITE/MESH. The Information about the device is stored at 0xC in the EEPROM partition. It corresponds to the sysid in /etc/board.info of the Ubiquiti stock firmware. Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de> [adjust naming style of target to existing ones] Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq40xx: add support for AVM FRITZ!Repeater 1200David Bauer2019-10-238-6/+551
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- SoC: Qualcomm IPQ4019 RAM: 256M DDR3 FLASH: 128M NAND WiFi: 2T2R IPQ4019 bgn 2T2R IPQ4019 a/n/ac ETH: Atheros AR8033 RGMII PHY BTN: 1x Connect (WPS) LED: Power (green/red/yellow) Installation ------------ 1. Grab the uboot for the Device from the 'u-boot-fritz1200' subdirectory. Place it in the same directory as the 'eva_ramboot.py' script. It is located in the 'scripts/flashing' subdirectory of the OpenWRT tree. 2. Assign yourself the IP address 192.168.178.10/24. Connect your Computer to one of the boxes LAN ports. 3. Connect Power to the Box. As soon as the LAN port of your computer shows link, load the U-Boot to the box using following command. > ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz1200.bin 4. The U-Boot will now start. Now assign yourself the IP address 192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP server root directory and rename it to 'FRITZ1200.bin'. 5. The Box will now boot OpenWRT from RAM. This can take up to two minutes. 6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using scp. SSH into the Box and first write the Bootloader to both previous kernel partitions. > mtd write /path/to/uboot-fritz1200.bin uboot0 > mtd write /path/to/uboot-fritz1200.bin uboot1 7. Remove the AVM filesystem partitions to make room for our kernel + rootfs + overlayfs. > ubirmvol /dev/ubi0 --name=avm_filesys_0 > ubirmvol /dev/ubi0 --name=avm_filesys_1 8. Flash OpenWRT peristently using sysupgrade. > sysupgrade -n /path/to/openwrt-sysupgrade.bin Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq40xx: add missing backslash in 11-ath10k-caldataDavid Bauer2019-10-231-1/+1
| | | | | | | This adds a missing backslash in the caldata-extraction script. Without this fix, caldata extraction fails for every device. Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq40xx: fix ethernet probe abort on missing phy-resetDavid Bauer2019-10-231-1/+1
| | | | | | | This commit completely fixes the abortion of the ipq40xx ethernet driver probe in case no phy-reset is defined. Signed-off-by: David Bauer <mail@david-bauer.net>
* brcm63xx: split up DEVICE_TITLEMoritz Warning2019-10-221-91/+219
| | | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Uses DEVICE_ALT* variables for alternative vendor/retailer names. Signed-off-by: Moritz Warning <moritzwarning@web.de>
* brcm63xx: fix build with GCC 8.3Jonas Gorski2019-10-221-0/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the following build error when building when using GCC 8.3: In file included from ./include/linux/string.h:19, from ./include/linux/bitmap.h:9, from ./include/linux/cpumask.h:12, from ./arch/mips/include/asm/processor.h:15, from ./arch/mips/include/asm/thread_info.h:16, from ./include/linux/thread_info.h:38, from ./include/asm-generic/preempt.h:5, from ./arch/mips/include/generated/asm/preempt.h:1, from ./include/linux/preempt.h:81, from ./include/linux/spinlock.h:51, from ./include/linux/mmzone.h:8, from ./include/linux/bootmem.h:8, from arch/mips/bcm63xx/prom.c:10: arch/mips/bcm63xx/prom.c: In function 'prom_init': ./arch/mips/include/asm/string.h:162:11: error: '__builtin_memcpy' forming offset [2, 32] is out of the bounds [0, 1] of object 'bmips_smp_movevec' with type 'char' [-Werror=array-bounds] __ret = __builtin_memcpy((dst), (src), __len); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/bcm63xx/prom.c:97:3: note: in expansion of macro 'memcpy' memcpy((void *)0xa0000200, &bmips_smp_movevec, 0x20); ^~~~~~ In file included from arch/mips/bcm63xx/prom.c:14: ./arch/mips/include/asm/bmips.h:80:13: note: 'bmips_smp_movevec' declared here extern char bmips_smp_movevec; Reported-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* ramips: fix LAN/WAN MAC addresses of Xiaomi MiWiFi Mini boardAdrian Schmutzler2019-10-221-3/+1
| | | | | | | | | | | | | | | | | | | Based on stock firmware tests, both LAN and WAN ports use the MAC address from 0x28 on factory partition. In OpenWrt, this one is already set in DTS. This patch removes the local bit set in 02_network previously, and adjusts LAN/WAN addresses as on stock firmware. Note that in tests we found a MAC address in 0x2e that is the one in 0x28 plus 1. Since stock firmware does not use it though, we do not use it either. Thanks to Chih-Wei Chen for testing this on his device. ref: https://github.com/openwrt/openwrt/pull/2497 Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq40xx: fix optional gpio-resetJohn Crispin2019-10-221-1/+1
| | | | | | If a gpio reset pin was not defined we should not bog out. Signed-off-by: John Crispin <john@phrozen.org>
* ar71xx: improve support for TP-Link CPE510 v2Adrian Schmutzler2019-10-217-21/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes commit bae927c551fd ("ar71xx: add support for TP-LINK CPE510 V2.0") where the support for this device wasn't optimal. Device support for the CPE510v2 so far has been a hack to enable flashing with CPE510v1 images. Those even have different hardware (e.g. additional ethernet port). With this patch, we provide proper support for this device in ar71xx. Installation: - Flash factory image through stock firmware WEB UI or through TFTP - To get to TFTP recovery just hold reset button while powering on for around 4-5 seconds and release. - Rename factory image to recovery.bin - Stock TFTP server IP: 192.168.0.100 - Stock device TFTP address: 192.168.0.254 Fixes: bae927c551fd ("ar71xx: add support for TP-LINK CPE510 V2.0") Signed-off-by: Andrew Cameron <apcameron@softhome.net> [Rebased onto revert commit, changed comments in mach-cpe510.c, changed commit title and description, fixed eth0 MAC address, removed eth1 initialization] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> [squashed revert, added fixes tag] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* ramips: fix TARGET_DEVICES after UniElec renameAdrian Schmutzler2019-10-212-3/+3
| | | | | | | | | | Device node names were updated, but updating TARGET_DEVICES was overlooked. Fixes: 4408723d42e0 ("ramips: remove RAM size from device name for UniElec devices") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ramips: remove RAM size from device name for UniElec devicesAdrian Schmutzler2019-10-217-18/+19
| | | | | | | | | | | UniElec devices are the last ones in ramips target still having the RAM size in device name although RAM size is auto-detected. Remove this from device name, compatible, etc., as it's not required and might be misleading to users and developers adding device support copying those devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>