aboutsummaryrefslogtreecommitdiffstats
path: root/package
Commit message (Collapse)AuthorAgeFilesLines
* Revert "kernel: backport act_ctinfo"Kevin Darbyshire-Bryant2019-06-061-9/+1
| | | | | | | | | | This reverts commit 7c50182e0cdce0366715082872a2afbcf208bbf8. Produces build error: Package kmod-sched is missing dependencies for the following libraries: nf_conntrack.ko Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* rpcd: fix init script reload actionJo-Philipp Wich2019-06-062-6/+3
| | | | | | | Drop the legacy start() and stop() procedures and define a proper reload signal action instead. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: backport act_ctinfoKevin Darbyshire-Bryant2019-06-061-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ctinfo is a new tc filter action module. It is designed to restore information contained in firewall conntrack marks to other packet fields and is typically used on packet ingress paths. At present it has two independent sub-functions or operating modes, DSCP restoration mode & skb mark restoration mode. The DSCP restore mode: This mode copies DSCP values that have been placed in the firewall conntrack mark back into the IPv4/v6 diffserv fields of relevant packets. The DSCP restoration is intended for use and has been found useful for restoring ingress classifications based on egress classifications across links that bleach or otherwise change DSCP, typically home ISP Internet links. Restoring DSCP on ingress on the WAN link allows qdiscs such as but by no means limited to CAKE to shape inbound packets according to policies that are easier to set & mark on egress. Ingress classification is traditionally a challenging task since iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT lookups, hence are unable to see internal IPv4 addresses as used on the typical home masquerading gateway. Thus marking the connection in some manner on egress for later restoration of classification on ingress is easier to implement. Parameters related to DSCP restore mode: dscpmask - a 32 bit mask of 6 contiguous bits and indicate bits of the conntrack mark field contain the DSCP value to be restored. statemask - a 32 bit mask of (usually) 1 bit length, outside the area specified by dscpmask. This represents a conditional operation flag whereby the DSCP is only restored if the flag is set. This is useful to implement a 'one shot' iptables based classification where the 'complicated' iptables rules are only run once to classify the connection on initial (egress) packet and subsequent packets are all marked/restored with the same DSCP. A mask of zero disables the conditional behaviour ie. the conntrack mark DSCP bits are always restored to the ip diffserv field (assuming the conntrack entry is found & the skb is an ipv4/ipv6 type) e.g. dscpmask 0xfc000000 statemask 0x01000000 |----0xFC----conntrack mark----000000---| | Bits 31-26 | bit 25 | bit24 |~~~ Bit 0| | DSCP | unused | flag |unused | |-----------------------0x01---000000---| | | | | ---| Conditional flag v only restore if set |-ip diffserv-| | 6 bits | |-------------| The skb mark restore mode (cpmark): This mode copies the firewall conntrack mark to the skb's mark field. It is completely the functional equivalent of the existing act_connmark action with the additional feature of being able to apply a mask to the restored value. Parameters related to skb mark restore mode: mask - a 32 bit mask applied to the firewall conntrack mark to mask out bits unwanted for restoration. This can be useful where the conntrack mark is being used for different purposes by different applications. If not specified and by default the whole mark field is copied (i.e. default mask of 0xffffffff) e.g. mask 0x00ffffff to mask out the top 8 bits being used by the aforementioned DSCP restore mode. |----0x00----conntrack mark----ffffff---| | Bits 31-24 | | | DSCP & flag| some value here | |---------------------------------------| | | v |------------skb mark-------------------| | | | | zeroed | | |---------------------------------------| Overall parameters: zone - conntrack zone control - action related control (reclassify | pipe | drop | continue | ok | goto chain <CHAIN_INDEX>) Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> Reviewed-by: Toke Høiland-Jørgensen <toke@redhat.com> Acked-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Make suitable adjustments for backporting to 4.14 & 4.19 Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* rpcd: update to the latest git headPetr Štetiar2019-06-061-3/+3
| | | | | | | 89bfaa424606 Fix possible linker errors by using CMake find_library macro 569284a119f9 session: handle NULL return values of crypt() Signed-off-by: Petr Štetiar <ynezz@true.cz>
* libunwind: bump to version 1.3.1Yousong Zhou2019-06-052-16/+6
| | | | | | | | | | | | | | | Libunwind provides a sigreturn stub for x86 in version 1.2 [1]. However the arch still depends on setcontext() which is unavailable in musl-libc and which is supposed to be "deprecated everywhere" [2] [1] x86 sigreturn unimplemented for some libcs, https://github.com/libunwind/libunwind/issues/13 [2] setcontext deprecated on x86, https://github.com/libunwind/libunwind/issues/69 Refs: https://github.com/openwrt/packages/issues/8548#issuecomment-497791552 Reported-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* wireguard: bump to 0.0.20190601Jason A. Donenfeld2019-06-011-2/+2
| | | | | | | | | | | | | | There was an issue with the backport compat layer in yesterday's snapshot, causing issues on certain (mostly Atom) Intel chips on kernels older than 4.2, due to the use of xgetbv without checking cpu flags for xsave support. This manifested itself simply at module load time. Indeed it's somewhat tricky to support 33 different kernel versions (3.10+), plus weird distro frankenkernels. If OpenWRT doesn't support < 4.2, you probably don't need to apply this. But it also can't hurt, and probably best to stay updated. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* wireguard: bump to 0.0.20190531Jason A. Donenfeld2019-05-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tools: add wincompat layer to wg(8) Consistent with a lot of the Windows work we've been doing this last cycle, wg(8) now supports the WireGuard for Windows app by talking through a named pipe. You can compile this as `PLATFORM=windows make -C src/tools` with mingw. Because programming things for Windows is pretty ugly, we've done this via a separate standalone wincompat layer, so that we don't pollute our pretty *nix utility. * compat: udp_tunnel: force cast sk_data_ready This is a hack to work around broken Android kernel wrapper scripts. * wg-quick: freebsd: workaround SIOCGIFSTATUS race in FreeBSD kernel FreeBSD had a number of kernel race conditions, some of which we can vaguely work around. These are in the process of being fixed upstream, but probably people won't update for a while. * wg-quick: make darwin and freebsd path search strict like linux Correctness. * socket: set ignore_df=1 on xmit This was intended from early on but didn't work on IPv6 without the ignore_df flag. It allows sending fragments over IPv6. * qemu: use newer iproute2 and kernel * qemu: build iproute2 with libmnl support * qemu: do not check for alignment with ubsan The QEMU build system has been improved to compile newer versions. Linking against libmnl gives us better error messages. As well, enabling the alignment check on x86 UBSAN isn't realistic. * wg-quick: look up existing routes properly * wg-quick: specify protocol to ip(8), because of inconsistencies The route inclusion check was wrong prior, and Linux 5.1 made it break entirely. This makes a better invocation of `ip route show match`. * netlink: use new strict length types in policy for 5.2 * kbuild: account for recent upstream changes * zinc: arm64: use cpu_get_elf_hwcap accessor for 5.2 The usual churn of changes required for the upcoming 5.2. * timers: add jitter on ack failure reinitiation Correctness tweak in the timer system. * blake2s,chacha: latency tweak * blake2s: shorten ssse3 loop In every odd-numbered round, instead of operating over the state x00 x01 x02 x03 x05 x06 x07 x04 x10 x11 x08 x09 x15 x12 x13 x14 we operate over the rotated state x03 x00 x01 x02 x04 x05 x06 x07 x09 x10 x11 x08 x14 x15 x12 x13 The advantage here is that this requires no changes to the 'x04 x05 x06 x07' row, which is in the critical path. This results in a noticeable latency improvement of roughly R cycles, for R diagonal rounds in the primitive. As well, the blake2s AVX implementation is now SSSE3 and considerably shorter. * tools: allow setting WG_ENDPOINT_RESOLUTION_RETRIES System integrators can now specify things like WG_ENDPOINT_RESOLUTION_RETRIES=infinity when building wg(8)-based init scripts and services, or 0, or any other integer. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
* openssl: update to version 1.1.1cEneas U de Queiroz2019-05-312-34/+3
| | | | | | | | | | | Highlights of this version: - Prevent over long nonces in ChaCha20-Poly1305 (CVE-2019-1543) - Fix OPENSSL_config bug (patch removed) - Change the default RSA, DSA and DH size to 2048 bit instead of 1024. - Enable SHA3 pre-hashing for ECDSA and DSA Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [DMARC removal]
* gpio-button-hotplug: support interrupt propertiesChristian Lamparter2019-05-311-21/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstream Linux's input gpio-keys driver supports specifying a external interrupt for a gpio via the 'interrupts' properties as well as having support for software debounce. This patch ports these features to OpenWrt's event version. Only the "pure" interrupt-driven support is left behind, since this goes a bit against the "gpio" in the "gpio-keys" and I don't have a real device to test this with. This patch also silences the generated warnings showing up since 4.14 due to the 'constification' of the struct gpio_keys_button *buttons variable in the upstream struct gpio_keys_platform_data declaration. gpio-button-hotplug.c: In function 'gpio_keys_get_devtree_pdata': gpio-button-hotplug.c:392:10: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] button = &pdata->buttons[i++]; ^ gpio-button-hotplug.c: In function 'gpio_keys_button_probe': gpio-button-hotplug.c:537:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] bdata->b = &pdata->buttons[i]; ^ gpio-button-hotplug.c: In function 'gpio_keys_probe': gpio-button-hotplug.c:563:37: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers] struct gpio_keys_button *button = &pdata->buttons[i]; ^ Acked-by: Petr Štetiar <ynezz@true.cz> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* ppp: add config options to tune discovery timeout and attemptsHans Dedecker2019-05-312-1/+8
| | | | | | | | | | | Upstream PPP project has added in commit 8e77984 options to tune discovery timeout and attempts in the rp-pppoe plugin. Expose these options in the uci datamodel for pppoe: padi_attempts: Number of discovery attempts padi_timeout: Initial timeout for discovery packets in seconds Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* ppp: update to version 2.4.7.git-2019-05-25Hans Dedecker2019-05-311-3/+3
| | | | | | 8e77984 rp-pppoe plugin: Add options to tune discovery timeout and number of attempts Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* gre: introduce 'nohostroute' optionFabian Bläse2019-05-312-5/+11
| | | | | | | | | | | It is not always necessary to add a host route for the gre peer address. This introduces a new config option 'nohostroute' (similar to the option introduced for wireguard in d8e2e19) to allow to disable the creation of those routes explicitely. Signed-off-by: Fabian Bläse <fabian@blaese.de> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
* uclient: bump to version 2019-05-30Yousong Zhou2019-05-301-3/+3
| | | | | | | | This version bump contains the following commit to fix FS#2222 3b3e368 uclient-http: set data_eof when content-length is 0 Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* libunwind: requires glibc if arch in powerpcYousong Zhou2019-05-301-1/+1
| | | | | | | | | | | | | | libunwind for powerpc depends on getcontext() from libc which musl-libc does not provide because this API and its friends are supposed to be "obsolescent" [1,2] [1] Subject: Re: setcontext/getcontext/makecontext missing? https://www.openwall.com/lists/musl/2016/02/04/5 [2] http://pubs.opengroup.org/onlinepubs/009695399/functions/makecontext.html Refs: https://github.com/openwrt/packages/issues/8548#issuecomment-497200058 Reported-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* at91:renaming subtraget legacy to sam9xSandeep Sheriker M2019-05-301-2/+2
| | | | | | renaming subtraget legacy to sam9x for adding new sam9 soc's Signed-off-by: Sandeep Sheriker M <sandeep.sheriker@microchip.com>
* at91: Merge SAMA5 subtargetsHauke Mehrtens2019-05-302-24/+24
| | | | | | | | | Instead of maintaining 3 very similar subtargets merge them into one. This does not use the Arm NEON extension any more, because the SAMA5D3 does not support NEON. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Tested-by: Sandeep Sheriker <sandeepsheriker.mallikarjun@microchip.com>
* gpio-button-hotplug: add KEY_POWER2 handlingAlan Swanson2019-05-301-0/+1
| | | | | | | | | | | | | | | | For devices such as BTHOMEHUBV5A with both reset and restart buttons, its easily accessible restart button has been assigned to KEY_POWER power script to poweroff preventing accidental (or malicious) factory resets by KEY_RESTART reset script. However an easily accessible button immediately powering off the device is also undesirable. As KEY_RESTART is already used for reset script (and there's no KEY_REBOOT in Linux input events), use KEY_POWER2 for rebooting via new reboot script with 5 second seen delay. Fixes: FS#1965 Signed-off-by: Alan Swanson <reiver@improbability.net> Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
* button-hotplug: add KEY_POWER2 handlingAlan Swanson2019-05-301-0/+1
| | | | | | | | | | | | | | | | For devices such as BTHOMEHUBV5A with both reset and restart buttons, its easily accessible restart button has been assigned to KEY_POWER power script to poweroff preventing accidental (or malicious) factory resets by KEY_RESTART reset script. However an easily accessible button immediately powering off the device is also undesirable. As KEY_RESTART is already used for reset script (and there's no KEY_REBOOT in Linux input events), use KEY_POWER2 for rebooting via new reboot script with 5 second seen delay. Fixes: FS#1965 Signed-off-by: Alan Swanson <reiver@improbability.net> Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
* base-files: add reboot only button handlerAlan Swanson2019-05-301-0/+12
| | | | | | | | | | | | For devices such as BTHOMEHUBV5A with both reset and restart buttons, its easily accessible restart button has been assigned to KEY_POWER power script to poweroff preventing accidental (or malicious) factory resets by KEY_RESTART reset script. However an easily accessible button immediately powering off the device is also undesirable. Fixes: FS#1965 Signed-off-by: Alan Swanson <reiver@improbability.net> Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
* procd: update to latest git HEADPetr Štetiar2019-05-301-3/+3
| | | | | | | ade00ca585a4 container: fix .dockerenv stat check 385b904b2f0a hotplug: improve error message during group ownership change Signed-off-by: Petr Štetiar <ynezz@true.cz>
* procd: update to latest git HEADPaul Spooren2019-05-291-3/+3
| | | | | | 7f0f6b2 procd: add docker support Signed-off-by: Paul Spooren <mail@aparcar.org>
* busybox: fix: ip addr flush hangs when run by non-root userMikael Magnusson2019-05-282-1/+215
| | | | | | | | | | | | | Add upstream patch from: https://git.busybox.net/busybox/commit/?id=028c5aa18b5273c029f0278232d922ee1a164de6 The patch fixes a problem with an infinite loop causing 100% CPU usage when running the following command /lib/preinit/10_indicate_preinit without the CAP_NET_ADMIN capability (such as in Docker): ip -4 address flush dev $pi_ifname Signed-off-by: Mikael Magnusson <mikma@users.sourceforge.net> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [refresh patch]
* netifd: fix missing ip rules after network reload (FS#2296)Hans Dedecker2019-05-281-3/+3
| | | | | | beb810d iprule: fix missing ip rules after a reload (FS#2296) Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* curl: bump to 7.65.0Hans Dedecker2019-05-261-2/+2
| | | | | | For changes in 7.65.0; see https://curl.haxx.se/changes.html#7_65_0 Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* map: don't set default firewall zone to wanHans Dedecker2019-05-262-23/+27
| | | | | | | | | | Don't set the default firewall zone to wan if not specified to keep the behavior aligned with other tunnel protocols like gre and 6rd. If the interface zone is not specified try to get it from the firewall config when constructing the procd firewall rule. While at it only add procd inbound/outbound firewall rules if a zone is specified. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* 464xlat: don't set default firewall zone to wanHans Dedecker2019-05-262-13/+17
| | | | | | | | | | Don't set the default firewall zone to wan if not specified to keep the behavior aligned with other tunnel protocols like gre and 6rd. If the interface zone is not specified try to get it from the firewall config when constructing the procd firewall rule. While at it only add a procd inbound firewall rule if a zone is specified. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* ethtool: bump to 5.1Petr Štetiar2019-05-251-2/+2
| | | | | | | | | | | | | | | | | | | | * Feature: Add support for 200Gbps (50Gbps per lane) link mode * Feature: simplify handling of PHY tunable downshift * Feature: add support for PHY tunable Fast Link Down * Feature: add PHY Fast Link Down tunable to man page * Feature: Add a 'start N' option when specifying the Rx flow hash indirection table. * Feature: Add bash-completion script * Feature: add 10000baseR_FEC link mode name * Fix: qsfp: fix special value comparison * Feature: move option parsing related code into function * Feature: move cmdline_coalesce out of do_scoalesce * Feature: introduce new ioctl for per-queue settings * Feature: support per-queue sub command --show-coalesce * Feature: support per-queue sub command --coalesce * Fix: fix up dump_coalesce output to match actual option names * Feature: fec: add pretty dump Signed-off-by: Petr Štetiar <ynezz@true.cz>
* uci: fix heap use after free (FS#2288)Hans Dedecker2019-05-231-3/+3
| | | | | | f199b96 uci: fix options list of section after type change Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* lua: lnum: fix strtoul based number parsingLiangbin Lian2019-05-233-1/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lua's LNUM patch currently doesn't parse properly certain numbers as it's visible from the following simple tests. On x86_64 host (stock Lua 5.1.5, expected output): $ /usr/bin/lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)' 2147483648 8796093022208 4294967296 On x86_64 host: $ staging_dir/hostpkg/bin/lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)' -2147483648 0 0 On x86_64 target: $ lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)' -2147483648 0 0 On ath79 target: $ lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)' -2147483648 8796093022208 4294967296 It's caused by two issues fixed in this patch, first issue is caused by unhadled strtoul overflow and second one is caused by the cast of unsigned to signed Lua integer when parsing from hex literal. Run tested on: * Zidoo Z9S with RTD1296 CPU (aarch64_cortex-a53) * qemu/x86_64 * qemu/armvirt_64 * ath79 Signed-off-by: Liangbin Lian <jjm2473@gmail.com> [commit subject/message touches, fixed From to match SOB, fixed another unhandled case in luaO_str2i, host Lua, package bump] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* iwinfo: update to latest git HEADKoen Vandeputte2019-05-211-3/+3
| | | | | | | | 073a838891e5 iwinfo: Complete device IDs for Ubiquiti airOS XM/XW devices 04f5a7d3a431 iwinfo: Add Mikrotik R11e-5HnD c2cfe9d96c9a iwinfo: Fix 802.11ad channel to frequency Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* uboot-imx6: bump to 2019.04 and refresh patchesPetr Štetiar2019-05-204-14/+10
| | | | | | | | | | | | Build tested: apalis, mx6sabresd, nitrogen6dl, nitrogen6dl2g, nitrogen6q, nitrogen6q2g, nitrogen6s, nitrogen6s1g, wandboard Run tested: apalis Cc: Felix Fietkau <nbd@nbd.name> Cc: Vladimir Vid <vladimir.vid@sartura.hr> Cc: Koen Vandeputte <koen.vandeputte@ncentric.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* base-files: add support for the new ar8xxx MIB counters settingsPetr Štetiar2019-05-202-1/+17
| | | | | | | | | | | | | Commit "generic: ar8216: add mib_poll_interval switch attribute" has added mib_poll_interval global config option and commit "generic: ar8216: group MIB counters and use two basic ones only by default" has added mib_type config option. So this patch adds ucidef_set_ar8xxx_switch_mib helper function which would allow configuration of the above mentioned new switch config options. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* netifd: add support for the new ar8xxx MIB counters settingsPetr Štetiar2019-05-202-2/+4
| | | | | | | | | Commit "generic: ar8216: add mib_poll_interval switch attribute" has added mib_poll_interval global config option and commit "generic: ar8216: group MIB counters and use two basic ones only by default" has added mib_type config option. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* uboot-fritz4040: Add host flags for host compilerHauke Mehrtens2019-05-191-2/+2
| | | | | | | | | | | | | This adds the host staging directory to the include path to make it use the zlib.h files from the staging include directory and also link against the zlib version from the staging directory. This fixes a compile problem when the zlib header were not installed on the build host. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [picked from openwrt-18.06]
* ppp: update to version 2.4.7.git-2019-05-18Hans Dedecker2019-05-186-287/+7
| | | | | | | | | | | c9d9dbf pppoe: Custom host-uniq tag 44012ae plugins/rp-pppoe: Fix compile errors Refresh patches Drop 520-uniq patch as upstream accepted Drop 150-debug_compile_fix patch as fixed upstream Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* gemini: Fix up firmware checksum on DIR-685Linus Walleij2019-05-181-0/+1
| | | | | | | | | | | | | | | | | | Using the same method as the D-Link DAP-2695 A1 we use the "mtd" tool to augment the firmware checkum in flash on first boot of a new firmware on the D-Link DIR-685. We need to augment the Makefile for "mtd" to build in the special WRGG fixup support for Gemini as well. This works around the problem of the machine not booting after factory install unless the sysupgrade is applied immediately. Based on commit e3875350f3e4185020b64e0588bba521cd1d6e64 "ar71xx: add support for D-Link DAP-2695 rev. A1" Cc: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* mtd: Make fixwrgg command work on DIR-685Linus Walleij2019-05-181-14/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The D-Link DIR-685 has the same problem as the D-Link DAP-2695: when flashing the factory image, the checksum includes the whole flashed image, even the rootfs_data part with the end of filesystem mark. Also the whole flashed image is stored in the flash, so on the first boot, the whole rootfs image is loaded into memory with the kernel. This is fixed using the fixwrgg command to mtd, but for this to work we need to make fixwrgg work with the Little-Endian ARM DIR-685. The code tries to be endian agnostic but this fails because the WRGG image loader doesn't. On ARM, the file size is stored in little endian format, and on big-endian systems it is stored in big endian format, so we can just drop all the friendly htonl() that will make the shdr->size big endian: this will actually break the little endian systems, and on the big endian systems the native endianness will still be correct. The magic number is always stored in little endian format however, so make sure this is always read in LE32 format. I chose to create a straight-forward le32_to_cpu() static inline that IMO is simple and easy to read. Cc: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
* ath79: add support for EnGenius ECB1750sven friedmann2019-05-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specification: - Qualcomm Atheros SoC QCA9558 - 720/600/200 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 1x 10/100/1000 Mbps Ethernet - 3T3R 2.4 GHz (QCA9558 WMAC) - 3T3R 5.8 Ghz (QCA9880-BR4A, Senao PCE4553AH) https://fccid.io/A8J-ECB1750 Tested and working: - lan, wireless, leds, sysupgrade (tftp) Flash instructions: 1.) tftp recovery - use a 1GbE switch or direct attached 1GbE link - setup client ip address 192.168.1.10 and start tftpd - save "openwrt-ath79-generic-engenius_ecb1750-initramfs-kernel.bin" as "ap.bin" in tfpd root directory - plugin powercord and hold reset button 10secs.. "ap.bin" will be downloaded and executed - afterwards login via ssh and do a sysuprade 2.) oem webinterface factory install (not tested) Use normal webinterface upgrade page und select "openwrt-ath79-generic-engenius_ecb1750-squashfs-factory.bin". 3.) oem webinterface command injection OEM Firmware already running OpenWrt (Attitude Adjustment 12.09). Use OEM webinterface and command injection. See wiki for details. https://openwrt.org/toh/engenius/engenius_ecb1750_1 Signed-off-by: sven friedmann <sf.openwrt@okay.ms> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [use interrupt-driven "gpio-keys" binding]
* ipq40xx: Add support for Linksys EA8300 (Dallas)Jeff Kletsky2019-05-184-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Linksys EA8300 is based on QCA4019 and QCA9888 and provides three, independent radios. NAND provides two, alternate kernel/firmware images with fail-over provided by the OEM U-Boot. Installation: "Factory" images may be installed directly through the OEM GUI. Hardware Highlights: * IPQ4019 at 717 MHz (4 CPUs) * 256 MB NAND (Winbond W29N02GV, 8-bit parallel) * 256 MB RAM * Three, fully-functional radios; `iw phy` reports (FCC/US, -CT): * 2.4 GHz radio at 30 dBm * 5 GHz radio on ch. 36-64 at 23 dBm * 5 GHz radio on ch. 100-144 at 23 dBm (DFS), 149-165 at 30 dBm #{ managed } <= 16, #{ AP, mesh point } <= 16, #{ IBSS } <= 1 * All two-stream, MCS 0-9 * 4x GigE LAN, 1x GigE Internet Ethernet jacks with port lights * USB3, single port on rear with LED * WPS and reset buttons * Four status lights on top * Serial pads internal (unpopulated) "Linksys Dallas WiFi AP router based on Qualcomm AP DK07.1-c1" Implementation Notes: The OEM flash layout is preserved at this time with 3 MB kernel and ~69 MB UBIFS for each firmware version. The sysdiag (1 MB) and syscfg (56 MB) partitions are untouched, available as read-only. Serial Connectivity: Serial connectivity is *not* required to flash. Serial may be accessed by opening the device and connecting a 3.3-V adapter using 115200, 8n1. U-Boot access is good, including the ability to load images over TFTP and either run or flash them. Looking at the top of the board, from the front of the unit, J3 can be found on the right edge of the board, near the rear | J3 | |-| | |O| | (3.3V seen, open-circuit) |O| | TXD |O| | RXD |O| | |O| | GND |-| | | Unimplemented: * serial1 "ttyQHS0" (serial0 works as console) * Bluetooth; Qualcomm CSR8811 (potentially conected to serial1) Other Notes: https://wikidevi.com/wiki/Linksys_EA8300 states FCC docs also cover the Linksys EA8250. According to the RF Test Report BT BR+EDR, "All models are identical except for the EA8300 supports 256QAM and the EA8250 disable 256QAM." Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* mtd: base-files: Unify dual-firmware devices (Linksys)Jeff Kletsky2019-05-183-134/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consistently handle boot-count reset and upgrade across ipq40xx, ipq806x, kirkwood, mvebu Dual-firmware devices often utilize a specific MTD partition to record the number of times the boot loader has initiated boot. Most of these devices are NAND, typically with a 2k erase size. When this code was ported to the ipq40xx platform, the device in hand used NOR for this partition, with a 16-byte "record" size. As the implementation of `mtd resetbc` is by-platform, the hard-coded nature of this change prevented proper operation of a NAND-based device. * Unified the "NOR" variant with the rest of the Linksys variants * Added logging to indicate success and failure * Provided a meaningful return value for scripting * "Protected" the use of `mtd resetbc` in start-up scripts so that failure does not end the boot sequence * Moved Linksys-specific actions into common `/etc/init.d/bootcount` For upgrade, these devices need to determine which partition to flash, as well as set certain U-Boot envirnment variables to change the next boot to the newly flashed version. * Moved upgrade-related environment changes out of bootcount * Combined multiple flashes of environment into single one * Current-partition detection now handles absence of `boot_part` Runtime-tested: Linksys EA8300 Signed-off-by: Jeff Kletsky <git-commits@allycomm.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [checkpatch.pl fixes, traded split strings for 80+ chars per line]
* firmware/ipq-wifi: Extend for multi-chip boardsJeff Kletsky2019-05-183-19/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This package provides board-specific reference ("cal") data on an interim basis until included in the upstream distros While originally conceived for IPQ4019-based boards, similar needs are appearing with three-radio devices. For some of these devices, both a board-2.bin file needs to be supplied both for the IPQ4019 as well as for the other radio on the board. This patch allows new or multiple overrides to be specified by: * Adding board name to ALLWIFIBOARDS * Placing file(s) in this directory named as board-<devicename>.<qca4019|qca9888|qca9984> * Adding $(eval $(call generate-ipq-wifi-package,<device>,<display name>)) (along with suitable package selection for the board) At this time, QCA4019, QCA9888, and QCA9984 are supported. Extension to other chips should be straightforward. The existing files, board-*.bin, are "grandfathered" as QCA4019. The package name has been retained for compatability reasons. At this time it DEPENDS:=@TARGET_ipq40xx, limiting its visibility. Build-tested-on: asus_map-ac2200, alfa-network_ap120c-ac, avm_fritzbox-7530, avm_fritzrepeater-3000, engenius_eap1300, engenius_ens620ext, linksys_ea6350v3, qxwlan-e2600ac-c1/-c2 Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
* netifd: update to latest git HEADHans Dedecker2019-05-181-3/+3
| | | | | | | 22e8e58 interface-ip: use ptp address as well to find local address target f1aa0f9 treewide: pass bool as second argument of blobmsg_check_attr Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* libbsd: Fix compilation under ARCRosen Penev2019-05-172-1/+31
| | | | | | | | The 8 year old file does not have any ARC definitions. Signed-off-by: Rosen Penev <rosenp@gmail.com> [updated content of the patch with version sent to upstream] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* system: uci: Use config dir on uci_add and support add_/del_listKristian Evensen2019-05-172-2/+20
| | | | | | | | | | | | | | | | This commit makes three changes to the uci shell library: * A check for UCI_CONFIG_DIR has been added to the command line when adding anonymous sections. Without this change, adding anonymous sections to configs not stored in /etc/config is not possible. * Support for adding/removing items from lists were missing, so I have added the functions uci_add_list() and uci_remove_list() to simplify working with uci lists from scripts. Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com> [added missing package version bump] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* zlib: Use relative paths in pkg-config metadata fileJeffery To2019-05-172-1/+15
| | | | | | | | | | | | | | The buildroot pkg-config (in staging_dir/host/bin) overrides the prefix and exec_prefix variables in *.pc files, to supply the correct (buildroot) paths for callers. If other variables are not defined relative to prefix and exec_prefix, then the returned values will be incorrect. The default zlib.pc file generated by cmake contains absolute paths. This patches the file to use relative paths (relative to ${prefix} and ${exec_prefix}). Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* odhcpd: update to latest git HEAD (FS#2242)Hans Dedecker2019-05-171-3/+3
| | | | | | | | | | | | | | | | | | 41a74cb config: remove 'ignore' config option c0c8034 treewide: init assignment lists head f98b7ee config: use list safe iterator in lease_delete 3c9810b dhcpv4: fix lease ordering by ip address b60c384 config: use multi-stage parsing of uci sections a2dd8d6 treewide: always init interface list heads during initialization a17665e dhcpv4: do not allow pool end address to overlap with broadcast address 6b951c5 treewide: give file descriptors safe initial value 39e11ed dhcpv4: DHCP pool size is off-by-one 4a600ce dhcpv4: add support for Parameter Request List option 55 09e5eca dhcpv4: fix DHCP packet size 3cd4876 ndp: fix syslog flooding (FS#2242) 79fbba1 config: set default loglevel to LOG_WARNING Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* tegra: add vendor string to device nameTomasz Maciej Nowak2019-05-151-1/+1
| | | | | | | for better identification. Also create SUPPORTED_DEVICES string from it which corresponds to dts compatible string. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* nftables: Fix compilation with uClibc-ngRosen Penev2019-05-152-1/+29
| | | | | | | | Missing header for va_list. Signed-off-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Petr Štetiar <ynezz@true.cz> [updated with upstream version of the patch]
* linux-firmware: update to 20190416Deng Qingfang2019-05-141-5/+4
| | | | | | | | | | | | | | | | | Update linux-firmware to 20190416, which includes updated firmwares e.g. for ath10k Also switch to official tarball source. The following firmware files we use are updated in this change: ath10k/QCA6174/hw3.0/board-2.bin ath10k/QCA9888/hw2.0/firmware-5.bin ath10k/QCA988X/hw2.0/firmware-5.bin ath10k/QCA9984/hw1.0/firmware-5.bin mrvl/sd8887_uapsta.bin mrvl/pcie8897_uapsta.bin iwlwifi-8000C-36.ucode iwlwifi-8265-36.ucode Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
* valgrind: Add support for ARM64 architectureHauke Mehrtens2019-05-141-1/+1
| | | | | | valgrind also works on the ARM64 architecture, build it also for such CPUs. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>