openwrt/staging/xback.git
5 years agoath79: add support for Netgear EX6400 and EX7300
Daniel Gimpelevich [Fri, 14 Sep 2018 04:08:51 +0000 (21:08 -0700)]
ath79: add support for Netgear EX6400 and EX7300

This is sold as a dual-band 802.11ac range extender. It has a sliding
switch for Extender mode or Access Point mode, a WPS button, a recessed
Reset button, a hard-power button, and a multitude of LED's, some
multiplexed via an NXP 74AHC164D chip. The internal serial header pinout is
Vcc, Tx, Rx, GND, with GND closest to the corner of the board. You may
connect at 115200 bps, 8 data bits, no parity, 1 stop bit.

Specification:
- System-On-Chip: QCA9558
- CPU/Speed: 720 MHz
- Flash-Chip: Winbond 25Q128FVSG
- Flash size: 16 MiB
- RAM: 128 MiB
- Wireless No1: QCA9558 on-chip 2.4GHz 802.11bgn, 3x3
- Wireless No2: QCA99x0 chip 5GHz 802.11an+ac, 4x4
- PHY: Atheros AR8035-A

Installation:
If you can get to the stock firmware's firmware upgrade option, just feed
it the factory.img and boot as usual. As an alternative, TFTP the
factory.img to the bootloader.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[whitespace fix in DTS and reorder of make variables]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: remove more duplicate image build variables
Daniel Gimpelevich [Wed, 2 Jan 2019 22:19:04 +0000 (14:19 -0800)]
ath79: remove more duplicate image build variables

Remove Netgear-specific image build variables which are set to the same
value.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[reordering of variables, removed stray newline]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agosunxi: Remove already applied patch
Hauke Mehrtens [Mon, 8 Apr 2019 18:18:37 +0000 (20:18 +0200)]
sunxi: Remove already applied patch

This patch is already included in kernel v4.19.31.

Fixes: 8df12d76c642 ("kernel: bump 4.19 to 4.19.34")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
5 years agoscripts/qemustart: Allow specifying custom rootfs for malta
Petr Štetiar [Thu, 28 Mar 2019 21:13:26 +0000 (21:13 +0000)]
scripts/qemustart: Allow specifying custom rootfs for malta

Currently it's not possible to test boot squashfs root images, so this
patch now allows this use case as well.

Cc: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoscripts/qemustart: Allow specifying custom kernel for x86
Petr Štetiar [Thu, 28 Mar 2019 20:51:34 +0000 (20:51 +0000)]
scripts/qemustart: Allow specifying custom kernel for x86

Currently it's not possible to test boot squashfs root images, so this
patch now allows this use case as well.

Cc: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoscripts/qemustart: Allow usage without networking
Petr Štetiar [Thu, 28 Mar 2019 16:44:17 +0000 (16:44 +0000)]
scripts/qemustart: Allow usage without networking

For basic tests it's not necessary to have the networking setup and this
allows testing as a normal user as well, without root privileges.

So this patch adds `--no-network` long option or `-n` short option,
which allows starting QEMU without network.

Cc: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: Correct MAC address for WAN interface of Archer C7 v5
Adrian Schmutzler [Wed, 3 Apr 2019 17:05:19 +0000 (19:05 +0200)]
ar71xx: Correct MAC address for WAN interface of Archer C7 v5

This device shares the network config with v4, thus the WAN MAC
also needs to be fixed the same way. However, the partition
where the MAC address resides has been changed.

Based on: https://github.com/openwrt/openwrt/pull/1726

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoar71xx: Add "info" partition for TP-Link Archer C7 v5
Adrian Schmutzler [Thu, 4 Apr 2019 12:16:19 +0000 (14:16 +0200)]
ar71xx: Add "info" partition for TP-Link Archer C7 v5

This adds the "info" MTD partition, as it is specified in the
ath79 DTS:
https://github.com/openwrt/openwrt/blob/master/target/linux/ath79/dts/qca9563_tplink_archer-c7-v5.dts#L35

This is required to set the WAN MAC address, as it is build based
on the LAN MAC address, which in turn has to be read from the
"info" partition:
https://github.com/openwrt/openwrt/blob/master/target/linux/ath79/dts/qca9563_tplink_archer-c7-v5.dts#L35

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: Add WPS button to TP-Link Archer C7v5
Petr Štetiar [Mon, 8 Apr 2019 16:30:11 +0000 (18:30 +0200)]
ath79: Add WPS button to TP-Link Archer C7v5

This patch adds currently missing support for the WPS button on TP-Link
Archer C7v5.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: Correct MAC address for WAN interface of Archer A7/C7 v5
Adrian Schmutzler [Wed, 3 Apr 2019 17:07:52 +0000 (19:07 +0200)]
ath79: Correct MAC address for WAN interface of Archer A7/C7 v5

These devices share the network config with C7v4, thus the WAN MAC
also needs to be fixed the same way. However, the partition
where the MAC address resides has been changed.

Based on: https://github.com/openwrt/openwrt/pull/1726

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: Fix GPIO reset button on TP-Link Archer C7v5
Adrian Schmutzler [Thu, 4 Apr 2019 08:50:17 +0000 (10:50 +0200)]
ath79: Fix GPIO reset button on TP-Link Archer C7v5

The GPIO for the reset button for the Archer C7v5 changed from
ar71xx to ath79. An investigation based on tests revealed
that the A7v5 responds on "11", while the C7v5 responds on
"5" as set for ar71xx.

Thus, we just define this in the DTS files instead of in the
common DTSI.

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: Utilize new LED modes from diag.sh for Archer A7/C7 v5
Adrian Schmutzler [Tue, 2 Apr 2019 15:02:43 +0000 (17:02 +0200)]
ath79: Utilize new LED modes from diag.sh for Archer A7/C7 v5

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: Consolidate LEDs in Archer A7/C7 v5 DTSI
Adrian Schmutzler [Tue, 2 Apr 2019 15:01:13 +0000 (17:01 +0200)]
ath79: Consolidate LEDs in Archer A7/C7 v5 DTSI

Definition is split here without obvious reason. Just merge it
(and align order to that from C7 v4).

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoath79: add support for Ubiquiti airCube ISP
Christian Mauderer [Fri, 15 Mar 2019 20:02:54 +0000 (21:02 +0100)]
ath79: add support for Ubiquiti airCube ISP

The Ubiquiti Network airCube ISP is a cube shaped 2.4 GHz with internal
2x2 MIMO antennas. It can be supplied via a USB connector or via PoE.
There are for 10/100 Mbps ports (1 * WAN + 3 * LAN). There is an
optional PoE passthrough from the first LAN port to the WAN port.

SoC:       Qualcomm / Atheros QCA9533-BL3A
RAM:       64 MB DDR2
Flash:     16 MB SPI NOR
Ethernet:  4x 10/100 Mbps (1 WAN + 3 LAN)
LEDS:      1x via a SPI controller (not yet supported)
Buttons:   1x Reset
Serial:    1x (only RX and TX); 115200 baud, 8N1

Missing points:
- LED not yet supported
- Factory upgrade via web IF or TFTP recovery not yet supported
  (Needs RSA signed images, for details see PR#1958)

The serial port is on a four pin connextor labeled J1 and located
between Ethernet and USB connector. The pinout is:
1. 3V3 (out)
2. Rx (in)
3. Tx (out)
4. GND

Upgrading via serial port / U-Boot:
- Connect the serial port via a level converter
- Power the system and stop U-Boot with pressing any key when `Hit any
  key to stop autoboot` is displayed. Note: Pressing space multiple
  times untill U-Boot reaches that location works well.
- Connect a PC with the IP 192.168.1.100 (or some other in that net)
  running a TFTP-Server to one of the LAN ports. Copy the sysupgrade
  image to the server.
- Set the U-Boot server IP with
    setenv serverip 192.168.1.100
- Load the flash image to RAM with
    tftpboot 0x81000000 sysupgrade.bin
- Erase the flash with
    erase 0x9f050000 0x9ffaffff
- Write the new flash content with
    cp 0x81000000 0x9f050000 ${filesize}
- Reset the device with
    reset

Signed-off-by: Christian Mauderer <oss@c-mauderer.de>
[removed full stop in subject and added lockdown note to commit message]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: add support for OCEDO Ursus
Markus Scheck [Thu, 21 Mar 2019 15:43:27 +0000 (16:43 +0100)]
ath79: add support for OCEDO Ursus

SOC:   Qualcomm Atheros QCA9558
RAM:   128MB
FLASH: 16MB (Macronix MX25L12845EMI-10G)
WLAN1: QCA9558 2.4GHz 802.11bgn 3SS
WLAN2: QCA9880 5GHz 802.11ac 3SS
LED:   Power, LAN1, LAN2, 2.4GHz, 5GHz
Serial:Next to SPI Flash,
       Pinout is 3V3 - GND - TX - RX (Square Pin is 3V3)
       The Serial setting is 115200-8-N-1

INSTALLATION:

1. Serve an OpenWrt ramdisk image named "ursus.bin".
   Set your IP-address to 192.168.100.8/24.
2. Connect to the serial. Power up the device and interrupt
   the boot process.
3. Set the correct bootcmd with
   > setenv bootcmd run bootcmd_1
   > saveenv
4. Run
   > tftpboot 0x81000000 ursus.bin
   > bootm 0x81000000
5. Wait for OpenWrt to boot up.
6. Transfer OpenWrt sysupdate image and flash via sysupgrade.

Signed-off-by: Markus Scheck <markus.scheck1@gmail.com>
Tested-by: David Bauer <mail@david-bauer.net>
[whitespace fix, renamed LED labels and SoC type fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: ag71xx: Enable tx hang workaround for the rest of ar724x SoCs
Petr Štetiar [Fri, 4 Jan 2019 14:57:07 +0000 (15:57 +0100)]
ath79: ag71xx: Enable tx hang workaround for the rest of ar724x SoCs

In ar71xx we check for stuck DMA on devices which fall in the is_ar724x
SoC group (ar724x, ar933x, ar934x, qca9533, tp9343, qca955x, qca956x).

In ath79 we're currently performing this check only for devices with
ar7240 SoC, so this patch tries to sync the dma stuck checking behavior
with what is being done in ar71xx.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: ag71xx: Fix broken networking on some devices (FS#2177)
Petr Štetiar [Wed, 3 Apr 2019 08:05:26 +0000 (10:05 +0200)]
ar71xx: ag71xx: Fix broken networking on some devices (FS#2177)

It was reported, that latest ar71xx builds have broken networking on
TP-Link TL-WPA8630 and Nanostation M5 XW devices and that by reverting
the offending commit, everything is back to normal.

Fixes: d3506d1 ("ar71xx: ag71xx: fix compile error when enabling debug")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: Add support for Ubiquity Bullet M (XW)
Petr Štetiar [Sat, 17 Nov 2018 07:01:55 +0000 (08:01 +0100)]
ar71xx: Add support for Ubiquity Bullet M (XW)

CPU: AR9342 SoC
RAM:     64 MB DDR2
Flash:    8 MB NOR SPI
Ports:  100 MBit (24V PoE in)
WLAN: 2.4/5 GHz
UART:     1 UART on PCB marked as J1 with 115200 8N1 config
LEDs:       Power, Ethernet, 4x RSSI LEDs (orange, red, 2x green)
Buttons:    Reset

UART connection details

  .---------------------------------.
  |                                 |
[ETH]          J1                 [ANT]
  |    o VCC o RX o TX o GND        |
  `---------------------------------'

Flashing instructions using recovery method over TFTP

 1. Unplug the ethernet cable from the router.
 2. Using paper clip press and hold the router's reset button. Make sure
    you can feel it depressed by the paper clip. Do not release the button
    until step 4.
 3. While keeping the reset button pressed in, plug the ethernet cable
    back into the AP. Keep the reset button depressed until you see the
    device's LEDs flashing in upgrade mode (alternating LED1/LED3 and
    LED2/LED4), this may take up to 25 seconds.
 4. You may release the reset button, now the device should be in TFTP
    transfer mode.
 5. Set a static IP on your Computer's NIC. A static IP of 192.168.1.25/24
    should work.
 6. Plug the PoE injector's LAN cable directly to your computer.
 7. Start tftp client and issue following commands:
     tftp> binary
     tftp> connect 192.168.1.20
     tftp> put openwrt-ar71xx-generic-ubnt-bullet-m-xw-squashfs-factory.bin

Tested only on Bullet M2HP.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: ubnt-m-xw: Fix factory image flashing using TFTP recovery
Petr Štetiar [Mon, 19 Nov 2018 20:44:50 +0000 (21:44 +0100)]
ar71xx: ubnt-m-xw: Fix factory image flashing using TFTP recovery

This is backport of the same functionality in ath79, from commit
 d42a7c469 ("ath79: ubnt-m-xw: Fix factory image flashing using TFTP
             recovery method")

Ubiquity allows flashing of unsigned factory images via TFTP recovery
method[1]. They claim in airOS v6.0.7 release changelog[2] following:

 All future airOS versions will be signed in this way and not allow
 unsigned firmware to be loaded except via TFTP.

U-boot bootloader on M-XW devices expects factory image revision
version in specific format. On airOS v6.1.7 with `U-Boot 1.1.4-s1039
(May 24 2017 - 15:58:18)` bootloader checks if the revision major(?)
number is actually a number, but in currently generated images there's
OpenWrt text and so the check fails:

 Hit any key to stop autoboot:  0
 Setting default IP 192.168.1.20
 Starting TFTP server...
 Receiving file from 192.168.1.25:38438
 Received 4981148 bytes
 Firmware check failed! (1)

By placing arbitrary correct number first in major version, we make the
bootloader happy and we can flash factory images over TFTP again:

 Received 3801500 bytes
 Firmware Version: XW.ar934x.v6.0.4-42.OpenWrt-r9766+2-be42e44
 Setting U-Boot environment variables
 Un-Protected 1 sectors
 Erasing Flash.... done

Patch provided by AREDN[3] project, tested on Bullet M2 XW.

1. https://help.ubnt.com/hc/en-us/articles/204910124-UniFi-TFTP-Recovery-for-Bricked-Access-Points
2. https://dl.ubnt.com/firmwares/XW-fw/v6.0.7/changelog.txt
3. https://github.com/aredn

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoimx6: Add support for Toradex Apalis family of CoMs
Petr Štetiar [Fri, 23 Nov 2018 09:33:24 +0000 (10:33 +0100)]
imx6: Add support for Toradex Apalis family of CoMs

This patch adds support for the following computer on modules (CoM) from
Toradex[A]:

 Apalis iMX6 Quad 2GB IT - i.MX 6Quad 800MHz, 2GB DDR3, 4GB eMMC
                                             -40° to +85° C Temp
 Apalis iMX6 Quad 1GB    - i.MX 6Quad 1GHz,   1GB DDR3, 4GB eMMC
                                               0° to +70° C Temp
 Apalis iMX6 Dual 1GB IT - i.MX 6Dual 800MHz, 1GB DDR3, 4GB eMMC
                                             -40° to +85° C Temp
 Apalis iMX6 Dual 512MB  - i.MX 6Dual 1GHz, 512MB DDR3, 4GB eMMC
                                               0° to +70° C Temp

I've developed and tested it on Quad 2GB IT v1.1A and Dual 512MB v1.1A
CoMs, using Ixora[B] carrier board v1.0A, but it should hopefuly work on
Eval[C] board as well.

A. https://www.toradex.com/computer-on-modules/apalis-arm-family/nxp-freescale-imx-6
B. https://www.toradex.com/products/carrier-board/ixora-carrier-board
C. https://www.toradex.com/products/carrier-board/apalis-evaluation-board

Flashing/recovery instructions:

 1. Download and compile imx_loader for OpenWrt from
    https://github.com/ynezz/imx_loader

 2. Enter recovery mode as desribed in
    https://developer.toradex.com/knowledge-base/imx-recovery-mode

 3. Connect board via USB to the host computer, check that it's connected
    by lsusb:

    15a2:0054 Freescale Semiconductor, Inc. i.MX 6Dual/6Quad SystemOnChip
              in RecoveryMode

 4. Copy following OpenWrt images to imx_loader directory:
         SPL
         u-boot.img
         u-boot-with-spl.imx
         openwrt-imx6-apalis-recovery.scr
         openwrt-imx6-apalis-squashfs.combined.bin

 5. Run imx_usb in imx_loader directory

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoimx6: image: Split imx6-sdcard image for reusability
Petr Štetiar [Fri, 23 Nov 2018 08:25:13 +0000 (09:25 +0100)]
imx6: image: Split imx6-sdcard image for reusability

I'm going to reuse the imx6-sdcard image commands for building of Apalis
eMMC images.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agouboot-envtools: imx6: Add support for Toradex Apalis board family
Petr Štetiar [Tue, 27 Nov 2018 20:22:41 +0000 (21:22 +0100)]
uboot-envtools: imx6: Add support for Toradex Apalis board family

This patch is needed in order to be able to use fw_{set,print}env
commands.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agouboot-imx6: Add support for Toradex Apalis board family
Petr Štetiar [Mon, 26 Nov 2018 22:31:53 +0000 (23:31 +0100)]
uboot-imx6: Add support for Toradex Apalis board family

This patch is needed in order to properly boot OpenWrt bootscript.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoglibc: update to latest 2.27 commit [BZ #22964]
Hans Dedecker [Mon, 8 Apr 2019 07:53:25 +0000 (09:53 +0200)]
glibc: update to latest 2.27 commit [BZ #22964]

de9d4aa353 ja_JP locale: Add entry for the new Japanese era [BZ #22964]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agokernel: bump 4.19 to 4.19.34
Koen Vandeputte [Mon, 8 Apr 2019 12:15:26 +0000 (14:15 +0200)]
kernel: bump 4.19 to 4.19.34

Refreshed all patches.

Removed:
- 030-PCI-dwc-skip-MSI-init-if-MSIs-have-been-explicitly-d.patch

Altered:
- 366-netfilter-nf_flow_table-clean-up-and-fix-dst-handlin.patch
- 650-netfilter-add-xt_OFFLOAD-target.patch
- 662-remove_pfifo_fast.patch
- 332-arc-add-OWRTDTB-section.patch
- 100-clocksource-drivers-arch_timer-Workaround-for-Allwin.patch
- 702-phy_add_aneg_done_function.patch

New symbols:
- ARC_IRQ_NO_AUTOSAVE
- SUN50I_ERRATUM_UNKNOWN1

Compile-tested: cns3xxx, imx6, sunxi
Runtime-tested: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.111
Koen Vandeputte [Mon, 8 Apr 2019 11:39:00 +0000 (13:39 +0200)]
kernel: bump 4.14 to 4.14.111

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.168
Koen Vandeputte [Mon, 8 Apr 2019 11:37:02 +0000 (13:37 +0200)]
kernel: bump 4.9 to 4.9.168

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.14 to 4.14.110
Koen Vandeputte [Fri, 5 Apr 2019 08:58:45 +0000 (10:58 +0200)]
kernel: bump 4.14 to 4.14.110

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agokernel: bump 4.9 to 4.9.167
Koen Vandeputte [Fri, 5 Apr 2019 08:55:56 +0000 (10:55 +0200)]
kernel: bump 4.9 to 4.9.167

Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
5 years agodropbear: bump to 2019.78
Hans Dedecker [Sun, 7 Apr 2019 18:22:19 +0000 (20:22 +0200)]
dropbear: bump to 2019.78

Fix dbclient regression in 2019.77. After exiting the terminal would be left
in a bad state. Reported by Ryan Woodsmall

drop patch applied upstream:
010-tty-modes-werent-reset-for-client.patch

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoubox: bump to git HEAD
Stijn Tintel [Sun, 7 Apr 2019 16:36:30 +0000 (19:36 +0300)]
ubox: bump to git HEAD

5130fa4 kmodloader: fix and optimize loading of failed modules

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
5 years agotools: cbootimage: depend on automake
Tomasz Maciej Nowak [Sun, 7 Apr 2019 13:15:36 +0000 (15:15 +0200)]
tools: cbootimage: depend on automake

Fix missing aclocal reported by buildbot.

Fixes: 8595bb0 ("tools: add cbootimage for tegra")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agofirmware-utils: fix nec-enc build on older architectures
Christian Lamparter [Sat, 6 Apr 2019 18:29:35 +0000 (20:29 +0200)]
firmware-utils: fix nec-enc build on older architectures

This patch enable gnu99 mode for the nec-enc utility which
fixes the following build-breaking errors on some older
architectures.

nec-enc.c: In function ‘xor_data’:
nec-enc.c:34:2: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
  for (int i = 0; i < len; i++) {
  ^~~
nec-enc.c:34:2: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
nec-enc.c: In function ‘main’:
nec-enc.c:101:3: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode
   for (int i = 0; i < n; i++) {
   ^~~

Spotted-By: Buildbot
Fixes: fac27643f057 ("firmware-utils: add nec-enc")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoramips: correct DTS for Belkin F9K1109v1 to include switch definition
Kip Porterfield [Fri, 5 Apr 2019 23:46:33 +0000 (19:46 -0400)]
ramips: correct DTS for Belkin F9K1109v1 to include switch definition

Add switch definition for the rtl8367b switch to the DTS/DTSi for
the Belkin F9K1109v1 that was mistakenly omitted from the initial
commit.

Fixes: 017ec068e3df (ramips: add support for Belkin F9K1109v1)
Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com>
5 years agoath79: add support for NEC Aterm WG1200CR
INAGAKI Hiroshi [Sat, 16 Mar 2019 04:27:32 +0000 (13:27 +0900)]
ath79: add support for NEC Aterm WG1200CR

NEC Aterm WG1200CR is a 2.4/5 GHz band 11ac router,
based on Qualcomm Atheros QCA9563.

Specification:

- SoC : Qualcomm Atheros QCA9563
- RAM : DDR2 128 MiB
- Flash : SPI-NOR 8 MiB
- WLAN : 2.4/5 GHz 2T2R
  - 2.4 GHz : QCA9563 (SoC)
  - 5 GHz : QCA9888
- Ethernet : 2x 10/100/1000 Mbps
  - Switch : QCA8334
- LEDs/Input : 12x/4x (2x buttons, 1x slide-switch)
- UART : through-hole on PCB
  - JP1: Vcc, GND, NC, TX, RX from power connector side
  - 115200 bps

Flash instruction using factory image:

1. Boot WG1200CR normaly
2. Access to "http://192.168.10.1/" and open firmware update page
("ファームウェア更新")
3. Select the OpenWrt factory image and click update ("更新") button
to perform firmware update
4. Wait ~150 seconds to complete flashing

Known issues:

- cannot be controlled LEDs other than Power (Green/Red)
  - only Power LEDs are connected to SoC GPIO; other LEDs
    connected to the gpiochip on ath10k chip (QCA9888)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [commit
message formatting]

5 years agofirmware-utils: add nec-enc
INAGAKI Hiroshi [Sat, 16 Mar 2019 04:19:24 +0000 (13:19 +0900)]
firmware-utils: add nec-enc

nec-enc provides firmware encoding/decoding with model specific key
for NEC devices.

known devices:

  - Aterm WF1200CR
  - Aterm WG1200CR
  - Aterm WG2600HS

usage:

  nec-enc -i infile -o outfile -k key

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[checkpatch fixes, marked usage as noreturn, added static function,
moved buf* from stack to the global data segment]

5 years agoramips: backport mt7621-spi from linux-next-20190329
Chuanhong Guo [Fri, 29 Mar 2019 09:46:36 +0000 (17:46 +0800)]
ramips: backport mt7621-spi from linux-next-20190329

Upstream driver has gone through a series of cleanup and was moved
from drivers/staging into drivers/spi. Backport it to replace our
messy driver.

Tested-by: Jörg Schüler-Maroldt <joerg-linux@arcor.de>
[LinkIt Smart 7688, AcSIP AI7688H Wi-Fi module]
Tested-by: Rosen Penev <rosenp@gmail.com>
Tested-by: Tian Xiao bo <peterwillcn@gmail.com>
[Newifi-D2 MediaTek MT7621 ver:1 eco:3]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years agobuild: remove sgid permission from tar
Eneas U de Queiroz [Thu, 28 Mar 2019 16:58:07 +0000 (16:58 +0000)]
build: remove sgid permission from tar

Otherwise tar will keep the sgid bit when running
from a sgid-set directory, resulting in a different
file being generated.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[reworked commit message, removed DMARC]

5 years agowpan-tools: clean up Makefile
Michael Heimpold [Tue, 26 Mar 2019 21:09:14 +0000 (22:09 +0100)]
wpan-tools: clean up Makefile

When we only call the default, we do not need to define it explicitly.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
5 years agofconfig: cleanup Makefile
Michael Heimpold [Tue, 26 Mar 2019 21:09:24 +0000 (22:09 +0100)]
fconfig: cleanup Makefile

We do not need to define an empty Build/Configure since
the default checks for existing ./configure and does nothing
in case nothing is found.

Similar for Build/Compile: we can remove the definition
when we only call the default.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
5 years agotools/xz: Compile with PIC to fix linking errors
Rosen Penev [Wed, 27 Mar 2019 07:50:16 +0000 (00:50 -0700)]
tools/xz: Compile with PIC to fix linking errors

I made a similar change to this here:
https://github.com/openwrt/packages/pull/8159

However, it turns out this did not fix the problem as the problem has to
do with tools/xz and not the xz package. The error is the same and causes
linking errors as can be seen above.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
5 years agoath79: Utilize tplink-safeloader definition
Adrian Schmutzler [Wed, 27 Mar 2019 18:14:34 +0000 (19:14 +0100)]
ath79: Utilize tplink-safeloader definition

Currently, tplink-safeloader definition is only used a base for
another common definition.

This patch adjusts tplink-safeloader so it can be actually used
for some targets in generic-tp-link.mk.

This patch is cosmetic except for the order of
"check-size $$$$(IMAGE_SIZE)" and "append-metadata" exchanged
for the tplink_re350k-v1 .

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [dealed with
tplink_cpe210-v2 and tplink_cpe210-v3, removed tplink-safeloader-uimage's
extra IMAGE/sysupgrade.bin rule]

5 years agokernel: Add RIPEMD160 module
Rosen Penev [Wed, 27 Mar 2019 20:39:49 +0000 (13:39 -0700)]
kernel: Add RIPEMD160 module

After getting rid of cryptsetup's heavy openssl dependency, there is now
the problem of missing RIPEMD160 support. RIPEMD160 is used for True/Vera
crypt volumes as well as old LUKS1 ones.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
5 years agoramips: enable R6120 USB power
David Bauer [Thu, 28 Mar 2019 19:58:04 +0000 (20:58 +0100)]
ramips: enable R6120 USB power

Enable the USB power for the Netgear R6120. Otherwise, no power is
supplied to an attached USB device.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agotools: tplink-safeloader: add C7v5 KR Support
Michael Gray [Sun, 17 Mar 2019 11:46:59 +0000 (22:46 +1100)]
tools: tplink-safeloader: add C7v5 KR Support

The added entry originates from TP-Links latest Archer C7 v5 KR firmware.

Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
5 years agoath79: engenius epg5000: add leds migration script
Tomasz Maciej Nowak [Thu, 21 Mar 2019 17:03:39 +0000 (18:03 +0100)]
ath79: engenius epg5000: add leds migration script

With transition from ar71xx to ath79 some of devices change their naming
of LEDs. When upgrading from ar71xx target images this will require the
user to adjust previously working configuration. This commit adds
migration script which can be used to rename old names to new ones.
With this previously working configuration will be automatically
adjusted, wihtout user intervention.

This commit adds migration case for EnGenius EPG5000, the wireless LEDs
names have changed from epg5000:blue:wlan2-g and epg5000:blue:wlan-5g to
epg5000:blue:wlan2g and epg5000:blue:wlan5g.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agobase-files: add leds migration
Tomasz Maciej Nowak [Thu, 21 Mar 2019 17:03:38 +0000 (18:03 +0100)]
base-files: add leds migration

Currently leds migration scripts in ar71xx and lantiq share a lot of
logic and introducing leds migration to another target would mean
copying this code, again. Therefore add common logic to library in
base-files package.

Suggested-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agoramips: add support for Youku YK-L2
Zhao Yu [Mon, 11 Mar 2019 16:21:58 +0000 (16:21 +0000)]
ramips: add support for Youku YK-L2

Hardware spec:

CPU: MTK MT7621A
RAM: 256MB
ROM: 16MB SPI Flash
WiFi: MT7603EN + MT7612EN
Button: 2 buttons (reset, wps)
LED: 8 LEDs (Power 2G 5G WPS Internet LAN1 LAN2 USB)
Ethernet: 3 ports, 2 LAN + 1 WAN
Other: USB3.0

Flashing instructions:

Visit the openwrt forum topic for this router:
https://forum.openwrt.org/t/add-openwrt-support-for-youku-yk-l2/34692

to get the bootloader and unlock firmware.

0. upgrade your router with the telnet firmware via the
   firmware upgrade page on the webui.

1. telnet 192.168.11.1 from your PC

2. Download the pb-boot-youku_l2-20190317-61b6d33.bin and transfer
   it to the /tmp directory of the router.

3. mtd write /tmp/pb-boot-youku_l2-20190317-61b6d33.bin Bootloader

4. turn off the power

5. Push the reset button while turning on the router and
   wait until LED start blinking (~10sec.)

6. Connect Ethernet port and goto http://192.168.1.1.

7. Upload the firmware to firmware restore page in webui.

Signed-off-by: Zhao Yu <574249312@qq.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [rewrote the
flashing instructions, fixed author]

5 years agowireguard: bump to 0.0.20190406
Jason A. Donenfeld [Sat, 6 Apr 2019 11:24:09 +0000 (13:24 +0200)]
wireguard: bump to 0.0.20190406

* allowedips: initialize list head when removing intermediate nodes

Fix for an important regression in removing allowed IPs from the last
snapshot. We have new test cases to catch these in the future as well.

* tools: warn if an AllowedIP has a nonzero host part

If you try to run `wg set wg0 peer ... allowed-ips 192.168.1.82/24`, wg(8)
will now print a warning. Even though we mask this automatically down to
192.168.1.0/24, usually when people specify it like this, it's a mistake.

* wg-quick: add 'strip' subcommand

The new strip subcommand prints the config file to stdout after stripping
it of all wg-quick-specific options. This enables tricks such as:
`wg addconf $DEV <(wg-quick strip $DEV)`.

* tools: avoid unneccessary next_peer assignments in sort_peers()

Small C optimization the compiler was probably already doing.

* peerlookup: rename from hashtables
* allowedips: do not use __always_inline
* device: use skb accessor functions where possible

Suggested tweaks from Dave Miller.

* blake2s: simplify
* blake2s: remove outlen parameter from final

The blake2s implementation has been simplified, since we don't use any of the
fancy tree hashing parameters or the like. We also no longer separate the
output length at initialization time from the output length at finalization
time.

* global: the _bh variety of rcu helpers have been unified
* compat: nf_nat_core.h was removed upstream
* compat: backport skb_mark_not_on_list

The usual assortment of compat fixes for Linux 5.1.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
5 years agotarget/octeon: Add Linux 4.19 support
Daniel Engberg [Thu, 7 Feb 2019 23:41:47 +0000 (23:41 +0000)]
target/octeon: Add Linux 4.19 support

This commit adds support for Linux 4.19 kernel, various cleanups
listed below.

Drop 170-cisco-hack.patch as these devices never seems to have been
supported.

Unset kernel symbols:

* CONFIG_CAVIUM_CN63XXP1=y
  No supported hardware uses CN63XXP1 and it causes "slight decrease in
  performance"
  Source: https://cateee.net/lkddb/web-lkddb/CAVIUM_CN63XXP1.html

* CONFIG_USB_OCTEON_EHCI=y
  CONFIG_USB_OCTEON_OHCI=y
  Deprecated
  Source: https://cateee.net/lkddb/web-lkddb/USB_OCTEON_EHCI.html
  https://cateee.net/lkddb/web-lkddb/USB_OCTEON_OHCI.html

Removed kernel symbols:

* # CONFIG_ARCH_HIBERNATION_POSSIBLE=y
* CONFIG_ARCH_SUSPEND_POSSIBLE=y
  These are not in if you do a vanilla config of a MIPS Octeon kernel
  and I can't find any references about support on this platform.

* # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
* CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
  No need to have this in by default, not defined in most other targets

* CONFIG_CRASH_CORE=y
  Can't find any documentation why this should be enabled by default

* CONFIG_DEBUG_INFO=y
  Set by https://github.com/openwrt/openwrt/blob/master/config/Config-kernel.in#L134

* CONFIG_DEBUG_SPINLOCK=y
  No need to have this in by default

* CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
  Already set by default
  Source: https://cateee.net/lkddb/web-lkddb/DEFAULT_HUNG_TASK_TIMEOUT.html

* CONFIG_DETECT_HUNG_TASK=y
  No need to have this in by default, not defined in most other targets

* CONFIG_HAVE_DEBUG_KMEMLEAK=y
  No need to have this in by default, not defined in most other targets

* CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
  No need to have this in by default

* CONFIG_HAVE_IDE=y
  None of the supported devices have IDE

* CONFIG_HZ=250
* # CONFIG_HZ_100 is not set
* CONFIG_HZ_250=y
  This is broken with generic config

* CONFIG_KALLSYMS=y
  No need to have this in by default, not defined in most other targets

* CONFIG_KEXEC=y
* CONFIG_KEXEC_CORE=y
  No need to have this in by default, not defined in most other targets

* CONFIG_HAVE_KVM=y
  No need to have this in by default

* CONFIG_SCHED_DEBUG=y
  No need to have this in by default, not defined in most other targets

* CONFIG_SYSFS_DEPRECATED=y
  Deprecated symbol
  Source: https://cateee.net/lkddb/web-lkddb/SYSFS_DEPRECATED.html

* CONFIG_SYSFS_DEPRECATED_V2=y
  Discouraged usage in general
  Source: https://cateee.net/lkddb/web-lkddb/SYSFS_DEPRECATED_V2.html

* CONFIG_UNINLINE_SPIN_UNLOCK=y
  No need to have this in by default, not defined in most other targets
  Source: https://github.com/openSUSE/kernel/blob/master/lib/Kconfig.debug#L1137

* CONFIG_ZLIB_INFLATE=y
  No need to have this in by default, not defined in most other targets

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agomvebu: sysupgrade: sdcard: keep user added partitons
Tomasz Maciej Nowak [Thu, 28 Mar 2019 17:07:09 +0000 (18:07 +0100)]
mvebu: sysupgrade: sdcard: keep user added partitons

Currently sysupgrade overwrites whole disk and destroys partitions added
by user. Sync the sysupgrade code with the one present in x86 target to
remedy this behaviour.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agomvebu: base-files: autodetect upgrade device
Tomasz Maciej Nowak [Thu, 28 Mar 2019 17:07:08 +0000 (18:07 +0100)]
mvebu: base-files: autodetect upgrade device

Since some boards could be also booted from other mediums than SD card,
lets make the upgrade block device autodetected.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agomvebu: shrink amount of packages and reorganize them
Tomasz Maciej Nowak [Thu, 28 Mar 2019 17:07:07 +0000 (18:07 +0100)]
mvebu: shrink amount of packages and reorganize them

Since most of devices using SD card image to boot, use ext4 as boot
files system we can drop fat fs related packages. Also move packages
which are added repeatedly across subtargets to their default packages,
with droping the ones that are enabled in target kernel configugation.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agomvebu: use ext4 for clearfog image bootfs
Tomasz Maciej Nowak [Thu, 28 Mar 2019 17:07:06 +0000 (18:07 +0100)]
mvebu: use ext4 for clearfog image bootfs

This will allow to drop additional packages and shrink image size.

Cc: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agomvebu: make bootfs size for sdcard image configurable
Tomasz Maciej Nowak [Thu, 28 Mar 2019 17:07:05 +0000 (18:07 +0100)]
mvebu: make bootfs size for sdcard image configurable

Let's take this oportunity to implement boot-part and rootfs-part feature
flags.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agozynq: replace storage related configs by packages
Luis Araneda [Mon, 1 Apr 2019 03:33:08 +0000 (00:33 -0300)]
zynq: replace storage related configs by packages

Select build-in packages by default and remove the
associated kernel configs

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agozynq: replace CAN kconfig options by device packages
Luis Araneda [Mon, 1 Apr 2019 03:33:07 +0000 (00:33 -0300)]
zynq: replace CAN kconfig options by device packages

The options are managed on a generic way by the can
kmod packages

Additionally, select can packages only for devices that
currently has CAN enabled, which is only the ZC702

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agokernel: can: add Xilinx CAN IP kernel module package
Luis Araneda [Mon, 1 Apr 2019 03:33:06 +0000 (00:33 -0300)]
kernel: can: add Xilinx CAN IP kernel module package

This driver is required to use the CAN IP on devices
from the zynq target

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agozynq: kernel: remove video/camera kconfig options
Luis Araneda [Mon, 1 Apr 2019 03:33:05 +0000 (00:33 -0300)]
zynq: kernel: remove video/camera kconfig options

The options are managed on a generic way by video packages

Additionally, only one of the currently supported boards
has a camera interface, but it requires programming
the FPGA fabric first

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agozynq: kernel: remove sound kconfig options
Luis Araneda [Mon, 1 Apr 2019 03:33:04 +0000 (00:33 -0300)]
zynq: kernel: remove sound kconfig options

The options are managed on a generic way by the sound
kmod packages

Additionally, none of the currently supported boards have
sound support out of the box, as they require programming
the FPGA fabric first

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agokernel: sound: add missing symbol to sound-soc-core
Luis Araneda [Mon, 1 Apr 2019 03:33:03 +0000 (00:33 -0300)]
kernel: sound: add missing symbol to sound-soc-core

This fixes compilation on zynq target when migrating
to sound kmod packages

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agozynq: kernel: refresh config
Luis Araneda [Mon, 1 Apr 2019 03:33:02 +0000 (00:33 -0300)]
zynq: kernel: refresh config

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
5 years agomac80211: update to version 4.19.32-1
Hauke Mehrtens [Thu, 28 Mar 2019 15:00:43 +0000 (16:00 +0100)]
mac80211: update to version 4.19.32-1

The removed patches are now integrated in the upstream kernel.
Refresh all patches on top of the new backports release.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agombedtls: update to version 2.16.1
Josef Schlehofer [Fri, 29 Mar 2019 23:51:58 +0000 (00:51 +0100)]
mbedtls: update to version 2.16.1

Refreshed patches

Signed-off-by: Josef Schlehofer <josef.schlehofer@nic.cz>
Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agotegra: add kernel 4.19 support
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:44 +0000 (19:25 +0200)]
tegra: add kernel 4.19 support

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agotegra: add support for CompuLab TrimSlice
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:43 +0000 (19:25 +0200)]
tegra: add support for CompuLab TrimSlice

It is a small form factor computer with rich amount of expansion ports.
Some hardware specs and supported features in this commit:

CPU: NVIDIA Tegra 2 @ 1GHz
RAM: 1GB DDR2-667
Storage: SDHC card slot
         µSDHC card slot
         USB to SATA bridge (depends on model)
         1MB SPI NOR flash for bootloader (single partition)
LAN: RTL8111DL GbE
WIFI: RT3070 b/g/n with external antenna (depends on model)
RTC: EM3027 (mapped as rtc0; with battery backup)
     Tegra 2 built-in (mapped as rtc1)
Sound: Analog/Digital (TLV320AIC23b; S/PDIF not tested)
Connectors: 4x USB 2.0
            RS232 (mini serial)
            HDMI
            DVI-D (depends on model, not supported atm)
            Extension connector (24 pin ZIF, 0.5mm pitch):
            2X UART
            SPI
            JTAG (1.8V)
Other: power button with green led (not functional for early revisions
       without programmed PMIC)
       2x GPIO configurable green led

TrimSlice uses U-Boot placed in NOR flash. Boots Linux from any media
connected to USB, SATA or SD card inserted in slot. Can also boot from
TFTP. To run OpenWrt one needs to update U-Boot to fairly recent version
(the versions, pre-dts/dts provided by CompuLab won't suffice):

 1. Boot TrimSlice into Your current linux distro,
 2. Download trimslice-spi.img from u-boot-trimslice subdir,
 3. Install mtd-utils,
 4. Run following commands:
     flash_erase /dev/mtd0 0 256
     nandwrite /dev/mtd0 trimslice-spi.img
 5. Poweroff, insert SD card with OpenWrt, boot and enjoy.

If by some obstacle You can't follow those instructions, it is possible
to flash U-Boot using serial console.

 1. Insert FAT or EXT2/EXT3 formatted SD card with trimslice-spi.img,
 2. Interrupt boot process to enter U-Boot command line,
 3. Run following commands:
     ${fs}load mmc 0 0x04080000 trimslice-spi.img
     sf probe 0
     sf erase 0 0x100000
     sf write 0x04080000 0x0 ${filesize}
     reset
 4. Poweroff, insert SD card with OpenWrt, boot and enjoy.

If something went wrong with one of above steps, there is simple
recovery option:

 1. Open the µSD slot security door to access the recovery-boot button,
 2. Insert SD card with OpenWrt to the front slot while unpowered,
 3. Power on the TrimSlice while pressing the recovery-boot button,
 4. With this it should boot straigth to OpenWrt, from there download
    trimslice-spi.img and execute following commands:
     mtd erase /dev/mtd0
     mtd write trimslice-spi.img /dev/mtd0
 5. Reboot, now it should boot straigth to OpenWrt, without pressing the
    recovery-boot button, with proper U-Boot flashed.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agokernel: package rtc-em3027 module
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:42 +0000 (19:25 +0200)]
kernel: package rtc-em3027 module

Support for Microelectronic EM3027 real time clock chip.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agouboot-tegra: add U-Boot for tegra boards
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:41 +0000 (19:25 +0200)]
uboot-tegra: add U-Boot for tegra boards

Add U-Boot for NVIDIA Tegra based boards, with the first being CompuLab
TrimSlice. This is part of initial support for this board.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agotools: add cbootimage-configs for tegra
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:40 +0000 (19:25 +0200)]
tools: add cbootimage-configs for tegra

This provides board configuraion tables for various Tegra boards needed
by cbootimage tool to create flashable bootloader images.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agotools: add cbootimage for tegra
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:39 +0000 (19:25 +0200)]
tools: add cbootimage for tegra

Tegra BCT and bootable flash image generator/compiler

>From documentation:
This project provides a tool which compiles BCT (Boot Configuration
Table) images to place into the boot flash of a Tegra-based device.

The tool will either:

a) Compile a textual representation of a BCT into a binary image.

b) Generate an entire boot image from a previously compiled BCT and a
   bootloader binary.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agotegra: add new target
Tomasz Maciej Nowak [Mon, 1 Apr 2019 17:25:38 +0000 (19:25 +0200)]
tegra: add new target

New target introduces initial support for NVIDIA Tegra SoC based devices.
It focuses on Tegra 2 CPUs, for successors supporting NEON instruction
set the target should be split in two subtargets.
This initial commit doesn't create any device image, it's groundwork
for further additions.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agocurl: Update to 7.64.1
Daniel Engberg [Fri, 5 Apr 2019 17:43:59 +0000 (17:43 +0000)]
curl: Update to 7.64.1

Update curl to 7.64.1
Remove deprecated patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Fri, 5 Apr 2019 09:57:54 +0000 (11:57 +0200)]
odhcpd: update to latest git HEAD

65a9519 ndp: create ICMPv6 socket per interface
c6dae8e router: create ICMPv6 socket per interface
e7b1d4b treewide: initialize properly file descriptors

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agobase-files/hotplug: fix dedicated group for tty devices
Michael Heimpold [Tue, 2 Apr 2019 19:48:11 +0000 (21:48 +0200)]
base-files/hotplug: fix dedicated group for tty devices

Commit 124ab1dc0a and 5523ee3459 introduced the assignment of the
group "tty" to /dev/tty* devices in order to support unprivileged
user access to serial devices.

However, due to an improperly rebased commit this feature broke.

This patch restores the lost hunk in hotplug.json file to
re-introduce this feature and also renames the existing "tty" group
to "dialout" as this is the more typical name for such a group
on desktop systems.

Fixes: 5209cfa534 ("procd: fix hotplug.json syntax")
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Acked-by: Jo-Philipp Wich <jo@mein.io>
5 years agokernel: b53: add support for kernels 5.0+
Rafał Miłecki [Thu, 4 Apr 2019 09:31:28 +0000 (11:31 +0200)]
kernel: b53: add support for kernels 5.0+

It adjusts b53 code to upstream changes from the commit 3c1bcc8614db
("net: ethernet: Convert phydev advertize and supported from u32 to link
mode").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agokernel: backport upstream ubifs default compression selection fix
Rafał Miłecki [Thu, 4 Apr 2019 09:18:27 +0000 (11:18 +0200)]
kernel: backport upstream ubifs default compression selection fix

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agokernel: fix rtcache compilation with 4.18+ with IPv6 support
Rafał Miłecki [Thu, 4 Apr 2019 07:31:41 +0000 (09:31 +0200)]
kernel: fix rtcache compilation with 4.18+ with IPv6 support

Please note that modified code isn't currently being compiled with
kernels 4.19+ due to the dropped CONFIG_NF_CONNTRACK_IPV6 in upstream
Linux. That requires a separated fix.

This fixes:
net/netfilter/nf_conntrack_rtcache.c: In function 'nf_rtcache_get_cookie':
net/netfilter/nf_conntrack_rtcache.c:82:11: error: 'const struct rt6_info' has no member named 'rt6i_node'; did you mean 'rt6i_idev'?
   if (rt->rt6i_node)
           ^~~~~~~~~
           rt6i_idev

IPv6 structs were reworked in upstream kernel by:
commit a64efe142f5e ("net/ipv6: introduce fib6_info struct and helpers")
commit 77634cc67dc1 ("net/ipv6: Remove unused code and variables for rt6_info")
commit 93c2fb253d17 ("net/ipv6: Rename fib6_info struct elements")

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agomac80211: set noscan=1 if sta/adhoc/mesh interfaces are present
Felix Fietkau [Sat, 30 Mar 2019 09:09:32 +0000 (10:09 +0100)]
mac80211: set noscan=1 if sta/adhoc/mesh interfaces are present

Fixes channel selection issues and suppresses an unnecessary extra scan

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomac80211: improve performance by deferring tx queue selection
Felix Fietkau [Sat, 23 Mar 2019 08:59:35 +0000 (09:59 +0100)]
mac80211: improve performance by deferring tx queue selection

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agoramips: implement vlan rx offload on MT7621
Felix Fietkau [Sat, 23 Mar 2019 13:29:00 +0000 (14:29 +0100)]
ramips: implement vlan rx offload on MT7621

Avoids the overhead of software VLAN untagging in the network stack

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agoopenvpn: openssl: explicitly depend on deprecated APIs
Magnus Kroken [Tue, 2 Apr 2019 20:18:44 +0000 (22:18 +0200)]
openvpn: openssl: explicitly depend on deprecated APIs

OpenVPN as of 2.4.7 uses some OpenSSL APIs that are deprecated in
OpenSSL >= 1.1.0.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [white space fix]
5 years agoath79: Add support for TP-Link CPE210 v2
Adrian Schmutzler [Mon, 25 Mar 2019 17:46:26 +0000 (18:46 +0100)]
ath79: Add support for TP-Link CPE210 v2

This PR adds support for a popular low-cost 2.4GHz N based AP

Specifications:
 - SoC: Qualcomm Atheros QCA9533 (650MHz)
 - RAM: 64MB
 - Storage: 8 MB SPI NOR
 - Wireless: 2.4GHz N based built into SoC 2x2
 - Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on
for around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP adress:192.168.0.254

This is based on the support patch for the identical CPE210 v3
by Mario Schroen <m.schroen@web.de>.

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[renamed dtsi filename]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: Add support for TP-Link CPE210 v3
Mario Schroen [Sun, 31 Mar 2019 19:07:03 +0000 (21:07 +0200)]
ath79: Add support for TP-Link CPE210 v3

Specifications:

    * SoC: Qualcomm Atheros QCA9533 (650MHz)
    * RAM: 64MB
    * Storage: 8 MB SPI NOR
    * Wireless: 2.4GHz N based built into SoC 2x2
    * Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:
    Flash factory image through stock firmware WEB UI or TFTP
    To get to TFTP recovery just hold reset button while powering
    on for around 4-5 seconds and release.
    Rename factory image to recovery.bin
    Stock TFTP server IP:192.168.0.100
    Stock device TFTP adress:192.168.0.254

Thanks to robimarko for the work inside the ar71xx tree.
Thanks to adrianschmutzler for deep discussion and fixes.

Signed-off-by: Mario Schroen <m.schroen@web.de>
[Split into DTS/DTSI, read-only config partition in DTSI]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[renamed dtsi filename, light subject touches]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: Add support for TP-Link CPE210 v3
Robert Marko [Sat, 11 Aug 2018 15:32:48 +0000 (17:32 +0200)]
ar71xx: Add support for TP-Link CPE210 v3

Looks identical to the v2.

This PR adds support for a popular low-cost 2.4GHz N based AP

Specifications:
 - SoC: Qualcomm Atheros QCA9533 (650MHz)
 - RAM: 64MB
 - Storage: 8 MB SPI NOR
 - Wireless: 2.4GHz N based built into SoC 2x2
 - Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP adress:192.168.0.254

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Robert Marko <robimarko@gmail.com>
[Rebased, adjusted for separate tplink-safeloader entry, dynamic partitioning]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agoar71xx: Use dynamic partitions for TP-Link CPE210 v2
Adrian Schmutzler [Tue, 26 Mar 2019 10:41:57 +0000 (11:41 +0100)]
ar71xx: Use dynamic partitions for TP-Link CPE210 v2

This is also helpful to add support in ath79.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
5 years agonetifd: update to latest git HEAD
Hans Dedecker [Mon, 1 Apr 2019 21:08:58 +0000 (23:08 +0200)]
netifd: update to latest git HEAD

361b3e4 proto-shell: return error in case setup fails
a97297d interface: set interface in TEARDOWN state when checking link state

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agobuild: image: Fix off-by-one in DTC kernel version checks
Petr Štetiar [Mon, 1 Apr 2019 11:53:31 +0000 (13:53 +0200)]
build: image: Fix off-by-one in DTC kernel version checks

It was reported to me on IRC today, that my change causes issues with
kernel versions between 4.14 and 4.19.

It's because I've wrongly used `git describe` in order to get kernel
version where we should disable noisy DTC checks, but I should've used
`git tag --contains` instead.

Fixes: cbbef976e2b ("build: dtc: Disable noisy warnings by default")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoar71xx: ens202ext: Fix whitespace issues
Petr Štetiar [Mon, 1 Apr 2019 10:03:50 +0000 (12:03 +0200)]
ar71xx: ens202ext: Fix whitespace issues

I've missed leading whitespace issues in the original patch, so fixing
it in this commit. Thanks to pepe2k for letting me know.

Fixes: d260813d ("ar71xx: ens202ext: Fix VLAN switch")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoopenvpn: update to 2.4.7
Magnus Kroken [Wed, 27 Mar 2019 19:07:58 +0000 (20:07 +0100)]
openvpn: update to 2.4.7

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
5 years agomwlwifi: Fix pcie timeout issue
Kabuli Chana [Sun, 3 Mar 2019 20:53:23 +0000 (13:53 -0700)]
mwlwifi: Fix pcie timeout issue

Increase MAX_WAIT_FW_COMPLETE_ITERATIONS to 10000 as before commit
e5e0700 to prevent timeout as reported here: #308 (Original OP issue is
probably not related though as his post preceeds commit e5e0700).

compile/test target mvebu/mamba, rango

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
[commit subject and message tweaks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoramips: add missing SPDX identifier for EX6150
David Bauer [Fri, 29 Mar 2019 15:16:18 +0000 (16:16 +0100)]
ramips: add missing SPDX identifier for EX6150

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

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

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

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

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

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

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

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

Release notes since last time:

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

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

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

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

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

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

Refreshed all patches.

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

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

Refreshed all patches.

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

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

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

Based on upstream commit: 97738374a310b9116f9c33832737e517226d3722

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

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

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

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

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

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

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

42.82s to 14.09s.

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

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

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

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

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

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

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

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

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

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

Signed-off-by: Vladimir Kot <vova28rus@gmail.com>
[fixed git commit author and whitespace issues in DTS]
Signed-off-by: Petr Štetiar <ynezz@true.cz>