summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* OpenWrt v18.06.0: adjust config defaultsv18.06.0Jo-Philipp Wich2018-07-305-9/+11
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* Revert "ar71xx: define switch for rb-952ui-5ac2nd"Jo-Philipp Wich2018-07-301-2/+2
| | | | | | | | | This reverts commit 3442ec5d5724ca747c9f76b949dc8d21c94228c0. The device behaviour is reportedly erratic so let's not take chances and leave this out for now. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ar71xx: define switch for rb-952ui-5ac2ndThibaut VARÈNE2018-07-301-2/+2
| | | | | | | | QCA9533 built-in switch can be configured Tested-by: Thibaut VARÈNE <hacks@slashdirt.org> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> (cherry picked from commit 0e43c31ebde996ca88f5857bb7e6c4cbf3f65756)
* imagebuilder: add function to show manifestPaul Spooren2018-07-301-2/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | Tested with 18.06.0-rc2/ar71xx/generic/tl-wdr4300-v1, image & list This PR is based on the work of @fewckert[1] with slight improvements. Add function `manifest` to show the manifest of the produced image, before actually building it. The manifest contains an orderd list of package name and version. This is usefull to check package dependencies but also determine a unique and reproducible image name before building the package. The sysupgrade server[2] builds images on request with individual package selection. To distignish between created images which contain differnt packages, the EXTRA_IMAGE_NAME is set to a shortend hash of the manifest's content. So far the image was renamed afterwards as the manifests content was unknown, however this corrupts the signed sha256sums. This patch allows a clean solution as to dtermine the manifest in advance and set the EXTRA_IMAGE_NAME accordingly. [1]: https://github.com/lede-project/source/pull/1591 [2]: https://github.com/aparcar/attendedsysupgrade-server Signed-off-by: Paul Spooren <mail@aparcar.org> (cherry-picked from commit 869b0d11db)
* ar71xx:add support for E750G v8张鹏2018-07-3012-2/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qxwlan E750G v8 is based on Qualcomm QCA9344. Specification: - 560/450/225 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 8/16 MB of FLASH (SPI NOR) - 2T2R 2.4G GHz (AR9344) - 2x 10/100 Mbps Ethernet (PoE support) - 2x 10/100/1000 Mbps Ethernet - 7x LED (6 driven by GPIO) - 1x button (reset) - 1x DC jack for main power input (9-48 V) - UART (J23) and LEDs (J2) headers on PCB Flash instruction (using U-Boot CLI and tftp server): - Configure PC with static IP 192.168.1.10 and tftp server. - Rename "sysupgrade" filename to "firmware.bin" and place it in tftp server directory. - Connect PC with one of RJ45 ports, power up the board and press "enter" key to access U-Boot CLI. - Use the following command to update the device to OpenWrt: "run lfw". Flash instruction (using U-Boot web-based recovery): - Configure PC with static IP 192.168.1.xxx(2-254)/24. - Connect PC with one of RJ45 ports, press the reset button, power up the board and keep button pressed for around 6-7 seconds, until LEDs start flashing. - Open your browser and enter 192.168.1.1, select "sysupgrade" image and click the upgrade button. Signed-off-by: 张鹏 <sd20@qxwlan.com> (cherry picked from commit 53a45020135b504cb4bee0fa8d98c8eaf6391066)
* ar71xx:add support for E750A v4张鹏2018-07-3011-1/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qxwlan E750A v4 is based on Qualcomm QCA9344. Specification: - 560/450/225 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 8/16 MB of FLASH (SPI NOR) - 2T2R 5G GHz (AR9344) - 2x 10/100 Mbps Ethernet (one port with PoE support) - 1x miniPCIe slot (USB 2.0 bus only) - 7x LED (6 driven by GPIO) - 1x button (reset) - 1x DC jack for main power input (9-48 V) - UART (J23) and LEDs (J2) headers on PCB Flash instruction (using U-Boot CLI and tftp server): - Configure PC with static IP 192.168.1.10 and tftp server. - Rename "sysupgrade" filename to "firmware.bin" and place it in tftp server directory. - Connect PC with one of RJ45 ports, power up the board and press "enter" key to access U-Boot CLI. - Use the following command to update the device to OpenWrt: "run lfw". Flash instruction (using U-Boot web-based recovery): - Configure PC with static IP 192.168.1.xxx(2-254)/24. - Connect PC with one of RJ45 ports, press the reset button, power up the board and keep button pressed for around 6-7 seconds, until LEDs start flashing. - Open your browser and enter 192.168.1.1, select "sysupgrade" image and click the upgrade button. Signed-off-by: 张鹏 <sd20@qxwlan.com> (cherry picked from commit ac03d51a3f4daa2f6a2a83f041dcd71674a9f724)
* ar71xx:add support for E558 v2张鹏2018-07-3012-0/+217
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qxwlan E558 v2 is based on Qualcomm QCA9558 + AR8327. Specification: - 720/600/200 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 8/16 MB of FLASH (SPI NOR) - 2T2R 2.4 GHz (QCA9558) - 3x 10/100/1000 Mbps Ethernet (one port with PoE support) - 4x miniPCIe slot (USB 2.0 bus only) - 1x microSIM slot - 5x LED (4 driven by GPIO) - 1x button (reset) - 1x 3-pos switch - 1x DC jack for main power input (9-48 V) - UART (JP5) and LEDs (J8) headers on PCB Flash instruction (using U-Boot CLI and tftp server): - Configure PC with static IP 192.168.1.10 and tftp server. - Rename "sysupgrade" filename to "firmware.bin" and place it in tftp server directory. - Connect PC with one of RJ45 ports, power up the board and press "enter" key to access U-Boot CLI. - Use the following command to update the device to OpenWrt: "run lfw". Flash instruction (using U-Boot web-based recovery): - Configure PC with static IP 192.168.1.xxx(2-254)/24. - Connect PC with one of RJ45 ports, press the reset button, power up the board and keep button pressed for around 6-7 seconds, until LEDs start flashing. - Open your browser and enter 192.168.1.1, select "sysupgrade" image and click the upgrade button. Signed-off-by: 张鹏 <sd20@qxwlan.com> (cherry picked from commit b74f63f81d6121b5eace3f0c0c87399f7e0fde92)
* brcm2708: split sdcard.img.gz into a sysupgrade and factory imageChristian Lamparter2018-07-301-2/+3
| | | | | | | | | | | | | | | | | | | @vahid-dan reported a issue with extracting the rpi images with Gnome's Archive Manager: "Ubuntu Archive Manager cannot extract the file and it just throws a general error message: "An error occurred while extracting files". <https://forum.lede-project.org/t/corrupted-pre-built-v18-06-0-rc2-image-for-rpi> @blogic told me to split the single sdcard.img.gz for the RPi into a sysupgrade and a factory image for all brcm2708 targets. The factory images will have no metadata attached, this way these utilities that can't deal with the attached metadata will not fail for no reason. Cc: John Crispin <john@phrozen.org> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 7516a960113d512cb2909f40bd07caf2a6c547b1)
* base-files: network.sh: gracefully handle missing network.interface ubus nsJo-Philipp Wich2018-07-302-5/+11
| | | | | | | | | | | | | | | | | | | | | When attempting to use any of the functions in network.sh while netifd is not started yet, the ubus interface dump query will fail with "Not found", yielding an empty response. Subsequently, jsonfilter is invoked with an empty string instead of a valid JSON document, causing it to emit a second "unexpected end of data" error. This caused the dnsmasq init script to log the following errors during early boot on some systems: procd: /etc/rc.d/S19dnsmasq: Command failed: Not found. procd: /etc/rc.d/S19dnsmasq: Failed to parse json data: unexpected end of data. Fix the issue by allowing the ubus query to fail with "Not found" but still logging other failures, and by passing an empty JSON object to jsonfilter if the interface status cache is empty. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* iwinfo: update to version 2018-07-24Nick Hainke2018-07-301-4/+4
| | | | | | | | | | Update to new iwinfo version. Adds support for channel survey. Adds ubus support. Etc. Signed-off-by: Nick Hainke <vincent@systemli.org> (cherry picked from commit 296ae7ab89c179ff39feff973000fcb864754df7)
* iwinfo: bump to latest git HEADJohn Crispin2018-07-301-3/+3
| | | | | | | | | e59f925 hardware: add device ids for QCA9984, 88W8887 and 88W8964 radios 2a82f87 nl80211: back out early when receiving FAIL-BUSY reply 77c32f0 nl80211: fix code calculating average signal and rate Signed-off-by: John Crispin <john@phrozen.org> (cherry picked from commit 20b76c0a5bb7a13dcc739bd644f0f968e3b3c68a)
* ar71xx: rbspi: fix RB wAP AC gpio conflict and LEDThibaut VARÈNE2018-07-302-11/+9
| | | | | | | | | | | | | | | | e15c63a37574bd15ce3a6636c2f04741ab76f7b9 introduced code that was trying to register GPIO 1 as both an LED and a button. The OEM source makes it clear that LED1 is not wired to the SoC GPIOs. GPIO 1 is the reset button. Furthermore the (green) power led default state should also be defined, (matching OEM source), and it should be used by diag.sh since it's currently the only software-controllable LED. This patch fixes these issues and renames the corresponding #defines for clarity Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> (cherry picked from commit e99f760235bb45716018faab52d31ce8165f49a0)
* ar71xx: add missing diag LED support for RB wAP 2nDThibaut VARÈNE2018-07-301-1/+2
| | | | | | | | 3b15eb06c366cf3805590a61f22e966a95bf8101 did not include diag.sh edit Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> (cherry picked from commit 5c2419b6f82e2ec49ecac17ae17fdbdb151701c7)
* brcm47xx: rework model detectionJo-Philipp Wich2018-07-302-18/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | On brcm47xx boards, the model ID is the combination of the "boardtype" nvram variable and an optional supplemental "boardnum" variable while the human readable model name is usually exposed in the "machine" field of the /proc/cpuinfo file. Move the extraction of the board nvram variables and model name string into the 01_sysinfo file and rework the 01_detect board configuration script to solely use the prepared sysinfo values without performing own detection logic. As a consequence, we can drop the ucidef_set_board_id() and ucidef_set_model_name() invocations in favor to the generic behaviour which copies the /tmp/sysinfo/{board_name,model} values into the board.json "id" and "name" fields respectively. Since "01_detect" only contains network configuration logic after this change, move it to "01_network" and rename the contained "detect_by_xxx" functions to "configure_by_xxx" instead, to avoid potential confusion. Fixes FS#1576 Acked-by: Rafał Miłecki <rafal@milecki.pl> Signed-off-by: Jo-Philipp Wich <jo@mein.io> (cherry picked from commit d7d10f2c1e8511fe07c9760e85f2272a85168f8d)
* bcm53xx: revert SPI controller commit breaking flash readsRafał Miłecki2018-07-291-0/+146
| | | | | | | | That upstream commit caused instability in flash reads. It was reported but there isn't any proper fix as for now. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 0417b08b06dd946c2670d0a19e3426c61e33f6be)
* dnsmasq: bump to dnsmasq v2.80test3Kevin Darbyshire-Bryant2018-07-2820-1565/+6
| | | | | | | | | | | | | | | | | | Refresh patches Upstream commits since last bump: 3b6eb19 Log DNSSEC trust anchors at startup. f3e5787 Trivial comment change. c851c69 Log failure to confirm an address in DHCPv6. a3bd7e7 Fix missing fatal errors when parsing some command-line/config options. ab5ceaf Document the --help option in the french manual 1f2f69d Fix recurrent minor spelling mistake in french manual f361b39 Fix some mistakes in french translation of the manual eb1fe15 When replacing cache entries, preserve CNAMES which target them. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit 1e93ef84981f2722138824413a1b197fdab7fb6c)
* dnsmasq: don't use network functions at boottime (FS#1542)Hans Dedecker2018-07-282-6/+15
| | | | | | | | | | | | | As dnsmasq is started earlier than netifd usage of network.sh functions at boottime will fail; therefore don't call at boottime the functions which construct the dhcp pool/relay info. As interface triggers are installed the dhcp pool/relay info will be constructed when the interface gets reported as up by netifd. At the same time also register interface triggers based on DHCP relay config. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> (cherry picked from commit 2336b942b37f265c59547d738ca558b61102833d)
* dnsmasq: bump to latest patches on 2.80rc2Kevin Darbyshire-Bryant2018-07-2819-11/+406
| | | | | | | | | | | | | | | | Refresh patches and backport upstream to current HEAD: a997ca0 Fix sometimes missing DNSSEC RRs when DNSSEC validation not enabled. 51e4eee Fix address-dependent domains for IPv6. 05ff659 Fix stupid infinite loop introduced by preceding commit. db0f488 Handle some corner cases in RA contructed interfaces with addresses changing interface. 7dcca6c Warn about the impact of cache-size on performance. 090856c Allow zone transfer in authoritative mode whenever auth-peer is specified. cc5cc8f Sane error message when pcap file header is wrong. c488b68 Handle standard and contructed dhcp-ranges on the same interface. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit fbf475403b911f46e91b57fb7a6cf3c65276464c)
* brcm47xx: revert upstream commit breaking BCM4718A1Rafał Miłecki2018-07-271-0/+76
| | | | | | | This fixes kernel hang when booting on BCM4718A1 (& probably BCM4717A1). Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 4c1aa64b4d804e77dfaa8d53e5ef699fcced4b18)
* mac80211: backport brcmfmac fixes & debugging helpers from 4.18Rafał Miłecki2018-07-279-2/+341
| | | | | | | | | | | | | The most important is probably regression fix in handling platform NVRAM. That bug stopped hardware from being properly calibrated breaking e.g. 5 GHz for Netgear R8000. Other than that it triggers memory dumps when experiencing firmware problems which is important for debugging purposes. Fixes: 2811c97803e5 ("mac80211: backport brcmfmac firmware & clm_blob loading rework") Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit b26214adb53da2816ff830b6cd6e31e1dafa2635)
* odhcpd: update to latest git HEADJo-Philipp Wich2018-07-261-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: 81a281e dhcpv6-ia: fix border assignment size setting a2ffc59 dhcpv6-ia: fix status code for not on link IAs 5b087a6 dhcpv6-ia: improve error checking in assign_pd() c9114a1 config: fix wrong assignment bb8470f dhcpv4: delay forced renew transaction start 62a1b09 dhcpv4: fix DHCP address space logic d5726ff dhcpv4: improve logging when sending DHCP messages 9484351 odhcpd: call handle_error when socket error can be retrieved c45e2eb dhcpv6: fix out of bounds write in handle_nested_message() c2ff5af dhcpv6-ia: log renew messages as well 676eb38 router: fix possible segfault in send_router_advert() 392701f odhcpd: fix passing possible negative parameter 029123b treewide: switch to C-code style comments 6b79748 router: improve error checking 12e21bc netlink: fix incorrect sizeof argument d7aa414 dhcpv6: improve error checking in dhcpv6_setup_interface() 373495a ubus: fix invalid ipv6-prefix json 79d5e6f ndp: improve error checking d834ae3 dhcpv4: fix error checking in dhcpv4_setup_interface() f2aa383 dhcpv4: fix out of bound access in dhcpv4_put 4591b36 dhcpv4: improve error checking in dhcpv4_setup_interface() 4983ee5 odhcpd: fix strncpy bounds c0f6390 odhcpd: Check if open the ioctl socket failed 345bba0 dhcpv4: improve error checking in handle_dhcpv4() 44cce31 ubus: avoid dumping interface state with NULL message Cherry picked and squashed from commits: b7ef10cbf0 odhcpd: update to latest git HEAD 98a6bee09a odhcpd: update to latest git HEAD 88c88823d5 odhcpd: update to latest git HEAD Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ubus: update to latest git HEADJo-Philipp Wich2018-07-261-3/+3
| | | | | | | 40e0931 libubus: pass an empty UBUS_ATTR_DATA block if msg is NULL on invoke Signed-off-by: Jo-Philipp Wich <jo@mein.io> (cherry picked from commit 7316515891532a9d5f0b70db31a95d06f7b00e94)
* firewall: update to latest git HEAD and build with LTOHans Dedecker2018-07-261-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | Reduces .ipk size on MIPS from 41.6k to 41.1k Changes: 30463d0 zones: add interface/subnet bound LOG rules 0e77bf2 options: treat time strings as UTC times d2bbeb7 firewall3: make reject types selectable by user aa8846b ubus: avoid dumping interface state with NULL message Cherry picked and squashed from commits: a3f2451fba firewall: update to latest git HEAD 433d71e73e fw3: update to latest git HEAD ef96d1e34a firewall: compile with LTO enabled 1e83f775a3 firewall3: update to latest git HEAD 3ee2c76ae0 firewall: update to latest git HEAD Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> Signed-off-by: John Crispin <john@phrozen.org> Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ubus: update to latest git HEADJohn Crispin2018-07-251-3/+3
| | | | | | | 884be45 libubus: check for non-NULL data before running callbacks Signed-off-by: John Crispin <john@phrozen.org> (cherry picked from commit a5c3bbaf56d6fb442ea16f26042cec83c7c00454)
* libubox: update to latest git HEADJohn Crispin2018-07-251-3/+3
| | | | | | | c83a84a fix segfault when passed blobmsg attr is NULL Signed-off-by: John Crispin <john@phrozen.org> (cherry picked from commit 5dc32620c4aa66d05eb5585784ed954854e8194c)
* wireguard-tools: add wireguard_watchdog scriptAleksandr V. Piskunov2018-07-252-2/+63
| | | | | | | | | | | | | This watchdog script tries to re-resolve hostnames for inactive WireGuard peers. Use it for peers with a frequently changing dynamic IP. persistent_keepalive must be set, recommended value is 25 seconds. Run this script from cron every minute: echo '* * * * * /usr/bin/wireguard_watchdog' >> /etc/crontabs/root Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com> [bump the package release] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit 20c4819c7baf6f9b91420849caf30e5137bd75d6)
* wireguard: bump to 0.0.20180718Jason A. Donenfeld2018-07-251-2/+2
| | | | | | | | | | | | | | | 80b41cd version: bump snapshot fe5f0f6 recieve: disable NAPI busy polling e863f40 device: destroy workqueue before freeing queue 81a2e7e wg-quick: allow link local default gateway 95951af receive: use gro call instead of plain call d9501f1 receive: account for zero or negative budget e80799b tools: only error on wg show if all interfaces failk Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> [Added commit log to commit description] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit 57b808ec88315db6743b3159a04dbb16097597ea)
* wireguard: bump to 0.0.20180708Jason A. Donenfeld2018-07-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | * device: print daddr not saddr in missing peer error * receive: style Debug messages now make sense again. * wg-quick: android: support excluding applications Android now supports excluding certain apps (uids) from the tunnel. * selftest: ratelimiter: improve chance of success via retry * qemu: bump default kernel version * qemu: decide debug kernel based on KERNEL_VERSION Some improvements to our testing infrastructure. * receive: use NAPI on the receive path This is a big change that should both improve preemption latency (by not disabling it unconditionally) and vastly improve rx performance on most systems by using NAPI. The main purpose of this snapshot is to test out this technique. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> (cherry picked from commit 4630159294024c0718077e49dbb440919440de87)
* build: do not alter global default package selection from profilesJo-Philipp Wich2018-07-211-1/+0
| | | | | | | | | | | | | | | | | | | This partly reverts ca32373c951c651f4fe5d8f99ddeb8d4f20bbe3e which lets profiles that suppress packages to alter the package selection for all devices of the target when building with CONFIG_TARGET_PER_DEVICE_ROOTFS. In particular, this caused the brcm47xx Edimax PS-1208MFG profile to disable mtd, dropbear, firewall and other essential packages for all brcm47xx/generic builds. To solve this problem, prevent profiles from mangling the global DEFAULT_PACKAGES selection and restrict the supression of negated packages to the local PACKAGE variable list only. Fixes ca32373c95 ("target.mk: let profile remove from DEFAULT_PACKAGES") Signed-off-by: Jo-Philipp Wich <jo@mein.io> (cherry picked from commit 69ea512c62619b8b650d4e03d071b36a526734ce)
* WDR4900v1 remove dt node for absent hw crypto.Tim Small2018-07-211-0/+24
| | | | | | | | | | | | | | | | | | | The WDR4900v1 uses the P1040 SoC, so the device tree pulls in the definition for the related P1010 SoC. However, the P1040 lacks the CAAM/SEC4 hardware crypto accelerator which the P1010 device tree defines. If left defined, this causes the CAAM drivers (if present) to attempt to use the non-existent device, making various crypto-related operations (e.g. macsec and ipsec) fail. This commit overrides the incorrect dt node definition in the included file. See also: - https://bugs.openwrt.org/index.php?do=details&task_id=1262 - https://community.nxp.com/thread/338432#comment-474107 Signed-off-by: Tim Small <tim@seoss.co.uk> (cherry picked from commit e97aaf483c71fd5e3072ec2dce53354fc97357c9)
* iproute2: tc: backport canonical cake supportKevin Darbyshire-Bryant2018-07-212-150/+154
| | | | | | | | | | | | | | | | | | | iproute2's tc was updated to support the recently upstreamed cake qdisc. Backport this canonical support from upstream into iproute2 v4.16 There is no kernel kmod/userspace tc ABI change in this release from the previous package bump, so everyone can breath a sigh of relief. This is largely a code style change, the exception to prove the rule: option 'autorate_ingress' has been changed to 'autorate-ingress' to fit in with upstream option naming expectations. No openwrt package (e.g. sqm-scripts) has knowledge of 'autorate_ingress' thus only users who made their own scripts or used it within the 'dangerous configuration' options of sqm-scripts will be affected. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* build: fix compile error when a package includes itself in PROVIDESFelix Fietkau2018-07-201-1/+1
| | | | | Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry picked from commit 7c306ae640feb4d42b352175de27b034bd917938)
* apm821xx: fix sata access freezesChristian Lamparter2018-07-191-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original vendor's driver programmed the dma controller's AHB HPROT values to enable bufferable, privileged mode. This along with the "same priorty for both channels" fixes the freezes according to @takimata, @And.short, that have been reported on the forum by @ticerex. Furtheremore, @takimata reported that the patch also improved the performance of the HDDs considerably: |<https://forum.lede-project.org/t/wd-mybook-live-duo-two-disks/16195/55> |It seems your patch unleashed the full power of the SATA port. |Where I was previously hitting a really hard limit at around |82 MB/s for reading and 27 MB/s for writing, I am now getting this: | |root@OpenWrt:/mnt# time dd if=/dev/zero of=tempfile bs=1M count=1024 |1024+0 records in |1024+0 records out |real 0m 13.65s |user 0m 0.01s |sys 0m 11.89s | |root@OpenWrt:/mnt# time dd if=tempfile of=/dev/null bs=1M count=1024 |1024+0 records in |1024+0 records out |real 0m 8.41s |user 0m 0.01s |sys 0m 4.70s | |This means: 121 MB/s reading and 75 MB/s writing! | |[...] | |The drive is a WD Green WD10EARX taken from an older MBL Single. |I repeated the test a few times with even larger files to rule out |any caching, I'm still seeing the same great performance. OpenWrt is |now completely on par with the original MBL firmware's performance. Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* base-files: fix wrong sysctl parameter orderLuiz Angelo Daros de Luca2018-07-181-1/+1
| | | | | | | | | | | Restarting service sysctl echos multiple errors like: sysctl: -e: No such file or directory After the first filename, all remaining arguments are treated as files. Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
* igmpproxy: run in foreground for procdKevin Darbyshire-Bryant2018-07-182-2/+2
| | | | | | | | | | procd needs processes to stay in foreground to remain under its gaze and control. Failure to do so means service stop commands fail to actually stop the process (procd doesn't think it's running 'cos the process has exited already as part of its forking routing) Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit 9d5a2469304eb23b6d09432a6d9b6a57d0019d2a)
* mediatek: fix parallel build issues in image build codeJo-Philipp Wich2018-07-171-10/+4
| | | | | | | | | | Drop the parallel-unsafe custom Build/dtb macro and use the .dtb artifacts produced by the generic image build code. Also remove unused .dtb references in the mt7623 subtarget. Signed-off-by: Jo-Philipp Wich <jo@mein.io> (backported from commit 8194f9ef4a5ab4587e8f6cf1aec96ba89c5766fd)
* mtd: improve check for TRX header being already fixedRafał Miłecki2018-07-162-8/+9
| | | | | | | | | | | | First of all lengths should be compared after checking all blocks for being good/bad. It's because requested length may differ from a final one if there were some bad blocks. Secondly it makes sense to also compare crc32 since we already have a new one calculated. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 82498a7f7aa86ad0e93ef60d50dccaa0a9549e4c)
* mtd: support bad blocks within the mtd_fixtrx()Rafał Miłecki2018-07-162-7/+29
| | | | | | | | | | | | | | | | | Reading MTD data with (p)read doesn't return any error when accessing bad block. As the result, with current code, CRC32 covers "data" stored in bad blocks. That behavior doesn't match CFE's one (bootloader simply skips bad blocks) and may result in: 1) Invalid CRC32 2) CFE refusing to boot firmware with a following error: Boot program checksum is invalid Fix that problem by checking every block before reading its content. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 0f54489f754e7bd34e0430c57a11b6a54740d58e)
* kmod-sched-cake: bump to 20180716Kevin Darbyshire-Bryant2018-07-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bump to the latest cake recipe. This backports tc class support to kernel 4.9 and other than conditional kernel compilation pre-processor macros represents the cake that has gone upstream into kernel 4.19. Loud cheer! Fun may be had by changing cake tin classification for packets on ingress. e.g. tc filter add dev ifb4eth0 parent 800b: protocol ip u32 match \ ip dport 6981 0xffff action skbedit priority 800b:1 Where 800b: represents the filter handle for the ifb obtained by 'tc qdisc' and the 1 from 800b:1 represents the cake tin number. So the above example puts all incoming packets destined for port 6981 into the BULK (lowest priority) tin. f39ab9a Obey tin_order for tc filter classifiers 1e2473f Clean up after latest backport. 82531d0 Reorder includes to fix out of tree compilation 52cbc00 Code style cleanup 6cdb496 Fix argument order for NL_SET_ERR_MSG_ATTR() cab17b6 Remove duplicate call to qdisc_watchdog_init() 71c7991 Merge branch 'backport-classful' 32aa7fb Fix compilation on Linux 4.9 9f8fe7a Fix compilation on Linux 4.14 ceab7a3 Rework filter classification aad5436 Fixed version of class stats be1c549 Add cake-specific class stats 483399d Use tin_order for class dumps 80dc129 Add class dumping 0c8e6c1 Fix dropping when using filters c220493 Add the minimum class ops 5ed54d2 Start implementing tc filter/class support Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit c729c43b391e759b6700b28c8e02ba93fe15f8c2)
* qos-scripts: fix uci callback handlingTony Ambardar2018-07-163-29/+29
| | | | | | | | | | | | | | | | | The previous callback code was fragile, dependent on some UCI callback bugs and side-effects now fixed in master commit 73d8a6ab. Update scripts to use callbacks where appropriate and necessary, while using normal UCI config parsing for all else. This results in smaller, simpler, more robust code. Use callbacks in generate.sh to only process 'interface' defaults and the varying entries for 'reclassify', 'default' and 'classify' sections. Also switch qos-stat to use non-callback UCI handling. The current changes work independently of 73d8a6ab (i.e. both before and after), and are consistent with UCI config parsing documentation. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* base-files: fix UCI config parsing and callback handlingTony Ambardar2018-07-162-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are several long-standing issues present in the UCI shell API as documented in https://wiki.openwrt.org/doc/devel/config-scripting. They relate both to high-level, user-defined callback functions used to process UCI config files, and also to low-level functions used within scripts generally. The related problems have been encountered now and in the past, e.g. https://forum.openwrt.org/viewtopic.php?id=54295, and include: a) UCI parsing option() function and user-defined option_cb() callbacks being erroneously called during processing of "list" config file entries; b) normal usage of the low-level config_set() unexpectedy calling any defined option_cb() if present; and c) handling of the list_cb() not respecting the NO_CALLBACK variable. Root causes include a function stack "inversion", where the low-level config_set() function incorrectly calls the high-level option() function, intended only for processing the "option" keyword of UCI config files. This change addresses the inversion and other issues, making the option handling code more consistent and smaller, and simplifying developers' usage of UCI callbacks. Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
* apm821xx: fix usb-otg on 4.14Christian Lamparter2018-07-161-1/+1
| | | | | | | | Starting with 4.14, the "amcc,dwc-otg" needs to be used in order to get the usb-otg to work. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit 12b80f1cabf0a7995637fc9b0831b3e9f881f9e6)
* odhcp6c: add noserverunicast config option for broken DHCPv6 serversHans Dedecker2018-07-152-6/+9
| | | | | | | | | | | Fix broken DHCPv6 servers which provide the server unicast option but do not reply on DHCPv6 renew messages directed to the IPv6 address contained in the server unicast option which results in broken IPv6 connectivity. 67ae6a7 odhcp6c: add option to ignore Server Unicast option Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* odhcp6c: update to latest git HEADHans Dedecker2018-07-151-4/+4
| | | | | | b99c1f6 odhcp6c: remove len check in option parsing handle Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* odhcp6c: user string option supportHans Dedecker2018-07-151-3/+3
| | | | | | ca8822b odhcp6c: add support for user string options Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* ipq40xx: add get_status_led to diag.shDavid Bauer2018-07-151-0/+4
| | | | | | | | | | | | This commit adds the get_status_led method to diag.sh, which sets the boot-led as status-led for scripts using this method to get a status-led. This method is used platform-independent in downstream project gluon to set the LED used to indicate the config-mode. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 4fc005197a320ff728544eba8028f7a9f23e1868)
* OpenWrt v18.06.0-rc2: revert to branch defaultsJo-Philipp Wich2018-07-155-11/+9
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* OpenWrt v18.06.0-rc2: adjust config defaultsv18.06.0-rc2Jo-Philipp Wich2018-07-155-9/+11
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* uhttpd: update to latest Git headJo-Philipp Wich2018-07-151-3/+3
| | | | | | | | | | | db86175 lua: honour size argument in recv() function d3b9560 utils: add uh_htmlescape() helper 8109b95 file: escape strings in HTML output 393b59e proc: expose HTTP Origin header in process environment 796d42b client: flush buffered SSL output when tearing down client ustream Signed-off-by: Jo-Philipp Wich <jo@mein.io> (cherry picked from commit b54bef205846e2b30da23c1316c4a9b941c5078d)
* include/prereq-build.mk: explicitly check for -f flag when using busybox timeMatthias Schiffer2018-07-141-2/+2
| | | | | | | | On Debian, busybox does have a time applet, but it does not support the -f flag. Catch this in prereq check to give users to proper error message. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> (cherry picked from commit b123921a92a957f08abb186e041aa38aa9328f3e)