aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* firmware-utils: tplink-safeloader: add TP-Link Archer C25 v1Ludwig Thomeczek2017-06-111-1/+58
| | | | | | | | | This adds the necessary firmware layout definitions for the Archer C25. It has an addtional partition containing some static data ("extra-para") without which no factory flash is possible, therefore put_data() has been added. Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
* ar71xx: add support for TP-Link Archer C25 v1Ludwig Thomeczek2017-06-1114-0/+274
| | | | | | | | | | | | | | | | | | | The TP-Link Archer C25 is a low-cost dual-band router. Specification: - CPU: Atheros QCA9561 775 MHz - RAM: 64 MB - Flash: 8 MB - Wifi: 3x3 2.4 GHz (integrated), 1x1 5 GHz QCA9887 - NET: 5x 10/100 Mbps Ethernet Some LEDs are controlled by an additional 74HC595 chip. Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net> [minor code style fixes, boards alphabetical order fixes, reworked commit message] Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: add support for TP-Link TL-WR942N v1Serg Studzinskii2017-06-1115-2/+370
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TP-Link TL-WR942N v1 is a 2.4 GHz single-band N450 router, based on Qualcomm/Atheros QCA9561. Specification: - 775/650/258 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 3T3R 2.4 GHz - 5x 10/100 Mbps Ethernet - 2x USB 2.0 - 11x LED (most are controlled by 74HC595) - 2x button - UART header on PCB* * Serial console is disabled in OEM non-beta firmwares and corresponding GPIO pins 14 and 15 are assigned to control USB1 and USB2 LEDs by production (non-beta) U-Boot and firmware. Currently not working: 1. USB1 and USB2 LEDs if UART RX and TX pins are assigned to their GPIOs by some U-Boot versions. Flash instruction under vendor GUI: 1. Download "lede-ar71xx-generic-tl-wr942n-v1-squashfs-factory.bin". 2. Go to WEB interface and perform usual firmware upgrade. FLash instruction under U-Boot recovery mode (doesn't work in beta firmware): 1. Setup PC with static IP "192.168.0.66/24" and tftp server. 2. Change "*-factory" image filename to "WR942v1_recovery.bin" and make it available to download from your tftp server. 3. Press "reset" button and power up the router, wait till "WPS" LED turns on. Flash instruction under U-Boot, using UART (can be done only with preinstalled UART-enabled U-Boot version!): 1. Use "tpl" to stop autobooting and obtain U-Boot CLI access. 2. Setup ip addresses for U-Boot and your tftp server. 3. Issue below commands: tftp 0x81000000 lede-ar71xx-generic-tl-wr942n-v1-sysupgrade.bin erase 0x9f020000 +$filesize cp.b 0x81000000 0x9f020000 $filesize reset Signed-off-by: Serg Studzinskii <serguzhg@gmail.com> [minor code style fixes, extended commit message] Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: move WRTnode2Q to generic build targetPiotr Dymacz2017-06-113-8/+9
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: simplify Ubiquiti devices definitionsPiotr Dymacz2017-06-111-45/+29
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: mikrotik: shorten DEVICE_TITLEPiotr Dymacz2017-06-111-4/+4
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: use simply expanded variablesPiotr Dymacz2017-06-116-202/+202
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: update GL.iNet boards DEVICE_TITLEPiotr Dymacz2017-06-111-5/+5
| | | | | | | | Use "GL.iNet" as vendor name (based on information from the vendor, this is registered name of the company) and align model names with official website. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: fix 8devices boards DEVICE_TITLEPiotr Dymacz2017-06-111-2/+2
| | | | | | Be consistent with DEVICE_TITLE syntax and use vendor + board names. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: drop unused mtdlayouts from legacy.mkPiotr Dymacz2017-06-111-3/+0
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: cosmetic: drop redundant empty linesPiotr Dymacz2017-06-115-23/+0
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: add ROOTFS_SIZE to DEVICE_VARSPiotr Dymacz2017-06-111-4/+7
| | | | | | Also use ROOTFS_SIZE variable in place of static values. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: keep custom Build/* functions in separate filesPiotr Dymacz2017-06-113-53/+53
| | | | | | | | Most of the custom Build/* functions in ar71xx target are rarely used by image building code for devices from more than one subtarget. As they don't need to be always included, move them to corresponding *.mk files. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: keep DEVICE_VARS and Build/* at the beginningPiotr Dymacz2017-06-114-60/+60
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: simplify Compex devices definitionsPiotr Dymacz2017-06-111-20/+12
| | | | Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: drop redundant kmod-usb-ohci from DEVICE_PACKAGESPiotr Dymacz2017-06-114-22/+22
| | | | | | kmod-usb-ohci is needed only on devices with AR71xx and AR7240 SoCs. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* ar71xx: image: drop redundant uboot-envtools from DEVICE_PACKAGESPiotr Dymacz2017-06-111-8/+4
| | | | | | uboot-envtools is already included in DEFAULT_PACKAGES for ar71xx. Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
* firmware-utils: tplink-safeloader: support strings as soft_versionJan Niehusmann2017-06-111-1/+36
| | | | | | | | | | | | | | | | | | | | | Some TP-Link routers (C25, C59, C60) contain a version string instead of a binary structure in the soft_version partition. Flashing LEDE from the original firmware's GUI, this version string taken from the soft_ver partition of the firmware image is written to the router's config partition. When using tftp recovery to go back to the original Archer C25 firmware, a version check compares that version to the version of the firmware to be flashed. Without proper contents in the config partition, reverting to the original firmware fails. Therefore, write the string "soft_ver:1.0.0\n" to that soft_ver partition. Signed-off-by: Jan Niehusmann <jan@gondor.com>
* ar71xx: fixup ar71xx/ar933x_wmac_reset: remove indefinite wait for wmac resetKevin Darbyshire-Bryant2017-06-111-1/+1
| | | | | | Fix malformed patch introduced by 296312fca13a4cab1d157e0474e1f0bcca6adf5c Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* dnsmasq: make bind-dynamic 'non-wildcard' interfaces defaultKevin Darbyshire-Bryant2017-06-113-4/+6
| | | | | | | | | | | | | | | 'non-wildcard' interfaces enables dnsmasq's '--bind-dynamic' mode. This binds to interfaces rather than wildcard addresses *and* keeps track of interface comings/goings via a unique Linux api. Quoting dnsmasq's author "bind-dynamic (bind individual addresses, keep up with changes in interface config) ... On linux, there's actually no sane reason not to use --bind-dynamic, and it's only not the default for historical reasons." Let's change history, well on LEDE at least, and change the default! Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* ar71xx/ar93xx_wmac_otp_read_word: fix wrongly used sizeof(*u)Alexander Couzens2017-06-111-2/+2
| | | | | Found-by: Coverity Scan #1330474 Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* linux/swconfig_get_attr: fix leak of msg in case of errorAlexander Couzens2017-06-111-1/+1
| | | | | Found-by: Coverity Scan #1330102 Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* linux/ledtrig-netdev: remove `unsigned < 0` checkAlexander Couzens2017-06-111-1/+1
| | | | | Found-by: Coverity Scan Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* ar71xx/ar933x_wmac_reset: remove indefinite wait for wmac resetAlexander Couzens2017-06-111-2/+1
| | | | | Found-by: Coverity Scan #1329327 Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* ar71xx/ag71xx_ethtool: don't return uninitialized return value on successAlexander Couzens2017-06-111-1/+1
| | | | | | | | ag71xx_ethtool_set_ringparam() will return an uninitialized value on success. Found-by: Coverity Scan #1330877 Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* ar71xx/ag71xx_mdio_probe: fix a memory leak when probe failsAlexander Couzens2017-06-111-1/+1
| | | | | Found-by: Coverity Scan #1330233 Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* ar71xx/ag71xx_ar7240_get_port_link: fix off-by-one check on argument `port`Alexander Couzens2017-06-111-2/+2
| | | | | Found-by: Coverity Scan #1329901 Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* base-files: board.json's switch reset means existence, not argumentJonas Gorski2017-06-111-1/+4
| | | | | | | Don't pass the value unconditionally to swconfig as a parameter but instead only call reset if it is 1. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* brcm63xx: probe SPI connected switches through DTJonas Gorski2017-06-1039-164/+198
| | | | | | Now that we can configure the switches through DT, do so. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* b53: allow configuration through device treeJonas Gorski2017-06-103-19/+180
| | | | | | | Add support for the same binding as upstream b53 to allow an easy switch. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* brcm63xx: switch to hardware led controllersJonas Gorski2017-06-1011-195/+238
| | | | | | | Instead of bit banging SPI to talk to the GPIO chip, use the hardware led controllers intended for controlling the LEDs. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* brcm63xx: leds-bcm6328: fix signal assignments for leds 4~7Jonas Gorski2017-06-101-0/+34
| | | | | | Properly use modulus for bit calculation for LEDs 4 to 7. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* brcm63xx: dsl-275xb-d: configure switch ledsJonas Gorski2017-06-101-0/+7
| | | | | | Add pinctrl configuration to configure the switch leds on DSL-275XB. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* brcm63xx: add pinctrl supportJonas Gorski2017-06-10112-682/+6728
| | | | | | | Add and enable pincontrol drivers, and update dts(i) files with appropriate hogs. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* kernel: make regmap LZO cache optionalJonas Gorski2017-06-106-22/+240
| | | | | | | There are no users, so hide it and let future users select it. Saves about ~17 kB on MIPS. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* brcm63xx: backport upstream generic gpio changesJonas Gorski2017-06-105-19/+2727
| | | | | | Backport patches that add a data pointer to gpio_chip. Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
* kexec-tools: bump version and add support for crashdump kernelDaniel Golle2017-06-095-24/+265
| | | | | | | | | | | | | | | | | | | | | | | split kexec-tools into two packages, kexec and kdump. * kexec to simply execute a new kernel * kdump is for loading and collecting debris of a crashed kernel with support for kdump forensics. In order to properly support booting into a crashkernel, an init script as well as UCI configuration has been added. As modifying the kernel cmdline is required for this to work in x86 platforms use an uci-defaults script to modify /boot/grub/grub.cfg. To test collecting crash information, use the 'c' sysrq-trigger, ie. echo c > /proc/sysrq-trigger This should result in the crash kernel being executed and (depending on the configution) dmesg and/or vmcore getting saved. To check if the crash kernel was loaded properly, use the 'status' command of the kdump init script. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* dnsmasq: add dhcp-script hook conditionallyHans Dedecker2017-06-092-2/+14
| | | | | | | | | | | | Commit b32689afd6a661339861086c669e15c936293cf8 added support for dhcp-script hook. Adding dhcp-script config option results into two instances of dnsmasq being run which triggered oom issues on platforms having low memory. The dnsmasq dhcp-script config option will now only be added if at least one of the dhcp, tftp, neigh hotplug dirs has a regular hotplug file or if the dhcpscript uci config option is specified. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* bcm53xx: include wpad-mini only on devices with (supported) wirelessRafał Miłecki2017-06-082-13/+15
| | | | | | | Don't include wpad-mini when it's useless just like we don't include useless wireless drivers. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* base-files: network.sh: fix a number of IPv6 logic flawsJo-Philipp Wich2017-06-081-17/+48
| | | | | | | | | | | | | | | | | | | | | | * Change network_get_subnet6() to sensibly guess a suitable prefix Attempt to return the first non-linklocal, non-ula range, then attempt to return the first non-linklocal range and finally fall back to the previous behaviour of simply returning the first found item. * Fix network_get_ipaddrs_all() Instead of replicating the flawed logic appending a fixed ":1" suffix to IPv6 addresses, rely on network_get_ipaddrs() and network_get_ipaddrs6() to build a single list of all interface addresses. * Fix network_get_subnets6() Instead of replicating the flawed logic appending a fixed ":1" suffix to IPv6 addresses, rely on the ipv6-prefix-assignment.local-address field to figure out the proper network address. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* mwlwifi: update to version 10.3.4.0 / 2017-06-06Jo-Philipp Wich2017-06-081-3/+3
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* include/toplevel: set env GIT_ASKPASS=/bin/trueAlexander Couzens2017-06-081-0/+1
| | | | | | | | When git-https request a service (e.g. github) which ask for credentials git will pass this request to the user resulting download.pl to wait for user input. Set GIT_ASKPASS to stop asking. Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* base-files: network.sh: properly report local IPv6 addressesJo-Philipp Wich2017-06-082-18/+14
| | | | | | | | | | Rework the network_get_ipaddr6() and network_get_ipaddrs6() functions to fetch the effective local IPv6 address of delegated prefix from the "local-address" field instead of naively hardcoding ":1" as static suffix. Fixes FS#829. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: ensure that flock is available for make downloadFelix Fietkau2017-06-081-1/+1
| | | | | | | It ensures that make download can parallelize downloads, even when some packages download the same files (e.g. gcc/initial, gcc/final) Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: update kernel 4.9 to 4.9.31Jo-Philipp Wich2017-06-0821-789/+700
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the following security vulnerabilities: CVE-2017-8890 The inet_csk_clone_lock function in net/ipv4/inet_connection_sock.c in the Linux kernel through 4.10.15 allows attackers to cause a denial of service (double free) or possibly have unspecified other impact by leveraging use of the accept system call. CVE-2017-9074 The IPv6 fragmentation implementation in the Linux kernel through 4.11.1 does not consider that the nexthdr field may be associated with an invalid option, which allows local users to cause a denial of service (out-of-bounds read and BUG) or possibly have unspecified other impact via crafted socket and send system calls. CVE-2017-9075 The sctp_v6_create_accept_sk function in net/sctp/ipv6.c in the Linux kernel through 4.11.1 mishandles inheritance, which allows local users to cause a denial of service or possibly have unspecified other impact via crafted system calls, a related issue to CVE-2017-8890. CVE-2017-9076 The dccp_v6_request_recv_sock function in net/dccp/ipv6.c in the Linux kernel through 4.11.1 mishandles inheritance, which allows local users to cause a denial of service or possibly have unspecified other impact via crafted system calls, a related issue to CVE-2017-8890. CVE-2017-9077 The tcp_v6_syn_recv_sock function in net/ipv6/tcp_ipv6.c in the Linux kernel through 4.11.1 mishandles inheritance, which allows local users to cause a denial of service or possibly have unspecified other impact via crafted system calls, a related issue to CVE-2017-8890. CVE-2017-9242 The __ip6_append_data function in net/ipv6/ip6_output.c in the Linux kernel through 4.11.3 is too late in checking whether an overwrite of an skb data structure may occur, which allows local users to cause a denial of service (system crash) via crafted system calls. Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8890 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9074 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9075 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9076 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9077 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9242 Ref: https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.31 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: really select kernel 4.4.71Hauke Mehrtens2017-06-071-1/+1
| | | | | | | The previous commit f4a4f324cb76ad ("kernel: update kernel 4.4 to 4.4.71") missed the line which changes the kernel version, add it now. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: update kernel 4.4 to 4.4.71Jo-Philipp Wich2017-06-076-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the following security vulnerabilities: CVE-2017-8890 The inet_csk_clone_lock function in net/ipv4/inet_connection_sock.c in the Linux kernel through 4.10.15 allows attackers to cause a denial of service (double free) or possibly have unspecified other impact by leveraging use of the accept system call. CVE-2017-9074 The IPv6 fragmentation implementation in the Linux kernel through 4.11.1 does not consider that the nexthdr field may be associated with an invalid option, which allows local users to cause a denial of service (out-of-bounds read and BUG) or possibly have unspecified other impact via crafted socket and send system calls. CVE-2017-9075 The sctp_v6_create_accept_sk function in net/sctp/ipv6.c in the Linux kernel through 4.11.1 mishandles inheritance, which allows local users to cause a denial of service or possibly have unspecified other impact via crafted system calls, a related issue to CVE-2017-8890. CVE-2017-9076 The dccp_v6_request_recv_sock function in net/dccp/ipv6.c in the Linux kernel through 4.11.1 mishandles inheritance, which allows local users to cause a denial of service or possibly have unspecified other impact via crafted system calls, a related issue to CVE-2017-8890. CVE-2017-9077 The tcp_v6_syn_recv_sock function in net/ipv6/tcp_ipv6.c in the Linux kernel through 4.11.1 mishandles inheritance, which allows local users to cause a denial of service or possibly have unspecified other impact via crafted system calls, a related issue to CVE-2017-8890. CVE-2017-9242 The __ip6_append_data function in net/ipv6/ip6_output.c in the Linux kernel through 4.11.3 is too late in checking whether an overwrite of an skb data structure may occur, which allows local users to cause a denial of service (system crash) via crafted system calls. Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8890 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9074 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9075 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9076 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9077 Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9242 Ref: https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.71 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* automake: import upstream fix for perl 5.26Daniel Golle2017-06-071-0/+30
| | | | | | | | Build broke as distributions now include Perl 5.26 and automake triggered an "Unescaped left brace in regex" error. Import upstream commit 13f00eb449 to fix that. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* gdb: disable simulator ; it's broken on ppcAlexandru Ardelean2017-06-071-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Error is: ``` ompile-loc2c.o compile-c-support.o inflow.o init.o \ ../sim/ppc/libsim.a -lreadline ../opcodes/libopcodes.a ../bfd/libbfd.a -L./../zlib -lz ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -lncurses -lm ../libiberty/libiberty.a build-gnulib/import/libgnu.a -ldl -Wl,--dynamic-list=./proc-service.list ../sim/ppc/libsim.a(idecode.o): In function `update_time_from_event': idecode.c:(.text+0x170): undefined reference to `error' ../sim/ppc/libsim.a(idecode.o): In function `event_queue_tick': idecode.c:(.text+0x1cc): undefined reference to `error' idecode.c:(.text+0x28c): undefined reference to `error' idecode.c:(.text+0x318): undefined reference to `error' ../sim/ppc/libsim.a(idecode.o): In function `cpu_halt.constprop.6': idecode.c:(.text+0x398): undefined reference to `error' ../sim/ppc/libsim.a(idecode.o):idecode.c:(.text+0x4e4): more undefined references to `error' follow collect2: error: ld returned 1 exit status Makefile:1420: recipe for target 'gdb' failed make[5]: *** [gdb] Error 1 ``` Seems others are running into this as well. The problem seems to be that some code may be built as C++ and not C, which may explain the linker error. On this thread reply: https://sourceware.org/ml/gdb/2016-11/msg00045.html it mentions that the simulator should not call GDB's "error" function directly, but rather use the "host_callback" struct. I have no idea about the use of the GDB simulator within the OpenWrt/LEDE community. So, I took the easier route, which is to disable the simulator. (Also suggested here: https://sourceware.org/ml/gdb/2016-11/msg00047.html ) If needed, I can make an effort to fix the simulator for PPC. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* gdb: remove Build/Compile rule ; default one worksAlexandru Ardelean2017-06-071-7/+0
| | | | Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>