openwrt/staging/mkresin.git
6 months agoramips: add missing SPDX identifier for EX6150
David Bauer [Fri, 29 Mar 2019 15:16:18 +0000 (16:16 +0100)]
ramips: add missing SPDX identifier for EX6150

This adds the SPDX license identifier for the NETGEAR EX6150. It was
missed when submitting the original patch.

Signed-off-by: David Bauer <mail@david-bauer.net>
6 months agoar71xx: ens202ext: Fix VLAN switch
Michael Pratt [Fri, 22 Feb 2019 05:28:50 +0000 (00:28 -0500)]
ar71xx: ens202ext: Fix VLAN switch

The target ENS202EXT was just recently added right before the stable
release of Openwrt 18.

It flashes fine, but the physical switch is almost impossible to use
until you have a VLAN set up. Tested on two devices.

The actual problem is that eth0 represents nothing for whatever reason.
In other words, both WAN and LAN are running from eth1. There may be an
underlying problem in the build, but for now, I assume that this is
correct and that a VLAN switch is an appropriate fix.

Also, it's virtually impossible to get the switch running right through
LuCI. It is one thing to get a switch to appear, but attempting to
configure it breaks the whole thing. The VLAN has to be set up
perfectly, otherwise, interfaces will not start up, and one is forced to
reset settings, OR, the new LuCI feature kicks in and reverses any
steps. It is extremely difficult to determine which virtual ports
correspond to which physical ethernet ports without being able to set up
the switch in LuCI.

Temporary Workaround: followed directions here
[openwrt/luci#867](https://github.com/openwrt/luci/issues/867)

Reviewed-by: Marty Plummer <hanetzer@startmail.com>
Signed-off-by: Michael Pratt <mpratt51@gmail.com>
[commit author fix, subject fix, message text wrap]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agoath10k-firmware: update Candela Tech firmware images
Christian Lamparter [Sat, 30 Mar 2019 09:33:47 +0000 (10:33 +0100)]
ath10k-firmware: update Candela Tech firmware images

Release notes since last time:

Release notes for wave-1 / 10.1:
2019-03-28: Fix sometimes using bad TID for management frames
    in htt-mgt mode. (Backported from wave2, looks
    like bug would be the same though.)

Release notes for wave-2 / 10.4:
2019-03-28: Fix off-channel scanning while associated in
    proxy-station mode.

2019-03-29: Fix sometimes sending mgt frames on wrong tid when
    using htt-mgt. This bug has been around since I first
    enabled htt-mgt mode.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agoodhcpd: update to latest git HEAD
Hans Dedecker [Fri, 29 Mar 2019 14:45:28 +0000 (15:45 +0100)]
odhcpd: update to latest git HEAD

7798d50 netlink: rework IPv4 address refresh logic
0b20876 netlink: rework IPv6 address refresh logic

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
6 months agokernel: bump 4.14 to 4.14.109
Koen Vandeputte [Thu, 28 Mar 2019 11:59:20 +0000 (12:59 +0100)]
kernel: bump 4.14 to 4.14.109

Refreshed all patches.

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6, x86_64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 months agokernel: bump 4.9 to 4.9.166
Koen Vandeputte [Thu, 28 Mar 2019 11:57:03 +0000 (12:57 +0100)]
kernel: bump 4.9 to 4.9.166

Refreshed all patches.

Compile-tested on: ar7
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 months agoramips: Increase GB-PC1 SPI frequency to 80MHz
Rosen Penev [Thu, 14 Feb 2019 21:15:29 +0000 (13:15 -0800)]
ramips: Increase GB-PC1 SPI frequency to 80MHz

The specific flash chip used (W25Q256FVEM) accepts 50MHz for read
requests and higher for others. 104MHz for fast reads. ramips seems to
be limited to 80MHz based on testing with higher values (no speedup).

Based on upstream commit: 97738374a310b9116f9c33832737e517226d3722

 time dd if=/dev/mtdblock3 of=/dev/null bs=64k from 42.96s to 7.01s

 [test done with backported upstream v4.19 driver[1], for numbers on
  stock 4.14 driver please take a look at `ramips: Increase GB-PC2 SPI
  frequency to 80MHz` commit message]

1. https://github.com/openwrt/openwrt/pull/1578

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[expanded note about spi driver version]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agoramips: Increase GB-PC2 SPI frequency to 80MHz
Rosen Penev [Fri, 29 Mar 2019 06:01:30 +0000 (23:01 -0700)]
ramips: Increase GB-PC2 SPI frequency to 80MHz

The flash chip on the board (Spansion S25FL256SAIF00) is rated to
support at least 50MHz for normal read requests according to the
datasheet. 133MHz for fast reads. However, ramips seems to be limited to
80MHz.

>From testing this, higher values do not improve speeds.

time dd if=/dev/mtdblock3 of=/dev/null bs=64k from

42.82s to 14.09s.

boot speed is also faster:
[   66.884087] procd: - init - vs
[   48.976049] procd: - init -

Since spi speed was requested:
[    3.538884] spi-mt7621 1e000b00.spi: sys_freq: 225000000

CPU is 900MHz:
[    0.000000] CPU Clock: 900MHz

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[fixed commit message by adding missing 0 in the spi-mt7621 clock output]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agoramips: add Netgear EX6150
David Bauer [Thu, 21 Mar 2019 14:55:09 +0000 (15:55 +0100)]
ramips: add Netgear EX6150

SoC:   MediaTek MT7621
RAM:   64M (Winbond W9751G6KB-25)
FLASH: 16MB (Macronix MX25L12835F)
WiFi:  MediaTek MT7662E bgn 2SS
WiFi:  MediaTek MT7662E nac 2SS
BTN:   ON/OFF - Reset - WPS - AP/Extender toggle
LED:    - Arrow Right (blue)
        - Arrow Left (blue)
        - WiFi 1 (red/green)
        - WiFi 2 (red/green)
        - Power (green/amber)
        - WPS (Green)
UART:  UART is present as Pads on the backside of the PCB. They are
       located on the other side of the Ethernet port.
       3.3V - GND - TX - RX / 57600-8N1
       3.3V is the nearest one to the antenna connectors

Installation
------------
Update the factory image via the Netgear web-interfaces (by default:
192.168.1.250/24).

You can also use the factory image with the nmrpflash tool.
For more information see https://github.com/jclehner/nmrpflash

Signed-off-by: David Bauer <mail@david-bauer.net>
[merge conflict in 02_network, flash@0 node rename, wlan DTS triggers]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agoramips: add support for ZyXEL Keenetic Start
Vladimir Kot [Sat, 12 Jan 2019 09:43:28 +0000 (18:43 +0900)]
ramips: add support for ZyXEL Keenetic Start

Device specification:
- SoC: RT5350F
- CPU Frequency: 360 MHz
- Flash Chip: Winbond 25Q32 (4096 KiB)
- RAM: 32768 KiB
- 5x 10/100 Mbps Ethernet (4x LAN, 1x WAN)
- 1x external, non-detachable antenna
- UART (J1) header on PCB (57800 8n1)
- Wireless: SoC-intergated: 2.4GHz 802.11bgn
- USB: None
- 3x LED, 2x button

Flash instruction:
1. Configure PC with static IP 192.168.1.2/24 and start TFTP server.
2. Rename "openwrt-ramips-rt305x-kn_st-squashfs-sysupgrade.bin"
   to "kstart_recovery.bin" and place it in TFTP server directory.
3. Connect PC with one of LAN ports, press the reset button, power up
   the router and keep button pressed until power LED start blinking.
4. Router will download file from TFTP server, write it to flash and reboot.

Signed-off-by: Vladimir Kot <vova28rus@gmail.com>
[fixed git commit author and whitespace issues in DTS]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agoramips: add support for WIZnet WizFi630S board
Tobias Welz [Fri, 11 Jan 2019 23:37:43 +0000 (00:37 +0100)]
ramips: add support for WIZnet WizFi630S board

The WIZnet WizFi630S board is in the miniPCIe form factor.

SoC: Mediatek MT7688AN
RAM: 128MB
Flash: 32Mb
WiFi: 2.4GHz
Ethernet: 3x 100Mbit
USB: 1 (USB 2.0)
serial ports: 2 (1x full, 1xlite)

Flash and recovery instructions: Use the factory installed u-boot boot
loader. It is available on UART2 (115200,8,n,1).  Then get the
sysupgrade image from a tftp server.

Signed-off-by: Tobias Welz <tw@wiznet.eu>
[whitespace and device name in makefile fixes]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agoiwinfo: Fix 802.11ad channel to frequency
Daniel Golle [Thu, 28 Mar 2019 14:09:38 +0000 (15:09 +0100)]
iwinfo: Fix 802.11ad channel to frequency

 c2cfe9d iwinfo: Fix 802.11ad channel to frequency

Fixes 9725aa271a ("iwinfo: update to latest git HEAD")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
6 months agofstools: update to the latest master branch
Petr Štetiar [Thu, 28 Mar 2019 11:57:08 +0000 (12:57 +0100)]
fstools: update to the latest master branch

ff1ded6 libfstools: Fix overflow of F2FS_MINSIZE constant
bc2c876 libfstools: Print error in case of loop blkdev failure

Signed-off-by: Petr Štetiar <ynezz@true.cz>
6 months agopackage/uboot-omap: backport patches to fix build
Alexander Couzens [Sat, 16 Mar 2019 22:19:04 +0000 (23:19 +0100)]
package/uboot-omap: backport patches to fix build

* 106: fix build when libfdt-devel is installed on host
* 107: fix stdbool.h includes

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
6 months agowireguard: introduce 'nohostroute' option
Daniel Golle [Wed, 27 Mar 2019 21:59:03 +0000 (22:59 +0100)]
wireguard: introduce 'nohostroute' option

Instead of creating host-routes depending on fwmark as (accidentally)
pushed by commit
1e8bb50b93 ("wireguard: do not add host-dependencies if fwmark is set")
use a new config option 'nohostroute' to explicitely prevent creation
of the route to the endpoint.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
6 months agoIB: fix generating .profile.mk for profiles without metadata
Daniel Golle [Wed, 27 Mar 2019 21:52:05 +0000 (22:52 +0100)]
IB: fix generating .profile.mk for profiles without metadata

Fixes d6fa04a437 ("IB: include SUPPORTED_DEVICES in 'make info' output")

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
6 months agowireguard: do not add host-dependencies if fwmark is set
Daniel Golle [Tue, 19 Mar 2019 15:47:17 +0000 (16:47 +0100)]
wireguard: do not add host-dependencies if fwmark is set

The 'fwmark' option is used to define routing traffic to
wireguard endpoints to go through specific routing tables.
In that case it doesn't make sense to setup routes for
host-dependencies in the 'main' table, so skip setting host
dependencies if 'fwmark' is set.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
6 months agoodhcpd: update to latest git HEAD (FS#2204)
Hans Dedecker [Wed, 27 Mar 2019 20:03:02 +0000 (21:03 +0100)]
odhcpd: update to latest git HEAD (FS#2204)

420945c netlink: fix IPv6 address updates (FS#2204)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
6 months agokernel: fix missing dependency in 4.14.108
Koen Vandeputte [Wed, 27 Mar 2019 15:46:39 +0000 (16:46 +0100)]
kernel: fix missing dependency in 4.14.108

The 4.14.108 bump introduced a missing dependency when building
specific netfilters.

Thsi was not seen as the error does not occur on all targets.

Thanks to Jo-Philipp Wich for providing the fix

Fixes: af6c86dbe56e ("kernel: bump 4.14 to 4.14.108")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 months agomt76: update to the latest version
Felix Fietkau [Wed, 27 Mar 2019 12:03:01 +0000 (13:03 +0100)]
mt76: update to the latest version

f2a18f5 mt76x02: introduce mt76x02_beacon.c
91ade88 mt76x02: add hrtimer for pre TBTT for USB
6370485 mt76x02: introduce beacon_ops
37af803 mt76x02u: implement beacon_ops
41d6190 mt76x02: generalize some mmio beaconing functions
dcccc04 mt76x02u: add sta_ps
5ac5289 mt76x02: disable HW encryption for group frames
e284cc2 mt76x02u: implement pre TBTT work for USB
77e56b8 mt76x02: make beacon slots bigger for USB
d4c740f mt76x02u: add mt76_release_buffered_frames
65e6344 mt76: unify set_tim
f720e49 mt76x02: enable AP mode for USB
cf1838d mt76usb: change mt76u_submit_buf
16b2ccf mt76: remove rx_page_lock
e1bfbeb mt76usb: change mt76u_fill_rx_sg arguments
e9c0171 mt76usb: use usb_dev private data
a4eb5db mt76usb: remove mt76u_buf redundant fileds
3f9b68d mt76usb: move mt76u_buf->done to queue entry
4a366bd mt76usb: remove mt76u_buf and use urb directly
0904bc4 mt76usb: remove MT_RXQ_MAIN queue from mt76u_urb_alloc
42f2899 mt76usb: resue mt76u_urb_alloc for tx
4d4d73a mt76usb: remove unneded sg_init_table
57309c7 mt76usb: allocate urb and sg as linear data
2e89721 mt76usb: remove queue variable from rx_tasklet
30a256a mt76x02: remove extra_tx_headroom (obsoleted by mac8211 skb aligning)
ae166b0 Revert "mt76: mt7603: store software PN/IV in wcid"
bf6e72d Revert "mt76: mt76x02: store software PN/IV in wcid"
a11b673 mt76: fix tx power issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 months agokernel: bump 4.14 to 4.14.108
Koen Vandeputte [Mon, 25 Mar 2019 10:40:22 +0000 (11:40 +0100)]
kernel: bump 4.14 to 4.14.108

Refreshed all patches.

Altered patches:
- 950-0033-i2c-bcm2835-Add-debug-support.patch

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 months agokernel: bump 4.9 to 4.9.165
Koen Vandeputte [Mon, 25 Mar 2019 10:37:17 +0000 (11:37 +0100)]
kernel: bump 4.9 to 4.9.165

Refreshed all patches.

Compile-tested on: ar7
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 months agoscripts/gen_image_generic.sh: fail on errors
Stijn Tintel [Tue, 26 Mar 2019 17:35:55 +0000 (19:35 +0200)]
scripts/gen_image_generic.sh: fail on errors

The script always exits with value 0, even if some of the commands fail.
This can potentially create broken, unbootable images, e.g. when
make_ext4fs fails due to TARGET_KERNEL_PARTSIZE being too small for the
kernel. Avoid this by failing the script when any command fails.

Acked-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
6 months agoar71xx: add support for MikroTik RouterBOARD 922UAGS-5HPacD
Koen Vandeputte [Fri, 22 Mar 2019 12:02:40 +0000 (13:02 +0100)]
ar71xx: add support for MikroTik RouterBOARD 922UAGS-5HPacD

This patch adds support for the MikroTik RouterBOARD 922UAGS-5HPacD
with a built-in 802.11ac High-Power radio (31dBm).

See https://mikrotik.com/product/RB922UAGS-5HPacD for more info.

Specifications:
- SoC: Qualcomm Atheros QCA9557 (720 MHz)
- RAM: 128 MB
- Storage: 128 MB NAND
- Wireless: external QCA9882 802.11a/ac 2x2:2
- Ethernet: 1x 1000/100/10 Mbps, integrated, via AR8031 PHY, passive PoE-in 24V
- SFP: 1x host
- USB: 1x 2.0 type A
- PCIe: 1x Mini slot (also contains USB 2.0 for 3G/LTE modems)
- SIM slot: 1x mini-SIM

Working:
- Board/system detection
- NAND storage detection
- PCIe
- USB: Type A & mini PCIe
- Wireless
- Ethernet
- LED's (excl. SFP and RSSI levels)
- Reset button
- Sysupgrade

Not working:
- SFP cage

Installation:

- Boot vmlinux-initramfs image via BOOTP/TFTP and then flash sysupgrade
image using "sysupgrade -n"

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
6 months agomvebu: Add dependency to kmod-i2c-mux-pca954x for armada-macchiatobin
Hauke Mehrtens [Thu, 21 Mar 2019 16:57:00 +0000 (17:57 +0100)]
mvebu: Add dependency to kmod-i2c-mux-pca954x for armada-macchiatobin

This driver is needed for the I2C mux on the board.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
6 months agomvebu: Refresh kernel configuration
Hauke Mehrtens [Tue, 26 Mar 2019 00:23:24 +0000 (01:23 +0100)]
mvebu: Refresh kernel configuration

This refreshes the current kernel configuration to remove unneeded
options, add some automatically added ones and reorders them. The normal
build did this automatically, so the builds already used this
configuration.

CONFIG_HW_RANDOM_OMAP is explicitly activated for the cortexa72
subtarget because it has an inside-secure,safexcel-eip76 IP core.

This was done with this command on the cortexa9 subtarget:
make kernel_oldconfig
and this one on the other subtargets:
make kernel_oldconfig CONFIG_TARGET=subtarget

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 months agomvebu: Fix typo in MACCHIATOBin detection
Hauke Mehrtens [Thu, 21 Mar 2019 16:56:59 +0000 (17:56 +0100)]
mvebu: Fix typo in MACCHIATOBin detection

The name in the device tree file is written with two C.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
6 months agolinux: Add kmod-sched-act-vlan
Hauke Mehrtens [Thu, 21 Mar 2019 18:16:18 +0000 (19:16 +0100)]
linux: Add kmod-sched-act-vlan

This allows to configure rules to push or pop vlan headers.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
6 months agolinux: Add kmod-sched-flower
Hauke Mehrtens [Thu, 21 Mar 2019 18:16:17 +0000 (19:16 +0100)]
linux: Add kmod-sched-flower

This allows to classify packets based on a configurable combination
of packet keys and masks.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
6 months agolinux: Add kmod-sched-mqprio
Hauke Mehrtens [Thu, 21 Mar 2019 18:16:16 +0000 (19:16 +0100)]
linux: Add kmod-sched-mqprio

This adds Multi-queue priority scheduler (MQPRIO).

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
6 months agolinux: Add kmod-crxypto-xcbc
Hauke Mehrtens [Thu, 21 Mar 2019 18:16:15 +0000 (19:16 +0100)]
linux: Add kmod-crxypto-xcbc

This can be used for IPsec.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
6 months agodropbear: split ECC support to basic and full
Konstantin Demin [Mon, 25 Mar 2019 19:00:28 +0000 (22:00 +0300)]
dropbear: split ECC support to basic and full

- limit ECC support to ec*-sha2-nistp256:
  * DROPBEAR_ECC now provides only basic support for ECC
- provide full ECC support as an option:
  * DROPBEAR_ECC_FULL brings back support for ec{dh,dsa}-sha2-nistp{384,521}
- update feature costs in binary size

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: rewrite init script startup logic to handle both host key files
Konstantin Demin [Mon, 25 Mar 2019 18:59:47 +0000 (21:59 +0300)]
dropbear: rewrite init script startup logic to handle both host key files

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: change type of config option "Port" to scalar type "port"
Konstantin Demin [Mon, 25 Mar 2019 18:42:09 +0000 (21:42 +0300)]
dropbear: change type of config option "Port" to scalar type "port"

it was never used anywhere, even LuCI works with "Port" as scalar type.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: introduce config option "keyfile" (replacement for "rsakeyfile")
Konstantin Demin [Mon, 25 Mar 2019 18:42:01 +0000 (21:42 +0300)]
dropbear: introduce config option "keyfile" (replacement for "rsakeyfile")

* option "keyfile" is more generic than "rsakeyfile".
* option "rsakeyfile" is considered to be deprecated and should be removed
  in future releases.
* warn user (in syslog) if option "rsakeyfile" is used
* better check options ("rsakeyfile" and "keyfile"): don't append
  "-r keyfile" to command line if file is absent (doesn't exist or empty),
  warn user (in syslog) about such files

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: add initial support for ECC host key
Konstantin Demin [Mon, 25 Mar 2019 18:41:45 +0000 (21:41 +0300)]
dropbear: add initial support for ECC host key

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: fix regression where TTY modes weren't reset for client
Konstantin Demin [Mon, 25 Mar 2019 18:41:37 +0000 (21:41 +0300)]
dropbear: fix regression where TTY modes weren't reset for client

cherry-pick upstream commit 7bc6280613f5ab4ee86c14c779739070e5784dfe

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: honour CFLAGS while building bundled libtomcrypt/libtommath
Konstantin Demin [Mon, 25 Mar 2019 18:41:27 +0000 (21:41 +0300)]
dropbear: honour CFLAGS while building bundled libtomcrypt/libtommath

Felix Fietkau pointed out that bundled libtomcrypt/libtommath do funny stuff with CFLAGS.
fix this with checking environment variable OPENWRT_BUILD in both libs.
change in dropbear binary size is drastical: 221621 -> 164277.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: fix hardening flags during configure
Konstantin Demin [Mon, 25 Mar 2019 18:40:59 +0000 (21:40 +0300)]
dropbear: fix hardening flags during configure

compiler complains about messed up CFLAGS in build log:
  <command-line>: warning: "_FORTIFY_SOURCE" redefined
  <command-line>: note: this is the location of the previous definition

and then linker fails:
  mips-openwrt-linux-musl-gcc [...] -o dropbearmulti [...]
  collect2: fatal error: ld terminated with signal 11 [Segmentation fault]
  compilation terminated.
  /staging_dir/toolchain-mips_24kc_gcc-8.2.0_musl/mips-openwrt-linux-musl/bin/ld: /tmp/cc27zORz.ltrans0.ltrans.o: relocation R_MIPS_HI16 against `cipher_descriptor' can not be used when making a shared object; recompile with -fPIC
  /staging_dir/toolchain-mips_24kc_gcc-8.2.0_musl/mips-openwrt-linux-musl/bin/ld: /tmp/cc27zORz.ltrans1.ltrans.o: relocation R_MIPS_HI16 against `ses' can not be used when making a shared object; recompile with -fPIC
  /staging_dir/toolchain-mips_24kc_gcc-8.2.0_musl/mips-openwrt-linux-musl/bin/ld: /tmp/cc27zORz.ltrans2.ltrans.o: relocation R_MIPS_HI16 against `cipher_descriptor' can not be used when making a shared object; recompile with -fPIC
  /staging_dir/toolchain-mips_24kc_gcc-8.2.0_musl/mips-openwrt-linux-musl/bin/ld: BFD (GNU Binutils) 2.31.1 assertion fail elfxx-mips.c:6550
  [...]
  /staging_dir/toolchain-mips_24kc_gcc-8.2.0_musl/mips-openwrt-linux-musl/bin/ld: BFD (GNU Binutils) 2.31.1 assertion fail elfxx-mips.c:6550
  make[3]: *** [Makefile:198: dropbearmulti] Error 1
  make[3]: *** Deleting file 'dropbearmulti'
  make[3]: Leaving directory '/build_dir/target-mips_24kc_musl/dropbear-2018.76'
  make[2]: *** [Makefile:158: /build_dir/target-mips_24kc_musl/dropbear-2018.76/.built] Error 2
  make[2]: Leaving directory '/package/network/services/dropbear'

This FTBFS issue was caused by hardening flags set up by dropbear's configure script.

By default, Dropbear offers hardening via CFLAGS and LDFLAGS,
but this may break or confuse OpenWrt settings.

Remove most Dropbear's hardening settings in favour of precise build,
but preserve Spectre v2 mitigations:
* -mfunction-return=thunk
* -mindirect-branch=thunk

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agodropbear: bump to 2019.77
Konstantin Demin [Mon, 25 Mar 2019 18:40:38 +0000 (21:40 +0300)]
dropbear: bump to 2019.77

- drop patches applied upstream:
  * 010-runtime-maxauthtries.patch
  * 020-Wait-to-fail-invalid-usernames.patch
  * 150-dbconvert_standalone.patch
  * 610-skip-default-keys-in-custom-runs.patch
- refresh patches
- move OpenWrt configuration from patch to Build/Configure recipe,
  thus drop patch 120-openwrt_options.patch

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
6 months agoath10k-ct: Update to 2019-03-25
Christian Lamparter [Mon, 25 Mar 2019 17:27:59 +0000 (18:27 +0100)]
ath10k-ct: Update to 2019-03-25

2e917efb607f ath10k: Add slow-pci bus work-around, sw-crypt blockack support.
cc73ceb0dbc7 ath10k: Fix out-of-tree compile for 4.16 driver.
4b3cf7c20972 ath10k: Improve tx-status reporting.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agoath10k-firmware: update Candela Tech firmware images
Christian Lamparter [Mon, 25 Mar 2019 17:14:05 +0000 (18:14 +0100)]
ath10k-firmware: update Candela Tech firmware images

Release notes since last time:

Release notes for wave-1:

- 2019-03-12: Add btcoex feature flag for 2.4Ghz only adapters,
      backported from upstream 10.2 firmware.

- 2019-03-12: Support offloading decrypt of PMF blockack frames
      to the host. This lets us do blockack with PMF and
      rx-sw-crypt. Normal hwcrypt scenarios would not need this.

Release notes for wave-2:

- 2019-03-12: Fix crash when tearing down VI TID when pending frames
      exist. Could reproduce this while doing rmmod when VI
      traffic was flowing and PMF was enabled but broken.
      Bad luck could rarely cause it to happen in more normal
      config too.

- 2019-03-12: Support offloading decrypt of PMF blockack frames to
      the host.  This lets us do blockack with PMF and
      rx-sw-crypt. Normal hwcrypt scenarios would not need this.

- 2019-03-12: Re-work problematic patch that attempted to fix transmit
      on non-QOS tids. It appears buggy in several ways,
      hopefully improved now.  This was introduced last fall.
      See github bug 78.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agogemini: Classify Raidsonic NAS IB-4220-B as a NAS
Christian Lamparter [Sun, 24 Mar 2019 21:00:15 +0000 (22:00 +0100)]
gemini: Classify Raidsonic NAS IB-4220-B as a NAS

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agogemini: D-Link DNS-313 is a NAS
Christian Lamparter [Sun, 24 Mar 2019 20:59:06 +0000 (21:59 +0100)]
gemini: D-Link DNS-313 is a NAS

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agoapm821xx: MBL: set DEVICE_TYPE to NAS
Christian Lamparter [Sun, 24 Mar 2019 20:53:29 +0000 (21:53 +0100)]
apm821xx: MBL: set DEVICE_TYPE to NAS

The MyBook Live is a NAS.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agotoolchain: ARM: Fix option conflict with multiarch
Boris Krasnovskiy [Thu, 21 Mar 2019 03:00:51 +0000 (23:00 -0400)]
toolchain: ARM: Fix option conflict with multiarch

This problem exposed when compiling glibc, but applicable across the
board. gcc compiles runtime libraries for all supported architectures,
unless otherwise specified, and later selects applicable library based
-m[arch,cpu,*] options, thus these options should not be passed to gcc
as they break the compilation process.

Signed-off-by: Boris Krasnovskiy <borkra@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[modified so it only touches ARM - I'm too chicken, changed authors email]

6 months agotoolchain: ARM: Fix toolchain compilation for gcc 8.x
Boris Krasnovskiy [Sun, 10 Mar 2019 01:45:43 +0000 (20:45 -0500)]
toolchain: ARM: Fix toolchain compilation for gcc 8.x

Set the toolchain's ARM CPU and FPU architectures by utilizing' gcc's
--with-cpu / --with-fpu configure options that: "Specify which cpu
variant the compiler should generate code for by default. cpu will
be used as the default value of the -mcpu= switch."

This will resolve the following kernel compilation failures under
gcc 8.x on ARM because the kernel wants to set (possibly conflicting)
optimization flags.

.../ccyVnmrs.s:204: Error: selected processor does not support `dmb ish' in ARM mode
.../ccyVnmrs.s:215: Error: architectural extension `mp' is not allowed for the current base architecture
.../ccyVnmrs.s:216: Error: selected processor does not support `pldw [r4]' in ARM mode

Because this is a big change, the .config and toolchain need to be
refreshed (as in removed and regenerated).

Reported-by: Ansuel Smith <ansuelsmth@gmail.com>
Reported-by: Daniel Engberg <daniel.engberg.lists@pyret.net> [#1203]
Signed-off-by: Boris Krasnovskiy <borkra@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [extended commit message,
removed now-deprecated CPU_CFLAGS, changed author to gmail address]

6 months agoipq40xx: essedma: Add fix for memory allocation issues
Christian Lamparter [Tue, 19 Mar 2019 15:44:21 +0000 (16:44 +0100)]
ipq40xx: essedma: Add fix for memory allocation issues

This patch adds a ChromiumOS 3.18 patch [0] that fixes memory
allocation issues under memory pressure by keeping track
of missed allocs and rectify the omission at a later date.
It also adds ethtool counters for memory allocation
failures accounting so this can be verified.

[0] <https://chromium.googlesource.com/chromiumos/third_party/kernel/+/d4e1e4ce6801f9eddce056c58f5a288864955265>

Reported-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 months agotools/ccache: update to 3.6
Deng Qingfang [Fri, 15 Mar 2019 18:05:04 +0000 (02:05 +0800)]
tools/ccache: update to 3.6

Update ccache to 3.6

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
6 months agoramips: allow packets with ttl=0
Felix Fietkau [Sun, 24 Mar 2019 11:05:56 +0000 (12:05 +0100)]
ramips: allow packets with ttl=0

Some broken ISPs (e.g. Comcast) send DHCPv6 packets with hop limit=0.
This trips up the TTL=0 check in the PPE if enabled.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 months agoath79: add support for COMFAST CF-E5/E7
Ding Tengfei [Thu, 21 Mar 2019 11:50:01 +0000 (19:50 +0800)]
ath79: add support for COMFAST CF-E5/E7

COMFAST CF-E5/E7 is a outdoor 4G LTE AP with PoE support, based on
Qualcomm/Atheros QCA9531.

Short specification:

    2x 10/100 Mbps Ethernet, with 24v PoE support
    64 MB of RAM (DDR2)
    16 MB of FLASH (SPI)
    2T2R 2.4 GHz, 802.11b/g/n
    built-in 1x 3 dBi antennas
    output power (max): 80 mW (19 dBm)
    Qucetel EC20 LTE MODULE(1x external detachable antenna)

Flash instruction:

Original firmware is based on OpenWrt.
Use sysupgrade image directly in vendor GUI.

Signed-off-by: Ding Tengfei <dtf@comfast.cn>
[commit subject fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
7 months agoath79: add TP-Link TL-WR710N v1
Marcin Jurkowski [Sun, 16 Dec 2018 01:22:45 +0000 (02:22 +0100)]
ath79: add TP-Link TL-WR710N v1

This commit adds support for TP-Link TL-WR710N v1 router.

CPU: Atheros AR9331 400MHz
RAM: 32MB
FLASH: 8MiB
PORTS: 1 Port 100/10 LAN (connected to a switch), 1 Port 100/10 WAN
WiFi: Atheros AR9331 1x2:1 bgn
USB: ChipIdea HDRC USB2.0
LED: SYS
BTN: Reset

Sysupgrade from `ar71xx` works without glitches.
Network interfaces assigned for LAN and WAN ports are `eth1` and `eth0`
respectively, what's consistent with `ar71xx` target. Wireless radio
path is automatically upgraded from `platform/ar933x_wmac` to
`platform/ahb/18100000.wmac`.

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
7 months agoath79: add support for TP-Link TL-WR941N v7 (CN)
Chuanhong Guo [Sun, 20 Jan 2019 15:30:27 +0000 (23:30 +0800)]
ath79: add support for TP-Link TL-WR941N v7 (CN)

This adds support for the Chinese version of TL-WR941N v7.
It uses QCA9558+AR8236 while the international version
uses TP9343 instead.

Specification:
- SoC: Qualcomm Atheros QCA9558
- Flash: 4 MB
- RAM: 64 MB
- Ethernet: Atheros AR8236 with 5 FE ports

Flash instruction:
  Upload the generated factory firmware on web interface.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agoath79: ag71xx: remove switch driver in ag71xx
Chuanhong Guo [Fri, 11 Jan 2019 06:00:03 +0000 (14:00 +0800)]
ath79: ag71xx: remove switch driver in ag71xx

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agoath79: use ar8216 for builtin switch
Chuanhong Guo [Fri, 11 Jan 2019 05:58:28 +0000 (13:58 +0800)]
ath79: use ar8216 for builtin switch

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: introduce qca,mib-poll-interval property
Chuanhong Guo [Wed, 23 Jan 2019 05:46:15 +0000 (13:46 +0800)]
generic: ar8216: introduce qca,mib-poll-interval property

This allows users to specify a shorter mib poll interval so that the
swconfig leds could behave normal with current get_port_stats()
implementation.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: do a software reset for switch during hw_init
Chuanhong Guo [Sun, 20 Jan 2019 14:25:25 +0000 (22:25 +0800)]
generic: ar8216: do a software reset for switch during hw_init

This applies to ar8216 and ar8236. QCA's newer U-boot will enable
the switch mdio master for FE switches which makes phy inaccessible
from CPU mdio. (e.g. on TP-Link TL-WR941N v7 Chinese version which
uses QCA9558+AR8236.) For these devices PHY probing is broken and
mdio device probing is a must. We also need to disable switch mdio
master in driver for later PHY initialization.

Do a soft reset during hw_init so that mdio master can be disabled
and expose PHYs to CPU mdio for later PHY accessing.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: mib_work_func: read all port mibs everytime
Chuanhong Guo [Fri, 11 Jan 2019 05:18:30 +0000 (13:18 +0800)]
generic: ar8216: mib_work_func: read all port mibs everytime

ar8xxx_mib_capture will update mib counters for all ports. Current
code only update one port at a time and the data for other ports
are lost.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: add support for get_port_stats()
Chuanhong Guo [Fri, 11 Jan 2019 03:51:54 +0000 (11:51 +0800)]
generic: ar8216: add support for get_port_stats()

Partially reverts commit eff3549c5883a9abc5dbff00c084cabbcfdf4437.

AR7240 and AR9341 have buggy hardware switch LED trigger. The AR7240
one doesn't blink and the blinking of port0/port5 is reversed on
AR9341 if we swap PHY0 and PHY4. (Only blinking is reversed, which
means LED for PHY0 will lit when PHY0 is link up and will blink when
PHY4 has active link and vice versa.) On these two chips a software
swconfig LED trigger is required.

This commit adds swconfig port stats back but:
 1. move checking of mib_t/rxb_id into ar8xxx_chip since we can't
    distinguish ar7240sw and ar8216 using only chip id.
 2. don't update mib counter in get_port_stat. This function is called
    every 0.01s and this capturing procedure will take up a lot of CPU.
    We already have a mib_work_func updating mib counters every 2s so
    return the saved counter instead of fetching new data. The blinking
    rate will be weird but it should solve the previously mentioned CPU
    time problem.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: add support for ar724x/ar933x builtin switch
Chuanhong Guo [Thu, 10 Jan 2019 15:53:23 +0000 (23:53 +0800)]
generic: ar8216: add support for ar724x/ar933x builtin switch

This builtin switch is a bugless ar8216 with different mib counters
and gigabit cpu port.
Atheros uses the same device ID and it's impossible to distinguish
the standalone one and the builtin one. So we add support to mdio
device probe only.

This switch doesn't have buggy vlan tag so it's not needed to enable
atheros header. This commit changed ar8216_setup_port so that it can
be reused for this switch.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: mdiodev: add qca,phy4-mii-enable option
Chuanhong Guo [Thu, 10 Jan 2019 15:31:35 +0000 (23:31 +0800)]
generic: ar8216: mdiodev: add qca,phy4-mii-enable option

This option allows setting phy4 as a phy connected directly to CPU.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: ar8229: add phy_read/phy_write
Chuanhong Guo [Thu, 10 Jan 2019 14:38:13 +0000 (22:38 +0800)]
generic: ar8216: ar8229: add phy_read/phy_write

the added function also works for ar8216 and will be used in the
following ar7240 support.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: add support for separated mdio bus for phy access
Chuanhong Guo [Thu, 10 Jan 2019 11:30:35 +0000 (19:30 +0800)]
generic: ar8216: add support for separated mdio bus for phy access

Atheros FE switches have a builtin mdio master available for PHY
accessing and on ar724x/ar933x builtin switches this mdio master
is the only way of accessing PHYs.

After this patch if there is phy_read/phy_write method available
in ar8xxx_chip we register a separated mdio bus for accessing PHYs.

Still adds support for mdio device probing only since this isn't
needed for those switches registered using PHY probing.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: add support for ar8229
Chuanhong Guo [Thu, 10 Jan 2019 10:55:27 +0000 (18:55 +0800)]
generic: ar8216: add support for ar8229

ar8229 is the builtin switch in ar934x and later chips. There is
also a standalone version available and their registers/functions
are the same.

This commit added support for the builtin ar8229. The only thing
missing for standalone ar8229 should be phy modes. Since I don't
have a router using that, this commit doesn't add support for
other phy modes.

Only add its support for mdio-device probing method because the
current PHY probing can't return 1G speed when it's a FE switch.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: add mdio-device probing support
Chuanhong Guo [Thu, 10 Jan 2019 07:31:53 +0000 (15:31 +0800)]
generic: ar8216: add mdio-device probing support

currently only ar8327 and ar8236 are added since they are the only
two I could verify.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: move ar8xxx_id_chip into ar8xxx_phy_probe
Chuanhong Guo [Thu, 10 Jan 2019 06:54:56 +0000 (14:54 +0800)]
generic: ar8216: move ar8xxx_id_chip into ar8xxx_phy_probe

ar8xxx_id_chip is used to determine current ar8xxx_chip using switch
id and this isn't needed during mdiodev probing.
Move it out of ar8xxx_probe_switch so that we can skip it.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: add device struct into struct ar8xxx_priv
Chuanhong Guo [Thu, 10 Jan 2019 05:23:42 +0000 (13:23 +0800)]
generic: ar8216: add device struct into struct ar8xxx_priv

dev has been taken up by switch_dev so it's named pdev instead.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: drop duplicated include
Chuanhong Guo [Thu, 10 Jan 2019 05:16:33 +0000 (13:16 +0800)]
generic: ar8216: drop duplicated include

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agogeneric: ar8216: move chip id reading into a separate function
Chuanhong Guo [Thu, 10 Jan 2019 05:05:00 +0000 (13:05 +0800)]
generic: ar8216: move chip id reading into a separate function

for mdio-device probing we still need to read chip id but ar8xxx_chip
can be determined using drvdata. We can't distinguish the buggy
standalone ar8216 and the builtin ar8216 in ar724x/ar933x using chip
id.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agoath79: add support for linux 4.19
Chuanhong Guo [Thu, 13 Dec 2018 07:14:10 +0000 (15:14 +0800)]
ath79: add support for linux 4.19

The following patches are dropped because they are merged upstream:
-0001-tty-serial-drop-QCA-pecific-SoC-symbols.patch
-0006-usb-drop-deprecated-symbols.patch
-0009-MIPS-ath79-add-lots-of-missing-registers.patch
-0010-MIPS-ath79-add-support-for-QCA953x-QCA956x-TP9343.patch
-0014-MIPS-ath79-finetune-cpu-overrides.patch
-0015-MIPS-ath79-enable-uart-during-early_prink.patch
-0016-MIPS-ath79-get-PCIe-controller-out-of-reset.patch

This patch is dropped due to the introduction of spi-mem framework:
-461-spi-ath79-add-fast-flash-read.patch

Thank to Michael Marley @mamarley for his work on this patch:
-910-unaligned_access_hacks.patch

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[synchronized kernel config with make kernel_oldconfig]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
7 months agoath79: ag71xx: pass correct device pointer to dma functions
Chuanhong Guo [Thu, 13 Dec 2018 07:12:01 +0000 (15:12 +0800)]
ath79: ag71xx: pass correct device pointer to dma functions

linux 4.19 doesn't accept a NULL device for these functions.
It also complains that the device struct in net_device doesn't have
a dma_mask set.
Pass the device struct from platform_device for these functions.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agoath79: ag71xx: add support for timer functions in linux 4.15+
Chuanhong Guo [Wed, 12 Dec 2018 11:09:35 +0000 (19:09 +0800)]
ath79: ag71xx: add support for timer functions in linux 4.15+

Kernel newer than 4.15 dropped "data" field and used from_timer
to cast out the parent struct pointer for current timer.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
7 months agoramips: add support for DLINK DIR-510L
Pawel Dembicki [Mon, 19 Mar 2018 18:15:29 +0000 (19:15 +0100)]
ramips: add support for DLINK DIR-510L

The DIR-510L Wireless Router are based on the MT7620A SoC.

Specification:

-MediaTek MT7620A (580 Mhz)
-128 MB of RAM
-16 MB of FLASH
-802.11bgn radio
-1x 10/100 Mbps Ethernet
-2x internal, non-detachable antennas
-UART (J3) header on PCB (57600 8n1)
-1x bi-color LED (GPIO-controlled), 2x button
-JBOOT bootloader

Known issues:
-Ethernet port is used as LAN
-No communication with charger IC. (uart bitbang needed)

Installation:
Apply factory image via d-link http web-gui.

How to revert to OEM firmware:
1.) Push the reset button and turn on the power. Wait until LED start blinking (~10sec.)
2.) Upload original factory image via JBOOT http (IP: 192.168.123.254)
3.) If http doesn't work, it can be done with curl command:
    curl -F FN=@XXXXX.bin http://192.168.123.254/upg
    where XXXXX.bin is name of firmware file.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
[fixed whitespace issue in 10-rt2x00-eeprom]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
7 months agofirmware-utils: mkdlinkfw: add kernel image offset
Pawel Dembicki [Thu, 19 Apr 2018 17:36:55 +0000 (19:36 +0200)]
firmware-utils: mkdlinkfw: add kernel image offset

Some boards with JBOOT have partiton between bootloader
and kernel image. This patch add possibility to change kernel
partition start address.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
7 months agoramips: fix wrong i2s clock unit from kHz to MHz
Qin Wei [Tue, 5 Mar 2019 01:58:55 +0000 (09:58 +0800)]
ramips: fix wrong i2s clock unit from kHz to MHz

clk_get_rate returns the current clock rate in Hz for a clock source so
if we divide it by 1M, then we get frequency in MHz and not kHz.

Signed-off-by: Qin Wei <support@vocore.io>
[added missing commit message, and fixed author with SoB from PR message]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
7 months agomt76: update to the latest version
Felix Fietkau [Sat, 23 Mar 2019 17:00:00 +0000 (18:00 +0100)]
mt76: update to the latest version

4d8c7e8 mt76: mt76x02: send no-skb tx status without holding the status lock
7e9e9ad mt76: mt7603: add missing initialization for dev->ps_lock
3a7e6bb mt76: fix potential deadlock on cancelling workqueues
deacb8f mt76: fix using mac80211 tx skb header padding
c9402eb mt76: use napi polling for tx cleanup
60e508e mt76: use readl/writel instead of ioread32/iowrite32
5912e8a mt7603: fix sequence number assignment
95a83cc mt7603: send BAR after powersave wakeup

Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 months agokernel: bump 4.14 to 4.14.107
Koen Vandeputte [Wed, 20 Mar 2019 12:28:57 +0000 (13:28 +0100)]
kernel: bump 4.14 to 4.14.107

Refreshed all patches.

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6, x86_64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agokernel: bump 4.9 to 4.9.164
Koen Vandeputte [Wed, 20 Mar 2019 12:27:16 +0000 (13:27 +0100)]
kernel: bump 4.9 to 4.9.164

Refreshed all patches.

Compile-tested on: ar7
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agoimx6: fix legacy IRQ support (4.19)
Koen Vandeputte [Thu, 21 Mar 2019 14:08:26 +0000 (15:08 +0100)]
imx6: fix legacy IRQ support (4.19)

The PCIe DWC host controller is now using MSI
(Message-signaled-interrupts) by default.

While ath9k itself does support MSI here, a lot of wlan adapters do not.
Avoid non-functioning cards by simply continue to disable MSI for now.

This can be done by appending "pci=nomsi" to the boot cmdline.

Also an extra fix needs to be backported which avoids MSI initialization
which prevented legacy IRQ's init from taking over.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agoimx6: enable PCIe (4.19)
Koen Vandeputte [Thu, 21 Mar 2019 14:02:43 +0000 (15:02 +0100)]
imx6: enable PCIe (4.19)

The DWC host controller symbols are now depending on a few others

Fixes: ca1b93f038a5 ("imx6: add support for kernel 4.19")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agoimx6: enable crypto acceleration (4.19)
Koen Vandeputte [Thu, 21 Mar 2019 16:00:24 +0000 (17:00 +0100)]
imx6: enable crypto acceleration (4.19)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agoimx6: enable crypto acceleration
Koen Vandeputte [Thu, 21 Mar 2019 16:38:44 +0000 (17:38 +0100)]
imx6: enable crypto acceleration

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agoimx6: refresh kernel configs
Koen Vandeputte [Thu, 21 Mar 2019 13:56:13 +0000 (14:56 +0100)]
imx6: refresh kernel configs

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
7 months agoglibc: update to latest 2.27 commit
Hans Dedecker [Fri, 22 Mar 2019 08:23:48 +0000 (09:23 +0100)]
glibc: update to latest 2.27 commit

1ab314d8d3 S390: Mark vx and vxe as important hwcap.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
7 months agoath79: Add support for Ubiquiti NanoBeam AC
Tobias Schramm [Tue, 8 Jan 2019 14:27:57 +0000 (15:27 +0100)]
ath79: Add support for Ubiquiti NanoBeam AC

The NanoBeam is a small AR9342 based directional 5 GHz AC CPE with hardware
almost identical to the Ubiquiti NanoStation AC loco. Over the NanoStation
AC loco it has 5 additional LEDs. Four of those LEDs are used as rssi
indicators, the fifth LED is used as an ethernet link/activity indicator.

CPU:   Atheros AR9342 SoC
RAM:   64 MB DDR2
Flash: 16 MB NOR SPI
WLAN:  QCA988X
Ports: 1x GbE

Flashing procedure is identical to the NanoStation AC loco and can be performed
either via serial or the factory firmware upgrade.

Serial flashing:

1. Connect to serial header on device (8N1 115200)
2. Power on device and enter uboot console
3. Set up tftp server serving an openwrt initramfs build
4. Load initramfs build using the command tftpboot in the uboot cli
5. Boot the loaded image using the command bootm
6. Copy squashfs openwrt sysupgrade build to the booted device
7. Use mtd to write sysupgrade to partition "firmware"
8. Reboot and enjoy

Flashing through factory firmware:

1. Ensure firmware version v8.5.0.36727 is installed. Up/downgrade to this exact version.
2. Patch fwupdate.real binary using `hexdump -Cv /bin/ubntbox | sed 's/14 40 fe fe/00 00 00 00/g' | hexdump -R > /tmp/fwupdate.real`
3. Make the patched fwupdate.real binary executable using `chmod +x /tmp/fwupdate.real`
4. Copy the squashfs factory image to /tmp on the device
5. Flash OpenWRT using `/tmp/fwupdate.real -m <squashfs-factory image>`
6. Wait for the device to reboot

Thanks to @cybermaus for testing!

Tested-by: Maurits van Dueren den Hollander <cybermaus@gmail.com>
Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
7 months agoar71xx: Add support for Mikrotik RB SXT 2nD r3
Xavier Douville [Thu, 21 Mar 2019 13:21:34 +0000 (09:21 -0400)]
ar71xx: Add support for Mikrotik RB SXT 2nD r3

The Mikrotik RouterBOARD SXT 2nD r3 is an outdoor WiFi AP / CPE
with a single 2.4 GHz radio and a 100 Mbps Ethernet port.
The device similar to the SXT 2nD r2, but it has SPI NOR flash instead
of NAND flash.

Hardware
--------
CPU:   Atheros AR9344 (600 MHz)
RAM:   64 MiB
FLASH: 16 MiB SPI NOR W25Q128
ETH:   1x 100 Mbps Atheros AG71xx
WiFi: 2T2R 802.11b/g/n (ath9k)
Power: Passive PoE 8-30 V

Installation instructions:

1. Boot openwrt-ar71xx-mikrotik-vmlinux-initramfs.elf using a
   DHCP+TFTP server.
2. Erase the "firmware" partition using the mtd command. This should
   no longer be required once this patch is merged.
3. Use sysupgrade to install to flash. The file
   openwrt-ar71xx-mikrotik-rb-nor-flash-16M-squashfs-sysupgrade.bin
   should be used.

Signed-off-by: Xavier Douville <github@douville.org>
7 months agobuild: suppress error output in feeds.mk
Florian Eckert [Mon, 28 May 2018 09:26:50 +0000 (11:26 +0200)]
build: suppress error output in feeds.mk

If no feed.conf or feeds.conf.default is found on image generation with
the imagebuilder we always get the following message "Unable to open
feeds configuration at <dir>/scripts/feeds line 48." on std error.

To get rid off this needless warning on image generation with the
imagebuilder supress the output in feeds.mk.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
7 months agonetifd: update to latest git HEAD
Hauke Mehrtens [Thu, 21 Mar 2019 15:40:53 +0000 (16:40 +0100)]
netifd: update to latest git HEAD

a8cf037 netifd: wireless: Add support for GCMP cipher
34a70b6 netifd: wireless: Add support for 802.11ad

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 months agoubox: update to latest git HEAD
Hauke Mehrtens [Thu, 21 Mar 2019 15:37:58 +0000 (16:37 +0100)]
ubox: update to latest git HEAD

a782779 kmodloader: increase module name length

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 months agoiwinfo: update to latest git HEAD
Hauke Mehrtens [Thu, 21 Mar 2019 15:31:22 +0000 (16:31 +0100)]
iwinfo: update to latest git HEAD

ce1814b iwinfo: Add device ID for Wilocity Wil6210
a8e8275 iwinfo: Add support for 802.11ad

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 months agoRevert "valgrind: enable LTO and refresh patches"
Hauke Mehrtens [Thu, 21 Mar 2019 14:30:03 +0000 (15:30 +0100)]
Revert "valgrind: enable LTO and refresh patches"

This reverts commit 0331770299b1587a96285fd1af33afe6de4ecbb9.

With LTO enabled valgridn does not build on MIPS32 any more, deactivate
it for now. The patch refresh was not reverted.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
7 months agolibnftnl: bump to latest version
Rosy Song [Thu, 14 Mar 2019 07:09:47 +0000 (15:09 +0800)]
libnftnl: bump to latest version

Signed-off-by: Rosy Song <rosysong@rosinson.com>
7 months agoopenssl: revert disallowing parallel build
Eneas U de Queiroz [Mon, 11 Mar 2019 21:00:58 +0000 (21:00 +0000)]
openssl: revert disallowing parallel build

Openssl 1.1.0 made wholesale changes to its building system.
Apparently, parallel builds are working now.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
7 months agoodhcpd: update to latest git HEAD (FS#2160)
Hans Dedecker [Thu, 21 Mar 2019 14:57:05 +0000 (15:57 +0100)]
odhcpd: update to latest git HEAD (FS#2160)

6d23385 dhcpv6: extra syslog tracing
b076916 dhcpv6/router: add support for mutiple master interfaces
e4a24dc ndp: fix adding proxy neighbor entries
4ca7f7e router: add extra syslog tracing
8318e93 netlink: fix neighbor event handling (FS#2160)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
7 months agoar71xx: Remove ath10k packages from archer-c7-v1 (fixes FS#1743)
Aubrey McIntosh, PhD [Tue, 4 Sep 2018 06:40:10 +0000 (01:40 -0500)]
ar71xx: Remove ath10k packages from archer-c7-v1 (fixes FS#1743)

ath10k_pci driver crashes once loaded and causes boot loops on this
device as 5GHz radio QCA9880-AR1A shipped with this router is broken.
It's not possible to fix this problem in software, miniPCIe radio has to
be replaced.

We could've probably fixed crashing of the ath10k driver by reverting
following upstream commit:

 commit 1a7fecb766c83dace747f42b25bbb544b00a0163
 Author: Michal Kazior <michal.kazior@tieto.com>
 Date:   Sat Jan 24 12:14:48 2015 +0200

    ath10k: reset chip before reading chip_id in probe

but it's not worth the effort as it wouldn't make that 5GHz radio usable
anyway. So it seems more convenient to just remove the crashing driver
and provide bootable images, as I believe, that a router that is working
but degraded is better than a router that will not work.

For details please see discussions in PR[1] and in FS#1743[2].

1. https://github.com/openwrt/openwrt/pull/1349
2. https://bugs.openwrt.org/index.php?do=details&task_id=1743

Signed-off-by: Aubrey McIntosh, PhD <aubrey.mcintosh@utexas.edu>
[subject and commit message tweaks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
7 months agoath79: GL.iNet AR300M-nand/nor: correct LAN LED
Andreas Ziegler [Tue, 19 Mar 2019 16:41:24 +0000 (17:41 +0100)]
ath79: GL.iNet AR300M-nand/nor: correct LAN LED

The port labled as "LAN" is eth1.
That's different from the -lite variant,
where the only existing port eth0 is used as LAN

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
7 months agouboot-fritz4040: fix PKG_MIRROR_HASH
Christian Lamparter [Tue, 19 Mar 2019 16:37:07 +0000 (17:37 +0100)]
uboot-fritz4040: fix PKG_MIRROR_HASH

The PKG_MIRROR_HASH was for some reason wrong.

Fixes: d75db67870fa ("uboot-fritz4040: bump version to 2019-03-03")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
7 months agoadb: fix missing PKG_MIRROR_HASH
Christian Lamparter [Tue, 19 Mar 2019 10:17:59 +0000 (11:17 +0100)]
adb: fix missing PKG_MIRROR_HASH

This package was missing a PKG_MIRROR_HASH value.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
7 months agoramips: Speed up eeprom read/write
Adrian Schmutzler [Sun, 17 Mar 2019 23:07:31 +0000 (00:07 +0100)]
ramips: Speed up eeprom read/write

Reading and writing to and from flash storage is slowed down
enormously by some functions which use a block size of 1.

This patch reworks the extraction scripts to be much faster and
efficient by reading and writing in possibly one big block.

This is based on the initial commit a69e101 for ipq40xx by
Christian Lamparter <chunkeey@gmail.com>.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Rosen Penev <rosenp@gmail.com>
7 months agoramips: Xiaomi MIR3G: detect board name from DTS
Ozgur Can Leonard [Tue, 19 Mar 2019 07:04:27 +0000 (10:04 +0300)]
ramips: Xiaomi MIR3G: detect board name from DTS

- Former "mir3g" board name becomes "xiaomi,mir3g".
- Reorder some entries to maintain alphabetical order.
- Change DTS so status LEDs (yellow/red/blue) mimic
  Xiaomi stock firmware: (Section Indicator)
<http://files.xiaomi-mi.co.uk/files/router_pro/router%20PRO%20EN.pdf>
<http://files.xiaomi-mi.co.uk/files/Mi_WiFi_router_3/MiWiFi_router3_EN.pdf>
|Yellow: Update (LED flickering), the launch of the system (steady light);
|Blue: during normal operation (steady light);
|Red: Safe mode (display flicker), system failure (steady light);

Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com>
[Added link to similar Router 3 model]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>