openwrt/staging/nbd.git
6 years agomvebu: fix SFP insert detection GPIO name on 4.14
Jonas Gorski [Sun, 25 Feb 2018 21:52:41 +0000 (22:52 +0100)]
mvebu: fix SFP insert detection GPIO name on 4.14

When SFP support was accepted upstream, the expected GPIO names were
slightly changed, breaking SFP insert detection. Update the DTS file to
the expected name to make SFP work again.

Fixes: 4ccad922293a ("mvebu: Add support for kernel 4.14")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
6 years agokernel: more fixes for flow offload
Felix Fietkau [Sun, 25 Feb 2018 17:22:41 +0000 (18:22 +0100)]
kernel: more fixes for flow offload

- fix TCP connection state
- fix checksum error on DNAT

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoperf: restrict libunwind dependency to archs that actually support libunwind
Matthias Schiffer [Fri, 23 Feb 2018 15:17:57 +0000 (16:17 +0100)]
perf: restrict libunwind dependency to archs that actually support libunwind

Allow building perf on uncommon targets again.

Depending on the kernel version, not all of these archs will actually use
libunwind in perf. Still, it seems simpler and less error-prone to use the
same list that is defined in the libunwind package.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agolibunwind: fix build with musl on PPC
Matthias Schiffer [Fri, 23 Feb 2018 15:17:57 +0000 (16:17 +0100)]
libunwind: fix build with musl on PPC

Works around two incompatiblities between glibc and (POSIX-compliant) musl:

- missing register definitions from asm/ptrace.h
- non-POSIX-compliant ucontext_t on PPC32 with glibc

Compile tested on mpc85xx.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agokernel: fix crash in flow offload code when cleaning up unregistered hooks
Felix Fietkau [Sun, 25 Feb 2018 15:23:07 +0000 (16:23 +0100)]
kernel: fix crash in flow offload code when cleaning up unregistered hooks

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: remove nf_flow_table hardware offload patch (it is not ready yet)
Felix Fietkau [Sat, 24 Feb 2018 20:04:42 +0000 (21:04 +0100)]
kernel: remove nf_flow_table hardware offload patch (it is not ready yet)

It also does not have any users yet. It will be addde back when the core
API issues have been sorted out

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: add minimal TCP state tracking to flow offload support
Felix Fietkau [Sun, 25 Feb 2018 14:48:23 +0000 (15:48 +0100)]
kernel: add minimal TCP state tracking to flow offload support

Fixes issues with connections hanging after >30 seconds idle time

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agohostapd: do not register ubus objects for mesh interfaces
Felix Fietkau [Sat, 24 Feb 2018 20:21:09 +0000 (21:21 +0100)]
hostapd: do not register ubus objects for mesh interfaces

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoodhcp6c: rework sendopts handling
Hans Dedecker [Sat, 24 Feb 2018 19:59:10 +0000 (20:59 +0100)]
odhcp6c: rework sendopts handling

Bring logic of sendopts handling in line with ip6prefix handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
6 years agoodhcp6c: support multiple additional user prefixes
Jo-Philipp Wich [Wed, 14 Feb 2018 13:58:07 +0000 (14:58 +0100)]
odhcp6c: support multiple additional user prefixes

Support configuration in the form...

    list ip6prefix 2001:db8:1234::/64
    list ip6prefix 2001:db8:5678::/64

... to allow specifying multiple additional IPv6 prefixes.

Implements feature request FS#1361.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
6 years agoethtool: import from packages, add myself as maintainer
Felix Fietkau [Sat, 24 Feb 2018 15:12:19 +0000 (16:12 +0100)]
ethtool: import from packages, add myself as maintainer

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoramips: mt7621: add Mediatek AP-MT7621A-V60 EVB support
Roman Yeryomin [Thu, 22 Feb 2018 16:08:14 +0000 (18:08 +0200)]
ramips: mt7621: add Mediatek AP-MT7621A-V60 EVB support

This board has:
- mt7621 SoC
- 8MB SPI flash
- 128MB RAM
- 5x ethernet ports from internal (SoC) switch
- 1x ethernet port sitting on gmac2 and IC+ phy (not yet supported)
- 3x PCIe slots
- 1x USB 2.0 and 1x USB 3.0
- sound based on wm8960
- SDXC card slot (full size)

First fw write from interactive u-boot menu, interrupt with 2.
After that sysupgrade.

Tested both with 4.9 and 4.14

Signed-off-by: Roman Yeryomin <roman@advem.lv>
6 years agoramips: remove chunked-io patch and set spi->max_transfer_size instead
Felix Fietkau [Thu, 22 Feb 2018 09:09:30 +0000 (10:09 +0100)]
ramips: remove chunked-io patch and set spi->max_transfer_size instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: optimize for performance by default starting with 4.14
Felix Fietkau [Thu, 22 Feb 2018 19:18:58 +0000 (20:18 +0100)]
kernel: optimize for performance by default starting with 4.14

Keep size optimizations for smaller targets that already switched

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: generic: Fix skip GRO for foreign MAC address patches
Hauke Mehrtens [Sat, 24 Feb 2018 11:47:59 +0000 (12:47 +0100)]
kernel: generic: Fix skip GRO for foreign MAC address patches

Somewhere in the kernel 4.9 migration process it looks like this patch
was broken. The update should be done when a device is added to the
bridge and when it gets removed, currently it is only done on the remove
path twice which does not make any sense.
I do not have a setup to test this now so this is only compile tested.

Fixes: f791fb4af450 ("kernel: add linux 4.9 support")
Fixes: b3f95490b9be ("kernel: generic: Add kernel 4.14 support")
Reported-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 years agoutil-linux: add lscpu package
Tomasz Moń [Tue, 20 Feb 2018 16:14:06 +0000 (17:14 +0100)]
util-linux: add lscpu package

lscpu is used by lxc-debian template.

Signed-off-by: Tomasz Moń <desowin@gmail.com>
6 years agosamba36: fix build (issue #5574)
Jakub Tymejczyk [Wed, 21 Feb 2018 11:55:31 +0000 (12:55 +0100)]
samba36: fix build (issue #5574)

As indicated in #5574 samba fails to build with linker error due to lack
of talloc_* functions when the packet libtalloc also gets build.

According to Makefile it is compiled with "--without-libtalloc" option.
Running ./configure --help shows that there is another option connected
to libtalloc: --enable/disable-external-libtalloc.
Adding this option fixes build.

Signed-off-by: Jakub Tymejczyk <jakub@tymejczyk.pl>
6 years agoiproute2: Add support for ports in xfrm on SCTP
Hauke Mehrtens [Thu, 15 Feb 2018 22:52:43 +0000 (23:52 +0100)]
iproute2: Add support for ports in xfrm on SCTP

Remove this old patch which prevents showing the xfrm ports for SCTP

This was added in commit 60c1f0f64d23 ("finally move buildroot-ng to trunk")

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
6 years agomt76: update to the latest version, improves performance and fixes tx power issues
Felix Fietkau [Sat, 24 Feb 2018 09:27:59 +0000 (10:27 +0100)]
mt76: update to the latest version, improves performance and fixes tx power issues

62d52e9 mt76: set RX_FLAG_DUP_VALIDATED for A-MPDU reordered packets
5ba5995 mt76x2: rework tx power handling

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoiptables: update to 1.6.2
Ansuel Smith [Sat, 17 Feb 2018 15:58:57 +0000 (16:58 +0100)]
iptables: update to 1.6.2

459b6932 policy: add nft translation for simple policy none/strict use case
255e55b7 tests: xlate-test: no need to require superuser privileges
6990bbc5 extensions: hashlimit: remove space before burst in translation to nft
13ecaeb0 extensions: hashlimit: Rename 'flow table' keyword to meter
c252a2b0 extensions: Add test for cluster nft translation
bda1daa4 extensions: ip6t_{S,D}NAT: add more tests
88fa4543 extensions: ip6t_{S,D}NAT: multiple to-dst/to-src arguments not reported
64a0e098 extensions: libxt_cluster: Add translation to nft
6067208f extensions: add support for 'srh' match
0f387b07 extensions: hashlimit: fix incorrect burst in translations
1ffe6a74 extensions: libxt_hashlimit: Do not print default timeout and burst
27de281d extensions: Add macro _DEFAULT_SOURCE.
75364151 iptables: Remove const qualifier from struct option.
8b0da213 iptables: masquerade: add randomize-full support
e64db006 iptables: patch to correct linker flag sequence
033eac81 extensions: libxt_tcpmss: Add test case for invalid ranges.
505bfa11 iptables: xtables-eb: Remove const qualifier from struct option
a6d6821a iptables: extensions: Fix MARK target help
71de414c libxt_sctp: fix array out of range in print_chunk
1a32381a extensions: add tests for ipcomp protocol
4bd51770 tests: xlate: print output in same way as nft-test.py
d0e3d95f libxt_recent: Remove ineffective checks for info->name
23e6ed71 libxt_TOS: add tests for translation infrastructure
9564595e Update .gitignore
bebce197 iptables: iptables-compat translation for TCPMSS
dbbab0aa extensions: libxt_tcpmss: Detect invalid ranges
0e958281 iptables-translate: add test file for TCPMSS extension
de3c68b6 iptables-compat: do not allow to delete populated user define chains
f4b80ce7 iptables: change large file support handling
f5b46c2f iptables: Constify option struct
21ba5b38 ip{,6}tables-restore: Don't accept wait-interval without wait
60e0ffd3 ip{,6}tables-restore: Don't ignore missing wait-interval value
af468b6e utils: Add a man page for nfnl_osf
1773dcaa utils: nfnl_osf: Fix synopsis in help text
895ce096 extensions: libxt_bpf: fix missing __NR_bpf declaration
3c633296 xtables-compat-restore: fix translation of mangle's OUTPUT
1c32e560 netfilter: xt_hashlimit: add rate match mode
b5331f88 xtables-compat: fix memory leak when listing
91ae12e3 xtables-compat-restore: fix several memory leaks
79e1edd1 iptables-xml: Fix segfault on jump without a target
c49a93f1 xtables-translate: fix double space before comment
79fa7cc2 libip6t_icmp6: xlate: remove leftover space
8e62f572 tests: xlate: generalize owner
8d994bcf iptables: Add file output option to iptables-save
f8e5ebc5 iptables: Fix crash on malformed iptables-restore
80d8bfaa iptables: insist that the lock is held.
c29d99c8 libxtables: Display weird character warning for wildcards
1fe96cfb tests: xlate: check if it is being run as root
3f92b259 tests: xlate: remove python 3.5 dependency
d89dc47a iptables-restore/save: exit when given an unknown option
65801d02 iptables-restore.8: document -w/-W options
9cd3adbe iptables-restore/ip6tables-restore: add --version/-V argument
1ec1fb7a extensions: libxt_hashlimit: fix 64-bit printf formats
27f69f4a iptables: extensions: Remove typedef in struct.
340105fa tests: add regression tests for xtables-translate
b669e184 extensions: libxt_TOS: Add translation to nft
b2a84476 iptables: Remove unnecessary braces.
2963a8df iptables: Remove explicit static variables initalization.
1cf4ba6f iptables: Constify option struct
999eaa24 iptables-restore: support acquiring the lock.
6e2e169e iptables: remove duplicated argument parsing code
836846f0 iptables: move XT_LOCK_NAME from CFLAGS to config.h.
b91af533 iptables: set the path of the lock file via a configure option.
0e94eb2e iptables-translate: print nft iff there are more expanded rules to print
48ad179b libxtables: abolish AI_CANONNAME
9f50bbdf libxtables: remove unnecessary nesting from host_to_ip(6)addr
c6df55d6 iptables-translate: print nft command for each expand rules via dns names
82dacbb8 xtables-translate: Avoid querying the kernel
9f972f45 extensions: libxt_addrtype: Add translation to nft
2c8e251e utils: nfsynproxy: fix build with musl libc
9b8cb756 libiptc: don't set_changed() when checking rules with module jumps
eb66632d extensions: libxt_hashlimit: Add translation to nft
72bb3dbf xshared: using the blocking file lock request when we wait indefinitely
24f81746 xshared: do not lock again and again if "-w" option is not specified
fc3c3b4e libxt_hashlimit: add new unit test to catch kernel bug
516d9191 iptables: update pf.os

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
6 years agomac80211: sync fast-rx patch with updated version
Felix Fietkau [Fri, 23 Feb 2018 12:58:13 +0000 (13:58 +0100)]
mac80211: sync fast-rx patch with updated version

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agomac80211: fix various issues with fast-rx mode
Felix Fietkau [Fri, 23 Feb 2018 09:10:01 +0000 (10:10 +0100)]
mac80211: fix various issues with fast-rx mode

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoocteontx: use the generic board detection
Mathias Kresin [Fri, 23 Feb 2018 07:20:47 +0000 (08:20 +0100)]
octeontx: use the generic board detection

Use the generic board detection based on the device tree compatible
string instead of a target specific one.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agoramips: enable power LED and second uart on GL-MT300N-V2
Benjamin Valentin [Tue, 20 Feb 2018 17:39:16 +0000 (18:39 +0100)]
ramips: enable power LED and second uart on GL-MT300N-V2

The device has a second uart accessible via pin headers, so enable it.

There is also a green power led which was not enabled previously.
Enable it too and use it as status LED.

Signed-off-by: Benjamin Valentin <benjamin.valentin@volatiles.de>
6 years agomediatek: disable missing kernel symbol
Mathias Kresin [Wed, 21 Feb 2018 07:59:11 +0000 (08:59 +0100)]
mediatek: disable missing kernel symbol

This caused v4.14.20 based builds so fail on mediatek.

Fixes: 6112abf186bf ("kernel: enable CONFIG_USB_PCI for PCI usb modules").
Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agoapm821xx: nand remove obsolete kernel config symbol
Mathias Kresin [Wed, 21 Feb 2018 07:56:59 +0000 (08:56 +0100)]
apm821xx: nand remove obsolete kernel config symbol

The missing CONFIG_USB_XHCI_PCI dependency on CONFIG_USB_PCI of the
µPD720201 xhci-pci(e) usb 3.0 chip used by the WNDR4700 was fixed with
6112abf186bf ("kernel: enable CONFIG_USB_PCI for PCI usb modules").

Commit c38fb585763f ("kernel: fix disabling common usb quirks on 4.14")
finally fixed the following build error:

drivers/usb/host/xhci-pci.c: In function 'xhci_pci_probe':
drivers/usb/host/xhci-pci.c:749:6: error: implicit declaration of function 'usb_xhci_needs_pci_reset' [-Werror=implicit-function-declaration]
  if (usb_xhci_needs_pci_reset(dev)) {

Hence the CONFIG_USB_PCI symbol isn't required any longer in target kernel
config.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agouboot-envtools: add support for ALFA Network AWUSFREE1
Piotr Dymacz [Fri, 26 Jan 2018 15:44:51 +0000 (16:44 +0100)]
uboot-envtools: add support for ALFA Network AWUSFREE1

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoramips: add support for ALFA Network AWUSFREE1
Piotr Dymacz [Fri, 26 Jan 2018 15:21:34 +0000 (16:21 +0100)]
ramips: add support for ALFA Network AWUSFREE1

ALFA Network AWUSFREE1 is an USB Wi-Fi N300 adapter based on MT7628.

Specification:

- MT7628AN (580 MHz)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 2T2R 2.4 GHz (MT7628) with external FEM (RFFM4203)
- 2x detachable antennas (RP-SMA)
- ASIX AX88772 USB to Ethernet bridge (connected with MT7628 PHY0)
- 4x LED (2 driven by GPIO)
- 1x button (reset)
- 1x mini USB for host and main power input
- UART header on PCB

Flash instruction:

You can use sysupgrade image directly in vendor firmware which is based
on LEDE/OpenWrt. Alternatively, you can use web recovery mode in U-Boot:

1. Power device with reset button pressed and release it after ~5 sec.
2. Setup static IP 192.168.1.2/4 on your PC.
3. Go to 192.168.1.1 in browser and upload "sysupgrade" image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for GainStrong Oolite V5.2
Piotr Dymacz [Thu, 15 Feb 2018 22:15:53 +0000 (23:15 +0100)]
ar71xx: add support for GainStrong Oolite V5.2

GainStrong Oolite V5.2 is a small (39.5 x 78 mm), dual-band system on
module, based on Qualcomm QCA9531 + QCA9887. All QCA9531 SOC GPIOs are
available on castellated pins.

Specification:

- 650/400/200 MHz (CPU/DDR/AHB)
- 64/128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 5x 10/100 Mbps Ethernet (all ports available on castellated pins)
- 2T2R 2.4 GHz (QCA9531), with ext. PA and LNA
- 1T1R 5 GHz (QCA9887) with ext. FEM (SKY85710-11)
- 3x U.FL
- 1x USB 2.0

The dedicated development board includes 5 FE ports, USB 2.0 port, two
buttons (one directly connected to SOC reset input), header with all
GPIOs and several LEDs.

Flash instruction:

Vendor firmware is based on OpenWrt. LuCI or sysupgrade can be used to
flash OpenWrt firmware.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: rework GainStrong devices support
Piotr Dymacz [Thu, 15 Feb 2018 17:42:45 +0000 (18:42 +0100)]
ar71xx: rework GainStrong devices support

- combine support for Oolite/MiniBox V1.0 in single mach-*.c file
- fix model/board names
- include correct/full vendor name
- drop redundant package and factory image

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: base-files: cosmetic cleanups in 04_led_migration
Piotr Dymacz [Thu, 15 Feb 2018 13:49:24 +0000 (14:49 +0100)]
ar71xx: base-files: cosmetic cleanups in 04_led_migration

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: base-files: drop comment from 02_network
Piotr Dymacz [Tue, 20 Feb 2018 13:08:50 +0000 (14:08 +0100)]
ar71xx: base-files: drop comment from 02_network

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for AR9331 based Hak5 devices
Sebastian Kinne [Tue, 13 Feb 2018 02:26:33 +0000 (13:26 +1100)]
ar71xx: add support for AR9331 based Hak5 devices

This adds support for AR9331 based Hak5 penetration testing tools:

- WiFi Pineapple NANO
- LAN Turtle
- Packet Squirrel

WiFi Pineapple NANO specifications:

- SoC: Atheros AR9331 (400 MHz)
- RAM: 64 MB (DDR2)
- FLASH: 16 MB
- WiFi: 1T1R AR9331 (built-in), 1T1R AR9271 (built-in via USB bus)
- Ethernet: 1x FE over USB (ASIX AX88772A)
- Ports: 2x RP-SMA for antennas, 1x USB 2.0 (host), 1x micro SD
- Power: USB 5 V, 1.5 A
- Other: status LED, reset button

LAN Turtle specifications:

- SoC: Atheros AR9331 (400 MHz)
- RAM: 64 MB (DDR2)
- FLASH: 16 MB
- WiFi: none
- Ethernet: 1x FE (AR9331), 1x FE over USB (Realtek RTL8152B)
- Ports: 1x RJ45, version dependent: micro SD or 3G SIM slot
- Power: USB 5 V, 0.5 A
- Other: status LED, reset button (inside, on PCB)

Packet Squirrel specifications:

- SoC: Atheros AR9331 (400 MHz)
- RAM: 64 MB (DDR2)
- FLASH: 16 MB
- WiFi: none
- Ethernet: 2x FE (AR9331)
- Ports: 2x RJ45, 1x USB 2.0
- Power: USB 5 V, 0.12 A
- Other: status LED, reset button, 4-way switch

Flash instructions for all 3 devices:

Original firmware is based on OpenWrt.
Use sysupgrade via SSH to flash.

Signed-off-by: Sebastian Kinne <contact@sebkinne.com>
[squashed commits, combined and reworked mach files, aligned board
naming with general convention, fixed minor issues, tested on real
hardware, reworded commit subject and description]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: fix 5 GHz Wi-Fi on NBG6716
Matti Laakso [Sun, 14 Jan 2018 15:39:53 +0000 (17:39 +0200)]
ar71xx: fix 5 GHz Wi-Fi on NBG6716

Some NBG6716 do not have ath10k calibration data in flash, only in chip
OTP. To determine if flash has a valid calibration data, the first two
bytes telling the length of the calibration data are checked against the
requested length. If the lengths match, calibration data is valid and
read from flash.

Signed-off-by: Matti Laakso <matti.laakso@outlook.com>
6 years agoar71xx: YunCore AP90Q image supports also AP80Q
Piotr Dymacz [Sun, 18 Feb 2018 11:39:45 +0000 (12:39 +0100)]
ar71xx: YunCore AP90Q image supports also AP80Q

Vendor released new model (AP80Q) which is identical from hardware point
of view with already supported AP90Q. Include AP80Q in machine name.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agouboot-envtools: add support for YunCore T830
Piotr Dymacz [Fri, 16 Feb 2018 20:21:49 +0000 (21:21 +0100)]
uboot-envtools: add support for YunCore T830

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for YunCore T830
Piotr Dymacz [Fri, 16 Feb 2018 19:30:38 +0000 (20:30 +0100)]
ar71xx: add support for YunCore T830

YunCore T830 is a simple N300 router with 5-port FE switch, detachable
antennas and USB 2.0 port.

Specification:

- 650/597/216 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 5x 10/100 Mbps Ethernet
- 2T2R 2.4 GHz (QCA9531), with ext. PA (SKY65174-21) and LNA
- two external, detachable antennas (RP-SMA)
- 1x USB 2.0
- 8x LED (7 driven by GPIO)
- 1x button (reset)
- DC jack for main power input (12 V)
- UART and JTAG headers on PCB

Flash instruction:

1. First, gain root access to the device, following below steps:

- Login into web gui (default password/IP: admin/192.168.188.253).
- Go to "Advanced" -> "Management" -> "System" and download backup of
  configuration (bakfile.bin).
- Open the file as tar.gz archive, edit/update "shadow" file and change
  hash of root password to something known.
- Repack the archive, rename it back to "bakfile.bin" and use to
  restore configuration of the device.
- After that, device will reboot and can be accessed over SSH.

2. Then, install OpenWrt:

- Login over SSH and issue command:
  fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
- Upload "sysupgrade" image and install it (only if previous command
  succeeded) with command: "sysupgrade -n -F openwrt-...".

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agouboot-envtools: add support for Samsung WAM250
Piotr Dymacz [Thu, 8 Feb 2018 21:37:08 +0000 (22:37 +0100)]
uboot-envtools: add support for Samsung WAM250

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for Samsung WAM250
Piotr Dymacz [Thu, 8 Feb 2018 21:28:07 +0000 (22:28 +0100)]
ar71xx: add support for Samsung WAM250

Samsung WAM250 is a dual-band (selectable, not simultaneous) wireless
hub, dedicated for Samsung Shape Wireless Audio System. The device is
based on Atheros AR9344. FCC ID: A3LWAM250.

Specification:

- 560/450/225 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet
- 2T2R 2.4/5 GHz (AR9344), with ext. PA (SE2598L, SE5003L) and LNA
- 1x USB 2.0
- 4x LED (all are driven by GPIO)
- 2x button (reset, wps/speaker add)
- DC jack for main power input (14 V)
- UART header on PCB (J4, RX: 3, TX: 5)

Flash instruction:

This device uses dual-image (switched between upgrades) with a common
jffs2 config partition. Fortunately, there is a way to disable this mode
so that more flash space can be used by OpenWrt image.

You can easily access this device over telnet, using root/root
credentials (the same also work for serial console access).

1. Make sure that your device uses second (bootpart=2) image using
   command: "fw_printenv bootpart".
2. If your device uses first image (bootpart=1), perform upgrade to the
   latest vendor firmware (after the update, device should boot from
   second partition) using web gui (default login: admin/1234567890).
3. Rename "sysupgrade" image to "firmware.bin", download it (you can use
   wget, tftp or ftpget) to "/tmp" and issue below commands:

   mtd_debug erase /dev/mtd3 0 $(wc -c /tmp/firmware.bin | awk -F' ' '{print $1}')
   mtd_debug write /dev/mtd3 0 $(wc -c /tmp/firmware.bin)
   fw_setenv bootpart
   fw_setenv bootcmd "bootm 0x9f070000"
   reboot

Revert to vendor firmware instruction:

1. Download vendor firmware to "/tmp" device and issue below commands:

   fw_setenv bootpart 1
   sysupgrade -n -F SS_BHUB_v2.2.05.bin

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: fix COMFAST CF-E375AC support
Piotr Dymacz [Sun, 18 Feb 2018 21:49:10 +0000 (22:49 +0100)]
ar71xx: fix COMFAST CF-E375AC support

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for COMFAST CF-E385AC
Piotr Dymacz [Tue, 23 Jan 2018 20:37:16 +0000 (21:37 +0100)]
ar71xx: add support for COMFAST CF-E385AC

COMFAST CF-E385AC is an AC2200 ceiling mount AP with PoE support, based
on Qualcomm/Atheros QCA9558 + QCA9984 + QCA8337N.

Specification:

- 720/600/200 MHz (CPU/DDR/AHB)
- 256 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100/1000 Mbps Ethernet, with PoE support
- 3T3R 2.4 GHz (QCA9558), with external LNA and PA (SE2576L)
- 4T4R 5 GHz (QCA9984), with external FEM (SKY85728-11)
- 7x internal antennas
- 1x RGB LED (driven by GPIO)
- 1x button (reset)
- UART, LEDs/GPIO and USB headers on PCB
- external watchdog (Pericon Technology PT7A7514)

Flash instruction:

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: remove unnecessary packages from COMFAST devices
Piotr Dymacz [Tue, 6 Feb 2018 10:11:47 +0000 (11:11 +0100)]
ar71xx: remove unnecessary packages from COMFAST devices

swconfig and uboot-envtools packages are not required by any of the
supported COMFAST devices.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: rename COMFAST CF-E355AC to CF-E355AC v1
Piotr Dymacz [Mon, 5 Feb 2018 20:31:07 +0000 (21:31 +0100)]
ar71xx: rename COMFAST CF-E355AC to CF-E355AC v1

There are now supported two versions of the CF-E355AC board which differ
in 802.11ac radio chip. Include version number in board, model, image
filename, etc., also for the v1.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: image: simplify Embedded Wireless definitions
Piotr Dymacz [Mon, 5 Feb 2018 17:57:55 +0000 (18:57 +0100)]
ar71xx: image: simplify Embedded Wireless definitions

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: image: generic: use simply expanded variables
Piotr Dymacz [Mon, 5 Feb 2018 17:36:49 +0000 (18:36 +0100)]
ar71xx: image: generic: use simply expanded variables

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: image: generic: clean up trailing whitespace
Piotr Dymacz [Mon, 5 Feb 2018 17:03:07 +0000 (18:03 +0100)]
ar71xx: image: generic: clean up trailing whitespace

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for COMFAST CF-E355AC v2
Ding Tengfei [Mon, 22 Jan 2018 06:57:57 +0000 (14:57 +0800)]
ar71xx: add support for COMFAST CF-E355AC v2

COMFAST CF-E355AC v2 is a ceiling mount AP with PoE support, based on
Qualcomm/Atheros QCA9531 + QCA9886.

Short specification:

- 2x 10/100 Mbps Ethernet, with PoE support
- 128MB of RAM (DDR2)
- 16 MB of FLASH
- 2T2R 2.4 GHz, 802.11b/g/n
- 2T2R 5 GHz, 802.11ac/n/a, WAVE 2
- built-in 4x 3 dBi antennas
- output power (max): 500 mW (27 dBm)
- 1x RGB LED, 1x button
- built-in watchdog chipset

Flash instruction:

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

Signed-off-by: Ding Tengfei <dtf@comfast.cn>
[updated kernel config for both boards]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: disable 40Mhz refclk for QCA953x
Sven Eckelmann [Fri, 19 Jan 2018 13:02:09 +0000 (14:02 +0100)]
ar71xx: disable 40Mhz refclk for QCA953x

The "QCA9531 v2.0 802.11n 2x2 2.4 GHz Premium SOC for WLAN Platforms"
datasheet (80-Y7991-1 Rev. C - October 2014) doesn't specify support for a
40 Mhz reference clock. The register description for "Bootstrap Options"
(page 31) defines following states for the bit 4 (REF_CLK):

* 0 - CLK25 (default)
* 1 - (reserved)

Devices like the TP-Link CPE210 v2 has this bit set to 1 but is using a 25
Mhz reference clock. OpenWrt is still interpreted this bit as 40 Mhz and
then break the bootup of the system due to this incorrect interpretation.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
[refreshed patches]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agouboot-envtools: add support for WHQX E1700AC/E600G/E600GAC v2
Piotr Dymacz [Sat, 3 Feb 2018 16:37:58 +0000 (17:37 +0100)]
uboot-envtools: add support for WHQX E1700AC/E600G/E600GAC v2

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for WHQX E1700AC/E600G/E600GAC v2
Peng Zhang [Fri, 5 Jan 2018 09:38:05 +0000 (17:38 +0800)]
ar71xx: add support for WHQX E1700AC/E600G/E600GAC v2

WHQX E1700AC v2 is based on Qualcomm QCA9563 + QCA9880 + QCA8334.

Specification:

- 750/400/250 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 8/16 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz (QCA9563) with external FEM (SKY85309-11)
- 3T3R 5 GHz (QCA9880) with external FEM (SKY85728-11)
- 2x 10/100/1000 Mbps Ethernet (one port with PoE support)
- 1x miniPCIe slot (USB 2.0 bus only)
- 1x microSIM slot
- 1x USB 2.0
- 5x LED (4 driven by GPIO)
- 1x button (reset)
- 1x 2-pos switch
- 1x DC jack for main power input (9-48 V)
- UART (J5) and LEDs (J13) headers on PCB

WHQX E600G is based on Qualcomm QCA9531.

Specification:

- 650/391/216 MHz (CPU/DDR/AHB)
- 64/128 MB of RAM (DDR2)
- 8/16 MB of FLASH (SPI NOR)
- 2T2R 2.4 GHz (QCA9531) with external PA (LXK-6601)
- 2x 10/100 Mbps Ethernet (one port with PoE support)
- 1x miniPCIe slot (with PCIe and USB 2.0 buses)
- 1x microSIM slot
- 5x LED (4 driven by GPIO)
- 1x button (reset)
- 1x DC jack for main power input (9-48 V)
- UART (J100), SIM (J34), JTAG (J5) and LEDs (J7) headers on PCB

WHQX E600GAC is based on Qualcomm QCA9531 + QCA9887.

Specification:

- 650/391/216 MHz (CPU/DDR/AHB)
- 64/128 MB of RAM (DDR2)
- 8/16 MB of FLASH (SPI NOR)
- 2T2R 2.4 GHz (QCA9531)
- 1T1R 5 GHz (QCA9887) with external FEM (SKY85703-11)
- 2x 10/100 Mbps Ethernet
- 6x LED (1x RGB, 5 driven by GPIO)
- 1x button (reset)
- 1x DC jack for main power input (9-12 V)
- UART (J100), USB (J102), JTAG (J5) and LEDs (J7) header on PCB

Important notice:

First version of these boards are using different mtd layout, with ART
data at the end. You should not use v2 images on v1 board because it
will result in lost of ART data!

Flash instruction (using U-Boot CLI and tftp server):

1. Configure PC with static IP 192.168.1.10 and tftp server.
2. Rename "sysupgrade" filename to "firmware.bin" and place it in tftp
   server directory.
3. Connect PC with one of RJ45 ports, power up the board and press
   "enter" key to access U-Boot CLI.
4. Use the following command to update the device to OpenWrt: "run lfw".

Flash instruction (using U-Boot web-based recovery):

1. Configure PC with static IP 192.168.1.xxx(2-254)/24.
2. 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.
3. Open your browser and enter 192.168.1.1, select "sysupgrade" image
   and click the upgrade button.

Signed-off-by: Peng Zhang <sd20@qxwlan.com>
[reworked: image generation code, mach-* files, commit description,
fixed minor code style issues, rebased on master]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: fix typos and indentation in Kconfig.openwrt
Piotr Dymacz [Wed, 24 Jan 2018 21:22:14 +0000 (22:22 +0100)]
ar71xx: fix typos and indentation in Kconfig.openwrt

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: include vendor name for GL iNet products
Kyson Lok [Fri, 19 Jan 2018 08:36:01 +0000 (16:36 +0800)]
ar71xx: include vendor name for GL iNet products

This patch include GL.iNet vendor name in the
machine name for GL.iNet vendor products.

Signed-off-by: Kyson Lok <kysonlok@gmail.com>
6 years agoar71xx: uniform GL iNet products mach name
Kyson Lok [Fri, 19 Jan 2018 08:36:00 +0000 (16:36 +0800)]
ar71xx: uniform GL iNet products mach name

The mach name of GL AR150 and GL AR300 is inconsistent
with other products.

Signed-off-by: Kyson Lok <kysonlok@gmail.com>
6 years agoramips: mt7621: fix usb init
Roman Yeryomin [Thu, 22 Feb 2018 16:07:35 +0000 (18:07 +0200)]
ramips: mt7621: fix usb init

In 4.14 reg-names is required to identify resources.
Otherwise init fails with:

[    5.900501] xhci-mtk 1e1c0000.xhci: invalid resource
[    5.910499] xhci-mtk: probe of 1e1c0000.xhci failed with error -22

Signed-off-by: Roman Yeryomin <roman@advem.lv>
6 years agoath9k: merge a RCU fix for station tx cleanup
Felix Fietkau [Thu, 22 Feb 2018 14:36:05 +0000 (15:36 +0100)]
ath9k: merge a RCU fix for station tx cleanup

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoocteontx: remove lots of bogus kernel config overrides
Felix Fietkau [Thu, 22 Feb 2018 12:11:30 +0000 (13:11 +0100)]
octeontx: remove lots of bogus kernel config overrides

Some of them break when building with all modules enabled

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: add missing symbol
Tim Harvey [Tue, 20 Feb 2018 18:23:19 +0000 (10:23 -0800)]
kernel: add missing symbol

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoocteontx: remove undefs of CONFIG_NET_VENDOR_*
Tim Harvey [Tue, 20 Feb 2018 18:23:18 +0000 (10:23 -0800)]
octeontx: remove undefs of CONFIG_NET_VENDOR_*

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoocteontx: remove unnecessary CONFIG_DEBUG_INFO
Tim Harvey [Tue, 20 Feb 2018 18:23:17 +0000 (10:23 -0800)]
octeontx: remove unnecessary CONFIG_DEBUG_INFO

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoocteontx: add fpu support
Tim Harvey [Tue, 20 Feb 2018 18:23:16 +0000 (10:23 -0800)]
octeontx: add fpu support

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoocteontx: remove CFLAGS
Tim Harvey [Tue, 20 Feb 2018 18:23:15 +0000 (10:23 -0800)]
octeontx: remove CFLAGS

You should not define CFLAGS for the toolchain as this will also leak
into other targets if they share the same toolchain.

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoocteontx: add FAT FS support to kernel
Tim Harvey [Tue, 20 Feb 2018 18:23:14 +0000 (10:23 -0800)]
octeontx: add FAT FS support to kernel

The CN80XX Boot firmware uses an embedded FAT12 filesystem. For some reason
busybox can't mount this unless its enabled static in the kernel.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoocteontx: add USB_PCI support
Tim Harvey [Tue, 20 Feb 2018 18:23:12 +0000 (10:23 -0800)]
octeontx: add USB_PCI support

The CN80XX XHCI is supported through PCI

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
6 years agoimx6: disable dma on uart
Koen Vandeputte [Thu, 22 Feb 2018 11:20:16 +0000 (12:20 +0100)]
imx6: disable dma on uart

When this target got updated to 4.14, this patch got removed to
re-evaluate if it was still needed.

Extensive testing now shows this issue is still present.
Let's re-add the patch to fix it for now.

As the uart bus is very low bandwidth .. performance impact is negligible.

Boot log:

[   22.513051] imx-uart 2020000.serial: DMA transaction error.
[   22.522721] imx-uart 2020000.serial: DMA transaction error.

As a sidenote:
The patch mentiones an issue with RS485, but the bootlog
errors above were recorded with the uart ports in standard RS232 mode.

Compile/Run-tested on imx6/GW5200

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 years agokernel: refresh patches
Koen Vandeputte [Thu, 22 Feb 2018 11:21:05 +0000 (12:21 +0100)]
kernel: refresh patches

Some fuzz was introduced due to the netfilter-offload series

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
6 years agokernel: remove kmod-appletalk
Felix Fietkau [Thu, 22 Feb 2018 11:07:56 +0000 (12:07 +0100)]
kernel: remove kmod-appletalk

This has been obsolete for many years now and has been implicated in a
recent build failure

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: fix kernel module packaging errors on imx6
Felix Fietkau [Thu, 22 Feb 2018 10:57:49 +0000 (11:57 +0100)]
kernel: fix kernel module packaging errors on imx6

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agogrub2: disable building platform code for target utility
Felix Fietkau [Thu, 22 Feb 2018 08:29:54 +0000 (09:29 +0100)]
grub2: disable building platform code for target utility

It is not used and it was causing a build error with GCC 7.3

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agotoolchain/gcc: use version 7.x for x86 by default
Felix Fietkau [Wed, 21 Feb 2018 19:31:05 +0000 (20:31 +0100)]
toolchain/gcc: use version 7.x for x86 by default

This is needed for retpoline support, which mitigates the spectre
attacks.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agotoolchain/gcc: remove unused config symbol
Felix Fietkau [Wed, 21 Feb 2018 19:29:57 +0000 (20:29 +0100)]
toolchain/gcc: remove unused config symbol

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: avoid stripping retpoline flag with CONFIG_MODULE_STRIPPED
Felix Fietkau [Wed, 21 Feb 2018 19:55:10 +0000 (20:55 +0100)]
kernel: avoid stripping retpoline flag with CONFIG_MODULE_STRIPPED

Fixes kernel warning when loading modules

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agonetfilter: add a xt_FLOWOFFLOAD target for NAT/routing offload support
Felix Fietkau [Tue, 20 Feb 2018 14:58:42 +0000 (15:58 +0100)]
netfilter: add a xt_FLOWOFFLOAD target for NAT/routing offload support

This makes it possible to add an iptables rule that offloads routing/NAT
packet processing to a software fast path. This fast path is much
quicker than running packets through the regular tables/chains.

Requires Linux 4.14

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: backport netfilter NAT offload support to 4.14
Felix Fietkau [Mon, 5 Feb 2018 12:35:24 +0000 (13:35 +0100)]
kernel: backport netfilter NAT offload support to 4.14

This only works with nftables for now, iptables support will be added
later. Includes a number of related upstream nftables improvements to
simplify backporting follow-up changes

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: backport a series of netfilter cleanup patches to 4.14
Felix Fietkau [Mon, 5 Feb 2018 12:02:34 +0000 (13:02 +0100)]
kernel: backport a series of netfilter cleanup patches to 4.14

Preparation for backporting upstream NAT offload support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agonftables: update to 0.8.2, backport flowtable support
Felix Fietkau [Mon, 5 Feb 2018 13:02:13 +0000 (14:02 +0100)]
nftables: update to 0.8.2, backport flowtable support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agolibnftnl: backport flowtable support
Felix Fietkau [Mon, 5 Feb 2018 12:58:17 +0000 (13:58 +0100)]
libnftnl: backport flowtable support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agomac80211: add minstrel improvements/fixes
Felix Fietkau [Mon, 12 Feb 2018 20:38:30 +0000 (21:38 +0100)]
mac80211: add minstrel improvements/fixes

- Simplify debugfs code
- Reduce size
- Fix handling of CCK rates

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agohostapd: add support for sending 802.11v disassoc imminent notifications to clients...
Felix Fietkau [Sun, 11 Feb 2018 16:02:28 +0000 (17:02 +0100)]
hostapd: add support for sending 802.11v disassoc imminent notifications to clients via ubus

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agohostapd: add support for issuing 802.11k beacon measurement requests via ubus
Felix Fietkau [Sat, 10 Feb 2018 23:28:03 +0000 (00:28 +0100)]
hostapd: add support for issuing 802.11k beacon measurement requests via ubus

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agohostapd: expose client 802.11k capabilities via ubus
Felix Fietkau [Sat, 10 Feb 2018 18:42:12 +0000 (19:42 +0100)]
hostapd: expose client 802.11k capabilities via ubus

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agohostapd: return with 80211 codes in handle event function
Nick Hainke [Sun, 14 Jan 2018 00:26:13 +0000 (01:26 +0100)]
hostapd: return with 80211 codes in handle event function

If the auth or assoc request was denied the reason
was always WLAN_STATUS_UNSPECIFIED_FAILURE.
That's why for example the wpa supplicant was always
trying to reconnect to the AP.
Now it's possible to give reasoncodes why the auth
or assoc was denied.

Signed-off-by: Nick Hainke <vincent@systemli.org>
6 years agohostapd: add IEEE 802.11v support
Lorenzo Santina [Sat, 30 Sep 2017 11:01:11 +0000 (13:01 +0200)]
hostapd: add IEEE 802.11v support

Add Wireless Network Management (IEEE 802.11v)
support to:
- hostapd-full
- wpa_supplicant-full

It must be enabled at runtime via UCI with:
- option ieee80211v '1'

Add UCI support for:
- time_advertisement
- time_zone
- wnm_sleep_mode
- bss_transition

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
6 years agohostapd: add support for turning on 802.11k/v features via ubus
Felix Fietkau [Sat, 10 Feb 2018 14:32:34 +0000 (15:32 +0100)]
hostapd: add support for turning on 802.11k/v features via ubus

Neighbor reports are enabled implicitly on use, beacon reports and BSS
transition management need to be enabled explicitly

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agomac80211: round up tx status headroom
Felix Fietkau [Sat, 10 Feb 2018 12:26:42 +0000 (13:26 +0100)]
mac80211: round up tx status headroom

Fixes unaligned access exceptions in mt76 when transmitting beacons

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoramips: fix MT7621 switch driver IRQ storm on init with linux 4.14
Felix Fietkau [Wed, 21 Feb 2018 13:45:48 +0000 (14:45 +0100)]
ramips: fix MT7621 switch driver IRQ storm on init with linux 4.14

The hardware emits some interrupts while initializing and handling them
can mess up the state or cause infinite loops.
Fix this by disabling IRQs during init and re-enabling them afterwards

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: fix MIPS GIC clock source counter width (affects MT7621)
Felix Fietkau [Wed, 21 Feb 2018 12:54:35 +0000 (13:54 +0100)]
kernel: fix MIPS GIC clock source counter width (affects MT7621)

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoramips: fix MT7621 PCI driver on 4.14
Felix Fietkau [Wed, 21 Feb 2018 12:10:44 +0000 (13:10 +0100)]
ramips: fix MT7621 PCI driver on 4.14

The .map_irq hook can now be called after init.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: fix return value of usb_xhci_needs_pci_reset
Felix Fietkau [Tue, 20 Feb 2018 21:29:30 +0000 (22:29 +0100)]
kernel: fix return value of usb_xhci_needs_pci_reset

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agokernel: fix disabling common usb quirks on 4.14
Felix Fietkau [Tue, 20 Feb 2018 21:16:27 +0000 (22:16 +0100)]
kernel: fix disabling common usb quirks on 4.14

Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 years agoubox: fix PKG_MIRROR_HASH
John Crispin [Tue, 20 Feb 2018 20:35:14 +0000 (21:35 +0100)]
ubox: fix PKG_MIRROR_HASH

Signed-off-by: John Crispin <john@phrozen.org>
6 years agoramips: add support for Tama W06
INAGAKI Hiroshi [Mon, 19 Feb 2018 05:35:42 +0000 (14:35 +0900)]
ramips: add support for Tama W06

Tama Electric Axing W06 is a 2.4 GHz band 11n router, based on Mediatek
MT7688AN.

Specification:

- MT7688AN (575 MHz)
- 64 MB of RAM (DDR2 SDRAM)
- 16 MB of Flash (SPI)
- 1T1R 2.4 GHz
- 1x 10/100/1000 Mbps Ethernet
- 4x LEDs (GPIO connected: 3), 1x button
- 1x USB 2.0 Type-A (host)
- UART header on PCB (GND, RX, TX, Vcc from RJ45 side)

Flash instruction using sysupgrade image:
1. Connect micro-USB cable for power supply into W06 and turn on the
router
2. Connect to wifi with SSID "tama-*" with password. Complete SSID and
password are listed on the back of the router
3. Access to 192.168.1.1 and login with user name "admin" and password
empty
4. In firmware update(ファームウェア更新) page, click "参照" button
and click "ブラウザー" button to open file browser, select the
sysupgrade image and press OK button
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
6 years agoramips: improve GnuBee Personal Cloud Two support
Mathias Kresin [Sat, 17 Feb 2018 08:54:57 +0000 (09:54 +0100)]
ramips: improve GnuBee Personal Cloud Two support

Use the generic board detection for the GnuBee Personal Cloud Two
instead of the target specific one as all recent additions are doing.

Fixup the pinmux to set all pins used as GPIO to the function GPIO.
Request pins where used.

Drop the i2c from the dts. There is nothing connected. While at it fix an
indentation issue and use references instead of duplicating the whole
node path.

Use the same switch config as for the GB-PC1 and drop the led trigger for
the not supported IP1001 phy connected to second rgmii.

Fixes: c60a21532bc9 ("ramips: Add support for the GnuBee Personal Cloud Two")
Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agoramips: use generic board detection for D-Link DAP-1522 A1
Mathias Kresin [Sat, 17 Feb 2018 08:18:09 +0000 (09:18 +0100)]
ramips: use generic board detection for D-Link DAP-1522 A1

Use the generic board detection for the D-Link DAP-1522 A1 instead of the
target specific one as all recent additions are doing.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: update dts files
Hauke Mehrtens [Mon, 13 Nov 2017 21:39:01 +0000 (22:39 +0100)]
lantiq: kernel 4.14: update dts files

Updated the devicetree source files to make use of the following
upstreamed drivers:

 - xrx200 ethernet phy
 - reset controller unit
 - dwc2
 - fpi

Use our custom xrx200 ethernet phy compatible to support boards, which
have switched the vr9 revision during lifetime, with a single devicetree
source file.

By switching to the dwc2 driver + usb phy framework, we don't need to used
our custom gpio power patch and can use a fixed regulator instead.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: cleanup dts files
Mathias Kresin [Mon, 1 Jan 2018 16:58:30 +0000 (17:58 +0100)]
lantiq: kernel 4.14: cleanup dts files

Move common used parts to dtsi. Add labels to nodes and reference nodes
via labels in dts files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: fix usb
Mathias Kresin [Sat, 20 Jan 2018 13:38:40 +0000 (14:38 +0100)]
lantiq: kernel 4.14: fix usb

On danube the USB0 registers are at 1e101000 similar to all other lantiq
SoCs.

On Danube and AR9 the USB core is connected to the AHB bus, hence we need
to enable the AHB Bus as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: autoselect matching vr9 rev firmware
Mathias Kresin [Fri, 19 Jan 2018 19:19:06 +0000 (20:19 +0100)]
lantiq: kernel 4.14: autoselect matching vr9 rev firmware

Add a custom xrx200 ethernet phy compatible to load the firmware matching
the vr9 revision without specifing an expected revision.

We have quite a few boards in the tree were later produced ones are using
a more recent vr9. It is impossible to distinguish which revision of the
vr9 is used without opening the case and removing a heatsink for some of
them.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: don't use CPU interrupt controller IPI IRQ domain support
Mathias Kresin [Mon, 8 Jan 2018 22:04:57 +0000 (23:04 +0100)]
lantiq: kernel 4.14: don't use CPU interrupt controller IPI IRQ domain support

This reverts kernel commit 1eed40043579 ("MIPS: smp-mt: Use CPU interrupt
controller IPI IRQ domain support"). With the patch applied, the kernel
hangs during boot if SMP is active.

The Lantiq IRQ controller gets registered first and it directly handles
the MIPS native SW1/2 and HW0 - HW5 IRQs. It looks like this controller
already registers IRQ 0 - 7 and the generic driver only gets the following
IRQs starting later.

The upstream discussion can be found at
https://www.linux-mips.org/archives/linux-mips/2017-05/msg00059.html.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: select MFD SYSCON for ase
Mathias Kresin [Tue, 23 Jan 2018 21:14:28 +0000 (22:14 +0100)]
lantiq: kernel 4.14: select MFD SYSCON for ase

Enable syscon to use it for the RCU MFD on Amazon SE as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
6 years agolantiq: kernel 4.14: update patches and config
Hauke Mehrtens [Sun, 12 Nov 2017 22:06:30 +0000 (23:06 +0100)]
lantiq: kernel 4.14: update patches and config

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>