2 months agoapm821xx: switch to pending xhci-pci-renesas solution master
Christian Lamparter [Fri, 24 Jan 2020 20:02:04 +0000 (21:02 +0100)]
apm821xx: switch to pending xhci-pci-renesas solution

This patch replaces most of the out-of-tree xhci firmware
loader for the particular xhci chip from Renesas on the
WNDR4700's PCB.

What remains is a check in xhci-pci main driver which
guards against a 10 second delay during boot of the WNDR4700.
This is because the xhci-pci will still try to bud-in, but it
doesn't do anything useful, if the firmware isn't loaded, but
waste time and fail eventually:

[  375.481868] xhci_hcd 0000:45:00.0: xHCI Host Controller
[  375.487149] xhci_hcd 0000:45:00.0: new USB bus registered, assigned bus number 1
[  385.494590] xhci_hcd 0000:45:00.0: can't setup: -110
[  385.499558] xhci_hcd 0000:45:00.0: USB bus 1 deregistered
[  385.504963] xhci_hcd 0000:45:00.0: init 0000:45:00.0 fail, -110
[  385.510889] xhci_hcd: probe of 0000:45:00.0 failed with error -110

Signed-off-by: Christian Lamparter <>
2 months agoipq806x: add Support for ASRock G10
Christian Lamparter [Fri, 11 Oct 2019 22:49:15 +0000 (00:49 +0200)]
ipq806x: add Support for ASRock G10

The ASRock G10 is a 2.4/5 GHz band 11ac "Gaming" router,
based on Qualcomm IPQ8064.


SoC: Qualcomm IPQ8064
CPU: Dual-Core A15 @ (384 - 1,400 MHz, 2C2T)
DRAM: 512 MiB (~467 MiB available)
NAND: 128 MB (Micron MT29F1G08ABBEAH4)
WLAN0: 4T4R 5 GHz Wlan (QCA9980)
WLAN1: 4T4R 2.4 GHz Wlan (QCA9980)
ETH:    5x 10/100/1000 Mbps Ethernet (QCA8337)
INPUT:  Reset Button, WPS 2.4G and WPS 5G Button
LEDS:   1 mulicolor status LED
USB:    2x USB 3.0 Type-A
POWER:  12VDC/3A AC Adapter + dedicated Power Switch
UART:   Setting is 115200-8-N-1. 1x4 .1" unpopulated header
on the PCB (J6 - very tiny silkscreen next to TX).
        Pinout: 1. 3v3 (Square - best skipped!), 2. RX, 3. GND, 4. TX

WARNING: The serial port needs a TTL/RS-232 3.3v level converter!
 (Depending on the serial adapter RX and TX might need to
  be swappped).

Note about the IR-Remote:
There's a 8-Bit MCU (SONIX SN8F25E21SG) which is controlling the
IR-Remote and is fed by the IR-Photodiode. The SoC can talk to
the device via I2C. The vendor's GPL archive comes with the source
of the inteface driver for this as a (character driver), the main
control software is however a blob.

Installation Instructions:
This requires a TFTP-Server and disassembly of the G10 Router and
some soldering to gain access to the serial/UART which is needed
for booting and flashing (as well as debricking or reverting back
to stock).

 0. Power off the router and disconnect it.
 1. Open up the case
    Remove the phillips screws hidden behind each of the two
    rubber feet on the bottom of the device. They are located on
    the opposite side of the sticker on the bottom.

    Next, remove the HDMI-Dongle from its slot and remove the
    third and last phillips screw inside the HDMI-Dongle compartment.

    Then use a slim, preferably dull kitchen knife to pry apart the
    two plastic clips at the top (Tip: You can see these clips from
    inside the HDMI-Dongle compartment. The big LED lightpipe on
    the top makes for an excellent entry point, be careful though to
    not stab through. The PCB with the LEDs is directly beneath.

    Once the plastic clips are loose, you can apply your "force"
    and pry open up the remaining clips (they are sturdy).

 2. Solder/Connect the UART
    Any common USB<->UART converter with RX,GND and TX will do.
    See Warning above. Don't connect a straight RS232 or 5V one!
    This can kill your SoC and/or the power-rail of the board.

 3. Connect G10 via Ethernet-cable to your network and prepare your PC
    Download the initramfs image and rename it to g10.bin
    Setup a TFTP-Server on your PC (listening on and
    place the g10.bin into the TFTP server's root directory.

 4. Start the G10 by toggling the power button and enter UBoot Prompt

    Watch the bootlog and hit a key once it says "Hit any key to stop autoboot:"

 5. Prepare UBoot environment for OpenWrt image

    Enter the following into the (IPQ)# shell

    # setenv mtdids nand0=nand0
    # setenv mtdparts mtdparts=nand0:48m@0x1340000(ubi)
    # setenv bootargs console=ttyMSM0,115200n8
    # setenv loadkernel 'ubi read 44000000 kernel && bootm'
    # setenv bootmain 'ubi part ubi && run loadkernel'
    # setenv bootwrt 'run bootmain || dhcp'
    # setenv bootcmd 'run bootwrt'
    # saveenv

    The 'saveenv' will commit the changes to the flash (permanently).

    If there's a need to revert back to the stock firmware,
    these changes will make them work again:

    # setenv bootargs console=ttyHSL1,115200n8
    # setenv bootcmd bootipq
    # saveenv

 6. Boot the temporary ramdisk image

    # setenv ipaddr
    # setenv serverip
    # tftpboot 44000000 g10.bin
    # bootm

 7. Wait for your router's status LED to stop blinking rapidly
    and just glow a steady green.

 8. Connect via your PC to the OpenWrt running in RAM

    The default IPv4-Address of your router will be
    Download the G10's sysupgrade.bin and rename it to
    openwrt-sysupgrade.bin which then you need to copy to your
    router's temporary directory (/tmp)

    # scp openwrt-sysupgrade.bin root@

    use ssh from your PC into your router as root.

    # ssh root@

    Now is the last time you can make a backup of the original
    "kernel", "ubi_rootfs" and "ubi_rootfs_data" volumes and
    copy them over to your PC.

    to do the final install do:

    # sysupgade -v openwrt-sysupgrade.bin

    - This will will automatically reboot the router -

Signed-off-by: Christian Lamparter <>
2 months agolibnetfilter_conntrack: update to libnetfilter_conntrack-1.0.7-8-g4f0dae9
Christian Lamparter [Sun, 18 Aug 2019 00:28:48 +0000 (02:28 +0200)]
libnetfilter_conntrack: update to libnetfilter_conntrack-1.0.7-8-g4f0dae9

Update libnetfilter_conntrack to commit 4f0dae9239bda9a0844e4103bfa082ca0a5711b1

git log --pretty=oneline --abbrev-commit 3ccae9f5..4f0dae92

4f0dae9 conntrack: support for IPS_OFFLOAD
33ba110 conntrack: api: use libmnl API to build the netlink headers
f014449 src: replace old libnfnetlink builder
c1c0f16 src: replace old libnfnetlink parser
a2fa46c expect: add missing handling for CTA_EXPECT_* attributes
9ddc436 src: introduce abi_breakage()
9c0ed46 Rename 'qa' directory to 'tests'
e0d8a7c qa: test_api: skip synproxy attributes in comparator

Created with the help of the script.

Signed-off-by: Christian Lamparter <>
2 months agotools: libtool: update to 2.4.2
Christian Lamparter [Fri, 1 Mar 2019 15:48:27 +0000 (16:48 +0100)]
tools: libtool: update to 2.4.2

This patch refreshes the patches and fixes an error
message generated by compiling the host version of libjson-c:

|libtool: Version mismatch error.  This is libtool 2.4.2, but the
|libtool: definition of this LT_INIT comes from libtool 2.4.
|libtool: You should recreate aclocal.m4 with macros from libtool 2.4.2
|libtool: and run autoconf again.

Signed-off-by: Christian Lamparter <>
2 months agophytool: add phytool utility
Christian Lamparter [Sun, 3 Mar 2019 17:33:25 +0000 (18:33 +0100)]
phytool: add phytool utility

From the

phytool is a Linux MDIO register access utility.


phytool read  IFACE/ADDR/REG
phytool write IFACE/ADDR/REG <0-0xffff>
phytool print IFACE/ADDR[/REG]


ADDR := C22 | C45
C22  := <0-0x1f>
C45  := <0-0x1f>:<0-0x1f>
REG  := <0-0x1f>

Note: Not all MDIO drivers support the port:device
      Clause 45 address format.

The read and write commands are simple register level accessors.
The print command will pretty-print a register. When using the
print command, the register is optional. If left out, the most
common registers will be shown.

Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: RT-AC58U: "easy install" factory.trx
Christian Lamparter [Sat, 30 Mar 2019 20:07:40 +0000 (21:07 +0100)]
ipq40xx: RT-AC58U: "easy install" factory.trx

This patch adds a image-builder compatible factory install
image that can be flashed directly through both the WebUI or u-boot.

Installation Instructions for the -factory.trx image:
- For the web-console you just upload the .trx file.
  1. login into your router
  2. Select "Administration" under "Advanced Settings".
  3. Select the "Firmware Upgrade" tab
  4. Click on the "Choose File" button and select the
     firmware file.
     (If the web-interface doesn't accept the file try
      renaming it to: FW_RT-AC58U_3.1.1.1.trx)

  5. Hit "Upload" Button

- Place the -factory.trx file into your TFTP-server's
  root-directory and rename it to RT-AC58U.trx. Connect the serial
  cable and power up the router. In the serial console boot menu prompt
  you have to press the 2-key to choose:
   "2: Load System code then write to Flash via TFTP."
  and then follow the instruction on the serial console.

After the image is written to the NAND, the router will automatically
reboot into a modified u-boot that flashes the packed image before
it reboots one more time into the new OpenWrt installation.

Signed-off-by: Christian Lamparter <>
2 months agoscripts: add SPDX-License-Identifier check to
Christian Lamparter [Sat, 30 Mar 2019 10:05:30 +0000 (11:05 +0100)]
scripts: add SPDX-License-Identifier check to

This patch backports the current Linux kernel's SPDX-License-Identifier
check routines from the script to OpenWrt's current

Signed-off-by: Christian Lamparter <>
2 months agobuild: import LICENSES from linux
Christian Lamparter [Sat, 30 Mar 2019 09:59:25 +0000 (10:59 +0100)]
build: import LICENSES from linux

This patch copies the LICENSES directory from the
linux kernel source. The directory name and content
will be used for to verify the license
of new submissions.

Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: convert Cisco Meraki MR33 to DSA
Christian Lamparter [Sat, 9 Mar 2019 10:08:27 +0000 (11:08 +0100)]
ipq40xx: convert Cisco Meraki MR33 to DSA

This patch converts the Cisco Meraki MR33 to use ipqess + qca8k's DSA.

Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: convert ASUS RT-AC58U to DSA
Christian Lamparter [Sat, 9 Mar 2019 17:08:27 +0000 (18:08 +0100)]
ipq40xx: convert ASUS RT-AC58U to DSA

This patch converts the ASUS RT-AC58U to ipqess ethernet + qca8k's DSA.

Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: include ipq40xx-ized qca8k version
Christian Lamparter [Fri, 8 Mar 2019 20:17:19 +0000 (21:17 +0100)]
ipq40xx: include ipq40xx-ized qca8k version

There are still several todos left. Chief amongst which:
 - integrating into qca8k_mmio
 - split out whatever could be sent upstream
 - implement some sort of "mdio offset"?
 - testing and performance evaluations

Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: fix NPE related to bogus use of fixed phy
Christian Lamparter [Sat, 9 Mar 2019 19:13:17 +0000 (20:13 +0100)]
ipq40xx: fix NPE related to bogus use of fixed phy

This patch fixes a not-fully-debugged NPE that occures because
a fixed-phy is told to resume, which it obviously can't.

Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: add ipqess ethernet driver
Christian Lamparter [Sat, 9 Mar 2019 18:33:57 +0000 (19:33 +0100)]
ipq40xx: add ipqess ethernet driver

This driver from John Crispin is poised to replace the current
essedma driver that drives the ethernet MAC on the IPQ40XX platform.

Signed-off-by: John Crispin <>
Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: add resets for individual MAC1-5 and PSGMII
Christian Lamparter [Fri, 8 Mar 2019 16:11:28 +0000 (17:11 +0100)]
ipq40xx: add resets for individual MAC1-5 and PSGMII

This patch is based on a patch by:
Ram Chandra Jangir <>

Signed-off-by: Christian Lamparter <>
2 months agoapm821xx: MBL: MR24: fetch IP address over dhcp by default
Christian Lamparter [Mon, 11 Feb 2019 16:30:07 +0000 (17:30 +0100)]
apm821xx: MBL: MR24: fetch IP address over dhcp by default

This patch changes the default network configuration
to fetch the IP addresses over dhcp instead of being
statically assigned.

Signed-off-by: Christian Lamparter <>
2 months agobrcm2708: fetch IP address over dhcp by default
Christian Lamparter [Mon, 11 Feb 2019 16:26:36 +0000 (17:26 +0100)]
brcm2708: fetch IP address over dhcp by default

This patch changes the default network configuration
to fetch the IP addresses over dhcp instead of being
statically assigned.

Signed-off-by: Christian Lamparter <>
2 months agogemini: generate squashfs hdd image for DNS313
Christian Lamparter [Sun, 10 Feb 2019 13:57:31 +0000 (14:57 +0100)]
gemini: generate squashfs hdd image for DNS313

This patch adds a squashfs + overlay (f2fs / ext4)
option for the DNS313.

Signed-off-by: Christian Lamparter <>
2 months agoipq8064: ipq8064-mdio + dsa test
Christian Lamparter [Sun, 3 Feb 2019 23:05:20 +0000 (00:05 +0100)]
ipq8064: ipq8064-mdio + dsa test

2 months agoapm821xx: wndr4700: mx60: convert to DSA
Christian Lamparter [Mon, 14 Jan 2019 19:16:36 +0000 (20:16 +0100)]
apm821xx: wndr4700: mx60: convert to DSA

This patch converts both the wndr4700 and mx60 to use a patched
qca8k driver to drive DSA.

Both have to be converted since the old AR8216 phy/swconfig
driver had to be disabled as otherwise it would conflict with
the dsa driver since swconfig utilizes the phy framework.

Signed-off-by: Christian Lamparter <>
2 months agomtd: Fail when verify fails
Michal Hrusecky [Thu, 25 Oct 2018 10:53:02 +0000 (12:53 +0200)]
mtd: Fail when verify fails

Return non-zero exit code when mtd verify fails.

Signed-off-by: Michal Hrusecky <>
2 months agoipq806x: R7800: mtd-mac-address test
Christian Lamparter [Sat, 15 Dec 2018 09:56:14 +0000 (10:56 +0100)]
ipq806x: R7800: mtd-mac-address test

2 months agoipq40xx: add support for EnGenius EMR3500
Yen-Ting-Shen [Fri, 1 Nov 2019 07:47:28 +0000 (15:47 +0800)]
ipq40xx: add support for EnGenius EMR3500

SOC:     IPQ4018 / QCA Dakota
CPU:     Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7
DRAM:    256 MiB
NOR:     32 MiB
ETH:     Qualcomm Atheros QCA8072 (2 ports)
USB:     1 x 2.0 (Host controller in the SoC)
WLAN1:   Qualcomm Atheros QCA4018 2.4GHz 802.11bgn 2:2x2
WLAN2:   Qualcomm Atheros QCA4018 5GHz 802.11a/n/ac 2:2x2
LEDS:    White, Blue, Red, Orange

Flash instruction:

From EnGenius firmware to OpenWrt firmware:

In Firmware Upgrade page, upgrade your openwrt-ipq40xx-generic-engenius_emr3500-squashfs-factory.bin directly.

From OpenWrt firmware to EnGenius firmware:

1. Setup a TFTP server on your computer and configure static IP to
   Put the EnGenius firmware in the TFTP server directory on your computer.
2. Power up EMR3500. Press 4 and then press any key to enter u-boot.
3. Download EnGenius firmware
   (IPQ40xx) # tftpboot 0x84000000 openwrt-ipq40xx-emr3500-nor-fw-s.img
4. Flash the firmware
   (IPQ40xx) # imgaddr=0x84000000 && source 0x84000000:script
5. Reboot
   (IPQ40xx) # reset

Signed-off-by: Yen-Ting-Shen <>
[squashed update patch, updated to 5.4, dropped BOARD_NAME,
migrated to SOC]
Signed-off-by: Christian Lamparter <>
2 months agoipq40xx: essedma: Disable TCP segmentation offload for IPv6
Sven Eckelmann [Tue, 9 Jun 2020 13:35:04 +0000 (15:35 +0200)]
ipq40xx: essedma: Disable TCP segmentation offload for IPv6

It was noticed that the the whole MAC can hang when transferring data from
one ar40xx port (WAN ports) to the CPU and from the CPU back to another
ar40xx port (LAN ports). The CPU was doing only NATing in that process.

Usually, the problem first starts with a simple data corruption:

  $ wget -O /dev/null
  Connecting to (|2001:6b0:19::138|:443... connected.
  Read  error at byte 48807936/352321536 (Decryption has failed.). Retrying.

But after a short while, the whole MAC will stop to react. No traffic can
be transported anymore from the CPU port from/to the AR40xx PHY/switch and
the MAC has to be resetted.

Signed-off-by: Sven Eckelmann <>
Acked-by: John Crispin <>
2 months agoath79: wndr3700 series: fix wifi range & throughput
Christian Lamparter [Sun, 7 Jun 2020 20:57:46 +0000 (22:57 +0200)]
ath79: wndr3700 series: fix wifi range & throughput

This patch adds ar71xx's GPIO setup for the 2.4GHz and 5GHz antennae

| 158         /* 2.4 GHz uses the first fixed antenna group (1, 0, 1, 0) */
| 159         ap9x_pci_setup_wmac_gpio(0, (0xf << 6), (0xa << 6));
| 160
| 161         /* 5 GHz uses the second fixed antenna group (0, 1, 1, 0) */
| 162         ap9x_pci_setup_wmac_gpio(1, (0xf << 6), (0x6 << 6));

This should restore the range and throughput of the 2.4GHz radio
on all the derived wndr3700 variants and versions with the AR7161 SoC.
A special case is the 5GHz radio. The original wndr3700(v1) will
benefit from this change. However the wndr3700v2 and later revisions
were unaffected by the missing bits, as there is no demultiplexer
present in the later designs.

This patch uses gpio-hogs within the device-tree for all
wndr3700/wndr3800/wndrmac variants.


Based on the PCB pictures, the WNDR3700(v1) really had eight
independent antennae. Four antennae for each radio and all of
those were printed on the circut board.

The WNDR3700v2 and later have just six antennae. Four of those
are printed on the circuit board and serve the 2.4GHz radio.
Whereas the remaining two are special 5GHz Rayspan Patch Antennae
which are directly connected to the 5GHz radio.

Hannu Nyman dug pretty deep and unearthed a treasure of information
regarding the history of how these values came to be in the OpenWrt
archives: <>.

Mark Mentovai came across the fixed antenna group when he was looking
into the driver:

    fixed_antenna_group 1, (0, 1, 0, 1)
    fixed_antenna_group 2, (0, 1, 1, 0)
    fixed_antenna_group 3, (1, 0, 0, 1)
    fixed_antenna_group 4, (1, 0, 1, 0)

Fixes: FS#3088

Reported-by: Luca Bensi
Reported-by: Maciej Mazur
Reported-by: Hannu Nyman <>
Debugged-by: Hannu Nyman <>
Signed-off-by: Christian Lamparter <>
2 months agoca-certificates: update to version 20200601
Christian Lamparter [Sun, 7 Jun 2020 15:22:02 +0000 (17:22 +0200)]
ca-certificates: update to version 20200601

This patch updates the ca-certificates and ca-bundle package.
This version changed the files directory again, to work/, so
PKG_BUILD_DIR was brought back.

A list of changes from Debian's change-log entry for 20200601 [0]:

  * mozilla/{certdata.txt,nssckbi.h}:
    Update Mozilla certificate authority bundle to version 2.40.
    Closes: #956411, #955038
  * mozilla/blacklist.txt
    Add distrusted Symantec CA list to blacklist for explicit removal.
    Closes: #911289
    Blacklist expired root certificate, "AddTrust External Root"
    Closes: #961907
    The following certificate authorities were added (+):
    + "Certigna Root CA"
    + "emSign ECC Root CA - C3"
    + "emSign ECC Root CA - G3"
    + "emSign Root CA - C1"
    + "emSign Root CA - G1"
    + "Entrust Root Certification Authority - G4"
    + "GTS Root R1"
    + "GTS Root R2"
    + "GTS Root R3"
    + "GTS Root R4"
    + "Hongkong Post Root CA 3"
    + "UCA Extended Validation Root"
    + "UCA Global G2 Root"
    The following certificate authorities were removed (-):
    - "AddTrust External Root"
    - "Certinomis - Root CA"
    - "Certplus Class 2 Primary CA"
    - "Deutsche Telekom Root CA 2"
    - "GeoTrust Global CA"
    - "GeoTrust Primary Certification Authority"
    - "GeoTrust Primary Certification Authority - G2"
    - "GeoTrust Primary Certification Authority - G3"
    - "GeoTrust Universal CA"
    - "thawte Primary Root CA"
    - "thawte Primary Root CA - G2"
    - "thawte Primary Root CA - G3"
    - "VeriSign Class 3 Public Primary Certification Authority - G4"
    - "VeriSign Class 3 Public Primary Certification Authority - G5"
    - "VeriSign Universal Root Certification Authority"

[0] <>

Signed-off-by: Christian Lamparter <>
2 months agooxnas: build with 8021Q VLAN support
Daniel Golle [Tue, 9 Jun 2020 15:44:23 +0000 (16:44 +0100)]
oxnas: build with 8021Q VLAN support

CONFIG_VLAN_8021Q was explicitely disabled in oxnas kernel config.
Don't do that, so VLANs can be used on the target.

Fixes: dcc34574ef ("oxnas: bring in new oxnas target")
Signed-off-by: Daniel Golle <>
2 months agokernel: bump 5.4 to 5.4.45
Petr Štetiar [Tue, 9 Jun 2020 12:18:25 +0000 (14:18 +0200)]
kernel: bump 5.4 to 5.4.45

Fixes CVE-2020-10757 via upstream commit df4988aa1c96 ("mm: Fix mremap
not considering huge pmd devmap").

Resolved merge conflict in the following patches:

 bcm27xx: 950-0128-gpiolib-Don-t-prevent-IRQ-usage-of-output-GPIOs.patch

Refreshed patches, removed upstreamed patch:

 generic: 751-v5.8-net-dsa-mt7530-set-CPU-port-to-fallback-mode.patch
 generic: 754-v5.7-net-dsa-mt7530-fix-roaming-from-DSA-user-ports.patch

Run tested: qemu-x86-64
Build tested: x86/64, imx6, sunxi/a53

Signed-off-by: Petr Štetiar <>
2 months agohostapd: update to latest Git hostap_2_9-1331-g5a8b366233f5
Petr Štetiar [Mon, 8 Jun 2020 15:35:32 +0000 (17:35 +0200)]
hostapd: update to latest Git hostap_2_9-1331-g5a8b366233f5

Bump to latest Git and refresh all patches in order to get fix for "UPnP
SUBSCRIBE misbehavior in hostapd WPS AP" (CVE-2020-12695).

 General security vulnerability in the way the callback URLs in the UPnP
 SUBSCRIBE command are used were reported (VU#339275, CVE-2020-12695).
 Some of the described issues may be applicable to the use of UPnP in WPS
 AP mode functionality for supporting external registrars.

Signed-off-by: Petr Štetiar <>
2 months agoramips: erx and erx-sfp: fix missing WAN interface
Perry Melange [Sun, 26 Apr 2020 08:51:33 +0000 (10:51 +0200)]
ramips: erx and erx-sfp: fix missing WAN interface

This partially reverts commit 5acd1ed0be0d ("ramips: mt7621: fix
Ubiquiti ER-X ports names and MAC addresses"), this change was discussed

With commit 5acd1ed0be0d ("ramips: mt7621: fix Ubiquiti ER-X ports names
and MAC addresses"), all the ports were put into the LAN bridge, with
the argument that the OEM firmware does not have a WAN port enabled.  In
the default OEM setup, all of the ports except eth0 are dead and eth0 is
set to a static IP address without providing DHCP services when
connected.  It is only after the wizard has been run that eth0 becomes
the WAN port and all the rest of the ports belong to LAN with DHCP

Having all of the ports set to the LAN bridge does not mirror the default
OEM setup.  To accomplish that, then only eth0 would be in the LAN bridge.
But this is not the expected behaviour of OpenWrt.

Therefore this proposal to set eth0 to WAN and eth1-N to LAN provides
the expected behaviour expected from OpenWrt, maintains the current
documentation as up-to-date, and does not require the user to manually
detach eth0 from the LAN bridge, create the WAN(6) interface(s), and set
eth0 to the WAN(6) interface(s).

Fixes: 5acd1ed0be0d ("ramips: mt7621: fix Ubiquiti ER-X ports names and MAC addresses")
Signed-off-by: Perry Melange <>
[commit subject and description tweaks]
Signed-off-by: Petr Štetiar <>
2 months agomkchkimg: use higher version code
Joseph C. Lehner [Fri, 22 Mar 2019 14:19:54 +0000 (15:19 +0100)]
mkchkimg: use higher version code

This patch changes the version code of the image header
from `1.1.99_0.0.0.0` to `99.99.99_99.99.99.99`. This
is neccessary on some devices where the stock firmware
checks the version field, possibly preventing third-party
firmware from being installed.

Reviewed-by: Thibaut VARÈNE <>
Signed-off-by: Joseph C. Lehner <>
2 months agoumdnsd: update to latest git HEAD
Kevin Darbyshire-Bryant [Mon, 8 Jun 2020 19:13:15 +0000 (20:13 +0100)]
umdnsd: update to latest git HEAD

d13290b Fix advertised IPv6 addresses

Don't just serve link-local addresses via mdns, offer all.

Signed-off-by: Kevin Darbyshire-Bryant <>
2 months agohostapd: silence rm
Stijn Tintel [Mon, 8 Jun 2020 03:03:05 +0000 (06:03 +0300)]
hostapd: silence rm

When bringing up wifi the first time after boot, these warnings appear:

netifd: radio0 (1370): rm: can't remove '/var/run/hostapd-wlan0.psk': No such file or directory
netifd: radio0 (1370): rm: can't remove '/var/run/hostapd-wlan0.vlan': No such file or directory

Silence them by adding the "-f" option to rm.

Signed-off-by: Stijn Tintel <>
Acked-by: John Crispin <>
2 months agomediatek: fix image/
John Crispin [Sun, 7 Jun 2020 18:59:17 +0000 (20:59 +0200)]
mediatek: fix image/

Signed-off-by: John Crispin <>
2 months agobcm63xx: bcm6328: switch to upstream boot sel patch
Álvaro Fernández Rojas [Sun, 7 Jun 2020 16:59:38 +0000 (18:59 +0200)]
bcm63xx: bcm6328: switch to upstream boot sel patch

BCM6328 boot selection fix has been upstreamed.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agobcm63xx: add support for the Sercomm H500-s
Daniel González Cabanelas [Sun, 7 Jun 2020 08:55:56 +0000 (10:55 +0200)]
bcm63xx: add support for the Sercomm H500-s

Sercomm H500-s is an xDSL dual band wireless router based on Broadcom
BCM63167 SoC.

   SoC:          Broadcom BCM63167
   CPU:          BMIPS4350 V8.0, 400 MHz, 2 cores
   Flash:        NAND 128 MiB
   RAM:          DDR3 128 MiB
   Ethernet:     4x 10/100/1000 Mbps
   Switch:       BCM53134S
   Wireless:     802.11b/g/n: BCM435f (integrated)
                 802.11ac:    Quantenna QT3740BC (onboard SoC)
   USB:          1x 2.0
   LEDs/Buttons: 11x / 2x

Flash instruction, web UI:
  1. Reset to defaults using the reset button if the admin password is
  2. Login into the web UI as admin.
     User:     admin
     Password: VF-ESVodafone-H-500-s or l033i-h500s
  3. Go to Settings -> Firmware Update, and select the Openwrt factory
  4. Update the firmware.
  5. Wait until it finish, the device will reboot with Openwrt installed
     on the alternative image partitions keeping the stock firmware in
     the former.

  - The patch also adds support for the lowi version. Only the factory
    firmware is different.
  - The integrated Wifi in the Broadcom Soc isn't still supported.
  - The Quantenna 802.11ac wifi works ok, but needs to be configured with
    the Quantenna client application. It can't be configured with Luci
    nor any iw command since it's a separated subsystem linked via
  - The BCM53134S external switch is managed via MDIO which isn't
    supported in this target. Therefore it will behave as a dumb switch.

Signed-off-by: Daniel González Cabanelas <>
2 months agobcm63xx: image: support device-specific load address
Álvaro Fernández Rojas [Sun, 7 Jun 2020 08:55:53 +0000 (10:55 +0200)]
bcm63xx: image: support device-specific load address

Some CFEs are located at the address currently used for relocation and lzma
loader load address, so we need to provide a way to override it.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agobcm63xx: image: don't add the CFE to the sercomm factory
Daniel González Cabanelas [Sun, 7 Jun 2020 08:55:51 +0000 (10:55 +0200)]
bcm63xx: image: don't add the CFE to the sercomm factory

There is no need to include the CFE bootloader in the Sercomm factory

There might be a case when this could be useful:
  - We are running the stock firmware on the first Sercomm image
  - The second partition storing the botloader was erased (unlikely)
Even in this case flashing an image without a bootlader is harmless.

Don't include the bootloader in the factory image creation and rid of the
risk of flashing factory images with an untested bootloader partition.

Signed-off-by: Daniel González Cabanelas <>
2 months agobcm63xx: kernel: add BCM63167 cpuid variant
Daniel González Cabanelas [Sun, 7 Jun 2020 08:55:46 +0000 (10:55 +0200)]
bcm63xx: kernel: add BCM63167 cpuid variant

The BCM63167 is a BCM63268 SoC with a different physical packaging.

Add the CPU ID to allow supporting routers with this SoC (i.e Sercomm

Signed-off-by: Daniel González Cabanelas <>
2 months agobcm63xx: vr-3032u: add missing compatible property
Álvaro Fernández Rojas [Sun, 7 Jun 2020 16:49:24 +0000 (18:49 +0200)]
bcm63xx: vr-3032u: add missing compatible property

SoC is a BCM63168.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agobcm63xx: vg-8050: add missing compatible property
Álvaro Fernández Rojas [Sun, 7 Jun 2020 16:48:08 +0000 (18:48 +0200)]
bcm63xx: vg-8050: add missing compatible property

SoC is a BCM63169.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agomediatek: add mt7531 DSA support
John Crispin [Thu, 4 Jun 2020 13:07:28 +0000 (15:07 +0200)]
mediatek: add mt7531 DSA support

Signed-off-by: John Crispin <>
2 months agomediatek: add bpi-r64 emmc support
John Crispin [Thu, 4 Jun 2020 12:26:11 +0000 (14:26 +0200)]
mediatek: add bpi-r64 emmc support

Signed-off-by: John Crispin <>
2 months agomediatek: make emmc image generation work on mt7622
John Crispin [Thu, 4 Jun 2020 12:23:07 +0000 (14:23 +0200)]
mediatek: make emmc image generation work on mt7622

Signed-off-by: John Crispin <>
2 months agomediatek: switch over to extended upstream eip97 driver
John Crispin [Thu, 4 Jun 2020 12:20:34 +0000 (14:20 +0200)]
mediatek: switch over to extended upstream eip97 driver

Signed-off-by: John Crispin <>
2 months agomediatek: tidy up image subtarget Makefiles
Sungbo Eo [Fri, 29 May 2020 11:49:44 +0000 (20:49 +0900)]
mediatek: tidy up image subtarget Makefiles

- sort device recipes alphabetically
- adjust board name of ELECOM WRC-2533GENT
- harmonize line wrapping

Signed-off-by: Sungbo Eo <>
Signed-off-by: Adrian Schmutzler <>
2 months agobcm27xx-gpu-fw: bump to most recent good version
Stijn Tintel [Sun, 7 Jun 2020 06:56:46 +0000 (09:56 +0300)]
bcm27xx-gpu-fw: bump to most recent good version

This updates to the last firmware version before the switch to building
from the common firmware branch, which introduces various issues.

Signed-off-by: Stijn Tintel <>
Acked-by: Álvaro Fernández Rojas <>
2 months agoRevert "bcm27xx-gpu-fw: update to latest version"
Stijn Tintel [Sun, 7 Jun 2020 06:18:39 +0000 (09:18 +0300)]
Revert "bcm27xx-gpu-fw: update to latest version"

This reverts commit 9e467a764b4e30a04dd0431ea277f6acd26babe0.

The Raspberry Pi firmware recently switched to building from the common
firmware branch. This introduces changes in the core clock handling,
causing various issues.

E.g. enable_uart=1 no longer fixes the core clock frequency to 250MHz.
When the disable-bt DT overlay is not loaded, the core clock frequency
is increased to 400MHz. As a result, the UART baud rate is no longer
correct, and this causes garbled serial console, or communication
problems with HATs that use the UART.

As a workaround, the core clock could be fixed to 250MHz by adding
'core_freq=250' in /boot/config.txt, but as there appear to be other
issues than just the UART being broken, the safer bet is to revert the
firmware for now.

Upstream bug:

Signed-off-by: Stijn Tintel <>
Acked-by: Álvaro Fernández Rojas <>
2 months agobcm27xx: fix unmounting /boot after sysupgrade
Stijn Tintel [Sun, 7 Jun 2020 02:31:09 +0000 (05:31 +0300)]
bcm27xx: fix unmounting /boot after sysupgrade

Due to a typo, /boot is not properly unmounted after copying the backup
file to it. Fix the typo to solve this.

Fixes: 246916ddf4a1 ("brcm2708: use x86's upgrade scripts for all rpi targets")
Signed-off-by: Stijn Tintel <>
2 months agonetifd: update to latest git HEAD
Hans Dedecker [Sat, 6 Jun 2020 18:54:09 +0000 (20:54 +0200)]
netifd: update to latest git HEAD

51e9fb8 system-linux: improve handling of device rename

Signed-off-by: Hans Dedecker <>
2 months agokernel: Add kmod-sch-cake-virtual intermediate package
Toke Høiland-Jørgensen [Wed, 6 May 2020 19:58:30 +0000 (21:58 +0200)]
kernel: Add kmod-sch-cake-virtual intermediate package

As reported in, the
imagebuilder fails due to a dependency resolution error when the userspace
packages are built using a target that has a different kernel version than
that which is being run. To resolve this, add a virtual kernel package with
the conditional dependency currently used in sqm-scripts. The idea is to
move the sqm-scripts dependency to this virtual package, which hopefully
should be consistent with the actual kernel module being built.

Signed-off-by: Toke Høiland-Jørgensen <>
2 months agonghttp2: bump to 1.41.0
Hans Dedecker [Sat, 6 Jun 2020 12:00:37 +0000 (14:00 +0200)]
nghttp2: bump to 1.41.0

8f7b008b Update bash_completion
83086ba9 Update manual pages
c3b46625 Merge pull request from GHSA-q5wr-xfw9-q7xr
3eecc2ca Bump version number to v1.41.0, LT revision to 34:0:20
881c060d Update AUTHORS
f8da73bd Earlier check for settings flood
336a98fe Implement max settings option
ef415836 Revert "Add missing connection error handling"
979e6c53 Merge pull request #1459 from nghttp2/proxyprotov2
b7d16101 Add missing connection error handling
cd53bd81 Merge pull request #1460 from gportay/patch-1
e5625b8c Fix doc
c663349f integration: Add PROXY protocol v2 tests
854e9fe3 nghttpx: Always call init_forwarded_for
c60ea227 Update doc
49cd8e6e nghttpx: Add PROXY-protocol v2 support
3b17a659 Merge pull request #1453 from Leo-Neat/master
600fcdf5 Merge pull request #1455 from xjtian/long_serials
4922bb41 static_cast size parameter in StringRef constructor to size_t
aad86975 Fix get_x509_serial for long serial numbers
dc7a7df6 Adding CIFuzz
b3f85e2d Merge pull request #1444 from nghttp2/fix-recv-window-flow-control-issue
ffb49c6c Merge pull request #1435 from geoffhill/master
2ec58551 Fix receiving stream data stall
459df42b Merge pull request #1442 from nghttp2/upgrade-llhttp
a4c1fed5 Bump llhttp to 2.0.4
866eadb5 Enable session_create_idle_stream test, fix errors
5e13274b Fix typo
e0d7f7de h2load: Allow port in --connect-to
df575f96 h2load: add --connect-to option
1fff7379 clang-format-9
b40c6c86 Merge pull request #1418 from vszakats/patch-1
9bc2c75e lib/CMakeLists.txt: Make hard-coded static lib suffix optional
2d5f7659 Bump up version number to 1.41.0-DEV

Signed-off-by: Hans Dedecker <>
2 months agokernel: sch_cake: use skb hash improve wireguard compatibility
Kevin Darbyshire-Bryant [Fri, 29 May 2020 15:29:53 +0000 (16:29 +0100)]
kernel: sch_cake: use skb hash improve wireguard compatibility

While the other fq-based qdiscs take advantage of skb->hash and doesn't
recompute it if it is already set, sch_cake does not.

This was a deliberate choice because sch_cake hashes various parts of the
packet header to support its advanced flow isolation modes. However,
foregoing the use of skb->hash entirely loses a few important benefits:

- When skb->hash is set by hardware, a few CPU cycles can be saved by not
  hashing again in software.

- Tunnel encapsulations will generally preserve the value of skb->hash from
  before the encapsulation, which allows flow-based qdiscs to distinguish
  between flows even though the outer packet header no longer has flow

It turns out that we can preserve these desirable properties in many cases,
while still supporting the advanced flow isolation properties of sch_cake.
This patch does so by reusing the skb->hash value as the flow_hash part of
the hashing procedure in cake_hash() only in the following conditions:

- If the skb->hash is marked as covering the flow headers (skb->l4_hash is


- NAT header rewriting is either disabled, or did not change any values
  used for hashing. The latter is important to match local-origin packets
  such as those of a tunnel endpoint.

The immediate motivation for fixing this was the recent patch to WireGuard
to preserve the skb->hash on encapsulation. As such, this is also what I
tested against; with this patch, added latency under load for competing
flows drops from ~8 ms to sub-1ms on an RRUL test over a WireGuard tunnel
going through a virtual link shaped to 1Gbps using sch_cake. This matches
the results we saw with a similar setup using sch_fq_codel when testing the
WireGuard patch.

Fixes: 046f6fd5daef ("sched: Add Common Applications Kept Enhanced (cake) qdisc")
Signed-off-by: Toke Høiland-Jørgensen <>
Signed-off-by: David S. Miller <>
Signed-off-by: Kevin Darbyshire-Bryant <>
2 months agomvebu: remove ClearFog Pro SUPPORTED_DEVICES
DENG Qingfang [Thu, 4 Jun 2020 04:30:19 +0000 (12:30 +0800)]
mvebu: remove ClearFog Pro SUPPORTED_DEVICES

A direct upgrade from previous swconfig version with
incompatible settings to DSA will break the internet.
Remove SUPPORTED_DEVICES so users cannot upgrade directly.

Signed-off-by: DENG Qingfang <>
[rebase after Linksys rename, adjust title]
Signed-off-by: Adrian Schmutzler <>
2 months agomvebu: rename Linksys devices based on their common names
Paul Spooren [Fri, 10 Apr 2020 10:14:21 +0000 (00:14 -1000)]
mvebu: rename Linksys devices based on their common names

The Linksys devices in mvebu target feature a mixed naming,
where parts are based on the official product name (device
node, image; e.g. WRT3200ACM) and parts are based on the
internal code name (DTS file name, compatible, LED labels;
e.g. rango). This inconsistent naming has been perceived
as quite confusing.

A recent attempt by Paul Spooren to harmonize this naming
in kernel has been declined there. However, for us it still
makes sense to apply at least a part of these changes

Primarily, this patch changes the compatible in DTS and thus
the board name used in various scripts to have them in line
with the device, model and image names. Due to the recent
switch from swconfig to DSA, this allows us to drop
SUPPORTED_DEVICES and thus prevent seamless upgrade between
these incompatible setups.

However, this does not include the LED label rename from
Paul's initial patch: I don't think it's worth keeping the
enormous diff locally for this case, as we can implement
this much easier in 01_leds if we have to live with the
inconsistency anyway.

Signed-off-by: Paul Spooren <>
[rebase, extend to all devices, drop DT LED changes]
Signed-off-by: Adrian Schmutzler <>
2 months agokernel: b53: fix compilation with kernels 5.5+
Rafał Miłecki [Fri, 5 Jun 2020 10:42:21 +0000 (12:42 +0200)]
kernel: b53: fix compilation with kernels 5.5+

Signed-off-by: Rafał Miłecki <>
2 months agogeneric: mt7530: support adjusting EEE
DENG Qingfang [Thu, 28 May 2020 07:04:17 +0000 (15:04 +0800)]
generic: mt7530: support adjusting EEE

Add support for adjusting EEE with ethtool

Signed-off-by: DENG Qingfang <>
2 months agogeneric: mt7530: fix roaming from DSA user ports
DENG Qingfang [Sat, 25 Apr 2020 12:08:00 +0000 (20:08 +0800)]
generic: mt7530: fix roaming from DSA user ports

When a client moves from a DSA user port to a software port in a bridge,
it cannot reach any other clients that connected to the DSA user ports.
That is because SA learning on the CPU port is disabled, so the switch
ignores the client's frames from the CPU port and still thinks it is at
the user port.

Fix it by enabling SA learning on the CPU port.

To prevent the switch from learning from flooding frames from the CPU
port, set skb->offload_fwd_mark to 1 for unicast and broadcast frames,
and let the switch flood them instead of trapping to the CPU port.
Multicast frames still need to be trapped to the CPU port for snooping,
so set the SA_DIS bit of the MTK tag to 1 when transmitting those frames
to disable SA learning.

Signed-off-by: DENG Qingfang <>
2 months agogeneric: fix DSA VLAN filtering
DENG Qingfang [Mon, 20 Apr 2020 13:37:17 +0000 (21:37 +0800)]
generic: fix DSA VLAN filtering

Currently enabling VLAN filtering blocks all traffic in the bridge
immediately. That is because DSA ignores all VLAN setup when VLAN
filtering is disabled, and when it is enabled, there is no VLAN entry
in the VLAN table, causing all traffic to be blocked.

Add patches to allow VLAN setup even if VLAN filtering is disabled.

Signed-off-by: DENG Qingfang <>
2 months agogeneric: mt7530: set CPU port to fallback mode
DENG Qingfang [Thu, 14 May 2020 03:00:58 +0000 (11:00 +0800)]
generic: mt7530: set CPU port to fallback mode

Currently, setting a bridge's self PVID to other value and deleting
the default VID 1 renders untagged ports of that VLAN unable to talk to
the CPU port:

bridge vlan add dev br0 vid 2 pvid untagged self
bridge vlan del dev br0 vid 1 self
bridge vlan add dev sw0p0 vid 2 pvid untagged
bridge vlan del dev sw0p0 vid 1
# br0 cannot send untagged frames out of sw0p0 anymore

That is because the CPU port is set to security mode and its PVID is
still 1, and untagged frames are dropped due to VLAN member violation.

Set the CPU port to fallback mode so untagged frames can pass through.

Signed-off-by: DENG Qingfang <>
2 months agoramips/mediatek: select kmod-mt7615-firmware where kmod-mt7615e is selected
Felix Fietkau [Wed, 3 Jun 2020 16:55:55 +0000 (18:55 +0200)]
ramips/mediatek: select kmod-mt7615-firmware where kmod-mt7615e is selected

The new mt76 version splits out the firmware, because the driver can also be
used for MT7663/MT7613

Signed-off-by: Felix Fietkau <>
2 months agokernel: fix portability issue with perf on linux 5.4
Felix Fietkau [Tue, 12 May 2020 13:23:01 +0000 (15:23 +0200)]
kernel: fix portability issue with perf on linux 5.4

Remove dependencies on core kernel headers in host tools used to build perf,
which break on any non-linux system

Signed-off-by: Felix Fietkau <>
2 months agohostapd: add support for wifi-station and wifi-vlan sections
John Crispin [Mon, 25 May 2020 09:39:40 +0000 (11:39 +0200)]
hostapd: add support for wifi-station and wifi-vlan sections

This patch adds support for 2 new uci sections.

config wifi-vlan
# iface is optional. if it is not defined the vlan will apply
# to all interfaces
        option iface default_radio0
        option name guest
        option vid 100
        option network guest

config wifi-station
# iface is optional. if it is not defined the station will apply
# to all interfaces
        option iface default_radio0
        # mac is optional. if it is not defined it will be a catch all
# for any sta using this key
option mac '00:11:22:33:44:55'
        # vid is optional. if it is not defined, the sta will be part of
# the primary iface.
option vid 100
        option key testtest

With this patch applied it is possible to use multiple PSKs on a single BSS.

Signed-off-by: John Crispin <>
2 months agonetifd: update to latest HEAD
John Crispin [Thu, 4 Jun 2020 11:35:33 +0000 (13:35 +0200)]
netifd: update to latest HEAD

db275e1 interface-ip: fix build on non-linux systems
3392046 system-dummy: fix missing return
a56b457 netifd: wireless: add support for tracking wifi-station sections
4ce33ce netifd: wireless: add support for tracking wifi-vlan sections

Signed-off-by: John Crispin <>
2 months agomvebu: rename Linksys Mamba WAN port
DENG Qingfang [Tue, 28 Apr 2020 15:40:53 +0000 (23:40 +0800)]
mvebu: rename Linksys Mamba WAN port

Rename it to wan to match Linksys Armada 385 series

Signed-off-by: DENG Qingfang <>
2 months agomvebu: remove swconfig package
DENG Qingfang [Sun, 19 Apr 2020 08:16:32 +0000 (16:16 +0800)]
mvebu: remove swconfig package

Signed-off-by: DENG Qingfang <>
2 months agogeneric: backport mv88e6xxx port mirroring support
DENG Qingfang [Sun, 19 Apr 2020 08:04:06 +0000 (16:04 +0800)]
generic: backport mv88e6xxx port mirroring support

Backport port mirroring support for mv88e6xxx

Signed-off-by: DENG Qingfang <>
2 months agomvebu: drop 06_set_iface_mac preinit script
DENG Qingfang [Sun, 19 Apr 2020 07:55:31 +0000 (15:55 +0800)]
mvebu: drop 06_set_iface_mac preinit script

MAC address is set in board.d script
Interface swapping is not needed anymore as switching to DSA breaks
previous configuration anyway

Signed-off-by: DENG Qingfang <>
2 months agomvebu: use ucidef to set up MAC address
DENG Qingfang [Sun, 19 Apr 2020 07:53:03 +0000 (15:53 +0800)]
mvebu: use ucidef to set up MAC address

Use ucidef to set up MAC address instead of preinit script

Signed-off-by: DENG Qingfang <>
2 months agomvebu: use eth0 as DSA CPU port for Linksys WRT
DENG Qingfang [Thu, 30 Apr 2020 11:41:39 +0000 (19:41 +0800)]
mvebu: use eth0 as DSA CPU port for Linksys WRT

eth0 has HW MAC address while eth2 does not.
Use eth0 instead so we don't have to set LAN MAC manually.
Disable unused eth2, until multi CPU port is supported.

Signed-off-by: DENG Qingfang <>
2 months agomvebu: update default config for DSA
DENG Qingfang [Sun, 19 Apr 2020 07:36:04 +0000 (15:36 +0800)]
mvebu: update default config for DSA

Update network/LED configuration for DSA driver.
sysupgrade from images prior to this commit with config preserved
will break the ethernet.

Signed-off-by: DENG Qingfang <>
2 months agomvebu: remove swconfig symbols from kernel config
DENG Qingfang [Sun, 19 Apr 2020 07:34:40 +0000 (15:34 +0800)]
mvebu: remove swconfig symbols from kernel config

Signed-off-by: DENG Qingfang <>
2 months agomvebu: drop swconfig patches
DENG Qingfang [Sun, 19 Apr 2020 07:33:19 +0000 (15:33 +0800)]
mvebu: drop swconfig patches

Drop swconfig patches for Clearfog and Linksys WRT

Signed-off-by: DENG Qingfang <>
2 months agomvebu: switch to kernel 5.4
Adrian Schmutzler [Thu, 28 May 2020 16:46:47 +0000 (18:46 +0200)]
mvebu: switch to kernel 5.4

Last reports with kernel 5.4 have all been positive [1], so let's open
this to a wider range of testers.


Signed-off-by: Adrian Schmutzler <>
2 months agobcm63xx: vg-8050: fix WFI partition size
Álvaro Fernández Rojas [Wed, 3 Jun 2020 17:06:22 +0000 (19:06 +0200)]
bcm63xx: vg-8050: fix WFI partition size

Each image can take up to 0x3d60000, which means 128k more per image.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agobcm63xx: vr-3032u: fix WFI partition size
Álvaro Fernández Rojas [Wed, 3 Jun 2020 17:03:42 +0000 (19:03 +0200)]
bcm63xx: vr-3032u: fix WFI partition size

Each image can take up to 0x3d60000, which means 128k more per image.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agokernel: mtdsplit: bcm_wfi: always add img partitions
Álvaro Fernández Rojas [Wed, 3 Jun 2020 16:44:50 +0000 (18:44 +0200)]
kernel: mtdsplit: bcm_wfi: always add img partitions

This is useful when booting OpenWrt from ramdisks in order to have both
images partitions defined.
Furthermore, instead of always using img2 for the inactive image, let's use
img1 or img2 accordingly.

Signed-off-by: Álvaro Fernández Rojas <>
2 months agoramips: mt7621: use higher SPI clock speed on Mikrotik rbm11g and rbm33g
Tobias Schramm [Wed, 3 Jun 2020 13:10:40 +0000 (15:10 +0200)]
ramips: mt7621: use higher SPI clock speed on Mikrotik rbm11g and rbm33g

Previously the dts were using a value determined by empirical testing,
because of a spi driver/clock bug. The bug was fixed quite some time
ago. 33 MHz is the default clock frequency used by RouterBOOT and thus

Signed-off-by: Tobias Schramm <>
2 months agoiwinfo: update to version 2020-06-03
Petr Štetiar [Wed, 3 Jun 2020 12:55:10 +0000 (14:55 +0200)]
iwinfo: update to version 2020-06-03

2faa20e5e9d1 iwinfo: add device id for Mikrotik R11e-5HacD miniPCIe card
d577a9d38a3b iwinfo: add device id for Marvell 88W8997 SDIO wifi card
f6b7d16d2ffa iwinfo: add device id for Atheros AR9287 PCIe wifi card

Signed-off-by: Petr Štetiar <>
2 months agobcm47xx: fix brcm-wl module loading
Sungbo Eo [Sun, 31 May 2020 07:42:23 +0000 (16:42 +0900)]
bcm47xx: fix brcm-wl module loading

_dma_cache_wback_inv needs to be exported to load wl module successfully.

root@OpenWrt:/# insmod wl
[  363.867779] wl: Unknown symbol _dma_cache_wback_inv (err -2)
failed to insert /lib/modules/5.4.40/wl.ko

Signed-off-by: Sungbo Eo <>
Cc: Rafał Miłecki <>
2 months agokernel: iio: add drivers for st_lsm6dsx IMU MEMS sensors
Tim Harvey [Thu, 28 May 2020 15:04:42 +0000 (08:04 -0700)]
kernel: iio: add drivers for st_lsm6dsx IMU MEMS sensors

Add kmod for the ST LSM6DSX IMU driver.

Signed-off-by: Tim Harvey <>
[fixed missing regmap module dependencies]
Signed-off-by: Petr Štetiar <>
2 months agokernel: iio: fix st_accel_{i2c, spi} driver
Tim Harvey [Thu, 28 May 2020 15:02:01 +0000 (08:02 -0700)]
kernel: iio: fix st_accel_{i2c, spi} driver

Add missing kernel module and rename driver

Fixes: 2d8f4c4fbd46 ("kernel: iio: add st-accel driver modules")
Signed-off-by: Tim Harvey <>
2 months agoocteontx: fix mcp251x can controller
Tim Harvey [Thu, 28 May 2020 14:58:49 +0000 (07:58 -0700)]
octeontx: fix mcp251x can controller

Update the can-mcp251x-convert-to-half-duplex-SPI patch to fix reception

Some SPI host controllers such as the Cavium Thunder TX do not support
full-duplex SPI. Using half-duplex transfers allows the driver to work
with those host controllers.

This patch fixes the fact that mcp251x_hw_rx_frame was still relying on
a full-duplex transfer where bits were being shifted on MOSI at the same time
as MISO. After splitting the transaction into a spi_write_then_read() care
must be taken to ignore the first byte.

Signed-off-by: Tim Harvey <>
2 months agoocteontx: fix gpio irq request
Tim Harvey [Thu, 28 May 2020 14:58:34 +0000 (07:58 -0700)]
octeontx: fix gpio irq request

This fixes a regression in 5.4 that causes a crash when a driver requests
an ARM GPIO for an IRQ.

Signed-off-by: Tim Harvey <>
2 months agoocteontx: refresh kernel 5.4 config
Tim Harvey [Tue, 2 Jun 2020 17:05:01 +0000 (10:05 -0700)]
octeontx: refresh kernel 5.4 config

refresh kernel config by running make kernel_menuconfig and saving changes

Signed-off-by: Tim Harvey <>
2 months agoimx6: image: increase max ubifs file-system size
Tim Harvey [Thu, 28 May 2020 13:57:05 +0000 (06:57 -0700)]
imx6: image: increase max ubifs file-system size

The latest 2GiB NAND flash parts used by Gateworks ventana are 2K page-size.

Signed-off-by: Tim Harvey <>
2 months agoimx6: backport v5.8 imx6qdl-gw dt patches
Tim Harvey [Thu, 28 May 2020 13:56:17 +0000 (06:56 -0700)]
imx6: backport v5.8 imx6qdl-gw dt patches

- add fxos8700 support to GW52xx/GW53xx/GW54xx
- add USB_OTG support to GW552x
- add LSM9DS1 IMU support to GW560x
- add LSM9DS1 IMU support to GW5904
- add CC1352 UART to GW5910
- add BCM4330 support to GW5910
- fix wlan regulator for GW5910

Signed-off-by: Tim Harvey <>
2 months agowolfssl: use -fomit-frame-pointer to fix asm error
Eneas U de Queiroz [Tue, 26 May 2020 13:45:22 +0000 (10:45 -0300)]
wolfssl: use -fomit-frame-pointer to fix asm error

32-bit x86 fail to compile fast-math feature when compiled with frame
pointer, which uses a register used in a couple of inline asm functions.

Previous versions of wolfssl had this by default.  Keeping an extra
register available may increase performance, so it's being restored for
all architectures.

Signed-off-by: Eneas U de Queiroz <>
2 months agoexfat-utils: move into packages feed
Rosen Penev [Sun, 26 Apr 2020 23:17:30 +0000 (16:17 -0700)]
exfat-utils: move into packages feed

This will be moved to packages:

Signed-off-by: Rosen Penev <>
[commit subject facelift]
Signed-off-by: Petr Štetiar <>
2 months agoxfsprogs: move into packages feed
Rosen Penev [Fri, 22 May 2020 23:22:57 +0000 (16:22 -0700)]
xfsprogs: move into packages feed

Does not seem to be needed here. This will be imported into packages.

Signed-off-by: Rosen Penev <>
[subject facelift, PR ref]
Signed-off-by: Petr Štetiar <>
2 months agolibconfig: move into packages feed
Rosen Penev [Fri, 22 May 2020 23:16:47 +0000 (16:16 -0700)]
libconfig: move into packages feed

No package in base uses libconfig. Everything is in the packages feed.

Signed-off-by: Rosen Penev <>
[subject facelift, PR ref]
Signed-off-by: Petr Štetiar <>
2 months agokernel: add gpio-it87
Florian Eckert [Wed, 29 Apr 2020 13:54:06 +0000 (15:54 +0200)]
kernel: add gpio-it87

Since commit 910df3f06cc902ca2cb0ca8e963e9354c930df1a we have build in
on all X86/64 platforms the gpio-it87 driver.

Since this change I am getting the following error message on boot.
 > kern.err kernel: [    1.009416] gpio_it87: no device

I do not have this device on my system. To prevent the nonsensical
message and the loading of the module I have added this as a package, so
that it can be installed later or during image building.

Signed-off-by: Florian Eckert <>
Reviewed-by: Philip Prindeville <>
2 months agoath79: phy-ar7200-usb: do not print error on defered init
Johann Neuhauser [Tue, 28 Apr 2020 21:20:13 +0000 (23:20 +0200)]
ath79: phy-ar7200-usb: do not print error on defered init

This is only a cosmetic correction, as the driver works as expected.
However, the error message confuses users about a missing reset definition.

On a defered init we don't see the following error message now:
[    0.078292] ar7200-usb-phy usb-phy: phy reset is missing

Tested-by: Lech Perczak <>
Signed-off-by: Johann Neuhauser <>
2 months agobase-files: prevent issues w/ overlay on powerloss after sysupgrade
Sergey Ryazanov [Fri, 24 Apr 2020 14:04:14 +0000 (17:04 +0300)]
base-files: prevent issues w/ overlay on powerloss after sysupgrade

Due to filesystem write caching the old configuration data could stay
out of flash for a long time during a first boot after the sysupgrade.
Power loss during this period could damage the overlay data and even
make device inaccessable via the network.

Fix this by syncing data to a flash as soon as the previous
configuration will be unpacked after the sysupgrade. Also sync the FS
state after the sysupgrade.tgz archive removing to prevent duplicative
extraction of a previous configuration.

Tested with AMD Geode based board.

Signed-off-by: Sergey Ryazanov <>
2 months agodnsmasq: add /etc/dnsmasq.d/ to conffiles
Sven Roederer [Fri, 24 Apr 2020 13:43:49 +0000 (15:43 +0200)]
dnsmasq: add /etc/dnsmasq.d/ to conffiles

This directory can hold configuration-snippets which should also included in the backup.

Signed-off-by: Sven Roederer <>
2 months agomvebu: espressobin: fix SATA and USB 3.0 ports detection
Tomasz Maciej Nowak [Mon, 20 Apr 2020 17:47:11 +0000 (19:47 +0200)]
mvebu: espressobin: fix SATA and USB 3.0 ports detection

This commit removes changes from upstream commits:
8e18c8e58da6 arm64: dts: marvell: armada-3720-espressobin: declare SATA
PHY property
bd3d25b07342 arm64: dts: marvell: armada-37xx: link USB hosts with their
For most boards which have factory bootloader this caused that devices
connected to USB 3.0 and SATA port were not detected. For them to
function users would need to upgrade the bootloader to version with ARM
Trusted Firmware 2.1 or later. Unfortunately there is no official
bootloader image with updated ATF component, therefore drop these
properties from nodes. This change was also tested briefly with
bootloader with updated ATF and the ports functioned properly.

Signed-off-by: Tomasz Maciej Nowak <>
2 months agouboot-mxs: bump to v2020.04
Michael Heimpold [Sun, 19 Apr 2020 22:21:59 +0000 (00:21 +0200)]
uboot-mxs: bump to v2020.04

Also update the U-Boot BSP patch for I2SE Duckbill devices.

Signed-off-by: Michael Heimpold <>
2 months agoipq806x: enable disk-activity LED trigger
Thomas Albers [Thu, 16 Apr 2020 05:23:11 +0000 (00:23 -0500)]
ipq806x: enable disk-activity LED trigger

Enable the disk-activity LED trigger for ipq806x, since this SoC has an
onboard SATA controller.

Signed-off-by: Thomas Albers <>
[split into separate commit]
Signed-off-by: Petr Štetiar <>
2 months agobase-files: fix LED IDE trigger
Thomas Albers [Wed, 3 Jun 2020 11:42:47 +0000 (13:42 +0200)]
base-files: fix LED IDE trigger

This changes the ide-disk LED trigger to the generic disk-activity as
ide-disk trigger was removed in upstream commit eb25cb9956cc ("leds:
convert IDE trigger to common disk trigger").

Signed-off-by: Thomas Albers <>
[split into separate commit, commit description facelift]
Signed-off-by: Petr Štetiar <>
2 months agolinux/generic: remove obsolete config option LEDS_TRIGGER_IDE_DISK
Thomas Albers [Wed, 15 Apr 2020 23:53:13 +0000 (18:53 -0500)]
linux/generic: remove obsolete config option LEDS_TRIGGER_IDE_DISK

Kernel config option LEDS_TRIGGER_IDE_DISK was renamed in kernel 4.8 to
CONFIG_LEDS_TRIGGER_DISK in upstream commit eb25cb9956cc ("leds: convert
IDE trigger to common disk trigger").

Removing it as it should be added only on targets which has usage for
this trigger.

Signed-off-by: Thomas Albers <>
[commit description facelift]
Signed-off-by: Petr Štetiar <>
2 months agobuild, imagebuilder: Do not require libncurses-dev
Paul Spooren [Tue, 14 Apr 2020 21:14:47 +0000 (11:14 -1000)]
build, imagebuilder: Do not require libncurses-dev

The buildroot and SDK both require `libncurses-dev` to be installed on
the system, however the ImageBuilder uses precompiled binaries.

This patch changes the prerequirements checks to skip the
`libncurses-dev` part if running as ImageBuilder.

Signed-off-by: Paul Spooren <>