4 years agotoolchain/gdb: bump to 8.1.1
Koen Vandeputte [Wed, 1 Aug 2018 11:39:03 +0000 (13:39 +0200)]
toolchain/gdb: bump to 8.1.1

GDB 8.1.1 brings the following fixes and enhancements over GDB 8.1:

 * PR gdb/22824 (misleading description of new rbreak Python function in GDB 8.1 NEWS file)
 * PR gdb/22849 (ctrl-c doesn't work in extended-remote)
 * PR gdb/22907 ([Regression] gdbserver doesn't work with filename-only binaries)
 * PR gdb/23028 (inconsistent disassemble of vcvtpd2dq)
 * PR gdb/23053 (Fix -D_GLIBCXX_DEBUG gdb-add-index regression)
 * PR gdb/23127 ([AArch64] GDB cannot be used for debugging software that uses high Virtual Addresses)
 * PR server/23158 (gdbserver no longer functional on Windows)
 * PR breakpoints/23210 ([8.1/8.2 Regression] Bogus Breakpoint address adjusted from 0xf7fe7dd3 to 0xfffffffff7fe7dd3)

GDB 8.1 includes the following changes and enhancements:

  * Breakpoints on C++ functions are now set on all scopes by default
    ("wild" matching);

  * Support for inserting breakpoints on functions marked with C++ ABI tags;

  * Target floating-point arithmetic emulation during expression evaluation
    (requires MPFR 3.1 or later);

  * Various Python Scripting enhancements;

  * Improved Rust support; in particular, Trait objects can now be inspected
    when debugging Rust code;

  * GDB no longer makes assumptions about the type of symbols without
    debugging information to avoid producing erroneous and often confusing

  * The 'enable' and 'disable' commands now accept a range of breakpoint

  * New 'starti' command to start the program at the first instruction;

  * New 'rbreak' command to insert a number of breakpoints via a regular
    expression pattern (requires Python);

  * The 'ptype' command now supports printing the offset and size of
    the fields in a struct;

  * The 'gcore' command now supports dumping all the memory mappings
    ('-a' command-line option);

  * New shortcuts for TUI Single-Key mode: 'i' for stepi, and 'o' for nexti;

  * GDBserver enhancements:
    ** Support for transmitting environment variables to GDBserver;
    ** Support for starting inferior processes with a specified initial
       working directory;
    ** On Unix systems, support for globbing expansion and variable
       substitution of inferior command-line arguments;

  * Various completion enhancements;

  * The command used to compile and inject code with the 'compile' command
    is now configurable;

  * New '--readnever' command-line option to speed the GDB startup when
    debugging information is not needed;

  * Support for the following new native configurations:
    ** FreeBSD/aarch64 (aarch64*-*-freebsd*);
    ** FreeBSD/arm (arm*-*-freebsd*);

  * Support for the following new targets:
    ** FreeBSD/aarch64 (aarch64*-*-freebsd*);
    ** FreeBSD/arm (arm*-*-freebsd*);
    ** OpenRISC ELF (or1k*-*-elf)

  * Removed support for the following targets and native configurations:
    ** Solaris2/x86 (i?86-*-solaris2.[0-9]);
    ** Solaris2/sparc (sparc*-*-solaris2.[0-9]);

Signed-off-by: Koen Vandeputte <>
4 years agoadb: added patch for openssl 1.1.0 compatibility
Eneas U de Queiroz [Fri, 25 May 2018 14:43:32 +0000 (11:43 -0300)]
adb: added patch for openssl 1.1.0 compatibility

Signed-off-by: Eneas U de Queiroz <>
4 years agonftables: allow to build with json support
Rosy Song [Tue, 31 Jul 2018 09:09:34 +0000 (17:09 +0800)]
nftables: allow to build with json support

Signed-off-by: Rosy Song <>
4 years agoar71xx: cr3000: cleanup board definition
Daniel F. Dickinson [Sun, 29 Jul 2018 11:40:01 +0000 (07:40 -0400)]
ar71xx: cr3000: cleanup board definition

1) Add comments so it's clear why we did things; this may prevent
   someone (e.g. me) from sinking time into fixing things that
   aren't broken and/or were done for reason.

2) Drop mdio 0 probe/register; we don't use ag1xx mdio bus 0.

3) Cosmetic reording of some code (tested) that makes the defintion
   more clear.

Signed-off-by: Daniel F. Dickinson <>
4 years agoar71xx: cr3000: Use correct company name
Daniel F. Dickinson [Sun, 29 Jul 2018 11:17:19 +0000 (07:17 -0400)]
ar71xx: cr3000: Use correct company name

It's 'PowerCloud Systems' not 'PowerCloud'.

Signed-off-by: Daniel F. Dickinson <>
4 years agoar71xx: cr3000: Drop support for defunct cloud
Daniel F. Dickinson [Wed, 25 Jul 2018 23:18:07 +0000 (19:18 -0400)]
ar71xx: cr3000: Drop support for defunct cloud

The CR3000 stock firmware is now irrelevant as it required a now defunct
cloud service.  Therefore only build images that use the entire flash
(overwriting stock firwmare-specific partitions that no longer matter),
previously called 'nocloud' images.

Signed-off-by: Daniel F. Dickinson <>
4 years agoath79: Forward port support for CR3000
Daniel F. Dickinson [Sat, 28 Jul 2018 12:57:22 +0000 (08:57 -0400)]
ath79: Forward port support for CR3000

The PowerCloud Systems CR3000 was a cloud-managed CPE for a now defunct
NaaS offering.  It was previously supported under the ar71xx branch and
this forward ports that support with some notable differences:

1) Since reverting to stock firmware is now irrelevant there is is only
a single openwrt image generated which uses the entire flash rather than
preserving PowerCloud-specific partitions that are unneeded to openwrt--
those partitions will be erased and used by the openwrt image.

2) Rather than use a non-standard probe order for the ethernet devices,
this image uses a set of 'ip link set ethX name ethY' commands very early
in preinit (before the network is used at all), in order to have the the
switch and Wan use the same ethernet names as in previous images.

3) /etc/config/wireless will need to be regenerated as the path to the
wireless device has changed due to differences in ath79 DT for ar93x
compared to ar71xx images.

4) eth0 is wan and eth1 is lan (switch)

Signed-off-by: Daniel F. Dickinson <>
4 years agokernel: bump 4.9 to 4.9.116
Koen Vandeputte [Tue, 31 Jul 2018 11:30:14 +0000 (13:30 +0200)]
kernel: bump 4.9 to 4.9.116

Refreshed all patches

Remove upstreamed patches.
- 103-MIPS-ath79-fix-register-address-in-ath79_ddr_wb_flus.patch
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch
- 001-4.11-01-mtd-m25p80-consider-max-message-size-in-m25p80_read.patch
- 001-4.15-08-bcm63xx_enet-correct-clock-usage.patch
- 001-4.15-09-bcm63xx_enet-do-not-write-to-random-DMA-channel-on-B.patch
- 900-gen_stats-fix-netlink-stats-padding.patch

Introduce a new backported patch to address ext4 breakage, introduced in 4.9.112
- backport-4.9/500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch

This patch has been slightly altered to compensate for a new helper function
introduced in later kernels.

Also add ARM64_SSBD symbol to ARM64 targets still running kernel 4.9

Compile-tested on: ar71xx, bcm2710
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <>
4 years agosdk: bundle usbip userspace sources
Jo-Philipp Wich [Wed, 1 Aug 2018 07:11:17 +0000 (09:11 +0200)]
sdk: bundle usbip userspace sources

Bundle the usbip utility sources shipped with the Linux kernel tree in
order to allow the usbip packages from the package feed to build within
the OpenWrt SDK.

Signed-off-by: Jo-Philipp Wich <>
4 years agoiwinfo: update to latest Git HEAD
Jo-Philipp Wich [Tue, 31 Jul 2018 18:39:13 +0000 (20:39 +0200)]
iwinfo: update to latest Git HEAD

a514139 build: compile with -ffunction-sections, -fdata-sections and LTO
3c30b17 wl: only invoke nvram executable if it exists
65b8333 Revert "build: compile with -ffunction-sections, -fdata-sections and LTO"

Signed-off-by: Jo-Philipp Wich <>
4 years agoinclude/ fix distfeeds.conf without per-feed repos
Bjørn Mork [Tue, 31 Jul 2018 12:01:12 +0000 (14:01 +0200)]
include/ fix distfeeds.conf without per-feed repos

commit 514a4b3e1b4e4 ("include/ rework generation of opkg
distfeeds.conf") made the per-feed "base" repo unconditional, making
the default configuration fail when PER_FEED_REPO is disabled:

 root@wrt1900ac-1:~# cat /etc/opkg/distfeeds.conf
 src/gz openwrt_core
 src/gz openwrt_base
 root@wrt1900ac-1:~# opkg update
 Updated list of available packages in /var/opkg-lists/openwrt_core
 Signature check passed.
 *** Failed to download the package list from

 Collected errors:
  * opkg_download: Failed to download, wget returned 8.

Cc: Matthias Schiffer <>
Fixes: 514a4b3e1b4e ("include/ rework generation of opkg distfeeds.conf")
Signed-off-by: Bjørn Mork <>
[whitespace/indentation fix]
Signed-off-by: Jo-Philipp Wich <>
4 years agokernel: add missing ARM64_SSBD symbol
Stijn Tintel [Tue, 31 Jul 2018 09:19:18 +0000 (12:19 +0300)]
kernel: add missing ARM64_SSBD symbol

In 4.14.57, a new symbol for Spectre v4 mitigation was introduced for
ARM64. Add this symbol to all ARM64 targets using kernel 4.14.

This mitigates CVE-2018-3639 on ARM64.

Signed-off-by: Stijn Tintel <>
4 years agomac80211: brcmfmac: backport patch for per-firmware features
Rafał Miłecki [Tue, 31 Jul 2018 07:44:19 +0000 (09:44 +0200)]
mac80211: brcmfmac: backport patch for per-firmware features

This allows driver to support features that can't be dynamically

Signed-off-by: Rafał Miłecki <>
4 years agokernel: remove duplicate #define's in at803x Ethernet PHY driver
Daniel Golle [Tue, 31 Jul 2018 03:17:52 +0000 (05:17 +0200)]
kernel: remove duplicate #define's in at803x Ethernet PHY driver

AT803X_REG_CHIP_CONFIG and AT803X_BT_BX_REG_SEL have been defined
upstream by commit f62265b53ef3 ("at803x: double check SGMII side autoneg")
An existing local patch then added those exact same defines again which
isn't necessary, so remove them.

Fixes: f791fb4af450 ("kernel: add linux 4.9 support")
Fixes: b3f95490b9be ("kernel: generic: Add kernel 4.14 support")
Signed-off-by: Daniel Golle <>
4 years agokernel: re-add patch for AT8032 Ethernet PHY
Daniel Golle [Tue, 31 Jul 2018 02:50:38 +0000 (04:50 +0200)]
kernel: re-add patch for AT8032 Ethernet PHY

The patch was wrongly removed by a kernel version bump to 4.9.105 in
the believe that it was merged upstream thow it wasn't. This lead to
unrecoverable link losses on devices which use those PHYs such as
many ubnt single-port CPEs.

Fixes: 7dca1bae82 (kernel: bump to 4.9.105)
Signed-off-by: Daniel Golle <>
4 years agokernel: add pending e1000e fixes
Stijn Tintel [Thu, 28 Jun 2018 09:44:10 +0000 (11:44 +0200)]
kernel: add pending e1000e fixes

The previous round of fixes for the 82574 chip cause an issue with
emulated e1000e devices in VMware ESXi 6.5. It also contains changes
that are not strictly necessary. These patches fix the issues introduced
in the previous series, revert the unnecessary changes to avoid
unforeseen fallout, and avoid a case where interrupts can be missed.

The final two patches of this series are already in the kernel, so no
need to include them here.


Signed-off-by: Stijn Tintel <>
4 years agokernel: bump 4.14 to 4.14.59
Stijn Tintel [Tue, 31 Jul 2018 02:11:07 +0000 (05:11 +0300)]
kernel: bump 4.14 to 4.14.59

Drop patch that was superseded upstream:

Drop upstreamed patches:
- apm821xx/020-0001-crypto-crypto4xx-remove-bad-list_del.patch
- apm821xx/020-0011-crypto-crypto4xx-fix-crypto4xx_build_pdr-crypto4xx_b.patch
- ath79/0011-MIPS-ath79-fix-register-address-in-ath79_ddr_wb_flus.patch
- brcm63xx/001-4.15-08-bcm63xx_enet-correct-clock-usage.patch
- brcm63xx/001-4.15-09-bcm63xx_enet-do-not-write-to-random-DMA-channel-on-B.patch
- generic/backport/080-net-convert-sock.sk_wmem_alloc-from-atomic_t-to-refc.patch
- generic/pending/170-usb-dwc2-Fix-DMA-alignment-to-start-at-allocated-boun.patch
- generic/pending/900-gen_stats-fix-netlink-stats-padding.patch

In 4.14.55, a patch was introduced that breaks ext4 images in some
cases. The newly introduced patch
addresses this breakage.

Fixes the following CVEs:
- CVE-2018-10876
- CVE-2018-10877
- CVE-2018-10879
- CVE-2018-10880
- CVE-2018-10881
- CVE-2018-10882
- CVE-2018-10883

Compile-tested: ath79, octeon, x86/64
Runtime-tested: ath79, octeon, x86/64

Signed-off-by: Stijn Tintel <>
4 years agoca-caertificates: remove myself as PKG_MAINTAINER
Christian Schoenebeck [Mon, 30 Jul 2018 19:28:00 +0000 (21:28 +0200)]
ca-caertificates: remove myself as PKG_MAINTAINER

remove myself as PKG_MAINTAINER

Signed-off-by: Christian Schoenebeck <>
4 years agonetifd: update to latest git HEAD
John Crispin [Mon, 30 Jul 2018 21:56:14 +0000 (23:56 +0200)]
netifd: update to latest git HEAD

fix a compile error

Signed-off-by: John Crispin <>
4 years agokernel: switch compatible property for RedBoot DT binding
Matt Merhar [Mon, 30 Jul 2018 21:21:57 +0000 (17:21 -0400)]
kernel: switch compatible property for RedBoot DT binding

This changes the DT binding's compatible property to
"ecoscentric,redboot-fis-partitions", removing the existing reference to
Red Hat.

Per the documentation hosted at eCosCentric's website, eCosCentric is
RedBoot's sole commercial maintainer since 2002, and the project has
been under the stewardship of the Free Software Foundation since 2008.

This also updates the property in the Inventel Livebox 1 .dts, the
binding's only current user.

Signed-off-by: Matt Merhar <>
4 years agonetifd: update to latest git HEAD (FS#1668)
Hans Dedecker [Mon, 30 Jul 2018 20:54:04 +0000 (22:54 +0200)]
netifd: update to latest git HEAD (FS#1668)

75ee790 interface-ip: fix eui64 ifaceid generation (FS#1668)
ca97097 netifd: make sure the vlan ifname fits into the buffer
b8c1bca iprule: remove bogus assert calls
a2f952d iprule: fix broken in_dev/out_dev checks
263631a vlan: use alloca to get rid of IFNAMSIZE in vlan_dev_set_name()
291ccbb ubus: display correct prefix size for IPv6 prefix address
908a9f4 CMakeLists.txt: add -Wimplicit-fallthrough to the compiler flags
b06b011 proto-shell.c: add a explicit "fall through" comment to make the compiler happy
60293a7 replace fall throughs in switch/cases where possible with simple code changes

Signed-off-by: Hans Dedecker <>
4 years agokernel: modules: fix kmod-regmap
Christian Lamparter [Mon, 30 Jul 2018 20:33:51 +0000 (22:33 +0200)]
kernel: modules: fix kmod-regmap

This patch fixes the a compile issue that was triggered by
apm821xx/sata when kmod-regmap was selected.

The CONFIG_REGMAP is declared in drivers/base/regmap/Kconfig
as type "bool" and not "tristate". Hence the symbol should
never be set to module, as this confuses the #if CONFIG_REGMAP
guards in include/linux/regmap.h:

|.../drivers/regulator/core.c:4041: undefined reference to `dev_get_regmap'
|.../drivers/regulator/core.c:4042: undefined reference to `dev_get_regmap'
|.../drivers/regulator/core.c:4044: undefined reference to `dev_get_regmap'
|.../drivers/regulator/helpers.o: In function `regulator_is_enabled_regmap':
|.../drivers/regulator/helpers.c:36: undefined reference to `regmap_read'

Signed-off-by: Christian Lamparter <>
4 years agotcpdump: explicitly disable libcap-ng support
Stijn Tintel [Mon, 30 Jul 2018 20:23:48 +0000 (23:23 +0300)]
tcpdump: explicitly disable libcap-ng support

When libcap-ng is detected during build, support for it is enabled. This
will cause a build failure due to a missing dependency. Explicitly
disable libcap-ng support to avoid this.

Signed-off-by: Stijn Tintel <>
4 years agobrcm2708: fix w1 patch
John Crispin [Mon, 30 Jul 2018 18:51:56 +0000 (20:51 +0200)]
brcm2708: fix w1 patch

this is now part of generic

Signed-off-by: John Crispin <>
4 years agoipq40xx: Limit usable channels for OpenMesh A62 PHYs
Sven Eckelmann [Mon, 30 Jul 2018 15:43:48 +0000 (17:43 +0200)]
ipq40xx: Limit usable channels for OpenMesh A62 PHYs

The OpenMesh A62 is a tri-band device (1x 2.4GHz, 2x 5GHz) with special
filters in front of the RX+TX paths to the 5GHz PHYs. These filtered
channel can in theory still be used by the hardware but the signal strength
is reduced so much that it makes no sense.

Signed-off-by: Sven Eckelmann <>
4 years agomac80211: ath10k: Limit available channels via DT ieee80211-freq-limit
Sven Eckelmann [Mon, 30 Jul 2018 15:43:09 +0000 (17:43 +0200)]
mac80211: ath10k: Limit available channels via DT ieee80211-freq-limit

Tri-band devices (1x 2.4GHz + 2x 5GHz) often incorporate special filters in
the RX and TX path. These filtered channel can in theory still be used by
the hardware but the signal strength is reduced so much that it makes no

There is already a DT property to limit the available channels but ath10k
has to manually call this functionality to limit the currrently set wiphy
channels further.

Signed-off-by: Sven Eckelmann <>
4 years agoath79: fix irq assignment for pci-ar71xx driver
Matt Merhar [Mon, 30 Jul 2018 18:11:09 +0000 (14:11 -0400)]
ath79: fix irq assignment for pci-ar71xx driver

In the new DT-based pci-ar71xx driver, ar71xx_pci_irq_init() was being
called before populating the PCI controller's device_node struct member.
This led to no IRQ being assigned to connected PCI devices (e.g. ath9k
cards) and caused them to be non-functional aside from simply being

The previous errors encountered in dmesg were: "irq: no irq domain found
for /ahb/apb/pcie-controller@180c0000 !". /proc/interrupts listed an IRQ
of 0 for the cards.

While this has been only been tested on a yet-to-be-merged RouterStation
Pro target, it should also fix the broken wifi people have reported for
the ath79 WNDR3800 target.

Signed-off-by: Matt Merhar <>
4 years agokernel: add kmod-iio-htu21
Torbjörn Jansson [Mon, 30 Jul 2018 13:59:20 +0000 (15:59 +0200)]
kernel: add kmod-iio-htu21

This adds support for the htu21 humidity and temperature sensor.

To get it to work you have to do something like this:
echo "htu21 0x40" >/sys/class/i2c-dev/i2c-1/device/new_device
for example by adding it to rc.local

Compile tested on brcm2708 and I have used an earlier version of this
patch for more than a year.

Signed-off-by: Torbjörn Jansson <>
4 years agowolfssl: remove myself as maintainer
Alexandru Ardelean [Mon, 30 Jul 2018 14:03:18 +0000 (17:03 +0300)]
wolfssl: remove myself as maintainer

I no longer have the time, nor the desire to maintain this package.
Remove myself as maintainer.

Signed-off-by: Alexandru Ardelean <>
4 years agoar71xx: define switch for rb-952ui-5ac2nd
Thibaut VARÈNE [Mon, 30 Jul 2018 15:37:40 +0000 (17:37 +0200)]
ar71xx: define switch for rb-952ui-5ac2nd

QCA9533 built-in switch can be configured

Tested-by: Thibaut VARÈNE <>
Signed-off-by: Thibaut VARÈNE <>
4 years agoipq40xx: fix booting secondary CPU cores
Mantas Pucka [Mon, 30 Jul 2018 15:08:49 +0000 (18:08 +0300)]
ipq40xx: fix booting secondary CPU cores

95672e04 broke booting secondary cores by removing 'qcom,saw' property
from L2 cache node. kpssv2_release_secondary() requires it.

Signed-off-by: Mantas Pucka <>
4 years agoar71xx: fix TL-WR1043N v5 port mapping
John Crispin [Mon, 30 Jul 2018 15:47:06 +0000 (17:47 +0200)]
ar71xx: fix TL-WR1043N v5 port mapping

fixes 5660c8fb20 ("ar71xx: TL-WR1043N v5: fix mapping of LAN ports to labels on housing.")

Signed-off-by: John Crispin <>
4 years agobase-files: drop fwtool_pre_upgrade
John Crispin [Mon, 30 Jul 2018 15:42:39 +0000 (17:42 +0200)]
base-files: drop fwtool_pre_upgrade

this feature has never worked, the fw image name was not passed and the -t
parameter was missing in the tool invocation. drop the feature.

Signed-off-by: John Crispin <>
4 years agoar71xx: TL-WR1043N v5: fix mapping of LAN ports to labels on housing.
Tim Thorpe [Wed, 18 Apr 2018 22:50:05 +0000 (17:50 -0500)]
ar71xx: TL-WR1043N v5: fix mapping of LAN ports to labels on housing.

Reversed the numbering of the LAN ports in Luci so as to match the port numbers on the housing.

Signed-off-by: Tim Thorpe <>
4 years agoar71xx: TL-WR1043N v4/v5: add orange WAN LED support
Tim Thorpe [Tue, 13 Feb 2018 15:26:18 +0000 (09:26 -0600)]
ar71xx: TL-WR1043N v4/v5: add orange WAN LED support

Add missing definitions for the orange WAN LED on the
TL-WR1043N(D) v4 and v5.

Change the name of a MAC address offset constant to
make it consistent with the format of the
existing constants.

Signed-off-by: Tim Thorpe <>
4 years agoath79: add support for tl-wr841n-v9
Lucian Cristian [Mon, 30 Jul 2018 13:21:12 +0000 (16:21 +0300)]
ath79: add support for tl-wr841n-v9

Signed-off-by: Lucian Cristian <>
4 years agoramips: add support for ELECOM WRC-2533GST
INAGAKI Hiroshi [Thu, 26 Jul 2018 14:24:22 +0000 (23:24 +0900)]
ramips: add support for ELECOM WRC-2533GST

ELECOM WRC-2533GST is a 2.4/5 GHz band 11ac rotuer, based on
MediaTek MT7621A.


- MT7621A (2-Core, 4-Threads)
- 128 MB of RAM (DDR3)
- 16 MB of Flash (SPI)
- 4T4R 2.4/5 GHz wifi
  - MediaTek MT7615
- 5x 10/100/1000 Mbps Ethernet
- 4x LEDs, 6 keys (2x buttons, 1x slide switch)
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - baudrate: 57600 bps

Flash instruction using factory image:

1. Connect the computer to the LAN port of WRC-2533GST
2. Connect power cable to WRC-2533GST and turn on it
3. Access to "" and open firmware update
page ("ファームウェア更新")
4. Select the OpenWrt factory image and click apply ("適用")
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <>
4 years agoimagebuilder: add function to show manifest
Paul Spooren [Fri, 20 Jul 2018 08:32:12 +0000 (17:32 +0900)]
imagebuilder: add function to show manifest

Tested with 18.06.0-rc2/ar71xx/generic/tl-wdr4300-v1, image & list

This PR is based on the work of @fewckert[1] with slight improvements.

Add function `manifest` to show the manifest of the produced image,
before actually building it. The manifest contains an orderd list of
package name and version.

This is usefull to check package dependencies but also determine a
unique and reproducible image name before building the package. The
sysupgrade server[2] builds images on request with individual package
selection. To distignish between created images which contain differnt
packages, the EXTRA_IMAGE_NAME is set to a shortend hash of the
manifest's content. So far the image was renamed afterwards as the
manifests content was unknown, however this corrupts the signed
sha256sums. This patch allows a clean solution as to dtermine the
manifest in advance and set the EXTRA_IMAGE_NAME accordingly.


Signed-off-by: Paul Spooren <>
4 years agox86: add support to set GRUB menu entry title
Kjel Delaey [Tue, 5 Jun 2018 13:47:05 +0000 (15:47 +0200)]
x86: add support to set GRUB menu entry title

$ make menuconfig

        Target Images -> Title for the menu entry in GRUB

Signed-off-by: Kjel Delaey <>
4 years agokirkwood: add support for Iomega Storcenter ix2-200
Ademar Arvati Filho [Fri, 6 Jul 2018 00:56:58 +0000 (00:56 +0000)]
kirkwood: add support for Iomega Storcenter ix2-200

Iomega Storcenter ix2-200 is a dual SATA NAS powered by a Marvell
 Kirkwood SoC clocked at 1GHz. It has 256MB of RAM and 32MB of
 flash memory, 3x USB 2.0 and 1x 1Gbit/s NIC

- SoC: Marvell Kirkwood 88F6281
- CPU/Speed: 1000Mhz
- Flash-Chip: Hynix NAND
- Flash size: 32 MiB,erase size:16 KiB,page size:512,OOB size:16
- RAM: 256MB
- LAN: 1x 1000 Mbps Ethernet
- WiFi: none
- 3x USB 2.0
- UART: for serial console

Installation instructions - easy steps:
1. download factory.bin and copy into tftp server
2. access uboot environment with serial cable and run
    setenv mainlineLinux yes
    setenv arcNumber 1682
    setenv console 'console=ttyS0,115200n8'
    setenv mtdparts 'mtdparts=orion_nand:0x100000@0x000000(u-boot)ro,0x20000@0xA0000(u-boot environment)ro,0x300000@0x100000(kernel),0x1C00000@0x400000(ubi)'
    setenv bootargs_root 'root='
    setenv bootcmd 'setenv bootargs ${console} ${mtdparts} ${bootargs_root}; nand read.e 0x800000 0x100000 0x300000; bootm 0x00800000'
    setenv serverip
    setenv ipaddr
    tftpboot 0x00800000 factory.bin
    nand erase 0x100000 $(filesize)
    nand write 0x00800000 0x100000 $(filesize)
    run bootcmd
3. access openwrt by dhcp ip address assigned by your router (p.ex:

Installation steps nand bad blocks proof:
1. download initramfs-uImage and copy into usb ext2 partition
    mkfs.ext2 -L ext2 /dev/sdh1
    mount -t ext2 /dev/sdh1 /mnt
    cp initramfs-uImage /mnt/initramfs.bin
    umount /mnt
2. access uboot environment with serial cable and run
    setenv mainlineLinux yes
    setenv arcNumber 1682
    setenv console 'console=ttyS0,115200n8'
    setenv mtdparts 'mtdparts=orion_nand:0x100000@0x000000(u-boot)ro,0x20000@0xA0000(u-boot environment)ro,0x300000@0x100000(kernel),0x1C00000@0x400000(ubi)'
    setenv bootargs_root 'root='
    setenv bootcmd 'setenv bootargs ${console} ${mtdparts} ${bootargs_root}; nand read.e 0x800000 0x100000 0x300000; bootm 0x00800000'
    usb reset; ext2load usb 0:1 0x00800000 /initramfs.bin; bootm 0x00800000
3. log into openwrt and sysupgrade to install into flash
    sysupgrade -n /tmp/sysupgrade.bin
4. access openwrt by dhcp ip address assigned by your router (p.ex:

Signed-off-by: Ademar Arvati Filho <>
4 years agolibevent2: Don't build tests and samples
Eneas U de Queiroz [Mon, 30 Jul 2018 12:27:52 +0000 (12:27 +0000)]
libevent2: Don't build tests and samples

The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This reduces build time significantly.

Signed-off-by: Eneas U de Queiroz <>
4 years agoath10k-ct: fix build with current mac80211 package
Jo-Philipp Wich [Mon, 30 Jul 2018 13:00:53 +0000 (15:00 +0200)]
ath10k-ct: fix build with current mac80211 package

Commit 2dcd955aea ("mac80211: backport and update patches for ath10k")
changed the DFS detector API, causing ath10k-ct to fail building due to
a missing add_pulse() argument.

Extend the already existing kernel compatibility patch to also adjust
the add_pulse() call accordingly.

Signed-off-by: Jo-Philipp Wich <>
4 years agobuild: fix ASLR for LTO packages
Julien Dusser [Tue, 17 Jul 2018 16:29:34 +0000 (18:29 +0200)]
build: fix ASLR for LTO packages

Fix building packages with LTO when CONFIG_PKG_ASLR_PIE is enabled.

Despite comment of PR lto/80838, it seems that GCC needs -fPIC on linker
command line, even if all objects are -fPIC. This may change as PR
lto/80838 is merged into 8.1

compile-tested: ar71xx, ath79

Fix commits:

Signed-off-by: Julien Dusser <>
4 years agosamsung/s5pv210: New target
Jianhui Zhao [Tue, 17 Apr 2018 03:09:14 +0000 (11:09 +0800)]
samsung/s5pv210: New target

Signed-off-by: Jianhui Zhao <>
4 years agoar71xx: add support for TP-Link Archer C59 v2
Keith Maika [Fri, 15 Jun 2018 04:39:09 +0000 (00:39 -0400)]
ar71xx: add support for TP-Link Archer C59 v2

TP-Link Archer C59v2 is a dual-band AC1350 router based on
Qualcomm/Atheros QCA9561+QCA9886 chips.


- 775/650/258 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- USB 2.0 port
- UART header on PCB

Flash instruction:
  - via web UI:
    1. Download openwrt-ar71xx-generic-archer-c59-v2-squashfs-factory.bin
    2. Login to router and open the Advanced tab
    3. Navigate to System Tools -> Firmware Upgrade
    4. Upload firmware using the Manual Upgrade form
  - via TFTP:
    1. Set PC to fixed ip address
    2. Download openwrt-ar71xx-generic-archer-c59-v2-squashfs-factory.bin
       and rename it to tp_recovery.bin
    3. Start a tftp server with the file tp_recovery.bin in its root directory
    4. Turn off the router
    5. Press and hold Reset button
    6. Turn on router with the reset button pressed and wait ~15 seconds
    7. Release the reset button and after a short time
       the firmware should be transferred from the tftp server
    8. Wait ~30 second to complete recovery.

Signed-off-by: Keith Maika <>
4 years agokernel: add missing include to redboot.c
Rafał Miłecki [Mon, 30 Jul 2018 10:06:20 +0000 (12:06 +0200)]
kernel: add missing include to redboot.c

This fixes:
drivers/mtd/redboot.c:299:34: error: array type has incomplete element type 'struct of_device_id'

Fixes: 5e8b4be53177 ("kernel: add DT binding support to the mtd redboot parser")
Signed-off-by: Rafał Miłecki <>
4 years agobrcm63xx: update DT RedBoot binding for the Inventel Livebox 1
Rafał Miłecki [Mon, 30 Jul 2018 06:45:41 +0000 (08:45 +0200)]
brcm63xx: update DT RedBoot binding for the Inventel Livebox 1

linux,part-probe should be avoided as its only supported with OpenWrt
downstream patch that is going to be dropped eventually.

Signed-off-by: Rafał Miłecki <>
Signed-off-by: Jonas Gorski <>
4 years agobrcm47xx: rework model detection
Jo-Philipp Wich [Mon, 30 Jul 2018 06:36:26 +0000 (08:36 +0200)]
brcm47xx: rework model detection

On brcm47xx boards, the model ID is the combination of the "boardtype" nvram
variable and an optional supplemental "boardnum" variable while the human
readable model name is usually exposed in the "machine" field of the
/proc/cpuinfo file.

Move the extraction of the board nvram variables and model name string into
the 01_sysinfo file and rework the 01_detect board configuration script to
solely use the prepared sysinfo values without performing own detection

As a consequence, we can drop the ucidef_set_board_id() and
ucidef_set_model_name() invocations in favor to the generic behaviour
which copies the /tmp/sysinfo/{board_name,model} values into the board.json
"id" and "name" fields respectively.

Since "01_detect" only contains network configuration logic after this
change, move it to "01_network" and rename the contained "detect_by_xxx"
functions to "configure_by_xxx" instead, to avoid potential confusion.

Fixes FS#1576
Acked-by: Rafał Miłecki <>
Signed-off-by: Jo-Philipp Wich <>
4 years agoomap: disable ubifs
Lucian Cristian [Thu, 19 Jul 2018 06:59:43 +0000 (09:59 +0300)]
omap: disable ubifs

ubifs image are not working, until there is a fix, disable them

Signed-off-by: Lucian Cristian <>
4 years agoomap: add support for f2fs/ext4 overlay creation
Lucian Cristian [Thu, 19 Jul 2018 06:58:42 +0000 (09:58 +0300)]
omap: add support for f2fs/ext4 overlay creation

add kernel support and include the tools for creating an overlay partition (f2fs or ext4)

Signed-off-by: Lucian Cristian <>
4 years agoomap: add sysupgrade support
Lucian Cristian [Thu, 19 Jul 2018 06:55:19 +0000 (09:55 +0300)]
omap: add sysupgrade support

add sysupgrade missing script files

Signed-off-by: Lucian Cristian <>
4 years agoomap: rename image for sysupgrade compatibility
Lucian Cristian [Thu, 19 Jul 2018 06:48:56 +0000 (09:48 +0300)]
omap: rename image for sysupgrade compatibility

for sysupgrade to work we need to change the image name based on dts target name

Signed-off-by: Lucian Cristian <>
4 years agoomap: fix squashfs image boot and creation
Lucian Cristian [Thu, 19 Jul 2018 06:45:25 +0000 (09:45 +0300)]
omap: fix squashfs image boot and creation

fixes FS#1034, squash fs images fails to boot because of missing ARM BCJ filter decoder
also activate squashf image creation

Signed-off-by: Lucian Cristian <>
4 years agohostapd: add ht and vht support in handle event function Add ht and vht capabilities...
Nick Hainke [Thu, 17 May 2018 10:35:23 +0000 (12:35 +0200)]
hostapd: add ht and vht support in handle event function Add ht and vht capabilities. If a device sends a probe request, the capabilities are added.

Signed-off-by: Nick Hainke <>
4 years agohostapd: add ubus call for ap features
Nick Hainke [Wed, 25 Apr 2018 22:03:05 +0000 (00:03 +0200)]
hostapd: add ubus call for ap features

The call "get_features" allows to gather hostapd config options
via ubus. As first infos we add the ht and vht support.
Although nl80211 supports to gather informations about
ht and vht capabilities, the hostapd configuration can disable
vht and ht. However, it is possible that the iw output is not
representing the actual hostapd configuration.

Signed-off-by: Nick Hainke <>
4 years agouboot-envtools: add configuration for Traverse LS1043 boards.
Mathew McBride [Wed, 25 Apr 2018 02:51:48 +0000 (12:51 +1000)]
uboot-envtools: add configuration for Traverse LS1043 boards.

Signed-off-by: Mathew McBride <>
4 years agolayerscape: add Traverse LS1043-S support
Mathew McBride [Mon, 30 Apr 2018 12:42:39 +0000 (22:42 +1000)]
layerscape: add Traverse LS1043-S support

The Traverse LS1043-S board is a router board based on
NXP/Freescale's LS1043 SoC, with 4x1GBase-T, 1 SFP and 1 SFP+,
as well as miniPCIe and M.2 LTE.

Unlike the Layerscape reference boards, the LS1043-S board has
NAND flash and uses the mainline U-Boot.

This patch implements support for the LS1043-S board, as well as
the earlier LS1043-V board. It is our intention that all boards
in this family (LS1043-S and later, Five64) will boot the same binary.

Not included in this patchset are the hwmon drivers not in the kernel
(emc1704,pac1934) or the bootloader.

Signed-off-by: Mathew McBride <>
4 years agolayerscape: add multiple-configuration generator for FIT images
Mathew McBride [Mon, 30 Apr 2018 12:43:29 +0000 (22:43 +1000)]
layerscape: add multiple-configuration generator for FIT images

This is required for the Traverse LS1043 family, we generate a FIT image
that works on all boards across the family. This is done by creating
multiple configurations that select the right DTB for the board.

The bootloader on these boards is configured to boot like this:
bootm $kernel_load#ls1043s
bootm $kernel_load#ls1043v

This is based on earlier work by Jason Wu for Zynq:

Modified to add FDT load addresses and multiple configurations with DTB.

Signed-off-by: Mathew McBride <>
4 years agolayerscape: add support for fixed-link on RGMII interfaces
Mathew McBride [Mon, 16 Apr 2018 23:45:11 +0000 (09:45 +1000)]
layerscape: add support for fixed-link on RGMII interfaces

This is required on the Traverse LS1043 boards to support SFP
and xDSL plug-ins.

This will not be needed on kernel 4.14.

Signed-off-by: Mathew McBride <>
4 years agolayerscape: enable QorIQ thermal driver
Mathew McBride [Mon, 16 Apr 2018 23:43:38 +0000 (09:43 +1000)]
layerscape: enable QorIQ thermal driver

This provides access to the CPU die temperature sensor and
the thermal throttling integration

Signed-off-by: Mathew McBride <>
4 years agolayerscape: remove DEVICE_TYPE=developerboard
Mathew McBride [Mon, 16 Apr 2018 23:43:03 +0000 (09:43 +1000)]
layerscape: remove DEVICE_TYPE=developerboard

The Traverse LS1043 series are router boards and need the default router package

Signed-off-by: Mathew McBride <>
4 years agoopenvpn-easy-rsa: update to 3.0.4
Luiz Angelo Daros de Luca [Tue, 27 Mar 2018 05:42:06 +0000 (02:42 -0300)]
openvpn-easy-rsa: update to 3.0.4

Upstream renamed openssl-1.0.cnf to openssl-easyrsa.cnf.
However, pkg kept using openssl-1.0.cnf.

Upstream easyrsa searchs for vars, openssl-*, x509-types in the
same directory as easyrsa script. This was patched to revert
back to static /etc/easy-rsa/ directory (as does OpenSUSE).
EASYRSA_PKI still depends on $PWD.

Move easyrsa from /usr/sbin to /usr/bin as root is not needed.

Signed-off-by: Luiz Angelo Daros de Luca <>
4 years agokernel: package x86-optimized crypto-misc modules
Daniel Gimpelevich [Sun, 21 Jan 2018 21:00:12 +0000 (13:00 -0800)]
kernel: package x86-optimized crypto-misc modules

Some of the modules in the crypto-misc package have alternate
implementations optimized for different x86 instruction set extensions,
but only one of these was built for this package until now: twofish-i586.ko

Tested with insmod, on both x86 and x86_64. The modules now have an
autoload, which they previous didn't, loading the dependencies in the
correct order.

Signed-off-by: Daniel Gimpelevich <>
4 years agokernel: generic: fix problem with w1-gpio-custom
Pawel Dembicki [Thu, 15 Feb 2018 21:21:25 +0000 (22:21 +0100)]
kernel: generic: fix problem with w1-gpio-custom

In boards with fdt is impossible to use kmod-w1-gpio-custom.
w1-gpio-custom create platform structure for w1-gpio module,
but if board use fdt, data is ignored in w1-gpio probe.

This workaround fix the problem.

Signed-off-by: Pawel Dembicki <>
4 years agoramips: fix RBM11G name
Thibaut VARÈNE [Sun, 29 Jul 2018 09:07:23 +0000 (11:07 +0200)]
ramips: fix RBM11G name

The device name is corrected to match the hardware-stored (in hard config
flash space) device name.

Tested-by: Tobias Schramm <>
Signed-off-by: Thibaut VARÈNE <>
4 years agoramips: fix RBM33G name
Thibaut VARÈNE [Sun, 29 Jul 2018 09:07:21 +0000 (11:07 +0200)]
ramips: fix RBM33G name

The device name is corrected to match the hardware-stored (in hard config
flash space) device name.

Tested-by: Tobias Schramm <>
Signed-off-by: Thibaut VARÈNE <>
4 years agolibevent: update to 2.1.8
Leon M. George [Mon, 31 Oct 2016 13:55:44 +0000 (14:55 +0100)]
libevent: update to 2.1.8

Signed-off-by: Leon M. George <>
4 years agoramips: mmc: Add SD card support to HC5661A
LoveSy [Mon, 28 May 2018 01:47:19 +0000 (09:47 +0800)]
ramips: mmc: Add SD card support to HC5661A

Tested on HC5661A and it now fixes the issue that when enabling sd card
in HC5661A, the wan and 3 lan ports will down.

Known issue:
- When enabling SD card support, the led light of system will down and the rest 2 lights keep working.

Signed-off-by: LoveSy <>
4 years agoramips: mmc: Fix init for MT7628AN
LoveSy [Mon, 28 May 2018 01:46:28 +0000 (09:46 +0800)]
ramips: mmc: Fix init for MT7628AN

There is another thing about crc to do when initialize SD card on
This commit is to fix this init issue.

Signed-off-by: LoveSy <>
4 years agoinclude: add netdev family support for nftables
Rosy Song [Wed, 18 Jul 2018 07:42:56 +0000 (15:42 +0800)]
include: add netdev family support for nftables

Signed-off-by: Rosy Song <>
4 years agoncurses: install lib on host build
Andy Walsh [Thu, 26 Jul 2018 08:34:33 +0000 (10:34 +0200)]
ncurses: install lib on host build

Signed-off-by: Andy Walsh <>
4 years agoiptables: add ip[6|]tables-compat packages + libxtables-compat depends on IPTABLES_NF...
Martin Strobel [Sat, 7 Jul 2018 07:24:30 +0000 (09:24 +0200)]
iptables: add ip[6|]tables-compat packages + libxtables-compat depends on IPTABLES_NFTABLES

allows iptables-compat to use nft packet filtering
allows to translate iptables-style to nft-style

Signed-off-by: Martin Strobel <>
4 years agoconfig: Change conf.c remove compiler warnings
Paul Schulz [Thu, 21 Jun 2018 08:49:39 +0000 (18:19 +0930)]
config: Change conf.c remove compiler warnings

Compiler is producing the warning:
   warning: format not a string literal and no format arguments

This patch makes the format a literal string in printf statements.

This with: gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3) in Ubuntu 18.04

Signed-off-by: Paul Schulz <>
4 years agoigmpproxy: drop SSDP packets
Dmitry Tunin [Sat, 28 Jul 2018 14:48:42 +0000 (17:48 +0300)]
igmpproxy: drop SSDP packets

It is insecure to let this type of packets inside
They can e.g. open ports on some other routers with UPnP, etc

Signed-off-by: Dmitry Tunin <>
4 years agoar71xx:add support for E750G v8
张鹏 [Tue, 17 Jul 2018 10:14:25 +0000 (18:14 +0800)]
ar71xx:add support for E750G v8

Qxwlan E750G v8 is based on Qualcomm QCA9344.


 - 560/450/225 MHz (CPU/DDR/AHB)
 - 128 MB of RAM (DDR2)
 - 8/16 MB of FLASH (SPI NOR)
 - 2T2R 2.4G GHz (AR9344)
 - 2x 10/100 Mbps Ethernet (PoE support)
 - 2x 10/100/1000 Mbps Ethernet
 - 7x LED (6 driven by GPIO)
 - 1x button (reset)
 - 1x DC jack for main power input (9-48 V)
 - UART (J23) and LEDs (J2) headers on PCB

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

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

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

 - Configure PC with static IP
 - Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
 - Open your browser and enter, select "sysupgrade" image
   and click the upgrade button.

Signed-off-by: 张鹏 <>
4 years agoar71xx:add support for E750A v4
张鹏 [Tue, 17 Jul 2018 10:11:21 +0000 (18:11 +0800)]
ar71xx:add support for E750A v4

Qxwlan E750A v4 is based on Qualcomm QCA9344.


 - 560/450/225 MHz (CPU/DDR/AHB)
 - 128 MB of RAM (DDR2)
 - 8/16 MB of FLASH (SPI NOR)
 - 2T2R 5G GHz (AR9344)
 - 2x 10/100 Mbps Ethernet (one port with PoE support)
 - 1x miniPCIe slot (USB 2.0 bus only)
 - 7x LED (6 driven by GPIO)
 - 1x button (reset)
 - 1x DC jack for main power input (9-48 V)
 - UART (J23) and LEDs (J2) headers on PCB

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

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

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

 - Configure PC with static IP
 - Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
 - Open your browser and enter, select "sysupgrade" image
   and click the upgrade button.

Signed-off-by: 张鹏 <>
4 years agoar71xx:add support for E558 v2
张鹏 [Tue, 17 Jul 2018 10:08:10 +0000 (18:08 +0800)]
ar71xx:add support for E558 v2

Qxwlan E558 v2 is based on Qualcomm QCA9558 + AR8327.


 - 720/600/200 MHz (CPU/DDR/AHB)
 - 128 MB of RAM (DDR2)
 - 8/16 MB of FLASH (SPI NOR)
 - 2T2R 2.4 GHz (QCA9558)
 - 3x 10/100/1000 Mbps Ethernet (one port with PoE support)
 - 4x miniPCIe slot (USB 2.0 bus only)
 - 1x microSIM slot
 - 5x LED (4 driven by GPIO)
 - 1x button (reset)
 - 1x 3-pos switch
 - 1x DC jack for main power input (9-48 V)
 - UART (JP5) and LEDs (J8) headers on PCB

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

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

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

 - Configure PC with static IP
 - Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
 - Open your browser and enter, select "sysupgrade" image
   and click the upgrade button.

Signed-off-by: 张鹏 <>
4 years agoinclude/ Add sc to failure message
Daniel Engberg [Tue, 24 Jul 2018 09:09:17 +0000 (11:09 +0200)]
include/ Add sc to failure message

Add sc to build error message

Signed-off-by: Daniel Engberg <>
4 years agoar71xx: ag71xx: Prevent kernel oops for board def
Daniel F. Dickinson [Thu, 26 Jul 2018 06:57:37 +0000 (02:57 -0400)]
ar71xx: ag71xx: Prevent kernel oops for board def

The driver is written in such a way that with a board defintion that
connects a fixed phy, mdio, and switch in a certain way, a kernel oops could
result because of lack of previously probed mdio bus.

This commit allows for easier debugging in this case by casting the
correct blame with serial console messages.

Signed-off-by: Daniel F. Dickinson <>
4 years agoar71xx: ag71xx: Add connect message: fixed phy
Daniel F. Dickinson [Wed, 25 Jul 2018 23:15:32 +0000 (19:15 -0400)]
ar71xx: ag71xx: Add connect message: fixed phy

It's a little noisier but makes it obvious when the ar7240 switch was
connected to the MDIO bus, and to which phy device (or the failure
to do so).

Signed-off-by: Daniel F. Dickinson <>
4 years agoar71xx: ag71xx_phy: Fix compilation for debug messages
Daniel F. Dickinson [Wed, 25 Jul 2018 23:14:26 +0000 (19:14 -0400)]
ar71xx: ag71xx_phy: Fix compilation for debug messages

NB: Error only appears with ag71xx debug messages and dynamic printk
enabled.  This is probably why no one has caught it before.

Previously phy probe debug messages used old (now wrong) functions
to get the phy name for printing.  There was also the chance of
a NULL pointer in the event no phy_device was found.

Signed-off-by: Daniel F. Dickinson <>
4 years agoath10k: update QCA4019 firmware
Massimo Tum [Tue, 3 Jul 2018 12:57:41 +0000 (14:57 +0200)]
ath10k: update QCA4019 firmware

With AVM Fritz!Box 4040 and OpenWrt 18.06 RC1 there are many kernel warnings
kern.warn kernel: [87771.917049] ath10k_ahb a000000.wifi: Invalid VHT mcs 15 peer stats
and there are disconnections when the connected clients are many, at the moment I tried with 16 clients on 2.4 GHz and 8 on 5 GHZ.

Firmware 10.4-3.5.3-00057 fixes these warnings and the problem of disconnections of some clients.

Signed-off-by: Massimo Tum <>
4 years agoath79: Add switch reset definition in dts
Chuanhong Guo [Tue, 24 Jul 2018 13:39:25 +0000 (21:39 +0800)]
ath79: Add switch reset definition in dts

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ag71xx: assert a switch reset if defined in dts.
Chuanhong Guo [Tue, 24 Jul 2018 13:19:04 +0000 (21:19 +0800)]
ath79: ag71xx: assert a switch reset if defined in dts.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ar724x: Fix reset definition for gmac0/gmac1
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ar724x: Fix reset definition for gmac0/gmac1

reset bit 8 is for builtin switch and bit 12 is marked 'reserved' on datasheet.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ar7240: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ar7240: Update dts for current ag71xx driver

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ag71xx: Explicitly register mdio bus after ag71xx_hw_init() for ar7240
Chuanhong Guo [Tue, 24 Jul 2018 13:23:04 +0000 (21:23 +0800)]
ath79: ag71xx: Explicitly register mdio bus after ag71xx_hw_init() for ar7240

mdio bus isn't a standalone device on ar7240. (and maybe older SoCs?)
Use simple-mfd for ar7241 and later SoCs to get mdio1 ready before gmac0
For ar7240 and older chips, manually create platform device after
ag71xx_hw_init() in ag71xx_probe()to get mdio0 ready between
ag71xx_hw_init() and ag71xx_phy_connect().

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ag71xx: Rework mdio clock settings
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ag71xx: Rework mdio clock settings

Allow specifying desired mdio clock frequency in dts.
Use default frequency around 5MHz for builtin switch and 2MHz for other mdio bus.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ar7242: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ar7242: Update dts for current ag71xx driver

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ar7241: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ar7241: Update dts for current ag71xx driver

Signed-off-by: Chuanhong Guo <>
4 years agoath79: Fix support for TP-LINK Archer C7 v2
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: Fix support for TP-LINK Archer C7 v2

Remove mdio1 and phy1 handle. AR8327N is controlled through mdio0.
Add gmac-config for Archer C7.
Remove ucidef_set_interfaces_lan_wan. They can be determined by config_generate automatically.

The following are for adding support for WDR4900 v2/Archer C7 v1 and other
devices that shared the same machine file in ar71xx:
Move mtd partitions to archer-c7-v2.dts. Only Archer C7 v2 has 16M flash.
Flash on Archer C7 v1/TL-WDR4900 v2 is 8M.
Add label for wlan leds. The default trigger for archer c7/wdr4900 is different.
Move wlan5g led to archer-c7-v2.dts. 5G led on WDR4900 is connected to ar9380.
Move rfkill definition to archer-c7-v2.dts. There is no such a button on wdr4900 v2.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: qca955x: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: qca955x: Update dts for current ag71xx driver

Signed-off-by: Chuanhong Guo <>
4 years agoath79: qca956x: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: qca956x: Update dts for current ag71xx driver

enable mdio1 by default because mdio1 node is a subnode of eth1
and eth1 node is a "simple-mfd", which makes mdio1 disabled when
eth1 isn't enabled.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: qca953x: Add chosen node and specify console in bootargs
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: qca953x: Add chosen node and specify console in bootargs

Most qca devices use 115200n8 as it's default uart baudrate.
Add 'chosen' node for qca953x like other SoCs in ath79 target.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: qca953x: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: qca953x: Update dts for current ag71xx driver

Signed-off-by: Chuanhong Guo <>
4 years agoath79: update qca9533 to new irq driver
Lucian Cristian [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: update qca9533 to new irq driver

Commit c7efc93 renamed controller name
to qca,ar9340-intc and added some functions but qca9533.dtsi was overlooked.
Correct the dtsi and adust it to the new format

Add gmac and correct reset for cascaded irq and build-in switch
Also add the reference clock to soc dtsi so we don't have to have it in every dts

Signed-off-by: Lucian Cristian <>
Remove switch reset definition
Fix gmac compatible string (We only need SW_PHY_SWAP and SW_PHY_ADDR_SWAP on qca953x so use ar9330-gmac instead of ar9340-gmac.)

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ar933x: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ar933x: Update dts for current ag71xx driver

gmac0 is always connected to switch phy4 and mdio1 is always needed.
So add phy handle for eth0 and enable mdio1 by default.
Move fixed-link for gmac1 from device dts to ar9331.dtsi because gmac1 is always connected to builtin switch.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ar934x: Update dts for current ag71xx driver
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ar934x: Update dts for current ag71xx driver

Enable mdio1 by default because mdio1 is needed when eth1 is enabled.

PS: If a ar9341 device has only one port and you only want to use gmac0,
change compatible of gmac1 to "syscon", "simple-mfd" in dts.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ag71xx: Make builtin switch driver a separated module
Chuanhong Guo [Tue, 17 Jul 2018 09:09:14 +0000 (17:09 +0800)]
ath79: ag71xx: Make builtin switch driver a separated module

This patch did several things:
1. Probe the builtin switch as a separated mdio device.
2. Register a separated mdio bus for builtin switch.
3. Use generic mdio read/write function instead of calling ag71xx_mdio_mii_read/write directly.

Signed-off-by: Chuanhong Guo <>
4 years agoath79: ag71xx: Split mdio driver into an independent platform device.
Chuanhong Guo [Tue, 17 Jul 2018 09:09:13 +0000 (17:09 +0800)]
ath79: ag71xx: Split mdio driver into an independent platform device.

We need to have mdio1 belonging to gmac1 initialized before gmac0.
Split it into a separated mdio device to get both mdios ready before probing gmac.

Signed-off-by: Chuanhong Guo <>