aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ar71xx: add support for P&W R602N and CPE505NPiotr Dymacz2017-03-2313-8/+285
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | P&W (full name: Shenzhen Progress&Win Technologies) R602N (could be also labeled as R602F, R602, etc.) is a simple N300 router with 5-port 10/100 Mbps switch, non-detachable antennas and USB. CPE505 is an outdoor CPE with PoE support and detachable antennas. Both devices are based on Qualcomm/Atheros QCA9531 v2. Common specification: - 650/597/216 MHz (CPU/DDR/AHB) - 64 MB of RAM (DDR2) - 16 MB of FLASH - UART (J2) header on PCB R602N specification: - 5x 10/100 Mbps Ethernet - 1x USB 2.0 - 2T2R 2.4 GHz with external LNA and PA (SE2576L), up to 28 dBm - 2x external, non-detachable antennas - 7x LED, 1x button CPE505N specification: - 2x 10/100 Mbps Ethernet (both ports support passive PoE 12-24 V) - 2T2R 2.4 GHz with external LNA and PA (SKY65174-21), up to 30 dBm - 2x external, detachable antennas (RP-SMA connectors) - 1x RGB LED, 2x LEDs (in RJ45 sockets), 1x button Flash instructions: It seems that there are many different versions of the firmware which these devices are shipped with. The generic/standard one is based on some modified OpenWrt and LEDE firmware can be flashed directly from vendor's webgui or with sysupgrade (root password is "admin123"). Before flashing, make sure (use "fw_printenv") that the kernel load address in your device is set to "0x9f050000" (bootcmd variable is "bootm 0x9f050000"). If your device uses different load address, you should first change it, under vendor's firmware, with command: fw_setenv bootcmd "bootm 0x9f050000 || bootm OLD_ADDRESS" Where OLD_ADDRESS is previous kernel load address (in CPE505 version I got access to, it was "0x9fe80000"). This will allow you to use both the vendor's and LEDE firmware. If version of your device contains empty U-Boot environment (you will get information about this after issuing "fw_printenv"), you should use U-Boot, serial line access and TFTP to perform firmware upgrade: 1. tftp 0x80060000 lede-ar71xx-generic-...-squashfs-sysupgrade.bin 2. erase 0x9f050000 +$filesize 3. cp.b $fileaddr 0x9f050000 $filesize 4. setenv bootcmd "bootm 0x9f050000 || bootm OLD_ADDRESS" 5. saveenv && reset These devices contain also web recovery mode inside U-Boot. It can be started with pressing the reset button for around 3 seconds just after the device powerup. Web recovery panel is available on "192.168.10.9" and to be able to use it, IP on your PC must be set to "192.168.10.10". Make sure to change kernel load address before using recovery mode or the U-Boot will not be able to load LEDE firmware. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: add support for TP-LINK TL-WR840N v2 and v3Vaclav Svoboda2017-03-2313-2/+115
| | | | | | | | | | | | | | This patch adds support for the TP-LINK TL-WR840N v2 and v3. - SoC: Qualcomm QCA9533-BL3A (650 MHz) - RAM: 32 MiB (Zentel A3S56D40GTP) - Flash: 4 MiB (v2: Macronix MX 25L323F) (v3: Winbond 25Q32FVSIG) - LAN: 4x 100M - WAN: 1x 100M Signed-off-by: Vaclav Svoboda <svoboda@neng.cz>
* ar71xx: add support for MikroTik hAP acRyan Mounce2017-03-2311-3/+175
| | | | | | | | | | | This patch adds initial support for the MikroTik RouterBOARD hAP ac (RB962UiGS-5HacT2HnT). All functions are supported except: -SFP cage (eth1) is not working -WLAN LEDs are not working Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* ar71xx: add support for MikroTik hAP ac liteRyan Mounce2017-03-2311-10/+47
| | | | | | | | | | This patch adds support for the MikroTik RouterBOARD hAP ac lite (RB952Ui-5ac2nD). The hAP ac lite is nearly identical to the hAP, with an added QCA9887 5GHz radio. The 2.4GHz radio ID is also changed in the hAP ac lite. Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* ramips: fix mt7621 boot on v4.9John Crispin2017-03-231-0/+21
| | | | | | | v4.9 CM code has a few bugs on this HW. Disable the GCR register access during boot. This caused a cpu stall. Signed-off-by: John Crispin <john@phrozen.org>
* Revert "ipq806x: make the dwc3 driver and required phy drivers built-in"John Crispin2017-03-232-6/+32
| | | | | | | | This reverts commit d5b10bb560c2c3c615babfcfb64519bfc65818d9. This caused boot errors on some ipq8 boards Signed-off-by: John Crispin <john@phrozen.org>
* odhcp6c: update to git HEAD versionHans Dedecker2017-03-221-3/+3
| | | | | | | | | | | 0463b05 dhcpv6: rebind capability support in reconfigure message (rfc6644) 53767fc dhcpv6: respect renew end point when handling reconfigure message dd892e2 dhcpv6: calculate T1, T2 and T3 in a more sane manner 8a6ca6e md5: use libubox md5 library as local implementation 89822de dhcpv6: don't return renew msg in case of invalid msg type in reconfigure msg 4160c0e treewide: align coding style Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* ath9k: fix power limits on initFelix Fietkau2017-03-221-0/+47
| | | | | | | | | | | | | | | The tx power applied by set_txpower is limited by the CTL (conformance test limit) entries in the EEPROM. These can change based on the user configured regulatory domain. Depending on the EEPROM data this can cause the tx power to become too limited, if the original regdomain CTLs impose lowr limits than the CTLs of the user configured regdomain. To fix this issue, set the initial channel limits without any CTL restrictions and only apply the CTL at run time when setting the channel and the real tx power. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ath: do not apply broken power limits with ATH_USER_REGDFelix Fietkau2017-03-223-12/+44
| | | | | | | | | If a device uses the default EEPROM code, typically only the main CTLs are valid, and they do not apply properly when switching to a different regulatory domain. If the regdomain deviates from the EEPROM one, force the world roaming regdomain to ensure that power limits are sane Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: fix STAMP_PREPARED with quiltFelix Fietkau2017-03-222-2/+2
| | | | | | | quilt.mk needs to be included first, to ensure that STAMP_PREPARED does not include the hash if quilt is used. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* util-linux: re-enable parallel buildsFelix Fietkau2017-03-221-1/+1
| | | | | | The original build error in 'more' seems to be gone Signed-off-by: Felix Fietkau <nbd@nbd.name>
* util-linux: unconditionally enable ncursesw supportFelix Fietkau2017-03-221-6/+1
| | | | | | | The build dependency is unconditional, and some components might fail if ncurses is not available Signed-off-by: Felix Fietkau <nbd@nbd.name>
* utils/util-linux: Update to 2.29.2Daniel Engberg2017-03-223-39/+6
| | | | | | | | | | Update util-linux to 2.29.2 Remote 0001-fix-uClibc-ng-scanf-check.patch as it's been merged upstream. Refresh patches Change ncurses to ncursesw to fix compilation and avoid confusion Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net> Signed-off-by: Felix Fietkau <nbd@nbd.name> [remove faulty dependency changes]
* kernel: disable DRM_HISI_KIRIN and USB_DWC3_OF_SIMPLERafał Miłecki2017-03-221-0/+2
| | | | | | They were triggering config prompts on brcm2710. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: fix builds with kmod-drm-vc4 and CONFIG_SPI enabledRafał Miłecki2017-03-221-0/+2
| | | | | | | This fixes: Samsung LD9040 RGB/SPI panel (DRM_PANEL_SAMSUNG_LD9040) [N/m] (NEW) aborted! Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* Revert "utils/util-linux: Update to 2.29.2"John Crispin2017-03-223-8/+42
| | | | | | | | This reverts commit eac1a548573a0262e9f36aeee95ed071f6040703. This patch caused the builders to blow up. Signed-off-by: John Crispin <john@phrozen.org>
* utils/f2fs-tools: Update to 1.8.0Daniel Engberg2017-03-222-59/+7
| | | | | | | | | | Update f2fs-tools to 1.8.0 Refresh patches Remove selinux patch, use configure argument instead. Switch to xz tarball Adjust url to avoid redirects Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* x86: enable ACPI support for the Geode subtargetFelix Fietkau2017-03-221-1/+60
| | | | | | | Most or all newer Geode device have ACPI hardware support Should fix FS#577 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* pistachio: remove custom board detection overrideFelix Fietkau2017-03-225-51/+3
| | | | | | Use device tree based model string Signed-off-by: Felix Fietkau <nbd@nbd.name>
* pistachio: fix indentation in image makefileFelix Fietkau2017-03-221-15/+15
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* pistachio: remove pistachio_board_name, use the generic functionFelix Fietkau2017-03-224-15/+3
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* target: add pistachioIan Pozella2017-03-2210-0/+277
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Pistachio target is a MIPS interaptiv based SoC developed by Imagination Technologies. It includes blocks for i2c, spi, audio, usb and WiFi. This also adds the base support for the 'Creator Ci40 (marduk)' device which uses the Pistachio SoC to create an IoT hub by including Bluetooth, WiFi and 6lowpan on one board. Additionally 2x Mikrobus ports are available to expand with further RF technologies or add sensors. You can find out more here http://creatordev.io. Note, this commit is just the initial board support hence the following are not expected to work yet: * WiFi * Bluetooth * 6lowpan * Audio * Mikrobus uarts, user leds (clock dependency of 6lowpan chip) The aim of this commit is to essentially have the same level of support that currently exists in the mainline kernel. Signed-off-by: Abhijit Mahajani <Abhijit.Mahajani@imgtec.com> Signed-off-by: Francois Berder <francois.berder@imgtec.com> Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com> Signed-off-by: Mayank Sirotiya <Mayank.Sirotiya@imgtec.com> Signed-off-by: Sean Kelly <Sean.Kelly@imgtec.com>
* pistachio: add 4.9 kernel supportIan Pozella2017-03-2221-0/+3823
| | | | | | | | | | | | | | | | | | This adds kernel support for the Pistachio SoC and the Marduk (Ci40) board which uses it. Much of the code for Pistachio has been upstreamed however some patches are still required to boot from the Marduk board: * spi bug fixes * dma bug fixes * pistachio internal clock tree bug fixes * spi-nand implementation * dts based mtd device naming scheme * dts backports and bug fixes Signed-off-by: Abhijit Mahajani <Abhijit.Mahajani@imgtec.com> Signed-off-by: Francois Berder <francois.berder@imgtec.com> Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com>
* kernel: do not try to copy vmlinux out of arch/$(ARCH)/bootFelix Fietkau2017-03-221-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: remove lantiq_board_model, it is unusedFelix Fietkau2017-03-221-9/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: remove lantiq_board_name, use the generic function insteadFelix Fietkau2017-03-227-20/+6
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: move lantiq_board_detect() to 03_preinit_board.shFelix Fietkau2017-03-222-10/+10
| | | | | | It is only used there Signed-off-by: Felix Fietkau <nbd@nbd.name>
* base-files: add generic board_name function to functions.shFelix Fietkau2017-03-221-0/+4
| | | | | | | This will be used to replace all those nasty board specific scripts that do basically the same thing Signed-off-by: Felix Fietkau <nbd@nbd.name>
* busybox: enable the "ip neigh" command (FS#618)Felix Fietkau2017-03-221-1/+1
| | | | | | | It is useful for creating static ARP entries. Adds about 1.9 KiB after gzip on MIPS. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: Fix race condition leading to wifi interfaces not coming up at ↵Vittorio Gambaletta2017-03-221-5/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | boot sometimes. In the drv_mac80211_setup function, mac80211_interface_cleanup is called to ask the kernel to delete all existing interfaces for the phy that is being configured via netlink. Later in the first function, mac80211_prepare_vif is called to set up the new interfaces as required. But sometimes, when mac80211_prepare_vif (and so the relevant `iw phy x interface add y` command) runs, the kernel might still be cleaning up the old interface with the same ifname. It usually takes very few time to do that; possibly a few milliseconds of sleep in the script after detecting this error condition could be enough, but the busybox sh does not support sub-second sleep intervals. When this happens, iw obviously fails to create the new interface; and the following message is printed in the system log, followed by subsequent failure messages from hostapd in case this would have been an AP interface. Tue Mar 14 04:21:57 2017 daemon.notice netifd: radio1 (2767): command failed: Too many open files in system (-23) This was a long-standing issue existing since at least OpenWrt Backfire, and today I finally managed to debug and (hopefully) solve it. It was happening very few times on most devices; but it was happening a lot more frequently on fast platforms with multiple radios, such as the powerpc-based dual-ath9k-radio tl-wdr4900-v1. Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
* ipq806x: remove v4.4 supportJohn Crispin2017-03-22128-22377/+0
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* ipq806x: set v4.9 as defaultJohn Crispin2017-03-221-1/+1
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* firmware: add custom IPQ wifi board definitionsChristian Lamparter2017-03-224-0/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the ath10k-devel ML Michael Kazior stated: "board-2 is a key-value store of actual board files. Some devices, notably qca61x4 hw3+ and qca4019 need distinct board files to be uploaded. Otherwise they fail in various ways." [0]. Later on Rajkumar Manoharan explained: "In QCA4019 platform, only radio specific calibration (pre-cal-data) is stored in flash. Board specific contents are read from board-2.bin. For each radio appropriate board data should be loaded. To fetch correct board data from board-2.bin bundle, pre-cal/radio specific caldata should be loaded first to get proper board id. |My understanding until now was that: | | * pre-cal data + board-2.bin info == actual calibration data Correct." [1]. The standard board-2.bin from the ath10k-firmware-qca4019 barely works on the RT-AC58U. Especially 5GHz clients fail to connect at all and if they do, they have very low throughput even right next to the router. Currently, the solution for this problem is to supply a custom board-2.bin for every device. To implement this feature, this method makes use of: Rafał Miłecki's "base-files: add support for overlaying rootfs content". This comes with a few limitations: 1. Since there can only be one board-2.bin at the right location, there can only one board overwrite installed at any time. (All packages CONFLICT with each other. It's also not possible to "builtin" multiple package.) 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. To create the individual board-2.bin: Use the ath10k-bdencoder utility from the qca-swiss-army-knife repository: <https://github.com/qca/qca-swiss-army-knife> The raw board.bin files have to be extracted from the vendor's source GPL.tar archieves. Signed-off-by: Alexis Green <agreen@cococorp.com> Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
* firmware: add IPQ fritz-tools FW extraction toolChristian Lamparter2017-03-225-0/+726
| | | | | | | Adds tools to access tffs3 and pre-calibration data required for ipq4019 based FritBoxes. Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
* ipq806x: make the dwc3 driver and required phy drivers built-inJohn Crispin2017-03-222-32/+6
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* ipq806x: enable QCE hardware crypto inside the kernelJohn Crispin2017-03-221-2/+19
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* ipq806x: add ipq4019 fritz4040 supportChristian Lamparter2017-03-227-4/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for AVM FRITZ!Box 4040. hardware highlights: SOC: IPQ4018 / QCA Dakota CPU: Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7 DRAM: 256 MiB Nanya NT5CC128M16IP FLASH: 32 MiB MXIC MX25L25635FMI ETH: Qualcomm Atheros QCA8075 Gigabit Switch (4 x LAN, 1 x WAN) USB: 1 x 3.0 (via Synopsys DesignWare DWC3 controller in the SoC) 1 x 2.0 (via Synopsys DesignWare DWC3 controller in the SoC) WLAN1: Qualcomm Atheros QCA4018 2.4GHz 802.11bgn 2:2x2 WLAN2: Qualcomm Atheros QCA4018 5GHz 802.11a/n/ac 2:2x2 INPUT: one WLAN and one WPS button LEDS: Power, WAN/Internet, WIFI, INFO (red and amber) and LAN. Serial: WARNING: The serial port needs a TTL/RS-232 v3.3 level converter! The Serial setting is 115200-8-N-1. The SoC's serial port is right next to the MXIC FLASH chip. The board has a unpopulated 1x4 0.1" header for it. Use a multimeter to figure out the pinout! This board currently needs an additional u-boot image in order to boot properly. Booting with EVA isn't possible ATM. Install Procedure: 0. It's highly recommended to connect to the serial port. The serial settings are listed above. 1. install a u-boot image for AVM Fritz!Box 4040 (see <https://github.com/chunkeey/FritzBox-4040-UBOOT/releases> and <https://github.com/chunkeey/FritzBox-4040-UBOOT/blob/master/upload-to-f4040.sh>) 2. upload the initramfs.itb image via tftp (u-boot listens to 192.168.1.1 - use binary transfer mode!) 3. connect to the FB4040 and use sysupgrade sysupgrade.bin to install the image. Works: - Switch and Ethernet (99%) - Buttons (WLAN, WPS) - FLASH (1 x 32MiB NOR Chip) - WLAN2G and WLAN5G - CPUFREQ scaling - PRNG - serial - Crypto Accelerator - sysupgrade (Read the flash instructions to avoid bricking) - full LEDE Install (Read the flash instructions to avoid bricking) - LEDs (Power, WAN, Info (red and amber), LAN) The LEDs are connected to the QCA8075 LED ports. The AR40xx driver contains a gpio-controller to handle these special "GPIOs". - USB Both 3.0 and 2.0 ports - many packages from other ARMv7 boards (This does include the RaspberryPi Model 2!) - ... Not planned: - WAN<->LAN short-cut - Qualcomm Secure Execution Environment - ... Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John Crispin <john@phrozen.org>
* ipq806x: add ipq4019 supportChristian Lamparter2017-03-2229-327/+21249
| | | | | Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John Crispin <john@phrozen.org>
* uboot-fritz4040: add an ipq806x u-boot for FritzBox 4040Felix Fietkau2017-03-224-0/+401
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* procd: nand: make it possible to configure kernel and ubi partitionChristian Lamparter2017-03-221-2/+2
| | | | | | | | | | With this patch, the nand.sh script no longer overwrites CI_KERNELPART and CI_UBIPART if they have been set before. This allows platforms specify alternative values for these variables. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* mac80211: enable ath10k AHB support for QCA4019Christian Lamparter2017-03-224-51/+50
| | | | | | | | | | | | | | | | This patch enables the ATH10K_AHB support for the QCA4019 devices on the AHB bus. This patch also removes 936-ath10k_skip_otp_check.patch because it breaks the AHB device identification. "Patch is wrong. I find it frustrating OpenWRT/LEDE doesn't try to work with upstream on ixing these things right." [1] <https://www.mail-archive.com/ath10k@lists.infradead.org/msg05896.html> It also limits ath10k memory hunger (This is a problem with 128MiB RAM) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath10k-firmware: firmware package for QCA4019 devicesChristian Lamparter2017-03-221-0/+18
| | | | | | | This patch adds a new firmware package to ath10k-firmware called ath10k-firmware-qca4019. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ath10k-firmware: bump to latest versionChristian Lamparter2017-03-221-3/+3
| | | | Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* include: add KERNEL_LOAD_ADDR to TARGET_VARSJohn Crispin2017-03-221-1/+1
| | | | | | This will allow us to override the variable from within a Device template. Signed-off-by: John Crispin <john@phrozen.org>
* openvpn: add extra respawn parametersMartin Schiller2017-03-221-0/+3
| | | | | | | | | | | | | | | This change protects the openvpn instances to be marked as "in a crash loop" and thereby the connection retries will run infinitely. When the remote site of an openvpn connection goes down for some time (network failure etc.) the openvpn instance in an openwrt/lede device should not stop retrying to establish the connection. With the current limit of 5 retries, there is a user interaction required, which isn't really what you want when the device should simply do everything to keep the vpn connection up. Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* utils/tcpdump: Rework URLsDaniel Engberg2017-03-221-2/+2
| | | | | | | Add actual mirror and use main site as last resport Source: http://www.tcpdump.org/mirrors.html Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* libs/libpcap: Rework URLsDaniel Engberg2017-03-221-1/+2
| | | | | | | Add mirror and use main site as last resort. Source: http://www.tcpdump.org/mirrors.html Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* utils/util-linux: Update to 2.29.2Daniel Engberg2017-03-223-42/+8
| | | | | | | | | Update util-linux to 2.29.2 Remote 0001-fix-uClibc-ng-scanf-check.patch as it's been merged upstream. Refresh patches Change ncurses to ncursesw to fix compilation and avoid confusion Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* libs/openssl: Refresh mirror listDaniel Engberg2017-03-221-5/+6
| | | | | | | Refresh mirror list, some doesn't offer OpenSSL and add main site as last resort. Source: https://www.openssl.org/source/mirror.html Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* kernel: fix builds with kmod-drm-vc4 and kmod-backlight enabledRafał Miłecki2017-03-221-0/+4
| | | | | | | This fixes: JDI LT070ME05000 WUXGA DSI panel (DRM_PANEL_JDI_LT070ME05000) [N/m/?] (NEW) aborted! Signed-off-by: Rafał Miłecki <rafal@milecki.pl>