aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* lantiq: modify ath9k caldata extraction to reuse caldata.shAdrian Schmutzler2019-10-211-47/+15
| | | | | | | | | | | | | | | | In lantiq, ath9k caldata extraction is implemented to work in two alternate "modes", the standard one and another one with swapped byte pairs. This rearranges the functions so "standard" use is based on the caldata.sh library, while only a single local function is required for the special case. Note that while the parameter for switching between normal and swab is removed, the size of the caldata is added to the function calls to stay consistent. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ar71xx: WNDR4300: fix WAN LED behaviourMichal Cieslakiewicz2019-10-211-2/+1
| | | | | | | | | Change WAN LED behaviour to be consistent with other Netgear routers running OpenWrt. Instead of link speed, use amber colour to indicate link status. Green LED should be used when Internet connection is up and running. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ar71xx: WNDR4300: use standard labels for buttonsMichal Cieslakiewicz2019-10-211-3/+3
| | | | | | | GPIO key labels have been changed to standard ones (rfkill, reset, wps). It does not affect button functionality. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: fix patching ath9k MAC address for MyNet WiFi Range ExtenderAdrian Schmutzler2019-10-211-1/+1
| | | | | | | | | | | | | | | | | The code line patching ath9k MAC address for this device contains a wrong number of arguments including an unset "$mac", which looks like a typo or copy/paste mistake. This has been introduced already in the device support commit 745dee11ac78 ("ath79: add support for WD My Net Wi-Fi Range Extender"). This patch just removes the "$mac" argument, leaving a formally valid line. (No on-device test has been performed.) Cc: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for Netgear WNR1000 v2Michal Cieslakiewicz2019-10-215-0/+218
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNR1000v2. Router was previously supported by ar71xx target only. Note: this is a 4_32 device with limited upgrade capabilities. Specification ============= * Description: Netgear WNR1000 v2 * Loader: U-boot * SOC: Atheros AR7240 (340 MHz) * RAM: 32 MiB * Flash: 4 MiB (SPI NOR) - U-boot binary: 256 KiB - U-boot environment: 64 KiB - Firmware: 3712 KiB - ART: 64 KiB * Ethernet: 4 x 10/100 LAN + 1 x 10/100 WAN * Wireless: 2.4 GHz b/g/n (Atheros AR9285) * USB: no * 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 JP2, 3.3V (Vcc, TX, RX, GND), 115200 8N1 * Power supply: DC 12V 1A * 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_tiny=y CONFIG_TARGET_ath79_tiny_DEVICE_netgear_wnr1000-v2=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>
* ath79: add support for Netgear WNR2000 v3Michal Cieslakiewicz2019-10-215-0/+236
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds ath79 support for Netgear WNR2000v3. Router was previously supported by ar71xx target only. Note: this is a 4_32 device with limited upgrade capabilities. Specification ============= * Description: Netgear WNR2000 v3 * Loader: U-boot * SOC: Atheros AR7241 (360 MHz) * RAM: 32 MiB * Flash: 4 MiB (SPI NOR) - U-boot binary: 256 KiB - U-boot environment: 64 KiB - Firmware: 3712 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: no * 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 1A * 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_tiny=y CONFIG_TARGET_ath79_tiny_DEVICE_netgear_wnr2000-v3=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>
* ath79: WNR612v2: improve device supportMichal Cieslakiewicz2019-10-214-10/+19
| | | | | | | | | | | | | | | This patch improves ath79 support for Netgear WNR612v2. Router functionality becomes identical to ar71xx version. Changes include: * software control over LAN LEDs via sysfs * correct MAC addresses for network interfaces * correct image size in device definition * dts: 'keys' renamed to 'ath9k-keys' * dts: 'label-mac-device' set to eth1 (LAN) * dts: formatting adjustments Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: add LAN LEDs control bits for AR724x GPIO function pinmuxMichal Cieslakiewicz2019-10-211-1/+9
| | | | | | | | | | | | | | | Currently AR724x pinmux for register 0x18040028 controls only JTAG disable bit. This patch adds new DTS settings to control LAN LEDs and CLKs that allow full software control over these diodes - exactly the same is done by ar71xx target in device setup phase for many routers (WNR2000v3 for example). 'switch_led_disable_pins' clears AR724X_GPIO_FUNC_ETH_SWITCH_LED[0-4]_EN bits. 'clks_disable_pins' clears AR724X_GPIO_FUNC_CLK_OBS[1-5]_EN and AR724X_GPIO_FUNC_GE0_MII_CLK_EN bits. These all should be used together, along with 'jtag_disable_pins', to allow OS to control all GPIO-connected LEDs and buttons on device. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: add support for Sitecom WLR-7100Tomasz Maciej Nowak2019-10-215-2/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sitecom WLR-7100 v1 002 (marketed as X7 AC1200) is a dual band wireless router. Specification SoC: Atheros AR1022 RAM: 64 MB DDR2 Flash: 8 MB SPI NOR WIFI: 2.4 GHz 2T2R integrated 5 GHz 2T2R QCA9882 integrated (connected to PCIe lane) Ethernet: 5x 10/100/1000 Mbps QCA8337N USB: 1x 2.0 LEDS: 4x GPIO controlled, 5x switch Buttons: 2x GPIO controlled UART: row of 4 unpopulated holes near USB port, starting count from white triangle on PCB 1. VCC 3.3V, 2. GND, 3. TX, 4. RX baud: 115200, parity: none, flow control: none Installation 1. Connect to one of LAN (yellow) ethernet ports, 2. Open router configuration interface, 3. Go to Toolbox > Firmware, 4. Browse for OpenWrt factory image with dlf extension and hit Apply, 5. Wait few minutes, after the Power LED will stop blinking, the router is ready for configuration. Known issues 5GHz LED doesn't work Additional information When TX line on UART is connected, and board is switched on from power off state, the DDR memory training may fail. If connected to UART, when prompted for number on boot, one can enter number 4 to open bootloader (U-Boot) command line. OEM firmware shell password is: SitecomSenao useful for creating backup of original firmware. There is also another revision of this device (v1 001), which may or may not work with introduced images. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* ipq40xx: Add support for Unielec U4019Kristian Evensen2019-10-217-11/+410
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the 32MB storage/512MB RAM version of the U4019 IPQ4019-based board from Unielec. The board has the following specifications: * Qualcomm IPQ4019 (running at 717MHz) * 512MB DDR3 RAM (optional 256MB/1GB) * 32MB SPI NOR (optional 8/16MB or NAND) * Five gigabit ports (Qualcomm QCA8075) * 1x 2.4 GHz wifi (QCA4019 hw1.0) * 1x 5 Ghz wifi (QCA4019 hw1.0) * 1x mini-PCIe slot (only USB-pins connected) * 1x SIM slot (mini-SIM) * 1x USB2.0 port * 1x button * 1x controllable LED * 1x micro SD-card reader Working: * Ethernet * Wifi * USB-port * mini-PCIe slot + SIM slot * Button * Sysupgrade Not working: * SD card slot (no upstream support) Installation instructions: In order to install OpenWRT on the U4019, you need to go via the initramfs-image. The installation steps are as follows: * Connect to board via serial (header exposed and clearly marked). * Interrupt bootloader by pressing a button. * Copy the initramfs-image to your tftp folder, call the file C0A80079.img. * Give the network interface connected to the U4019 the address 192.168.0.156/24. * Start your tftp-server and run tftpboot on the board. * Run bootm when the file has been transferred, to boot OpenWRT. * Once OpenWRT has booted, copy the sysupgrade-image to the device and run sysupgrade to install OpenWRT on the U4019. Notes: - Since IPQ4019 has been moved to 4.19, I have not added support for kernel 4.14. - There is a bug with hardware encryption on IPQ4019, causing poor performance with TCP and ipsec (see for example FS#2355). In order to improve performance, I have disabled hardware encryption in the DTS. We can enable hw. enc. once/if bug is fixed. - In order for Ethernet to work, the phy has to be reset by setting gpio 47 low/high. Adding support for phy reset via gpio required patching the mdio-driver, and the code added comes from the vendor driver. I do not know if patching the driver is an acceptable approach or not. v1->v2: * Do not use wildcard as identifier in the board.d-scripts (thanks Adrian Schmutzler). Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
* ath79: fix gigabit link pll-data for EX7300Daniel Gimpelevich2019-10-211-2/+2
| | | | | | | | | | | | | The device did not appear to be reachable unless the connection were forced to 100Mb or lower. Revert to previously working pll-data. Also fix the phy-mode to represent the actual state needed for ethernet to function. Reported-by: Moritz Schreiber <moritz@mosos.de> Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> [add remark about phy-mode property] Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add AR934x NAND Flash Controller driverMichal Cieslakiewicz2019-10-204-0/+1525
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch contains updated driver for Atheros NAND Flash Controller written originally by Gabor Juhos for ar71xx (aka 'ar934x-nfc'). ath79 version has adapted to work with kernel 4.19 and Device Tree. It has also been renamed to 'ar934x-nand' to avoid confusion with Near-Field Communication technology. Controller is present on Atheros AR934x SoCs and required for accessing internal flash storage on routers like Netgear WNDR4300. This port preserves all NAND programming code while moving platform configuration to Device Tree and replacing some kernel functions marked for retirement by 4.19. Suitable definition is included in 'ar934x.dtsi' ('nand@1b000200' section). Most important changes to ar71xx version are: * old kernel sections of code removed * 'bool swap_dma' provided by platform data is now set by boolean DT property 'qca,nand-swap-dma' * board-supplied (mach-*.c code) platform data removed - its elements become either unused, redundant or replaced by DT methods (like reset) * IRQ is reserved by devm_request_irq() so free_irq() is not needed anymore * calls to deprecated nand_scan_ident() + nand_scan_tail() function pair replaced by using recommended nand_scan() with attach_chip() callback * ECC is set to hardware by default, can be overriden by standard DT 'nand-ecc-*' properties (software Hamming or BCH are other options) This driver has been successfully tested on Netgear WNDR4300 running experimental ath79 OpenWrt master branch. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl> [add reset control] Signed-off-by: David Bauer <mail@david-bauer.net>
* ipq40xx: essedma: Fix dead lockMasafumi UTSUGI2019-10-202-4/+4
| | | | | | | | | | | | | | | | | edma_read_append_stats() gets called from two places in the driver. The first place is the kernel timer that periodically updates the statistics, so nothing gets lost due to overflows. The second one it's part of the userspace ethtool ioctl handler to provide up-to-date values. For this configuration, the use of spin_lock() is not sufficient and as per: <https://mirrors.edge.kernel.org/pub/linux/kernel/people/rusty/kernel-locking/c214.html> the locking has to be upgraded to spin_lock_bh(). Signed-off-by: Masafumi UTSUGI <mutsugi@allied-telesis.co.jp> [folded patch into 710-, rewrote message] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath79: Clean up GL-AR300M DTS/DTSI inclusionsJeff Kletsky2019-10-202-4/+1
| | | | | | | | | | | | Modify GL-AR300M-Lite and GL-AR300M (NOR): * Include qca9531_glinet_gl-ar300m.dtsi directly rather than qca9531_glinet_gl-ar300m-nor.dts * Remove redundant inclusion of gpio.h and input.h Signed-off-by: Jeff Kletsky <git-commits@allycomm.com> Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: Fix arm64 include filesHauke Mehrtens2019-10-201-0/+280
| | | | | | | | | | | | | | | | | This patch fixes the build of gdb and strace on arm64 targets with kernel 4.19. Without this patch asm/ptrace.h is including asm/sigcontext.h and this file defines some structures which are also defined in musl header file arch/aarch64/bits/signal.h. These two definitions then conflict with each other and make the build fail. This was seen locally and also by the build bot. The struct sigcontext, struct sve_context and some others were defined twice. It looks like this problem was introduced between 4.14 and 4.19 and it was fixed in 5.0. I already requested to backport this patch to kernel 4.19. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ath25: split up DEVICE_TITLEMoritz Warning2019-10-191-1/+2
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* mvebu: split up DEVICE_TITLEMoritz Warning2019-10-193-27/+90
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* mediatek: split up DEVICE_TITLEMoritz Warning2019-10-192-5/+11
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* octeon: split up remaining DEVICE_TITLEMoritz Warning2019-10-191-1/+2
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR and DEVICE_MODEL Signed-off-by: Moritz Warning <moritzwarning@web.de>
* at91: split up remaining DEVICE_TITLE definitionsMoritz Warning2019-10-191-6/+12
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* rb532: split up DEVICE_TITLEMoritz Warning2019-10-191-1/+2
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* kernel: layerscape: fix compilation errorBiwen Li2019-10-191-0/+28
| | | | | | | | | This fixes a compilation error as follows: drivers/staging/fsl_qbman/qman_config.c:815:29: error: bitwise comparison always evaluates to false [-Werror=tautological-compare] if ((qman_ip_rev & 0xFF00) == QMAN_REV31) { Signed-off-by: Biwen Li <biwen.li@nxp.com>
* ipq806x: WPQ864: fix partition unit-addressChristian Lamparter2019-10-181-1/+1
| | | | | | | This patch fixes what seems to be a simple copy & paste error with the unit-address of the BOOTCONFIG partition. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ramips: fix WiFi MAC addresses for D-Link DIR-810LAdrian Schmutzler2019-10-151-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | So far, WiFi MAC addresses for this device have been set up from caldata. However, this returns values which do not look like MAC addresses. They also do not match stock firmware: wlan0 (5.0): 00:11:22:00:17:D0 from 0x8004 wlan1 (2.4): 00:11:22:00:17:CD from 0x4 (and 0x2e) It looks like the only valid MAC address on this device is at 0x28. So, this patch changes setup to calculate addresses based on the value at 0x28: lan: *:0A (flash, label) wan: *:0B (flash + 1) wifi2: *:0A (flash) wifi5: *:0C (flash + 2) Thanks to Roger Pueyo Centelles <roger.pueyo@guifi.net> for investigating this on his devices. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* lantiq: fix dsl_control status handling.Martin Schiller2019-10-151-2/+2
| | | | | | | | | | Commit 7519a36774ca ("base-files,procd: add generic service status") introduced the generic 'status' command which broke the previous dsl_control status output. To fix this, let's rename the "old" command to "dslstat". Fixes: 7519a36774ca ("base-files,procd: add generic service status") Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* bcm53xx: sysupgrade: support Luxul NAND devicesDan Haab2019-10-151-0/+2
| | | | | | This adds support for UBI-aware sysupgrade using Luxul formats. Signed-off-by: Dan Haab <dan.haab@legrand.com>
* brcm47xx: fix switch port labels for Asus WL500GP V2Michael Heimpold2019-10-151-1/+5
| | | | | | | The switch port naming in LuCI does not fit the physical numbers on the front of this device. Since this is confusing, fix it. Signed-off-by: Michael Heimpold <mhei@heimpold.de>
* treewide: use a single ath10k MAC patching function with checksumAdrian Schmutzler2019-10-154-49/+49
| | | | | | | | | | | | | | | | While all ath10k eeproms have a checksum field, so far two functions for patching ath10k MAC address have been present (and been used). This merges code to provide a single function ath10k_patch_mac in caldata.sh, having its name in accordance with ath9k functions. By doing so, correct MAC patching for current and future ath10k devices should be ensured. This patch adds checksum adjustments for several targets on ath79 and lantiq. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ipq40xx: add label MAC address for FritzBox 4040Adrian Schmutzler2019-10-151-0/+1
| | | | | | | | | | The CWMP-Account on the device's label contains the eth0 MAC address. This only changes 4.19 files as label-mac-device is introduced after 19.07 branch, so there won't be a 4.14 release anymore. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: correct ar71xx boardname for UniFi AC LiteDavid Bauer2019-10-151-1/+1
| | | | | | | | | This corrects the additional boardname for the image metadata to the one used in ar71xx. The previously present additional entry was never used on a running system. Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: David Bauer <mail@david-bauer.net>
* mpc85xx: correct TP-LINK TL-WDR4900 MAC addressesDavid Bauer2019-10-152-4/+4
| | | | | | | | | | | | | | This commit fixes TP-Link TL-WDR4900 v1 MAC address assignment. Previously, the MAC addrss was read for the ethernet from the "config" partition. However, the content of this partition is dependent on the firmware which was previously installed on the device. Switch the MAC address source to the U-Boot partition, where the MAC address is always present at a fixed partition. The partition was previously already used for the WiFi MAC-addresses. Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: David Bauer <mail@david-bauer.net>
* ath79: add support for UniFi AC-LRAndreas Ziegler2019-10-155-1/+19
| | | | | | | | | | | | | | The Unifi AC-LR has identical hardware to the Unifi AC-Lite. The antenna setup is different according to the vendor, which explains the thicker enclosure. Therefore, it is helpful to know the exact device variant, instead of having "Ubiquiti UniFi-AC-LITE/LR". Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de> [fix legacy name in commit message; add old boardname to SUPPORTED_DEVICES] Signed-off-by: David Bauer <mail@david-bauer.net>
* kernel: bump 4.19 to 4.19.79Koen Vandeputte2019-10-156-55/+8
| | | | | | | | | | | | Refreshed all patches. Remove upstreamed (superseded): - 950-0726-can-mcp251x-Allow-more-time-after-a-reset.patch Compile-tested on: brcm2708, cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.149Koen Vandeputte2019-10-1519-150/+151
| | | | | | | | | | | | Refreshed all patches. Altered patches: - 820-sec-support-layerscape.patch Compile-tested on: cns3xxx, layerscape Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* treewide: move MAC address patch functions to common libraryAdrian Schmutzler2019-10-149-210/+22
| | | | | | | | | This unifies MAC address patch functions and moves them to a common script. While those were implemented differently for different targets, they all seem to do the same. The number of different variants is significantly reduced by this patch. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: move calibration data extraction function to libraryAdrian Schmutzler2019-10-1310-420/+132
| | | | | | | | | | | | | | | | | This moves the almost identical calibration data extraction functions present multiple times in several targets to a single library file /lib/functions/caldata.sh. Functions are renamed with more generic names to merge different variants that only differ in their names. Most of the targets used find_mtd_chardev, while some used find_mtd_part inside the extraction code. To merge them, the more abundant version with find_mtd_chardev is used in the common code. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> [rebase on latest master; add mpc85xx] Signed-off-by: David Bauer <mail@david-bauer.net>
* base-files: move xor() from caldata extraction to functions.shAdrian Schmutzler2019-10-135-80/+3
| | | | | | | | The xor() function is defined in each of the caldata extraction scripts for several targets. Move it to functions.sh to reduce duplicate code. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* ath79: add support for COMFAST CF-E313ACRoger Pueyo Centelles2019-10-134-0/+174
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the COMFAST CF-E313AC, an outdoor wireless CPE with two Ethernet ports and a 802.11ac radio. Specifications: - QCA9531 SoC - 650/400/216 MHz (CPU/DDR/AHB) - 1x 10/100 Mbps WAN Ethernet, 48V PoE-in - 1x 10/100 Mbps LAN Ethernet, pass-through 48V PoE-out - 1x manual pass-through PoE switch - 64 MB RAM (DDR2) - 16 MB FLASH - QCA9886 2T2R 5 GHz 802.11ac, 23 dBm - 12 dBi built-in antenna - POWER/LAN/WAN/WLAN green LEDs - 4x RSSI LEDs (2x red, 2x green) - UART (115200 8N1) Flashing instructions: The original firmware is based on OpenWrt so a sysupgrade image can be installed via the stock web GUI. Settings from the original firmware will be saved and restored on the new one, so a factory reset will be needed. To do so, once the new firmware is flashed, enter into failsafe mode by pressing the reset button several times during the boot process, while the WAN LED flashes, until it starts flashing faster. Once in failsafe mode, perform a factory reset as usual. Alternatively, the U-boot bootloader contains a recovery HTTP server to upload the firmware. Push the reset button while powering the device on and keep it pressed for >10 seconds. The device's LEDs will blink several times and the recovery page will be at http://192.168.1.1; use it to upload the sysupgrade image. Note: Four MAC addresses are stored in the "art" partition (read-only): - 0x0000: 40:A5:EF:AA:AA:A0 - 0x0006: 40:A5:EF:AA:AA:A2 - 0x1002: 40:A5:EF:AA:AA:A1 - 0x5006: 40:A5:EF:AA.AA:A3 (inside the 5 GHz calibration data) The stock firmware assigns MAC addresses to physical and virtual interfaces in a very particular way: - eth0 corresponds to the physical Ethernet port labeled as WAN - eth1 corresponds to the physical Ethernet port labeled as LAN - eth0 belongs to the bridge interface br-wan - eth1 belongs to the bridge interface br-lan - eth0 is assigned the MAC from 0x0 (*:A0) - eth1 is assigned the MAC from 0x1002 (*:A1) - br-wan is forced to use the MAC from 0x1002 (*:A1) - br-lan is forced to use the MAC from 0x0 (*:A0) - radio0 uses the calibration data from 0x5000 (which contains a valid MAC address, *:A3). However, it is overwritten by the one at 0x6 (*:A2) This commit preserves the LAN/WAN roles of the physical Ethernet ports (as labeled on the router) and the MAC addresses they expose by default (i.e., *:A0 on LAN, *:A1 on WAN), but swaps the position of the eth0/eth1 compared to the stock firmware: - eth0 corresponds to the physical Ethernet port labeled as LAN - eth1 corresponds to the physical Ethernet port labeled as WAN - eth0 belongs to the bridge interface br-lan - eth1 is the interface at @wan - eth0 is assigned the MAC from 0x0 (*:A0) - eth1 is assigned the MAC from 0x1002 (*:A1) - br-lan inherits the MAC from eth0 (*:A0) - @wan inherits the MAC from eth1 (*:A1) - radio0's MAC is overwritten to the one at 0x6 This way, eth0/eth1's positions differ from the stock firmware, but the weird MAC ressignations in br-lan/br-wan are avoided while the external behaviour of the router is maintained. Additionally, WAN port is connected to the PHY gmac, allowing to monitor the link status (e.g., to restart DHCP negotiation when plugging a cable). Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
* ramips: mt7621: Alternative name KE 2P for Phicomm K2PRoger Pueyo Centelles2019-10-131-0/+2
| | | | | | | | The Phicomm KE 2P is identical to the already supported Phicomm K2P, renamed for the European market. Use the ALT0 buildroot tags to show both devices. Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
* lantiq: add set_port_link feature to xrx200-net driverMartin Schiller2019-10-121-1/+36
| | | | | | | This makes it possible to configure the link attributes (aneg, duplex, speed) of each switch ports. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* mvebu: backport mvneta and comphy from linux 5.xScott Roberts2019-10-1215-0/+1165
| | | | | | | | | | These patches backport support for the ARMADA 3700 COMPHY driver. Also backported is the mvneta driver. This will allow switching the SGMII speed using SMC calls. To support this you must update the firmware using Marvells 18.12 version (this has now been upstreamed). The mvneta driver allows 2500basex and 2500baset. Signed-off-by: Scott Roberts <ttocsr@gmail.com>
* kirkwood: Fix FS#505 - Can't install LEDE on Linksys EA3500Eubert Bao2019-10-121-0/+3
| | | | | | | | The default sizes render Device/linksys_audi mage un-flashable. Restore the pagesize, subpagesize, and blocksize for linksys_audi from https://github.com/openwrt/archive. Signed-off-by: Eubert Bao <bunnier@gmail.com>
* pistachio: split up DEVICE_TITLEMoritz Warning2019-10-121-1/+4
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* ar71xx: remove unnecessary execute permission bitSungbo Eo2019-10-121-0/+0
| | | | | | .c files do not need to be executable. 644 is enough. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* mediatek: remove unnecessary execute permission bitSungbo Eo2019-10-128-0/+0
| | | | | | kernel config and dts files do not need to be executable. 644 is enough. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* mvebu: Refresh kernel 4.19 configurationHauke Mehrtens2019-10-123-19/+127
| | | | | | | | | | | This refreshes the kernel 4.19 configuration, it looks like this was not done initially. When did a compile with the default settings I had to select some kernel configuration options. Fixes: 98684d99b250 ("mvebu: add kernel 4.19 support") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Set GCC version to 80300 by defaultHauke Mehrtens2019-10-121-1/+1
| | | | | | | The kernel 4.19 configuration contains the GCC version used, set it to 8.3.0 as this is now our default compiler. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* brcm47xx: split up DEVICE_TITLEMoritz Warning2019-10-121-89/+157
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* omap: split up DEVICE_TITLEMoritz Warning2019-10-121-4/+8
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* kernel: Fix off-by-one error in FIT mtd partition search.Oldřich Jedlička2019-10-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This fixes off-by-one error introduced in commit dc76900021b8 ("kernel: Correctly search for the FIT image in mtd partition.") Function `mtd_read` starts reading at `offset` and needs `hdr_len` number of bytes to be available. Suppose the easiest case when `offset` is `0` and `hdr_len` equals to `mtd->size` - the `for` loop will not be entered even when enough bytes are available to be read. Same happens for any non-zero `offset`, when `hdr_len` is just enough bytes to be read until `mtd->size` is reached. Imagine that for example `mtd->size=5`, `offset=4` and `hdr_len=1`. Then `offset+hdr_len=5` and the check has to be `offset+hdr_len <= mtd->size`, i.e. `5 <= 5`. The check for `offset + hdr_len` value needs to be inclusive, therefore use `<=`. Fixes: dc76900021b8 ("kernel: Correctly search for the FIT image in mtd partition.") Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com> [adjusted commit ref, fixes tag] Signed-off-by: Petr Štetiar <ynezz@true.cz>