Compare commits

..

8265 Commits

Author SHA1 Message Date
Hauke Mehrtens
c37eb9a9f9 OpenWrt v19.07.5: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-12-07 00:51:00 +01:00
Andre Heider
5090152ae3 tools: always create $STAGING_DIR/usr/{include,lib}
rules.mk always passes these as -I/-L to the toolchain.

Fixes rare errors like:
cc1: error: staging_dir/target-aarch64_cortex-a53_musl/usr/include: No such file or directory [-Werror=missing-include-dirs]

Signed-off-by: Andre Heider <a.heider@gmail.com>
Acked-by: Paul Spooren <mail@aparcar.org>
Acked-by: Rosen Penev <rosenp@gmail.com>
[fixed merge conflict]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit b0cb305236)
2020-12-06 08:31:03 +01:00
Petr Štetiar
d830403133 toolchain: kernel-headers: kernel Git tree mirror hash
Allow setting of mirror hash for Git kernel tree.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 796d51834c)
2020-12-05 20:50:19 +01:00
Petr Štetiar
8c2bb1d9b6 toolchain: kernel-headers: fix check target for kernel Git tree
Currently the check target fails if the kernel Git tree is used:

 $ make toolchain/kernel-headers/{download,check}

  make[2]: Entering directory 'toolchain/kernel-headers'
  Makefile:105: *** ERROR: Unknown pack format for file openwrt/tmp/dl/.  Stop.
  make[2]: Leaving directory 'toolchain/kernel-headers'
  toolchain/Makefile💯 recipe for target 'toolchain/kernel-headers/check' failed

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit bb7ba6b6a8)
2020-12-05 20:50:19 +01:00
Petr Štetiar
a47caacaf3 download.pl: properly cleanup intermediate .hash file
It seems like after a build the /dl dir seems to now contain a .hash
file for each source file due to inproper cleanup so fix it by removing
those intermediate files before leaving the download action.

Fixes: 4e19cbc553 ("download: handle possibly invalid local tarballs")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 52a5d0d27f)
2020-12-05 20:50:19 +01:00
Petr Štetiar
605adb1023 download: handle possibly invalid local tarballs
Currently it's assumed, that already downloaded tarballs are always
fine, so no checksum checking is performed and the tarball is used even
if it might be corrupted.

From now on, we're going to always check the downloaded tarballs before
considering them valid.

Steps to reproduce:

 1. Remove cached tarball

   rm dl/libubox-2020-08-06-9e52171d.tar.xz

 2. Download valid tarball again

   make package/libubox/download

 3. Invalidate the tarball

   sed -i 's/PKG_MIRROR_HASH:=../PKG_MIRROR_HASH:=ff/' package/libs/libubox/Makefile

 4. Now compile with corrupt tarball source

   make package/libubox/{clean,compile}

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 4e19cbc553)
2020-12-05 20:50:19 +01:00
Petr Štetiar
5abe989475 cmake.mk,rules.mk: fix host builds using CMake and ccache
Commit f98878e4c1 ("cmake.mk: set C/CXX compiler for host builds as
well") has introduced regression as it didn't taken usage of ccache into
the account so fix it by handling ccache use cases as well.

In order to get this working we need to export HOSTCXX_NOCACHE in
rules.mk as well.

Fixes: f98878e4c1 ("cmake.mk: set C/CXX compiler for host builds as well")
Reported-by: Ansuel Smith <ansuelsmth@gmail.com>
Tested-by: Ansuel Smith <ansuelsmth@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 524fb5646e)
2020-12-05 20:50:19 +01:00
Rosen Penev
77734ce82a cmake.mk: set C/CXX compiler for host builds as well
Without this, cmake will use whatever CC/CXX is set to, which could be
clang. In that case, at least libjson-c/host will fail to compile.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit f98878e4c1)
2020-12-05 20:50:19 +01:00
Klaus Kudielka
ebe8cc2b2a mvebu: fixup Turris Omnia U-Boot environment
Fixup dfa357a3de "mvebu: base-files: Update Turris Omnia U-Boot
environment" which should have included this file as well.

By rebasing the initial patch this file somehow disappeared.

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
Reviewed-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Tested-by: W. Michael Petullo <mike@flyn.org> (Turris Omnia "2020")
Tested-by: Klaus Kudielka <klaus.kudielka@gmail.com> (Turris Omnia)
[explain fixup in commit message]
Signed-off-by: Paul Spooren <mail@aparcar.org>
(backported from commit 485ce5bbe5)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-12-04 17:57:25 +01:00
Klaus Kudielka
f10332c292 mvebu: base-files: Update Turris Omnia U-Boot environment
Move the update procedure from sysupgrade to first boot, which is much
more convenient in the sysupgrade case (otherwise the environment is
always one generation behind).

Check whether we have an old U-Boot release installed, and update the
environment only if necessary.

Some notes on the U-Boot environment:

The first 9 lines are a copy of the default environment of the old U-Boot
release - only modified, to run "distro_bootcmd", in case "mmcboot" fails
to boot the factory OS.

The remaining 16 lines are a backport of the default environment of the
new U-Boot release (shipped with CZ11NIC23). The main entry point is
"distro_bootcmd", which eventually sources boot.scr. This way, we have
a unified boot protocol for all Turris Omnia revisions so far.

This commit also fixes a shortcoming of previous Turris Omnia support:

Users may install OpenWrt with the Turris Omnia in factory state
(i.e. invalid environment store). In that case, neither fw_setenv, nor
U-Boot itself, would import the default environment from the image -
screwing up the rescue system, at least!

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
Reviewed-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Tested-by: W. Michael Petullo <mike@flyn.org> (Turris Omnia "2020")
Tested-by: Klaus Kudielka <klaus.kudielka@gmail.com> (Turris Omnia)
(cherry picked from commit dfa357a3de)
2020-12-04 17:57:25 +01:00
Klaus Kudielka
ca1ee39854 mvebu: Add turris-omnia.bootscript
In contrast to the U-Boot version shipped with older versions of Turris
Omnia (CZ11NIC13, CZ11NIC20), the version shipped with Turris Omnia 2019
(CZ11NIC23) relies on the existence of /boot.scr.

Consequently, add a suitable boot script to the sysupgrade image.

Flash instructions for Turris Omnia 2019:
- Download openwrt-...-sysupgrade.img.gz, gunzip it, and copy the resulting
  .img file to the root of a USB flash drive (FAT32 or ext2/3/4).
- Enter a rescue shell: Either via 5-LED reset and ssh root@192.168.1.1
  on LAN port 4, or via 7-LED reset and the serial console.
- Insert the USB drive and mount it:
  mkdir /mnt; mount /dev/sda1 /mnt
- Flash the OpenWrt image to eMMC:
  dd if=/mnt/openwrt-...-sysupgrade.img of=/dev/mmcblk0 bs=4096 conv=fsync
- Reboot.

Flash instructions using a temporary "medkit" installation were written for
the older versions of Turris Omnia, and will *not* work on the Turris Omnia
2019.

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
Reviewed-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Tested-by: W. Michael Petullo <mike@flyn.org> (Turris Omnia "2020")
(cherry picked from commit afd4375a33)
2020-12-04 17:57:25 +01:00
Klaus Kudielka
f61e053e72 uboot-envtools: mvebu: update uci defaults for Turris Omnia
On the Turris Omnia 2019, u-boot environment is located at 0xF0000, instead
of 0xC0000. The switch happened with u-boot-omnia package version 2019-04-2
(May 10, 2019).

Check the installed u-boot release, and set the default accordingly.

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
[bump PKG_RELEASE, use lower case for hex offset]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 04d3b517dc)
2020-12-04 17:57:25 +01:00
Kuan-Yi Li
f1525e785e kernel: backport GD25Q256 support from 4.15
Backport below changes for GigaDevice GD25Q256 support from v4.15:

  e27072851bf7 mtd: spi-nor: add a quad_enable callback in struct flash_info
  65153846b18c mtd: spi-nor: add support for GD25Q256

This chip is used on newer Quad-E4G boards.

Before:

[    2.366493] m25p80 spi0.0: unrecognized JEDEC id bytes: c8, 40, 19
[    2.372853] m25p80: probe of spi0.0 failed with error -2

After:

[    2.371722] m25p80 spi0.0: gd25q256 (32768 Kbytes)
[    2.376694] 5 fixed-partitions partitions found on MTD device spi0.0
[    2.383043] Creating 5 MTD partitions on "spi0.0":
[    2.387824] 0x000000000000-0x000000030000 : "u-boot"
[    2.394138] 0x000000030000-0x000000031000 : "u-boot-env"
[    2.400608] 0x000000031000-0x000000040000 : "config"
[    2.406830] 0x000000040000-0x000000050000 : "factory"
[    2.413169] 0x000000050000-0x000002000000 : "firmware"

Signed-off-by: Kuan-Yi Li <kyli@abysm.org>
2020-12-01 21:59:30 +01:00
Hauke Mehrtens
c72b7a4f0d kernel: bump 4.14 to 4.14.209
Refreshed all patches.

Altered patches:
- 804-i2c-support-layerscape.patch

Compile-tested on: ipq40xx, ath79, layerscape/armv8_64b
Runtime-tested on: ipq40xx, ath79

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-12-01 21:57:55 +01:00
Alberto Bursi
c420f77678 wireguard-tools: fix category/description in menuconfig
wireguard-tools is trying to import the menuconfig section
from the wireguard package, but since it's not anymore in
the same makefile this seems to fail and wireguard-tools
ends up in "extra packages" category instead with other
odds and ends.

Same for the description, it's trying to import it from the
wireguard package but it fails so it only shows the line
written in this makefile.

remove the broken imports and add manually the entries
and description they were supposed to load

Fixes: ea980fb9c6 ("wireguard: bump to 20191226")

Signed-off-by: Alberto Bursi <bobafetthotmail@gmail.com>
[fix trailing whitespaces, add Fixes]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a4d52522c7)
2020-12-01 13:31:18 +01:00
David Bauer
0ce0d687de ipq40xx: disable double-tagging for PSGMII devices
This commit disables the double tagging recently backported to 19.07.

Operating the switch on the S-Tag had the advantage of being able to
have separate VLANs for the same C-VID on LAN and WAN. However, this
broke the ability to configure C-TAG modifications on the switch. Also
performance took a significant toll.

Fixes: commit 8c19171255 ("ipq40xx: fix ethernet vlan double tagging")

Signed-off-by: David Bauer <mail@david-bauer.net>
2020-11-30 15:27:58 +01:00
Jan Pavlinec
6703abb7ca tcpdump: patch CVE-2020-8037
This PR backports upstream fix for CVE-2020-8037.  This fix is only
relevant for tcpdump package, tcpdump-mini is not affeted by this issue.

Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
[added missing commit description]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 5bb3cc749e)
2020-11-25 06:02:08 +01:00
Sven Eckelmann
b4698d87c8 kernel: mtd: parser: cmdline: Fix parsing of part-names with colons
Some devices (especially QCA ones) are already using hardcoded partition
names with colons in it. The OpenMesh A62 for example provides following
mtd relevant information via cmdline:

  root=31:11 mtdparts=spi0.0:256k(0:SBL1),128k(0:MIBIB),384k(0:QSEE),64k(0:CDT),64k(0:DDRPARAMS),64k(0:APPSBLENV),512k(0:APPSBL),64k(0:ART),64k(custom),64k(0:KEYS),0x002b0000(kernel),0x00c80000(rootfs),15552k(inactive) rootfsname=rootfs rootwait

The change to split only on the last colon between mtd-id and partitions
will cause newpart to see following string for the first partition:

  KEYS),0x002b0000(kernel),0x00c80000(rootfs),15552k(inactive)

Such a partition list cannot be parsed and thus the device fails to boot.

Avoid this behavior by making sure that the start of the first part-name
("(") will also be the last byte the mtd-id split algorithm is using for
its colon search.

Fixes: 9c718b5478 ("kernel: bump 4.14 to 4.14.200")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
(backported from commit 223eec7e81)
2020-11-24 09:48:48 +01:00
Petr Štetiar
193adc94d1 ar71xx,ath79: refresh 910-unaligned_access_hacks.patch
Commit c9c7b4b394 ("kernel: add netfilter-actual-sk patch") has
touched net/ipv6/netfilter/ip6table_mangle.c which in turn has affected
910-unaligned_access_hacks.patch so the patch needs to be refreshed.

Fixes: c9c7b4b394 ("kernel: add netfilter-actual-sk patch")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-11-24 09:27:50 +01:00
Petr Štetiar
733a482733 musl: handle wcsnrtombs destination buffer overflow (CVE-2020-28928)
The wcsnrtombs function in all musl libc versions up through 1.2.1 has
been found to have multiple bugs in handling of destination buffer
size when limiting the input character count, which can lead to
infinite loop with no forward progress (no overflow) or writing past
the end of the destination buffera.

This function is not used internally in musl and is not widely used,
but does appear in some applications. The non-input-limiting form
wcsrtombs is not affected.

All users of musl 1.2.1 and prior versions should apply the attached
patch, which replaces the overly complex and erroneous implementation.
The upcoming 1.2.2 release will adopt this new implementation.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 4d4ef1058c)
2020-11-23 22:37:03 +01:00
Aaron Goodman
c9c7b4b394 kernel: add netfilter-actual-sk patch
Backport of linux kernel commit 46d6c5a to 4.14 kernel.

netfilter: use actual socket sk rather than skb sk when routing harder

Signed-off-by: Aaron Goodman <aaronjg@stanford.edu>
2020-11-23 22:34:37 +01:00
Jo-Philipp Wich
a448ad7490 uhttpd: update to 19.07 Git HEAD
3abcc89 client: fix spurious keepalive connection timeouts

Fixes: FS#3443
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-11-20 22:53:04 +01:00
David Bauer
39c5635714 scripts: download.pl: retry download using filename
With this commit, the download script will try downloading source files
using the filename instead of the url-filename in case the previous
download attempt using the url-filename failed.

This is required, as the OpenWrt sources mirrors serve files using the
filename files might be renamed to after downloading. If the original
mirror for a file where url-filename and filename do not match goes
down, the download failed prior to this patch.

Further improvement can be done by performing this only for the
OpenWrt sources mirrors.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit d369993898)
2020-11-20 11:58:01 +01:00
Hauke Mehrtens
2a8279c161 layerscape: Fix check after kernel update
The fsl_destroy_mc_io() function was moved, add the new checks to the
moved copy and not just remove it.

Fixes: ac5297340e ("kernel: bump 4.14 to 4.14.206")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-11-16 19:31:23 +01:00
Koen Vandeputte
ac5297340e kernel: bump 4.14 to 4.14.206
Refreshed all patches.

Altered patches:
- 210-dwc2_defaults.patch
- 708-mc-bus-support-layerscape.patch

Fixes:
- CVE-2020-25656

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-11-16 09:35:05 +01:00
Roger Pueyo Centelles
589c3cf4e0 ath79: remove wmac mtd-mac-address for UniFi AC family
The MAC address for the wmac 2.4 GHz radio of the Ubiquiti UniFi AC
family of devices is actually embedded in the mtd-cal-data, so there
is no need for mtd-mac-address (which was incorrectly forcing wmac
to have the same MAC as eth0). This makes it coherent with the stock
firmware and the ar71xx target:

 · XX:XX:XX:X0:XX:XX eth0
 · XX:XX:XX:X1:XX:XX ath0/wlan1 (2.4 GHz)
 · XX:XX:XX:X2:XX:XX ath1/wlan0 (5 GHz)

Checked on a UniFi AC Mesh, a UniFi AC LR and a UniFi Lite.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(cherry picked from commit 20ace70db6)
2020-11-12 18:04:50 +01:00
Sven Roederer
2a3dbded93 feeds: add freifunk feed
Read the freifunk packages, that have been moved from the LuCI feed
into its own feed in January 2019.
Use openwrt-19.07 branch of that repository for openwrt-19.07.

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
(cherry picked from commit 221f97ff47)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-11-11 16:35:50 +00:00
David Bauer
ad3c2b9736 ath79: use correct firmware name for UniFi AP
The Ubiquiti UniFi AP does not have a AHB connected radio but a PCI one.
Also the EEPROM ist only 0x440 bytes of length.

Reported-by: Martin Weinelt <martin@darmstadt.freifunk.net>
Tested-by: Martin Weinelt <martin@darmstadt.freifunk.net>
Signed-off-by: David Bauer <mail@david-bauer.net>
(backported from commit 4c5eb1040f)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-11-11 17:32:25 +01:00
David Bauer
84ae238324 ramips: fix logic level for DIR-645 buttons
The D-Link DIR-645 currently uses an incorrect logic level for its
buttons.

Correct them in order to prevent unintentional activation of failsafe
mode.

Reported-by: Perry Melange <isprotejesvalkata@gmail.com>
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 929e8f0f55)
2020-11-11 17:28:30 +01:00
Adrian Schmutzler
c25e3275ac ath79: fix LED labels for PowerCloud CAP324
The order of function and color in the labels in inverted for the
LAN LEDs. Fix it.

Fixes: 915966d861 ("ath79: Port PowerCloud Systems CAP324 support")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 96023cd4ba)
2020-11-11 17:26:52 +01:00
Hauke Mehrtens
78c4c04dd7 uci: Backport security fixes
This packports two security fixes from master.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit f9005d4f80)
2020-10-28 23:22:44 +01:00
Andre Heider
3af9c5fefd uboot-envtools: mvebu: fix config for mainline u-boot
Mainline u-boot dynamically passes the mtd partitions via devicetree:
$ cat /proc/mtd
dev:    size   erasesize  name
mtd0: 003f0000 00001000 "firmware"
mtd1: 00010000 00001000 "u-boot-env"

Add support for this setup.

Signed-off-by: Andre Heider <a.heider@gmail.com>
(cherry picked from commit 60c9a27cbc)
2020-10-28 23:22:44 +01:00
Andre Heider
7fbee0c7b2 mvebu: Add bootscript for espressobin to support mainline firmware
The generic bootscript is tailored around a downstream firmware and
doesn't work on a firmware built from mainline components.

Add a bootscript which:
* sets $console since mainline u-boot doesn't do that
* uses distro boot variables, so OpenWRT can be booted off any supported
  device when using a mainline firmware
* sets missing distro boot variables for the downstream firmware

Booting with a downstream firmware is unchanged.
Booting with a mainline firmware now works.

Signed-off-by: Andre Heider <a.heider@gmail.com>
(cherry picked from commit c43b45863e)
2020-10-28 23:22:44 +01:00
Koen Vandeputte
14903d9d8c kernel: bump 4.14 to 4.14.202
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>
2020-10-21 15:34:11 +02:00
Tan Zien
03a029745f firmware: intel-microcode: update to 20200616
intel-microcode (3.20200616.1)

  * New upstream microcode datafile 20200616
    + Downgraded microcodes (to a previously shipped revision):
      sig 0x000406e3, pf_mask 0xc0, 2019-10-03, rev 0x00d6, size 101376
      sig 0x000506e3, pf_mask 0x36, 2019-10-03, rev 0x00d6, size 101376
  * Works around hangs on boot on Skylake-U/Y and Skylake Xeon E3,
  * This update *removes* the SRBDS mitigations from the above processors
  * Note that Debian had already downgraded 0x406e3 in release 3.20200609.2

intel-microcode (3.20200609.2)

  * REGRESSION FIX: 0x406e3: rollback to rev 0xd6 and document regression
    * Microcode rollbacks (closes: LP#1883002)
      sig 0x000406e3, pf_mask 0xc0, 2019-10-03, rev 0x00d6, size 101376
    * THIS REMOVES THE SECURITY FIXES FOR SKYLAKE-U/Y PROCESSORS
    * Avoid hangs on boot on (some?) Skylake-U/Y processors,
  * ucode-blacklist: blacklist models 0x8e and 0x9e from late-loading,
    just in case.  Note that Debian does not do late loading by itself.
    Refer to LP#1883002 for the report, 0x806ec hangs upon late load.

intel-microcode (3.20200609.1)

  * SECURITY UPDATE
    * For most processors: SRBDS and/or VRDS, L1DCES mitigations depending
      on the processor model
    * For Skylake HEDT and Skylake Xeons with signature 0x50654: VRDS and
      L1DCES mitigations, plus mitigations described in the changelog entry
      for package release 3.20191112.1.
    * Expect some performance impact, the mitigations are enabled by
      default.  A Linux kernel update will be issued that allows one to
      selectively disable the mitigations.
  * New upstream microcode datafile 20200609
    * Implements mitigation for CVE-2020-0543 Special Register Buffer Data
      Sampling (SRBDS), INTEL-SA-00320, CROSSTalk
    * Implements mitigation for CVE-2020-0548 Vector Register Data Sampling
      (VRDS), INTEL-SA-00329
    * Implements mitigation for CVE-2020-0549 L1D Cache Eviction Sampling
      (L1DCES), INTEL-SA-00329
    * Known to fix the regression introduced in release 2019-11-12 (sig
      0x50564, rev. 0x2000065), which would cause several systems with
      Skylake Xeon, Skylake HEDT processors to hang while rebooting
    * Updated Microcodes:
      sig 0x000306c3, pf_mask 0x32, 2019-11-12, rev 0x0028, size 23552
      sig 0x000306d4, pf_mask 0xc0, 2019-11-12, rev 0x002f, size 19456
      sig 0x00040651, pf_mask 0x72, 2019-11-12, rev 0x0026, size 22528
      sig 0x00040661, pf_mask 0x32, 2019-11-12, rev 0x001c, size 25600
      sig 0x00040671, pf_mask 0x22, 2019-11-12, rev 0x0022, size 14336
      sig 0x000406e3, pf_mask 0xc0, 2020-04-27, rev 0x00dc, size 104448
      sig 0x00050653, pf_mask 0x97, 2020-04-24, rev 0x1000157, size 32768
      sig 0x00050654, pf_mask 0xb7, 2020-04-24, rev 0x2006906, size 34816
      sig 0x00050656, pf_mask 0xbf, 2020-04-23, rev 0x4002f01, size 52224
      sig 0x00050657, pf_mask 0xbf, 2020-04-23, rev 0x5002f01, size 52224
      sig 0x000506e3, pf_mask 0x36, 2020-04-27, rev 0x00dc, size 104448
      sig 0x000806e9, pf_mask 0x10, 2020-04-27, rev 0x00d6, size 103424
      sig 0x000806e9, pf_mask 0xc0, 2020-04-27, rev 0x00d6, size 103424
      sig 0x000806ea, pf_mask 0xc0, 2020-04-27, rev 0x00d6, size 103424
      sig 0x000806eb, pf_mask 0xd0, 2020-04-27, rev 0x00d6, size 103424
      sig 0x000806ec, pf_mask 0x94, 2020-04-23, rev 0x00d6, size 103424
      sig 0x000906e9, pf_mask 0x2a, 2020-04-23, rev 0x00d6, size 103424
      sig 0x000906ea, pf_mask 0x22, 2020-04-27, rev 0x00d6, size 102400
      sig 0x000906eb, pf_mask 0x02, 2020-04-23, rev 0x00d6, size 103424
      sig 0x000906ec, pf_mask 0x22, 2020-04-27, rev 0x00d6, size 102400
      sig 0x000906ed, pf_mask 0x22, 2020-04-23, rev 0x00d6, size 103424
  * Restores the microcode-level fixes that were reverted by release
    3.20191115.2 for sig 0x50654 (Skylake Xeon, Skylake HEDT)

intel-microcode (3.20200520.1)

  * New upstream microcode datafile 20200520
    + Updated Microcodes:
      sig 0x000206d6, pf_mask 0x6d, 2020-03-04, rev 0x0621, size 18432
      sig 0x000206d7, pf_mask 0x6d, 2020-03-24, rev 0x071a, size 19456

intel-microcode (3.20200508.1)

  * New upstream microcode datafile 20200508
    + Updated Microcodes:
      sig 0x000706e5, pf_mask 0x80, 2020-03-12, rev 0x0078, size 107520
    * Likely fixes several critical errata on IceLake-U/Y causing system
      hangs

intel-microcode (3.20191115.2)

  * Microcode rollbacks (closes: #946515, LP#1854764):
    sig 0x00050654, pf_mask 0xb7, 2019-07-31, rev 0x2000064, size 33792
  * Avoids hangs on warm reboots (cold boots work fine) on HEDT and
    Xeon processors with signature 0x50654.

intel-microcode (3.20191115.1)

  * New upstream microcode datafile 20191115
    + Updated Microcodes:
      sig 0x000406e3, pf_mask 0xc0, 2019-10-03, rev 0x00d6, size 101376
      sig 0x000506e3, pf_mask 0x36, 2019-10-03, rev 0x00d6, size 101376
      sig 0x000806e9, pf_mask 0x10, 2019-10-15, rev 0x00ca, size 100352
      sig 0x000806e9, pf_mask 0xc0, 2019-09-26, rev 0x00ca, size 100352
      sig 0x000806ea, pf_mask 0xc0, 2019-10-03, rev 0x00ca, size 100352
      sig 0x000806eb, pf_mask 0xd0, 2019-10-03, rev 0x00ca, size 100352
      sig 0x000806ec, pf_mask 0x94, 2019-10-03, rev 0x00ca, size 100352
      sig 0x000906e9, pf_mask 0x2a, 2019-10-03, rev 0x00ca, size 100352
      sig 0x000906ea, pf_mask 0x22, 2019-10-03, rev 0x00ca, size 99328
      sig 0x000906eb, pf_mask 0x02, 2019-10-03, rev 0x00ca, size 100352
      sig 0x000906ec, pf_mask 0x22, 2019-10-03, rev 0x00ca, size 99328
      sig 0x000906ed, pf_mask 0x22, 2019-10-03, rev 0x00ca, size 100352
      sig 0x000a0660, pf_mask 0x80, 2019-10-03, rev 0x00ca, size 91136

intel-microcode (3.20191113.1)

  * New upstream microcode datafile 20191113
    + SECURITY UPDATE, refer to the 3.20191112.1 changelog entry for details
      Adds microcode update for CFL-S (Coffe Lake Desktop)
      INTEL-SA-00270, CVE-2019-11135, CVE-2019-0117
    + Updated Microcodes (previously removed):
      sig 0x000906ec, pf_mask 0x22, 2019-08-14, rev 0x00c6, size 99328

intel-microcode (3.20191112.1)

  * New upstream microcode datafile 20191112
    + SECURITY UPDATE
      - Implements MDS mitigation (TSX TAA), INTEL-SA-00270, CVE-2019-11135
      - Implements TA Indirect Sharing mitigation, and improves the
        MDS mitigation (VERW)
      - Fixes FIVR (Xeon Voltage Modulation) vulnerability, INTEL-SA-00271,
        CVE-2019-11139
      - Fixes SGX vulnerabilities and errata (including CVE-2019-0117)
    + CRITICAL ERRATA FIXES
      - Fixes Jcc conditional jump macro-fusion erratum (Skylake+, except
        Ice Lake), causes a 0-3% typical perforance hit (can be as bad
        as 10%).  But ensures the processor will actually jump where it
        should, so don't even *dream* of not applying this fix.
      - Fixes AVX SHUF* instruction implementation flaw erratum
    + Removed Microcodes:
      sig 0x000906ec, pf_mask 0x22, 2019-02-14, rev 0x00ae, size 98304
    + New Microcodes:
      sig 0x000406d8, pf_mask 0x01, 2019-09-16, rev 0x012d, size 84992
      sig 0x00050656, pf_mask 0xbf, 2019-09-05, rev 0x400002c, size 51200
      sig 0x00060663, pf_mask 0x80, 2018-04-17, rev 0x002a, size 87040
      sig 0x000706a8, pf_mask 0x01, 2019-08-29, rev 0x0016, size 74752
      sig 0x000706e5, pf_mask 0x80, 2019-09-05, rev 0x0046, size 102400
      sig 0x000a0660, pf_mask 0x80, 2019-08-27, rev 0x00c6, size 91136
    + Updated Microcodes:
      sig 0x000406e3, pf_mask 0xc0, 2019-08-14, rev 0x00d4, size 101376
      sig 0x00050654, pf_mask 0xb7, 2019-09-05, rev 0x2000065, size 34816
      sig 0x00050657, pf_mask 0xbf, 2019-09-05, rev 0x500002c, size 51200
      sig 0x000506e3, pf_mask 0x36, 2019-08-14, rev 0x00d4, size 101376
      sig 0x000706a1, pf_mask 0x01, 2019-08-28, rev 0x0032, size 73728
      sig 0x000806e9, pf_mask 0x10, 2019-08-14, rev 0x00c6, size 99328
      sig 0x000806e9, pf_mask 0xc0, 2019-08-14, rev 0x00c6, size 100352
      sig 0x000806ea, pf_mask 0xc0, 2019-08-14, rev 0x00c6, size 99328
      sig 0x000806eb, pf_mask 0xd0, 2019-08-14, rev 0x00c6, size 100352
      sig 0x000806ec, pf_mask 0x94, 2019-08-14, rev 0x00c6, size 100352
      sig 0x000906e9, pf_mask 0x2a, 2019-08-14, rev 0x00c6, size 100352
      sig 0x000906ea, pf_mask 0x22, 2019-08-14, rev 0x00c6, size 99328
      sig 0x000906eb, pf_mask 0x02, 2019-08-14, rev 0x00c6, size 100352
      sig 0x000906ed, pf_mask 0x22, 2019-08-14, rev 0x00c6, size 99328
    + Updated Microcodes (previously removed):
      sig 0x00050653, pf_mask 0x97, 2019-09-09, rev 0x1000151, size 32768

Signed-off-by: Tan Zien <nabsdh9@gmail.com>
(cherry picked from commit e826e00765)
2020-10-18 00:07:23 +02:00
Tan Zien
95d60bf881 firmware: amd64-microcode: update to 20191218
amd64-microcode (3.20191218.1)

  * New microcode update packages from AMD upstream:
    + Removed Microcode updates (known to cause issues):
      sig 0x00830f10, patch id 0x08301025, 2019-07-11
  * README: update for new release

amd64-microcode (3.20191021.1)

  * New microcode update packages from AMD upstream:
    + New Microcodes:
      sig 0x00830f10, patch id 0x08301025, 2019-07-11
    + Updated Microcodes:
      sig 0x00800f12, patch id 0x08001250, 2019-04-16
      sig 0x00800f82, patch id 0x0800820d, 2019-04-16

amd64-microcode (3.20181128.1)

  * New microcode update packages from AMD upstream:
    + New Microcodes:
      sig 0x00800f82, patch id 0x0800820b, 2018-06-20

Signed-off-by: Tan Zien <nabsdh9@gmail.com>
(cherry picked from commit 182c7d955f)
2020-10-18 00:07:16 +02:00
Hauke Mehrtens
dda5e3db19 firewall: options: fix parsing of boolean attributes
Boolean attributes were parsed the same way as string attributes,
so a value of { "bool_attr": "true" } would be parsed correctly, but
{ "bool_attr": true } (without quotes) was parsed as false.

Fixes FS#3284

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7f676b5ed6)
2020-10-16 21:37:22 +02:00
Koen Vandeputte
7dd822983b kernel: bump 4.14 to 4.14.201
Refreshed all patches.

Fixes:
- CVE-2020-14386

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-10-14 17:18:54 +02:00
Adrian Schmutzler
aee081e62e oxnas: fix qc_prep return in sata driver after kernel 4.14.200
This fixes a regression after a kernel change in 4.14.200 [1] that
led to build failure on oxnas/ox820:

  drivers/ata/sata_oxnas.c:2238:13: error: initialization of
  'enum ata_completion_errors (*)(struct ata_queued_cmd *)'
  from incompatible pointer type
  'void (*)(struct ata_queued_cmd *)' [-Werror=incompatible-pointer-types]
    .qc_prep = sata_oxnas_qc_prep,
               ^~~~~~~~~~~~~~~~~~
  drivers/ata/sata_oxnas.c:2238:13: note:
  (near initialization for 'sata_oxnas_ops.qc_prep')

Our local driver is changed the same way as prototyped in the
kernel patch, i.e. return type is changed and AC_ERR_OK return
value is added.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=306a1c5b5683c1d37565e575386139a64bdbec6f

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit f6ca57e4f4)
2020-10-12 11:31:19 +01:00
Felix Fietkau
6696fddfd9 mac80211: do not allow bigger VHT MPDUs than the hardware supports
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit caf727767a)
[Refreshed patch]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-10-12 09:45:54 +02:00
Koen Vandeputte
9c718b5478 kernel: bump 4.14 to 4.14.200
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>
2020-10-12 09:45:54 +02:00
Chuanhong Guo
b21bea7b1b ath79: ar8216: make switch register access atomic
reg accesses on integrated ar8229 sometimes fails. As a result, phy read
got incorrect port status and wan link goes down and up mysteriously.
After comparing ar8216 with the old driver, these local_irq_save/restore
calls are the only meaningful differences I could find and it does fix
the issue.
The same changes were added in svn r26856 by Gabor Juhos:
ar71xx: ag71xx: make switch register access atomic

As I can't find the underlying problem either, this hack is broght
back to fix the unstable link issue.
This hack is only suitable for ath79 mdio and may easily break the
driver on other platform. Limit it to ath79-only as a target patch.

Fixes: FS#2216
Fixes: FS#3226
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit 86fdc8abed)
2020-10-11 11:57:55 +08:00
Baptiste Jonglez
891022918d scripts: getver.sh: fix version based on stable branch
When building from a local branch based off the "openwrt-19.07" branch,
version computation is wrong, for instance:

    r10194+1004-c53f62b111

The number of local commits (1004 in this case) is wrong because it is
computed against master.  As a result, it wrongly counts *all* commits
since the beginning of the openwrt-19.07 branch as local commits.

The fix is to compare to the openwrt-19.07 branch instead, which gives the
expected result such as:

    r11192+6-8b0278a17e

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
[shorten commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-10-07 23:13:00 +02:00
Eneas U de Queiroz
8076fb59ab openssl: bump to 1.1.1h
This is a bug-fix release.  Patches were refreshed.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 475838de1a)
2020-09-28 17:14:31 +02:00
Adrian Schmutzler
f4286d7bc2 ath79: fix rssi-low LED for My Net Range Extender
The LED color was missing in 01_leds.

Fixes: 745dee11ac ("ath79: add support for WD My Net Wi-Fi Range
Extender")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit d232a8ac7d)
2020-09-28 13:33:28 +02:00
Hauke Mehrtens
d82e6a2f10 kernel: Update to version 4.14.199
Compile and runtime tested on lantiq/xrx200 + ath79/generic.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-09-28 01:04:35 +02:00
Rozhuk Ivan
86b44028e2 comgt: fix hotplug event handling
Hotplug manager send: "remove" -> "add" -> "bind" events,
script interpret bind as "not add" = "remove" and mark device
as unavailable.

Signed-off-by: Rozhuk Ivan <rozhuk.im@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
(cherry picked from commit 4821ff064b)
Fixes: FS#3351
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-09-19 19:48:27 +02:00
Jo-Philipp Wich
34a9652904 Revert "ramips: ethernet: fix to interrupt handling"
This reverts commit 7ac454014a.

The change reportedly causes regressions in ethernet performance.

Fixes: FS#3332
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-09-18 08:53:53 +02:00
Hauke Mehrtens
29b4104d69 OpenWrt v19.07.4: revert to branch defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-09-07 20:27:30 +02:00
Hauke Mehrtens
d5810aa613 OpenWrt v19.07.4: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-09-07 20:27:12 +02:00
Michael Yartys
ce6496d796 ath10k-ct-firmware: update firmware images
Not a large change from last time, but should fix at least one rare wave-2
crash.

Tested on Netgear R7800.

Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 91aab77bf1)
[adapt variables and package names]
[remove changes to non-full htt-mgt variants because we did not backport
 a882bfce05 ("ath10k-ct-firmware: add htt-mgt variants")]
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
Tested-by: Baptiste Jonglez <git@bitsofnetworks.org> [QCA9886, QCA9887]
2020-09-06 18:19:39 +02:00
Álvaro Fernández Rojas
b72077150d ath10k-ct-firmware: update firmware images
No release notes this time.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 06f510df6e)
[adapt variables and package names because we did not backport
 2e5e9b459e ("ath10k-ct-firmware: rename ct-htt packages")]
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2020-09-06 18:19:39 +02:00
Álvaro Fernández Rojas
ddc2af4505 ath10k-firmware: move CT firmwares to new package
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 658e68f85c)
2020-09-06 18:19:39 +02:00
Álvaro Fernández Rojas
a43a39f531 ath10k-firmware: update ath10k-ct firmware images
Release notes for 017:

Wave-1:

 *  March 19, 2020:  Fix problem where power-save was not enabled when going off-channel to scan.
                     The problem was a boolean logic inversion in the chmgr code, a regression I introduced
                     a long time ago.

 *  March 19, 2020:  When scanning only on current working channel, do not bother with disable/enable
                     powersave.  This should make an on-channel scan less obtrusive than it was previously.

 *  March 23, 2020:  Fix channel-mgr use-after-free problem that caused crashes in some cases.  The crash
                     was exacerbated by recent power-save changes.

 *  March 23, 2020:  Fix station-mode power-save related crash:  backported the fix from 10.2 QCA firmware.

 *  March 23, 2020:  Attempt to better clean up power-save objects and state, especially in station mode.

Release notes for 016:

Wave-1 changes, some debugging code for a crash someone reported, plus:

*  February 28, 2020:  Fix custom-tx path when sending in 0x0 for rate-code.  Have tries == 0 mean
                        one try but NO-ACK (similar to how wave-2 does it).

wave-2:

 * Fixed some long-ago regressions related to powersave and/or multicast.  Maybe fix some
   additional multicast and/or tx-scheduling bugs.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Acked-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 84f4a783c6)
2020-09-06 18:19:39 +02:00
Michael Yartys
4b8a5bdc83 ath10k-firmware: update ath10k-ct firmware
This supports better per-chain noise floor reporting, which in turn allows for
better RSSI reporting in the driver.

Wave-2 fixes a long-standing rate-ctrl problem when connected to xbox (and probably other devices).

Wave-2 has fix for crash likely related to rekeying.

Wave-1 has some debugging code added where a user reported a crash.

Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>  [ipq806x+qca9984,ipq4019+qca9986]
Signed-off-by: Michael Yartys <michael.yartys@protonmail.com>
(cherry picked from commit 1862263883)
2020-09-06 18:19:39 +02:00
Stefan Lippers-Hollmann
e4b47e12cb ath10k-firmware: update Candela Tech firmware images
The release notes since last time for wave-1:

 * No changes to wave-1, but I make a version .014 copy anyway to keep
   the makefile in sync.

The release notes since last time for wave-2:

 * December 16, 2019: Wave-2 has a fix to make setting txpower work
                      better. Before setting the power was ignored at
                      least some of the time (it also appeared to work
                      mostly, so I guess it was being correctly set in
                      other ways).

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 6598264266)
2020-09-06 18:19:39 +02:00
NeilBrown
7ac454014a ramips: ethernet: fix to interrupt handling
The current code acknowledged interrupts *after* polling.
This is the wrong way around, and could cause an interrupt to
be missed.
This is not likely to be fatal as another packet, and so another
interrupt, should come along soon.  But maybe it is causing
problems, so let's fix it anyway.

Signed-off-by: NeilBrown <neil@brown.name>
(Note that this matches the upstream driver.)
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-09-06 17:11:34 +02:00
Hauke Mehrtens
f5afa593e7 hostapd: Fix compile errors after wolfssl update
This fixes the following compile errors after the wolfssl 4.5.0 update:
  LD  wpa_cli
../src/crypto/tls_wolfssl.c: In function 'tls_match_alt_subject':
../src/crypto/tls_wolfssl.c:610:11: error: 'GEN_EMAIL' undeclared (first use in this function); did you mean 'ENAVAIL'?
    type = GEN_EMAIL;
           ^~~~~~~~~
           ENAVAIL
../src/crypto/tls_wolfssl.c:610:11: note: each undeclared identifier is reported only once for each function it appears in
../src/crypto/tls_wolfssl.c:613:11: error: 'GEN_DNS' undeclared (first use in this function)
    type = GEN_DNS;
           ^~~~~~~
../src/crypto/tls_wolfssl.c:616:11: error: 'GEN_URI' undeclared (first use in this function)
    type = GEN_URI;
           ^~~~~~~
../src/crypto/tls_wolfssl.c: In function 'wolfssl_tls_cert_event':
../src/crypto/tls_wolfssl.c:902:20: error: 'GEN_EMAIL' undeclared (first use in this function); did you mean 'ENAVAIL'?
   if (gen->type != GEN_EMAIL &&
                    ^~~~~~~~~
                    ENAVAIL
../src/crypto/tls_wolfssl.c:903:20: error: 'GEN_DNS' undeclared (first use in this function)
       gen->type != GEN_DNS &&
                    ^~~~~~~
../src/crypto/tls_wolfssl.c:904:20: error: 'GEN_URI' undeclared (first use in this function)
       gen->type != GEN_URI)
                    ^~~~~~~
Makefile:2029: recipe for target '../src/crypto/tls_wolfssl.o' failed

Fixes: 00722a720c ("wolfssl: Update to version 4.5.0")
Reported-by: Andre Heider <a.heider@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit bc19481826)
2020-09-04 00:41:56 +02:00
Hauke Mehrtens
403039c562 wolfssl: Update to version 4.5.0
This fixes the following security problems:
* In earlier versions of wolfSSL there exists a potential man in the
  middle attack on TLS 1.3 clients.
* Denial of service attack on TLS 1.3 servers from repetitively sending
  ChangeCipherSpecs messages. (CVE-2020-12457)
* Potential cache timing attacks on public key operations in builds that
  are not using SP (single precision). (CVE-2020-15309)
* When using SGX with EC scalar multiplication the possibility of side-
  channel attacks are present.
* Leak of private key in the case that PEM format private keys are
  bundled in with PEM certificates into a single file.
* During the handshake, clear application_data messages in epoch 0 are
  processed and returned to the application.

Full changelog:
https://www.wolfssl.com/docs/wolfssl-changelog/

Fix a build error on big endian systems by backporting a pull request:
https://github.com/wolfSSL/wolfssl/pull/3255

The size of the ipk increases on mips BE by 1.4%
old:
libwolfssl24_4.4.0-stable-2_mips_24kc.ipk:	386246
new:
libwolfssl24_4.5.0-stable-1_mips_24kc.ipk:	391528

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 00722a720c)
2020-09-02 15:46:42 +02:00
Eneas U de Queiroz
dc61110adc 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 <cotequeiroz@gmail.com>
(cherry picked from commit 750d52f6c9)
2020-09-02 15:46:36 +02:00
Eneas U de Queiroz
ad38a2ae61 wolfssl: update to 4.4.0-stable
This version adds many bugfixes, including a couple of security
vulnerabilities:
 - For fast math (enabled by wpa_supplicant option), use a constant time
   modular inverse when mapping to affine when operation involves a
   private key - keygen, calc shared secret, sign.
 - Change constant time and cache resistant ECC mulmod. Ensure points
   being operated on change to make constant time.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 3481f6ffc7)
2020-09-02 15:46:30 +02:00
Magnus Kroken
0d35fcbff0 mbedtls: update to 2.16.8
This release of Mbed TLS provides bug fixes and minor enhancements. This
release includes fixes for security issues and the most notable of them
are described in more detail in the security advisories.

* Local side channel attack on RSA and static Diffie-Hellman
* Local side channel attack on classical CBC decryption in (D)TLS
* When checking X.509 CRLs, a certificate was only considered as revoked
if its revocationDate was in the past according to the local clock if
available.

Full release announcement:
https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.8

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
(cherry picked from commit 66893063ab)
2020-09-02 15:46:22 +02:00
Hauke Mehrtens
2d7ea69dd3 mac80211: Fix potential endless loop
Backport a fix from kernel 5.8.3.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ca5ee6eba3)
2020-08-30 23:36:52 +02:00
Daniel Golle
5a1e4a7fdb oxnas: reduce size of ATA DMA descriptor space
After years of trying to find the reason for random kernel crashes
while both CPU and SATA are under load it has been found.
Some odd commented-out #defines in kref's single-port driver [1] which
were copied from the vendor driver made me develop a theory:
The IO-mapped memory area for DMA descriptors apparetly got some holes
just before the alignment boundaries.
This feels like an off-by-one bug in the hardware or maybe those fields
are used internally by the SATA controller's firmware.
Whatever the cause is: they cannot be used and trying to use them
results in reading back unexpected stuff and ends up with oopsing
Unable to handle kernel paging request at virtual address d085c004

Work around the issue by reducing the area used for bmdma descriptors.
This reduces SATA performance (iops) quite a bit, but finally makes
things work reliably. Possibly one could optimize this much more by
really just skipping the holes in that memory area -- however, that
seems to be non-trivial with the driver and libata in it's current form
(suggestions are welcome).
The 'proper' way to have good SATA performance would be to make use of
the hardware RAID features (one can use the JBOD mode to access even
just a single disc transparently through the RAID controller integrated
in the SATA host instead of accessing the SATA ports 'raw' as we do
now).

[1]: https://github.com/kref/linux-oxnas/blob/master/drivers/ata/sata_oxnas.c#L25

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 5793112f75,
including fixup commit d75e753063)
2020-08-29 01:17:26 +01:00
Magnus Kroken
19b8696dd7 mbedtls: update to 2.16.7
Mbed TLS 2.16.7 is a maintenance release of the Mbed TLS 2.16 branch,
and provides bug fixes and minor enhancements. This release includes
fixes for security issues and the most severe one is described in more
detail in a security advisory:
https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-07

* Fix a side channel vulnerability in modular exponentiation that could
reveal an RSA private key used in a secure enclave.
* Fix side channel in mbedtls_ecp_check_pub_priv() and
mbedtls_pk_parse_key() / mbedtls_pk_parse_keyfile() (when loading a private
key that didn't include the uncompressed public key), as well as
mbedtls_ecp_mul() / mbedtls_ecp_mul_restartable() when called with a NULL
f_rng argument. An attacker with access to precise enough timing and
memory access information (typically an untrusted operating system
attacking a secure enclave) could fully recover the ECC private key.
* Fix issue in Lucky 13 counter-measure that could make it ineffective when
hardware accelerators were used (using one of the MBEDTLS_SHAxxx_ALT
macros).

Due to Mbed TLS moving from ARMmbed to the Trusted Firmware project, some
changes to the download URLs are required. For the time being, the
ARMmbed/mbedtls Github repository is the canonical source for Mbed TLS.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
[Use https://codeload.github.com and new tar.gz file]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 201d6776a0)
2020-08-27 00:28:00 +02:00
Hauke Mehrtens
a2a75c21bd kernel: Update kernel 4.14 to version 4.14.195
Compile and runtime tested on lantiq/xrx200 and x86/64.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-08-27 00:27:56 +02:00
Adrian Schmutzler
8b0278a17e ath79: add support for TP-Link TL-WR710N v2.1
This adds support for the TP-Link TL-WR710N v2.1. It is basically a
re-issue of the v1.2.

Specifications:

SoC:       Atheros AR9331
CPU:       400 MHz
Flash:     8 MiB
RAM:       32 MiB
WiFi:      2.4 GHz b/g/n
Ethernet:  2x 100M ports
USB:       1x 2.0

The only difference from the v1 is the TP-Link hardware ID/revision.

Attention:
The TL-WR710N v2.0 (!) has only 4 MB flash and cannot be flashed with
this image. It has a different TPLINK_HWREV, so accidental flashing
of the factory image should be impossible without additional measures.

Unfortunately, the v2.0 in ar71xx has the same board name, so sysupgrade
from ar71xx v2.0 into ath79 v1/v2.1 will not be prevented, but will brick
the device.

Flashing instruction:

Upload the factory image via the OEM firmware GUI upgrade mechanism.

Further notes:

To make implementation easier if somebody desires to port the 4M v2.0,
this already creates two DTSI files.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Fabian Eppig <fabian@eppig.de>
(backported from eb531337a7)
2020-08-24 19:56:10 +02:00
Alexander Couzens
33973a90dc tools/tplink-safeloader: use soft_ver 1.9.1 for archer c6 v2
TP-LINK published a firmware update for the archer c6 v2.
This updates also reached the factory devices. Newer software version
rejects downgrading to 1.2.x. Use 1.9.x to allow installing the factory images
and have a little bit time to change it again.

Tested on archer c6 v2 with firmware 1.3.1

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
(cherry picked from commit 6d5d815e3f)
2020-08-24 19:37:08 +02:00
Georgi Vlaev
fce5101469 tplink-safeloader: update soft_ver for TP-Link Archer C6 v2 (EU)
The last couple of TP-Link firmware releases for Archer C6 v2 (EU)
have switched to version 1.2.x. Bump the soft_ver to "1.2.1" to
allow firmware updates from the vendor web interface.

TP-Link vendor firmware releases supported by this change:
* Archer C6(EU)_V2_200110: soft_ver:1.2.1 Build 20200110 rel.60119
* Archer C6(EU)_V2_191014: soft_ver:1.2.0 Build 20191014 rel.33289

Signed-off-by: Georgi Vlaev <georgi.vlaev@gmail.com>
(cherry picked from commit ff75bbc423)
2020-08-24 19:37:08 +02:00
Jo-Philipp Wich
350883bb90 Revert "scripts/download: add sources CDN as first mirror"
This reverts commit c737a9ee6a.

The source CDN has been discontinued in its current form and will take a
while to be reestablished. Even then it makes little sense to put a CDN
before other CDNs such as kernel.org, apache.org, sourceforge etc.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit bf96eb55c8)
2020-08-24 15:56:27 +02:00
Thibaut VARÈNE
d8ecaef409 generic: platform/mikrotik: fix incorrect test
The test is meant to check the result of the preceding kmalloc()

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
(cherry picked from commit d0498872ff)
2020-08-18 18:22:33 +02:00
Adrian Schmutzler
008db6b970 ath79: enable gpio on ar933x by default
All other SoC DTSI files have gpio enabled by default, only
ar9330/ar9331 disable it by default, only to have it enabled again
afterwards for each individual device.

So, do not disable it in the first place, and drop all device-specific
status statements afterwards.

Though this is a cosmetic commit, it might be a pitfall for
device-support backporters if missing. Since backporting it is trivial,
let's just do it.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit dc1280ef65)
2020-08-18 17:45:20 +02:00
Adrian Schmutzler
3df63fba70 ath79: fix syntax error in ar7240_tplink_tl-wa.dtsi
The node needs to be terminated by a semicolon.

Fixes: 8484a764df ("ath79: ar724x: make sure builtin-switch is
enabled in DT")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit e329e71c69)
2020-08-17 18:29:03 +02:00
Adrian Schmutzler
be09fdbf36 ath79: ar724x: make sure builtin-switch is enabled in DT
On ar7240/ar7241 the mdioX node with the builtin-switch is enabled
in the DTSI files, but the parent ethX node is left disabled. It
only gets enabled per device or device family, and has not been
enabled at all yet for the TP-Link WA devices with ar7240, making
the switch unavailable there.

This patch makes sure &eth0/&eth1 nodes are enabled together with
the &mdio0/&mdio1 nodes containing the builtin-switch.
For ar7240_tplink_tl-wa.dtsi, &eth0 is properly hidden again via
  compatible = "syscon", "simple-mfd";

This partially fixes FS#2887, however it seems dmesg still does
not show cable (dis)connect in dmesg for ar7240 TP-Link WA
devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 8484a764df)
2020-08-17 15:52:01 +02:00
Michal Cieslakiewicz
5d3e5d6ccc ath79: WNR612v2: improve device support
This patch improves ath79 support for Netgear WNR612v2.
Router functionality becomes identical to ar71xx version.

Changes include:
* software control over LAN LEDs via sysfs
* correct MAC addresses for network interfaces
* correct image size in device definition
* dts: 'keys' renamed to 'ath9k-keys'
* dts: 'label-mac-device' set to eth1 (LAN)
* dts: formatting adjustments

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
(cherry picked from commit d74324e407)
[remove label-mac-device]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-17 15:49:57 +02:00
Michal Cieslakiewicz
fba9a88821 ath79: add LAN LEDs control bits for AR724x GPIO function pinmux
Currently AR724x pinmux for register 0x18040028 controls only JTAG disable bit.
This patch adds new DTS settings to control LAN LEDs and CLKs that allow
full software control over these diodes - exactly the same is done by ar71xx
target in device setup phase for many routers (WNR2000v3 for example).

'switch_led_disable_pins' clears AR724X_GPIO_FUNC_ETH_SWITCH_LED[0-4]_EN bits.
'clks_disable_pins' clears AR724X_GPIO_FUNC_CLK_OBS[1-5]_EN and
AR724X_GPIO_FUNC_GE0_MII_CLK_EN bits. These all should be used together, along
with 'jtag_disable_pins', to allow OS to control all GPIO-connected LEDs and
buttons on device.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
(cherry picked from commit 69df7eb73d)
2020-08-17 15:49:01 +02:00
Chih-Wei Chen
5af8da3787 ramips: fix Xiaomi MiWiFi Mini switch definition
Based on OpenWRT Table of Hardware > Xiaomi > Xiaomi Mi WiFi Mini

Switch Ports Defaults:
0, 1: LAN
4: WAN
6: CPU

Port in Web GUI (word printed on bottom of case)
WAN(Internet) map to switch port 4
LAN1(.) map to switch port 1
LAN2(..) map to switch port 0
CPU map to switch port 6

current setting is 1 WAN/ 4 LAN port, fix it.

Signed-off-by: Chih-Wei Chen <changeway@gmail.com>
[rebased after base-files split, fixed commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(backported from commit 3e88ab79b0)
2020-08-13 13:56:27 +02:00
Magnus Kroken
e754e0a143 busybox: delete redundant patch
This problem has been fixed in upstream commit
6b6a3d9339f1c08efaa18a7fb7357e20b48bdc95. This patch now (harmlessly)
adds the same definition a second time.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
[bump PKG_RELEASE]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 4165232c45)
2020-08-12 11:10:16 +02:00
Hauke Mehrtens
72878e3244 mac80211: Fix build on mpc85xx target
This fixes the following compile error seen on the mpc85xx target:
  CC [M]  /linux-mpc85xx_p2020/backports-5.7-rc3-1/drivers/net/wireless/intersil/orinoco/main.o
In file included from /builder/shared-workdir/build/staging_dir/toolchain-powerpc_8540_gcc-8.4.0_musl/include/stddef.h:17,
                 from /linux-mpc85xx_p2020/backports-5.7-rc3-1/include/uapi/linux/wireless.h:77,
                 from /linux-mpc85xx_p2020/backports-5.7-rc3-1/include/linux/wireless.h:13,
                 from /linux-mpc85xx_p2020/backports-5.7-rc3-1/drivers/net/wireless/intersil/orinoco/main.c:89:
/builder/shared-workdir/build/staging_dir/toolchain-powerpc_8540_gcc-8.4.0_musl/include/bits/alltypes.h:106:15: error: conflicting types for 'ptrdiff_t'
 typedef _Addr ptrdiff_t;
               ^~~~~~~~~
In file included from /linux-mpc85xx_p2020/backports-5.7-rc3-1/backport-include/linux/types.h:4,
                 from ./include/linux/list.h:5,
                 from /linux-mpc85xx_p2020/backports-5.7-rc3-1/backport-include/linux/list.h:3,
                 from ./include/linux/module.h:9,
                 from /linux-mpc85xx_p2020/backports-5.7-rc3-1/backport-include/linux/module.h:3,
                 from /linux-mpc85xx_p2020/backports-5.7-rc3-1/drivers/net/wireless/intersil/orinoco/main.c:79:
./include/linux/types.h:65:28: note: previous declaration of 'ptrdiff_t' was here
 typedef __kernel_ptrdiff_t ptrdiff_t;
                            ^~~~~~~~~
scripts/Makefile.build:265: recipe for target '/linux-mpc85xx_p2020/backports-5.7-rc3-1/drivers/net/wireless/intersil/orinoco/main.o' failed

Fixes: d6b158b869 ("mac80211: Update to 4.19.137-1")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 04b1a11f5c)
2020-08-11 20:59:39 +02:00
Hauke Mehrtens
cdd9f19819 x86: Add CONFIG_EFI_CUSTOM_SSDT_OVERLAYS
The CONFIG_EFI_CUSTOM_SSDT_OVERLAYS option was added in kernel 4.14.188,
set it for the x86/generic target.

This fixes a build problem in the x86/generic target.

Fixes: 148d59c67e ("kernel: update kernel 4.14 to version 4.14.193")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-08-11 20:44:31 +02:00
Christoph Krapp
b3b7665e62 ar71xx: fix ZyXEL NBG6616 wifi switch
The device uses a rf-kill switch instead of a button. Furthermore the
GPIO is active high.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
(cherry picked from commit 0af656e978)
2020-08-11 01:14:25 +02:00
Piotr Stefaniak
4af7873412 tools/cmake: fix typo in parallel make patch
The variable in the case argument was mistyped, so the case always
checked against an empty string and never matched.

Fix the variable name. Add a PKG_RELEASE to Makefile so we can bump it.

Fixes: d6de31310c ("cmake: restore parallel build support for bootstrap")

Signed-off-by: Piotr Stefaniak <pstef@freebsd.org>
[add commit message, add PKG_RELEASE, fix commit title, add Fixes:]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit e27fbae63c)
2020-08-11 01:14:25 +02:00
Hauke Mehrtens
d6b158b869 mac80211: Update to 4.19.137-1
b43 and b43legacy now support ieee80211w, hardware crypto will be
deactivated in such cases.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-08-11 00:13:47 +02:00
Hauke Mehrtens
148d59c67e kernel: update kernel 4.14 to version 4.14.193
Compile and runtime tested on lantiq/xrx200 and ipq40xx.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-08-11 00:12:50 +02:00
Paul Spooren
7db09853a8 scripts: Add Buildbot dump-target-info.pl script
The script comes from buildbot.git[0] and is used to print available
targets and architectures, which are then build.

As the buildbot clones openwrt.git anyway, the script might as well live
here to be used for other cases as well, e.g. determining what
architectures are available when building Docker containers or show
developers an overview which architectures are used by which target.

It's called with either the parameter `architectures` or `targets`,
showing architectures followed by supported targets or targets, followed
by the supported architectures:

$ ./scripts/dump-target-info.pl architectures
aarch64_cortex-a53 bcm27xx/bcm2710 mediatek/mt7622 mvebu/cortexa53 sunxi/cortexa53
aarch64_cortex-a72 bcm27xx/bcm2711 mvebu/cortexa72
...

$ ./scripts/dump-target-info.pl targets
apm821xx/nand powerpc_464fp
apm821xx/sata powerpc_464fp
...

In the future the the script could be removed from the buildbot
repository and maintained only here.

Rename `dumpinfo.pl` to `dump-target-info.pl` to improve verbosity of
filename.

[0]: https://git.openwrt.org/?p=buildbot.git;a=blob;f=scripts/dumpinfo.pl;h=aa97f8d60379076a41b968402e9337cea824ece5;hb=HEAD

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 656b562aff)
2020-08-10 02:43:15 +03:00
Christoph Krapp
e52f7cfc1d uboot-envtools: ar71xx: add ZyXEL NBG6616 uboot env support
This adds support for ZyXEL NBG6616 uboot-env access

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
[add "ar71xx" to commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit eb95ca3b5c)
2020-08-10 00:08:04 +02:00
Christoph Krapp
8ad674e90b ar71xx: change u-boot-env to read-write for ZyXEL NBG6616
As the ath79 port of this device uses a combined kernel + root
partition the uboot bootcmd variable needs to be changed. As using
cli/luci is more convenient than opening up the case and using a uart
connection, lets unlock the uboot-env partition for write access.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
(cherry picked from commit 982c1f6e42)
2020-08-10 00:07:36 +02:00
Petr Štetiar
dedf089bb7 hostapd: add wpad-basic-wolfssl variant
Add package which provides size optimized wpad with support for just
WPA-PSK, SAE (WPA3-Personal), 802.11r and 802.11w.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
[adapt to recent changes, add dependency for WPA_WOLFSSL config]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit c487cf8e94)
2020-08-10 00:05:27 +02:00
Adrian Schmutzler
2788db3d38 hostapd: reorganize config selection hierarchy for WPA3
The current selection of DRIVER_MAKEOPTS and TARGET_LDFLAGS is
exceptionally hard to read. This tries to make things a little
easier by inverting the hierarchy of the conditions, so SSL_VARIANT
is checked first and LOCAL_VARIANT is checked second.

This exploits the fact that some of the previous conditions were
unnecessary, e.g. there is no hostapd-mesh*, so we don't need
to exclude this combination.

It also should make it a little easier to see which options are
actually switched by SSL_VARIANT and which by LOCAL_VARIANT.

The patch is supposed to be cosmetic. However, the improvement
for readers and the maintained consistency with master qualify
this for backporting.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit c4dd7fc23b)
2020-08-10 00:05:20 +02:00
Tobias Welz
d40ce8b32d ramips: correct WizFi630S pin mappings
WizFi630S had some pins changed in the release version of the board.
The run led, wps button and a slide switch where affected.
This patch is correcting this.
i2c is removed as it is sharing a pin with the run (system) led.
uart2 is enabled as it is also enabled in the OEM firmware.

Signed-off-by: Tobias Welz <tw@wiznet.eu>
(backported from commit d0b229f553)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-08 16:36:32 +02:00
Tobias Welz
d1985a1be6 ramips: enable flashing WizFi630S via OEM firmware
WIZnet WizFi630s board name is written slightly different it its OEM
OpenWrt firmware. This causes an incompatibility warning during flashing
with sysupgrade. This patch is adding the vendor board name to the
supported devices list to avoid this warning. For initial flashing you
can use sysupgrade via command line or luci beside of TFTP.
Do not keep the OEM configuration during sysupgrade.

Signed-off-by: Tobias Welz <tw@wiznet.eu>
(cherry picked from commit 816973f42a)
2020-08-08 16:36:24 +02:00
Tobias Welz
4212b6a01e ramips: remove doublet entry in WizFi630S dts file
&wmac entry in WIZnet WizFi630S dts file was existing two times.
This is removing one of them.

Signed-off-by: Tobias Welz <tw@wiznet.eu>
(cherry picked from commit b735bbcb18)
2020-08-08 16:36:15 +02:00
Tobias Welz
a81c459d99 ramips: disable unused phy ports of WizFi630S
WIZnet WizFi630S is using only 3 of the phy ports. The unused phy ports
draw unnecessarily power. This is disabling the unused phy ports.

Signed-off-by: Tobias Welz <tw@wiznet.eu>
(cherry picked from commit 36d4c2272e)
2020-08-08 16:36:08 +02:00
Josua Mayer
9d2dea8302 mvebu: fix LAN/WAN port assignment on ClearFog Base/Pro
The comments in code already describe the intended lan / wan assignment:
lan: switch
wan: standalone ethernet and sfp

Update the interface handles to match the comments, as observed with
OpenWRT-19.07-rc2 on a Clearfog Pro Rev 2.0.

This also matches the effective assignment on master, while the actual
interface names (ethX) are different due to the reassignment in
06_set_iface_mac, which is included in 19.07 but was dropped for master.

Signed-off-by: Josua Mayer <josua.mayer@jm0.eu>
[extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-07 17:13:40 +02:00
Sungbo Eo
de1693e56f ar71xx: restore support for boot console with arbitrary baud rates
Commit 1bfbf2de6d ("ar71xx: serial: core: add support for boot console
with arbitrary baud rates") added support for arbitrary baud rates which
enabled 250000 baud rate for Yun. But the patch was not ported to kernel
4.9, and since then the kernel set its baud rate to 9600. This commit ports
the patch to kernel 4.14, thereby restoring the serial console of Yun.

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit c90db26e05)
2020-08-02 18:16:00 +02:00
Adrian Schmutzler
1b3aca9142 ath79: restore support for boot console with arbitrary baud rates
The Arduino Yun uses a baud rate of 250000 by default. The serial is
going over the Atmel ATmega and is used to connect to this chip.
Without this patch Linux wants to switch the console to 9600 Baud.

With this patch Linux will use the configured baud rate and not a
default one specified in uart_register_driver().

This has been added for ath79 4.19 and 5.4 in master as part of
fc59b2f79b ("ath79: add support for Arduino Yun"), this backports
it separately to 4.14.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-02 18:15:45 +02:00
Sungbo Eo
f6acabcbdc ar71xx: enable ethernet LED of Arduino Yun
Commit 05d73a2a73 enabled GPIO on ethernet LED, but proper LED setup was
not added then. This commit fixes it by reverting the change on the LED.

Fixes: 05d73a2a73 ("ar71xx: Arduino Yun board 'WLAN RST' button support")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit a5e404d192)
2020-08-02 16:36:22 +02:00
Sungbo Eo
f17174e843 ar71xx: fix sysupgrade for Arduino Yun
Commit bb46b635df changed its partition scheme, but sysupgrade image
validation still uses the old format. This commit fixes it so that
force flag is not needed for sysupgrade.

Fixes: bb46b635df ("ar71xx: move Arduino Yun to generic building code")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 58dc1d0637)
2020-08-02 16:36:07 +02:00
Sungbo Eo
f3c0eab9c7 Revert "ar71xx: fix Arduino Yun enabling of level shifters outputs"
This reverts commit 077253dd66.

The output enable pins should be disabled by default, and only enabled when
used. Otherwise unwanted conflicts might occur between MCU and SoC pins.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 43896dc0b0)
2020-08-02 16:35:54 +02:00
Alexey Dobrovolsky
2f756b39ed ramips: add kmod-usb-dwc2 to ZyXEL Keenetic image
ZyXEL Keenetic has a USB port. Thus, DWC2 USB controller driver should
be in the default image for this device.

Fixes: a7cbf59e0e ("ramips: add new device ZyXEL Keenetic as kn")
Signed-off-by: Alexey Dobrovolsky <dobrovolskiy.alexey@gmail.com>
[fixed whitespace issue]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(backported from commit 0a182fcba6)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-08-02 13:42:49 +02:00
Alexey Dobrovolsky
06c6a3dd70 ramips: remove patches for USB-dwc2
In FS#2738 we can see that patch first introduced in
e8ebcff ("ramips: add a explicit reset to dwc2")
breaks USB functionality since 18.06. Thus, this patch should be removed.

Removed:
- 0032-USB-dwc2-add-device_reset.patch

Fixes: FS#2738
Fixes: FS#2964

Signed-off-by: Alexey Dobrovolsky <dobrovolskiy.alexey@gmail.com>
(cherry picked from commit ab841b4393)
2020-08-02 13:40:07 +02:00
Adrian Schmutzler
86727bd158 hostapd: improve TITLE for packages
For a few packages, the current TITLE is too long, so it is not
displayed at all when running make menuconfig. Despite, there is
no indication of OpenSSL vs. wolfSSL in the titles.

Thus, this patch adjusts titles to be generally shorter, and adds
the SSL variant to it.

While at it, make things easier by creating a shared definition for
eapol-test like it's done already for all the other flavors.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 917980fd8a)
2020-07-30 21:43:27 +02:00
David Woodhouse
bf58bfb90e mediatek: mt7623: fix sysupgrade from vendor OpenWrt on UniElec U7623
This board ships with an ancient 14.07-based OpenWrt using block2mtd, and
the MBR partition table contains nonsense.

It is possible to sysupgrade to an upstream OpenWrt image, but the
legacy layout of the OpenWrt images start at 0xA00 in the eMMC, with
a raw uImage. The legacy OpenWrt image doesn't "own" the beginning
of the device, including the MBR and U-Boot.

This means that when a user upgrades to upstream OpenWrt, it doesn't
boot because it can't find the right partitions. So hard-code them on
the kernel's command line using CONFIG_CMDLINE_PARTITION (for block).

Additionally, the vendor firmware doesn't cope with images larger than
about 36MiB, because it only overwrites the contents of its "firmware"
MTD partition. The current layout of the legacy image wastes a lot of
space, allowing over 32MiB for the kernel and another 10MiB for the FAT
recovery file system which is only created as 3MiB. So pull those in
to allow 4¾ MiB for the kernel, 3MiB for recovery, and then we have over
20MiB for the root file system.

This doesn't affect the new images which ship with a full eMMC image
including a different MBR layout and a partition for U-Boot, because
our modern U-Boot can actually pass the command line to the kernel, and
the built-in one doesn't get used anyway.

Tested by upgrading from vendor OpenWrt to the current legacy image,
from legacy to itself, to the previous legacy layout, and then to
finally the full-system image.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
(cherry picked from commit 6eb63019af)
2020-07-30 11:50:07 +08:00
David Woodhouse
2147c33e40 mediatek: mt7623: add explicit console= to U7623 kernel
The bootloader for legacy builds can't set it, so we end up unable to
log in on the serial port.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
(cherry picked from commit ea9ef8c945)
2020-07-30 11:50:07 +08:00
Jan Pavlinec
8fbe450e40 curl: patch CVE-2020-8169
Affected versions: curl 7.62.0 to and including 7.70.0
https://curl.haxx.se/docs/CVE-2020-8169.html

Run tested on Omnia with OpenWrt 19.07

Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
[added missing commit description]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-07-29 14:32:03 +02:00
Hauke Mehrtens
7d6e504dbe make_ext4fs: Update to version 2020-01-05
5c201be Add LDFLAGS when building libsparse.a
ec17045 make_ext4fs: fix build on musl systems

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 271d0c825b)
2020-07-29 12:11:04 +02:00
Christian Lamparter
a225164bb5 make-ext4fs: update to HEAD of 2017-05-29 - eebda1
Update make-ext4fs to commit eebda1d55d9701ace2700d7ae461697fadf52d1f

git log --pretty=oneline --abbrev-commit 484903e4..eebda1d5

eebda1d make_ext4: Add strict prototypes.
bb9cf91 make_ext4fs: Remove off64_t in favor of standard off_t

Created with the help of the make-package-update-commit.sh script.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit ac2f341036)
2020-07-29 12:10:59 +02:00
Yousong Zhou
afaa978b74 firewall: backport patch for mss clamping in both directions
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2020-07-26 18:23:26 +08:00
Adrian Schmutzler
a2c9fc9ff0 ath79: correctly define WiFi switch for TL-WR841ND v8
The TL-WR841ND v8 feature a WiFi switch instead of a button.
This adds the corresponding input-type to prevent booting into
failsafe regularly.

This has been defined correctly in ar71xx, but was overlooked
when migrating to ath79. In contrast, the TL-WR842ND v2, which
has the key set up as switch in ar71xx, actually has a button.
The TL-MR3420 v2 has a button as well and is set up correctly
for both targets. (Information based on TP-Link user guide)

Note:

While looking into this, I found that support PR for TL-MR3420 v2
switched reset button to ACTIVE_HIGH. However, the other two
device still use ACTIVE_LOW. This seems strange, but I cannot
verify it lacking the affected devices.

Fixes: FS#2733
Fixes: 9601d94138 ("add support for TP-Link TL-WR841N/ND v8")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(backported from commit 5e86877f36)
2020-07-23 17:40:23 +02:00
Adrian Schmutzler
7022f1eb13 bcm47xx: fix switch setup for Linksys WRT610N v2
WRT610N V2 is not detected by the initial network configuration script.
The switch remains unconfigured and wlan/lan vlans are not created.

This adds the correct setup for the device.

Fixes: FS#1869

Suggested-by: Alessandro Radicati
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a2fee73e27)
2020-07-23 17:40:00 +02:00
Adrian Schmutzler
fba22d89a9 tplink-safeloader: expand support list for TP-Link CPE210 v3
This adds new strings to the support list for the TP-Link CPE210 v3
that are supposed to work with the existing setup.

Without it, the factory image won't be accepted by the vendor UI on
these newer revisions.

Tested on a CPE210 v3.20 (EU).

Ref: https://forum.openwrt.org/t/build-for-cpe210-v3-20/68000

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 4a2380a1e7)
2020-07-23 17:39:51 +02:00
Dustin Gathmann
a785aed70e lantiq/xrx200: make WLAN button responsive on Fritzbox 7360 & 7362
Pressing the 'WLAN' button should enable/disable wireless activity.
Currently, the button is mapped to the KEY_WLAN, which will not
have this effect.
This patch changes the mapping of the WLAN button, so a button
press will emit an action for the 'rfkill' key instead of 'wlan'.
Apparently, this is what stock OpenWRT expects.

This fix is analogous to the preceding patch for Fritzbox 3370.

Signed-off-by: Dustin Gathmann <dzsoftware@posteo.org>
(cherry picked from commit d5a148f5c8)
2020-07-23 17:39:42 +02:00
Dustin Gathmann
4a9d6320af lantiq/xrx200: fix WLAN button actions for Fritzbox 3370
The WLAN button actions are reversed, i.e. pressing the button emits a
'released' action, and vice versa.
This can easily be checked by adding
logger -t button_action "$BUTTON $ACTION"
as the second line of /etc/rc.button/rfkill, and using logread to read
the events (assuming the preceding patch has been applied).
Defining the GPIO as ACTIVE_LOW corrects this behavior.

Signed-off-by: Dustin Gathmann <dzsoftware@posteo.org>
(cherry picked from commit 0ee30adb46)
2020-07-23 17:39:35 +02:00
Dustin Gathmann
284cd7d18e lantiq/xrx200: make WLAN button responsive on Fritzbox 3370
Pressing the 'WLAN' button should enable/disable wireless activity.
However, on the Fritzbox 3370 this doesn't have an effect.
This patch changes the mapping of the physical WLAN button, so a button
press will emit an action for the 'rfkill' key instead of 'wlan'.
Apparently, this is what stock OpenWRT expects, and also what is
implemented for most other devices.

Signed-off-by: Dustin Gathmann <dzsoftware@posteo.org>
(cherry picked from commit a53bf63756)
2020-07-23 17:39:29 +02:00
Adrian Schmutzler
2ca5a386ee vxlan: bump and change to PKG_RELEASE
Bumping package version has been overlooked in a previous commit.

While at it, use PKG_RELEASE instead of PKG_VERSION, as the latter
is meant for upstream version number only.
(The effective version string for the package would be "3" in both
cases, so there is no harm done for version comparison.)

Fixes: 0453c3866f ("vxlan: fix udp checksum control")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b29d620ed2)
2020-07-17 12:23:04 +02:00
Johannes Kimmel
e894e1b2f0 vxlan: fix udp checksum control
So far, passing "rxcsum" and "txcsum" had no effect.

Fixes: 95ab18e012 ("vxlan: add options to enable and disable UDP
checksums")

Signed-off-by: Johannes Kimmel <fff@bareminimum.eu>
[add Fixes:]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 0453c3866f)
2020-07-17 12:22:57 +02:00
John Crispin
8c19171255 ipq40xx: fix ethernet vlan double tagging
As the the SoC uses implicit vlan tagging for dual MAC support, the
offload feature breaks when using double tagging.

This is backport of 9da2b56760 from trunk.
As the layout of the files has changed a cherry-pick was not possible.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: John Crispin <john@phrozen.org>
2020-07-14 18:36:19 +02:00
Paul Spooren
b9a89bf7b5 build,json: fix compatibility with Python 3.5
The f-string feature was introduced in Python 3.6. As Buildbots may run
on Debian 9, which comes per default with Python 3.5, this would cause
an issue. Instead of f-strings use the *legacy* `.format()` function.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-07-13 21:24:30 +01:00
Huangbin Zhan
9c0ad7f1d5 build: fix compatibility with python 3.6
On a system python3 is linked to python3.6, fail to perform json_overview_image_info
 and got `TypeError: __init__() got an unexpected keyword argument 'capture_output'`.
This patch emulate the behaviour on python 3.7+.

Signed-off-by: Huangbin Zhan <zhanhb88@gmail.com>
(cherry picked from commit 3caad5150c)
2020-07-13 21:24:30 +01:00
Daniel Golle
78f57fbce6 build,json: fix build failure in case no data is found
Only collect arch_packages if actually generating any output.

Fixes: commit f09b9319 ("build,json: store arch_packages in profiles.json"(
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 3b0f698760)
2020-07-13 21:24:30 +01:00
Paul Spooren
270711b8ed build,json: store arch_packages in profiles.json
The `arch_packages` contains the supported package architecture.

Previously it was necessary to parse the `Packages` index for the line
`Architecture:`, requiring both an additional parser and file download.

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit f09b9319c6)
2020-07-13 21:24:30 +01:00
Paul Spooren
e3618eb2cc build: store default/device packages in JSON
With this commit the `profiles.json` contain both the target specific
`default_packages` as well as the device specific `device_packages` as a
array of strings.

This information is required for downstream projects like the various
web-based interactive firmware generators.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 263f7e5bbd)
2020-07-13 21:24:30 +01:00
Paul Spooren
3dbd74d032 imagebuilder: Remove json_info_files/ before build
The folder `json_info_files` contains multiple JSON files which describe
created firmware images. The folder is not removed between builds as the
ImageBuilder does not use `image.mk`.

Not removing the JSON files result in a merged `profiles.json` file
containing entries for outdated or non-existing images.

This commit adds the `json_info_files/` cleanup step to the ImageBuilder
Makefile.

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 941ec28b35)
2020-07-13 21:24:30 +01:00
Sungbo Eo
8ea6be1510 kirkwood: support for button in Pogoplug V4
Pogoplug V4 has a reset button on a GPIO pin.
To use it, kmod-gpio-button-hotplug package needs to be installed.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 91472dc2ce)
2020-07-10 13:55:54 +02:00
Luca Olivetti
de75d6ecfa lantiq: dts: Move the &usb_vbus nodes out of &gpio
Move the USB VBUS regulator nodes out of the GPIO controller node. This
fixes a problem where the "regulator-fixed" driver wasn't probed for
these regulators because the GPIO driver doesn't scan the child-nodes
and based on the dt-bindings documentation it's not supposed to.

This fixed the following error reported by Luca Olivetti:
  ...
  dwc2 1e101000.usb: DWC OTG Controller
  dwc2 1e101000.usb: new USB bus registered, assigned bus number 1
  dwc2 1e101000.usb: irq 62, io mem 0x1e101000
  dwc2 1e101000.usb: startup error -517
  dwc2 1e101000.usb: USB bus 1 deregistered
  dwc2 1e101000.usb: dwc2_hcd_init() FAILED, returning -517

Fixes: FS#1634
Cc: Luca Olivetti <luca@ventoso.org>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
[backported from 982468de35]
Signed-off-by: Luca Olivetti <luca@ventoso.org>
2020-07-10 13:55:21 +02:00
Hauke Mehrtens
2d14da2c7d ar71xx: Fix mikrotik NAND compile problem
This fixes the following compile error:
drivers/mtd/nand/rb91x_nand.c: In function 'rb91x_nand_remove':
drivers/mtd/nand/rb91x_nand.c:445:16: error: 'rbni' undeclared (first use in this function)
  nand_release(&rbni->chip);

Fixes: 9cad70044f ("kernel: fix nand_release() usage.")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 66e04abbb6)
2020-07-07 23:43:26 +02:00
Hauke Mehrtens
673e7944bb ar71xx: Fix mikrotik NAND compile problem
There is one closing bracket too much.

Fixes: 9cad70044f ("kernel: fix nand_release() usage.")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 014d3f593a)
2020-07-06 00:12:04 +02:00
Petr Štetiar
73e0ea1ea9 armvirt,x86: fix build breakage of crypto ccp module
Upstream in commit f9f8f0c24203 ("crypto: ccp -- don't "select"
CONFIG_DMADEVICES") removed dependency on CONFIG_DMADEVICES symbol which
leads to build breakage of ccp crypto module, so fix this by adding that
symbol back in the kernel config.

Fixes: f4985a22ca ("kernel: Update kernel 4.14 to version 4.14.187")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 472b8fc91b)
2020-07-05 13:33:31 +02:00
Hans Dedecker
d46650de7c 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 <dedeckeh@gmail.com>

Note this is cherry-pick from master. It fixes CVE-2020-11080
and  https://github.com/nxhack/openwrt-node-packages/issues/679

Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
2020-07-04 21:10:18 +02:00
Hauke Mehrtens
9cad70044f kernel: fix nand_release() usage.
nand_release() takes nand_chip since commit 5bcfcbfc4019 ("mtd: rawnand:
Pass a nand_chip object to nand_release()")

Fixes: f4985a22ca ("kernel: Update kernel 4.14 to version 4.14.187")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-07-04 21:04:11 +02:00
Stijn Segers
820f4654c6 wireguard: bump to 1.0.20200611
This bump fixes breakage introduced by kernel commit 8ab8786f78c3fc930f9abf6d6d85e95567de4e1f,
which is part of the 4.14.181 kernel bump, and backported ip6_dst_lookup_flow to 4.14.
This breaks the older WireGuard version currently in 19.07.

For reference, the compilation error is the one below:

build_dir/target-x86_64_musl/linux-x86_64/wireguard-linux-compat-1.0.20200506/src/compat/compat.h:104:42: error: 'const struct ipv6_stub' has no member named 'ipv6_dst_lookup'; did you mean 'ipv6_dst_lookup_flow'?
 #define ipv6_dst_lookup_flow(a, b, c, d) ipv6_dst_lookup(a, b, &dst, c) + (void *)0 ?: dst

Changelogs below taken from the official release announcements.

== Changes since v1.0.20200506 ==

  This release aligns with the changes I sent to DaveM for 5.7-rc7 and were
  pushed to net.git about 45 minutes ago.

  * qemu: use newer iproute2 for gcc-10
  * qemu: add -fcommon for compiling ping with gcc-10

  These enable the test suite to compile with gcc-10.

  * noise: read preshared key while taking lock

  Matt noticed a benign data race when porting the Linux code to OpenBSD.

  * queueing: preserve flow hash across packet scrubbing
  * noise: separate receive counter from send counter

  WireGuard now works with fq_codel, cake, and other qdiscs that make use of
  skb->hash. This should significantly improve latency spikes related to
  buffer bloat. Here's a before and after graph from some data Toke measured:
  https://data.zx2c4.com/removal-of-buffer-bloat-in-wireguard.png

  * compat: support RHEL 8 as 8.2, drop 8.1 support
  * compat: support CentOS 8 explicitly
  * compat: RHEL7 backported the skb hash renamings

  The usual RHEL churn.

  * compat: backport renamed/missing skb hash members

  The new support for fq_codel and friends meant more backporting work.

  * compat: ip6_dst_lookup_flow was backported to 4.14, 4.9, and 4.4

== Changes since v1.0.20200611 ==

  * qemu: always use cbuild gcc rather than system gcc
  * qemu: remove -Werror in order to build ancient kernels better
  * qemu: patch kernels that rely on ancient make
  * qemu: force 2MB pages for binutils 2.31
  * qemu: use cbuild gcc for avx512 exclusion
  * qemu: add extra fill in idt handler for newer binutils
  * qemu: support fetching kernels for arbitrary URLs
  * qemu: patch in UTS_UBUNTU_RELEASE_ABI for Ubuntu detection
  * qemu: work around broken centos8 kernel
  * qemu: mark per_cpu_load_addr as static for gcc-10

  Our qemu test suite can now handle more kernels and more compilers. Scroll
  down to the bottom of https://www.wireguard.com/build-status/ to see the
  expanded array of kernels we now test against, including some distro kernels.

  * compat: widen breadth of integer constants
  * compat: widen breadth of memzero_explicit backport
  * compat: backport skb_scrub_packet to 3.11
  * compat: widen breadth of prandom_u32_max backport
  * compat: narrow the breadth of iptunnel_xmit backport
  * compat: backport iptunnel_xmit to 3.11

  With the expanded qemu test suite, it was possible to expand our list of
  mainline kernels, so the backport compat layer is now more precise.

  * compat: ubuntu appears to have backported ipv6_dst_lookup_flow
  * compat: bionic-hwe-5.0/disco kernel backported skb_reset_redirect and ipv6 flow

  Ubuntu kernels changed recently, so this ensures we can compile with the
  latest Ubuntu releases.

  * compat: remove stale suse support

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
(cherry picked from commit 1fd1f5e8cff18f97675ce303b05d411136b99fb0)
2020-07-04 19:22:36 +02:00
Hauke Mehrtens
f4985a22ca kernel: Update kernel 4.14 to version 4.14.187
Fixes:
- CVE-2020-10757

Run tested: ath79, ipq40xx
Build tested: ath79, ipq40xx

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-07-04 19:22:23 +02:00
Leon M. George
73fecd36bf mac80211: fix use of local variable
mac80211_get_addr is called from mac80211_generate_mac, where the local variable
initialisation id="${macidx:-0}" suggests that macidx is not always defined.
Probably, idx was supposed to be used instead of $(($macidx + 1)).

Fixes: 4d99db168c ("mac80211: try to get interface addresses from wiphy sysfs 'addresses' if no mask is set")

Signed-off-by: Leon M. George <leon@georgemail.eu>
(cherry picked from commit 8f95220bcb)
2020-06-30 22:13:23 +02:00
Paul Spooren
938839a565 scripts: JSON merge don't crash if no JSON found
The JSON `WORK_DIR` ($(KDIR)/json_info_files) is only created if the new
image generation methods from `image.mk` are used. However some targets
like `armvirt` do not use it yet, so the folder is never created.

The `json_overview_image_info.py` script used to raise an error if the
given `WORK_DIR` isn't a folder, however it should just notify about
missing JSON files.

This patch removes the Python assert and exists with code 0 even if no
JSON files were found, as this is not necessarily an error but simply
not yet implemented. Using `glob` on an not existing `Path` results in
an empty list, therefore the for loop won't run.

Signed-off-by: Paul Spooren <mail@aparcar.org>
CC: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 14cbd8fb2d)
2020-06-30 22:13:05 +02:00
Paul Spooren
3572711e3c build: refactor JSON info files to profiles.json
JSON info files contain machine readable information of built profiles
and resulting images. These files were added in commit 881ed09ee6
("build: create JSON files containing image info").

They are useful for firmware wizards and script checking for
reproducibility.

Currently all JSON files are stored next to the built images, resulting
in up to 168 individual files for the ath79/generic target.

This patch refactors the JSON creation to store individual per image
(not per profile) files in $(BUILD_DIR)/json_info_files and create an
single overview file called `profiles.json` in the target directory.

Storing per image files and not per profile solves the problem of
parallel file writes. If a profiles sysupgrade and factory image are
finished at the same time both processes would write to the same JSON
file, resulting in randomly broken outputs.

Some target like x86/64 do not use the image code yet, resulting in
missing JSON files. If no JSON info files were created, no
`profiles.json` files is created as it would be empty anyway.

As before, this creation is enabled by default only if `BUILDBOT` is set.

Tested via buildroot & ImageBuilder on ath79/generic, imx6 and x86/64.

Signed-off-by: Paul Spooren <mail@aparcar.org>
[json_info_files dir handling in Make, if case refactoring]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(backported from commit 07449f692c)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-06-30 22:12:58 +02:00
Petr Štetiar
b7bac0737e build: image: fix build breakage of some images
Commit 881ed09ee6 ("build: create JSON files containing image info")
has removed the crucial empty new line from the image copy step
resulting in the following errors during make function expansion:

 GZ_SUFFIX :=
 bash: GZ_SUFFIX: command not found
 Makefile:86: recipe for target 'openwrt-ath79-generic-tplink_archer-c7-v5-squashfs-sysupgrade.bin' failed

Fixes: 881ed09ee6 ("build: create JSON files containing image info")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 0fb23d67f0)
2020-06-30 22:12:50 +02:00
Paul Spooren
8a0362c699 build: create JSON files containing image info
The JSON info files contain details about the created firmware images
per device and are stored next to the created images.

The JSON files are stored as "$(IMAGE_PREFIX).json" and contain some
device/image meta data as well as a list of created firmware images.

An example of openwrt-ramips-rt305x-aztech_hw550-3g.json

    {
      "id": "aztech_hw550-3g",
      "image_prefix": "openwrt-ramips-rt305x-aztech_hw550-3g",
      "images": [
        {
          "name": "openwrt-ramips-rt305x-aztech_hw550-3g-squashfs-sysupgrade.bin",
          "sha256": "db2b34b0ec4a83d9bf612cf66fab0dc3722b191cb9bedf111e5627a4298baf20",
          "type": "sysupgrade"
        }
      ],
      "metadata_version": 1,
      "supported_devices": [
        "aztech,hw550-3g",
        "hw550-3g"
      ],
      "target": "ramips/rt305x",
      "titles": [
        {
          "model": "HW550-3G",
          "vendor": "Aztech"
        },
        {
          "model": "ALL0239-3G",
          "vendor": "Allnet"
        }
      ],
      "version_commit": "r10920+123-0cc87b3bac",
      "version_number": "SNAPSHOT"
    }

Signed-off-by: Paul Spooren <mail@aparcar.org>
(backported from commit 881ed09ee6)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-06-30 22:12:39 +02:00
Adrian Schmutzler
8293c8ed46 ath79: do not build TP-Link tiny images by default
For quite some time, the tiny (4M flash) TP-Link sysupgrade and
factory images cannot be built anymore by the buildbots, just
the initramfs-kernel.bin files are still there.

Disable these images for the buildbots and don't waste build
resources.

Note that these devices still build fine with default settings,
just not with the additional packages and config symbols for
the buildbots.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-06-28 14:37:22 +02:00
Adrian Schmutzler
670eeb7888 mediatek: fix IPv4-only corner case and commit in 99-net-ps
The uci config section network.globals set up in /bin/config_generate
will only be created if /proc/sys/net/ipv6 exists.

Correspondingly, lacking IPv6 support, the command
uci set network.globals.packet_steering=1
will fail with "uci: Invalid argument" as the network.globals config
has not been set up.

Fix that by adding the setup there as well.

While at it, limit the uci commit to the network config file.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 636b62e8e2)
2020-06-28 14:34:35 +02:00
Daniel González Cabanelas
9c58f5d4ff bcm63xx: DGND3700v1: fix port order
Fix the switch LAN labels for the DGND3700v1/DGND3800B router,
the order is reversed.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
[cut out of bigger patch, adjust commit title/message accordingly]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 583b3e4025)
2020-06-28 14:32:42 +02:00
INAGAKI Hiroshi
ebefdf61ed ramips: increase SPI frequency for ELECOM WRC-GST devices
Increase the SPI frequency for ELECOM WRC-1900GST and WRC-2533GST
to 40 MHz by updating the common DTSI file.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
[WRC-1900GST]
Acked-by: NOGUCHI Hiroshi <drvlabo@gmail.com>
[split patch, adjust commit title/message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b5ae70d053)
2020-06-28 14:31:51 +02:00
Jose Olivera
6b042217d7 mvebu: fix default EU regdomain for Linksys WRT AC devices
The mwlwifi driver sets the default country code for EU (fi-
rmware region code 0x30) certified devices to FR (France),
not DE (Germany). Whilst this is a trivial fix, novice users
may not know how mwlwifi negatively reacts to a non-matching
country code and may leave the setting alone. Especially si-
nce it is under the advanced settings section in LuCI.

Relevant mwlwifi driver code:
0a550312dd

The mwlwifi driver readme states "Please don't change country
code and let mwlwifi set it for you." However, OpenWrt's current
behaviour does not adhere to this with its default, 'just flashed
from factory' setting for EU devices.

Signed-off-by: Jose Olivera <oliverajeo@gmail.com>
[rebase, extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit d0e8b8310f)
2020-06-28 14:29:41 +02:00
Catalin Patulea
a2c556aa8f libnetfilter-queue: fix package title and description
The original text was copy/pasted from some other package.
Adjust the package title and description to match the description
on the publishers page.

Signed-off-by: Catalin Patulea <catalinp@google.com>
[slightly adjust content and commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 492a6594b9)
2020-06-28 14:29:03 +02:00
Sungbo Eo
8adbe26f6e base-files: remove urandom-seed definition
urandom-seed has a separate Makefile, we can safely remove the definition here.

Fixes: 27bfde9c9f ("base-files: move urandom seed bits into separate package")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 46a6586c83)
2020-06-28 14:28:10 +02:00
Adrian Schmutzler
b40e6bc55f ath79: drop and consolidate redundant chosen/bootargs
In ath79, for several SoCs the console bootargs are defined to the
very same value in every device's DTS. Consolidate these definitions
in the SoC dtsi files and drop further redundant definitions elsewhere.

The only device without any bootargs set has been OpenMesh OM5P-AC V2.
This will now inherit the setting from qca955x.dtsi

While this is a cosmetic change, backporting it to 19.07 will be a
major help for anyone doing backports of device support. Without it,
every backporter would have to remember to manually add the chosen node
to the device's DTS.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 635f111148)
2020-06-28 14:24:59 +02:00
Adrian Schmutzler
153392e209 ath79: add support for TP-Link TL-WA801ND v3/v4
This ports support for these devices from ar71xx.

Specification:

- System-On-Chip: Qualcomm Atheros QCA9533
- CPU/Speed: v3: 560 MHz, v4: 650 MHz
- Flash: 4096 KiB
- RAM: 32 MiB
- Ethernet: 1 port @ 100M
- Wireless: SoC-integrated: QCA9533 2.4GHz 802.11bgn

In contrast to the implementation in ar71xx (reset and WiFi button),
the device actually features reset and WPS buttons.

Flashing instructions:

Upload the ...-factory.bin file via OEM web interface.

TFTP Recovery:

1. Set PC to fixed IP address 192.168.0.66
2. Download *-factory.bin image and rename it to
   wa801ndv3_tp_recovery.bin
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
   the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

TFTP recovery has only been tested with v3, and the Wiki states
that the procedure won't work for v4, which cannot be verified
or falsified at the moment.

Tested by Tim Ward (see forum):
https://forum.openwrt.org/t/ath79-support-for-tp-link-tl-wa901nd-v3-v4-v5/61246/13

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 9a477b833a)
2020-06-21 21:34:09 +02:00
Jo-Philipp Wich
6520659870 uclient: update to 19.07 Git HEAD
51e16eb uclient-fetch: add option to read POST data from file
99aebe3 uclient: Add string error function

Fixes: 0c910d8459 ("uclient: Update to version 2020-06-17")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-06-17 22:22:25 +02:00
Jo-Philipp Wich
b547542297 Revert "uclient: Update to version 2020-06-17"
This reverts commit 0c910d8459.

We cannot use uclient Git HEAD as-is on 19.07 due to an older
version of the ustream-ssl API.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-06-17 22:14:07 +02:00
Daniel Golle
0c910d8459 uclient: Update to version 2020-06-17
fef6d3d uclient: Add string error function
 af585db uclient-fetch: support specifying advertised TLS ciphers
 c660986 uclient-fetch: add option to read POST data from file

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry-squashed from commits 05145ffbef
                              98017228dd
                              dd166960f4
                              8e98613f4d)
2020-06-17 18:39:59 +01:00
Daniel González Cabanelas
18cf2383b6 bcm63xx: a226m-fwb: fix linux partition offset
The Pirelli A226M-FWB has a wrong linux partition offset, caused
by a copy-paste error. As of result of this, OpenWrt is currently
broken in this unit.

Fix it.

While at it, also use generic node names and fix the addresses
there as well.

Fixes: a27d59bb42 ("brcm63xx: switch to new partition layout
specification")

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
[also fix/update node names, extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit d64d5ed142)
2020-06-15 21:00:34 +02:00
Sven Eckelmann
b515edb775 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 https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.4.0-amd64-netinst.iso -O /dev/null
  ...
  Connecting to saimei.ftp.acc.umu.se (saimei.ftp.acc.umu.se)|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.

The whole problem can be avoided by disabling IPv6 TSO for this ethernet
MAC driver.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Acked-by: John Crispin <john@phrozen.org>
(backported from commit 6785695056, with
updated commit message)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2020-06-13 17:39:17 +02:00
Christian Lamparter
f7f15f8033 ath79: wndr3700 series: fix wifi range & throughput
This patch adds ar71xx's GPIO setup for the 2.4GHz and 5GHz antennae
demultiplexer:

| 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.

Notes:

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: <https://dev.archive.openwrt.org/ticket/6533.html>.

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 <hannu.nyman@iki.fi>
Debugged-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 61307544d1)
2020-06-09 22:46:21 +02:00
Christian Lamparter
1f5cbd6be7 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] <https://metadata.ftp-master.debian.org/changelogs//main/c/ca-certificates/ca-certificates_20200601_changelog>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit f611b014a7)
2020-06-09 22:46:13 +02:00
Daniel Golle
fa72f2646a 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 <daniel@makrotopia.org>
(cherry picked from commit fd0cc72d9c)
2020-06-09 16:53:51 +01:00
Lech Perczak
e752fc1ff9 ath79: add support for TP-Link TL-WR802N V1 and V2
Specification:
- SoC: Qualcomm Atheros QCA9533 (560 MHz, MIPS 24Kc)
- RAM: 32 MiB
- Storage: 4 MiB of Flash on board
- Wireless: Built into QCA9533 (Honey Bee), PHY modes b/g/n
- Ethernet: 1x100M (port0)

Installation through OEM Web Interface:
- Connect to TL-WR802N by Ethernet or Wi-Fi
- Go to web interface:
  [V1] http://192.168.0.1
  [V2] http://192.168.0.254
  Default user is "admin" & password is "admin".
  On V2, there is no DHCP server running by default, so remember to set
  IP manually.
- Go to "System Tools -> Firmware Upgrade"
- Browse for firmware:
  [V1] "*.factory.bin"
  [V2] "*.factory-us.bin" or  "*.factory-eu.bin" for eu model
  Web interface may complain if filename is too long. In such case,
  rename .bin to something shorter.
- Click upgrade

Installation through tftp:
Note: T_OUT, T_IN and GND on the board must be connected to USB TTL
      Serial Configuration 115200 8n1

- Boot the TL-WR802N
- When "Autobooting in 1 seconds" appears type "tpl" followed by enter
- Connect to the board Ethernet port
    (IPADDR: 192.168.1.1, ServerIP: 192.168.1.10)
- tftpboot 0x80000000 <Firmware Image Name>
- Record the result of "printenv bootcmd"
- Enter "erase <Result of 'printenv bootcmd'> +0x3c0000"
    (e.g erase 0x9f020000 +0x3c0000)
- Enter "cp.b 0x80000000 <Result of 'printenv bootcmd'> 0x3c0000"
    (e.g cp.b 0x80000000 0x9f020000 0x3c0000)
- Enter "bootm <Result of 'printenv bootcmd'>"
    (e.g bootm 0x9f020000)

Notes:

When porting from ar71xx target to ath79, I found out that on V2,
reset button is on GPIO12 and active low, instead of GPIO11 and
active high. By cross-flashing V1 firmware to V2, I confirmed
the same is true for V1.
Also according to manual of V1, this one also has green
LED instead of blue - both of those issues were fixed accordingly.

The MAC address assignment has been checked with OEM firmware.

Installation manual based on ar71xx support by Thomas Roberts

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
[slightly adjust commit message, add MAC address comment]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 7e513136c6)
2020-06-03 15:29:37 +02:00
Roger Pueyo Centelles
6488d2f7cc ath79: update WA/XC devices UBNT_VERSION to 8.5.3
Ubiquiti WA devices with newer hw version 2011K require UBNT_VERSION
to be at least 8.5.3, otherwise the image is rejected:

   New ver: WA.ar934x.v8.5.0-42.OpenWrt-r10947-65030d81f3
   Versions: New(525568) 8.5.0, Required(525571) 8.5.3
   Invalid version 'WA.ar934x.v8.5.0-42.OpenWrt-r10947-65030d81f3'

For consistency, also increase version number for XC devices.

Tested-by: Pedro <pedrowrt@cas.cat>
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(cherry picked from commit 95caa3436d)
2020-06-03 15:29:20 +02:00
Samantha Collard
fb79e5d9fe ipq806x: EA8500 fix boot partition detection
Remove extraneous code that disabled boot partition detection.

Fixes: b3770eaca3 ("mtd: base-files: Unify dual-firmware devices (Linksys)")
Signed-off-by: Samantha Collard <sammyrc34@gmail.com>
(cherry picked from commit 0f910a8c4c)
2020-06-03 15:29:03 +02:00
Adrian Schmutzler
e36bdd5dc5 ath79: fix LEDs for GL.inet GL-AR150
Since the wireless LED was used for boot and set up with a DT
trigger, the WiFi indication hasn't worked on ath79 at all.

In addition, a look into the manual revealed that the OEM
configuration is as follows:

LED 1 (green): power
LED 2 (green): configurable
LED 3 (red): wireless

So, let's just keep the WiFi trigger and convert the rest to its
"intended" use.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 705fe43522)
2020-06-03 15:28:50 +02:00
Lech Perczak
21454a772b ar71xx: fix reset key for TP-Link TL-WR802N V1/V2
During porting support for this router to ath79 target
it was discovered that GPIO mapping was incorrect (GPIO11 active high).
Correct mapping for both V1 and V2 is GPIO12 active low.

Default configuration from GPL source for V2 explicitly states this, and
this was confirmed experimentally on ath79 by looking on
/sys/kernel/debug/gpio. Correctness of this was also validated for V1 by
cross-flashing vendor firmware for V1 on V2 hardware, in which reset
button also worked.

Fix it.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
[slightly adjust commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit f841e70640)
2020-06-01 16:58:06 +02:00
John Crispin
a32b0ec4cf generic: fix flow table hw offload
Make the driver work with recent upstream changes.

Fixes: FS#2632
Ref: https://github.com/openwrt/openwrt/pull/2815
Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit 6786dc26a2)
2020-06-01 11:42:12 +02:00
David Bauer
9cafcbe0bd ar71xx: correct button type for TL-MR3020 mode slider
The TP-Link TL-MR3020 has a three-state mode slider which was previously
integrated as a button (EV_KEY). This led to spurious activations of
failsafe mode.

Set the type for the button to switch (EV_SW), to avoid unintended
activations of failsafe mode.

Related: commit 27f3f493de ("gpio-button-hotplug: unify polled and
interrupt code")

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit b017a016cc)
2020-05-31 15:54:52 +02:00
Adrian Schmutzler
2bd1cf92e9 ar71xx: fix splitting firmware partition for TL-WR902AC v1
The -O option for the tplink-v1-header was missing for the TP-Link
TL-WR902AC v1, while safeloader and MTDPARTS where set up with a
single firmware partition.

This led to bootloops after using sysupgrade.

Fixes: FS#3118

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a7b07f8ba8)
2020-05-30 00:36:59 +02:00
Jo-Philipp Wich
c963e4267b qos-scripts: fix interface resolving
Also ensure that the error message is actually printed to stderr and that
the rule generation is aborted if an interface cannot be resolved.

Ref: https://github.com/openwrt/luci/issues/3975
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 559b338466)
2020-05-29 10:37:13 +02:00
Jo-Philipp Wich
31de4a40e7 broadcom-wl: don't inherit lock descriptor in nas process
Add a local hack to prevent the Broadcom WPA authenticator process from
inheriting the lock descriptor 1000 used to prevent concurrent executions
of the init script.

Without this fix, repeated invocations of /etc/init.d/network, e.g. for
obtaining the enabled state, would hang forever.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit a03d6d2fab)
2020-05-28 13:08:51 +02:00
Matthias Schiffer
83b714a27f musl: fix locking synchronization bug
Import proposed upstream fix [2] for the critical locking
synchronization bug recently found in musl [1].

This affects all programs that are temporarily multithreaded, but then
return to single-threaded operation.

[1] https://www.openwall.com/lists/musl/2020/05/22/3
[2] https://www.openwall.com/lists/musl/2020/05/22/10

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
(cherry picked from commit 10c211031c)
2020-05-26 23:49:40 +02:00
Jo-Philipp Wich
f99b1d1d92 rpcd: update to latest openwrt-19.07 Git HEAD
67c8a3f uci: reset uci_ptr flags when merging options during section add
970ce1a session: deny access if password login is disabled

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-26 17:29:09 +02:00
Jo-Philipp Wich
92bd395b04 Revert "rpcd: update to latest Git HEAD"
This reverts commit adf5d753ef.

Reverting this commit because it relies on a changed libiwinfo API.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-26 17:23:38 +02:00
Jo-Philipp Wich
adf5d753ef rpcd: update to latest Git HEAD
078bb57 uci: reset uci_ptr flags when merging options during section add
3df62bc session: deny access if password login is disabled
efe51f4 iwinfo: add current hw and ht mode to info call

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-26 16:13:47 +02:00
Felix Fietkau
9b48375c7e libubox: update to the latest version
86818eaa976b blob: make blob_parse_untrusted more permissive
cf2e8eb485ab tests: add fuzzer seed file for crash in blob_len
c2fc622b771f blobmsg: fix length in blobmsg_check_array
639c29d19717 blobmsg: simplify and fix name length checks in blobmsg_check_name
66195aee5042 blobmsg: fix missing length checks

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit b371182d24)
2020-05-26 11:47:46 +02:00
Rafał Miłecki
a4e8eca03e libubox: update to the latest master
5e75160 blobmsg: fix attrs iteration in the blobmsg_check_array_len()
eeddf22 tests: runqueue: try to fix race on GitLab CI
89fb613 libubox: runqueue: fix use-after-free bug
1db3e7d libubox: runqueue fix comment in header
7c4ef0d tests: list: add test case for list_empty iterator

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit a765b063ee)
2020-05-26 11:47:46 +02:00
Petr Štetiar
498f1f4f5d ramips: gsw_mt7621: disable PORT 5 MAC RX/TX flow control by default
Looking at the current upstream driver implementation, it seems like the
TX/RX flow control is enabled only if the flow control pause option is
resolved from the device/link partner advertisements (or otherwise set).

On the other hand, our current in-tree driver force enables TX/RX
flow control by default, thus possibly leading to TX timeouts if the
other end sends pause frames (which are not properly handled?):

 WARNING: CPU: 3 PID: 0 at net/sched/sch_generic.c:320 dev_watchdog+0x1ac/0x324
 NETDEV WATCHDOG: eth0 (mtk_soc_eth): transmit queue 0 timed out

Disabling the flow control on PORT 5 MAC seems to fix this issues as the
pause frames are then filtered out. While at it, I'm removing the if
condition completely as suggested, since this code is run only on mt7621
SoC, so there is no need to check for the silicon revisions.

Ref: https://lists.openwrt.org/pipermail/openwrt-devel/2017-November/009882.html
Ref: https://forum.openwrt.org/t/mtk-soc-eth-watchdog-timeout-after-r11573/50000/12
Suggested-by: Felix Fietkau <nbd@nbd.name>
Reported-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit c8f8e59816)
2020-05-26 10:07:05 +01:00
Daniel Golle
d8d1956a80 hostapd: backport wolfssl bignum fixes
crypto_bignum_rand() use needless time-consuming filtering
which resulted in SAE no longer connecting within time limits.
Import fixes from hostap upstream to fix that.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 631c437a91)
2020-05-25 16:01:29 +01:00
Matthias Schiffer
ab7e9754df ucert: update to latest git HEAD
00b921d80ac0 Do not print line number in debug messages
96c42c5ed320 Fix length checks in cert_load()
fe06b4b836b3 usign-exec: improve usign -F output handling
19f9e1917e1b usign-exec: return code fixes
077feb5b5824 usign-exec: close writing end of pipe early in parent process
7ec4bb764e1e usign-exec: remove redundant return statements
5a738e549d31 usign-exec: change usign_f_* fingerprint argument to char[17]
112488bbbccc usign-exec: do not close stdin and stderr before exec
38dcb1a6f121 usign-exec: fix exec error handling
a9be4fb17df2 usign-exec: simplify usign execv calls
854d93e2326a Introduce read_file() helper, improve error reporting
afc86f352bf7 Fix return code of write_file()
fdff10852326 stdout/stderr improvements
dddb2aa8124d ci: fix unit test failures by enabling full ucert build
5f206bcfe5c2 ci: enable unit testing

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2020-05-24 17:04:48 +02:00
Jo-Philipp Wich
bc0c2db2a3 brcm47xx: disable Netgear WNR2000 v2 by default
Disable the Netgear WNR2000 v2 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
[drop change on netgear-wnr3500l-v1-na]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-05-24 14:42:33 +02:00
Hauke Mehrtens
059db419d7 squashfs: Fix compile with GCC 10
Fixes the following build error with GCC 10:
	/usr/bin/ld: read_fs.o:(.bss+0x0): multiple definition of `swap'; mksquashfs.o:(.bss+0x1b2a88): first defined here
And a compile warning.

Fixes: FS#3104, FS#3119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1bbc1aa884)
2020-05-24 14:40:49 +02:00
Matthias Schiffer
97b522a1f9 usign: update to latest git HEAD
f1f65026a941 Always pad fingerprints to 16 characters

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
(cherry picked from commit e35e40ad82)
2020-05-23 13:40:25 +02:00
Hauke Mehrtens
942262f9c8 usign: update to latest Git HEAD
f34a383 main: fix some resource leaks

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 81e93fff7d)
2020-05-23 13:40:15 +02:00
Adrian Schmutzler
6a89098935 ath79: add support for TP-Link TL-WA901ND v4 and v5
This ports support for the TL-WA901ND v4 and v5 from ar71xx to ath79.
They are similar to the TP9343-based TL-WR940N v3/v4 and TL-WR941ND v6.

Specifications:
  SoC: TP9343
  Flash/RAM: 4/32 MiB
  CPU: 750 MHz
  WiFi: 2.4 GHz b/g/n
  Ethernet: 1 port (100M)

Flashing instructions:
  Upload the factory image via the vendor firmware upgrade option.

Flash instruction (TFTP):
  1. Set PC to fixed ip address 192.168.0.66
  2. Download *-factory.bin image and rename it to * (see below)
  3. Start a tftp server with the image file in its root directory
  4. Turn off the router
  5. Press and hold Reset button
  6. Turn on router with the reset button pressed and wait ~15 seconds
  7. Release the reset button and after a short time
     the firmware should be transferred from the tftp server
  8. Wait ~30 second to complete recovery.

  * The image name for TFTP recovery is wa901ndv4_tp_recovery.bin for
  both variants.

In ar71xx, a MAC address with offset 1 was used for ethernet port.
That's probably wrong, but this commit sticks to it until we know
the correct value.

Like in ar71xx, this builds the default factory.bin with EU country
code.

Thanks to Leonardo Weiss for testing on the v5.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(backported from commit 4a61a88f90)
2020-05-20 21:06:48 +02:00
Adrian Schmutzler
a6f70f2e97 ath79: add support for TP-Link TL-WA701ND/730RE/801ND/901ND v1
This adds support for the various clones of the TL-WA830RE recently
supported in fb99ac6807 ("ath79: add support for TP-Link TL-WA830RE v1"):

- tplink,tl-wa701nd-v1
- tplink,tl-wa730re-v1
- tplink,tl-wa801nd-v1
- tplink,tl-wa830re-v1 (already supported)
- tplink,tl-wa901nd-v1

Since these devices are 100%-clones in ar71xx, this patch adds all
of them without run-testing (as this has been done for TL-WA830RE v1).

Specifications:
- SOC: Atheros AR7240
- CPU: 400MHz
- Flash: 4 MiB (Spansion S25FL032P)
- RAM: 32 MiB (Zentel A3S56D40FTP-G5)
- WLAN: Atheros AR9280 bgn 2x2
- Ethernet: 1 port (100M)

Flash instructions:
- install from u-boot with tftp (requires serial access)
  > setenv ipaddr a.b.c.d
  > setenv serverip e.f.g.h
  > tftpboot 0x80000000 \
      openwrt-ath79-tiny-tplink_tl-waxxxxx-v1-squashfs-factory.bin
  > erase 0x9f020000 +0x3c0000
  > cp.b 0x80000000 0x9f020000 0x3c0000
  > bootm 0x9f020000
- flash factory image from OEM WebUI
- sysupgrade from ar71xx image

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(backported from commit 2f1cc5c3d5)
2020-05-20 20:51:28 +02:00
Adrian Schmutzler
8c6c488e9e ath79: add support for TP-Link TL-WR940N v6
The TL-WR940N v6 is similar to v3/v4, it just has different
LEDs and MAC address assignment.

Specification:
- 750 MHz CPU
- 32 MB of RAM
- 4 MB of FLASH
- 2.4 GHz WiFi
- 4x 10/100 Mbps Ethernet

The use of LEDs is based on ar71xx, so blue LED is used for WAN
and orange LED for diag (boot/failsafe/etc.).

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to
   wr940nv6_tp_recovery.bin
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Thanks to Manuel Kock for reviewing and testing this patch.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Manuel Kock <github.web@manu.li>
(backported from commit fbd00bb8d4)
2020-05-20 20:47:05 +02:00
Christian Buschau
36d4140517 ath79: add support for TP-Link TL-WA830RE v1
This ports support for the TL-WA830RE v1 range extender from ar71xx to
ath79.

Specifications:
- SOC: Atheros AR7240
- CPU: 400MHz
- Flash: 4 MiB (Spansion S25FL032P)
- RAM: 32 MiB (Zentel A3S56D40FTP-G5)
- WLAN: Atheros AR9280 bgn 2x2
- Ethernet: 1 port (100M)

Flash instructions:
- install from u-boot with tftp (requires serial access)
  > setenv ipaddr a.b.c.d
  > setenv serverip e.f.g.h
  > tftpboot 0x80000000 \
      openwrt-ath79-tiny-tplink_tl-wa830re-v1-squashfs-factory.bin
  > erase 0x9f020000 +0x3c0000
  > cp.b 0x80000000 0x9f020000 0x3c0000
  > bootm 0x9f020000
- flash factory image from OEM WebUI
- sysupgrade from ar71xx image

The device seems to be a clone of the following devices not yet
added to ath79:
- tl-wa701nd-v1
- tl-wa730re-v1
- tl-wa801nd-v1
- tl-wa901nd-v1

Signed-off-by: Christian Buschau <christian.buschau@mailbox.org>
[make use of ar7240_tplink.dtsi, add note about clones]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit fb99ac6807)
2020-05-20 20:47:05 +02:00
Adrian Schmutzler
7187826b8b ath79: reorganize DTSI for ar7240 TP-Link devices
The current set of TP-Link devices with ar7240 SoC all share
the same DTSI file. As the latter is very similar to the
definition required for the to-be-supported TP-Link TL-WA devices
with ar7240, this patch splits the definitions into a shared part
for all TP-Link devices (ar7240_tplink.dtsi) and a file containing
the specific setup for the present TL-WR devices
(ar7240_tplink_tl-wr.dtsi), equivalent to the former
ar7240_tplink_tl-wr74xn-v1.dtsi.

While at it, remove unused firmware partition label and rename
pinmux_switch_led_pins.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 273e00c4a5)
2020-05-20 20:47:05 +02:00
Lim Guo Wei
d4092eac1f ath79: migrate TP-Link TL-MR3420v2 to ath79
Specifications:
- SoC: ar9341
- RAM: 32M
- Flash: 4M
- Ethernet: 5x FE ports
- WiFi: ar9341-wmac

Flash instruction:
Upload generated factory firmware on vendor's web interface.

This changes the key assignment compared to ar71xx support of this
device, since of the two keys on the device one is used as combined
Reset/WPS and the second one as WiFi on/off button.
Despite, the reset button required GPIO_ACTIVE_HIGH to work correctly.

Signed-off-by: Lim Guo Wei <limguowei@gmail.com>
[redo commit message]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(backported from commit e7ab1b5173)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-05-20 20:47:01 +02:00
Adrian Schmutzler
24cfd961d9 ath79: add support for TP9343-based TP-Link TL-WR94x devices
This adds support for several TP-Link devices based on TP9343
("a QCA9561 without PCIe and USB"):
- TL-WR940N v3
- TL-WR940N v4
- TL-WR941ND v6

The devices are only different concerning LEDs and MAC address
assignment.

All TL-WR940 are with non-detachable antennas (N), all
TL-WR941 devices are with detachable antennas (ND).

Specification:
- 750 MHz CPU
- 32 MB of RAM
- 4 MB of FLASH
- 2.4 GHz WiFi
- 4x 10/100 Mbps Ethernet

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to * (see below)
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

* TFTP image names:
940 v3: wr941ndv6_tp_recovery.bin
940 v4: wr940nv4_tp_recovery.bin
941 v6: wr941ndv6_tp_recovery.bin

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(backported picked from commit c02b9818a5)
2020-05-20 20:11:33 +02:00
Thibaut VARÈNE
7de43d66ff generic: platform/mikrotik: disambiguate SPDX-License-Identifier
I meant it to be GPL-2.0-only, as evidenced by the boilerplate.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
(cherry picked from commit 6934b20912)
2020-05-20 20:01:53 +02:00
Adrian Schmutzler
84154574c8 ramips: drop non-existant ralink,port-map for Ravpower WD03
The property "ralink,port-map" has been obsolete long before
this device was added, and the device is a one-port anyway.
Just remove it.

Fixes: 5ef79af4f8 ("ramips: add support for Ravpower WD03")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit c00b2df6c8)
2020-05-19 11:34:57 +02:00
Álvaro Fernández Rojas
af667c73c5 bcm63xx: mask interrupts on init
Fixes BCM6348/BCM6358 hangs while booting:
https://bugs.openwrt.org/index.php?do=details&task_id=2202

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 13c33f3f12)
2020-05-18 09:51:18 +02:00
Daniel Gonzalez Cabanelas
d1ce73677c bcm63xx: periph_intc: report effective affinity
The bcm6345-periph-intc driver only targets a single CPU at a time, even
if the notional affinity is wider. Let's inform the core code about this.

This patch gets rid of the kernel message:
"genirq: irq_chip bcm6345-periph-intc did not update eff. affinity mask
of irq 52"

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit e04ff3c7cc)
2020-05-18 09:51:18 +02:00
Álvaro Fernández Rojas
1d40c8a9f2 bcm63xx: ext_intc: fix warning
In file included from ./arch/mips/include/asm/io.h:34,
                 from ./arch/mips/include/asm/mmiowb.h:5,
                 from ./include/linux/spinlock.h:60,
                 from ./include/linux/irq.h:14,
                 from drivers/irqchip/irq-bcm6345-ext.c:10:
drivers/irqchip/irq-bcm6345-ext.c: In function 'bcm6345_ext_intc_of_init':
./arch/mips/include/asm/mach-bcm63xx/ioremap.h:48:9: warning: 'base' may be used uninitialized in this function [-Wmaybe-uninitialized]
  return is_bcm63xx_internal_registers((unsigned long)addr);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/irqchip/irq-bcm6345-ext.c:255:16: note: 'base' was declared here
  void __iomem *base;
                ^~~~

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 29c3bb5f41)
2020-05-18 09:51:18 +02:00
Álvaro Fernández Rojas
65f2fae911 bcm63xx: periph_intc: fix warning
drivers/irqchip/irq-bcm6345-periph.c: In function 'bcm6345_periph_irq_handle':
drivers/irqchip/irq-bcm6345-periph.c:55:21: warning: 'block' may be used uninitialized in this function [-Wmaybe-uninitialized]
  struct intc_block *block;
                     ^~~~~

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit f2f2cf07a6)
2020-05-18 09:51:18 +02:00
Álvaro Fernández Rojas
b2c9f82eb4 bcm63xx: redboot: fix warning
drivers/mtd/parsers/redboot.c: In function 'parse_redboot_partitions':
drivers/mtd/parsers/redboot.c:194:59: warning: suggest parentheses around '-' in operand of '&' [-Wparentheses]
     fis_origin = (buf[i].flash_base & (master->size << 1) - 1);
                                       ~~~~~~~~~~~~~~~~~~~~^~~

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit f314cbe54b)
2020-05-18 09:51:18 +02:00
Álvaro Fernández Rojas
a2a3ac9f51 bcm63xx: bcm6362: fix pinctrl bug
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit ee6bf7e865)
2020-05-18 09:51:18 +02:00
Álvaro Fernández Rojas
6c96ecf3b4 bcm63xx: refresh kernel config
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2020-05-18 09:51:18 +02:00
Hauke Mehrtens
c3e3802a8e OpenWrt v19.07.3: revert to branch defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-05-16 20:40:11 +02:00
Hauke Mehrtens
f3f38f40da OpenWrt v19.07.3: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-05-16 20:39:58 +02:00
Thibaut VARÈNE
85e04e9f46 generic: platform/mikrotik: fix LZOR support
31e99fe3da which introduced this code was unfortunately untested.
This commit fixes a number of issues and works around the fact that in
this particular scheme, the LZO payload may be padded at the end which
will trigger a harmless lzo decompression error.
This commit also disambiguates the debug printks.

Tested-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Fixes: 31e99fe3da ("generic: platform/mikrotik: support LZOR encoding")
(cherry picked from commit 2ea481193c)
2020-05-16 20:32:20 +02:00
Robert Marko
4cd9ae41c5 libjson-c: backport security fixes
This backports upstream fixes for the out of bounds write vulnerability in json-c.
It was reported and patches in this upstream PR: https://github.com/json-c/json-c/pull/592

Addresses CVE-2020-12762

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
[bump PKG_RELEASE, rebase patches on top of json-c 0.12]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(backported from commit bc0288b768)
2020-05-13 11:45:15 +02:00
Adrian Schmutzler
6ffd4d8a4d ar71xx: remove hard-coded folder name from Mikrotik RB upgrade
So far, specifying "BOARD_NAME := routerboard" is required by the
upgrade code of Mikrotik NAND devices, as "sysupgrade-routerboard"
is hardcoded in platform_do_upgrade_mikrotik_rb().

This patch replaces the latter with a grep for the name like it
is already done in nand_upgrade_tar() in /lib/upgrade/nand.sh.

This should enable upgrades from ar71xx to ath79 without setting
BOARD_NAME for the latter.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(backported from commit 281785d74f)
2020-05-12 17:48:02 +02:00
Daniel Golle
d2ee15ef76 fstools: blockd: fix segfault triggered by non-autofs mounts
Program received signal SIGSEGV, Segmentation fault.
main_autofs (argv=<optimized out>, argc=<optimized out>)
    at fstools-2020-05-06-eec16e2f/block.c:1193
1193:    if (!m->autofs && (mp = find_mount_point(pr->dev))) {

Fixes: 3b9e4d6d4c ("fstools: update to the latest version")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit b181294b02)
2020-05-12 13:24:23 +02:00
Thibaut VARÈNE
4cd44e5dc7 ar71xx: mikrotik: mach-rbspi.c remove wlan id
Following on the previous commit, this patch removes useless id argument
from rbspi_wlan_init().

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Thibaut VARÈNE
3fecb06fb1 ar71xx: mikrotik: bypass id check in __rb_get_wlan_data()
The id parameter in __rb_get_wlan_data() was incorrectly used on the
assumption that id "0" would always be tied to ath9k with RLE encoding
and positive id (in fact, only id "1" was valid) would always be tied to
("external") ath10k with LZO encoding.

Newer hardware revisions of supported devices prove this assumption to
be invalid, with ath9k caldata being now wrapped in MAGIC_ERD and LZO
compressed, so disable this check to allow newer hardware to correctly
decode caldata for ath9k. Since ath10k caldata is no longer pulled from
this implementation, this commit also disables the publication in sysfs
to avoid wasting memory.

Note: this patch assumes that ath9k caldata is never stored with the new
"LZOR" encoding scheme found on some ath10k devices.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Thibaut VARÈNE
b36aa168d8 ar71xx: mikrotik: ath10k: use new sysfs driver
Fetch ath10k calibration data from backported mikrotik sysfs driver
which supports the newer "LZOR" encoding.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Thibaut VARÈNE
fa2369e59b generic: platform/mikrotik: support LZOR encoding
Some newer MikroTik RouterBOARD devices use a new encoding scheme
for their WLAN calibration data. This patch provides support for
decoding this new scheme.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Thibaut VARÈNE
612b64e6c4 ar71xx: enable mikrotik platform driver
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Thibaut VARÈNE
511859de9b generic: mikrotik platform build bits
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Thibaut VARÈNE
ddae86cc69 generic: routerboot sysfs platform driver
This driver exposes the data encoded in the "hard_config" flash segment
of MikroTik RouterBOARDs devices. It presents the data in a sysfs folder
named "hard_config". The WLAN calibration data is available on demand via
the 'wlan_data' sysfs file in that folder.

This driver permanently allocates a chunk of RAM as large as the
"hard_config" MTD partition (typically 4KB), although it is technically
possible to operate entirely from the MTD device without using a local
buffer (except when requesting WLAN calibration data), at the cost of a
performance penalty.

This driver does not reuse any of the existing code previously found in
routerboot.c.

This driver has been successfully tested on BE (ath79) and LE (ipq40xx
and ramips) hardware.

Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Tested-by: Baptiste Jonglez <git@bitsofnetworks.org>
Tested-by: Tobias Schramm <t.schramm@manjaro.org>
Tested-by: Christopher Hill <ch6574@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2020-05-12 12:43:38 +02:00
Koen Vandeputte
2efcfb1d1a kernel: bump 4.14 to 4.14.180
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-05-12 12:43:38 +02:00
Lech Perczak
ecea10f2b9 ath79: dts: add missing 'serial0' alias for TP-Link TL-MR3040v2
Out of all devices currently supported based on AR9331 chipset,
this one had the 'serial0' alias missing. Add it to fix setting of
/dev/console and login shell on the onboard UART.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
(cherry picked from commit 94f3449977)
2020-05-11 11:17:59 +02:00
Hauke Mehrtens
a8c92e9eda opkg: Fix PKG_MIRROR_HASH
Fixes: c61fbdd087 ("odhcpd: fix PKG_SOURCE_DATE")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-05-08 20:35:50 +02:00
DENG Qingfang
844b892a74 ath10k-firmware: fix mirror hash
Fix PKG_MIRROR_HASH hash mismatch.

Fixes: 641a93f0f2 ("ath10k-firmware: update wave 1 firmware to 10.2.4-1.0-00047")
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
[added missing commit description]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 2d758129ca)
2020-05-08 19:57:28 +02:00
Jo-Philipp Wich
7e9d84ee4a opkg: update to latest Git HEAD
f2166a8 libopkg: implement lightweight package listing logic
cf4554d libopkg: support passing callbacks to feed parsing functions
2a0210f opkg-cl: don't read feeds on opkg update
b6f1967 libopkg: use xsystem() to spawn opkg-key
60b9af2 file_util.c: refactor and fix checksum_hex2bin()
206ebae file_util.c: fix possible bad memory access in file_read_line_alloc()

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 79da9d78b9)
2020-05-07 22:55:05 +02:00
Jason A. Donenfeld
81f3f6540e wireguard: bump to 1.0.20200506
* compat: timeconst.h is a generated artifact

Before we were trying to check for timeconst.h by looking in the kernel
source directory. This isn't quite correct on configurations in which
the object directory is separate from the kernel source directory, for
example when using O="elsewhere" as a make option when building the
kernel. The correct fix is to use $(CURDIR), which should point to
where we want.

* compat: use bash instead of bc for HZ-->USEC calculation

This should make packaging somewhat easier, as bash is generally already
available (at least for dkms), whereas bc isn't provided by distros by
default in their build meta packages.

* socket: remove errant restriction on looping to self

It's already possible to create two different interfaces and loop
packets between them. This has always been possible with tunnels in the
kernel, and isn't specific to wireguard. Therefore, the networking stack
already needs to deal with that. At the very least, the packet winds up
exceeding the MTU and is discarded at that point. So, since this is
already something that happens, there's no need to forbid the not very
exceptional case of routing a packet back to the same interface; this
loop is no different than others, and we shouldn't special case it, but
rather rely on generic handling of loops in general. This also makes it
easier to do interesting things with wireguard such as onion routing.
At the same time, we add a selftest for this, ensuring that both onion
routing works and infinite routing loops do not crash the kernel. We
also add a test case for wireguard interfaces nesting packets and
sending traffic between each other, as well as the loop in this case
too. We make sure to send some throughput-heavy traffic for this use
case, to stress out any possible recursion issues with the locks around
workqueues.

* send: cond_resched() when processing tx ringbuffers

Users with pathological hardware reported CPU stalls on CONFIG_
PREEMPT_VOLUNTARY=y, because the ringbuffers would stay full, meaning
these workers would never terminate. That turned out not to be okay on
systems without forced preemption. This commit adds a cond_resched() to
the bottom of each loop iteration, so that these workers don't hog the
core. We don't do this on encryption/decryption because the compat
module here uses simd_relax, which already includes a call to schedule
in preempt_enable.

* selftests: initalize ipv6 members to NULL to squelch clang warning

This fixes a worthless warning from clang.

* send/receive: use explicit unlikely branch instead of implicit coalescing

Some code readibility cleanups.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
(cherry picked from commit 4f6343ffe7)
2020-05-07 13:50:33 +02:00
Jason A. Donenfeld
b956f6bd13 wireguard: bump to 20191226
As announced on the mailing list, WireGuard will be in Linux 5.6. As a
result, the wg(8) tool, used by OpenWRT in the same manner as ip(8), is
moving to its own wireguard-tools repo. Meanwhile, the out-of-tree
kernel module for kernels 3.10 - 5.5 moved to its own wireguard-linux-
compat repo. Yesterday, releases were cut out of these repos, so this
commit bumps packages to match. Since wg(8) and the compat kernel module
are versioned and released separately, we create a wireguard-tools
Makefile to contain the source for the new tools repo. Later, when
OpenWRT moves permanently to Linux 5.6, we'll drop the original module
package, leaving only the tools. So this commit shuffles the build
definition around a bit but is basically the same idea as before.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
(cherry picked from commit ea980fb9c6)
2020-05-07 13:49:49 +02:00
Hans Dedecker
c61fbdd087 odhcpd: fix PKG_SOURCE_DATE
Fixes: 5e8b50da15 (odhcpd : fix lan host reachibility due to identical RIO and PIO prefixes (FS#3056))

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2020-05-07 08:02:06 +02:00
Hans Dedecker
5e8b50da15 odhcpd: fix lan host reachibility due to identical RIO and PIO prefixes (FS#3056)
49e4949 router: fix Lan host reachibility due to identical RIO and PIO prefixes (FS#3056)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2020-05-06 21:22:10 +02:00
Jo-Philipp Wich
ac5d5d8d09 ustream-ssl: update to 19.07 Git HEAD
40b563b ustream-openssl: clear error stack before SSL_read/SSL_write
30cebb4 ustream-ssl: mbedtls: fix ssl client verification
77de09f ustream-ssl: mbedtls: fix net_sockets.h include warning

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-06 20:24:38 +02:00
Jo-Philipp Wich
a6caa8fad1 uhttpd: update to 19.07 Git HEAD
975dce2 client: allow keep-alive for POST requests
d062f85 file: poke ustream after starting deferred program

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-06 20:24:38 +02:00
Rafał Miłecki
3b9e4d6d4c fstools: update to the latest version
eec16e2 blockd: add optional "device" parameter to "info" ubus method
9ab936d block(d): always call hotplug.d "mount" scripts from blockd
4963db4 blockd: use uloop_process for calling /sbin/hotplug-call mount
cddd902 Truncate FAT filesystem label until 1st occurance of a blank (0x20)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit c3a43753b9)
2020-05-06 17:51:38 +02:00
Chuanhong Guo
d9244a1b5b generic: ar8216: fix unknown packet flooding for ar8229/ar8236
ar8229 and ar8236 don't allow unknown unicast/multicast frames and
broadcast frames to be flooded to cpu port. This isn't desired behavior
for swconfig as we treat it as a standalone switch.
Current code doesn't enable unicast frame flooding for ar8229 and uses
wrong setup for ar8236. This commit fixes both of them by enabling port
0 flooding for all unknown frames.

Fixes: FS#2848
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit 47f17b0662)
2020-05-06 09:06:17 +08:00
Jo-Philipp Wich
429e4490c4 libpcap: fix library packaging issues
Workaround a bug in patches/100-debian_shared_lib.patch - it attemptss to
extract the library major version from debian/changelog which does not exist
in the vanilla upstream tarball.

Create a fake changelog file for now to satisfy the version extraction
routine until we get around to properly augment the patch.

Fixes: FS#2970
Fixes: 96ee7c8bfd ("libpcap: Update shared-lib patch from Debian to fix linking problems")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-05-06 00:51:35 +02:00
Petr Štetiar
e678cb1595 kernel: bump 4.14 to 4.14.179
Runtime-tested on: qemu-x86-64
Compile-tested on: x86/64

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-05-05 22:08:01 +02:00
Rafał Miłecki
8fa4ed9ef7 fstools: update to the latest version
8b9e601 block: always use st_dev (device ID) of / when looking for root
37c9148 block: simplify check_extroot() a bit
d70774d block: add some basic extroot documentation
32db27d Revert "block: support hierarchical mount/umount"
0b93429 Revert "block: mount_action: handle mount/umount deps"

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 9295ce7006)
2020-05-05 13:07:40 +02:00
Felix Fietkau
5c6dfb5bc0 fstools: update to the latest version
84965b92f635 blockd: print symlink error code and string message
62c578c22f9d blockd: report "target" path as "mount" for autofs available mounts
d1f1f2b38fa1 block: remove mount target file if it's a link
830441d790d6 blockd: remove symlink linkpath file if it's a dir or link
c80f7002114f libfstools/mtd: attempt to read from OOB data if empty space is found

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit b7d6e80fee)
2020-05-05 13:07:40 +02:00
Hauke Mehrtens
607809dcdc mac80211: Update to version 4.19.120
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-05-05 00:05:28 +02:00
Paul Spooren
96d280cc37 scripts/download: add sources CDN as first mirror
OpenWrt now has a CDN for sources at sources.cdn.openwrt.org which
mirrors sources.openwrt.org.

Downloading sources outside Europe or US (mainland) could
result in low throughput, extremely slowing down the first compilation of
the build system.

This patch adds sources.cdn.openwrt.org as the first mirror to offer
worldwide fast download speeds by default. If the CDN goes down for
whatever reason, the script jumps to the next available mirror and
downloads requested files as before (in regional varying speed).

Signed-off-by: Paul Spooren <mail@aparcar.org>
Acked-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit c737a9ee6a)
2020-05-05 00:05:28 +02:00
Hauke Mehrtens
55ccb04046 upgs: Remove extra _DEFAULT_SOURCE definition
This extra _DEFAULT_SOURCE definition results in a double definition
which is a compile error.

This fixes the following compile error with glibc:
----------------------------------------------------------------------
ugps-2019-06-25-cd7eabcd/nmea.c:19: error: "_DEFAULT_SOURCE" redefined [-Werror]
 #define _DEFAULT_SOURCE

<command-line>: note: this is the location of the previous definition
cc1: all warnings being treated as errors

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 70a962ca6f)
2020-05-05 00:05:28 +02:00
Hauke Mehrtens
ee480c50c1 dante: Fix compile with glibc
When compiled with glibc the config_scan.c wants to use the
cpupolicy2numeric() function which is only available when
HAVE_SCHED_SETSCHEDULER is set. It looks like the wrong define was used here.

This fixes a build problem with glibc in combination with the force
ac_cv_func_sched_setscheduler=no in the OpenWrt CONFIGURE_VARS.

This fixes the following compile error with glibc:
----------------------------------------------------------------------
/bin/ld: config_scan.o: in function `socks_yylex':
dante-1.4.1/sockd/config_scan.l:461: undefined reference to `cpupolicy2numeric'
collect2: error: ld returned 1 exit status
make[5]: *** [Makefile:522: sockd] Error 1

Fixes: aaf46a8fe2 ("dante: disable sched_getscheduler() - not implemented in musl")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ce1798e915)
2020-05-05 00:05:28 +02:00
Yangbo Lu
5f0e25d966 perf: build with NO_LIBCAP=1
Build with NO_LIBCAP=1. This is to resolve build issue.

Package perf is missing dependencies for the following libraries:
libcap.so.2

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
(cherry picked from commit 80f128d2aa)
2020-05-05 00:05:28 +02:00
Linus Lüssing
005adba939 mac80211: ath10k: increase rx buffer size to 2048
Before, only frames with a maximum size of 1528 bytes could be
transmitted between two 802.11s nodes.

For batman-adv for instance, which adds its own header to each frame,
we typically need an MTU of at least 1532 bytes to be able to transmit
without fragmentation.

This patch now increases the maxmimum frame size from 1528 to 1656
bytes.

Tested with two ath10k devices in 802.11s mode, as well as with
batman-adv on top of 802.11s with forwarding disabled.

Fix originally found and developed by Ben Greear.

Link: https://github.com/greearb/ath10k-ct/issues/89
Link: 9e5ab25027
Cc: Ben Greear <greearb@candelatech.com>
Signed-off-by: Linus Lüssing <ll@simonwunderlich.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
(cherry picked from commit 066ec97167)
2020-05-05 00:05:26 +02:00
Matt Merhar
0974d59b5f kernel: backport fix for non-regular inodes on f2fs
Upstream commit dda9f4b9ca ("f2fs: fix to skip verifying block address
for non-regular inode").

On 4.14, attempting to perform operations on a non-regular inode
residing on an f2fs filesystem, such rm-ing a device node, would fail
and lead to a warning / call trace in dmesg. This fix was already
applied to other kernels upstream - including 4.19, from which the patch
was taken.

More info at https://bugzilla.kernel.org/show_bug.cgi?id=202495.

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
(cherry picked from commit ee500186a5)
2020-05-04 22:40:41 +02:00
Adrian Schmutzler
f40947a8c0 ath79: indicate boot/failsafe/upgrade for NanoBeam/Nanostation AC
Like for Ubiquiti PowerBeam 5AC Gen2, the highest RSSI LED can
be exploited to indicate boot/failsafe/upgrade for the NanoBeam AC
and Nanostation AC as well.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 80a094aaf3)
2020-05-04 21:31:04 +02:00
Adrian Schmutzler
65cf72d5d2 ath79: add SUPPORTED_DEVICES based on ar71xx for some devices
This adds some still-missing board names for old TP-Link devices
to ath79 SUPPORTED_DEVICES.

Fixes: FS#3017

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 522f6b7eee)
2020-05-04 21:25:38 +02:00
Petr Štetiar
f9ef0c5705 kernel: bump 4.14 to 4.14.178
Refreshed all patches and removed upstreamed:

 oxnas/001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch
 oxnas/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch

Fixes: CVE-2020-12114 and CVE-2020-11669

Runtime-tested on: qemu-x86-64
Compile-tested on: ath79/generic, x86/64, imx6

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-05-04 21:05:21 +02:00
Antonio Quartulli
2df0ea042d wpad-wolfssl: fix crypto_bignum_sub()
Backport patch from hostapd.git master that fixes copy/paste error in
crypto_bignum_sub() in crypto_wolfssl.c.

This missing fix was discovered while testing SAE over a mesh interface.

With this fix applied and wolfssl >3.14.4 mesh+SAE works fine with
wpad-mesh-wolfssl.

Cc: Sean Parkinson <sean@wolfssl.com>
Signed-off-by: Antonio Quartulli <a@unstable.cc>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 4b3b8ec81c)
2020-05-01 16:19:47 +01:00
Felix Fietkau
ec6cb33452 mac80211: backport fix for an no-ack tx status issue
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Tested-by: Jérôme Benoit <jerome.benoit@piment-noir.org> [WRT1900AC v1]
[added missing package version bump]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit e0ab33ea49)
2020-05-01 11:12:31 +02:00
Felix Fietkau
f141cdd200 hostapd: unconditionally enable ap/mesh for wpa-cli
Without this change, wpa-cli features depend on which wpad build variant was
used to build the wpa-cli package

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Tested-by: Jérôme Benoit <jerome.benoit@piment-noir.org> [WRT1900AC v1]
[added missing package version bump]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 03e9e4ba9e)
2020-05-01 11:12:31 +02:00
Petr Štetiar
54b6683390 wireless-regdb: backport three upstream fixes
Another release is overdue for quite some time, so I'm backporting three
fixes from upstream which I plan to backport into 19.07 as well.

Ref: FS#2880
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 76a0ddf130)
2020-05-01 11:12:31 +02:00
Petr Štetiar
55591e63bc curl: backport fix for CVE-2019-15601
On Windows, refuse paths that start with \\ ... as that might cause an
unexpected SMB connection to a given host name.

Ref: PR#2730
Ref: https://curl.haxx.se/docs/CVE-2019-15601.html
Suggested-by: Jerome Benoit <jerome.benoit@sap.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-05-01 11:12:31 +02:00
Pawel Dembicki
35ea808b97 uboot-kirkwood: fix ethernet and usb
Before 2019.01 version was introduced patch, which changes cache
routines: 93b283d4 ("ARM: CPU: arm926ejs: Consolidate cache
routines to common file"). Unfortunately that patch make ethernet
and usb in kirkwood broken.

This patch backport commit 599f7aa5 ("ARM: kirkwood: disable dcache
for Kirkwood boards"), which are fix for that problem.

Fixes: dc08514e6d ("uboot-kirkwood: update to 2019.01")

Run tested: pogoplugv4

Tested-by: Cezary Jackiewicz <cezary@eko.one.pl> [nsa310]
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2020-05-01 11:12:31 +02:00
Chuanhong Guo
5feb0df9bb ramips: remove memory node for ZBT MT7621 devices
It's known that ZBT sells 256M variants of these routers. As a result,
our images won't be able to boot on these routers.
This commit removes memory node for them. With previously backported
memory detection patch, kernel is able to detect memory size itself.

Fixes: FS#3053
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2020-04-28 11:02:56 +08:00
Sungbo Eo
b80a98ae7f ramips: remove unnecessary DEVICE_PACKAGES for Belkin F7C027
kmod-usb-dwc2 and kmod-usb-ledtrig-usbport are not target default packages, and
Belkin F7C027 does not have a USB port anyway. Just drop it.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 1dedad2a00)
2020-04-27 22:38:47 +02:00
Sungbo Eo
bfe652c5bd oxnas: move service file to correct place
This service file has been misplaced from the very beginning.

Fixes: dcc34574ef ("oxnas: bring in new oxnas target")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 01961f163d)
2020-04-27 22:38:34 +02:00
Kevin Darbyshire-Bryant
5b4e4a38d8 relayd: bump to version 2020-04-25
f4d759b dhcp.c: further improve validation

Further improve input validation for CVE-2020-11752

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 9e7d11f3e2)
2020-04-27 10:58:16 +01:00
Kevin Darbyshire-Bryant
4e5a29827f umdns: update to version 2020-04-25
cdac046 dns.c: fix input validation fix

Due to a slight foobar typo, failing to de-reference a pointer, previous
fix not quite as complete as it should have been.

Improve CVE-2020-11750 fix

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 9f7c8ed078)
2020-04-27 10:58:15 +01:00
Henrique de Moraes Holschuh
c2efc973d5 dnsmasq: fix dnssec+ntp chicken-and-egg workaround (FS#2574)
Fix the test for an enabled sysntp initscript in dnsmasq.init, and get
rid of "test -o" while at it.

Issue reproduced on openwrt-19.07 with the help of pool.ntp.br and an
RTC-less ath79 router.  dnssec-no-timecheck would be clearly missing
from /var/etc/dnsmasq.conf.* while the router was still a few days in
the past due to non-working DNSSEC + DNS-based NTP server config.

The fix was tested with the router in the "DNSSEC broken state": it
properly started dnsmasq in dnssec-no-timecheck mode, and eventually ntp
was able to resolve the server name to an IP address, and set the system
time.  DNSSEC was then enabled by SIGINT through the ntp hotplug hook,
as expected.

A missing system.ntp.enabled UCI node is required for the bug to show
up.  The reasons for why it would be missing in the first place were not
investigated.

Signed-off-by: Henrique de Moraes Holschuh <henrique@nic.br>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
(cherry picked from commit 556b8581a1)
2020-04-25 20:51:46 +02:00
Petr Štetiar
6c020577ae libpcap: fix build breakage with very high number of simultaneous jobs
Building libpcap with high number (64) of simultaneous jobs fails:

 In file included from ./fmtutils.c:42:0:
 ./ftmacros.h:106:0: warning: "_BSD_SOURCE" redefined
   #define _BSD_SOURCE

 <command-line>:0:0: note: this is the location of the previous definition
 ./gencode.c:67:10: fatal error: grammar.h: No such file or directory
  #include "grammar.h"
           ^~~~~~~~~~~
 compilation terminated.
 Makefile:99: recipe for target 'gencode_pic.o' failed

So fix this by less intrusive way by disabling the parallel builds for
this package.

Ref: FS#3010
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-04-25 13:59:19 +02:00
Petr Štetiar
efe837de84 openssl: bump to 1.1.1g
Fixes NULL dereference in SSL_check_chain() for TLS 1.3, marked with
high severity, assigned CVE-2020-1967.

Ref: https://www.openssl.org/news/secadv/20200421.txt
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 3773ae127a)
2020-04-21 23:05:20 +02:00
Kevin Darbyshire-Bryant
1df49d98e7 relayd: bump to version 2020-04-20
796da66 dhcp.c: improve input validation & length checks

Addresses CVE-2020-11752

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit be172e663f)
2020-04-20 11:34:43 +01:00
Kevin Darbyshire-Bryant
b71c7c261b umdns: update to version 2020-04-20
e74a3f9 dns.c: improve input validation

Addresses CVE-2020-11750

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 533da61ac6)
2020-04-20 11:34:13 +01:00
Kevin Darbyshire-Bryant
b6d8119c53 umdns: update to the version 2020-04-05
ab7a39a umdns: fix unused error
45c4953 dns: explicitly endian-convert all fields in header and question

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 22ae8bd50e)
(cherry picked from commit 17c4593e63f5847868f2c38185275199d37d379a)
2020-04-20 11:34:13 +01:00
Kevin Darbyshire-Bryant
ef3df27507 umdns: suppress address-of-packed-member warning
gcc 8 & 9 appear to be more picky with regards access alignment to
packed structures, leading to this warning in dns.c:

dns.c:261:2: error: converting a packed ‘struct dns_question’ pointer
(alignment 1) to a ‘uint16_t’ {aka ‘short unsigned int’} pointer
(alignment 2) may result in an unaligned pointer value
[-Werror=address-of-packed-member]

261 |  uint16_t *swap = (uint16_t *) q;

Work around what I think is a false positive by turning the warning off.
Not ideal, but not quite as not ideal as build failure.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 02640f0147)
(cherry picked from commit a10b6ec1c8cd6d14a3b76a2ec3d81442b85f7321)
2020-04-20 11:34:13 +01:00
Hans Dedecker
55312cc202 binutils: add ALTERNATIVES for strings (FS#3001)
Don't move strings anymore to /bin/strings to avoid clash with
busybox /usr/bin/strings but move it to /usr/bin/binutils-strings.
Use ALTERNATIVES support to install it as /usr/bin/strings

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 5f126c541a)
2020-04-18 13:12:42 +02:00
Magnus Kroken
3b6f079d8d mbedtls: update to 2.16.6
Security fixes for:
* CVE-2020-10932
* a potentially remotely exploitable buffer overread in a DTLS client
* bug in DTLS handling of new associations with the same parameters

Full release announement:
https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.6-and-2.7.15-released

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
(cherry picked from commit 02fcbe2f3d)
2020-04-18 00:18:13 +02:00
Tomasz Maciej Nowak
67ed408af2 mvebu: cortexa9: correct cpu subtype
Armada 370  processors have only 16 double-precision registers. The
change introduced by 8dcc108760 ("toolchain: ARM: Fix toolchain
compilation for gcc 8.x") switched accidentally the toolchain for mvebu
cortexa9 subtarget to cpu type with 32 double-precision registers. This
stems from gcc defaults which assume "vfpv3-d32" if only "vfpv3" as mfpu
is specified. That change resulted in unusable image, in which kernel
will kill userspace as soon as it causing "Illegal instruction".

Ref: https://forum.openwrt.org/t/gcc-was-broken-on-mvebu-armada-370-device-after-commit-on-2019-03-25/43272
Fixes: 8dcc108760 ("toolchain: ARM: Fix toolchain compilation for
gcc 8.x")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
(cherry picked from commit 2d61f8821c)
2020-04-18 00:18:13 +02:00
Tomasz Maciej Nowak
dee8fcfe9f tegra: correct cpu subtype
Tegra 2 processors have only 16 double-precision registers. The change
introduced by 8dcc108760 ("toolchain: ARM: Fix toolchain compilation
for gcc 8.x") switched accidentally the toolchain for tegra target to cpu
type with 32 double-precision registers. This stems from gcc defaults
which assume "vfpv3-d32" if only "vfpv3" as mfpu is specified. That
change resulted in unusable image, in which kernel will kill userspace as
soon as it causing "Illegal instruction".

Ref: https://forum.openwrt.org/t/gcc-was-broken-on-mvebu-armada-370-device-after-commit-on-2019-03-25/43272
Fixes: 8dcc108760 ("toolchain: ARM: Fix toolchain compilation for
gcc 8.x")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
(cherry picked from commit 43d1d88510)
2020-04-18 00:18:13 +02:00
Joel Johnson
d8e0b015e8 mvebu: backport ClearFog SPI enablement
Backport Device Tree change first added in kernel 4.19 to enable the SPI
device on ClearFog devices by default. This is tested and working in
snapshot builds with kernel 5.4+, include the change in future 19.07
patch releases.

Signed-off-by: Joel Johnson <mrjoel@lixil.net>
2020-04-18 00:18:13 +02:00
Koen Vandeputte
0232f57e1a kernel: bump 4.14 to 4.14.176
Refreshed all patches.

Remove upstreamed:
- 0001-net-thunderx-workaround-BGX-TX-Underflow-issue.patch
- 600-ipv6-addrconf-call-ipv6_mc_up-for-non-Ethernet-inter.patch
- 003-ARM-dts-oxnas-Fix-clear-mask-property.patch

Fixes:
- CVE-2020-8647
- CVE-2020-8648 (potentially)
- CVE-2020-8649

Compile-tested on: cns3xxx, octeontx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-04-16 13:23:52 +02:00
Adrian Schmutzler
286c407c3d ath79: add SUPPORTED_DEVICES for TP-Link TL-WA901ND v2
This adds the board name from ar71xx to support upgrade without
-F for the TP-Link TL-WA901ND v2.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 508462a399)
2020-04-15 13:02:05 +02:00
Josef Schlehofer
02c6deab8c mbedtls: update to version 2.16.5
Changelog:
https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.5-and-2.7.14-released

Security advisory:
https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2020-02

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit 36af1967f5)
2020-04-13 21:14:29 +02:00
Adrian Schmutzler
01b624e28e Revert "ramips: disable ZyXel Keenetic by default"
This reverts commit c38074de92.

Since ZyXEL Keenetic has actually 8 MiB flash as fixed in the
previous patch, we can re-enable it.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-04-12 13:46:34 +02:00
Alexey Dobrovolsky
14c8ea0245 ramips: use full 8MB flash on ZyXEL Keenetic
ZyXEL Keenetic has 8MB flash, but OpenWrt uses only 4MB.
This commit fixes the problem.

WikiDevi page [1] says that ZyXEL Keenetic has FLA1: 8 MiB, there is
an article with specs [2] (in Russian).

[1] https://wikidevi.wi-cat.ru/ZyXEL_Keenetic
[2] https://3dnews.ru/608774/page-2.html

Fixes: FS#2487
Fixes: a7cbf59e0e ("ramips: add new device ZyXEL Keenetic as kn")

Signed-off-by: Alexey Dobrovolsky <dobrovolskiy.alexey@gmail.com>
(cherry picked from commit fea232ae8f)
2020-04-12 13:46:04 +02:00
Dan Haab
5b9b833f8c bcm53xx: add support for Luxul FullMAC WiFi devices
This prepares support for models XAP-1610 and XWR-3150. Flashing
requires using Luxul firmware version:
1) 8.1.0 or newer for XAP-1610
2) 6.4.0 or newer for XWR-3150
and uploading firmware using "Firmware Update" web UI page.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit c459a6bf48)
2020-04-07 15:51:11 +02:00
Rafał Miłecki
ab3549a870 bcm53xx: refactor board.d code in 02_network
1. Use functions for cleaner code
2. Always execute WAN interface generic code

Before this change WAN interface code wasn't executed on all devices due
to an early "exit 0".

Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit b51ea43f90)
2020-04-07 15:50:29 +02:00
Rafał Miłecki
35413b047c bcm53xx: sysupgrade: optimize building UBI image
Use "truncate" to adjust size of existing file instead of "dd" which
required creating a copy. This saves space on tmpfs. It may be as low
as 2.1 MiB when using OpenWrt default user space and way more (20+ MiB)
when flashing vendor firmware.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 8abefc8896)
2020-04-07 15:49:56 +02:00
Rafał Miłecki
55c29c398c busybox: enable truncate on bcm53xx target
It's needed for optimized sysupgrade. On host machine this change
increased busybox size by 4096 B.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 547f1ec25a)
2020-04-07 15:49:56 +02:00
Rafał Miłecki
a89731ad7a bcm53xx: fix ASUS firmwares to use vendor format
Image building process was missing "asus-trx" step which resulted in raw
TRX files (without ASUS footer with device id).

Fixes: 0b9de8daa7 ("bcm53xx: add profiles for all other (SoftMAC) devices")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 0493d57e04)
2020-04-07 15:48:22 +02:00
Eneas U de Queiroz
36373c5ddb openssl: bump to 1.1.1f
There were two changes between 1.1.1e and 1.1.1f:
- a change in BN prime generation to avoid possible fingerprinting of
  newly generated RSA modules
- the patch reversing EOF detection we had already applied.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit af5ccfbac7)
2020-04-01 21:34:58 +02:00
Adrian Schmutzler
470f7c046c ath79: add support for TP-Link TL-WDR4310 v1
This device seems to be identical to the TL-WDR4300, just with
different release date/region and TPLINK_HWID.

Support is added based on the ar71xx implementation.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 676ca94c3c)
2020-03-30 19:36:15 +02:00
Hauke Mehrtens
96ee7c8bfd libpcap: Update shared-lib patch from Debian to fix linking problems
This updates the shared-lib patch to the recent version from debian
found here:
https://salsa.debian.org/rfrancoise/libpcap/-/blob/debian/1.9.1-2/debian/patches/shared-lib.diff

This patch makes it include missing/strlcpy.o to the shared library
which is needed for OpenWrt glibc builds, otherwise there is an
undefined symbol and tcpdump and other builds are failing.

Fixes: 44f11353de ("libpcap: update to 1.9.1")
Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2020-03-29 18:50:46 +02:00
Michael T Farnworth
96092a8eea mkrasimage: fix segmentation fault
Code was attempting to determine the size of the file
before it was actually known and allocating insufficient
memory space.  Images above a certain size caused a
segmentation fault.  Moving the calloc() ensured ensured
that large images didn't result in a buffer overflow on
memcpy().

Signed-off-by: Michael T Farnworth <michael@turf.org>
[fixed name in From to match one in SoB]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit b468353a37)
2020-03-29 18:47:32 +02:00
Petr Štetiar
bf5ea2a8dc rpcd: fix respawn settings
Commit 432ec292cc ("rpcd: add respawn param") has introduced infinite
restarting of the service which could be reached over network. This is
not recommended security practice as it might give potential adversary
infinite number of tries in case there might be some issue in the rpcd
or its surrounding stack.

So lets remove the currently bogus `respawn_retry` variable (it wasn't
possible to override it anyway), reverting to the previous default max.
of 5 service restarts which could be now overriden via system's UCI
settings if desired.

Cc: Jo-Philip Wich <jow@mein.io>
Cc: Florian Eckert <fe@dev.tdt.de>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Fixes: 432ec292cc ("rpcd: add respawn param")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 52e6fb1369)
2020-03-29 18:47:26 +02:00
Jan Kardell
83381ce95d readline: needs host depend on ncurses to build
We must ensure that host ncurses is build before host readline.

Signed-off-by: Jan Kardell <jan.kardell@telliq.com>
(cherry picked from commit ecef29b294)
2020-03-29 18:47:21 +02:00
Robert Marko
45b586c4a6 tools: squashfskit4: fix build with GCC10
In order to build squashfskit with GCC10, this backport from upstream is needed.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
[increase PKG_RELEASE]
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
(cherry picked from commit be4ed1db18)
2020-03-29 18:47:15 +02:00
Alexander Couzens
79b60d878d squashfskit4/Makefile: introduce PKG_RELEASE=1
When adding patches, the PKG_RELEASE should be increased.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
(cherry picked from commit 1f4020a293)
2020-03-29 18:47:09 +02:00
Kevin Darbyshire-Bryant
a08394b3c6 build: prereq: tidy gcc version checks
There is a restriction in the number of parameters(10)  that may be passed to
the SetupHostCommand macro so continually adding explicit gcc'n' version
checks ends up breaking the compiler check for the later versions and
oddballs like Darwin as was done in 835d1c68a0 which added gcc10.

Drop all the explicitly specified gcc version checks.  If a suitable gcc
compiler is not found, it may be specified at the dependency checking
stage after which that version will be symlinked into the build staging
host directory.

eg. 'CC=gccfoo CXX=g++foo make prereq'

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Acked-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 1fb3c003d6)
2020-03-29 18:47:03 +02:00
Robert Marko
66cbfeeaae build: add GCC 10 version detection
Lets add GCC 10 detection to the build system as distributions like Fedora 32 have started shipping with it.
Some tools like mtd-utils need work to compile under GCC10, but that will be next step.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
(cherry picked from commit 835d1c68a0)
2020-03-29 18:46:57 +02:00
Eneas U de Queiroz
eea3a9625c openssl: revert EOF detection change in 1.1.1
This adds patches to avoid possible application breakage caused by a
change in behavior introduced in 1.1.1e.  It affects at least nginx,
which logs error messages such as:
nginx[16652]: [crit] 16675#0: *358 SSL_read() failed (SSL: error:
4095126:SSL routines:ssl3_read_n:unexpected eof while reading) while
keepalive, client: xxxx, server: [::]:443

Openssl commits db943f4 (Detect EOF while reading in libssl), and
22623e0 (Teach more BIOs how to handle BIO_CTRL_EOF) changed the
behavior when encountering an EOF in SSL_read().  Previous behavior was
to return SSL_ERROR_SYSCALL, but errno would still be 0.  The commits
being reverted changed it to SSL_ERRO_SSL, and add an error to the
stack, which is correct.  Unfortunately this affects a number of
applications that counted on the old behavior, including nginx.

The reversion was discussed in openssl/openssl#11378, and implemented as
PR openssl/openssl#11400.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 2e8a4db9b6)
2020-03-29 18:46:51 +02:00
Hauke Mehrtens
c6c3f6bb0a mac80211: Update to version 4.19.112
The removed patches are all integrated in the upstream version now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-03-29 18:27:49 +02:00
Petr Štetiar
794fd4c6cf procd: turn error into debug message for missing ujail binary
Since commit 557f11b3a20f ("instance: provide error feedback if ujail
binary is missing") worrying log spam of the form "unable to find
/sbin/jail ..." may be encountered.

This corresponds with the changes done in the upstream commit
bcb86554f1b4 ("instance: add 'requirejail' attribute").

Ref: https://forum.openwrt.org/t/openwrt-19-07-2-service-release/57066
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-03-28 13:46:37 +01:00
Baptiste Jonglez
f5b3cd1539 ar71xx: Fix gigabit switch support for Mikrotik RB951G-2HnD
Without this patch, when using rev 3 of the Atheros AR9344 SoC, the
gigabit switch (AR8327) does not work or works very erratically.

This is a re-spin of http://patchwork.ozlabs.org/patch/419857/ with a
different PLL value, according to the feedback from several users
(including myself) as shown here:

  https://openwrt.org/toh/mikrotik/rb2011uias#tracking_reported_experience_with_suggested_patch_for_the_5_gige_ports

Performance is acceptable: testing L3 forwarding without NAT yields a
performance of 370 Mbit/s (iperf3 TCP) and 41 Kpps (iperf3 UDP with 64
bytes payload). Both tests show that 100% of CPU time is spent on softirq.

A similar fix for a different device (RB2011) was added in e457d22261
("Make GBit switch work on RB2011").

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
(cherry picked from commit 247043c968)
2020-03-28 13:46:26 +01:00
Adrian Schmutzler
bdbda30384 ath79: add support for TP-Link TL-WA860RE v1
This ports support for the TL-WA860RE v1 range extender from ar71xx
to ath79.

Specifications:
  Board: AP123 / AR9341 rev. 3
  Flash/RAM: 4/32 MiB
  CPU: 535 MHz
  WiFi: 2.4 GHz b/g/n
  Ethernet: 1 port (100M)
  Two external antennas

Flashing instructions:
  Upload the factory image via the vendor firmware upgrade option.

Recovery:
  Note that this device does not provide TFTP via ethernet like many
  other TP-Link devices do. You will have to open the case if you
  require recovery beyond failsafe.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Sebastian Knapp <sebastian4842@outlook.com>
(cherry picked from commit 385f4868bc)
2020-03-27 17:15:07 +01:00
Adrian Schmutzler
2e6bfab8c5 ath79: add support for TP-Link TL-WA850RE v1
This ports support for the TL-WA850RE v1 range extender from ar71xx
to ath79.

Specifications:
  Board: AP123 / AR9341 rev. 3
  Flash/RAM: 4/32 MiB
  CPU: 535 MHz
  WiFi: 2.4 GHz b/g/n
  Ethernet: 1 port (100M)

Flashing instructions:
Upload the factory image via the vendor firmware upgrade option.

Recovery:
Note that this device does not provide TFTP via ethernet like many
other TP-Link devices do. You will have to open the case if you
require recovery beyond failsafe.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6eaea3a8ba)
2020-03-27 17:14:58 +01:00
Rafał Miłecki
dba6f418fa mac80211: fix brcmfmac monitor interface crash
This fixes bug in brcmfmac *exposed* by ipv6/addrconf fix.

Fixes: 6e4453aecc ("kernel: backport out-of-memory fix for non-Ethernet devices")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 038318f766)
2020-03-27 15:47:17 +01:00
Jan Alexander
27e77922a1 ar71xx: use status led for GL.iNet GL-AR750S
Use power led for device status.

The status led behavior has already been fixed in af28d8a539
("ath79: add support for GL.iNet GL-AR750S") when porting the
device to ath79. This fixes it for ar71xx as well.

Signed-off-by: Jan Alexander <jan@nalx.net>
[minor commit title/message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit d394c354ee)
2020-03-26 20:00:36 +01:00
David Bauer
81264ebb51 brcm2708: fix build failure
Build of the brcm2708 subtarget currently fails with the following error
message:

 arch/arm/lib/memset_rpi.S: Assembler messages:
 arch/arm/lib/memset_rpi.S:65: Error: garbage following instruction
  -- `orr DAT0,DAT0,lsl#8'
 arch/arm/lib/memset_rpi.S:67: Error: garbage following instruction
  -- `orr DAT0,DAT0,lsl#16'
 scripts/Makefile.build:427: recipe for target 'arch/arm/lib/memset_rpi.o'
 failed

Using the assembly notation from master fixes this error.

Signed-off-by: David Bauer <mail@david-bauer.net>
2020-03-26 01:34:30 +01:00
Jordan Sokolic
39405644d5 dnsmasq: add 'scriptarp' option
Add option 'scriptarp' to uci dnsmasq config to enable --script-arp functions.
The default setting is false, meaning any scripts in `/etc/hotplug.d/neigh` intended
to be triggered by `/usr/lib/dnsmasq/dhcp-script.sh` will fail to execute.

Also enable --script-arp if has_handlers returns true.

Signed-off-by: Jordan Sokolic <oofnik@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2020-03-23 08:01:54 +01:00
Eneas U de Queiroz
d5b1f4430f openssl: update to 1.1.1e
This version includes bug and security fixes, including medium-severity
CVE-2019-1551, affecting RSA1024, RSA1536, DSA1024 & DH512 on x86_64.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit dcef8d6093)
2020-03-22 23:03:24 +01:00
Eneas U de Queiroz
798ff37aaa openssl: add configuration example for afalg-sync
This adds commented configuration help for the alternate, afalg-sync
engine to /etc/ssl/openssl.cnf.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit d9d689589b)
2020-03-22 23:03:24 +01:00
Daniel Golle
168acbb36d oxnas: yet another irqchip related patch
This time DTS fix, again from Sungbo Eo <mans0n@gorani.run>
  ARM: dts: oxnas: Fix clear-mask property

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 9e5a25846f)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-03-22 13:39:14 +00:00
Daniel Golle
cf4520d15e oxnas: backport another fix for irqchip
Sungbo Eo <mans0n@gorani.run> submitted another patch fixing an error
on reboot:
  irqchip/versatile-fpga: Apply clear-mask earlier

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 19af00850f)
2020-03-21 22:09:12 +00:00
Adrian Schmutzler
456e1c60d6 ath79: add support for TP-Link WDR3500 v1
Hardware:
SoC:      AR9344
CPU:      560 MHz
Flash:    8 MiB
RAM:      128 MiB
WiFi:     Atheros AR9340 2.4GHz 802.11bgn
          Atheros AR9300 5GHz 802.11an
Ethernet: AR934X built-in switch, WAN on separate physical interface
USB:      1x 2.0

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to
   wdr3500v1_tp_recovery.bin
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[removed stray newline]
Signed-off-by: David Bauer <mail@david-bauer.net>
(backported from commit fbbb4eb8b4)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-03-20 12:22:18 +01:00
Adrian Schmutzler
e7fae8fc97 ath79: add support for TP-Link Archer C60 v3
TP-Link Archer C60 v3 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561 + QCA9886.

It seems to be identical to the v2 revision, except that
it lacks a WPS LED and has different GPIO for amber WAN LED.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 6x LED, 2x button
- UART header on PCB

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed IP address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root
   directory
4. Turn off the router
5. Press and hold reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time the firmware should
   be transferred from the tftp server
8. Wait ~30 second to complete recovery

While TFTP works for OpenWrt images, my device didn't accept the
only available official firmware "Archer C60(EU)_V3.0_190115.bin".

In contrast to earlier revisions (v2), the v3 contains the (same)
MAC address twice, once in 0x1fa08 and again in 0x1fb08.
While the partition-table on the device refers to the latter, the
firmware image contains a different partition-table for that region:

name           device            firmware
factory-boot   0x00000-0x1fb00   0x00000-0x1fa00
default-mac    0x1fb00-0x1fd00   0x1fa00-0x1fc00
pin            0x1fd00-0x1fe00   0x1fc00-0x1fd00
product-info   0x1fe00-0x1ff00   0x1fd00-0x1ff00
device-id      0x1ff00-0x20000   0x1ff00-0x20000

While the MAC address is present twice, other data like the PIN isn't,
so with the partitioning from the firmware image the PIN on the device
would actually be outside of its partition.
Consequently, the patch uses the MAC location from the device (which
is the same as for the v2).

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 646d95c374)
2020-03-20 12:22:18 +01:00
Daniel Golle
2bd9d2e08b oxnas: backport patch fixing hang after reboot
Sungbo Eo <mans0n@gorani.run> posted a patch fixing the long-standing
reboot problem on the OXNAS OX820 platform:
  irqchip/versatile-fpga: Handle chained IRQs properly

It got queued for 5.7. Import it to oxnas target patches for now.

Fixes: b4917fa907 ("oxnas: fix oxnas-rps-timer dt-match")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 67b04e767a)
2020-03-19 23:03:26 +00:00
Sungbo Eo
74a8e36975 layerscape: add kmod-i2c-mux to DEVICE_PACKAGES for traverse-ls1043
kmod-i2c-mux-pca954x will not get into images unless kmod-i2c-mux is added to
DEVICE_PACKAGES as well.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit dffbe668ab)
2020-03-14 13:28:29 +01:00
Jun Su
7ae345ecb7 ath79: add support for TP-Link TL-WR740N v5
This adds support for the TP-Link TL-WR740N v5, a clone of the
v4 only with a different TPLINK_HWID. It was already supported
in ar71xx as well.

Specifications:

SOC: Atheros AR9331
CPU: 400MHz
Flash: 4 MiB
RAM: 32 MiB
WLAN: Atheros AR9330 bgn
Ethernet: 5 ports (100M)

Flashing instructions:

- Flash factory image from OEM WebUI:
  openwrt-ath79-tiny-tplink_tl-wr740n-v5-squashfs-factory.bin
- Sysupgrade from ar71xx image:
  openwrt-ath79-tiny-tplink_tl-wr740n-v5-squashfs-sysupgrade.bin

Signed-off-by: Jun Su <howard0su@gmail.com>
[commit title/message facelift, backport for 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b9f4f1f97a)
2020-03-14 13:27:41 +01:00
Adrian Schmutzler
76c1c1daea ar71xx: fix port order on TP-Link Archer C60 v1/v2
The labels on the LAN ports of the TP-Link Archer C60 v1/v2 are
actually inverted compared to the ports of the internal switch.

Add this information to 02_network.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 14a07fa1f0)
2020-03-14 13:20:35 +01:00
Adrian Schmutzler
f1a3a6b79c ath79: fix port order on TP-Link Archer C60 v1/v2
The labels on the LAN ports of the TP-Link Archer C60 v1/v2 are
actually inverted compared to the ports of the internal switch.

Add this information to 02_network.

This is the same for to-be-supported v3 of this device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b054729899)
2020-03-14 13:20:29 +01:00
Adrian Schmutzler
e4107e30a7 ar71xx: remove wrong MAC address adjustment for Archer C60 v2
The adjustment of the MAC address for Archer C60 v2 in 10_fix_wifi_mac
is broken since a "mac" partition is not set up for this device on
ar71xx. Instead, the MAC address is already patched correctly in
11-ath10k-caldata.

Remove the useless adjustment.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit cbdc919024)
2020-03-14 13:20:23 +01:00
Adrian Schmutzler
83f1015a6c ar71xx: fix swapped LAN/WAN MAC address for Archer C60 v1/v2
The MAC addresses for lan/wan are swapped compared to the vendor
firmware. This adjusts to vendor configuration, which is:

lan   *:7b   label
wan   *:7c   label+1
2.4g  *:7b   label
5g    *:7a   label-1

Only one address is stored in <&mac 0x8>, corresponding to the label.

This has been checked on revisions v1, v2 and v3.

Since ar71xx calculates the ath10k MAC address based on the ethernet
addresses, the number there is adjusted, too.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 14eb54938b)
2020-03-14 13:20:18 +01:00
Adrian Schmutzler
9f024d3587 ath79: fix swapped LAN/WAN MAC address for Archer C60 v1/v2
The MAC addresses for lan/wan are swapped compared to the vendor
firmware. This adjusts to vendor configuration, which is:

lan   *:7b   label
wan   *:7c   label+1
2.4g  *:7b   label
5g    *:7a   label-1

Only one address is stored in <&mac 0x8>, corresponding to the label.

This has been checked on revisions v1, v2 and v3.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 88aead0a66)
2020-03-14 13:20:13 +01:00
Adrian Schmutzler
b32129d30b rssileds: add dependencies based on LDFLAGS
This adds the direct dependencies introduced by TARGET_LDFLAGS
to the package's DEPENDS variable.

This was found by accidentally building rssileds on octeon, which
resulted in:

"Package rssileds is missing dependencies for the following libraries:
libnl-tiny.so"

Though the dependencies are provided when building for the
relevant targets ar71xx, ath79 and ramips, it seems more tidy to
specify them explicitly.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a5b2c6f5ed)
2020-03-11 14:56:03 +01:00
Felix Fietkau
9da31d0fb4 mt76: update to the latest version
8682e0d0b49c mt76: speed up usb bulk copy
884c25e7caca mt76: usb: use max packet length for m76u_copy
1ad98b95cf4a mt76: mt76u: rely only on data buffer for usb control messagges
3d491603caff mt76: fix array overflow on receiving too many fragments for a packet
9792a62e7f30 mt76: set dma-done flag for flushed descriptors
53233cdf9486 mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw
a4ae9219e6c7 mt76: dma: do not write cpu_idx on rx queue reset until after refill
1198fa57d185 mt76: mt7603: increase dma mcu rx ring size
91cd5be6ee37 mt76: avoid extra RCU synchronization on station removal
7d7fb26bb78a mt76: mt76x2: avoid starting the MAC too early
aac609809de1 mt76: fix LED link time failure
18627db2e633 mt76: mt76x0u: add support to TP-Link T2UHP
5ecfdb1a6e0a mt76: mt76x02: fix handling MCU timeouts during hw restart
f7e9be89db59 mt76: mt7603: add upper limit for dynamic sensitivity minimum receive power
23b834485070 mt76: mt7603: enable dynamic sensitivity adjustment by default
08054d5ab135 mt76: mt76x02: reset MCU timeout counter earlier in watchdog reset

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-03-11 13:37:19 +01:00
Catrinel Catrinescu
68351990dc ar71xx/ath79: ew-dorin, fix the trigger level for WPS button
Because the WPS button had the wrong trigger level,
the failsafe mode was triggered quite often,
after this commit:
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=27f3f493de

Signed-off-by: Catrinel Catrinescu <cc@80211.de>
(cherry picked from commit 3e03b7ac4a)
2020-03-11 11:26:06 +01:00
Rafał Miłecki
6e4453aecc kernel: backport out-of-memory fix for non-Ethernet devices
Doing up & down on non-Ethernet devices (e.g. monitor mode interface)
was consuming memory.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit ec8e8e2ef0)
2020-03-11 08:43:34 +01:00
Koen Vandeputte
06f5a8d3e9 kernel: bump 4.14 to 4.14.172
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-03-09 20:44:27 +01:00
Florian Eckert
e7f1313bbb rpcd: add respawn param
The rpcd service is an important service, but if the service stops
working for any reason, no one will ever respawn that service. With this
commit, the procd service will monitor if the rpcd service
is running. If the rpcd service has crashed, then
procd respawns the rpcd service.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
(cherry picked from commit 432ec292cc)
2020-03-04 09:16:43 +01:00
Jo-Philipp Wich
f6f0cd54a2 rpcd: update to latest Git HEAD
aaa0836 file: extend exec acl checks to commands with arguments

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 762aac50c0)
2020-03-04 09:16:43 +01:00
David Bauer
1713707673 ar71xx: add missing LED migration for Archer C7
When changing the LED names for the Archer C7 to represent the correct
color, a migration for existing UCI entries was not created.

Add a migration to keep existing LED configurations working.

Fixes commit c79c001b59 ("ar71xx: Archer C7 v1 LED names and RFKILL
fixes")

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 4349d4c682)
2020-03-01 23:46:13 +01:00
David Bauer
ef391799e3 ar71xx: correct AVM FRITZ Repeater 450E WPS button flag
The AVM FRITZ!WLAN Repeater 450E's WPS button is not active low.

Correct the active low flag to avoid unintenional activation of
failsafe mode on boot.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 1d4f2ca610)
2020-03-01 18:42:05 +01:00
Jo-Philipp Wich
c56ed72d2b OpenWrt v19.07.2: revert to branch defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-27 22:34:09 +01:00
Jo-Philipp Wich
33732f4a9c OpenWrt v19.07.2: adjust config defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-27 22:34:09 +01:00
Jo-Philipp Wich
65030d81f3 libubox: update to latest Git HEAD
7da6643 tests: blobmsg: add test case
75e300a blobmsg: fix wrong payload len passed from blobmsg_check_array

Fixes: FS#2833
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 955634b473)
2020-02-27 22:05:12 +01:00
Roger Pueyo Centelles
b33cfb7eb2 ath79: add missing reset-gpios for NanoStation Loco M (XW)
When porting support from ar71xx to ath79, the reset-gpios option was
missed. Due to a hardware bug, this would eventually leave the devices
with RX-deaf Ethernet PHY.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(cherry picked from commit 6613a7f5cc)
2020-02-26 16:49:44 +01:00
Roger Pueyo Centelles
4edadfb997 ath79: add support for Ubiquiti NanoStation Loco M (XW)
This commit adds support for the NanoStation Loco M2/M5 XW devices
on the ath79 target (support was long ago available on ar71xx).

Specifications:

 - AR9342 SoC @ 535 MHz
 - 64 MB RAM
 - 8 MB SPI flash
 - 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in
 - AR8032 switch
 - 2T2R 5 GHz radio, 22 dBm
 - 13 dBi built-in antenna
 - POWER/LAN green LEDs
 - 4x RSSI LEDs (red, orange, green, green)
 - UART (115200 8N1) on PCB

Flashing via TFTP:

 - Use a pointy tool (e.g., pen cap, paper clip) and keep the reset
   button on the device or on the PoE supply pressed
 - Power on the device via PoE (keep reset button pressed)
 - Keep pressing until LEDs flash alternatively LED1+LED3 =>
   LED2+LED4 => LED1+LED3, etc.
 - Release reset button
 - The device starts a TFTP server at 192.168.1.20
 - Set a static IP on the computer (e.g., 192.168.1.21/24)
 - Upload via tftp the factory image:
   $ tftp 192.168.1.20
   tftp> bin
   tftp> trace
   tftp> put openwrt-ath79-generic-xxxxx-ubnt_nanostation-loco-m-xw-squashfs-factory.bin

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(backported from commit 633c4304ad)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-02-26 16:49:44 +01:00
Petr Štetiar
cf118077cd ppp: backport security fixes
8d45443bb5c9 pppd: Ignore received EAP messages when not doing EAP
8d7970b8f3db pppd: Fix bounds check in EAP code
858976b1fc31 radius: Prevent buffer overflow in rc_mksid()

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 215598fd03)
Fixes: CVE-2020-8597
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-26 16:40:43 +01:00
Jo-Philipp Wich
0e9e5b1553 Revert "ppp: backport security fixes"
This reverts commit 6b7eeb74db since it
didn't contain a reference to the CVE it addresses. The next commit
will re-add the commit including a CVE reference in its commit message.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-02-26 16:40:25 +01:00
Jo-Philipp Wich
9e2a1af62f uhttpd: update to latest Git HEAD
2ee323c file: poke ustream after starting deferred program

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 04069fde19)
2020-02-26 16:11:56 +01:00
Koen Vandeputte
af79c3bccc kernel: bump 4.14 to 4.14.171
Refreshed all patches.

Fixes:
- CVE-2013-1798

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-02-24 14:20:14 +01:00
Ansuel Smith
bc0ca20ca9 ipq806x: fix bug in L2 cache scaling
It has been notice a buf in L2 cache scaling where the scaling is not
done proprely if the frequency is set to the initial state before
the new frequency.

From: https://patchwork.kernel.org/patch/10565443/

* The clocks are set to aux clock rate first to make sure the
* secondary mux is not sourcing off of QSB. The rate is then set to
* two different rates to force a HFPLL reinit under all
* circumstances.

In the initial stage of boot to force a new frequency to apply, is
needed to first set the frequency back to the lowest one (aux_rate)
and then to the target one. This force and make sure the controller
actually switch the frequency to the right one. Apply the same
mechanism to L2 frequency scaling. Before scaling to the target
frequency, first set the frequency to the aux_rate to force the
transition, then scale it to the target frequency. Doing the wrong way
can produce unexpected results and could lock the scaling mechanism
until a full reboot is done (Causing a full reset by the krait-cc driver)

From: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=77612720a2362230af726baa4149c40ec7a7fb05

When the Hfplls are reprogrammed during the rate change,
the primary muxes which are sourced from the same hfpll
for higher frequencies, needs to be switched to the 'safe
secondary mux' as the parent for that small window. This
is done by registering a clk notifier for the muxes and
switching to the safe parent in the PRE_RATE_CHANGE notifier
and back to the original parent in the POST_RATE_CHANGE notifier.

This should apply also to L2 scaling... as we can't relly use
the notifier, we manually do this on L2 scaling.

Tested-By: Marc Benoit <marcb62185@gmail.com> [19.07: R7800]
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de> [nbg6817/ipq8065]
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
(cherry picked from commit 5ab9c0b388)
2020-02-23 08:27:32 +01:00
Pavel Kubelun
191822b59f ipq806x: add missing core1 voltage tolerance
Voltage tolerance is accounted per core, not per cpu, so add
missing DT entry.

Tested-By: Marc Benoit <marcb62185@gmail.com> [19.07: R7800]
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
(cherry picked from commit 77e7d6c20d)
2020-02-23 08:27:32 +01:00
Johann Neuhauser
d0c8875faf ath79: ar934x: use reset for usb-phy-analog
This was already available on ar71xx, but is missing on ath79.
This solves the slow usb speed on TP-Link WDR3600/WDR4300 and similar,
as reported in Flyspray [0], OpenWRT Forum [1] and GitHub PR [2].

[0] https://bugs.openwrt.org/index.php?do=details&task_id=2567
[1] https://forum.openwrt.org/t/usb-wdr4300-low-speed-on-external-storage/46794
[2] https://github.com/openwrt/openwrt/pull/964

Tested-By: Lech Perczak <lech.perczak@gmail.com> [TL-WDR4300]
Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
(cherry picked from commit bda6b6144d)
2020-02-23 08:27:32 +01:00
Johann Neuhauser
c9b6bb43ce ath79: phy-ar7200-usb: adapt old behavior of arch/mips/ath79/dev-usb.c
[ Upstream commit 6cca6fffa0 ]

Do not put usb-phy into reset if clearing the usb-phy reset or
setting the suspend_override has failed.

Reorder (de)asserts like in arch/mips/ath79/dev-usb.c.

Add an optional reset_control "usb-phy-analog", which is needed for
ar934x SoCs like in the old mach-driver arch/mips/ath79/dev-usb.c.

Tested-By: Lech Perczak <lech.perczak@gmail.com> [TL-WDR4300]
Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
[added reference to upstream commit, Tested-by]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-02-23 08:27:32 +01:00
Adrian Schmutzler
b2660e67f0 Revert "ath79: add support for Ubiquiti NanoStation Loco M (XW)"
This reverts commit 21bf718b8c.

Until the mdio-reset is solved, this is not ready for stable release.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-02-22 21:25:07 +01:00
Roger Pueyo Centelles
21bf718b8c ath79: add support for Ubiquiti NanoStation Loco M (XW)
This commit adds support for the NanoStation Loco M2/M5 XW devices
on the ath79 target (support was long ago available on ar71xx).

Specifications:

 - AR9342 SoC @ 535 MHz
 - 64 MB RAM
 - 8 MB SPI flash
 - 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in
 - AR8032 switch
 - 2T2R 5 GHz radio, 22 dBm
 - 13 dBi built-in antenna
 - POWER/LAN green LEDs
 - 4x RSSI LEDs (red, orange, green, green)
 - UART (115200 8N1) on PCB

Flashing via TFTP:

 - Use a pointy tool (e.g., pen cap, paper clip) and keep the reset
   button on the device or on the PoE supply pressed
 - Power on the device via PoE (keep reset button pressed)
 - Keep pressing until LEDs flash alternatively LED1+LED3 =>
   LED2+LED4 => LED1+LED3, etc.
 - Release reset button
 - The device starts a TFTP server at 192.168.1.20
 - Set a static IP on the computer (e.g., 192.168.1.21/24)
 - Upload via tftp the factory image:
   $ tftp 192.168.1.20
   tftp> bin
   tftp> trace
   tftp> put openwrt-ath79-generic-xxxxx-ubnt_nanostation-loco-m-xw-squashfs-factory.bin

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(backported from commit 633c4304ad)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-02-22 19:07:14 +01:00
Sungbo Eo
2d3a93335a ramips: append tail to WF2881 initramfs image
Stock firmware has a vendor-defined tail at the end of uImage for image
validation. This patch enables OpenWrt installation from stock firmware
without having to access the UART console.

Installation via web interface:
1.  Flash **initramfs** image through the stock web interface.
2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit be3e98ce26)
2020-02-21 14:12:30 +01:00
Adrian Schmutzler
8fa6107aee ath79: add support for Ubiquiti Picostation M (XM)
This adds support for the Ubiquiti Picostation M (XM), which has the
same board/LEDs as the Bullet M XM, but different case and antennas.

Specifications:
- AR7241 SoC @ 400 MHz
- 32 MB RAM
- 8 MB SPI flash
- 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in
- External antenna: 5 dBi (USA), 2 dBi (EU)
- POWER/LAN green LEDs
- 4x RSSI LEDs (red, orange, green, green)
- UART (115200 8N1) on PCB

Flashing via WebUI:
  Upload the factory image via the stock firmware web UI.

  Attention: airOS firmware versions >= 5.6 have a new bootloader with
  an incompatible partition table!

  Please downgrade to <= 5.5 _before_ flashing OpenWrt!
  Refer to the device's Wiki page for further information.

Flashing via TFTP:
  Same procedure as other NanoStation M boards.

- Use a pointy tool (e.g., pen cap, paper clip) and keep the reset
  button on the device or on the PoE supply pressed
- Power on the device via PoE (keep reset button pressed)
- Keep pressing until LEDs flash alternatively LED1+LED3 =>
  LED2+LED4 => LED1+LED3, etc.
- Release reset button
- The device starts a TFTP server at 192.168.1.20
- Set a static IP on the computer (e.g., 192.168.1.21/24)
- Upload via tftp the factory image:
  $ tftp 192.168.1.20
  tftp> bin
  tftp> trace
  tftp> put openwrt-ath79-generic-xxxxx-ubnt_picostation-m-squashfs-factory.bin

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6fdaf16dd0)
2020-02-21 14:12:30 +01:00
Sven Roederer
6a950afde1 ath79: add support for Ubiquiti Nanostation Loco M (XM)
This adds support for the Ubiquiti Nanostation Loco M (XM), which
has the same board/LEDs as the Bullet M XM, but different case and
antennas.

Specifications:
- AR7241 SoC @ 400 MHz
- 32 MB RAM
- 8 MB SPI flash
- 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in
- NS Loco M2: built-in antenna: 8 dBi; AR9287
- NS Loco M5: built-in antenna: 13 dBi; 2T2R 5 GHz radio
- POWER/LAN green LEDs
- 4x RSSI LEDs (red, orange, green, green)
- UART (115200 8N1) on PCB

Flashing via WebUI:
  Upload the factory image via the stock firmware web UI.
  Note that only certain firmware versions accept unsigned
  images. Refer to the device's Wiki page for further information.

Flashing via TFTP:
  Same procedure as other NanoStation M boards.

- Use a pointy tool (e.g., pen cap, paper clip) and keep the reset
  button on the device or on the PoE supply pressed
- Power on the device via PoE (keep reset button pressed)
- Keep pressing until LEDs flash alternatively LED1+LED3 =>
  LED2+LED4 => LED1+LED3, etc.
- Release reset button
- The device starts a TFTP server at 192.168.1.20
- Set a static IP on the computer (e.g., 192.168.1.21/24)
- Upload via tftp the factory image:
  $ tftp 192.168.1.20
  tftp> bin
  tftp> trace
  tftp> put openwrt-ath79-generic-xxxxx-ubnt_nanostation-loco-m-squashfs-factory.bin

Tested on NanoStation Loco M2.

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
Co-developed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b56bcfe3be)
2020-02-21 14:12:30 +01:00
Adrian Schmutzler
7cbd39421e ath79: add gpio4 pinmux on TL-WR841N/ND v8, WR842N v2, MR3420 v2
This adds a pinmux to the shared DTSI for TP-Link TL-WR841N/ND v8,
TL-WR842N v2 and TL-MR3420 v2. It is supposed to be the equivalent
of:

/* config gpio4 as normal gpio function */
ath79_gpio_output_select(TL_MR3420V2_GPIO_USB_POWER,AR934X_GPIO_OUT_GPIO);

This allows to enable USB power on these devices.

While at it, move the jtag_disable_pins to &gpio node and remove the
redundant status=okay there.

Tested on TP-Link TL-WR842N v2.

Fixes: FS#2753

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Armin Fuerst <armin@fuerst.priv.at>
[backport: change individual DTS files, no mr3420-v2 present]
(backported from commit 18c95c9d6e)
2020-02-21 14:12:30 +01:00
Adrian Schmutzler
085f38351f ath79: enable forceless sysupgrade from ar71xx on fritz300e
This adds the ar71xx board name to the SUPPORTED_DEVICES on ath79,
so forceless sysupgrade on this device becomes possible.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 49ff00db34)
2020-02-21 14:12:30 +01:00
Petr Štetiar
6b7eeb74db ppp: backport security fixes
8d45443bb5c9 pppd: Ignore received EAP messages when not doing EAP
8d7970b8f3db pppd: Fix bounds check in EAP code
858976b1fc31 radius: Prevent buffer overflow in rc_mksid()

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 215598fd03)
2020-02-20 09:17:11 +01:00
Chuanhong Guo
95d5cbdec3 ath79: add wmac migration for all ar93xx/qca95xx SoCs
Add migration for all ar71xx device path as well as previously
incorrect ath79 path.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit d08b5bb344)
Tested-by: Lech Perczak <lech.perczak@gmail.com> [TP-Link TL-WDR4300 v1]
2020-02-11 13:41:31 +01:00
Chuanhong Guo
2d21357b65 ath79: ar93xx/qca95xx: move gmac/wmac/pcie node out of apb bus
according to functional block diagram in datasheet, these devices
don't belong to apb bus.
Move these nodes out to match datasheet description.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit f65501e1c2)
Tested-by: Lech Perczak <lech.perczak@gmail.com> [TP-Link TL-WDR4300 v1]
2020-02-11 13:39:26 +01:00
Jo-Philipp Wich
b6c01fec92 hostapd: remove erroneous $(space) redefinition
The $(space) definition in the hostapd Makefile ceased to work with
GNU Make 4.3 and later, leading to syntax errors in the generated
Kconfig files.

Drop the superfluous redefinition and reuse the working $(space)
declaration from rules.mk to fix this issue.

Fixes: GH#2713
Ref: https://github.com/openwrt/openwrt/pull/2713#issuecomment-583722469
Reported-by: Karel Kočí <cynerd@email.cz>
Suggested-by: Jonas Gorski <jonas.gorski@gmail.com>
Tested-by: Shaleen Jain <shaleen@jain.sh>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 766e778226)
2020-02-08 11:46:27 +01:00
Adrian Schmutzler
5000fc53a1 ath79: fix DTS node names for Ubiquiti XW partitions
Some node names were inconsistent with the reg property. Fix it.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 1a0d6e1eba)
[fixed XM->XW in commit title for backport]
2020-02-07 14:10:02 +01:00
Michal Cieslakiewicz
a0ca72d9ab uboot-envtools: ath79: add Netgear WNDR3700v2
Add Netgear WNDR3700v2 to the list of supported boards.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
[rebase, adjusted commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a09408fa57)
2020-02-07 14:08:24 +01:00
Michal Cieslakiewicz
53cd2299ee ath79: WNDR3700 v1/v2: make u-boot env partition writable
Remove read-only flag from U-boot environment partition for Netgear
WNDR3700 v1 and v2 so u-boot-envtools can modify data there.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
(cherry picked from commit 6227c8d1bf)
2020-02-07 14:08:19 +01:00
Dan Haab
cff3795450 bcm53xx: build images for Luxul ABR-4500 and XBR-4500 routers
Luxul ABR-4500 and XBR-4500 devices are wired routers with 5 Ethernet
ports and 1 USB 3.0 port. Flashing requires using Luxul firmware 6.4.0
or newer and uploading firmware using "Firmware Update" web UI page.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit 1d47f81581)
[rmilecki: use DEVICE_TITLE for 19.07]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2020-02-07 12:09:27 +01:00
Dan Haab
cf2b042855 firmware-utils: add lxlfw tool for generating Luxul firmwares
It's a simple tool prepending image with a Luxul header.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit 9aa6569aa6)
2020-02-07 11:05:26 +01:00
Rafał Miłecki
887eb669f9 mac80211: brcm: backport remaining 5.6 kernel patches
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit aca274091a)
2020-02-07 11:05:24 +01:00
Koen Vandeputte
d91b52b1a2 kernel: add missing symbol
Reported by Buildbot:

x86 instruction decoder selftest (X86_DECODER_SELFTEST) [N/y/?] (NEW) aborted!

Fixes: eca8a2ee0d ("kernel: bump 4.14 to 4.14.169")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-02-05 18:24:39 +01:00
Koen Vandeputte
2a844349fa kernel: add support for GD25D05 SPI NOR
This chip is used on newer RB912UAG-5HPnD r2 boards:

Before:

[    0.642553] m25p80 spi0.0: unrecognized JEDEC id bytes: c8, 40, 10
[    0.649381] NAND flash driver for the RouterBOARD 91x series

After:

[    0.641714] m25p80 spi0.0: found gd25d05, expected m25p80
[    0.649916] m25p80 spi0.0: gd25d05 (64 Kbytes)
[    0.655122] Creating 4 MTD partitions on "spi0.0":
[    0.660164] 0x000000000000-0x00000000c000 : "routerboot"
[    0.667782] 0x00000000c000-0x00000000d000 : "hard_config"
[    0.675073] 0x00000000d000-0x00000000e000 : "bios"
[    0.682613] 0x00000000e000-0x00000000f000 : "soft_config"
[    0.690304] NAND flash driver for the RouterBOARD 91x series

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-02-04 18:11:26 +01:00
Koen Vandeputte
eca8a2ee0d kernel: bump 4.14 to 4.14.169
Refreshed all patches.

Fixes:
- CVE-2019-14896
- CVE-2019-14897

Remove upstreamed:
- 023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch
- 001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-02-04 18:11:26 +01:00
Mason Clarke
3d1c84d424 ramips: reenable image creation for the D-Link DIR-645
This commit reenables the image creation for the D-Link DIR-645.

Images built for the D-Link DIR-645 work just fine, there is no reason
to disable the image creation for it.

I tested the OpenWrt 18.06.5 and 19.07.0-rc1 images, as well as an
image I built from the current 19.07 branch (git HEAD 62d5ece) with
the default 19.07 release config, and I cannot confirm the report that
commit 2607c02ed5
("ramips: disable D-Link DIR-645 by default") references.
Configuration changes were applied successfully and remained set after
a reboot as well. The log also showed no anomalies.

This reverts commit 2607c02ed5.

Signed-off-by: Mason Clarke <mclarke2355@gmail.com>
2020-02-01 18:52:03 +01:00
Jan Alexander
aed6632d31 ramips: use tpt DTS trigger for TP-Link TL-MR3020 v3 and TL-WA801ND v5
This converts the TP-Link TL-MR3020v3 board to use the WLAN throughput
LED trigger in order to react to all VAPs.

It also moves the WLAN trigger config of the TP-Link TL-WA801NDv5 to the
DTS and merges the now identical LAN LED configs.

Verified these changes on a TL-MR3020v3 and TL-WA801NDv5.

Signed-off-by: Jan Alexander <jan@nalx.net>
[changed commit title and extended commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[added comment about test result on TL-WA801ND v5]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 20eb45da4f)
2020-01-30 22:15:55 +01:00
Adrian Schmutzler
a229907150 ramips: remove duplicate DEVICE_PACKAGES for TP-Link Archer C20i
DEVICE_PACKAGES is specified twice for the same device. Remove the
first (=older) assignment.

Fixes: 40692f0fb5 ("ramips: mt7620: select only the matching mt76 driver")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 4ecd6510bf)
2020-01-29 20:31:43 +01:00
Jo-Philipp Wich
4668ae3bed OpenWrt v19.07.1: revert to branch defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-29 17:08:14 +01:00
Jo-Philipp Wich
901bbe2ab9 OpenWrt v19.07.1: adjust config defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2020-01-29 17:08:11 +01:00
Jo-Philipp Wich
c155900f66 opkg: update to latest Git HEAD
80d161e opkg: Fix -Wformat-overflow warning
c09fe20 libopkg: fix skipping of leading whitespace when parsing checksums

Fixes: CVE-2020-7982
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit c69c20c667)
2020-01-29 17:05:35 +01:00
Felix Fietkau
8ab2b42fac kernel: fix dst reference leak in flow offload
Fixes a significant amount of leaked memory with lots of connections

Ref: PR#2721
Tested-by: Jerome Benoit <jerome.benoit@sap.com> [WRT1900AC v1]
Signed-off-by: Felix Fietkau <nbd@nbd.name>
[removed 4.19 patch during cherry-pick]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit c6c4701def)
2020-01-28 16:39:02 +01:00
Adrian Schmutzler
47935940d6 ath79: fix SUPPORTED_DEVICES not matching ar71xx board names
Based on a script for comparison, this fixes (hopefully) all errors
in SUPPORTED_DEVICES for ar71xx->ath79 upgrade.

Devices where old string is removed as the device does not exist
in ar71xx:
- dlink_dir-859-a1
- tplink_archer-a7-v5
- tplink_cpe510-v3 [only in master]

Devices where string is changed because it did not match the board
name in ar71xx:
- tplink_tl-mr3220-v1
- tplink_tl-mr3420-v1
- tplink_tl-wr2543-v1
- tplink_tl-wr741nd-v4
- tplink_tl-wr841-v7
- ubnt_unifiac-mesh
- ubnt_unifiac-mesh-pro
- ubnt_unifiac-pro

For this device, the correct string could not be found, but we could
not determine the correct one. Thus, the string is removed for now:
- tplink_tl-wr740n-v4

The script for checking this is quite simple (note that newer
entries, i.e. ath79->ath79 upgrade, are displayed as missing):

  newpath=target/linux/ath79/image/
  oldpath=target/linux/ar71xx/base-files/lib/ar71xx.sh

  for s in $(grep -roh "SUPPORTED_DEVICES.*" $newpath | sed 's/SUPPORTED_DEVICES *.= *//'); do
    found="Missing"
    grep -q -r "\"$s\"" $oldpath && found="Found"
    echo "$s: $found."
  done

The errors might be filtered by appending 'grep "Missing"' to the script.

Fixes: FS#2751

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 07ce940b77)
2020-01-28 13:25:30 +01:00
Adrian Schmutzler
da5b5ae9b9 ath79: remove SUPPORTED_DEVICES for TP-Link Archer D50 v1
This device has not been supported in ar71xx, so there is no need
for an explicit SUPPORTED_DEVICES entry.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 894bdee756)
2020-01-28 13:22:12 +01:00
Hauke Mehrtens
f84981f6f8 mac80211: Update to version 4.19.98
The removed patches are all integrated in the upstream version now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-27 00:28:46 +01:00
Martin Schiller
3212290a3b lantiq: ltq-ptm: vr9: fix skb handling in ptm_hard_start_xmit()
Call skb_orphan(skb) to call the owner's destructor function and make
the skb unowned.

This is necessary to prevent sk_wmem_alloc of a socket from overflowing,
which leads to ENOBUFS errors on application level.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
(cherry picked from commit 996f02e5ba)
2020-01-26 19:23:46 +01:00
Magnus Kroken
6ee0138a6c mbedtls: update to 2.16.4
Fixes side channel vulnerabilities in mbed TLS' implementation of ECDSA.

Release announcement:
https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.4-and-2.7.13-released

Security advisory:
https://tls.mbed.org/tech-updates/security-advisories/mbedtls-security-advisory-2019-12

Fixes:
 * CVE-2019-18222: Side channel attack on ECDSA

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
(cherry picked from commit 6e96fd9047)
2020-01-26 19:23:40 +01:00
Koen Vandeputte
1c5ac590c4 kernel: bump 4.14 to 4.14.167
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-01-24 13:17:32 +01:00
Petr Štetiar
8038846b62 procd: update to version 2020-01-24
Get only fix backports from openwr-19.07 procd branch:

 31e4b2dfdbd7 state: fix reboot causing shutdown inside LXC container
 557f11b3a20f instance: provide error feedback if ujail binary is missing
 0a11aa405d3f instance: Fix instance_config_move_strdup() function
 44dd9419812b instance: fix typo in error message
 153820c76471 instance: fix pidfile and seccomp attributes double free

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-01-24 08:42:24 +01:00
Petr Štetiar
4e91c4e156 ramips: mt7621: ubnt-erx: allow sysupgrade from master
Currently it's not possible to downgrade from master:

 Device ubiquiti,edgerouterx not supported by this image
 Supported devices: ubnt-erx

So fix it by adding a DTS based device name from master into
SUPPORTED_DEVICES list.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-01-24 08:25:39 +01:00
Felix Fietkau
4a58a871c4 hostapd: fix faulty WMM IE parameters with ETSI regulatory domains
hostapd sets minimum values for CWmin/CWmax/AIFS and maximum for TXOP.
The code for applying those values had a few bugs leading to bogus values,
which caused significant latency and packet loss.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-01-23 15:00:16 +01:00
Anderson Vulczak
abaf329dad tools: tplink-safeloader: update soft_ver for TP-Link Archer C6 v2 (EU)
This patch updates "soft_ver" for TP-Link Archer C6 v2 (EU).

It makes possible to upload OpenWrt on lastest vendor's firmware
as the web-based updater checks for major.minor version during upload.

Due to that on next major/minor version update TP-Link will stop
us from using the web-based firmware update tool, so it will
require a new patch on soft_ver to match major and minor version.
Up to today's latest stock firmware the patch (major.minor.patch)
version does not matters, that allows downgrade from 1.1.4 to 1.1.1
but do not allow downgrade from 1.1.X to 1.0.X.

Signed-off-by: Anderson Vulczak <andi@andi.com.br>
(cherry picked from commit 7a8bfbf0ff)
(cherry picked from commit eeb93e5c2b23518e372737ecf8fdde4b9f139a49)
2020-01-23 14:33:21 +01:00
Kimmo Vuorinen
177c9ed4b0 uboot-envtools: ath79: add support for glinet,gl-ar150
Add ubootenv uci config for GL.inet GL-AR150

Signed-off-by: Kimmo Vuorinen <kimmo.vuorinen@gmail.com>
[commit title/message facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a8723c48ad)
2020-01-23 14:33:21 +01:00
Kimmo Vuorinen
a1502b0443 uboot-envtools: ar71xx: add support for gl-ar150/-domino/-mifi
Add ubootenv uci config for gl-ar150, gl-domino and gl-mifi

Signed-off-by: Kimmo Vuorinen <kimmo.vuorinen@gmail.com>
[commit message/title facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit dc6dfaac80)
2020-01-23 14:33:21 +01:00
Kimmo Vuorinen
b6675c2b2e ar71xx: change u-boot-env to read-write for gl-ar150/-domino/mifi
Change u-boot-env partitions to be mounted as read-write for gl-ar150,
gl-domino and gl-mifi so uboot-envtools support is possible.

Signed-off-by: Kimmo Vuorinen <kimmo.vuorinen@gmail.com>
[commit title/message facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 2c1cfacdde)
2020-01-23 14:33:21 +01:00
Petr Štetiar
eed8f30b98 urngd: update to version 2020-01-21
c7f7b6b65b82 Tag version 1.0.2
236b7a0aef21 Fix blocked entropy generation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 3d8edd9bb4)
2020-01-21 20:03:43 +01:00
Petr Štetiar
1636e99e80 urngd: update to latest Git head
* 40f939d57c67 Tag version 1.0.1
 * 9e758e6e6aec jitterentropy-rngd: update to version v1.1.0 + clang compile fix
 * 193586a25adc Fix wrong types in format strings used in debug build
 * d474977bb611 Add initial GitLab CI support

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit ed67b137c7)
2020-01-21 20:03:39 +01:00
Lech Perczak
1b4b4e3fae ar71xx: ubnt-rocket-m-ti: fix RSSI LED definitions
When mapping for RSSI LEDs was defined for interface wlan0 on
Ubiquiti Rocket M Titanium, it missed connection to actual interface.
Therefore create the mapping to interface, so RSSI LEDs work without
additional configuration, after starting rssileds service.

While at that, split RSSI into ~equal intervals for 6 LEDs,
and remove coefficients needed for PWM LEDs, as this board does not
support PWM LEDs.

Finally, for complete support, enable 'rssileds' package in per-device
rootfs, so the indicator works out of box.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
(cherry picked from commit 83708f233d)
2020-01-21 14:10:13 +01:00
Walter Sonius
c1245ebc96 brcm47xx: fix switch port order for Netgear WN2500RP V1
The Netgear WN2500RP V1 switch0 already works for LAN
however the port order for the LAN ports is inverted. Correct
physical port order watched from the back of the device is:
4 / 3 / 2 / 1
WAN port is absent on this device and therefore removed
from switch config.

Signed-off-by: Walter Sonius <walterav1984@gmail.com>
[move block to maintain alphabetic sorting]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 098cbc68ee)
2020-01-21 13:55:25 +01:00
Stephan Knauss
f638ef4325 kirkwood: fix HDD LED labels for Zyxel NSA325 in 01_leds
Change the LED labels for hdd1/hdd2 in 01_leds to match their
counterpart in DTS.

Signed-off-by: Stephan Knauss <openwrt@stephans-server.de>
[improve commit title and message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit fbf297be38)
2020-01-21 13:55:03 +01:00
Walter Sonius
d3c2547cf1 brcm47xx: fix switch port order for Netgear WNR3500 V2
The Netgear WNR3500 V2 switch0 already works for WAN/LAN
however the port order for the LAN ports is inverted. Correct
physical port order watched from the back of the device is:
Internet / 4 / 3 / 2 / 1 this resembles the Linksys E3000 V1.

Verfied with imagebuilder edit FILES=/etc/board.d/01_network

Signed-off-by: Walter Sonius <walterav1984@gmail.com>
(cherry picked from commit cf2f1fc687)
2020-01-21 13:54:49 +01:00
Sungbo Eo
f6ab1f1566 ramips: rt305x: remove unnecessary mediatek,portmap
"#mediatek,portmap" is not a valid property name.

If mediatek,portmap equals 0x0, then the esw driver ditches it and uses
the default value, 0x3f.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit f87281b295)
2020-01-21 13:54:25 +01:00
Sungbo Eo
1d56a7b75d ramips: mt76x8: fix bogus mediatek,portmap
mt76x8 uses esw_rt3050 driver, which does not accept mediatek,portmap with
string values. Convert the strings to integers to make it work.

According to its switch setup, WRTnode 2P/2R have a WAN port at port 0,
so the correct value should be 0x3e.

tplink_8m.dtsi uses "llllw", but it does not match switch setups of any
device using the DTSI. Remove it from the DTSI and add correct value to DTS
for each device.

These devices have a WAN port at port 0. Set the value to 0x3e.
- tplink,archer-c20-v4
- tplink,archer-c50-v3
- tplink,tl-mr3420-v5
- tplink,tl-wr840n-v4
- tplink,tl-wr841n-v13
- tplink,tl-wr842n-v5

These devices have only one ethernet port. They don't need portmap setting.
- tplink,tl-wa801nd-v5
- tplink,tl-wr802n-v4
- tplink,tl-wr902ac-v3

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(backported from commit 7a387bf9a0)
[removed TL-WR841N v14 which is not present in 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-01-21 13:54:18 +01:00
Maxim Anisimov
49b240cde8 ramips: fix portmap for TP-Link Archer C50 v4
According to 02_network portmap is wan=0 lan1=1 lan2=2 lan3=3 lan4=4

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
(cherry picked from commit ebf535a6cf)
2020-01-21 13:54:12 +01:00
Sungbo Eo
d3eabe44d0 ramips: mt7620/mt7621: remove invalid mediatek,portmap
mt7620 and mt7621 use mt7530 driver, which only accepts "llllw", "wllll",
and "lwlll" values.

According to its switch setup, Mi Router 3G v2 has a WAN port at port 4,
so the correct value should be "llllw".

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(backported from commit d3c0a94405)
[removed devices not in 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-01-21 13:54:04 +01:00
Christoph Krapp
67595ce380 ramips: add factory image for Netgear R6350
This adds factory image generation for all three
devices. These images can be flashed via WebUI
for easy installation.

Thanks to David Bauer for the inspiration.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
[altered commit to only include the R6350]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3c8df280a9)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-01-21 13:15:39 +02:00
Christoph Krapp
9c6913ccad ramips: add mt7615e support to Netgear R6350
Signed-off-by: Christoph Krapp <achterin@googlemail.com>
(cherry picked from commit 9861fa7aba)
2020-01-21 00:28:01 +01:00
Petr Štetiar
f8902d1ae6 libubox: update to version 2020-01-20
43a103ff17ee blobmsg: blobmsg_parse and blobmsg_parse_array oob read fixes
 5c0faaf4f5e2 tests: prefer dynamically allocated buffers
 1ffa41535369 blobmsg_json: prefer snprintf usage
 132ecb563da7 blobmsg: blobmsg_vprintf: prefer vsnprintf
 a2aab30fc918 jshn: prefer snprintf usage
 b0886a37f39a cmake: add a possibility to set library version
 a36ee96618a9 blobmsg: blobmsg_add_json_element() 64-bit values
 f0da3a4283b7 blobmsg_json: fix int16 serialization
 20a070f08139 tests: blobmsg/json: add more test cases
 379cd33d1992 tests: include json script shunit2 based testing

Acked-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 5c73bb12c8)
2020-01-20 21:14:08 +01:00
Petr Štetiar
5ca066a5c2 fstools: backport fix from version 2020-01-18
Contains only the FS#2735 fix:

 189b41b6b487 libblkid-tiny: fix f2fs labels by increasing label buffer

Commit adding new feature wasn't backported (needs patched kernel anyway):

 f5c7c1813f52 fstools: Add support to read-only MTD partitions (eg. recovery images)

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 63000bfaf7)
2020-01-20 21:14:08 +01:00
Koen Vandeputte
ae953449f2 kernel: bump 4.14 to 4.14.166
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-01-20 13:43:56 +01:00
Koen Vandeputte
945db9fb01 kernel: bump 4.14 to 4.14.165
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-01-20 13:43:56 +01:00
Koen Vandeputte
9298c443df kernel: bump 4.14 to 4.14.164
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2020-01-20 13:43:56 +01:00
DENG Qingfang
d46b00cf0f ramips: fix HiWiFi HC5962 status LED
Match LED behavior to stock firmware:

Red: booting
White: running

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 9a3c9a9656)
2020-01-18 16:09:39 +01:00
DENG Qingfang
03c35bda03 ramips: fix HiWiFi HC5962 switch configuration
HC5962 has only 3 LAN ports, switch port 0 is unused

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(backported from commit 68f49df315)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-01-18 16:09:16 +01:00
Ozgur Can Leonard
a885f7d3d0 ramips: add kmod-mt7615e to Xiaomi Mi Router 3 Pro images
Now that the mt76/mt7615e driver is in Openwrt, might as well use it.

Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com>
(cherry picked from commit d7c082ba4f)
2020-01-18 16:08:16 +01:00
Thomas Nixon
67c8e586c8 ar71xx/mikrotik: use ath10k-ct-smallbuffers for 64 MiB devices
This image is only needed on one device (wAP AC); since this target is
going to be removed anyway it doesn't make sense to add an extra "low
RAM" image.

Fixes OOM issues on RouterBoard wAP AC.

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
(cherry picked from commit 788c8485eb)
2020-01-18 00:31:37 +01:00
Jan Alexander
e18c87ef45 ramips: fix wps leds/btn for TP-Link TL-WA801ND v5
- fix color and active mode for existing wps led
- add green wps led
- add wps button

Signed-off-by: Jan Alexander <jan@nalx.net>
[wrap line]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 26105974e7)
2020-01-17 20:17:40 +01:00
Daniel Golle
455ba76bf9 hostapd: cleanup IBSS-RSN
set noscan also for IBSS and remove redundant/obsolete variable.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 702c70264b)
2020-01-16 17:32:02 +02:00
Eneas U de Queiroz
dd4d49dcc1 cryptodev-linux: remove DEFAULT redefinition
The 'DEFAULT:=m if ALL' line prevents the phase1 buildbots from building
the package, and users from downloading it, since they use 'ALL_KMODS=y'
but 'ALL' is not set.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 9b25f833eb)
2020-01-15 19:31:42 +01:00
Felix Fietkau
44b37774f9 mac80211: fix a page refcounting issue leading to leaks/crashes in rx A-MSDU decap
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit 9501469e11)
2020-01-15 12:26:07 +01:00
Felix Fietkau
a3b6ffe01b mac80211: fix sta TID stats leak on a few nl80211 calls
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit d5b3024139)
2020-01-15 12:23:46 +01:00
Petr Štetiar
25e1afb9e1 ucert: update to version 2019-12-19
14a279411cff fix certificate blob parsing vulnerability by using blob_parse_untrusted
19a7225ac018 fix leaking memory in cert_dump_blob
9dba44ddd4f5 fix possibly garbage value returned in cert_process_revoker
4462ff9dedfa add cram based unit tests
5fe64b5606aa cmake: split usign bits into static library
5d7626a2b6d8 cmake: reindent the file
e284ed941972 cmake: enable hardening compiler flags and fix the reported issues
7e5390666347 add initial GitLab CI support
fa0bf4ef45b1 cmake: add proper include and library dependencies

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 2544cb1ba3)
2020-01-14 00:21:35 +01:00
Petr Štetiar
fe197b8b09 ramips: mt7621: disable images for gehua_ghl-r-001
This device OOPs during the boot due to broken flash. It can be probably
fixed with `broken-flash-reset` once ramips is on 4.19 kernel.

So disable images for this device until its fixed.

Ref: FS#2695, PR#2483
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 28080d54d2)
2020-01-14 00:13:30 +01:00
Maxim Anisimov
08d9828b76 ramips: fix leds for TP-Link Archer C20 v4
- add "gpio" group for wan_orange led
- use tpt triggers for wifi led indication
- add wifi 5 GHz led support

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
[slight commit message adjustment, backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 3a538db60a)
2020-01-12 16:44:10 +01:00
Adrian Schmutzler
fd28ef59db ath79: add SUPPORTED_DEVICES for TP-Link TL-WR841N/ND v9 to v12
In ar71xx, v10 and v12 did not have separate board_name.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 7ed643d205)
2020-01-08 18:36:46 +01:00
Adrian Schmutzler
7a0d9b2eea ath79: add support for TP-Link TL-WR841N/ND v12
This router has the same hardware as TP-LINK TL-WR841N/ND v11 (same
FCC ID, same TFTP image name...).

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to wr841nv11_tp_recovery.bin
   (it's really v11, not v12)
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 8b76c6695b)
2020-01-08 18:35:34 +01:00
Adrian Schmutzler
bd3eb071fd ath79: add support for TP-Link TL-WR841N/ND v10
The TL-WR841N/ND v10 is mostly identical to the v9. Apart from some minor
changes, it contains a newer revision of the QCA9533 SoC and the CPU clock
is significantly higher.

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to wr841nv10_tp_recovery.bin
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 4254193c1d)
2020-01-08 18:32:52 +01:00
Andrew Cameron
19ff3f5105 ath79: add support for the TP-LINK CPE220 V3
This 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: 2x 100/10 Mbps, integrated into SoC

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 also applies some minor changes to the common DTSI:
- use &wmac for label-mac-device, as this one is actually set up in
  common DTSI
- move &eth0 to parent DTSI
- fix several leading spaces, added/removed newlines

Signed-off-by: Andrew Cameron <apcameron@softhome.net>
[DTS style fixes/improvements, updated commit message/title,
backport to 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-01-08 17:42:37 +01:00
Matthias Schiffer
44c827215d ethtool: fix PKG_CONFIG_DEPENDS
Add missing CONFIG_ prefix.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
(cherry picked from commit 41c19dd542)
2020-01-07 21:42:13 +01:00
Hauke Mehrtens
eb15634541 OpenWrt v19.07.0: revert to branch defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-06 22:41:02 +01:00
Hauke Mehrtens
aca39acedf OpenWrt v19.07.0: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-06 22:40:58 +01:00
Hauke Mehrtens
a3ffeb413b ramips: Fix sysupgrade for Xiaomi mir3g
This mostly reverts the original commit e9929ebeea ("ramips: Fix
sysupgrade for Xiaomi mir3g") and replaces it with setting the
BOARD_NAME to the old value.

This way the folder in the tar will be named sysupgrade-mir3g and not
sysupgrade-xiaomi_mir3g and the sysupgrade in OpenWrt 18.06 can find it.

Without this change sysupgrade from 18.06 to 19.07 is only possible with
the -F option.

I tested the following sysupgrades successfully without -F
18.06 -> 19.07
19.07 -> master
master -> 19.07

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-06 17:47:09 +01:00
Hauke Mehrtens
f58705b77e dnsmasq: Fix potential dnsmasq crash with TCP
This is a backport from the dnsmasq master which should fix a bug which
could cause a crash in dnsmasq.

I saw the following crashes in my log:
[522413.117215] do_page_fault(): sending SIGSEGV to dnsmasq for invalid read access from 2a001450
[522413.124464] epc = 004197f1 in dnsmasq[400000+23000]
[522413.129459] ra  = 004197ef in dnsmasq[400000+23000]
This is happening in blockdata_write() when block->next is
dereferenced, but I am not sure if this is related to this problem or if
this is a different problem. I am unable to reproduce this problem.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 414d054138)
2020-01-06 17:46:00 +01:00
Petr Štetiar
54711e528d x86: fix missing led variable warning during boot
Fixes following warning during the boot:

 WARNING: Variable 'led' does not exist or is not an array/object

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 5816caad26)
2020-01-06 08:40:06 +01:00
Maxim Storchak
abb0665bec ca-certificates: provide ca-certs by both ca-certificates and ca-bundle
- both packages provide ca-certs
- make ca-bundle the default provider

This should allow easy transition between these two forms of CA certificates storage

Signed-off-by: Maxim Storchak <m.storchak@gmail.com>
(cherry picked from commit dd299805ad)
2020-01-05 20:05:33 +01:00
Hauke Mehrtens
e9929ebeea ramips: Fix sysupgrade for Xiaomi mir3g
Without this change sysupgrade from 18.06 to 19.07 is only possible with
the -F option.
In OpenWrt 18.06 the nand_do_platform_check() function is called with
the board name mir3g only, if the tar does not use mir3g it will fail.
OpenWrt 19.07 and later support the metadata with the supported_devices
attribute to allow renaming. Do the renaming of the target between 19.07
and master like it is done for some other boards.

I tested the following sysupgrades successfully without -F
18.06 -> 19.07
19.07 -> master
master -> 19.07

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-05 20:05:33 +01:00
Jack Chen
dc399c4e12 ramips: remove duplicate dts nodes of MediaTek LinkIt Smart 7688
There are two identical wmac nodes in the dts file of MediaTek
LinkIt Smart 7688, so delete one of them.

Signed-off-by: Jack Chen <redchenjs@live.com>
(cherry picked from commit 4be271a486)
2020-01-05 20:03:18 +01:00
Petr Štetiar
a5653ec87e package: remove accidentally added symlink
In the commit f3439c4019 ("procd: update to version 2020-01-04") I've
somehow managed to add local testing symlink to the uledd package, so
removing it now.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-01-05 18:42:16 +01:00
Jo-Philipp Wich
6395ac4126 fstools: update to latest Git HEAD
823faa0 block: re-discover mtd devices on extroot mount retry

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 22a178e892)
2020-01-05 18:41:25 +01:00
Petr Štetiar
f3439c4019 procd: update to version 2020-01-04
Contains following changes:

 a5af33ce9a16 instance: strdup string attributes
 d2e8bf6ef7cf system: watchdog_set: fix misleading indentation
 9814807bd71c system: sysupgrade: fix possibly misleading error
 c7a2db3c1eb6 system: sysupgrade: rework firmware validation
 ea45c4a0f07c system: fix failing image validation due to EINTR
 4fde95506243 cmake: fix lookup of external libraries
 5ed190aae1b3 jail: remove accidentally added lines
 52c5c1980ba3 jail: set user and group inside jail
 3aa051b44177 system: sysupgrade: close input side of pipe before reading
 f47622e89c4d instance: Warn about unexpected number of parameters
 564ecdfd9cc4 instance: ujail: Fix allocated size for no_new_privs parameter
 7fb2e1dfa221 procd: simplify code in procd_inittab_run
 4a127c3c60af procd: replace exit(-1) with exit(EXIT_FAILURE)
 bc0a73eaad58 procd: add upgraded binary to .gitignore
 ba4c4dbbbd65 procd: add start-console support
 3e39fe539490 procd: shift arguments for askfirst only once
 5d6282906baf procd: skip respawn in case device disappeared
 d27949f12fd7 procd: guard fork_worker calls
 258aa04328a2 procd: Add cached and available to memory table
 8e9fb51fa66e procd: Switch to nanosleep
 c844ace9729a system: Fix possible integer overflows

Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-01-05 17:50:10 +01:00
Petr Štetiar
64c45d95d6 ubus: update to version 2019-12-27
Contains following changes:

 041c9d1c052b ubusd/libubus-io: fix socket descriptor passing
 8f2292478c57 ci: enable unit testing
 a1523d76b016 fix blob parsing vulnerability by using blob_parse_untrusted
 c60583743ccf ubus_monitor: workaround possibly false positive uses of memory after it is freed
 dac6c7c575ac ubusd_monitor: fix possible null pointer dereference
 060dfbb26da3 ubus_common: remove duplicate ARRAY_SIZE and add missing include
 c5f2053dfcfd workaround possibly false positive uses of memory after it is freed
 72be8e93f07d lua: ubus_lua_do_subscribe: fix copy&paste error
 a995b1e68129 lua: workaround false positive dereference of null pointer
 08f17c87a000 add fuzzer and cram based unit tests
 c413be9b376c refactor ubusd.c into reusable ubusd_library
 afd47189e864 examples: remove dead increments
 b2e544238672 add initial GitLab CI support
 058f4e9526ed libubus: fix incompatible pointer types assigment
 d2e026a33df8 iron out all extra compiler warnings
 5d7ca8309d0a ubusd/libubus-io: fix variable sized struct position warning
 d61282db5640 ubusd: fix comparison of integers of different signs
 90fb16234c22 cmake: enable extra compiler checks
 2e051f628996 ubus: Support static builds
 588baa3cd784 ubusd: retry sending messages on EINTR
 76ea27a62774 libubus: attempt to receive data before calling poll
 4daab27d004f libubus: do not abort recv_retry before completing a message

and bumps ABI_VERSION to 20191227.

Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-01-05 17:50:10 +01:00
Petr Štetiar
04fd5e22b2 libubox: update to version 2019-12-28
Contains following changes:

 cd75136b1342 blobmsg: fix wrong payload len passed from blobmsg_check_array
 eb7eb6393d47 blobmsg: fix array out of bounds GCC 10 warning
 86f6a5b8d1f1 blobmsg: reuse blobmsg_namelen in blobmsg_data
 586ce031eaa0 tests: fuzz: fuzz _len variants of checking methods
 b0e21553ae8c blobmsg: add _len variants for all attribute checking methods
 cd3059796a57 Replace use of blobmsg_check_attr by blobmsg_check_attr_len
 143303149c8b Ensure blob_attr length check does not perform out of bounds reads
 f2b2ee441adb blobmsg: fix heap buffer overflow in blobmsg_parse
 4dfd24ed88c4 blobmsg: make blobmsg_len and blobmsg_data_len return unsigned value
 2df6d35e3299 tests: add test cases for blobmsg parsing
 8a34788b46c4 test: fuzz: add blobmsg_check_attr crashes
 478597b9f9ae blob: fix OOB access in blob_check_type
 325418a7a3c0 tests: use blob_parse_untrusted variant
 0b24e24b93e1 blob: introduce blob_parse_untrusted
 6d27336e4a8b blob: refactor attr parsing into separate function
 833d25797b16 test: fuzz: add blob_parse crashes
 09ee90f8d6ed tests: add test cases for blob parsing
 436d6363a10b tests: add libFuzzer based tests
 bf680707acfd tests: add unit tests covered with Clang sanitizers
 f804578847de cmake: add more hardening compiler flags
 46f8268b4b5b blobmsg/ulog: fix format string compiler warnings
 eb216a952407 cmake: use extra compiler warnings only on gcc6+
 07413cce72e1 tests: jshn: add more test cases
 26586dae43a8 jshn: fix missing usage for -p and -o arguments
 8e832a771d3a jshn: fix off by one in jshn_parse_file
 cb698e35409b jshn: jshn_parse: fix leaks of memory pointed to by 'obj'
 c42f11cc7c0f jshn: main: fix leak of memory pointed to by 'vars'
 93848ec96dc5 jshn: refactor main into smaller pieces
 9b6ede0e5312 avl: guard against theoretical null pointer dereference
 c008294a8323 blobmsg_json: fix possible uninitialized struct member
 0003ea9c45cc base64: fix possible null pointer dereference
 8baeeea1f52d add assert.h component
 b0a5cd8a28bf add cram based unit tests
 1fefb7c4d7f9 add initial GitLab CI support
 c955464d7a9b enable extra compiler checks
 6228df9de91d iron out all extra compiler warnings

and bumps ABI_VERSION to 20191228.

Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2020-01-05 17:50:10 +01:00
Petr Štetiar
bf99f79200 base-files: sysupgrade: exit if the firmware download failed
Sysupgrade process shouldn't continue if the firmware image couldn't be
downloaded.

Ref: http://lists.infradead.org/pipermail/openwrt-devel/2019-December/020940.html
Reported-by: Petr Novák <petrn@me.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit cf3da66d2c)
2020-01-05 17:50:10 +01:00
Klaus Kudielka
3140d38042 base-files: upgrade: add case to export_bootdevice
The factory uboot of the Turris Omnia boots with "root=b301", and we
instruct new users to sysupgrade from there (e.g. method 1, step 7).
Currently, this will fail with "Unable to determine upgrade device".
Add a new case to export_bootdevice, which parses the hex argument.

Ref: https://github.com/openwrt/openwrt/pull/2340#issuecomment-561317688
Fixes: 2e5a0b81ec ("mvebu: sysupgrade: sdcard: keep user added partitons")
Reviewed-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 3a4f587c46)
2020-01-05 16:41:35 +01:00
Florian Fainelli
3c11032039 sunxi: Turn on CONFIG_PINCTRL_SUN4I_A10 for A20
CONFIG_PINCTRL_SUN4I_A10 controls both the A10 and the A20 enablong of
the pinctrl driver, this is necessary since upstream commit
5d8d349618a9464714c07414c5888bfd9416638f ("pinctrl: sunxi: add A20
support to A10 driver") which has been included in v4.13 and onwards.

Fixes: ad2b3bf310 ("sunxi: Add support for kernel 4.14")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
(cherry picked from commit 32e4eaef1b)
2020-01-05 13:09:17 +01:00
Eneas U de Queiroz
3fc47dd443 wolfssl: bump to 4.3.0-stable
This update fixes many bugs, and six security vulnerabilities, including
CVE-2019-18840.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit d5ede68f8b)
2020-01-04 23:04:24 +01:00
Hauke Mehrtens
330046922b kernel: bump 4.14 to 4.14.162
Refreshed all patches.

Compile-tested on: ipq40xx, ramips
Runtime-tested on: ipq40xx

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-04 23:04:24 +01:00
Hauke Mehrtens
084dfb8ebd kernel: bump 4.14 to 4.14.161
Refreshed all patches.

Compile-tested on: ipq40xx, ramips
Runtime-tested on: ipq40xx

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2020-01-04 23:04:24 +01:00
David Bauer
f8543adb14 mt76: update to the latest openwrt-19.07 version
8a78567 mt76: fix compilation warning in mt76_eeprom_override()

Signed-off-by: David Bauer <mail@david-bauer.net>
2020-01-04 22:02:22 +01:00
David Bauer
bce5342fb6 mt76: fix incorrect firmware path
The mt76 driver does load the firmware for the MT7615 chip from
/lib/firmware/mediatek instead of /lib/firmware. The driver loads the
firmware from this path since mt76 commit
ea3ab68c7589 ("mt76: mt7615: fix mt7615 firmware path definitions").

Fixes: a2e2c40b5e ("mt76: update to the latest openwrt-19.07 version")

Reported-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: David Bauer <mail@david-bauer.net>
Tested-by: Stijn Segers <foss@volatilesystems.org>
2020-01-04 12:40:04 +01:00
David Bauer
594f731e04 ramips: fix Archer C20i wireless MAC address
The TP-Link Archer C20i previously had a generic Ralink MAC address set
for both radios, as the caldata does only contain a generic MAC address.

Set the MAC address from the vendor firmware for both radios to assign
unique MAC addresses to every device.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3b013dcdf8)
2020-01-03 17:52:36 +01:00
David Bauer
037a151c56 ramips: fix Archer C2 v1 5GHz MAC address
The TP-Link Archer C2 v1 previously had a generic Ralink MAC address set
for the 5GHz radio (MT7610), as the caldata does only contain a generic
MAC address.

Set the MAC address from the vendor firmware for the 5GHz radio to
assign unique MAC addresses to every device.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit dcc923a4c4)
2020-01-03 17:52:36 +01:00
David Bauer
3e8b66e0da ramips: add system LED indicators for TP-Link C20i
Use the WPS LED to indicate system status like it is done for the
TP-Link Archer C2 v1 and many other boards.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit a272fafc9c)
2020-01-03 17:52:36 +01:00
David Bauer
80e0b97d07 ramips: convert TP-Link MT7620 boards to tpt trigger
This converts all MediaTek MT7620 boards from TP-Link to use the now
supported WiFi throughput LED trigger. This way, the LED state now
covers all VAPs regardless of their name.

Also align all single-WiFi LEDs to represent the state of the 2.4GHz
radio. This was not always the case previously, as later-added support
for the MT7610 altered the phy probing order.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 1e7c6381f0)
2020-01-03 17:52:35 +01:00
David Bauer
a2e2c40b5e mt76: update to the latest openwrt-19.07 version
330e832 mt76: mt76x0: fix default mac address overwrite
f97c33e mt76: mt7603: fix input validation issues for powersave-filtered frames
875f6d7 mt76: mt7615: increase MCU command timeout
abd7d86 mt76: clear skb pointers from rx aggregation reorder buffer during cleanup
96c7b07 mt76: eeprom: add support for big endian eeprom partition
19c8e20 mt76: fix possible undetected invalid MAC address
df64c56 mt76: Off by one in mt76_calc_rx_airtime()
1702b24 mt76: mt7603: reset STA_CCA counter setting the channel
383a631 mt76: mt76x0u: do not reset radio on resume
2dcfbdd mt76: disable bh in mt76_dma_rx_poll
947d20d mt76: fix rx dma ring descriptor state on reset
f3348f5 mt7615: replace sta_state callback with sta_add/sta_remove
faf5e6f mt76: mt7615: read {tx,rx} mask from eeprom
db78ee0 mt76: move mt76_get_antenna in mt76_core module
7121e16 mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs
5dfb0ec mt76: mt7615: disable radar pattern detector during scanning
e2f90ad mt76: move interface_modes definition in mt76_core module
cfdb751 mt76: mt7615: add ibss support
e0731a8 mt76: move SUPPORTS_REORDERING_BUFFER hw property in mt76_register_device
a85c06c mt76: use mt76_dev in mt76_is_{mmio,usb}
ea19cd7 mt76: Remove set but not used variable 'idx'
3cbaf81 mt76: mt76u: rely on a dedicated stats workqueue
20f0589 mt76: mt76u: rely on usb_interface instead of usb_dev
f2be00b mt76: dma: fix buffer unmap with non-linear skbs
c14d656 mt76: mt76x2e: disable pcie_aspm by default
58e1e96 mt76: mt7615: remove unneeded semicolon
c93a2d1 mt76: mt76x02u: update ewma pkt len in mt76x02u_tx_prepare_skb
1987b74 mt76: mt76x0: remove 350ms delay in mt76x0_phy_calibrate
50b1e9b mt76: refactor cc_lock locking scheme
d868638 mt76: remove obsolete .add_buf() from struct mt76_queue_ops
dc14ac6 mt7615: remove vif sta from poll list on interface remove
2a0a191 mt7603: remove vif sta from poll list on interface remove
d3a5895 mt76: fix a-mpdu boundary detection issue for airtime reporting
391e148 mt76: add sanity check for a-mpdu rx wcid index
01642d8 mt76: mt76x02: fix use-after-free in tx status code handling airtime
c11a4ad mt76: mt76x0: eeprom: add support for MAC address from OF
d94cc81 mt76: drop rcu read lock in mt76_rx_aggr_stop
7d8764d mt76: avoid enabling interrupt if NAPI poll is still pending
5b02a07 mt76: add missing locking around ampdu action
71c2ef0 mt76: fix aggregation stop issue
6f7d0f5 mt76: fix use-after-free bug in airtime fairness code
8f22de0 mt76: do not use devm API for led classdev
e7199f9 mt76: enable airtime fairness
81f2be0 mt76: mt7615: track tx/rx airtime for airtime fairness
2579122 mt76: mt7615: introduce mt7615_mac_wtbl_update routine
d91f7c1 mt76: mt7615: fix survey channel busy time
028071d mt76: mt7615: report tx_time, bss_rx and busy time to mac80211
0e5050e mt76: mt76x02: track approximate tx airtime for airtime fairness and survey
3429cc7 mt76: mt76x02: move MT_CH_TIME_CFG init to mt76x02_mac_cc_reset
de118bb mt76: unify channel survey update code
fdf0163 mt76: mt7603: switch to a different counter for survey busy time
ee31030 mt76: mt7603: track tx airtime for airtime fairness and survey
f34b1ae mt76: track rx airtime for airtime fairness and survey
a1d6891 mt76: store current channel survey_state in struct mt76_dev
b042987 mt76: rename mt76_driver_ops txwi_flags to drv_flags and include tx aligned4
2027763 mt76: report rx a-mpdu subframe status
1ddcadb mt76: mt7603: remove q_rx field from struct mt7603_dev
ea3ab68 mt76: mt7615: fix mt7615 firmware path definitions
081926a mt76: mt7603: collect aggregation stats
696c0fc mt76: mt7615: collect aggregation stats
23e8aed mt76: move aggr_stats array in mt76_dev
1118b5e mt76: mt7615: add queue entry in debugfs
fbc59e6 mt76: move queue debugfs entry to driver specific code
0b01ace mt76: mt76x02u: move mt76x02u_mac_start in mt76x02-usb module
c394887 mt76: mt76x0u: reset counter starting the device
0355b7a mt76: mt76x2: move mt76x02_mac_reset_counters in mt76x02_mac_start
f3792b5 mt76: mt76x02: move mac_reset_counter in mt76x02_lib module
63e8152 mt76: mt7615: enable SCS by default
b140512 mt76: mt76x0e: make array mt76x0_chan_map static const, makes object smaller
a20c20b mt76: usb: add lockdep_assert_held in __mt76u_vendor_request
0308d75 mt76: remove empty flag in mt76_txq_schedule_list
0efbc5d mt76: use cancel_delayed_work_sync in mt76_rx_aggr_shutdown
9c5df3c mt76: remove aggr_work field from struct mt76_wcid
8739f87 mt76: mt7615: fix control frame rx in monitor mode
e07407a mt7603: fix build with CONFIG_KERNEL_DYNAMIC_DEBUG=y
c7f8214 mt76: mt7615: add support to read temperature from mcu
6797378 mt76: mt7615: introduce mt7615_txwi_to_txp utility routine
496c78e mt76: mt76x0: remove unneeded return value on set channel
1d2acd5 mt76: mt76x0: remove redundant chandef copy
0167bfa mt76: make mt76_rx_convert static

Signed-off-by: David Bauer <mail@david-bauer.net>
2020-01-03 17:52:35 +01:00
Moritz Warning
1f927bd2f0 ramips: fix inverted reset button for Ravpower WD03
The button events "pressed" and "released" were switched. Tested with v18.06.4.

Signed-off-by: Moritz Warning <moritzwarning@web.de>
(cherry picked from commit 3e1325b219)
2020-01-03 15:10:44 +01:00
David Bauer
7ab5dc77b2 ramips: add LED trigger for TL-WR902AC v3 WAN LED
This adds an LED trigger for the WAN LED on top of the TP-Link
TL-WR902AC v3. Currently, only the LED on the port itself shows the link
state, while the LED on top of the device stays dark.

The WAN port of the device is a hybrid LAN/WAN one, hence why the LED at
the port was labled LAN.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit c48b571ad7)
2019-12-30 16:08:26 +01:00
David Bauer
ad4b939bd0 rt2x00: add throughput LED trigger
This adds a (currently missing) throughput LED trigger for the rt2x00
driver. Previously, LED triggers had to be assigned to the netdev, which
was limited to a single VAP.

Signed-off-by: David Bauer <mail@david-bauer.net>
Tested-by: Christoph Krapp <achterin@googlemail.com>
(cherry picked from commit 985ec835ae)
2019-12-30 15:17:32 +01:00
Felix Fietkau
91dde4291c mac80211: fix build without CONFIG_PCI
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit fa37dbbc43)
2019-12-29 09:08:09 +01:00
Felix Fietkau
30301dfcf0 mac80211: add patch to include local BSS rx time in survey information
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit 6a3739dc42)
2019-12-28 21:11:02 +01:00
Felix Fietkau
da7dde8993 mac80211: add pcie apsm backport changes
Required for newer versions of mt76

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit d64daf7026)
2019-12-28 20:40:58 +01:00
Adrian Schmutzler
62d5ece70b ramips: remove bogus ralink,mtd-eeprom with offset 0x4
Several devices in mt76x8 subtarget use the following line to set
up wmac in their DTS(I) files:

ralink,mtd-eeprom = <&factory 0x4>

This is strange for several reasons:
- They should use mediatek,mtd-eeprom on this SOC
- The caldata is supposed to start at 0x0
- The parent DTSI mt7628an.dtsi specifies mediatek,mtd-eeprom anyway,
  starting from 0x0
- The offset coincides with the default location of the MAC address
  in caldata

Based on the comment in b28e94d4bf ("ramips: MiWiFi Nano fixes"),
it looks like the author for this device wanted to actually use
mtd-mac-address instead of ralink,mtd-eeprom. A check on the same
device revealed that actually the MAC address start at offset 4 there,
so the correct caldata offset is 0x0.

Based on these findings, and the fact that the expected location on
this SOC is 0x0, we remove the "ralink,mtd-eeprom = <&factory 0x4>"
statement from all devices in ramips (being only mt7628an anyway).

Thanks to Sungbo Eo for finding and researching this.

Reported-by: Sungbo Eo <mans0n@gorani.run>
Fixes: b28e94d4bf ("ramips: MiWiFi Nano fixes")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 09d38a3bc3)
2019-12-28 02:34:41 +01:00
Paul Fertser
94153971bb ipq40xx: use ath10k-ct-smallbuffers for 128 MiB devices
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
(cherry picked from commit 0b7d779dcf)
2019-12-26 16:19:58 +01:00
Hauke Mehrtens
d13c6d078e kernel: bump 4.14 to 4.14.160
Refreshed all patches.

Compile-tested on: ipq40xx, ath79
Runtime-tested on: ipq40xx

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-12-25 15:51:43 +01:00
Koen Vandeputte
f80272dd9c kernel: bump 4.14 to 4.14.159
Refreshed all patches.

Remove upstreamed:
- 302-0002-dmaengine-dw-implement-per-channel-protection-contro.patch

Fixes:
- CVE-2019-19332

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-12-24 15:29:32 +01:00
Paul Fertser
3030abfa7e ath79: use ath10k-ct-smallbuffers for 64 MiB devices
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2019-12-24 15:29:32 +01:00
Hauke Mehrtens
36057763fa ath10k-firmware: Add kmod-ath10k-ct-smallbuffers to depends
Only select ath10k-ct-regular when smallbuffers version was not
selected.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 80f06cb601)
2019-12-24 01:04:14 +01:00
Paul Fertser
450b306e54 kernel: ath10k-ct: provide a build variant for small RAM devices
According to many bugreports [0][1][2] the default ath10k-ct kernel
module is unusable on devices with just 64 MiB RAM or with 128 MiB and
dual ath10k cards. The target boards boot but eventually oom-killer
starts to interfere with normal operation, so the current state is
effectively broken.

Since the two patches in question have a performance impact (and
possibly some other unexpected side-effects) a dedicated build variant
is added so that users of the low RAM devices can still benefit from all
the ath10k-ct advantages.

According to testing [3] results, the issue can be experienced even with
"a 256MB device with three radios". Measured performance impact of
implementing small buffers was lowering "the maximum 5 GHz throughput on
an IPQ40xx device without RPS/XPS optimizations from 494/432 Mbit/s for
TCP transfers (download/upload) to 438/343 Mbit/s"

The patches were apparently inspired by QSDK tweaks used by ODMs for the
affected devices.

[0] http://lists.infradead.org/pipermail/openwrt-devel/2019-December/020573.html
[1] https://github.com/openwrt/openwrt/pull/1077
[2] https://bugs.openwrt.org/index.php?do=details&task_id=2664
[3] https://github.com/freifunk-gluon/gluon/pull/1440#issue-195607701

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
[Remove double CONFIG_ATH10K-CT_LEDS entry]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1ac627024d)
2019-12-24 01:03:47 +01:00
Jo-Philipp Wich
e50d44d985 fstools: update to latest git HEAD
b4e25d5 libblkid-tiny: fix symbol collision with full libblkid

Fixes: FS#2691, FS#2692
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 5f4244150f)
2019-12-23 07:33:55 +01:00
Rafał Miłecki
6a151d6558 fstools: update to latest git HEAD
111a43f libblkid-tiny: vfat: Change parsing label in special cases
f43a1aa libblkid-tiny: vfat: Fix reading labels which starts with byte 0x05
157924d libblkid-tiny: add blkid_probe_set_id_label() stub
0c5761f libblkid-tiny: use separated buffer for each block device read
b82c5c1 libblkid-tiny: add functions for allocating & freeing probe struct
12851d6 blockd: don't flush devices list on "hotplug" call
5ea47fe blockd: fix vlist memory corruption

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 4ebc9dc9c4)
2019-12-23 07:33:55 +01:00
Yousong Zhou
43c5927312 fstools: bump to version 2019-11-03
2f2a09a block: mount_device: err log only when mp deviates from spec
da4edc1 block: mount_device: skip extroot earlier
32c3126 block: mount_action: handle mount/umount deps
fb0700f block: support hierarchical mount/umount
1212b5b block: umount: skip / unless -a is given
eda8b3f block: use fsck.fat instead of dosfsck
d05276d libblkid-tiny: ntfs: fix use-after-free

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit e4af39d563)
2019-12-23 07:33:55 +01:00
Hauke Mehrtens
f7779d64ba fstools: update to latest Git HEAD
4327ed4 mkdev: Avoid out of bounds read
9b3eb63 libblkid-tiny: use blkid_probe_set_utf8label for label set
c9d0462 libblkid-tiny: adds blkid_probe_set_utf8label support

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 541a321070)
2019-12-23 07:33:55 +01:00
Yousong Zhou
ab7386bd67 libubox: bump to version 2019-10-29
It contains a single change to vlist.h header file: "vlist: add more
macros for loop iteration".  This is needed for newer version of fstools

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 51e7624776)
2019-12-23 07:23:05 +01:00
Roman Yeryomin
c34499a6e4 libubox: update to latest git HEAD
eb30a03 libubox, jshn: add option to write output to a file

Signed-off-by: Roman Yeryomin <roman@advem.lv>
(cherry picked from commit c0e7ec91a0)
2019-12-23 07:23:05 +01:00
Sungbo Eo
7203a58d7b kernel: remove LINUX_4_9 dependency of kmod-dax
This patch resolves recursive dependency warning on a feed package:

$ make defconfig
Collecting package info: done
tmp/.config-package.in:104721:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:104721:symbol PACKAGE_nfs-kernel-server depends on NFS_KERNEL_SERVER_V4
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
feeds/packages/net/nfs-kernel-server/Config.in:4:symbol NFS_KERNEL_SERVER_V4 depends on PACKAGE_nfs-kernel-server
#
# configuration written to .config
#

19.07 branch uses kernel 4.14 only, so CONFIG_LINUX_4_9 symbol is not
needed anyway.

Ref: https://github.com/openwrt/packages/issues/10490

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
2019-12-23 00:32:12 +01:00
Jiri Kastner
0c07224b5a scripts/dowload.pl: add archive.apache.org to apache mirror list
apache mirrors holds only latest releases, to download
older releases, one must use archive.apache.org to get
them.

Signed-off-by: Jiri Kastner <cz172638@gmail.com>
(cherry picked from commit dc34c695c4)
2019-12-23 00:32:01 +01:00
Sungbo Eo
4fba5dc103 kernel: fix *-gpio-custom module unloading
Unloading and reloading the modules fails, as platform_device_put() does not
release resources fully.

root@OpenWrt:/# insmod i2c-gpio-custom bus0=0,18,0,5
[  196.860620] Custom GPIO-based I2C driver version 0.1.1
[  196.871162] ------------[ cut here ]------------
[  196.880517] WARNING: CPU: 0 PID: 1365 at fs/sysfs/dir.c:31 0x80112158
[  196.893431] sysfs: cannot create duplicate filename '/devices/platform/i2c-gpio.0'
...
[  197.513200] kobject_add_internal failed for i2c-gpio.0 with -EEXIST, don't try to register things with the same name in the same directory.

This patch fixes it by replacing platform_device_put() to
platform_device_unregister().

Fixes: da77408537 ("i2c-gpio-custom: minor bugfix")
Fixes: 3bc81edc70 ("package: fix w1-gpio-custom package (closes #6770)")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit a22b7a60d9)
2019-12-23 00:31:55 +01:00
Rosen Penev
df45ef5436 cmake: Install host packages to lib instead of lib64
Several CMake packages such as log4cplus and protobuf(-c) install to
lib64 instead of lib on some hosts. This completely breaks rpath linking.
Override it globally to avoid fixing each package individually.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Tested-by: Sebastian Kemper <sebastian_ml@gmx.net>
(cherry picked from commit 383abffb11)
2019-12-23 00:31:48 +01:00
Bjørn Mork
6351205d73 adb: fix for SuperSpeed devices
The USB descriptor parsing in adb fails to detect SuperSpeed devices
because of the SuperSpeed Endpoint Companion Descriptor.  This
cherry-picks the upstream fix for the problem.

Unfortunately there never were a release with this fix before the
conversion to C++, so upgrading to a newer version isn't an option.

This makes adb work with SuperSpeed devices like the Sierra Wireless
EM7565.  Tested and verified.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
(cherry picked from commit d034a1f457)
2019-12-23 00:31:29 +01:00
Jeffery To
d2e87c7800 toolchain/gcc: Backport patch to fix unconditional MULTIARCH_DIRNAME
This backports the patch for GCC PR target/89587 (gcc's rs6000
configuration unconditionally sets MULTIARCH_DIRNAME, even when
multiarch is disabled).

This currently affects apm821xx and may cause issues when
cross-compiling packages, e.g. Python 3[1].

This includes patches for GCC 8 (with the changelog diff removed);
this change is already included in GCC 9.2 and 7.5.

[1]: https://github.com/openwrt/packages/issues/10552

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
[Removed patch for GCC 7.4.0, GCC 7.5.0 already contains this]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c102f702e7)
2019-12-23 00:31:20 +01:00
Yorkie Liu
a7d880e830 toolchain/gcc: correct the check expr for newer clang
This fixes gcc build error within clang 11.0, it tweaks the version
string from LLVM to clang.

Signed-off-by: Yorkie Liu <yorkiefixer@gmail.com>
(cherry picked from commit 65a561fd09)
2019-12-23 00:31:13 +01:00
Aleksander Jan Bajkowski
3a863da268 lantiq: fix phys led
led2l and led2h value is incorrectly set by led3l and led3h.
Bug was introduced in commit: 863e79f8d5

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
Fixes: 863e79f8d5 ("lantiq: add support for kernel 4.9")
(cherry picked from commit 692390225d)
2019-12-23 00:31:02 +01:00
Jo-Philipp Wich
18107f4481 uhttpd: reset PKG_RELEASE
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 97af1fc979)
2019-12-22 23:04:37 +01:00
Jo-Philipp Wich
414ea30927 uhttpd: update to latest Git HEAD
5f9ae57 client: fix invalid data access through invalid content-length values

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f34f9a414d)
2019-12-22 22:51:08 +01:00
Sungbo Eo
27eea24921 ar71xx: fix MAC address setup for TL-WDR4300 board
The current ethernet MAC address setup of TL-WDR4300 board is different
from the setup of stock firmware:

OpenWrt: lan = label_mac -2, wan = label_mac -2
  stock: lan = label_mac,    wan = label_mac +1

This patch applies to all devices using TL-WDR4300 board:
TL-WDR3600 v1
TL-WDR4300 v1
TL-WDR4300 v1 (IL)
TL-WDR4310 v1
Mercury MW4530R v1

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 9b02d32e34)
2019-12-21 00:31:39 +01:00
Sungbo Eo
9bdd3d39ad ath79: fix MAC address setup for TP-Link TL-WDR3600/TL-WDR4300
The current ethernet MAC address setup of TL-WDR4300 board is different
from the setup of stock firmware:

OpenWrt: lan = label_mac -2, wan = label_mac -2
  stock: lan = label_mac,    wan = label_mac +1

The full address assignment is as follows:
LAN  label
WAN  label + 1
5G   label
2G   label - 1

This patch changes all devices using TL-WDR4300 board:
TL-WDR3600 v1 (checked on device)
TL-WDR4300 v1 (checked on device)
TL-WDR4300 v1 (IL)

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[rephrase/extend commit title/message, backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a4260eaab7)
2019-12-21 00:31:00 +01:00
Sungbo Eo
08c850f046 ramips: fix USB LED for Belkin F9K1109v1
Device support for Belkin F9K1109v1 was added using set_usb_led()
although this was removed in 772b27c207 ("ramips: set F5D8235 v1
usb led trigger via devicetree").

Use ucidef_set_led_usbport() instead.

Fixes: f2c83532f9 ("ramips: add support for Belkin F9K1109v1")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[rephrase commit title and message, backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 1f455418ef)
2019-12-20 15:57:02 +01:00
Rafał Miłecki
2c16044ccf mac80211: brcm: add support for BCM4359 SDIO chipset
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 17e2246eca)
2019-12-19 12:16:37 +01:00
Rafał Miłecki
c0f2905fa9 mac80211: brcm: backport 5.5 and 5.6 kernel patches
This update doesn't include:
3b1e0a7bdfee brcmfmac: add support for SAE authentication offload
be898fed355e brcmfmac: send port authorized event for FT-802.1X
due to nl80211 dependencies.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit c3aa33bf70)
2019-12-19 10:31:36 +01:00
Sungbo Eo
3243523c46 ath79: migrate LED paths of TL-WDR4300 board
TL-WDR4300 board uses only green LED names in DTSI.
This patch adds migration for them.

The actual LED colors on the devices have been reported to vary
across subrevisions (v1.x). Despite, the USB LEDs on the back might
have different color than the other LEDs on the front.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[extended commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 01d39cd18c)
2019-12-17 15:23:31 +01:00
Daniel Golle
d0a71a89e1 malta: remove CONFIG_LEGACY_PTY from kernel config
Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit e964338110)
2019-12-17 11:27:30 +02:00
Daniel Golle
9e6fb4463b sunxi: remove CONFIG_LEGACY_PTY from kernel config
Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 2105354968)
2019-12-17 11:27:29 +02:00
Daniel Golle
4aebbaeac1 layerscape: remove CONFIG_LEGACY_PTY from kernel config
Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 414d027ae8)
2019-12-17 11:27:23 +02:00
Daniel Golle
a2ac5b3a97 kirkwood: remove CONFIG_LEGACY_PTY from kernel config
Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 411e824ec3)
2019-12-17 11:27:23 +02:00
Daniel Golle
a467f39e55 at91: disable legacy PTYs and virtual terminals
Enabling legacy PTYs causes problems with procd-hotplug.
And as this is a headless target, no need to have virtual terminals.
Remove corresponding kernel config options, they are disabled in
generic kernel config.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit c1db4d9c56)
2019-12-17 11:27:20 +02:00
Daniel Golle
a77d4bc3a5 mpc85xx: remove CONFIG_LEGACY_PTY from kernel config
Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit d0d7f5d9e4)
2019-12-17 11:27:20 +02:00
Daniel Golle
40a7e761a0 uml: remove CONFIG_LEGACY_PTY from kernel config
Having legacy PTYs enabled causes problems with procd-hotplug.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit dcf48fda05)
2019-12-17 11:27:16 +02:00
Daniel Golle
852ec97e1c oxnas: disable legacy PTYs and virtual terminals
Enabling legacy PTYs causes problems with procd-hotplug.
And as this is a headless target, no need to have virtual terminals.
Remove corresponding kernel config options, they are disabled in
generic kernel config.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit c881769a55)
2019-12-17 11:27:12 +02:00
Hans Dedecker
1f1867dd9b odhcpd: optimize syslog priority values
e53fec8 treewide: optimize syslog priority values

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-12-16 21:17:23 +01:00
Manuel Kock
03c93679b4 lantiq: remove redundant WiFi LED on FRITZ!Box 7320
The led wireless trigger is already set correctly to phy0tpt through the
alias in the device tree.

Signed-off-by: Manuel Kock <github.web@manu.li>
[rephrased commit title]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 509894cffb)
2019-12-14 17:34:57 +01:00
David Bauer
795df80917 mpc85xx: add support for Enterasys WS-AP3710i
Hardware
--------

SoC:   NXP P1020 (2x e500 @ 800MHz)
RAM:   256M DDR3 (Micron)
FLASH: 32M NOR (Spansion S29GL128S)
BTN:   1x Reset
WiFi:  1x Atheros AR9590 2.4 bgn 3x3
       2x Atheros AR9590 5.0 an 3x3
ETH:   1x Gigabit Ethernet (Atheros AR8033)
LED:   System (green/red) - Radio{0,1} (green)
       LAN (connected to PHY)
        - GE blue
        - FE green

Serial is a Cisco-compatible RJ45 next to the ethernet port.
115200-N-8 are the settings for OS and U-Boot.

Installation
------------

1. Grab the OpenWrt initramfs, rename it to 01C8A8C0.img. Place it in
   the root directory of a TFTP server and serve it at
   192.168.200.200/24.

2. Connect to the serial port and boot the AP. Stop autoboot in U-Boot
   by pressing Enter when prompted. Credentials are identical to the one
   in the APs interface. By default it is admin / new2day.

3. Set the bootcmd so the AP can boot OpenWrt by executing

   $ setenv boot_openwrt "setenv bootargs;
     cp.b 0xee000000 0x1000000 0x1000000; bootm 0x1000000"
   $ setenv bootcmd "run boot_openwrt"
   $ saveenv

   If you plan on going back to the vendor firmware - the bootcmd for it
   is stored in the boot_flash variable.

4. Load the initramfs image to RAM and boot by executing

   $ tftpboot 0x1000000 192.168.200.200:01C8A8C0.img; bootm

5. Make a backup of the "firmware" partition if you ever wish to go back
   to the vendor firmware.

6. Upload the OpenWrt sysupgrade image via SCP to the devices /tmp
   folder.

7. Flash OpenWrt using sysupgrade.

   $ sysupgrade -n /tmp/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 16b01fb1b9)
2019-12-14 17:34:57 +01:00
Hans Dedecker
3959f11005 glibc: update to latest 2.27 commit (BZ #2503, BZ #2504)
bef0b1cb31 libio: Disable vtable validation for pre-2.1 interposed handles [BZ #25203]
4d5cfeb510 rtld: Check __libc_enable_secure before honoring LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126) [BZ #25204]
92f04eedb5 mips: Force RWX stack for hard-float builds that can run on pre-4.8 kernels

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-12-14 14:06:33 +01:00
Alin Nastac
a50c2190d3 glibc: backport fix for regexec buffer read overrun
Problem found by AddressSanitizer[1]:

 Latest `grep` (git commit 1019e6e) compiled with asan may cause a
 heap-buffer-overflow when `-i` is specified.

     ./grep -i '\(\(\)*.\)*\(\)\(\)\1' /bin/chvt

 =================================================================
 ==16206==ERROR: AddressSanitizer: heap-buffer-overflow on address

1. https://debbugs.gnu.org/34140

Ref: https://sourceware.org/bugzilla/show_bug.cgi?id=24114
Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
[commit title and description facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-12-14 14:06:22 +01:00
Hans Dedecker
929c6d733a glibc: update to latest 2.27 commit (BZ#23637)
5b4f7382af Add undef to fix test failure.
9456483fb2 Improve performance of memmem
373f8b06a3 Improve performance of strstr
4ec1b9e913 Fix strstr bug with huge needles (bug 23637)
ecd6271ed8 Speedup first memmem match
bba6b9288f Simplify and speedup strstr/strcasestr first match
7a4da6ef7a Improve strstr performance

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-12-14 14:06:03 +01:00
Hans Dedecker
e8e09c5893 glibc: update to latest 2.27 commit (BZ #24228, BZ #24744, BZ #24699)
5f0d2e0491 [AArch64] Add ifunc support for Ares
e6b7252040 aarch64,falkor: Use vector registers for memcpy
c74b884f70 aarch64,falkor: Ignore prefetcher tagging for smaller copies
0fc5934ebd aarch64/strncmp: Use lsr instead of mov+lsr
e0a0bd3acc aarch64/strncmp: Unbreak builds with old binutils
638caf3000 aarch64: Improve strncmp for mutually misaligned inputs
d5f45a29ff aarch64/strcmp: fix misaligned loop jump target
7f690fafad aarch64: Improve strcmp unaligned performance
40df047b3b aarch64: Fix branch target to loop16
062139f233 aarch64: Optimized memcmp for medium to large sizes
f3e2add213 aarch64: Use the L() macro for labels in memcmp
22bd3ab40e posix: Fix large mmap64 offset for mips64n32 (BZ#24699)
bdd16894aa aarch64: handle STO_AARCH64_VARIANT_PCS
0b48caab9a aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS
949da7f2fd io: Remove copy_file_range emulation [BZ #24744]
f056ac8363 libio: do not attempt to free wide buffers of legacy streams [BZ #24228]
5f90e009b1 NEWS: add entries for bugs 22964, 24180, and 24531

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-12-14 14:05:41 +01:00
Adrian Schmutzler
6e24df296c ath79: add support for TP-Link TL-WDR4300 v1 (IL)
The TL-WDR4300 v1 sold in Israel has a different TPLINK_HWID.

Thanks to Josh4300 for testing on device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit c642a97aa6)
2019-12-13 20:01:45 +01:00
Adrian Schmutzler
52c9f95178 ramips: allow JCG_MAXSIZE in kiB in Build/jcg-header
This allows JCG_MAXSIZE to be specified in kilobytes. This makes
this value more consistent and easier comparable with other size
variables.

This also changes the only occurence of the variable, for Cudy WR1000.

This is backported to 19.07 for convenience, as other developers
backporting device support might not be aware that JCG_MAXSIZE in
kilobytes would not work there.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 0bf4d681d4)
2019-12-13 19:54:14 +01:00
Olli Asikainen
e33a123140 brcm47xx: add switch configuration for WNR3500L
Netgear WNR3500L is an already supported device, but out of the
box, the device has no switch configuration and there is no wan.
The correct configuration for this specific model is similar to
some other models. This simple commit adds the correct switch
and the out-of-the-box experience is improved.

Experimentally determined:

Port 0 => WAN
Port 1..4 => LAN
Port 5..7 => unused
Port 8 => CPU

Signed-off-by: Olli Asikainen <olli.asikainen@gmail.com>
Tested-by: Fabian Zaremba <fabian@youremail.eu>
[added port mapping to commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit deb835849a)
2019-12-11 22:41:46 +01:00
Martin Schiller
d1d84da1c3 ramips: fix number of LAN Ports for Mikrotik RBM33G
The Mikrotik RBM33G has only 2 LAN ports.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
[moved node in 02_network to maintain alphabetic sorting; backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 3a55c7935d)
2019-12-11 22:41:38 +01:00
Walter Sonius
fa700ed714 ramips: fix switch port order for TP-Link Archer C20i
Physical port order watched from the backside of the C20i
(from left to right) is: Internet / 1 / 2 / 3 / 4

Physical Port	Switch port
WAN             0
LAN 3           1
LAN 4           2
LAN 1           3
LAN 2           4
(not used)      5
CPU             6

Signed-off-by: Walter Sonius <walterav1984@gmail.com>
[commit message/title improvements; backport to 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a065cd29bf)
2019-12-11 22:41:32 +01:00
Koen Vandeputte
0bb4733e67 ath10k-firmware: update Candela Tech firmware images
The release notes since last time for wave-1:

  *  November 29, 2019:  Fix IBSS merge issue, related to TSF id leakage bug in firmware code.
                         Thanks for Ahmed Zaki @ Mage-Networks for helping to diagnose and test.

The release notes since last time for wave-2:

  *  December 6, 2019:  Fix 160Mhz problem caused by logic that did not take into account the fact that
                        160Mhz has only 1/2 of the NSS of lower bandwidths in the rate table.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 30109782df3c74becd60dd13216346e1ea2fcc96)
2019-12-10 09:53:30 +01:00
Koen Vandeputte
c3cc419cc6 kernel: bump 4.14 to 4.14.158
Refreshed all patches.

Altered patches:
- 400-mtd-add-rootfs-split-support.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-12-10 09:53:30 +01:00
Santiago Piccinini
d2d12346e8 mac80211: unify setup of iw htmode for mesh and adhoc
This also fixes mac80211_prepare_vif iw set channel in monitor or
mesh mode.

Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: fixed commit message]
(cherry picked from commit c7fb12beb1)
2019-11-30 20:20:54 +01:00
Daniel Golle
06bf1a9b67 ucert: update to latest git HEAD
e4bd927 cast ucert_argv to proper type when passing to execv

Fixes warnings:

warning: passing argument 2 of 'execv' from incompatible pointer type
[-Wincompatible-pointer-types]
  254 |       execv(usign_argv[0], usign_argv)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 9c272dd3e4)
2019-11-30 20:20:54 +01:00
Hauke Mehrtens
d74526c1c5 OpenWrt v19.07.0-rc2: revert to branch defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-11-30 19:40:51 +01:00
Hauke Mehrtens
628e996928 OpenWrt v19.07.0-rc2: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-11-30 19:40:45 +01:00
David Bauer
db8345d8e4 generic ar8xxx: increase VLAN table for AR83x7
The Atheros AR8327 and AR8337 have (according to their datasheet) a
VLAN table with a maximum of 4096 entries.

Currently, there's a hard limit of 128 VLANs, which is the same as
for most other Atheros switches. Increase this limit only for the
AR83x7 series and modify some shared functions to allow them to work
with a variable max VLAN count.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3f79aaa297)
2019-11-30 16:52:33 +01:00
Satadru Pramanik
cde70954ef busybox: add glibc dependency for vi regex option
Build with musl libc fails with BUSYBOX_DEFAULT_FEATURE_VI_REGEX_SEARCH
enabled. Enabling BusyBox's vi regex search option depends upon GNU
regex.  Musl libc does not support GNU regex[1].

So this patch adds explicit dependency on GNU libc and while at it
remove the FIXME comment.

1. https://wiki.musl-libc.org/functional-differences-from-glibc.html

Ref: https://dev.archive.openwrt.org/ticket/21741.html
Ref: https://forum.openwrt.org/t/busybox-not-compiling/
Ref: https://github.com/openwrt/packages/issues/4453
Signed-off-by: Satadru Pramanik <satadru@umich.edu>
[commit subject/description tweaks, From: fix, USE_GLIBC fix, removed comments]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit f1410902e6)
2019-11-30 00:58:44 +01:00
Hauke Mehrtens
a4d798e8dd usign: Activate LTO compile option
This decreases the size of the usign application by 16% on MIPS BE.

old:
24,597 /usr/bin/usign

new:
20,501 /usr/bin/usign

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6ffd8a8f92)
2019-11-30 00:18:50 +01:00
Hauke Mehrtens
1fc05c3115 swconfig: Activate LTO compile option
This decreases the size of the swconfig application by 25% on MIPS BE.

old:
16,916 /sbin/swconfig

new:
12,565 /sbin/swconfig

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e926681387)
2019-11-30 00:18:45 +01:00
Hauke Mehrtens
5cb845ebfe mtd: Activate LTO compile option
This decreases the size of the mtd application by 25% on MIPS BE.

old:
20,597 /sbin/mtd

new:
16,421 /sbin/mtd

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1eb34b7287)
2019-11-30 00:18:40 +01:00
Jo-Philipp Wich
c38074de92 ramips: disable ZyXel Keenetic by default
Disable the ZyXel Keenetic images by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:11:58 +01:00
Jo-Philipp Wich
432a349761 ramips: disable WR512-3GN 4MB variant by default
Disable the WR512-3GN 4MB image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:11:58 +01:00
Jo-Philipp Wich
67aca5f0ae ramips: disable A5-V11 by default
Disable the A5-V11 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:11:58 +01:00
Jo-Philipp Wich
eb836ea8e9 ar71xx: disable TP-Link TL-WA855RE by default
Disable the TP-Link TL-WA855RE image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:11:58 +01:00
Jo-Philipp Wich
59ef47ae2c brcm47xx: disable Linksys E1000 v1 by default
Disable the Linksys E1000 v1 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/72
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:05:46 +01:00
Jo-Philipp Wich
7232d9247e ramips: disable TP-Link TL-WA750RE by default
Disable the TP-Link TL-WA750RE image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/30
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:05:46 +01:00
Jo-Philipp Wich
531ab59804 ar71xx: disable TP-Link TL-WA850RE by default
Disable the TP-Link TL-WA850RE image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/30
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-30 00:05:46 +01:00
Jo-Philipp Wich
634db7930a ramips: disable TP-Link TL-WR840N v5 by default
Disable the TP-Link TL-WR840N v5 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/29
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
6a124efb99 ramips: disable Sitecom WL-351 by default
Disable the Sitecom WL-351 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/24
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
2607c02ed5 ramips: disable D-Link DIR-645 by default
Disable the D-Link DIR-645 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/23
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
02fc43b4b4 ramips: disable D-Link DIR-300 B5/B6/B7 by default
Disable the D-Link DIR-300 B5/B6/B7 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/18
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
0686418338 ar71xx: disable Netgear WNR2000v4 by default
Disable the Netgear WNR2000v4 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/11
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
6af348f6a1 ar71xx: disable On Networks N150R by default
Disable the On Networks N150R image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/10
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
c65f09b641 ar71xx: disable TP-Link TL-WA850RE v2 by default
Disable the TP-Link TL-WA850RE v2 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/9
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
1793baee46 ar71xx: disable Netgear WNR612 v2 by default
Disable the Netgear WNR612 v2 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/4
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:28:44 +01:00
Jo-Philipp Wich
4b759caf51 ramips: disable ASUS RT-N10+ B1 by default
Disable the ASUS RT-N10+ B1 image by default as the device has
insufficient flash space for release build images.

Ref: https://forum.openwrt.org/t/devices-too-big-to-save-overlay/18161/1
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-29 23:24:23 +01:00
Koen Vandeputte
953d9c384f kernel: bump 4.14 to 4.14.156
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-29 10:00:35 +01:00
Stijn Tintel
7581a7bebc config: kernel: fix typo in HFSPLUG_FS_POSIX_ACL
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
(cherry picked from commit 5f68333952)
2019-11-28 15:47:50 +02:00
Piotr Dymacz
1859391e9e uboot-envtools: ath79: add support for YunCore XD4200 and A782
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 5d2a900163)
2019-11-26 18:17:46 +01:00
Piotr Dymacz
45c9923edf ath79: add support for YunCore XD4200 and A782
YunCore XD4200 ('XD4200_W6.0' marking on PCB) is Qualcomm/Atheros based
(QCA9563, QCA9886, QCA8334) dual-band, Wave-2 AC1200 ceiling AP with PoE
(802.3at) support. A782 model ('T750_V5.1' marking on PCB) is a smaller
version of the XD4200, with similar specification but lower TX power.

Specification:

- QCA9563 (775 MHz)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100/1000 Mbps Ethernet (QCA8334), with 802.3at PoE support (WAN)
- Wi-Fi 2.4 GHz:
  - XD4200: 2T2R (QCA9563), with ext. PA (SKY65174-21) and LNA
  - A782: 2T2R (QCA9563), with ext. FEM (SKY85329-11)
- Wi-Fi 5 GHz:
  - XD4200: 2T2R (QCA9886), with ext. FEM (SKY85728-11)
  - A782: 2T2R (QCA9886), with ext. FEM (SKY85735-11)
- LEDs:
  - XD4200: 5x (2x driven by SOC, 1x driven by AC radio, 2x Ethernet)
  - A782: 3x (1x RGB, driven by SOC and radio, 2x Ethernet)
- 1x button (reset)
- 1x UART (4-pin, 2.54 mm pitch) header on PCB
- 1x DC jack (12 V)

Flash instructions:

If your device comes with generic QSDK based firmware, you can login
over telnet (login: root, empty password, default IP: 192.168.188.253),
issue first (important!) 'fw_setenv' command and then perform regular
upgrade, using 'sysupgrade -n -F ...' (you can use 'wget' to download
image to the device, SSH server is not available):

  fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
  sysupgrade -n -F openwrt-...-yuncore_...-squashfs-sysupgrade.bin

In case your device runs firmware with YunCore custom GUI, you can use
U-Boot recovery mode:

1. Set a static IP 192.168.0.141/24 on PC and start TFTP server with
   'tftp' image renamed to 'upgrade.bin'
2. Power the device with reset button pressed and release it after 5-7
   seconds, recovery mode should start downloading image from server
   (unfortunately, there is no visible indication that recovery got
   enabled - in case of problems check TFTP server logs)

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit e5d4c09667)
2019-11-26 18:17:39 +01:00
Vincent Wiemann
83a18aefbd ath79: add support for YunCore TFTP image generation
YunCore QCA9k based devices released in 2019 require a custom TFTP image
for U-Boot built-in recovery mode (triggered with reset button). Image
has to be prepended with 'YUNCORE' keyword followed by U-Boot CLI
commands which will be executed later. Images without the custom header
will be ignored by U-Boot.

To be able to support both the vendor firmware (QSDK) and OpenWrt flash
layouts, used here commands change the 'bootcmd' before flashing image.

This commit adds generic helper script for YunCore devices with 16 MB of
flash and enables TFTP image generation for A770 model.

Signed-off-by: Vincent Wiemann <vincent.wiemann@ironai.com>
[pepe2k@gmail.com: commit description reworded, recipe renamed]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 8016f64864)
2019-11-26 17:28:37 +01:00
Adrian Schmutzler
449433d131 ath79: Add support for TP-Link Archer C60 v2
TP-Link Archer C60 v2 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561 + QCA9886.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed IP address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root
   directory
4. Turn off the router
5. Press and hold reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time the firmware should
   be transferred from the tftp server
8. Wait ~30 second to complete recovery

Flash instruction (under U-Boot, using UART):
tftp 0x81000000 ...-sysupgrade.bin
erase 0x9f030000 +$filesize
cp.b $fileaddr 0x9f030000 $filesize
reset

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 974d6958a7)
2019-11-26 17:01:28 +01:00
Adrian Schmutzler
70233e3afe ath79: Add support for TP-Link Archer C60 v1
TP-Link Archer C60v1 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561+QCA9886.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.

Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Flash instruction under U-Boot, using UART:
1. tftp 0x81000000 ...-sysupgrade.bin
2. erase 0x9f020000 +$filesize
3. cp.b $fileaddr 0x9f020000 $filesize
4. reset

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6d313da6dc)
2019-11-26 17:01:20 +01:00
Sungbo Eo
a2d9de21b8 base-files: config_generate: split macaddr with multiple ifaces
netifd does not handle network.@device[x].name properly if it
contains multiple ifaces separated by spaces. Due to this, board.d
lan_mac setup does not work if multiple ifaces are set to LAN by
ucidef_set_interface_lan.

To fix this, create a device node for each member iface when
running config_generate instead. Those are named based on the
member ifname:

  ucidef_set_interface_lan "eth0 eth1.1"
  ucidef_set_interface_macaddr "lan" "yy:yy:yy:yy:yy:01"

will return

  config device 'lan_eth0_dev'
        option name 'eth0'
        option macaddr 'yy:yy:yy:yy:yy:01'

  config device 'lan_eth1_1_dev'
        option name 'eth1.1'
        option macaddr 'yy:yy:yy:yy:yy:01'

ref: https://github.com/openwrt/openwrt/pull/2542

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[always use new scheme, extend description, change commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 298814e6be)
2019-11-26 17:01:12 +01:00
Lech Perczak
3a5e28bd26 ar71xx: ubnt-(xm,xw): add rssileds package
In order to make RSSI indicator on the device work out of box,
include "rssileds" package in per-device rootfs image by default
for Ubiquiti XM and XW devices, namely:
- Bullet M (XM/XW)
- Rocket M (XM/XW)
- Nanostation M (XM/XW)
- Nanostation Loco-M (XW)

This moves the package addition to the individual devices in order
to prevent accidental inclusions of the package when not looking
at the parent node carefully enough.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
[add bullet-m-xw, remove rocket-m-ti, extend commit message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 08d9c95417)
2019-11-26 17:01:01 +01:00
Adrian Schmutzler
1cb763c559 ath79: add PoE passthrough switch for Ubiquiti Nanostation (XM/XW)
This adds the gpio switch to enable PoE passthrough on Ubiquiti
Nanostation (XM/XW).

Values are copied from the implementation in ar71xx.

GPIO values checked on:
- NanoStation M5 XW
- NanoStation M2 XM

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 317e98a5a2)
2019-11-26 17:00:54 +01:00
Piotr Dymacz
a0897f8a46 uboot-envtools: ramips: add support for ALFA Network Quad-E4G
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 10bcf1eb40)
2019-11-24 21:47:27 +01:00
Piotr Dymacz
71469caa0a ramips: add support for ALFA Network Quad-E4G
ALFA Network Quad-E4G is a universal Wi-Fi/4G platform, which offers
three miniPCIe (PCIe, USB 2.0, SIM) and a single M.2 B-key (dual-SIM,
USB 3.0) slots, RTC and five Gigabit Ethernet ports with PoE support.

Specification:

- MT7621A (880 MHz)
- 256/512 MB of RAM (DDR3)
- 16/32+ MB of FLASH (SPI NOR)
- optional second SPI flash (8-pin WSON/SOIC)
- 1x microSD (SDXC) flash card reader
- 5x 10/100/1000 Mbps Ethernet, with passive PoE support (24 V) in LAN1
- optional 802.3at/af PoE module for WAN
- 3x miniPCIe slot (with PCIe and USB 2.0 buses, micro SIM and 5 V)
- 1x M.2/NGFF B-key 3042 (USB 3.0/2.0, mini + micro SIM)
- RTC (TI BQ32002, I2C bus) with backup battery (CR2032)
- external hardware watchdog (EM Microelectronic EM6324)
- 1x USB 2.0 Type-A
- 1x micro USB Type-B for system serial console (Holtek HT42B534)
- 11x LED (5 for Ethernet, 5 driven by GPIO, 1x power indicator)
- 3x button (reset, user1, user2)
- 1x I2C (4-pin, 2.54 mm pitch) header on PCB
- 4x SIM (6-pin, 2.00 mm pitch) headers on PCB
- 2x UART2/3 (4-pin, 2.54 mm pitch) headers on PCB
- 1x mechanical power switch
- 1x DC jack with lock (24 V)

Other:

- U-Boot selects default SIM slot, based on value of 'default_sim' env
  variable: '1' or unset -> SIM1 (mini), '2' -> SIM2 (micro). This board
  has additional logic circuit for M.2 SIM switching. The 'sim-select'
  will work only if both SIM slots are occupied. Otherwise, always slot
  with SIM inside is selected, no matter 'sim-select' value.
- U-Boot enables power in all three miniPCIe and M.2 slots before
  loading the kernel
- this board supports 'dual image' feature (controlled by 'dual_image'
  U-Boot environment variable)
- all three miniPCIe slots have additional 5 V supply on pins 47 and 49
- the board allows to install up to two oversized miniPCIe cards (vendor
  has dedicated MediaTek MT7615N/D cards for this board)
- this board has additional logic circuit controlling PERSTn pins inside
  miniPCIe slots. By default, PERSTn (GPIO19) is routed to all miniPCIe
  slots but setting GPIO22 to high allows PERSTn control per slot, using
  GPIO23-25 (value is inverted)

Flash instructions:

You can use the 'sysupgrade' image directly in vendor firmware which is
based on OpenWrt (make sure to not preserve settings - use 'sysupgrade
-n -F ...' command). Alternatively, use web recovery mode in U-Boot:

1. Power the device with reset button pressed, the modem LED will start
   blinking slowly and after ~3 seconds, when it starts blinking faster,
   you can release the button.
2. Setup static IP 192.168.1.2/24 on your PC.
3. Go to 192.168.1.1 in browser and upload 'sysupgrade' image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit e68539aca4)
2019-11-24 21:47:25 +01:00
Piotr Dymacz
939dfe61ed uboot-envtools: ramips: add support for ALFA Network R36M-E4G
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(cherry picked from commit 3cfea3a321)
2019-11-24 21:45:33 +01:00
Piotr Dymacz
c515cd7c34 ramips: add support for ALFA Network R36M-E4G
ALFA Network R36M-E4G is a dual-SIM, N300 Wi-Fi, compact size platform
based on MediaTek MT7620A WiSoC. This product is designed for operation
with 4G modem (can be bought in bundle with Quectel EC25, EG25 or EP06)
but supports also Wi-Fi modules (miniPCIe slot has USB and PCIe buses).

Specification:

- MT7620A (580 MHz)
- 64/128/256 MB of RAM (DDR2)
- 16/32+ MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 2T2R 2.4 GHz (MT7620A), with ext. LNA (RFFM4227)
- 1x miniPCIe slot (with PCIe and USB 2.0 buses and optional 5 V)
- 2x SIM slot (mini, micro) with detect and switch driven by GPIO
- 2x u.fl antenna connectors (for Wi-Fi)
- 8x LED (7 driven by GPIO)
- 2x button (reset, wifi)
- 2x UART (4-pin/2.54 mm pitch, 10-pin/1.27 mm pitch) headers on PCB
- 1x I2C (4-pin, 1.27 mm pitch) header on PCB
- 1x LED (8-pin, 1.27 mm pitch) header on PCB
- 1x DC jack with lock (12 V)

Other:

- there is a dedicated, 4-pin connector for optional RTC module (Holtek
  HT138x) with 'enable' input, not available at the time of preparing
  support for this board
- miniPCIe slot supports additional 5 V supply on pins 47 and 49 but a
  jumper resistor (R174) is not installed by default
- U-Boot selects default SIM slot, based on value of 'default_sim' env
  variable: '1' or unset -> SIM1 (mini), '2' -> SIM2 (micro). This will
  work only if both slots are occupied, otherwise U-Boot will always
  select slot with SIM card inside (user can override it later, in
  user-space)
- U-Boot resets the modem, using PERSTn signal, before starting kernel
- this board supports 'dual image' feature (controlled by 'dual_image'
  U-Boot environment variable)

Flash instruction:

You can use the 'sysupgrade' image directly in vendor firmware which is
based on OpenWrt (make sure to not preserve settings - use 'sysupgrade
-n -F ...' command). Alternatively, use web recovery mode in U-Boot:

1. Power the device with reset button pressed, the modem LED will start
   blinking slowly and after ~3 seconds, when it starts blinking faster,
   you can release the button.
2. Setup static IP 192.168.1.2/24 on your PC.
3. Go to 192.168.1.1 in browser and upload 'sysupgrade' image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit dfecf94c20)
2019-11-24 21:45:27 +01:00
Piotr Dymacz
7a62e909b2 ramips: support dual image feature on ALFA Network boards
New U-Boot version for MediaTek MT76x8/MT762x based ALFA Network boards
includes support for a 'dual image' feature. Users can enable it using
U-Boot environment variable 'dual_image' ('1' -> enabled).

When 'dual image' feature is enabled, U-Boot will modify DTB and divide
the original 'firmware' flash area into two, equal in size and aligned
to 64 KB partitions: 'firmware' and 'backup'. U-Boot will also adjust
size of 'firmware' area to match installed flash chip size.

U-Boot will load kernel from active partition which is marked with env
variable 'bootactive' ('1' -> first partition, '2' -> second partition)
and rename both partitions accordingly ('firmware' <-> 'backup').

There are 3 additional env variables used to control 'dual image' mode:
- bootlimit   - maximum number of unsuccessful boot tries (default: '3')
- bootcount   - current number of boot tries
- bootchanged - flag which informs that active partition was changed; if
                it is set and 'bootcount' reaches 'bootlimit' value,
                U-Boot will start web-based recovery which then updates
                both partitions with provided image

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
(backported from commit bc173ddd83)
2019-11-24 21:44:29 +01:00
Piotr Dymacz
ee71837e38 ramips: refresh all subtargets kernel configs
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-11-24 17:49:35 +01:00
Chuanhong Guo
3806899a50 ramips: use upstream RAW_APPENDED_DTB instead of our OWRTDTB
Upstream kernel added support for RAW_APPENDED_DTB on ralink arch
in the following commit:
02564fc89d3d ("ralink: Introduce fw_passed_dtb to arch/mips/ralink")

Use upstream solution and get rid of our OWRTDTB hack.
This commit set DEVICE_DTS to $$(DTS) instead of replacing DTS with
DEVICE_DTS in device profile because DTS variable will be dropped
in later commits.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[Tested on mt7621/mt76x8]
Tested-by: Chuanhong Guo <gch981213@gmail.com>
[Tested on rt305x/mt7620]
Tested-by: INAGAKI Hiroshi <musashino.open@gmail.com>
(cherry picked from commit 7a8d3432c7)
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-11-24 17:49:35 +01:00
Stijn Segers
f97d2351e2 ath79: remove ath10k drivers from Archer C7 v1 profile
Ath10k packages were removed from ar71xx in master in commit
34113999ef ("ar71xx: Remove ath10k packages from archer-c7-v1 (fixes
FS#1743)") but ath79 in master and the 19.07 branch still suffer from
the issue.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
[commit subject and description facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-11-23 20:42:59 +01:00
Yousong Zhou
7c321e00dd kernel: nf_conntrack_rtcache: fix WARNING on rmmod
Fixes b7c58a1ee ("kernel: nf_conntrack_rtcache: fix cleanup on netns
delete and rmmod")

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit b3779e920e)
2019-11-23 18:08:12 +00:00
Yousong Zhou
2a2f9ffe81 kernel: nf_conntrack_rtcache: fix WARNING on forward path
Fixes b7c58a1ee ("kernel: nf_conntrack_rtcache: fix cleanup on netns
delete and rmmod")

Resolves FS#2624

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 1c5df850a0)
2019-11-23 17:30:12 +00:00
Kamil Wcislo
15ce616c2d build: add PKG_SOURCE_URL_FILE support
It seems that there is a missing PKG_SOURCE_URL_FILE support.
This little fix adds the support for packages to change the name of the
downloaded file.

Sometimes it is desirable to change the downloaded archive file name, like
for mitigating name conflicts for different packages (some files on the server
could be named like, e.g. 2018-01-01.tar.gz) or for the cases that there is
no name for the file in the URL (e.g. http://someserver.com/download).

Signed-off-by: Kamil Wcislo <kamil.wcislo@lpnplant.io>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
(cherry picked from commit 09c428ec6b)
2019-11-23 13:36:28 +01:00
Yousong Zhou
436dbf12aa kernel: nf_conntrack_rtcache: fix cleanup on netns delete and rmmod
Fixes FS#1472, FS#2353, FS#2426

Fixes: b3f95490 ("kernel: generic: Add kernel 4.14 support")
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b7c58a1eeb)
2019-11-23 10:51:00 +00:00
Sebastian Kemper
b177b180bb mac80211: add default value for noscan
Commit b3d8b3a introduced a new test:

[ -n "$noscan" -a "$noscan" -gt 0 ] && hostapd_noscan=1

But if length of "$noscan" is zero (noscan is not set) this doesn't stop
the shell to evaluate the rest of the test.

root@hank2:~# [ -n "$noscan" -a "$noscan" -gt 0 ]
ash: out of range
root@hank2:~#

So when radios are brought up this shows in the log:

Sat Nov 23 10:51:38 2019 daemon.info procd: - init complete -
Sat Nov 23 10:52:24 2019 daemon.notice netifd: radio1 (1243): sh: out of range
Sat Nov 23 10:52:25 2019 user.notice firewall: Reloading firewall due to ifup of wan (eth0.2)
Sat Nov 23 10:52:25 2019 daemon.notice netifd: radio0 (1242): sh: out of range
Sat Nov 23 10:52:26 2019 authpriv.info dropbear[1536]: Not backgrounding

This commit sets noscan to 0 if unset and removes the gratuitous length
check, preventing the warning.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
(cherry picked from commit 28d84331f4)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-11-23 11:30:34 +01:00
Hauke Mehrtens
e68d589e7b e2fsprogs: Fix CVE-2019-5094 in libsupport
This adds the following patch from debian:
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?h=debian/stable&id=09fe1fd2a1f9efc3091b4fc61f1876d0785956a8
libsupport: add checks to prevent buffer overrun bugs in quota code

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0062aad8ec)
2019-11-22 22:54:28 +01:00
David Bauer
6160f773fe ipq40xx: add support for AVM FRITZ!Repeater 1200
Hardware
--------
SoC:   Qualcomm IPQ4019
RAM:   256M DDR3
FLASH: 128M NAND
WiFi:  2T2R IPQ4019 bgn
       2T2R IPQ4019 a/n/ac
ETH:   Atheros AR8033 RGMII PHY
BTN:   1x Connect (WPS)
LED:   Power (green/red/yellow)

Installation
------------

1. Grab the uboot for the Device from the 'u-boot-fritz1200'
   subdirectory. Place it in the same directory as the 'eva_ramboot.py'
   script. It is located in the 'scripts/flashing' subdirectory of the
   OpenWRT tree.

2. Assign yourself the IP address 192.168.178.10/24. Connect your
   Computer to one of the boxes LAN ports.

3. Connect Power to the Box. As soon as the LAN port of your computer
   shows link, load the U-Boot to the box using following command.

   > ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz1200.bin

4. The U-Boot will now start. Now assign yourself the IP address
   192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP
   server root directory and rename it to 'FRITZ1200.bin'.

5. The Box will now boot OpenWRT from RAM. This can take up to two
   minutes.

6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using
   scp. SSH into the Box and first write the Bootloader to both previous
   kernel partitions.

   > mtd write /path/to/uboot-fritz1200.bin uboot0
   > mtd write /path/to/uboot-fritz1200.bin uboot1

7. Remove the AVM filesystem partitions to make room for our kernel +
   rootfs + overlayfs.

   > ubirmvol /dev/ubi0 --name=avm_filesys_0
   > ubirmvol /dev/ubi0 --name=avm_filesys_1

8. Flash OpenWRT peristently using sysupgrade.

   > sysupgrade -n /path/to/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 7f187229a8)
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2019-11-22 22:32:58 +01:00
David Bauer
63b1e8f8d2 ipq-wifi: add AVM FRITZ!Repeater 1200 bdf
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit c0f4078164)
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2019-11-22 22:32:53 +01:00
David Bauer
496489ea95 uboot-fritz4040: update to latest HEAD
f92be9d add support for AVM FRITZ!Repeater 1200
d651302 enable support for Atheros AR8033 PHY
e4c857c add machtype override hack

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 36f43b61a7)
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2019-11-22 22:32:48 +01:00
Hauke Mehrtens
e30ca0d90a mac80211: update to version 4.19.85
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-22 20:33:19 +01:00
Hauke Mehrtens
b1ef0e4437 layerscape: Fix kernel patch
The kernel update added one "+" too much.

Fixes: db345220b4 ("kernel: bump 4.14 to 4.14.155")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-11-22 20:22:27 +01:00
Hauke Mehrtens
ad0463c2e8 kernel: Add missing configuration option
This was found by the build bot.

Fixes: db345220b4 ("kernel: bump 4.14 to 4.14.155")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 103e49f62e)
2019-11-22 20:22:26 +01:00
Jo-Philipp Wich
b0adf79c9e firewall: update to latest Git HEAD
8174814 utils: persist effective extra_src and extra_dest options in state file
72a486f zones: fix emitting match rules for zones with only "extra" options

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 482114d3f7)
2019-11-22 18:59:39 +01:00
Hans Dedecker
b416195927 firewall: update to latest git HEAD
daed0cf utils: fix resource leak

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 27bf8abe69)
2019-11-22 18:59:35 +01:00
Koen Vandeputte
3685f86cef cns3xxx: use proper macros for defining partition regions
While at it, also reorder the items for
improved readability.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 6b2f953db346cfb4ddf05654efa3ad7eb84ed99f)
2019-11-22 16:58:21 +01:00
Koen Vandeputte
db345220b4 kernel: bump 4.14 to 4.14.155
Refreshed all patches.

Altered patches:
- 707-dpaa-ethernet-support-layerscape.patch

Remove upstreamed:
- 034-v4.20-MIPS-BCM47XX-Enable-USB-power-on-Netgear-WNDR3400v3.patch
- 001-4.21-01-BCM63XX-fix-switch-core-reset-on-BCM6368.patch
- 073-qcom-ipq4019-fix-cpu0-s-qcom-saw2-reg-value.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-22 16:58:21 +01:00
Petr Štetiar
538ca42dda wireless-regdb: fix build when python2 from package feeds exists
wireless-regdb fails to build if there is python2 installed from package
feeds, as staging_dir/hostpkg/bin/python is python2 and
staging_dir/hostpkg/bin takes precedence over staging_dir/host/bin
(proper place with python -> python3 symlink) which leads to the build
failure of wireless-regdb, so this patch makes it explicit which python
should be used.

Reported-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Russell Senior <russell@personaltelco.net>
Tested-by: Lucian Cristian <lucian.cristian@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit b6bae4a2c9)
2019-11-22 01:10:48 +01:00
Kevin Darbyshire-Bryant
2751c5c752 wireless-regdb: fix patch fuzz
Refresh patches to tidy up some fuzz warnings

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 12840674d0)
2019-11-22 01:10:48 +01:00
John Crispin
d6ecadb05c wireless-regdb: fix Makefile indentation
Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit 8562e77953)
2019-11-22 01:10:48 +01:00
Petr Štetiar
0a4071b550 wireless-regdb: set PKGARCH:=all
As it's an architecture-independent binary file.

Ref: https://github.com/openwrt/openwrt/pull/1521#issuecomment-514687053
Suggested-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 57d1c05ec9)
2019-11-22 01:10:48 +01:00
Petr Štetiar
e8d528af7e wireless-regdb: prefer python provided by make variable
Usage of predefined make variables is preferred.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit d3853d17a3)
2019-11-22 01:10:48 +01:00
Hauke Mehrtens
53d8de0207 wireless-regdb: Make it build with python2
This backports a patch to build it work with python2 in addition to
python3.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit d3a8a62692)
2019-11-22 01:10:32 +01:00
Zachary Riedlshah
f2ef9b4fea wireless-regdb: update to 2019.06.03
Fixes build issues on a python3 host (issues with the print statement
formatting in the current build).

Includes 100-regdb-write-firmware-file-format-version-code-20.patch and
other fixes.

Closes bugs.openwrt.org/index.php?do=details&task_id=1605.

Uses the tarball as requested.

Signed-off-by: Zachary Riedlshah <git@zacharyrs.me>
(cherry picked from commit ef3f868da0)
2019-11-22 01:08:28 +01:00
Adrian Schmutzler
8fac0b398c ar71xx: fix buttons for TP-Link TL-WDR4900 v2
TP-Link TL-WDR4900 v2 only has one combined WPS/Reset button, so
don't set up an RFKILL for this device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 25127f58b4)
2019-11-21 12:29:54 +01:00
Adrian Schmutzler
3c65c47ce6 ar71xx: fix LED setup for TL-WDR4900 v2
In ar71xx there is only one combined mach file for Archer C5/C7 and
TL-WDR4900 v2. This one uses the same LED struct for all devices,
defining "green" LEDs for them. However, WDR4900 uses blue front
LEDs, while only C5/C7 uses green ones. Despite, in base-files
WDR4900 is actually set up with "blue" for the mentioned LEDs.

Thus, this patch creates a separate LED struct for WDR4900, so the
LEDs can be set up correctly. Despite, the wlan5g LED is removed as
it is controlled by ath9k chip for WDR4900 (in contrast to C5/C7).

Note: While front LEDs are blue, USB LEDs (on the back) are green,
so colors are mixed intentionally for the WDR4900 v2.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 93f2bcc35e)
2019-11-21 12:29:47 +01:00
Sungbo Eo
b6c80f85cb ramips: set uImage name of WeVO 11AC NAS and W2914NS v2
The stock firmware and bootloader only accept uImage with names that
match certain patterns. This patch enables OpenWrt installation from
stock firmware without having to reflash the bootloader or access the
UART console.

Installation via web interface:
1.  Flash **initramfs** image through the stock web interface.
2.  Boot into OpenWrt and perform sysupgrade with sysupgrade image.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 19800ac095)
[backported]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-11-21 12:29:37 +01:00
Adrian Schmutzler
e945c43142 ar71xx: fix MAC address setup for TL-WDR4900 v2
The MAC address setup of the TL-WDR4900 v2 is different from the
C5/C7. This aligns ar71xx with the setup in ath79:

wlan0 (5GHz) : -2
wlan1 (2.4GHz) : -1
eth1 (LAN) : 0
eth0 (WAN) : 1

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a9d3084b83)
2019-11-21 12:29:28 +01:00
Adrian Schmutzler
8a21bc3622 ar71xx: fix MAC addresses for Archer C5 v1, C7 v1/v2, WDR4900 v2
As discussed in 1d18a14a90 ("ath79: really fix TP-Link Archer C7
v2 MAC address"), stock firmware MAC address assignment is
actually as follows:

wlan0 (5GHz) : -1
wlan1 (2.4GHz) : 0
eth1 (LAN) : 0
eth0 (WAN) : 1

This has never been fixed for ar71xx, so let's do it now.
Note that with WDR4900 v2 even both wlan0 and wlan1 where assigned
to basemac-1 before ...

Fixes: FS#408

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit a021268032)
2019-11-21 12:29:20 +01:00
Koen Vandeputte
ca3339c0fc ipq40xx: fix build error
Add missing brace which was accidentally omitted

Fixes: 3c5c49af8b ("kernel: bump 4.14 to 4.14.154")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-20 09:27:15 +01:00
Koen Vandeputte
75d11f665c mac80211: backport upstream fixes
This potentially fixes some issues seen on IBSS
when interfaces go out of range and then re-appear.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-19 15:02:22 +01:00
Koen Vandeputte
dd284c6c57 toolchain/gcc: bump to 7.5.0
This updates the GCC to the next minor release which fixes +213 bugs.
Tested on ARMv6, ARMv7, MIPS R2, x86

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-19 15:02:22 +01:00
Koen Vandeputte
3c5c49af8b kernel: bump 4.14 to 4.14.154
Refreshed all patches.

Altered patches:
- 902-debloat_proc.patch
- 040-dmaengine-qcom-bam-Process-multiple-pending-descript.patch
- 807-usb-support-layerscape.patch
- 809-flexcan-support-layerscape.patch
- 816-pcie-support-layerscape.patch

Remove upstreamed:
- 303-spi-nor-enable-4B-opcodes-for-mx66l51235l.patch

New symbols:
X86_INTEL_MPX
X86_INTEL_MEMORY_PROTECTION_KEYS
CONFIG_X86_INTEL_TSX_MODE_OFF
X86_INTEL_TSX_MODE_ON
X86_INTEL_TSX_MODE_AUTO
SGL_ALLOC

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-19 15:02:22 +01:00
Hauke Mehrtens
17d8e47d35 mac80211: Adapt to changes to skb_get_hash_perturb()
The skb_get_hash_perturb() function now takes a siphash_key_t instead of
an u32. This was changed in commit 55667441c84f ("net/flow_dissector:
switch to siphash"). Use the correct type in the fq header file
depending on the kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit eaa047179a)
2019-11-18 21:37:40 +01:00
Rafał Miłecki
67957cd807 mac80211: brcmfmac: fix PCIe reset crash and WARNING
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit cde8c2f2fb)
2019-11-18 15:13:15 +01:00
Adrian Schmutzler
a8b293598f ath79: fix sysupgrade from ar71xx for WNDR3700 V2 and WNDR3800(CH)
ar71xx has just one board name "wndr3700" for WNDR3700 V1/V2,
WNDR3800 and WNDR3800CH, whereas ath79 provides separate images for
the boards. So, update SUPPORTED_DEVICES to store the correct
ar71xx board names.

Fixes: FS#2510

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit fc44a8481c)
2019-11-17 14:04:16 +01:00
Roger Pueyo Centelles
fe82c71964 ath79: include rssileds package for ubnt devices with LEDs
Some Ubiquiti devices had the RSSI LEDs configured in 01_leds but
were missing the rssileds package, while others that don't have
RSSI LEDS had the package included.

This commit includes the rssileds package only for those devices
that need it.

Tested on a NanoStation M XW.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(cherry picked from commit 1c6066a867)
[backported to 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-11-17 14:04:16 +01:00
Christian Lamparter
960de44fa9 ramips: assign correct key-code to wps buttons
The two ASUS WL-330N and WL-330N3G had the
reset keycode assigned to the WPS button. This patch
changes all three devices to use KEY_WPS_BUTTON in
the hopes that this fixes unwanted restarts/
unexpected behavior from the users point of view.

[dropped RG21S]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit ad65d9d7b2)
2019-11-17 02:48:39 +01:00
Christian Lamparter
b50177d151 ath79: remap D-Link DIR-859 A1 WPS button to WPS
The WPS button was mapped to the restart/reset. This patch
changes it to emit the KEY_WPS_BUTTON keycode so pressing
the WPS button does initiate WPS.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 7a7610c21b)
2019-11-16 23:35:44 +01:00
Jo-Philipp Wich
1bd280b1ef ramips: disable D-Link DIR-300 B1 by default
Disable the DIR-300 B1 image by default as the device has insufficient
flash space for release build images.

Fixes: FS#2606
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-16 19:54:42 +01:00
Petr Štetiar
a1ff175dbf ramips: rt3833: fix build breakage
Commit 60f41c6c9e ("ramips: add usb-ledtrig-usbport to DEVICE_PACKAGES
of CY-SWR1100") added stray | during backport which caused build
breakage on the buildbots:

 bash: -c: line 0: syntax error near unexpected token `|'
 bash: -c: line 0: `echo kmod-usb-core kmod-usb-ledtrig-usbport kmod-usb-ohci kmod-usb2 swconfig | | mkhash md5 | head -c 8'

Fixes: 60f41c6c9e ("ramips: add usb-ledtrig-usbport to DEVICE_PACKAGES of CY-SWR1100")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-11-15 07:47:51 +01:00
Sungbo Eo
60f41c6c9e ramips: add usb-ledtrig-usbport to DEVICE_PACKAGES of CY-SWR1100
CY-SWR1100 has a USB LED but kmod-usb-ledtrig-usbport is missing
in default images. This commit adds it.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[changed commit title, backported to 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 261c746631)
2019-11-14 23:23:04 +01:00
Sungbo Eo
079b202749 ramips: fix MAC address setup for Samsung CY-SWR1100
Ethernet MAC address setup has been broken since c3e420f28c. Restore
original setting.

Fixes: c3e420f28c ("ramips: Add support for D-Link DCH-M225")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 7231c1edd9)
[backported due to base-files split]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-11-14 23:23:04 +01:00
Sungbo Eo
2117f632e3 kernel: fix typo in fb-sys-fops autoload
AutoLoad parameter must match the exact kernel module name. Fix it.

Fixes: 125f1ce9ad ("kernel: video: add DRM core and IMX DRM support for HDMI/LVDS")
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 6990510aca)
2019-11-14 23:00:00 +01:00
Kyle Copperfield
a6e7f68c7f hostapd: add IEEE 802.11k support
Enables radio resource management to be reported by hostapd to clients.

Ref: https://github.com/lede-project/source/pull/1430
Co-developed-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
Signed-off-by: Kyle Copperfield <kmcopper@danwin1210.me>
[removed the DMARC crap]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 87f9292300)
2019-11-14 20:59:58 +01:00
Hauke Mehrtens
f6111dbeed hostapd: Add mesh support for wpad full
This increases the size of the binary slightly:

old:
427722 wpad-wolfssl_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk
431696 wpad-openssl_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk

new:
442109 wpad-wolfssl_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk
445997 wpad-openssl_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 49cc712b44)
2019-11-14 20:59:58 +01:00
Hauke Mehrtens
0e85b638f7 hostapd: use getrandom syscall
hostapd will not use the getrandom() syscall and as a fallback use
/dev/random, the syscall is supported since Linux 3.17 and in the musl,
glibc and uclibc version used by OpenWrt.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 998686364d)
2019-11-14 20:59:58 +01:00
Hauke Mehrtens
81908622a9 hostapd: Remove unneeded patch
All the content of this function is proceeded by IEEE8021X_EAPOL no code
accesses the ssid variable outside of this ifdef.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 0d86bf518a)
2019-11-14 20:59:58 +01:00
Hauke Mehrtens
90a0daf4fe hostapd: use config option CONFIG_NO_LINUX_PACKET_SOCKET_WAR
Instead of patching the workaround away, just use the config option.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 9b4a27455c)
2019-11-14 20:59:58 +01:00
Hauke Mehrtens
5e8d1b52da hostapd: Update to version 2.9 (2019-08-08)
The size of the ipkgs increase a bit (between 0.7% and 1.1%):

old 2019-04-21 (2.8):
288264 wpad-basic_2019-04-21-63962824-1_mipsel_24kc.ipk
256188 wpad-mini_2019-04-21-63962824-1_mipsel_24kc.ipk
427475 wpad-openssl_2019-04-21-63962824-1_mipsel_24kc.ipk
423071 wpad-wolfssl_2019-04-21-63962824-1_mipsel_24kc.ipk

new 2019-08-08 (2.9):
290217 wpad-basic_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk
258745 wpad-mini_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk
431732 wpad-openssl_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk
427641 wpad-wolfssl_2019-08-08-ca8c2bd2-1_mipsel_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 167028b750)
2019-11-14 20:59:58 +01:00
Hauke Mehrtens
80b58a9db6 hostapd: Update to version 2.8 (2019-04-21)
This also syncs the configuration files with the default configuration
files, but no extra options are activated or deactivated.

The mesh patches were partially merged into hostapd 2.8, the remaining
patches were extracted from patchwork and are now applied by OpenWrt.
The patches still have open questions which are not fixed by the author.
They were taken from this page:
https://patchwork.ozlabs.org/project/hostap/list/?series=62725&state=*

The changes in 007-mesh-apply-channel-attributes-before-running-Mesh.patch
where first applied to hostapd, but later reverted in hostapd commit
3e949655ccc5 because they caused memory leaks.

The size of the ipkgs increase a bit (between 1.3% and 2.3%):

old 2018-12-02 (2.7):
283337 wpad-basic_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk
252857 wpad-mini_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk
417473 wpad-openssl_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk
415105 wpad-wolfssl_2018-12-02-c2c6c01b-11_mipsel_24kc.ipk

new 2019-04-21 (2.8):
288264 wpad-basic_2019-04-21-63962824-1_mipsel_24kc.ipk
256188 wpad-mini_2019-04-21-63962824-1_mipsel_24kc.ipk
427475 wpad-openssl_2019-04-21-63962824-1_mipsel_24kc.ipk
423071 wpad-wolfssl_2019-04-21-63962824-1_mipsel_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
(cherry picked from commit 8af79550e6)
2019-11-14 20:59:58 +01:00
Jo-Philipp Wich
e1854815aa hostapd: mirror ieee80211w ap mode defaults in station mode
For AP mode, OpenWrt automatically sets ieee80211w to either 1 or 2, depending
on whether the encryption is set to sae-mixed, or sae/owe/eap suite-b.

Mirror the same defaults for client mode connections, in order to allow an
OpenWrt station to associate to an OpenWrt ap with SAE, OWE or Suite-B encryption
without the need to manually specify "option ieee80211w" on the station.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit abb4f4075e)
2019-11-14 20:59:58 +01:00
Jo-Philipp Wich
3e9b3d0ba9 hostapd: fix OWE settings in client mode
This changes fixes the generation of the wpa_supplicant client configuration
in WPA3 OWE client mode. Instead of incorrectly emitting key_mgmt=NONE, use
the proper key_mgmt=OWE setting instead.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 4209b28d23)
2019-11-14 20:59:58 +01:00
Leon M. George
eba68342f9 hostapd: declare struct wpa_bss early
wps_supplicant.h assumes that 'struct wpa_bss' is forward declared if
CONFIG_WPS is not defined.  With the later inclusion of
600-ubus_support, the issue manifests in warnings like these:

wps_supplicant.h:113:15: warning: 'struct wpa_bss' declared inside parameter list will not be visible outside of this definition or declaration
        struct wpa_bss *bss)
               ^~~~~~~

This patch forward declares 'struct wpa_bss' regardless.

Signed-off-by: Leon M. George <leon@georgemail.eu>
[commit message facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit f974f8213b)
2019-11-14 20:59:58 +01:00
Leon M. George
0fcf02d0a5 hostapd: revert signature change in patch
The original wpa_hexdump uses a 'void *' for the payload.  With patch
410-limit_debug_messages, the signature changes and compiler warnings
occur at various places.  One such warning is:

 wpa_debug.h:106:20: note: expected 'const u8 * {aka const unsigned char *}' but argument is of type 'struct wpa_eapol_key *'

Signed-off-by: Leon M. George <leon@georgemail.eu>
[commit message facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit a123df2758)
2019-11-14 20:59:58 +01:00
Eneas U de Queiroz
047329273b hostapd: adjust removed wolfssl options
This edjusts the selection of recently removed wolfssl options which
have always been built into the library even in their abscence.
Also remove the selection of libwolfssl itself, allowing the library to
be built as a module.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 94d131332b)
2019-11-14 20:59:58 +01:00
Russell Senior
d5f509861e base-files: add /usr/share/libubox/jshn.sh to sysupgrade stage2
Discovered recent changes had broken sysupgrade for ar71xx mikrotik
rb-493g, traced the problem to missing /usr/share/libubox/jshn.sh after
switching to tmpfs.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2019-11-14 14:09:07 +01:00
Michal Cieslakiewicz
d1fbaa3fbc ath79: update uboot-envtools for Netgear WNR routers
Boards added: WNR1000v2, WNR2000v3, WNR612v2, WNDR3700.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
(cherry picked from commit d47b687006)
[removed WNR1000v2/WNR2000v3 since not supported in 19.07]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-11-12 16:23:45 +01:00
Adrian Schmutzler
ab29ffbb10 ath79: fix SUPPORTED_DEVICES for TP-Link TL-WR1043ND v3
In ar71xx, the board name for the TL-WR1043ND v3 is equal to v2:
tl-wr1043nd-v2

Fix SUPPORTED_DEVICES for v3 in ath79 accordingly.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b5791118cc)
2019-11-12 16:16:22 +01:00
南浦月
3d840ee798 ar71xx: fix tl-wdr3320-v2 upgrade
Fix the error that tl-wdr3320-v2 can't upgrade firmware via web
interface by using magic_ver="0200" for this device.

Signed-off-by: 南浦月 <nanpuyue@gmail.com>
[commit message facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 0ff2385a92)
2019-11-12 16:16:00 +01:00
Michal Cieslakiewicz
c9e5979dbe ar71xx: update uboot-envtools for Netgear WNR routers
Boards added: WNR1000v2, WNR2000v3, WNR2200, WNR612v2, WNDR4300.
Boards changed: WNDR3700 (u-boot env size is 2 sectors not 1).

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
(cherry picked from commit 1105290049)
2019-11-12 16:15:52 +01:00
Koen Vandeputte
6ac1aa1957 kernel: bump 4.14 to 4.14.152
Refreshed all patches.

Altered patches:
- 301-arch-support-layerscape.patch

Remove upstreamed:
- 950-0311-sc16is7xx-Fix-for-Unexpected-interrupt-8.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-11-12 10:32:54 +01:00
Zoltan HERPAI
5e1864da33 firmware: intel-microcode: bump to 20190918
* New upstream microcode datafile 20190918

      *Might* contain mitigations for INTEL-SA-00247 (RAMBleed), given
      the set of processors being updated.
  * Updated Microcodes:
      sig 0x000306d4, pf_mask 0xc0, 2019-06-13, rev 0x002e, size 19456
      sig 0x000306f4, pf_mask 0x80, 2019-06-17, rev 0x0016, size 18432
      sig 0x00040671, pf_mask 0x22, 2019-06-13, rev 0x0021, size 14336
      sig 0x000406f1, pf_mask 0xef, 2019-06-18, rev 0xb000038, size 30720
      sig 0x00050654, pf_mask 0xb7, 2019-07-31, rev 0x2000064, size 33792
      sig 0x00050657, pf_mask 0xbf, 2019-08-12, rev 0x500002b, size 51200
      sig 0x00050662, pf_mask 0x10, 2019-06-17, rev 0x001c, size 32768
      sig 0x00050663, pf_mask 0x10, 2019-06-17, rev 0x7000019, size 24576
      sig 0x00050664, pf_mask 0x10, 2019-06-17, rev 0xf000017, size 24576
      sig 0x00050665, pf_mask 0x10, 2019-06-17, rev 0xe00000f, size 19456

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-11-11 10:09:39 +01:00
Zoltan HERPAI
8cd24d3256 firmware: intel-microcode: bump to 20190618
* Implements MDS mitigation (RIDL, Fallout, Zombieload), INTEL-SA-00223
    CVE-2018-12126, CVE-2018-12127, CVE-2018-12130, CVE-2019-11091
  * Updated Microcodes:
    sig 0x000206d6, pf_mask 0x6d, 2019-05-21, rev 0x061f, size 18432
    sig 0x000206d7, pf_mask 0x6d, 2019-05-21, rev 0x0718, size 19456

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-11-11 10:09:35 +01:00
Zoltan HERPAI
a6b30f962c firmware: intel-microcode: bump to 20190514
* New Microcodes:
    sig 0x00030678, pf_mask 0x02, 2019-04-22, rev 0x0838, size 52224
    sig 0x00030678, pf_mask 0x0c, 2019-04-22, rev 0x0838, size 52224
    sig 0x00030679, pf_mask 0x0f, 2019-04-23, rev 0x090c, size 52224
    sig 0x000406c3, pf_mask 0x01, 2019-04-23, rev 0x0368, size 69632
    sig 0x000406c4, pf_mask 0x01, 2019-04-23, rev 0x0411, size 68608
    sig 0x00050657, pf_mask 0xbf, 2019-02-27, rev 0x5000021, size 47104
    sig 0x000806e9, pf_mask 0x10, 2018-10-18, rev 0x009e, size 98304
    sig 0x000806eb, pf_mask 0xd0, 2018-10-25, rev 0x00a4, size 99328
    sig 0x000806ec, pf_mask 0x94, 2019-02-12, rev 0x00b2, size 98304
    sig 0x000906ec, pf_mask 0x22, 2018-09-29, rev 0x00a2, size 98304
    sig 0x000906ed, pf_mask 0x22, 2019-02-04, rev 0x00b0, size 97280

  * Updated Microcodes:
    sig 0x000206a7, pf_mask 0x12, 2019-02-17, rev 0x002f, size 12288
    sig 0x000306a9, pf_mask 0x12, 2019-02-13, rev 0x0021, size 14336
    sig 0x000306c3, pf_mask 0x32, 2019-02-26, rev 0x0027, size 23552
    sig 0x000306d4, pf_mask 0xc0, 2019-03-07, rev 0x002d, size 19456
    sig 0x000306e4, pf_mask 0xed, 2019-03-14, rev 0x042e, size 16384
    sig 0x000306e7, pf_mask 0xed, 2019-03-14, rev 0x0715, size 17408
    sig 0x000306f2, pf_mask 0x6f, 2019-03-01, rev 0x0043, size 34816
    sig 0x000306f4, pf_mask 0x80, 2019-03-01, rev 0x0014, size 18432
    sig 0x00040651, pf_mask 0x72, 2019-02-26, rev 0x0025, size 21504
    sig 0x00040661, pf_mask 0x32, 2019-02-26, rev 0x001b, size 25600
    sig 0x00040671, pf_mask 0x22, 2019-03-07, rev 0x0020, size 14336
    sig 0x000406e3, pf_mask 0xc0, 2019-04-01, rev 0x00cc, size 100352
    sig 0x000406f1, pf_mask 0xef, 2019-03-02, rev 0xb000036, size 30720
    sig 0x00050654, pf_mask 0xb7, 2019-04-02, rev 0x200005e, size 32768
    sig 0x00050662, pf_mask 0x10, 2019-03-23, rev 0x001a, size 32768
    sig 0x00050663, pf_mask 0x10, 2019-03-23, rev 0x7000017, size 24576
    sig 0x00050664, pf_mask 0x10, 2019-03-23, rev 0xf000015, size 23552
    sig 0x00050665, pf_mask 0x10, 2019-03-23, rev 0xe00000d, size 19456
    sig 0x000506c9, pf_mask 0x03, 2019-01-15, rev 0x0038, size 17408
    sig 0x000506ca, pf_mask 0x03, 2019-03-01, rev 0x0016, size 15360
    sig 0x000506e3, pf_mask 0x36, 2019-04-01, rev 0x00cc, size 100352
    sig 0x000506f1, pf_mask 0x01, 2019-03-21, rev 0x002e, size 11264
    sig 0x000706a1, pf_mask 0x01, 2019-01-02, rev 0x002e, size 73728
    sig 0x000806e9, pf_mask 0x10, 2019-04-01, rev 0x00b4, size 98304
    sig 0x000806e9, pf_mask 0xc0, 2019-04-01, rev 0x00b4, size 99328
    sig 0x000806ea, pf_mask 0xc0, 2019-04-01, rev 0x00b4, size 99328
    sig 0x000806eb, pf_mask 0xd0, 2019-03-30, rev 0x00b8, size 98304
    sig 0x000806ec, pf_mask 0x94, 2019-03-30, rev 0x00b8, size 97280
    sig 0x000906e9, pf_mask 0x2a, 2019-04-01, rev 0x00b4, size 99328
    sig 0x000906ea, pf_mask 0x22, 2019-04-01, rev 0x00b4, size 98304
    sig 0x000906eb, pf_mask 0x02, 2019-04-01, rev 0x00b4, size 99328
    sig 0x000906ec, pf_mask 0x22, 2019-02-14, rev 0x00ae, size 98304
    sig 0x000906ed, pf_mask 0x22, 2019-03-17, rev 0x00b8, size 97280
  * Implements MDS mitigation (RIDL, Fallout, Zombieload), INTEL-SA-00223
    CVE-2018-12126, CVE-2018-12127, CVE-2018-12130, CVE-2019-11091

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-11-11 10:09:28 +01:00
Adrian Schmutzler
cc598c91c1 ath79: fix identifier for Nanostation M in ath9k caldata extraction
When Nanostation M was renamed from ubnt,nano-m to ubnt,nanostation-m
in commit f1396ac753 ("ath79: align naming of Ubiquiti Nanostation M"),
the caldata extraction in 10-ath9k-eeprom was overlooked.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 5dc535419f)
2019-11-11 00:36:53 +01:00
Jo-Philipp Wich
42aa51a898 rpcd: update to latest Git HEAD
77ad0de plugin: avoid truncating numeric values

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit aa89bdcd04)
2019-11-10 21:36:48 +01:00
Eneas U de Queiroz
6cabbe9646 wolfssl: update to v4.2.0-stable
Many bugs were fixed--2 patches removed here.

This release of wolfSSL includes fixes for 5 security vulnerabilities,
including two CVEs with high/critical base scores:

- potential invalid read with TLS 1.3 PSK, including session tickets
- potential hang with ocspstaping2 (always enabled in openwrt)
- CVE-2019-15651: 1-byte overread when decoding certificate extensions
- CVE-2019-16748: 1-byte overread when checking certificate signatures
- DSA attack to recover DSA private keys

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit f4853f7cca)
2019-11-10 16:23:08 +01:00
Eneas U de Queiroz
9be3501dc3 wolfssl: allow building with hw-crytpo and AES-CCM
Hardware acceleration was disabled when AES-CCM was selected as a
workaround for a build failure.  This applies a couple of upstream
patches fixing this.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit ab19627ecc)
2019-11-10 16:23:08 +01:00
Jo-Philipp Wich
58db9bee0f ustream-ssl: update to latest Git HEAD
c9b6668 ustream-ssl: skip writing pending data if .eof is true after connect

Fixes: CVE-2019-5101, CVE-2019-5102
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 6f9157e6bd)
2019-11-10 16:23:07 +01:00
Hauke Mehrtens
2a09f43ae6 ustream-ssl: Update to latest git HEAD
465f8dc wolfssl: adjust to new API in v4.2.0
3b06c65 Update example certificate & key, fix typo
1c38fd8 wolfssl: enable CN validation
33308ee ustream-io-cyassl.c: fix client-mode connections
79d91aa Remove CyaSSL, WolfSSL < 3.10.4 support

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 57ff06405e)
2019-11-10 16:23:03 +01:00
Hauke Mehrtens
d3e11e8ad8 mac80211: Fix dependencies of kmod-rsi91x-usb
Instead of depending on kmod-usb2 make it depend on the normal USB
dependencies. This should hopefully fix some problems seen in the build
bot builds for powerpc_8540.

In addition also activate DRIVER_11N_SUPPORT support.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 3ff3b044c0)
2019-11-09 20:42:11 +01:00
Hauke Mehrtens
69dcd89dcd strace: Fix build on PowerPC
This patch breaks building on PowerPC, like the mpc85xx_generic
target for me.

Fixes: FS#2585
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit b01305c8d2)
2019-11-09 20:42:04 +01:00
Hauke Mehrtens
0803b62fc6 uboot-envtools: Add TARGET_LDFLAGS to fix PIE and RELRO
Forward the OpenWrt TARGET_LDFLAGS to the linker of the fw_printenv tool.
In addition also use the more standard make invocation script.
With this change the fw_printenv tool is built with PIE and Full RELRO
support when activated globally in OpenWrt.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
(cherry picked from commit b7b2be0b26)
2019-11-09 20:42:04 +01:00
Rosen Penev
963cee15e8 xfsprogs: Fix compilation with newer musl
Backported upstream patch.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 39035df71c)
2019-11-09 20:42:04 +01:00
David Bauer
5d30ff1bc6 ramips: correct R6220 button flag
All buttons on the Netgear R6220 are active-low while they are flagged
as active-high.

The GPIO status reads the following for no buttons pressed:

root@64367-r6220:~# cat /sys/kernel/debug/gpio
gpio-7   (                    |wps                 ) in  hi
gpio-8   (                    |wifi                ) in  hi
gpio-14  (                    |reset               ) in  hi

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit f7f9fe5256ebb660d3160452c3c01a9eb080938f)
2019-11-09 19:15:18 +01:00
Martin Schiller
9834c3dae0 kernel: fix LED netdev trigger on interface rename
This fixes the netdev LED trigger for interfaces, which are renamed
during initialization (e.g. ppp interfaces).

Fixes: FS#2193
Fixes: FS#2239
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit edbadec843)
2019-11-09 17:54:24 +01:00
Etienne Champetier
799de7c641 build: cleanup possibly dangling Python 3 host symlink
When switching from master branch to 19.07 or older, we need to ensure
that Python symlink in staging bin directory points to Python 2.

We can't rely completly just on SetupHostCommand as its executed only in
cases when the $(STAGING_DIR_HOST)/bin/python doesn't already exist, so
we need to remove it before running SetupHostCommand.

This is a cherry-pick of 3b68fb57c9
with python3 instead of python2

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
2019-11-09 08:21:45 +01:00
Etienne Champetier
785d4f3efd build: fixup python SetupHostCommand to use python2
Here is a way to break your build env without this patch:
1) have python point to python3, and no python2
2) start the build, SetupHostCommand will create a symlink
./staging_dir/host/bin/python -> /usr/bin/python
3) build fails on scons because it can't find any python2
4) install python2 and restart the build
5) the build fails on wireless-regdb compile because python is python3 instead of python

Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
2019-11-09 08:21:45 +01:00
Josef Schlehofer
502c4a81d3 expat: Update to version 2.2.9
Fixes CVE-2019-15903

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit b4af2c689f)
2019-11-07 19:42:42 +01:00
Josef Schlehofer
9943506816 tools/e2fsprogs: Update to version 1.45.4
Fixes CVE-2019-5094

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit 700e7a2eb9)
2019-11-07 19:42:42 +01:00
Hans Dedecker
569bec190c curl: bump to 7.66.0
Refresh patches, for changes in version 7.66.0 see https://curl.haxx.se/changes.html#7_66_0

Fixes CVEs:
    CVE-2019-5481
    CVE-2019-5482

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 71cf4a272c)
2019-11-07 19:42:42 +01:00
Adrian Schmutzler
5fc63ec8a4 ath79: disable building future NAND images for GL-AR300M/GL-AR750S
To simplify the upgrade process and ensure easier identification of
device partitioning, the following devices are disabled on ath79
target in openwrt-19.07 branch:

- glinet,gl-ar300m-nor
- glinet,gl-ar300m-nand
- glinet,gl-ar750s

Proper ath79 (NAND) support for the devices is expected to be
introduced based on kernel 4.19 (see GitHub PR #2184).

In openwrt-19.07, ar71xx should be used for those devices.

With this, we ensure that the new ath79 image names (at least for
releases) refer to the updated partitioning.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-11-07 19:06:57 +01:00
David Bauer
2b4d9b6850 mac80211 ath9k: force QCA953x clock to 25MHz
The QCA953x only supports 25 MHz refclk, however some OEMs set an
invalid bootstrap value for the REF_CLK option, which would break the
clock detection in ath9k.

Force the QCA953x refclk to 25MHz in ath9k, as this is (according to the
datasheet) the only valid frequency.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 4c6fe32468)
2019-11-06 16:13:57 +01:00
Adrian Schmutzler
b3514e3569 ar71xx: improve support for TP-Link CPE510 v2
This fixes commit bae927c551 ("ar71xx: add support for TP-LINK CPE510
V2.0") where the support for this device wasn't optimal.

Device support for the CPE510v2 so far has been a hack to enable
flashing with CPE510v1 images. Those even have different hardware (e.g.
additional ethernet port).

With this patch, we provide proper support for this device in ar71xx.

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 address: 192.168.0.254

Fixes: bae927c551 ("ar71xx: add support for TP-LINK CPE510 V2.0")
Signed-off-by: Andrew Cameron <apcameron@softhome.net>
[Rebased onto revert commit, changed comments in mach-cpe510.c,
changed commit title and description, fixed eth0 MAC address,
removed eth1 initialization]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[squashed revert, added fixes tag]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit c79b796280)
[added CPE510V2 entry to tplink-safeloader.c]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-11-06 13:13:27 +01:00
Adrian Schmutzler
0c9be4f76b gitignore: ignore patches in OpenWrt root directory
This will have GIT ignore patches in root directory, as created
when using "git format-patch".

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 2c54135598)
2019-11-06 13:12:54 +01:00
Jo-Philipp Wich
112df2ac56 OpenWrt v19.07.0-rc1: revert to branch defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-06 09:08:44 +01:00
Jo-Philipp Wich
88bff692a5 OpenWrt v19.07.0-rc1: adjust config defaults
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-06 09:08:44 +01:00
Petr Štetiar
c4fdb377a2 Revert "ipq806x: fix EA8500 switch control"
There is a problem with the EA8500, the switch will not work after soft
reboot, the only way to get it working again is to power cycle it
manually.

There are probably several issues in the play, it's quite hard to fix it
without having access to the actual device, so I don't see any other
option now, then revert the offending commit.

Ref: PR#2047
Fixes: FS#2168 ("Switch no longer work after restart on Linksys EA8500")
Reported-by: Adam <424778940z@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 04d6753d03)
2019-11-06 00:26:40 +01:00
Koen Vandeputte
d7ea380363 ath10k-firmware: update Candela Tech firmware images
The release notes since last time for wave-1:

  *  October 5,  2019:  Fix too-short msg caused by invalid use of PayloadLen in receive path.
                        This appears to resolve the issue of getting (and ignoring) too-short commands
                        when we detect loss of CE interrupts and go into polling mode.

  *  October 12, 2019:  Fix regression in IBSS mode that caused SWBA overrun issues.  Related to
                        regression added during the ct-station logic, specifically TSF allocation.
                        Thanks for Ahmed Zaki @ Mage-Networks for helping to diagnose and test.

  *  October 15, 2019:  Only send beacon tx completion events if we can detect CT driver is being
                        used (based on CT_STATS_OK flag being set).  This should help CT firmware work
                        better on stock driver.

The release notes since last time for wave-2:

  *  October 15, 2019:  Only send beacon tx completion events if we can detect CT driver is being
                        used (based on ATH10k_USE_TXCOMPL_TXRATE2 | ATH10k_USE_TXCOMPL_TXRATE1 flags being set).
                        This should help CT firmware work better on stock driver.

  *  October 31, 2019:  Compile out peer-ratecode-list-event.  ath10k driver ignores the event.

  *  November 1, 2019:  Fix rate-ctrl related crash when nss and other things were changed while
                        station stays associated.  See bug: https://github.com/greearb/ath10k-ct/issues/96

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit e716e93a2f7290086f49992c9980773c88100c3a)
2019-11-05 15:44:12 +01:00
Jo-Philipp Wich
c5d5cdb759 ustream-ssl: backport fix for CVE-2019-5101, CVE-2019-5102
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-11-05 15:09:47 +01:00
Daniel Golle
439ac8104b mac80211: rt2x00: backport upstream patches
Import patches from upstream to sync 19.07 with master:
 9f3e3323e996 rt2x00: allow to specify watchdog interval
 2034afe4db4a rt2800: add helpers for reading dma done index
 759c5b599cf4 rt2800: initial watchdog implementation
 09db3b000619 rt2800: add pre_reset_hw callback
 710e6cc1595e rt2800: do not nullify initialization vector data
 e403fa31ed71 rt2x00: add restart hw
 0f47aeeada2a rt2800: do not enable watchdog by default
 41a531ffa4c5 rt2x00usb: fix rx queue hang
 3b902fa811cf rt2x00usb: remove unnecessary rx flag checks
 1dc244064c47 rt2x00: no need to check return value of debugfs_create functions
 706f0182b1ad rt2800usb: Add new rt2800usb device PLANEX GW-USMicroN
 95844124385e rt2x00: clear IV's on start to fix AP mode regression
 567a9b766b47 rt2x00: do not set IEEE80211_TX_STAT_AMPDU_NO_BACK on tx status
 14d5e14c8a6c rt2x00: clear up IV's on key removal
 13fa451568ab Revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band"
 --pending--  rt2800: remove errornous duplicate condition

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-11-05 10:54:05 +01:00
David Bauer
d6d9f58290 ipq806x: use switch trigger for WAN LED on NETGEAR boards
With this commit, the WAN LED is triggered by the switch port state
instead of the eth0 netdev.
Otherwise, the LED is always illuminated, regardless of the WAN port
link state.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 70d5989c9c)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-11-05 08:55:08 +01:00
David Bauer
bee28adf6e hostapd: enable PMKSA and OK caching for WPA3-Personal
This enables PMKSA and opportunistic key caching by default for
WPA2/WPA3-Personal, WPA3-Personal and OWE auth types.
Otherwise, Apple devices won't connect to the WPA3 network.

This should not degrade security, as there's no external authentication
provider.

Tested with OCEDO Koala and iPhone 7 (iOS 13.1).

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3034f8c3b8)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-11-05 08:54:39 +01:00
Yousong Zhou
5d6308ecae scripts/dl_github_archive.py: fix python3 str, bytes confusion
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit d26738bc76)
2019-11-04 11:12:23 +00:00
Yousong Zhou
22c443c20c uboot-fritz4040: build with ipq40xx "generic" subtarget
Fixes: 853e4dd3 ("ipqx0xx: add Generic subtarget")
Ref: https://forum.openwrt.org/t/ipq40xx-snapshot-not-updated-since-22nd-august/44126
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 40e3f660c1)
2019-11-03 22:26:07 +01:00
Paul Spooren
7407e72399 ipqx0xx: add Generic subtarget
Both targets miss a subtarget causing an image naming style which is
different from other all othe targets, even tho it already uses
`x/generic/` as subfolder as if the subtarget would exist.

This commit adds the Generic subtarget resulting in consistent naming.

    ~/src/openwrt/openwrt/bin/targets/ipq806x/generic$ ls
    openwrt-ipq806x-generic-netgear_d7800-initramfs-uImage
    openwrt-ipq806x-generic-netgear-d7800.manifest
    openwrt-ipq806x-generic-netgear_d7800-squashfs-factory.img
    openwrt-ipq806x-generic-netgear_d7800-squashfs-sysupgrade.bin

CC: John Crispin <john@phrozen.org>

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 853e4dd306)
2019-11-03 22:26:07 +01:00
Roger Pueyo Centelles
9b2a147cfe ramips: enable external amplifier for D-Link DIR-810L
The 2.4 GHz radio had very poor signal reception (-89 dBm for an AP
sitting 5 m away). By enabling the external amplifier, received signal
has improved to -50 dBm for the same AP.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
(cherry picked from commit e667d6f46b)
2019-11-03 14:02:38 +01:00
Jeff Kletsky
e539dc2daa ath79: Clean up GL-AR300M DTS/DTSI inclusions
Modify GL-AR300M-Lite and GL-AR300M (NOR):

* Include qca9531_glinet_gl-ar300m.dtsi directly
  rather than qca9531_glinet_gl-ar300m-nor.dts

* Remove redundant inclusion of gpio.h and input.h

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit f5c7fe2ff0)
2019-11-03 14:02:25 +01:00
Adrian Schmutzler
8f0deedc11 ramips: fix WiFi MAC addresses for D-Link DIR-810L
So far, WiFi MAC addresses for this device have been set up from
caldata. However, this returns values which do not look like MAC
addresses. They also do not match stock firmware:

wlan0 (5.0): 00:11:22:00:17:D0 from 0x8004
wlan1 (2.4): 00:11:22:00:17:CD from 0x4 (and 0x2e)

It looks like the only valid MAC address on this device is at 0x28.

So, this patch changes setup to calculate addresses based on the
value at 0x28:

lan: *:0A (flash, label)
wan: *:0B (flash + 1)
wifi2: *:0A (flash)
wifi5: *:0C (flash + 2)

Thanks to Roger Pueyo Centelles <roger.pueyo@guifi.net> for
investigating this on his devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit d1072096f4)
2019-11-03 14:02:02 +01:00
Daniel Engberg
f051a967b8 libevent2: Update to 2.1.11
Update libevent to 2.1.11
Use CMake instead GNU Autotools
Backport following commits:
f05ba67193
..and partially
7201062f3e
to fix compilation

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit f351beedfd)
(resolves FS#2435)
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-11-01 14:22:37 +00:00
Jo-Philipp Wich
466d499d03 rpcd: update to latest Git HEAD
d442d62 plugin: fix double free in finish callback
ee26d83 main: exec_self: make clang analyzer happy
90e40bd file: exec: properly free memory on error
9ecfada uci: free configs list memory on return
32fba36 exec: always call finish_cb to allow plugin to free up memory
ca3e2d5 plugin: do not free method name separately
02c6e1d exec: properly free memory on rpc_exec() error
cc50263 plugin: exec: properly free memory on parse error
bd0ed25 uci: reset uci_ptr flags when merging set operations
37aa919 plugin: fix leaking invoked method name for exec plugins

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit c2675bb0ce)
2019-11-01 13:27:50 +01:00
Koen Vandeputte
7f29dc0fda kernel: bump 4.14 to 4.14.151
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>
2019-10-31 09:17:56 +01:00
Yousong Zhou
2436e521b4 kernel: mark kmod-usb-serial-wwan as hidden
The kconfig symbol is an invisible one since its introduction.  It is
not supposed to be enabled on its own.

Resolves FS#1821

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 4bf9bec361)
2019-10-30 12:46:44 +00:00
Koen Vandeputte
79e6391600 kernel: bump 4.14 to 4.14.150
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>
2019-10-30 11:17:40 +01:00
Felix Fietkau
c51a39d4a5 mac80211: add an improved moving average algorithm to minstrel
Improves rate control responsiveness and performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
[reworked to apply on 4.19.79 mac80211 + renumbered + refreshed]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-30 11:17:40 +01:00
Andreas Ziegler
8cf67728d3 ath79: add support for UniFi AC-LR
The Unifi AC-LR has identical hardware to the Unifi AC-Lite.
The antenna setup is different according to the vendor,
which explains the thicker enclosure.

Therefore, it is helpful to know the exact device variant,
instead of having "Ubiquiti UniFi-AC-LITE/LR".

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
[fix legacy name in commit message; add old boardname to
SUPPORTED_DEVICES]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 07c1ddf522)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-10-27 18:31:53 +01:00
Andreas Ziegler
b7ee43ecac ar71xx: add model detection for UniFi AC-LR
This commit adds correct model detection for UniFi
AC-LR. Previously, said device was incorrectly detected
as UniFi-AC-LITE/MESH.

The Information about the device is stored at 0xC in the EEPROM
partition. It corresponds to the sysid in /etc/board.info of the
Ubiquiti stock firmware.

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
[adjust naming style of target to existing ones]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 2bc7c519dc)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-10-27 18:13:33 +01:00
David Bauer
0e7113e6ec ath10k-firmware: update wave 1 firmware to 10.2.4-1.0-00047
This fixes frequent crashes observed on a UniFi AC Mesh using OpenWrt
master and 19.07. 18.06 seems not affected from our testing.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 641a93f0f2)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-10-27 18:13:33 +01:00
David Bauer
98da3c8cdb ath10k-firmware: retrieve wave 1 firmware from kvalo
This commit changes the source of the Wave 1 ath10k-firmware
from linux-firmware to Kall Valos ath10k-firmware repository.

This is necessary as the firmware selected in linux-firmware produces
frequent crashes in some circumstances.

This patch can be removed as soon as linux-firmware carries
10.2.4-1.0-00047 firmware.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit a3914783a3)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-10-27 18:13:33 +01:00
Adrian Schmutzler
8385d121d0 ath79: add LED migration for several Archer Cxx devices
Several Archer Cxx devices were using board-specific LED names in
ar71xx, which were changed to "tp-link:*" in ath79.

This patch adds migration for them.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 53e6cc7a81)
2019-10-22 11:41:53 +02:00
Adrian Schmutzler
144379e149 ath79: use board name in LED migrations
Several devices added to LED migration script will just have their
(old) board name converted to tp-link.

By using a variable for this, the amount of code in the migration
script can be reduced and the chance for typos is reduced.

This patch also introduces the marker for beginning of a pattern
"^" to the regex, so the match is more specific.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6b0eb84336)
2019-10-22 11:41:37 +02:00
Adrian Schmutzler
77d8efe80e ath79: fix patching ath9k MAC address for MyNet WiFi Range Extender
The code line patching ath9k MAC address for this device contains
a wrong number of arguments including an unset "$mac", which
looks like a typo or copy/paste mistake.

This has been introduced already in the device support commit
745dee11ac ("ath79: add support for WD My Net Wi-Fi Range
Extender").

This patch just removes the "$mac" argument, leaving a formally
valid line. (No on-device test has been performed.)

Cc: Christian Lamparter <chunkeey@gmail.com>

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6b53033783)
2019-10-22 11:41:14 +02:00
Adrian Schmutzler
081d96bece ath79: fix SUPPORTED_DEVICES for ubnt_nanostation-m
The ar71xx images for the Ubiquiti NanoStation M (XM) devices use
"nanostation-m" as board name, but the ath79 images are only
compatible with the "nano-m" board name, so sysupgrade complains.

By changing this additional supported device, sysupgrade smoothly
upgrades from ar71xx to ath79.

Ref: openwrt#2418

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit f473ce6f23)
2019-10-22 11:40:56 +02:00
Roger Pueyo Centelles
77b96c5068 ath79: add SUPPORTED_DEVICES to ubnt_nanostation-m-xw
The ar71xx images for the Ubiquiti NanoStation M (XW) devices use
"nanostation-m-xw" as the board name, but the ath79 images are only
compatible with the "nano-m-xw" board name, so sysupgrade complains.

By adding this additional supported device, sysuspgrade smoothly
upgrades from ar71xx to ath79.

Tested on a NanoStation M (XW) running OpenWrt ar71xx r10250-016d1eb.

Ref: https://github.com/openwrt/openwrt/pull/2418
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
[removed duplicate DEVICE_VARIANT, removed uneeded nano-m-xw support]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 6dda2ea6ad)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-10-21 13:35:38 +02:00
Daniel Gimpelevich
24fddfa1be ath79: fix gigabit link pll-data for EX7300
The device did not appear to be reachable unless the connection were
forced to 100Mb or lower. Revert to previously working pll-data.

Also fix the phy-mode to represent the actual state needed for ethernet
to function.

Reported-by: Moritz Schreiber <moritz@mosos.de>
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[add remark about phy-mode property]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit ee41b602a2)
2019-10-21 09:08:58 +02:00
Masafumi UTSUGI
bf800022b2 ipq40xx: essedma: Fix dead lock
edma_read_append_stats() gets called from two places in the driver.
The first place is the kernel timer that periodically updates
the statistics, so nothing gets lost due to overflows.
The second one it's part of the userspace ethtool ioctl handler
to provide up-to-date values.

For this configuration, the use of spin_lock() is not sufficient
and as per:
<https://mirrors.edge.kernel.org/pub/linux/kernel/people/rusty/kernel-locking/c214.html>
the locking has to be upgraded to spin_lock_bh().

Signed-off-by: Masafumi UTSUGI <mutsugi@allied-telesis.co.jp>
[folded patch into 710-, rewrote message]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit f1d761f95e)
2019-10-20 15:16:31 +02:00
Eneas U de Queiroz
cd1136e550 openssl: Add engine configuration to openssl.cnf
This adds engine configuration sections to openssl.cnf, with a commented
list of engines.  To enable an engine, all you have to do is uncomment
the engine line.

It also adds some useful comments to the devcrypto engine configuration
section.  Other engines currently don't have configuration commands.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit cebf024c4d)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-10-20 15:16:30 +02:00
David Bauer
b058da3a7b ath79: correct ar71xx boardname for UniFi AC Lite
This corrects the additional boardname for the image metadata to the one
used in ar71xx. The previously present additional entry was never used
on a running system.

Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 1a256470e7)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-10-19 23:07:22 +02:00
David Bauer
bcb0fd1fa1 mpc85xx: correct TP-LINK TL-WDR4900 MAC addresses
This commit fixes TP-Link TL-WDR4900 v1 MAC address assignment.
Previously, the MAC addrss was read for the ethernet from the "config"
partition. However, the content of this partition is dependent on the
firmware which was previously installed on the device.

Switch the MAC address source to the U-Boot partition, where the MAC
address is always present at a fixed partition. The partition was
previously already used for the WiFi MAC-addresses.

Reviewed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 07e555d873)
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-10-19 23:05:27 +02:00
DENG Qingfang
e5ab602c69 tcpdump: update to 4.9.3
Fixed CVEs:
	CVE-2017-16808
	CVE-2018-10103
	CVE-2018-10105
	CVE-2018-14461
	CVE-2018-14462
	CVE-2018-14463
	CVE-2018-14464
	CVE-2018-14465
	CVE-2018-14466
	CVE-2018-14467
	CVE-2018-14468
	CVE-2018-14469
	CVE-2018-14470
	CVE-2018-14879
	CVE-2018-14880
	CVE-2018-14881
	CVE-2018-14882
	CVE-2018-16227
	CVE-2018-16228
	CVE-2018-16229
	CVE-2018-16230
	CVE-2018-16300
	CVE-2018-16301
	CVE-2018-16451
	CVE-2018-16452
	CVE-2019-15166
	CVE-2019-15167

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 394273c066)
2019-10-19 14:30:05 +02:00
DENG Qingfang
8e78bbb7bb libpcap: update to 1.9.1
Fixed CVEs:
	CVE-2018-16301
	CVE-2019-15161
	CVE-2019-15162
	CVE-2019-15163
	CVE-2019-15164
	CVE-2019-15165

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 44f11353de)
2019-10-19 14:30:05 +02:00
Sungbo Eo
0f3c06b0a5 kernel: fix typos in video KernelPackage description
Fixes: 4b3d17b709 ("kernel: add kmod-fb-sys-ram")
Fixes: b774acb479 ("package/modules: add missing gspca video drivers for 2.6.32 (patch from #6595)")

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
(cherry picked from commit 9f73fad359)
2019-10-19 14:30:05 +02:00
Eubert Bao
69586db84b kirkwood: Fix FS#505 - Can't install LEDE on Linksys EA3500
The default sizes render Device/linksys_audi mage un-flashable.
Restore the pagesize, subpagesize, and blocksize for linksys_audi
from https://github.com/openwrt/archive.

Signed-off-by: Eubert Bao <bunnier@gmail.com>
(cherry picked from commit e11fc8439c)
2019-10-19 14:30:05 +02:00
Rosen Penev
5ad47b1ed8 uClibc++: Fix three bugs
The first allows usage of several functions in the std namespace, which
broke compilation of gddrescue specifically with uClibc-ng and uClibc++.

The second allows usage of long long with normal C++11, which is part of
the standard. Before, std=gnu++11 needed to be passsed to work around it.

As a result of the second patch, the pedantic patch can safely be removed.

Both patches are upstream backports.

Added -std=c++11 to CFLAGS to guarentee proper inclusion of long long.

Added another patch that fixes a typo with the long long support. Sent to
upstream.

Fixed up license information according to SPDX.

Small cleanups for consistency.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 6ab386c9bc)
2019-10-19 14:30:00 +02:00
Eneas U de Queiroz
82a3beac9d hostapd: adjust to removal of WOLFSSL_HAS_AES_GCM
WolfSSL is always built with AES-GCM support now.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit ee5a3f6d60)
2019-10-19 14:29:44 +02:00
Ali MJ Al-Nasrawy
b17c95bbdc trelay: fix deadlock on remove
Upon writing to "remove" file, debugfs_remove_recursive() blocks while
holding rtnl_lock. This is because debugfs' file_ops callbacks are
executed in debugfs_use_file_*() context which prevents file removal.

Fix this by only flagging the device for removal and then do the cleanup
in file_ops.release callback which is executed out of that context.

Signed-off-by: Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com>
(cherry picked from commit c2635b871d)
2019-10-19 14:29:44 +02:00
Ali MJ Al-Nasrawy
9784a470bb trelay: handle netdevice events correctly
Since v3.11, netdevice notification data are of type
"struct netdev_notifier_info". Handle it as such!

This should fix a critical bug in which devices are unable get released
because trelay does not release resources in response to UNREGISTER
event spamming the log with something like:

unregister_netdevice: waiting for eth0.1 to become free. Usage count = 1

Signed-off-by: Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com>
(cherry picked from commit 77cfc0739d)
2019-10-19 14:29:44 +02:00
leo chung
3b1d71ffd8 bzip2: add linker option LDFLAGS
if gcc not linker whith this LDFLAGS, "file libbz2.so.1.0.8" will
recognize as pie executable ELF file ( which should be shared object).

this because the file command version before 5.36 not recognize
correctly.

Signed-off-by: leo chung <gewalalb@gmail.com>
(cherry picked from commit 56ab58fb6c)
2019-10-19 14:29:44 +02:00
Biwen Li
ddff739d15 kernel: layerscape: fix compilation error
This fixes a compilation error as follows:
drivers/staging/fsl_qbman/qman_config.c:815:29: error: bitwise comparison
always evaluates to false [-Werror=tautological-compare]
  if ((qman_ip_rev & 0xFF00) == QMAN_REV31) {

Signed-off-by: Biwen Li <biwen.li@nxp.com>
(cherry picked from commit 53b73131e9)
2019-10-19 14:29:38 +02:00
Ilya Gordeev
8c8212c680 tplink-safeloader: fix compilation warnings
Signed-off-by: Ilya Gordeev <Mirraz@users.noreply.github.com>
(cherry picked from commit 5daf094353)
2019-10-19 14:27:34 +02:00
Hauke Mehrtens
cabd12d2e3 mac80211: Update to version 4.19.79
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-10-19 14:18:31 +02:00
Paul Spooren
6fe6853d7e build: add buildinfo as single Makefile target
The prepare target was added some 11 years ago to build tools and
toolchain and was recently extended to  create buildinfo files for
reproducibility, meaning {feeds,version,config}.buildinfo.

As the buildbot workflow is more complex than the single prepare (kmod
feed insertion), prepare is only used to create those buildinfo files.
Running prepare however runs `target/compile` as well, taking time even
everything is already compiled.

Splitting this allows the buildbot to run only the `buildinfo` target
while others can still use the convenience feature `prepare`.

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 6caf437652)
2019-10-18 16:15:29 +02:00
Christian Franke
3468a4435a lantiq: Fix fw_cutter LzmaWrapper
The destination buffer size `d_len` is passed to `lzma_inflate` as a
pointer. Therefore, it needs to be dereferenced to compare its content.

Signed-off-by: Christian Franke <nobody@nowhere.ws>
(cherry picked from commit d544bc84a0)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-10-18 13:45:23 +02:00
Jo-Philipp Wich
c987955f82 rpcd: update to latest Git HEAD
95f0973 file: increase minimum read buffer size to 4096 bytes

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 2a603cfcfc)
2019-10-18 12:19:34 +02:00
Jo-Philipp Wich
d04c07003d rpcd: update to latest Git HEAD
e2a7bc4 iwinfo: add WPA3 support

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit d6a405280f)
2019-10-18 12:19:23 +02:00
Jo-Philipp Wich
5bd83825ad rpcd: update to latest Git HEAD
69eeb1b file: refactor message parsing and permission checking
f65527a iwinfo: expose all rate info fields in assoclist reply
7fec636 sys: fix symbol redeclaration
27c24c7 rpcd: sys: actually move timespec declaration
345363b file: add remove operation
604db20 rpcd: Switch to nanosleep

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 2f9f8769e3)
2019-10-18 12:19:08 +02:00
Jo-Philipp Wich
07dcbfa6e8 fwtool: do not omit final 16 byte when image does not contain signature
The fwutil command will interpret the final 16 byte of a given firmware
image files as "struct fwimage_trailer".

In case these bytes do look like a valid trailer, we must ensure that we
print them out along with the remainder of the image to not accidentally
truncate non-trailer-images by 16 bytes when they're piped through fwtool,
e.g. as part of an image verification command sequence.

Some command sequences pipe images through fwtool in order to strip any
possible metadata, certificate or signature trailers and do not expect
bare images without any of that metadata to get truncated as other non-
fwtool specific metadata is expected at the end of the file, e.g. an
information block with an md5sum in case of the combined image format.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 889b841048)
2019-10-17 17:08:09 +02:00
Jo-Philipp Wich
180bd75973 iwinfo: update to latest Git HEAD
07315b6 nl80211: handle hidden SSIDs in wpa_supplicant scan results
3ac846e lua: fix string description of mixed WPA3 modes

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit bc61458b73)
2019-10-16 16:51:03 +02:00
Dan Haab
f4b1926be0 bcm53xx: sysupgrade: support Luxul NAND devices
This adds support for UBI-aware sysupgrade using Luxul formats.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit 63c43e5674)
2019-10-15 20:26:22 +02:00
Michael Heimpold
6179bf5be1 brcm47xx: fix switch port labels for Asus WL500GP V2
The switch port naming in LuCI does not fit the physical numbers
on the front of this device. Since this is confusing, fix it.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
(cherry picked from commit e56e5a454e)
2019-10-15 20:26:21 +02:00
Koen Vandeputte
e8308747a1 gdb: bump to 8.3.1
GDB 8.3.1 brings the following fixes and enhancements over GDB 8.3:

PR c++/20020 (GDB segfault on printing objects)
PR gdb/24454 (nat/x86-linux-dregs.c failed assertion)
PR breakpoints/24541 (Incorrect evaluation of systemtap probes due to register being signed and probe expression assuming unsigned)
PR symtab/24545 (Symbol loading performance regression with cc1)
PR gdb/24592 (amd64->i386 linux syscall restart problem)
PR gdb/25009 (terminate called after throwing an instance of 'srchilite::ParserException')
PR gdb/25010 (Calls to error () can cause SIGTTOU to send gdb to the background)
PR breakpoints/25011 (Breakpoints on file reloads broken for PIE binaries)

This corrective release also brings the following testsuite fixes and
enhancements:

PR testsuite/25005 (gdb-caching-proc.exp takes a lot of time on skip_opencl_tests)
PR testsuite/25016 (Test-case failures for -pie)

GDB 8.3 includes the following changes and enhancements:

* Support for new native configurations (also available as a target configuration):
     - RISC-V GNU/Linux (riscv*-*-linux*)
     - RISC-V FreeBSD (riscv*-*-freebsd*)

* Support for new target configurations:
     - CSKY ELF (csky*-*-elf)
     - CSKY GNU/Linux (csky*-*-linux)
     - NXP S12Z ELF (s12z-*-elf)
     - OpenRISC GNU/Linux (or1k*-*-linux*)

* Native Windows debugging is only supported on Windows XP or later.

* The Python API in GDB now requires Python 2.6 or later.

* GDB now supports terminal styling for the CLI and TUI.
  Source highlighting is also supported by building GDB with GNU
  Highlight.

* Experimental support for compilation and injection of C++ source
  code into the inferior (requires GCC 7.1 or higher, built with
  libcp1.so).

* GDB and GDBserver now support IPv6 connections.

* Target description support on RISC-V targets.

* Various enhancements to several commands:
     - "frame", "select-frame" and "info frame" commands
     - "info functions", "info types", "info variables"
     - "info thread"
     - "info proc"
     - System call alias catchpoint support on FreeBSD
     - "target remote" support for Unix Domain sockets.

* Support for displaying all files opened by a process

* DWARF index cache: GDB can now automatically save indices of DWARF
  symbols on disk to speed up further loading of the same binaries.

* Various GDB/MI enhancements.

* GDBserver on PowerPC GNU/Linux now supports access to the PPR,
  DSCR, TAR, EBB/PMU, and HTM registers.

* Ada task switching support when debugging programs built with
  the Ravenscar profile added to aarch64-elf.

* GDB in batch mode now exits with status 1 if the last executed
  command failed.

* Support for building GDB with GCC's Undefined Behavior Sanitizer.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-15 16:13:06 +02:00
Koen Vandeputte
04c81498df toolchain/gdb: bump to 8.3.1
GDB 8.3.1 brings the following fixes and enhancements over GDB 8.3:

PR c++/20020 (GDB segfault on printing objects)
PR gdb/24454 (nat/x86-linux-dregs.c failed assertion)
PR breakpoints/24541 (Incorrect evaluation of systemtap probes due to register being signed and probe expression assuming unsigned)
PR symtab/24545 (Symbol loading performance regression with cc1)
PR gdb/24592 (amd64->i386 linux syscall restart problem)
PR gdb/25009 (terminate called after throwing an instance of 'srchilite::ParserException')
PR gdb/25010 (Calls to error () can cause SIGTTOU to send gdb to the background)
PR breakpoints/25011 (Breakpoints on file reloads broken for PIE binaries)

This corrective release also brings the following testsuite fixes and
enhancements:

PR testsuite/25005 (gdb-caching-proc.exp takes a lot of time on skip_opencl_tests)
PR testsuite/25016 (Test-case failures for -pie)

GDB 8.3 includes the following changes and enhancements:

* Support for new native configurations (also available as a target configuration):
     - RISC-V GNU/Linux (riscv*-*-linux*)
     - RISC-V FreeBSD (riscv*-*-freebsd*)

* Support for new target configurations:
     - CSKY ELF (csky*-*-elf)
     - CSKY GNU/Linux (csky*-*-linux)
     - NXP S12Z ELF (s12z-*-elf)
     - OpenRISC GNU/Linux (or1k*-*-linux*)

* Native Windows debugging is only supported on Windows XP or later.

* The Python API in GDB now requires Python 2.6 or later.

* GDB now supports terminal styling for the CLI and TUI.
  Source highlighting is also supported by building GDB with GNU
  Highlight.

* Experimental support for compilation and injection of C++ source
  code into the inferior (requires GCC 7.1 or higher, built with
  libcp1.so).

* GDB and GDBserver now support IPv6 connections.

* Target description support on RISC-V targets.

* Various enhancements to several commands:
     - "frame", "select-frame" and "info frame" commands
     - "info functions", "info types", "info variables"
     - "info thread"
     - "info proc"
     - System call alias catchpoint support on FreeBSD
     - "target remote" support for Unix Domain sockets.

* Support for displaying all files opened by a process

* DWARF index cache: GDB can now automatically save indices of DWARF
  symbols on disk to speed up further loading of the same binaries.

* Various GDB/MI enhancements.

* GDBserver on PowerPC GNU/Linux now supports access to the PPR,
  DSCR, TAR, EBB/PMU, and HTM registers.

* Ada task switching support when debugging programs built with
  the Ravenscar profile added to aarch64-elf.

* GDB in batch mode now exits with status 1 if the last executed
  command failed.

* Support for building GDB with GCC's Undefined Behavior Sanitizer.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 942f020bf4d0f49e4c5586a59ddf21c00e9d8bbe)
2019-10-15 16:13:06 +02:00
Koen Vandeputte
f3a265575c kernel: bump 4.14 to 4.14.149
Refreshed all patches.

Altered patches:
- 820-sec-support-layerscape.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-15 16:13:06 +02:00
Koen Vandeputte
00f96dcddb toolchain/musl: bump to version 1.1.24
1.1.24 release notes

new features:
- GLOB_TILDE extension to glob
- non-stub catgets localization API, using netbsd binary catalog format
- posix_spawn file actions for [f]chdir (extension, pending future standard)
- secure_getenv function (extension)
- copy_file_range syscall wrapper (Linux extension)
- header-level support for new linux features in 5.2

performance:
- new fast path for lrint (generic C version) on 32-bit archs

major internal changes:
- functions involving time are overhauled to be time64-ready in 32-bit archs
- x32 uses the new time64 code paths to replace nasty hacks in syscall glue

compatibility & conformance:
- support for powerpc[64] unaligned relocation types
- powerpc[64] and sh sys/user.h no longer clash with kernel asm/ptrace.h
- select no longer modifies timeout on failure (or at all)
- mips64 stat results are no longer limited to 32-bit time range
- optreset (BSD extension) now has a public declaration
- support for clang inconsistencies in wchar_t type vs some 32-bit archs
- mips r6 syscall asm no longer has invalid lo/hi register clobbers
- vestigial asm declarations of __tls_get_new are removed (broke some tooling)
- riscv64 mcontext_t mismatch glibc's member naming is corrected

bugs fixed:
- glob failed to match broken symlinks consistently
- invalid use of interposed calloc to allocate initial TLS
- various dlsym symbol resolution logic errors
- semctl with SEM_STAT_ANY didn't work
- pthread_create with explicit scheduling was subject to priority inversion
- pthread_create failure path had data race for thread count
- timer_create with SIGEV_THREAD notification had data race getting timer id
- wide printf family failed to support l modifier for float formats

arch-specific bugs fixed:
- x87 floating point stack imbalance in math asm (i386-only CVE-2019-14697)
- x32 clock_adjtime, getrusage, wait3, wait4 produced junk (struct mismatches)
- lseek broken on x32 and mipsn32 with large file offsets
- riscv64 atomics weren't compiler barriers
- riscv64 atomics had broken asm constraints (missing earlyclobber flag)
- arm clone() was broken when compiled as thumb if start function returned
- mipsr6 setjmp/longjmp did not preserve fpu register state correctly

Refreshed all patches.
Removed upstreamed.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-15 16:13:06 +02:00
Jo-Philipp Wich
4c92859945 iwinfo: update to latest Git HEAD
a29b7d4 nl80211: align path to phy mapping logic with mac80211.sh

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 57b834281b)
2019-10-15 15:52:36 +02:00
Adrian Schmutzler
2155e94d4b ramips: remove memory node for ZBT-WE1326
Memory auto-detection for mt7621 has just been added to 19.07
stable branch.

This removes the memory node for the ZBT-WE1326, which will support
revision 5 that has 256MiB RAM (Nanya NT5CC128M16IP-DI) instead of
512MiB (up to revision 4).

ref: #1930

This is taken from master commit a2c19f1d2f ("ramips: dts: drop
memory nodes"), where _all_ memory nodes were removed.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-10-11 22:31:24 +08:00
Chuanhong Guo
49c563a829 ramips: mt7621: add support for memory detection
mt7621 has the following memory map:
0x0-0x1c000000: lower 448m memory
0x1c000000-0x2000000: peripheral registers
0x20000000-0x2400000: higher 64m memory

detect_memory_region in arch/mips/kernel/setup.c only add the first
memory region and isn't suitable for 512m memory detection because
it may accidentally read the memory area for peripheral registers.

This commit adds memory detection capability for mt7621:
1. add the highmem area when 512m is detected.
2. guard memcmp from accessing peripheral registers:
     This only happens when some weird user decided to change
     kernel load address to 256m or higher address. Since this
     is a quite unusual case, we just skip 512m testing and return
     256m as memory size.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit 6d91ddf517)
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-10-11 22:31:22 +08:00
Jo-Philipp Wich
e8dc69fcb0 iwinfo: update to latest Git HEAD
Contains following updates squashed from 3 bump commits in master:

02112f9 cli: fix reporting of mixed WPA2/WPA3 versions
7faeaea nl80211: properly detect WEP encryption in wpa_supp scan results
629b5ff nl80211: do not confuse open connections with WEP ones
3d47ddd nl80211: rework hostapd and wpa_supplicant wpa suite parsing
313e827 nl80211: keep awaiting wpa_supplicant scan results on busy response
a766751 nl80211: fix parsing of mixed wpa encryption in wpa_supp scan results
f096bfd utils: support parsing SAE and OWE key management suites from IEs
2a95086 nl80211: recognize SAE encrypted mesh

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-10-11 15:57:07 +02:00
Felix Fietkau
fcf87d5461 build: adjust gcc/g++ version checks for newer apple compilers
Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit 46a129194d)
2019-10-10 13:55:23 +02:00
leo chung
53a6aa5164 build: fix xconfig target
`make xconfig` fails with following linking error of qconf binary:

 g++ -lQt5Widgets -lQt5Gui -lQt5Core -o qconf qconf.o zconf.tab.o
 /usr/bin/ld: qconf.o: in function ConfigList::metaObject() const': qconf.cc:(.text+0x3eb): undefined reference to QObjectData::dynamicMetaObject() const'
 /usr/bin/ld: qconf.o: in function `ConfigList::qt_metacast(char const*)': link error.

which is caused by the wrong order of the linked objects/libraries so
this patch reorders the linker's arguments which makes the qconf compile
again.

Signed-off-by: leo chung <gewalalb@gmail.com>
[commit subject and message tweaks, whitespace fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit b2c55d50f8)
2019-10-09 21:07:23 +02:00
Petr Štetiar
f2c321fc07 build: fix host menu config targets using ncurses
On a recent Gentoo Linux installation, invoking `make menuconfig`, `make
kernel_menuconfig` or `make kernel_nconfig` in the build system fails,
whereas for example `make menuconfig` in the kernel tree alone works as
expected.

This is happening because STAGING_PREFIX is not defined when kernel's
{menu,n}config target calls pkg-config from the toolchain/host and thus
pkg-config returns an empty value, and the fallback values in the kernel
config script are applied but those are off and the linking fails.

Solution is to use system's pkg-config for all ncurses based menu config
targets in order to provide proper compiler/linker flags.

Ref: FS#2423
Cc: Thomas Albers <thomas.gameiro@gmail.com>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
Tested-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 965f341aa9)
2019-10-09 21:07:13 +02:00
Oldřich Jedlička
5e9aae9ef0 kernel: Fix off-by-one error in FIT mtd partition search.
This fixes off-by-one error introduced in commit dc76900021
("kernel: Correctly search for the FIT image in mtd partition.")

Function `mtd_read` starts reading at `offset` and
needs `hdr_len` number of bytes to be available. Suppose
the easiest case when `offset` is `0` and `hdr_len` equals
to `mtd->size` - the `for` loop will not be entered even
when enough bytes are available to be read.

Same happens for any non-zero `offset`, when `hdr_len` is
just enough bytes to be read until `mtd->size` is reached.
Imagine that for example `mtd->size=5`, `offset=4` and
`hdr_len=1`. Then `offset+hdr_len=5` and the check has to
be `offset+hdr_len <= mtd->size`, i.e. `5 <= 5`. The
check for `offset + hdr_len` value needs to be inclusive,
therefore use `<=`.

Fixes: dc76900021 ("kernel: Correctly search for the FIT image in mtd partition.")
Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
[adjusted commit ref, fixes tag]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit e0ce80d42a)
2019-10-09 21:05:08 +02:00
Fredrik Olofsson
4abf456b4a kernel: Correctly search for the FIT image in mtd partition.
Previously all iterations of the loop checked offset=0 in the partition.

Signed-off-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
(cherry picked from commit dc76900021)
2019-10-09 21:05:00 +02:00
Johann Neuhauser
830000855e build: make device tree arg really optional in mkits.sh
If no device tree is given there is no node generated, but
the configuration does still include the name of the missing node.
This will result in a successful build fit image, but bootm does
throw a error message if we want to boot the bad configuration.

Signed-off-by: Johann Neuhauser <jneuhauser@dh-electronics.com>
(cherry picked from commit 205e0939f0)
2019-10-09 20:44:50 +02:00
Koen Vandeputte
60ff8bf512 kernel: bump 4.14 to 4.14.148
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-08 15:52:47 +02:00
Koen Vandeputte
c4b514b200 kernel: bump 4.14 to 4.14.147
Refreshed all patches.

Altered patches:
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch (ar71xx)
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch (ath79)

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-08 12:45:13 +02:00
Koen Vandeputte
fd82b4fe70 kernel: add missing symbol when enabling PTP support
Discovered by enabling PTP_1588_CLOCK:

net/sched/Kconfig:44: warning: menuconfig statement without prompt
*
* Restart config...
*
*
* PTP clock support
*
PTP clock support (PTP_1588_CLOCK) [Y/n/?] y
Driver for the National Semiconductor DP83640 PHYTER (DP83640_PHY) [N/m/y/?] (NEW)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-08 12:45:13 +02:00
Koen Vandeputte
ac1858ddf0 treewide: remove 4.19 leftovers
19.07 branch focuses on kernel 4.14
so remove all remaining 4.19 configs

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-10-08 12:45:13 +02:00
Rafał Miłecki
b3d70f628b bcm53xx: fix serial console on Luxul XWC-2000
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit fedc5b65dc)
2019-10-04 15:47:05 +02:00
Rafał Miłecki
a66dd84758 bcm53xx: fix sysupgrade for Luxul XWC-2000
Use a correct "compatible" value as in the upstream DTS file.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 64b7dbb300)
2019-10-04 11:42:12 +02:00
Rafał Miłecki
047ef4b39a bcm53xx: add pending patch adding Luxul XWC-2000 DTS file
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 06091afada)
2019-10-04 10:08:22 +02:00
Adrian Schmutzler
28d3afc8d6 base-files: use get_mac_binary() in mtd_get_mac_binary_ubi()
The actual retrieval of the MAC address in mtd_get_mac_binary_ubi()
is the same as in get_mac_binary(). Thus, use the latter function
in the former to reduce duplicate code.

This will also allow to benefit from the enhanced path check there
and bring mtd_get_mac_binary_ubi() more in line with the similar
mtd_get_mac_binary().

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 45600124fc)
2019-09-29 11:32:05 +02:00
Tomasz Maciej Nowak
39ae849d0d ath79: image: add supported string for routerstations and ja76pf2
Now that the md5 check is fixed and metadata present, sysupgrade on
ar71xx will complain about device not being supported by the image.
Since the cause is not matching strings for supported devices add them
accordingly.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
(cherry picked from commit a45cf75eca)
2019-09-29 11:31:20 +02:00
Tomasz Maciej Nowak
4e93d17f2a ath79: image: append metadata to routerstations and ja76pf2 images
This target enforces metadata check so add the necessary information. It
was previously removed because md5 sum check. When using these sysupgrade
images on ar71xx target the check would complain about them not matching.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
(cherry picked from commit 077d06a1a5)
2019-09-29 11:31:05 +02:00
Tomasz Maciej Nowak
6cdd518eb1 ar71xx: sysupgrade: accept ath79 combined-image
There is md5 sum of whole image embedded in combined-image header which
is checked on sysupgrade. The check will fail for ath79 images which
may have embedded metadata. This is because metadata are appended after
the combined image is created. To allow smooth transition from ar71xx to
ath79, strip metadata before calculating md5 sum for whole image.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
(cherry picked from commit 8b4109c2b4)
2019-09-29 11:30:50 +02:00
Tomasz Maciej Nowak
b5a70a3fcd ath79: dts: fix ja76pf2 spi frequency
The frequency was filled acording the information from datasheet for
particular chip (Winbond 25Q128BVFG). Unfortunately this led to
coruption and introduced bad blocks on the chip. Reducing the frequency
to commonly used in ath79, made the board more stable and no new bad
blocks were spoted.

Fixes: b3a0c97 ("ath79: add support for jjPlus JA76PF2")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
(cherry picked from commit c1db564cbc)
2019-09-29 11:29:57 +02:00
Jeff Kletsky
5a0a969e41 ath79: Restore GL.iNet GL-AR300M-Lite first-boot connectivity
The relationship between GMAC0 and GMAC1 and the kernel devices
eth0 and eth1 was reversed for many ath79 devices by commit 8dde11d521
ath79: dts: drop "simple-mfd" for gmacs in SoC dtsi

The GL-AR300M-Lite is a single-port device, with the "LAN" port of the
GL-AR300M board unpopulated and its sole port now referenced as eth1,
as a result of commit 8dde11d521. The device was unreachable on
first boot or fresh config.

By changing &eth1 (GMAC1) to an MFD, GMAC0 is able to associate with
the phy and is known by the kernel as "eth0".

Thanks to Chuanhong Guo for the suggestion of "simple-mfd"

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
(cherry picked from commit b90ea19860853dd538e704e3e4402686c316e43c)
2019-09-28 21:46:45 +02:00
Jeff Kletsky
fb5a6d4926 ath79: Correct glinet, gl-ar300m-lite in 02_network
Previously, the board name for the GL-AR300M-Lite was incorrect
in 02_network, resulting in an unintended, fall-through condition
when initializing the network configuration.

While builds prior to commit 8dde11d521 (merged June 5, 2019)
    ath79: dts: drop "simple-mfd" for gmacs in SoC dtsi
functioned properly, the error was noted in resolving first-boot
connectivity issues related to the single-phy nature of the device
and the "swap" of eth0 and eth1 related to that commit.

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
(cherry picked from commit 549ea4dc1878d95ee2b752b8840d75a64a67b679)
2019-09-28 21:45:59 +02:00
Eneas U de Queiroz
ad07166ea7 ipq806x: remove unsupported hw-crypto qce driver
The following symbols, selected by the qce driver were removed:
	CONFIG_CRYPTO_CBC
	CONFIG_CRYPTO_CTR
	CONFIG_CRYPTO_DES
	CONFIG_CRYPTO_DEV_QCE
	CONFIG_CRYPTO_ECB
	CONFIG_CRYPTO_NULL
	CONFIG_CRYPTO_SEQIV
	CONFIG_CRYPTO_XTS

CONFIG_CRYPTO_GF128MUL was removed as well, since it is only needed by
some cipher modes (LRW, GCM), none of which are selected, and it is
packaged as a module.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2019-09-28 19:17:10 +02:00
Eneas U de Queiroz
00e4d3e845 ipq40xx: fix hw-crypto detection of qce driver
This adds the CRYPTO_ALG_KERN_DRIVER_ONLY flag to Qualcomm crypto engine
driver algorithms, so that openssl devcrypto can recognize them as
hardware-accelerated.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
[refresh, move to ipq40xx as its the only target right now]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 391b14a892)
2019-09-28 19:11:34 +02:00
Christian Lamparter
7594c5e6dc apm821xx: fix fan control on highest step
This patch removes a typo (extra "0") so that the 'cpu-alert6'
step is triggered once the system reaches 85°C.

Note: Unless the WNDR4700 is placed in an hot oven, the
hardware-monitor will never reach this value.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-09-28 14:35:43 +02:00
Felix Fietkau
151bd9ee25 kernel: port upstream nft_flow_offload changes to xt_FLOWOFFLOAD and fix routing issues
Replace an old cleanup patch that never made it upstream with the proper
upstream fix. This patch was incompatible with the recent changes that
affected the way that the flow tuple dst entry was used.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commits 442ecce761 and c8933ce533)
2019-09-26 10:25:01 +02:00
HsiuWen Yen
ac04be82c4 netfilter: fix crash in flow offload by adding netns support
Commit fcb41decf6 ("config: enable some useful features on
!SMALL_FLASH devices") enabled netns, which in turn lead to the crash in
the flow offload target.

When the flow offloading framework intends to delete a flow from the
hardware table, it is necessary to retrieve the namespace from
nf_flowtable->ft_net. However, no one ever wrote the namespace into
nf_flowtable->ft_net in advance. So the framework will mistakenly use a
NULL namespace to execute dev_get_by_index_rcu(net, ifindex), leading to
the kernel panic.

Ref: FS#2321
Fixes: fcb41decf6 ("config: enable some useful features on !SMALL_FLASH devices")
Tested-by: Simon Tretter <simon@mediaarchitectu.re>
Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
[merged patch into offload patch, fix for 4.19, SOB fix, commit subj/msg touches]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry-picked from commit d344591e72)
2019-09-26 10:22:13 +02:00
Rafał Miłecki
9200b4a6a0 brcm47xx: sysupgrade: fix device model detection
$(board_name) was providing content on "boardtype" (and optionally
"boardnum") NVRAM values. That function requires & expects more specific
and detailed model name extracted from the /proc/cpuinfo.

Fixes: f12a32630f ("treewide: use the generic board_name function")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-09-26 06:53:16 +02:00
David Bauer
c7cdbf29c0 uboot-fritz4040: update to 2019-09-07
572ff7f fritzcreator: actually add checksum spacer
6edce1a fritzcreator: replace obscure padding generation with something more portable
2ff189f add ASUS RT-AC58U "easy install" factory u-boot shim
b91f9c2 readd spi-nand support
486ae53 improve cmd_sysupgrade
b0933f1 replace sstrip with strip
882e48a do not include generated files into git
0c5aa5f fix bugs in ipq40xx_cdp.c

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit af63436d2d)
2019-09-25 22:50:52 +02:00
David Bauer
a48ed75d6c ipq40xx: abort ar40xx probe on missing PHYs
The ar40xx driver currently panics in case no QCA807x PHY has been
successfully probed. This happens when the external PHY is still
in reset when probing the ar40xx switch driver.

Note that this patch does not fix the root cause, ar40xx_probe now
simply fails instead of causing a kernel panic due to a nullpointer
dereference.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit e2c084cabc)
2019-09-25 22:50:24 +02:00
Koen Vandeputte
92953ae99f ath10k-ct: update to version 2019-09-09
5e8cd86f90da ath10k-ct: Backport ap-vlan code from 5.2 to 4.20 and 4.19 drivers.
0c518586bd7f ath10k-ct: Fix a few warning splats.

Adds AP VLAN.
Refreshed all patches.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-24 12:52:52 +02:00
Robert Marko
757fd85402 ath10k-firmware: update Candela Tech firmware images
This enables a feature flag in the wave-2 firmware wmi-services indicating it can send
software-encrypted raw frames.  This should in turn allow the AP-VLAN feature to work.

Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 7c930990af)
2019-09-24 12:52:52 +02:00
Koen Vandeputte
8a26f2a0a1 kernel: bump 4.14 to 4.14.146
Refreshed all patches.

Fixes:
- CVE-2019-14814
- CVE-2019-14815
- CVE-2019-14816
- CVE-2019-14821

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-24 12:52:52 +02:00
Etienne Champetier
d897b32139 kernel: add disable_eap_hack sysfs attribute
We are not sure if 640-bridge-only-accept-EAP-locally.patch is still needed
as a first step, add disable_eap_hack sysfs config to allow to disable it

Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
(cherry picked from commit 7d542dc804)
2019-09-23 07:42:46 +02:00
Eneas U de Queiroz
b610572a9b openssl: bump to 1.1.1d
This version fixes 3 low-severity vulnerabilities:

- CVE-2019-1547: ECDSA remote timing attack
- CVE-2019-1549: Fork Protection
- CVE-2019-1563: Padding Oracle in PKCS7_dataDecode and
		 CMS_decrypt_set1_pkey

Patches were refreshed.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit d868d0a5d7)
2019-09-23 07:42:30 +02:00
Adrian Schmutzler
0b9f3c28ef ath79: remove invalid uses of ath9k_patch_fw_mac_crc
Some ar9344-based devices are using ath9k_patch_fw_mac_crc, which
is meant to generate a checksum, for fixing their ath9k MAC
addresses.
However, those do not have a checksum field, and the calculated
checksum offset would be negative.

This patch will use ath9k_patch_fw_mac function for those devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit f8d8b3f85d)
2019-09-22 00:17:51 +02:00
Hauke Mehrtens
26c0bec13b hostapd: Fix AP mode PMF disconnection protection bypass
This fixes
* CVE-2019-16275 AP mode PMF disconnection protection bypass
https://w1.fi/security/2019-7/ap-mode-pmf-disconnection-protection-bypass.txt

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit a6981604b3)
2019-09-21 18:08:54 +02:00
Rosen Penev
dc076160f9 uClibc++: Remove faulty patch
This patch was originally added to fix compilation with v4l2rtspserver.
Turns out it was v4l2rtspserver that was broken, not uClibc++. This now
causes issues with a different package where the arguments are being
split.

Note that with this patch, shellcheck throws an error:

SC2068: Double quote array expansions to avoid re-splitting elements.

More: https://github.com/openwrt/packages/pull/9972#discussion_r324878373

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 977a8fc5fc)
2019-09-21 18:08:54 +02:00
Magnus Kroken
e105d03ee9 mbedtls: update to 2.16.3
Remove 300-bn_mul.h-Use-optimized-MULADDC-code-only-on-ARM-6.patch,
the issue has been fixed upstream.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
(cherry picked from commit 49d96ffc5c)
2019-09-21 18:08:54 +02:00
Daniel Golle
44f32cd5e0 ltq-vdsl-fw: update firmware filename and download URL
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 4fc0a61ed3)
2019-09-21 15:14:51 +02:00
Alberto Bursi
e9c16e4e1f kernel: add module for Emulex OneConnect 10Gbit
add module to support Emulex OneConnect
common in 10Gbit SFP+ cards by Dell/HP/IBM
supports OneConnect OCe10xxx OCe11xxx OCe14xxx,
LightPulse LPe12xxx

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
(cherry picked from commit 827f47749b)
2019-09-21 08:41:49 +02:00
Koen Vandeputte
cd96cdaa60 kernel: bump 4.14 to 4.14.145
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>
2019-09-20 15:52:25 +02:00
Koen Vandeputte
d14aa19904 kernel: bump 4.14 to 4.14.144
Refreshed all patches.

Altered patches:
- 816-pcie-support-layerscape.patch

Fixes:
- CVE-2019-15030

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-20 13:16:45 +02:00
Jo-Philipp Wich
9cae5a8289 procd: fix invalid JSON filter expression in procd_running()
Since service and instance names may contain characters which are not allowed
in JSON path labels, such as dashes or spaces, change the filter expression
to array square bracket notation to properly match these cases as well.

Fixes: 2c3dd70741 ("procd: add procd_running() helper for checking running state")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit c933b6d224)
2019-09-19 07:21:47 +02:00
Jo-Philipp Wich
c7e3ca59ab firewall: update to latest Git HEAD
383eb58 ubus: do not overwrite ipset name attribute
c26f890 firewall3: fix typo that affects ICMPv6 rules with numeric icmp_type
487bd0d utils: Fix string format message
4d0c703 firewall3: Fix some format string problems
8c404ef iptables.c: lock the xtables.lock
c1d3a4d utils: implement fw3_lock_path() & fw3_unlock_path()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[cherry picked and squashed from commits
 7db6559914,
 359bff6052,
 2cf209ce91,
 5ef9e4f107]
Ref: https://forum.openwrt.org/t/fw3-ipset-procd-objects/44044
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-09-18 10:59:17 +02:00
Rafał Miłecki
ad8b11213a procd: update to the latest git HEAD
62dc8c0 system: sysupgrade: send reply on error
2710c65 system: refuse sysupgrade with backup if it's unsupported

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 04e912d217)
2019-09-18 07:35:04 +02:00
David Bauer
250d57ac29 ramips: add factory image for NETGEAR R6220
This adds an easy-installation factory image for the NETGEAR R6220
router. The factory image can either be flashed via the vendor Web-UI or
the bootloader using nmrpflash.

Tested with NETGEAR V1.1.0.86 firmware.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 607dfdf211)
2019-09-16 21:43:39 +02:00
Dan Haab
11644ec8e1 brcm47xx: sysupgrade: support Luxul firmware format
Allow flashing Luxul devices using vendor firmware format.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit 95240c4933)
2019-09-16 21:38:41 +02:00
Dan Haab
f15441384c bcm53xx: sysupgrade: support Luxul firmware format
Allow flashing Luxul devices using vendor firmware format. The next step
will be building proper images once they are conirmed to work.

Signed-off-by: Dan Haab <dan.haab@legrand.com>
(cherry picked from commit bc5db7364d)
2019-09-16 16:02:26 +02:00
Rafał Miłecki
bece406c2f mac80211: brcmfmac: backport the last 5.4 changes
This makes brcmfmac use the same wiphy after PCIe reset to help user
space handle corner cases (e.g. firmware crash).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit f39f4b2f6d)
2019-09-16 08:42:00 +02:00
Rafał Miłecki
efa2db42b2 ar71xx: fix typo in platform_do_upgrade_compex()
Fixes: a717428828 ("treewide: use new procd sysupgrade $UPGRADE_BACKUP variable")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 63d611390c)
2019-09-16 07:01:42 +02:00
Rafał Miłecki
c53a0ed5e3 treewide: sysupgrade: use $UPGRADE_BACKUP to check for backup
Now that $UPGRADE_BACKUP is set conditionally there is no need to check
the $UPGRADE_OPT_SAVE_CONFIG anymore. All conditions can be simplified.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit a858db3136)
2019-09-16 05:57:08 +02:00
Rafał Miłecki
f69b855a75 procd: update to the latest git HEAD
b8238df sysupgrade: support "backup" attribute

This update requires "sysupgrade" method callers to pass "backup"
attribute if $UPGRADE_BACKUP is used in the project.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 9785a9121d)
2019-09-16 05:56:25 +02:00
Rafał Miłecki
47a5f5c7e7 base-files: sysupgrade: pass "backup" ubus attribute
This explicitly tells procd what backup file should be used during
sysupgrade (if any). It's much more generic this way compared to the
magic /tmp/sysupgrade.tgz file that had to be created before a call.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit c5223b26a4)
2019-09-16 05:56:25 +02:00
Hans Dedecker
0da990b773 odhcpd: retry failed PD assignments on addrlist change
88d9ab6 dhcpv6: retry failed PD assignments on addrlist change

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-09-15 20:50:25 +02:00
Felix Fietkau
169bb3d0cb scripts/feeds: fix accepting "-" in feed type string
Fixes a syntax error in processing the type src-git-full

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-09-15 19:55:00 +02:00
David Bauer
0e0f9ff93c ath79: fix UniFi AC LED mapping
The UniFi AC LED mapping is currently off. The blue/white LED are used
as WiFi indicators, while the vendor firmware does not feature WiFI
LEDs.

Instead, the LEDs are used to indicate the devices status. Align the LED
mapping to match the vendor firmware as good as possible.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 18fa749df8)
2019-09-15 12:31:56 +02:00
David Bauer
e1cf17b3ba iwinfo: update to latest Git HEAD
a88fb42 iwinfo: add device id for Qualcomm Atheros QCA9886
1b69d86 iwinfo: add device id for Qualcomm Atheros QCA9887

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 7db2f1a71f)
2019-09-15 12:31:56 +02:00
Koen Vandeputte
cf3b50377e ar71xx: make IRQ fixes target specific
Move the IRQ fix from generic to ar71xx specific.
Other targets like ath79 have specific pathes to delete this code.
This resulted in a build failure on ath79

Fixes: 00d48bcac0 ("ar71xx: Fix potentially missed IRQ handling during
dispatch")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-14 17:10:41 +02:00
Koen Vandeputte
febf9de9cf ar71xx: fix potential IRQ misses during dispatch for qca953x
If both interrupts are set in the current implementation
only the 1st will be handled and the 2nd will be skipped
due to the "if else" condition.

Fix this by using the same approach as done for QCA955x
just below it.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 9e8c36557cc0582986862f5a36e17adf6db2b90e)
2019-09-13 16:39:44 +02:00
Koen Vandeputte
ca3c7a8868 ar71xx: Fix potentially missed IRQ handling during dispatch
If both interrupts are set in the current implementation
only the 1st will be handled and the 2nd will be skipped
due to the "if else" condition.

Fix this by using the same approach as done for QCA955x
just below it.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-13 16:39:44 +02:00
Koen Vandeputte
63c0a08d49 kernel: bump 4.14 to 4.14.143
Refreshed all patches.

Remove upstreamed:
- 390-v5.3-net-sched-fix-action-ipt-crash.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-13 16:39:44 +02:00
Rafał Miłecki
78d0d13c86 base-files: validate firmware for compatibility with backup
This allows platform code to check if firmware image can be used with
preserving a backup. It may be used e.g. when installing vendor
firmwares that won't restore appended backup archive.

Suggested-by: Luis Araneda <luaraneda@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 1c510fe298)
2019-09-12 14:30:18 +02:00
Rafał Miłecki
3dac34de25 bcm53xx: extend firmware validation
This provides TRX validation result to the validation JSON. It also
prevents users from installing broken firmware files.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit c19b9f9a26)
2019-09-12 14:30:18 +02:00
Rafał Miłecki
87fe1a560a brcm47xx: extend firmware validation
This provides TRX validation result, so final JSON may look like:
{
	"tests": {
		"fwtool_signature": true,
		"fwtool_device_match": true,
		"trx_valid": true
	},
	"valid": true,
	"forceable": true
}

It also prevents users from installing broken firmware files, e.g.:

root@OpenWrt:/# sysupgrade -F -n /tmp/TZ
Image metadata not found
Invalid image type. Please use firmware specific for this device.
Image check failed but --force given - will update anyway!
Commencing upgrade. Closing all shell sessions.
Firmware image is broken and cannot be installed

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit e68c1cebd1)
2019-09-12 14:30:18 +02:00
Rafał Miłecki
a717428828 treewide: use new procd sysupgrade $UPGRADE_BACKUP variable
It's a variable set by procd that should replace hardcoded
/tmp/sysupgrade.tgz.

This change requires the most recent procd with the commit 0f3c136
("sysupgrade: set UPGRADE_BACKUP env variable").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 641f6b6c26)
2019-09-12 13:27:29 +02:00
Rafał Miłecki
1b9a4f0cb4 treewide: when copying a backup file always specify dest name
$CONF_TAR shouldn't be assumed to always point to the sysupgrade.tgz.
This change makes code more generic and allows refactoring $CONF_TAR.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 62dbe361a1)
2019-09-12 13:26:39 +02:00
Rafał Miłecki
37caec2d5e treewide: don't hardcode "sysupgrade.tgz" file name
1) Add BACKUP_FILE and use it when copying an archive to be restored
   after sysupgrade (on the next preinit).
2) Use CONF_TAR for copying backup prepared by the /sbin/sysupgrade

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit bf39047872)
2019-09-12 13:25:27 +02:00
Yousong Zhou
f54bc3985a tools: mkimage: fix __u64 typedef conflict with new glibc
Including "sys/stat.h" from newer glibc will cause __u64 from linux uapi
header to be included, causing compilation failure for u-boot tools
USE_HOSTCC

Remove typedef for __u64 in include/compiler.h to fix the issue.  It should be
safe because as of u-boot-2018.03, no ref to __u64 is found under u-boot tools/
directory

Error message snippet follows

	  HOSTCC  tools/mkenvimage.o
	In file included from /usr/include/asm-generic/types.h:7,
			 from /usr/include/asm/types.h:5,
			 from /usr/include/linux/types.h:5,
			 from /usr/include/linux/stat.h:5,
			 from /usr/include/bits/statx.h:30,
			 from /usr/include/sys/stat.h:446,
			 from tools/mkenvimage.c:21:
	/usr/include/asm-generic/int-ll64.h:31:42: error: conflicting types for '__u64'
	   31 | __extension__ typedef unsigned long long __u64;
	      |                                          ^~~~~
	In file included from <command-line>:
	././include/compiler.h:69:18: note: previous declaration of '__u64' was here
	   69 | typedef uint64_t __u64;
	      |                  ^~~~~
	make[5]: *** [scripts/Makefile.host:116: tools/mkenvimage.o] Error 1

Ref: https://forum.openwrt.org/t/compile-error-19-07/44423
Ref: https://bugzilla.redhat.com/show_bug.cgi?id=1699194
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-09-12 02:25:03 +00:00
Koen Vandeputte
3b8239e93e Revert "ar71xx: use platform code for qca955x usb0 init"
This reverts commit af91a370de.

As Piotr Dymacz pointed out:

In QCA MIPS based WiSOCs, for first USB interface,
device/host mode can be selected _only_ in hardware
see description of 57c641ba6e

QCA955x and QCA9563, second USB can be switched to device
mode in software (tested and confirmed on real hardware).

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-12 00:24:08 +02:00
Tomislav Požega
9ba9a91343 ar71xx: qca955x pci init/reset fixes
Current ar724x code does the reset only on single pci bus, and
in case of qca9558 writes the wrong register (0x10 vs 0x0c).
This change allows the reset of second pci bus, commonly used in
Archer C7 devices, in case host controller is stuck in reset.
If the resetting controller on boot can solve any other issue it
can be enabled unconditionally by removing reset check before
ar724x_pci_hw_init is called.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
[refreshed to apply cleanly]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 76d870871cb12fc0c170e5fd23bce568adfaae6d)
2019-09-11 09:57:28 +02:00
Tomislav Požega
a3c3a8c5ab ar71xx: enable ddr wb flush on qca955x
Enable flushing of write buffers on qca955x. GPL code has 0x88 reg
defined for PCI flush which is likely an error since the device
freezes on boot. So use DS default value 0xA8 for PCI flush.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
(cherry picked from commit fe9e702dc94ece2a004f6db68d6fb9a94d9437cb)
2019-09-11 09:57:28 +02:00
Tomislav Požega
af91a370de ar71xx: use platform code for qca955x usb0 init
Switch from ci_usb_setup to generic platform initialization of
usb0 port.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
(cherry picked from commit 36a0cfd24be1cb79f221964ed2bfe12b98befff3)
2019-09-11 09:57:28 +02:00
Koen Vandeputte
2cd89cf0d7 kernel: bump 4.14 to 4.4.142
Refreshed all patches.

Remove upstreamed:
- 0032-usb-host-fotg2-restart-hcd-after-port-reset.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-09-11 09:57:28 +02:00
Hauke Mehrtens
e8c5e6177d hostapd: SAE/EAP-pwd side-channel attack update
Fixes this security problem:
* SAE/EAP-pwd side-channel attack update
https://w1.fi/security/2019-6/sae-eap-pwd-side-channel-attack-update.txt

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7bed9bf10f)
2019-09-10 21:55:02 +02:00
Hauke Mehrtens
a0c8494704 hostapd: Fix security problem in EAP-pwd
This fixes:
CVE-2019-11555 "EAP-pwd message reassembly issue with unexpected fragment"
https://w1.fi/security/2019-5/eap-pwd-message-reassembly-issue-with-unexpected-fragment.txt

This should not affect OpenWrt in the default settings as we do not use
EAP-pwd.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 9f34bf51d6)
2019-09-10 21:54:58 +02:00
Adrian Schmutzler
d889cc9887 ramips: fix ethernet MAC address of ASUS RT-AC57U
This backports the only non-cosmetic fix from 6640e1c368
("ramips: clean and improve MAC address setup in 02_network").

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-09-09 21:12:23 +08:00
Adrian Schmutzler
79b9bc44d6 ramips: fix duplicate network setup for dlink, dir-615-h1
In 555ca422d1 ("ramips: fix D-Link DIR-615 H1 switch port
mapping"), port setup for dir-615-h1 was changed without removing
the old one. This was working as the new one was triggered earlier
than the old one.

(In the meantine, changed sorting during ramips rename patches
actually inversed that order.)

Anyway, just remove the wrong case now.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit e35e4a996e)
2019-09-09 21:12:23 +08:00
Adrian Schmutzler
f9ecee7913 ramips: remove duplicate case for MAC setup of freestation5
ARC FreeStation5 is present twice in MAC address setup.

>From older commits/changes, it is not possible to reconstruct
the correct choice only by reading the annotations.

Thus, remove the second case and keep the first one, so behavior
stays the same (as nobody seems to have complained about it).

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit ad4eb2241b)
2019-09-09 21:12:23 +08:00
Rafał Miłecki
c7f710e474 mac80211: brcmfmac: backport more kernel 5.4 changes
Patch getting RAM info got upstreamed. A debugging fs entry for testing
reset feature was added.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 681acdcc54)
2019-09-09 10:29:01 +02:00
Hauke Mehrtens
6d2044d62f mt7620: disable image generation for Nexx WT3020 (4MB)
Image generation is currently failing on builbots due to the following
error:

WARNING: Image file openwrt-19.07-snapshot-r10495-db5164d3d0-ramips-mt7620-wt3020-4M-squashfs-factory.bin is too big

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-09-08 21:08:22 +02:00
Hauke Mehrtens
ccd1335dcc apm821xx: Make patches apply again
This patch was applied to the upstream kernel in version 4.14.135,
remove it from our patches directory.

Fixes: 40379b0ec6 ("apm821xx: fix bogus key-presses on boot")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-09-08 20:05:15 +02:00
Jonas Gorski
4c8258c925 Revert "build: remove harmful -nopad option from mksquashfs"
This reverts commit 1c0290c5cc.

Dropping the nopad can make the padding overflow into the next erase
block on devices using a non-aligned rootfs start. This breaks the jffs2
overlay partition with the following messages:

[   30.343877] jffs2_scan_eraseblock(): End of filesystem marker found at 0x10000
[   30.376512] jffs2: Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes
[   30.385253] jffs2: empty_blocks 196, bad_blocks 0, c->nr_blocks 197

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
(cherry picked from commit f11d90a76b)
2019-09-08 18:50:11 +02:00
David Bauer
271990321a ipq40xx: fix AVM NAND caldata extraction
The AVM Fritz!Box 7530 (and probably other AVM IPQ4019 NAND devices)
has it's caldata not stored consistently, but instead at currently
3 known possible offsets.

As we get a non-zero exit code from fritz_cal_extract, simply try all
three possible offsets on both bootloader partitions, until a matching
caldata for each radio is found.

Reported-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit a6f85b81b7)
2019-09-08 17:42:39 +02:00
Cong Wang
16985d2aab kernel: net_sched: fix a NULL pointer deref in ipt action
The net pointer in struct xt_tgdtor_param is not explicitly
initialized therefore is still NULL when dereferencing it.
So we have to find a way to pass the correct net pointer to
ipt_destroy_target().

The best way I find is just saving the net pointer inside the per
netns struct tcf_idrinfo, which could make this patch smaller.

Fixes: 0c66dc1ea3f0 ("netfilter: conntrack: register hooks in netns when needed by ruleset")
Reported-and-tested-by: Tony Ambardar <itugrok@xxxxxxxxx>
Cc: Jamal Hadi Salim <jhs@xxxxxxxxxxxx>
Cc: Jiri Pirko <jiri@xxxxxxxxxxx>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>

[Backport for kernel v4.19 and v4.14]
[Bug Link: https://bugzilla.kernel.org/show_bug.cgi?id=204681]
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
(cherry picked from commit 7735cce0c5)
2019-09-08 17:42:39 +02:00
Rafał Miłecki
15292501a1 mvebu: sysupgrade: don't use $ARGV in platform_check_image()
sysupgrade passes image path to platform_check_image() as an argument so
it can be simply accessed using $1

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 76e43c82b5)
[rmilecki: dropping ARGV without this change broke sysupgrade]
Fixes: 6ac62c4b6c ("base-files: don't set ARGV and ARGC")
2019-09-07 14:31:45 +02:00
Rafał Miłecki
5ae87c76b7 treewide: sysupgrade: don't use $ARGV in platform_do_upgrade()
stage2 passes image path to platform_do_upgrade() as an argument so it
can be simply accessed using $1

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 8b4bc7abe0)
[rmilecki: dropping ARGV without this change broke sysupgrade]
Fixes: 6ac62c4b6c ("base-files: don't set ARGV and ARGC")
2019-09-07 14:31:16 +02:00
Hans Dedecker
986c706cd1 odhcp6c: update to latest git HEAD
e199804 dhcpv6: sanitize oro options

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 1855c23794)
2019-09-07 13:13:40 +02:00
David Bauer
db7a1e7c04 ath79: correct OCEDO Ursus phy-mode property
This fixes the previously incorrect phy-mode for the OCEDO Ursus GMAC0.

See 62abbd587d ("ath79: correct various phy-mode properties")
for more details.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 7b137e9df9)
2019-09-07 00:59:41 +02:00
David Bauer
15d84131fe ramips: fix network setup for various NETGEAR boards
There are currently the following issues present for the Netgear R6220,
R6350 and WNDR3700 v5:

 - LAN and WAN MAC-addresses are inverted
 - WAN MAC-address is off. It are +2 compared to the LAN MAC-address
   (R6350 only)
 - Switchport order is inverted in LuCi

This commit fixes both these issues by assigning correct MAC-addresses
to LAN and WAN interfaces and defining the switchports with the correct
labels.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 13937a16d4)
2019-09-07 00:59:41 +02:00
David Bauer
f057133349 ramips: use phy trigger for various Netgear boards
This commit switches the default trigger for the WiFi LED from a netdev
trigger on "wlan0" to a wireless-phy based trigger. THis allows the LED
to work, even when the wireless interface is not named "wlan0" without
modifiying the LED settings.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit fa46c9b208)
2019-09-07 00:59:41 +02:00
David Bauer
b8b62b8506 ramips: disable badblock shifting for MT7621 NAND
The MediaTek MT7621 NAND driver currently intransparently shifts NAND
pages when a block is marked as bad. Because of this, offsets for e.g.
caldata and MAC-addresses seem to be off.

This is, howeer, not a task for the mtd NAND driver, as the flash
translation layer is tasked with this.

This patch disables this badblock shifting. This fix was originally
proposed by Jo-Philipp Wich at
https://bugs.openwrt.org/index.php?do=details&task_id=1926

Fixes FS#1926 ("MTD partition offset not correctly mapped when bad
eraseblocks present")
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 527832e54b)
2019-09-07 00:53:18 +02:00
Rafał Miłecki
afce041e2b treewide: fix invalid UPGRADE_OPT_SAVE_CONFIG spellings
That was a result of accidentally running "sed" twice on some files.

Fixes: 9b9412d55c ("treewide: replace remaining (not working now) $SAVE_CONFIG uses")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 1078de96e3)
2019-09-06 11:37:39 +02:00
Rafał Miłecki
9b9412d55c treewide: replace remaining (not working now) $SAVE_CONFIG uses
This var has been replaced by the $UPGRADE_OPT_UPGRADE_OPT_SAVE_CONFIG

Fixes: f25d164aca ("base-files: pass "save_config" option to the "sysupgrade" method")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 5797fe84a3)
2019-09-06 11:36:26 +02:00
Rafał Miłecki
af7c186ead procd: update to the latest git HEAD
0f3c136 sysupgrade: set UPGRADE_BACKUP env variable
0bcbbbf system: fix uninitialized variables in firmware validation code

This update includes a fix for uninitialized variable usage.

Fixes: db5164d3d0 ("procd: update to the latest git HEAD")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit e8dcbbc865)
2019-09-06 08:11:13 +02:00
Rafał Miłecki
db5164d3d0 procd: update to the latest git HEAD
34ac88c system: reject sysupgrade of invalid firmware images by default
f55c235 system: reject sysupgrade of broken firmware images
e990e21 system: add "validate_firmware_image" ubus method

This update changes "sysupgrade" ubus method API. It's now required to
pass "force" attribute whenever invalid firmware is meant to be
installed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 7290963d09)
2019-09-04 13:47:36 +02:00
Rafał Miłecki
d7af175321 base-files: pass "force" parameter to the "sysupgrade" call
This makes sysupgrade work with the most recent procd that validates
firmware before proceeding.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit b71962da16)
2019-09-04 13:47:17 +02:00
Rosen Penev
aa239ceaed upslug2: Update to git repository
This has two improvements over the current version. An autotools fix and
application of the wrt350v2 patch.

Cleaned up Makefile as a result of makefiles being fixed.

Note that this package is not really used as it depends on orion, which is
classified as broken.

This is the last package that uses svn in the tree.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit ac31ec0f62)
2019-09-04 13:47:11 +02:00
Jo-Philipp Wich
068e9210d5 sdk: use bundle-libraries.sh to ship kernel objtool tools
Ensure that the kernel objtool utilities are processed by the library
bundler in order to ensure that they're usable on foreign systems with
different libc versions.

Fixes: a9f6fceb42 ("sdk: fix building external modules when CONFIG_STACK_VALIDATION=y")
Acked-by: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit efaaadb49e)
2019-09-04 13:47:04 +02:00
Jo-Philipp Wich
cf2dba5273 include: kernel-build: pass pkg-config overrides to kernel build
Pass suitable pkg-config overrides to the kernel build process in
order to let our pkg-config wrapper discover libraries provided
by tools/.

This mainly affects the use of libelf which is required for the
CONFIG_STACK_VALIDATION features. So far, the build system either
silently used host system libraries or kbuild simply disabled the
feature due to the lack of a suitable libelf.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit fe43969336)
2019-09-04 13:46:59 +02:00
Jo-Philipp Wich
5aa1b9ad68 tools: libelf: fix headers to trigger -Wundef warnings
When libelf from tools/ is used for building the kernel, compilation
aborts due to access to undefined defines since Kbuild adds -Wundef
to the compiler flags.

Patch the header files to use `#if defined(...)` instead of `#if ...`
to prevent such issues.

Ref: https://github.com/NixOS/nixpkgs/issues/59929
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f3ab336d7c)
2019-09-04 13:46:55 +02:00
Jo-Philipp Wich
2e490e7e46 tools: libelf: install pkg-config file
Install the pkg-config definition for libelf in order to allow the
kernel build process discover it later on.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit d3f86c9cc3)
2019-09-04 13:46:49 +02:00
Bjørn Mork
7c811372d8 scripts/feeds: fix 'src-include' directive
Commit 775b70f8d5 renamed parse_file() parameters without
updating the recursive call. This broke parsing of any feeds.conf
using 'src-include'.

 $ scripts/feeds update -a
 Can't use string ("defaults") as a HASH ref while "strict refs" in use at scripts/feeds line 63, <$fh> line 1.

Fixes: 775b70f8d5 ("scripts/feeds: allow adding parameters to feeds")
Signed-off-by: Bjørn Mork <bjorn@mork.no>
(cherry picked from commit a21b70be31)
2019-09-04 13:46:35 +02:00
Hauke Mehrtens
0d4ab1559a uci: update to latest Git HEAD
415f9e4 uci/file: replace mktemp() with mkstemp()

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6aa962a622)
2019-09-04 13:46:30 +02:00
Hauke Mehrtens
5bda748af4 iwinfo: update to latest Git HEAD
f599a8d iwinfo: Fix rate buffer size
71ec9be iwinfo: Fix buffer size
f8ef450 iwinfo: Add support for WPA3

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6658447534)
2019-09-04 13:46:23 +02:00
Thomas Langer
76297c3454 Fix handling of BUILD_SUFFIX in remote-gdb script
When CONFIG_BUILD_SUFFIX is enabled, the target-* folders in build_dir
and staging_dir have this suffix in the name, but not the
toolchain directories. When detecting the names for "arch" and "libc",
also accept the suffix and do not use it for the toolchain path.

Signed-off-by: Thomas Langer <thomas.langer@intel.com>
(cherry picked from commit 035906fd05)
2019-09-04 13:46:18 +02:00
Daniel Engberg
32d27a9017 tools/cmake: Update to 3.15.1
Update CMake to 3.15.1
Refresh patches
Remove inofficial fossies.org and replace with GitHub (link on official site)
Remove 150-C-feature-checks-Match-warnings-more-strictly.patch as it's
a no longer needed backport from upstream.
Disable ccache if GCC is 4.8, 4.9 or 5.X to avoid build failures.
Reference: https://github.com/openwrt/openwrt/pull/1929

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 413c68d120)
2019-09-04 13:46:12 +02:00
Konstantin Demin
6b5e0eede8 nftables: bump to version 0.9.2
- exclude Python-related stuff from build
- drop patches:
  * 010-uclibc-ng.patch, applied upstream

ipkg size decrease by 2.8%:
old:
194.851 nftables_0.9.0-2_arm_cortex-a7_neon-vfpv4.ipk
new:
189.581 nftables_0.9.2-1_arm_cortex-a7_neon-vfpv4.ipk

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
(cherry picked from commit b74f1f335a)
2019-09-04 13:46:06 +02:00
Konstantin Demin
ab0088b239 libnftnl: bump to version 1.1.4
ABI version is same.

The ipkg size increase by about 2.2%:
old:
47.909 libnftnl11_1.1.3-1_arm_cortex-a7_neon-vfpv4.ipk
new:
48.985 libnftnl11_1.1.4-1_arm_cortex-a7_neon-vfpv4.ipk

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
(cherry picked from commit 699955a684)
2019-09-04 13:46:01 +02:00
Jo-Philipp Wich
fe34c2538b rpcd: update to latest Git HEAD
821045f file: add path based read/write/exec ACL checks
fb337e5 file: add stat() information to directory listings

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 02169bd3f8)
2019-09-04 13:45:49 +02:00
Eneas U de Queiroz
882052caae uhttpd: add support to generate EC keys
This adds the key_type and ec_curve options to enable the generation of
EC keys during initialization, using openssl or the new options added to
px5g.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 7f2b230b3b)
2019-09-04 13:45:44 +02:00
Eneas U de Queiroz
ad4af2b8df px5g: support EC keys
This adds an 'eckey' command to generate an EC key, with an optional
curve name argument, with P-256 as default.

For the 'selfsigned' command, it adds an 'ec' algorithm argument to the
'-newkey' option, and a '-pkeyopt ec_paramgen_curve:<curvename>' option,
mirroring the way openssl specifies the curve name.

Notice that curve names are not necessarily the same in mbedtls and
openssl.  In particular, secp256r1 works for mbedtls, but openssl uses
prime256v1 instead. px5g uses mbedtls, but short NIST curve names P-256
and P-384 are specifically supported.

Package size increased by about 900 bytes (arm).

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit a552ababd4)
2019-09-04 13:45:39 +02:00
Eneas U de Queiroz
da10d4a779 openssl: always build with EC support
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit f40262697f)
2019-09-04 13:45:34 +02:00
Rosen Penev
6151609d07 libnfnetlink: Avoid passing both -fPIC and -fpic
Instead, instruct the configure script to use $(FPIC) only.

Mixing -fPIC and -fpic can cause issues on some platforms like PPC.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 926157c2cc)
2019-09-04 13:45:26 +02:00
Rosen Penev
aa2980b859 ncurses: Do not pass both -fPIC and -fpic
The configure scripts matches Linux with -fPIC, which is not exactly what
is desired. Since we are already passing $(FPIC), added a CONFIGURE_VAR to
avoid passing -fPIC.

Removed PKG_BUILD_DIR as it is already the default value.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit e2ecf39e8e)
2019-09-04 13:45:21 +02:00
Christian Lamparter
5a102a010f build: remove harmful -nopad option from mksquashfs
While the -nopad option prevents mksquashfs from padding the
image to an arbitrary 4k. It does not take into consideration
that squashfs is programmed to have this 4k padding when it's
being used on on a block device... which is its main "use-case".

Now, after a week long discussion on the ML that included a
back-and-forth between some of the possible options.
But this is likely the best KISS patch to deal with the issue
right away given the limited resources.

From squashfs code point of view, be warned. The 4k padding is
not enough when dealing with devices that have a PAGE_SIZE
bigger than 4k.

if it turns out to be affecting you, then please look-up either:
"FS#2460 - kernel panic reading squashfs from ubi volume" bug
Or the discussion on the OpenWrt-Devel ML in
"amp821xx: use newly added pad-squashfs for Meraki MR24" and
"Squashfs breakage lottery with UBI..."
before making an educated guess.

Note: This will not affect the "tiny"/small flash devices as
much as it seems at first. This is because the the rootfs_data
partition that follows uses jffs2. And it requires to be aligned
to the flash block-size in order to work at all.

So either the involved FSes will meet in the middle as before,
or not at all. But in that latter case the image was already
hoping for the "undefined behaviour" gamble to turn out in its
favour and this is probably why this was unnoticed for so long.

Fixes: FS#2460
Reported-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 1c0290c5cc)
2019-09-04 13:44:20 +02:00
Rafał Miłecki
f65080793c base-files: use JSON for storing firmware validation info
So far firmware validation result was binary limited: it was either
successful or not. That meant various limitations, e.g.:
1) Lack of proper feedback on validation problems
2) No way of marking firmware as totally broken (impossible to install)

This change introduces JSON for storing detailed validation info. It
provides a list of performed validation tests and their results. It
allows marking firmware as non-forceable (broken image that can't be
even forced to install).
Example:
{
        "tests": {
                "fwtool_signature": true,
                "fwtool_device_match": true
        },
        "valid": true,
        "forceable": true
}

Implementation is based on *internal* check_image bash script that:
1) Uses existing validation functions
2) Provides helpers for setting extra validation info

This allows e.g. platform_check_image() to call notify_check_broken()
when needed & prevent user from bricking a device.

Right now the new JSON info is used by /sbin/sysupgrade only. It still
doesn't make use of "forceable" as that is planned for later
development.

Further plans for this feature are:
1) Expose firmware validation using some new ubus method
2) Move validation step from /sbin/sysupgrade into "sysupgrade" ubus
   method so:
   a) It's possible to safely sysupgrade using ubus only
   b) /sbin/sysupgrade can be more like just a CLI

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit f522047958)
2019-09-04 13:44:05 +02:00
Jo-Philipp Wich
34002d5c8b scripts/feeds: allow adding parameters to feeds
this allows adding "--" prefixed parameters inside feeds.conf between the
target and name. The first parameter is --force which has the same effect
as using -f when installing any of the packages. This allows creating
feeds that will override base packages by default.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 775b70f8d5)
2019-09-04 13:43:51 +02:00
Hans Dedecker
5f472afa2b procd: fix compile issue with glibc (FS#2469)
0430252 sysupgrade: add missing _GNU_SOURCE define (FS#2469)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 6e45ba4699)
2019-09-04 13:43:44 +02:00
Christian Lamparter
406434affa openssl: refresh patches
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 5ef3fe614c)
2019-09-04 13:43:34 +02:00
Rafał Miłecki
2c77562af8 treewide: sysupgrade: pass "save_partitions" option to the "sysupgrade" method
This explicitly lets stage2 know if partitions should be preserved. No
more "touch /tmp/sysupgrade.always.overwrite.bootdisk.partmap" hack.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit b6f4cd57e1)
2019-09-04 13:43:05 +02:00
Rafał Miłecki
f25d164aca base-files: pass "save_config" option to the "sysupgrade" method
This explicitly lets stage2 know if config should be preserved.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit b534ba9611)
2019-09-04 13:42:40 +02:00
Rafał Miłecki
4e85dc95b0 procd: update to latest git HEAD
9558031 system: support passing "options" to the "sysupgrade" ubus method

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 2b1a6d263c)
2019-09-04 13:42:22 +02:00
Kevin Darbyshire-Bryant
01345bd1f9 firewall: update to latest git HEAD
bf29c1e firewall3: ipset: Handle reload_set properly

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit bd01346bb4)
2019-09-04 13:42:08 +02:00
Luiz Angelo Daros de Luca
bc7a755fe6 elfutils: bump to 0.177
200-uclibc-ng-compat.patch is upstream now.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
(cherry picked from commit 0851ce4ff9)
2019-09-04 13:42:02 +02:00
Christian Lamparter
dff561c7c8 iftop: update to HEAD of 2018-10-03 - 77901c
Update iftop to commit 77901c8c53e01359d83b8090aacfe62214658183

git log --pretty=oneline --abbrev-commit 949ed0f7..77901c8c

77901c8 Support scales beyond 1Gbps

Created with the help of the make-package-update-commit.sh script.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit cfd0748497)
2019-09-04 13:41:44 +02:00
Hans Dedecker
54db6061ee nghttp2: bump to 1.39.2
957abacf Bump up version number to 1.39.2, LT revision to 32:0:18
83d362c6 Don't read too greedily
a76d0723 Add nghttp2_option_set_max_outbound_ack
db2f612a nghttpx: Fix request stall

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 58f929077f)
2019-09-04 13:41:40 +02:00
Yousong Zhou
e7465da11e ltq-ifxos: refer to https://bugs.openwrt.org
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit f0f5cb26cb)
2019-09-04 13:41:34 +02:00
Yousong Zhou
e62a6b661f ct-bugcheck: report to https://openwrt.org by default
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 26615ededc)
2019-09-04 13:41:30 +02:00
Yousong Zhou
a929c1bad0 download.pl: use https://source.openwrt.org
https://sources.lede-openwrt.org now redirects to there

https://downloads.openwrt.org/sources returns 404, so remove it here

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 0f3667864d)
2019-09-04 13:41:25 +02:00
Luis Araneda
3112703077 u-boot.mk: use openwrt url instead of lede project
The LEDE URL is automatically redirected to the OpenWRT one,
returning an HTTP 301 code (Moved Permanently).

Also, use https, as indicated by the redirect.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
(cherry picked from commit b39ded4ab7)
2019-09-04 13:41:21 +02:00
Hauke Mehrtens
730befb9e6 ustream-ssl: update to latest git HEAD
e8f9c22 Revise supported ciphersuites
7e9e269 wolfssl, openssl: use TLS 1.3, set ciphersuites

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ced2b7bb98)
2019-09-04 13:41:10 +02:00
Daniel Engberg
f7d6579b47 tools/e2fsprogs: Update to 1.45.3
Update e2fsprogs to 1.45.3
Remove OpenBSD patch
Remove Darwin patch, neither macports or brew patches these files
Add patch to avoid crond detection on host OS

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 234f7a9e5d)
2019-09-04 13:40:37 +02:00
Adrian Schmutzler
8be111d0ac build: fix indent in image-commands.mk
Convert leading spaces to tab to match rest of the file.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 7e5a0da642)
2019-09-04 13:40:17 +02:00
Hauke Mehrtens
8b436c777c hostapd: Allow CONFIG_IEEE80211W for all but mini variant
This commit will activate CONFIG_IEEE80211W for all, but the mini
variant when at least one driver supports it. This will add ieee80211w
support for the mesh variant for example.

Fixes: FS#2397
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1d4df52c21)
2019-09-04 13:40:13 +02:00
Hauke Mehrtens
f40f8fe1e7 hostapd: Remove ROBO switch support
The driver was removed from OpenWrt a long time ago.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit f34e825834)
2019-09-04 13:40:08 +02:00
Kevin Darbyshire-Bryant
fcab45af13 firewall: improve ipset support
Bump to latest git HEAD

509e673 firewall3: Improve ipset support

The enabled option did not work properly for ipsets, as it was not
checked on create/destroy of a set. After this commit, sets are only
created/destroyed if enabled is set to true.

Add support for reloading, or recreating, ipsets on firewall reload.  By
setting "reload_set" to true, the set will be destroyed and then
re-created when the firewall is reloaded.

Add support for the counters and comment extensions. By setting
"counters" or "comment" to true, then counters or comments are added to
the set.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 51ffce0694)
2019-09-04 13:39:57 +02:00
Jonas Gorski
f783ad5b5b build: allow overriding default selection state for devices
Allow overriding the default selection state for Devices, similar to
setting a default for packages.

E.g. by setting DEFAULT to n, they won't be selected by default anymore
when enabling all device in the multi device profile.

This allows preventing images being built by the default config for
known broken devices, devices without enough RAM/flash, or devices not
working with a certain kernel versions.

This does not prevent the devices from being manually selected or images
being built by the ImageBuilder. These devices often still have worth
with a reduced package-set, or as a device for regression testing, when
no better device is available.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
(cherry picked from commit 7546be6007)
2019-09-04 13:39:37 +02:00
Paul Spooren
378b51908c build: add buildinfo files for reproducibility
generate feeds.buildinfo and version.buildinfo in build dir after
containing the feed revisions (via ./scripts/feeds list -sf) as well as
the current revision of buildroot (via ./scripts/getver.sh).

With this information it should be possible to reproduce any build,
especially the release builds.

Usage would be to move feeds.buildinfo to feeds.conf and git checkout the
revision hash of version.buildinfo.

Content of feeds.buildinfo would look similar to this:

    src-git routing https://git.openwrt.org/feed/routing.git^bf475d6
    src-git telephony https://git.openwrt.org/feed/telephony.git^470eb8e
    ...

Content of version.buildinfo would look similar to this:

    r10203+1-c12bd3a21b

Without the exact feed revision it is not possible to determine
installed package versions.

Also rename config.seed to config.buildinfo to follow the recommended
style of https://reproducible-builds.org/docs/recording/

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 454021581f)
2019-09-04 13:39:13 +02:00
Petr Štetiar
bdb11c725b sdk: fix GCC and Python dangling symlinks
Force prereq again in SDK in order to fix GCC and Python dangling
symlinks:

 staging_dir/host/bin/g++ -> /builder/ath79_generic/ccache_cxx.sh
 staging_dir/host/bin/gcc -> /builder/ath79_generic/ccache_cc.sh
 staging_dir/host/bin/python -> /usr/bin/python3.5
 staging_dir/host/bin/python3 -> /usr/bin/python3.5

Ref: FS#2424
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 200f2666fb)
2019-09-04 13:37:50 +02:00
Hans Dedecker
6e5e4366fb dnsmasq: use nettle ecc_curve access functions
Fixes compile issues with nettle 3.5.1

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 63ced14048)
2019-09-04 13:37:43 +02:00
Daniel Engberg
40c279b3d9 nettle: Update to 3.5.1
Update (lib)nettle to 3.5.1
Bump ABI_VERSION

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 9e489b41b5)
2019-09-04 13:37:38 +02:00
Vincent Wiemann
afa96d4f61 comgt-ncm: add driver dependencies again
In the commit 623716dd43 ("comgt-ncm: Fix NCM protocol")
the dependencies to vendor NCM drivers were removed, because:

> comgt-ncm should not depend on the USB-serial-related kernel modules,
> as the cdc-wdm control device works without them. There is also no need
> to depend on kmod-huawei-cdc-ncm, since other manufacturers (like
> Ericsson and Samsung) which use other kernel modules should also be
> supported.

From a user-perspective this does not make sense, as installing comgt-ncm
(or luci-proto-ncm) should install all needed dependencies for using such
a device.

Furthermore depending on kmod-huawei-cdc-ncm does not mean that Ericsson
and Samsung devices can't be supported. By the way it seems that Ericsson
and Samsung devices never used NCM, but act as serial modems.

Thus this commit adds the dependencies again.

Signed-off-by: Vincent Wiemann <vincent.wiemann@ironai.com>
[fixed title capitalization, formatted commit message,
renamed Sony-Ericsson to Ericsson]
Signed-off-by: David Bauer <mail@david-bauer.net>

(cherry picked from commit ccb4b96b8a)
2019-09-04 13:36:59 +02:00
Chuanhong Guo
e2db2df644 gpio-button-hotplug: add volume button handling
This is used by PISEN WMB001N.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit 11182349e1)
2019-09-04 13:36:43 +02:00
Hans Dedecker
f7b53dfb2a procd: update to latest git HEAD (FS#2425)
8323690 state: fix shutdown when running in a container (FS#2425)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit d9364c1cbc)
2019-09-04 13:36:24 +02:00
Hans Dedecker
d2103d3599 netifd: update to latest git HEAD
5e02f94 system-linux: fix resource leak

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit d70a35c365)
2019-09-04 13:36:19 +02:00
Daniel Engberg
c55c64e0b4 expat: Update to 2.2.7
Update (lib)expat to 2.2.7

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 7270fdb62f)
2019-09-04 13:36:13 +02:00
Rosen Penev
ad64532334 linux-atm: Add missing headers
This fixes compilation with -Werror=implicit-function-declaration.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 1b1c47577b)
2019-09-04 13:36:04 +02:00
Hauke Mehrtens
930c141b69 toolchain: fix gcc depends on kernel headers
GCC needs the kernel headers to compile.
Some GCC file includes asm/unistd.h which is provided by the kernel headers.
Normally the kernel headers build is very fast and ready before the gcc uses
it, but if it clones the kernel from a slow git repository it takes longer
and then it could be that the gcc already wants to use the kernel headers
before they are available. This patch fixes this problem by adding the
missing dependency.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
(cherry picked from commit b20156ba70)
2019-09-04 13:35:53 +02:00
Jeffery To
cc7560eb22 build: include BUILD_VARIANT in PKG_BUILD_DIR
This changes the default PKG_BUILD_DIR to take BUILD_VARIANT into
account (if set), so that packages do not need to manually override
PKG_BUILD_DIR just to handle variants.

This also updates most base packages with variants to use the updated
default PKG_BUILD_DIR.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
(cherry picked from commit e545fac8d9)
2019-09-04 13:35:17 +02:00
Hans Dedecker
3f974a954d ethtool: bump to 5.2
379c096 Release version 5.2.
2bce6d9 ethtool: Add 100BaseT1 and 1000BaseT1 link modes
67ffbf5 ethtool: sync ethtool-copy.h with linux-next from 30/05/2019
687152b ethtool.spec: Use standard file location macros

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 018395392c)
2019-09-04 13:35:05 +02:00
Hans Dedecker
5638375880 firewall: update to latest git HEAD
de94097 utils: coverity resource leak warning

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit efb7b7a12a)
2019-09-04 13:34:55 +02:00
DENG Qingfang
51198ae3cb ipset: update to 7.3
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit edd9b39fab)
2019-09-04 13:34:44 +02:00
Jeffery To
8a7dc58e0e sdk: Fix cryptodev-linux build when CONFIG_ARM64_MODULE_PLTS=y
When CONFIG_ARM64_MODULE_PLTS=y, arch/arm64/kernel/module.lds is
required to build cryptodev-linux. This updates the sdk to include this
file.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
(cherry picked from commit 6e300f6a0c)
2019-09-04 13:34:22 +02:00
DENG Qingfang
753f7213b0 ccache: update to 3.7.2
Update ccache to 3.7.2

Release notes:
https://ccache.dev/releasenotes.html#_ccache_3_7_2

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 2caf747116)
2019-09-04 13:34:08 +02:00
Kevin Darbyshire-Bryant
19a854fdb9 toolchain/fortify-headers: Update to 1.1
Update fortify-headers to 1.1

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit cbe08e6b56)
2019-09-04 13:33:29 +02:00
Petr Štetiar
fb99be49f9 autotools.mk: autoreconf: fix missing install-sh
I'm trying to create a package for libgpiod, which uses
AC_CONFIG_AUX_DIR macro, which is probably leading to the following
configure error:

 autoreconf: running: /openwrt.git/staging_dir/host/bin/libtoolize --force
 OpenWrt-libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `autostuff'.
 OpenWrt-libtoolize: linking file `autostuff/ltmain.sh'
 OpenWrt-libtoolize: putting macros in `m4'.
 ...
 configure: error: cannot find install-sh, install.sh, or shtool in autostuff "."/autostuff

>From the build output it's clear, that libtoolize isn't installing
install-sh symlink, because libtoolize would install install-sh only if
it's being run with --install parameter. Corresponding part in
libtoolize:

 if $opt_install; then
   func_config_update config.guess \
     "$pkgdatadir/config" "$auxdir" pkgconfig_header
   func_config_update config.sub \
     "$pkgdatadir/config" "$auxdir" pkgconfig_header
   func_install_update install-sh \
     "$pkgdatadir/config" "$auxdir" pkgconfig_header
 fi
 func_ltmain_update ltmain.sh \
    "$pkgdatadir/config" "$auxdir" pkgconfig_header

Adding --install parameter to libtoolize fixes this build issue:

 autoreconf: running: /openwrt.git/staging_dir/host/bin/libtoolize --install --force
 OpenWrt-libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `autostuff'.
 OpenWrt-libtoolize: linking file `autostuff/config.guess'
 OpenWrt-libtoolize: linking file `autostuff/config.sub'
 OpenWrt-libtoolize: linking file `autostuff/install-sh'
 OpenWrt-libtoolize: linking file `autostuff/ltmain.sh'
 OpenWrt-libtoolize: putting macros in `m4'.

Cc: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 5cf897779e)
2019-09-04 13:32:36 +02:00
Hans Dedecker
04413f7612 tools: libressl: fix compilation for non-glibc clib (FS#2400)
Fixes compilaton issue for non glibc clibs :

libtool: compile:  gcc -DPACKAGE_NAME=\"libressl\" -DPACKAGE_TARNAME=\"libressl\" -DPACKAGE_VERSION=\"2.9.2\" "-DPACKAGE_STRING=\"libressl 2.9.2\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libressl\" -DVERSION=\"2.9.2\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_SYMLINK=1 -DHAVE_ERR_H=1 -DHAVE_ASPRINTF=1 -DHAVE_MEMMEM=1 -DHAVE_STRLCAT=1 -DHAVE_STRLCPY=1 -DHAVE_STRNDUP=1 -DHAVE_STRNLEN=1 -DHAVE_STRSEP=1 -DHAVE_TIMEGM=1 -DHAVE_SYSLOG=1 -DHAVE_ACCEPT4=1 -DHAVE_PIPE2=1 -DHAVE_POLL=1 -DHAVE_SOCKETPAIR=1 -DHAVE_EXPLICIT_BZERO=1 -DHAVE_GETAUXVAL=1 -DHAVE_GETAUXVAL=1 -DHAVE_DL_ITERATE_PHDR=1 -DHAVE_CLOCK_GETTIME=1 -DHAVE_VA_COPY=1 -DHAS_GNU_WARNING_LONG=1 -DSIZEOF_TIME_T=8 -I. -I../include -I../include/compat -DLIBRESSL_INTERNAL -D__BEGIN_HIDDEN_DECLS= -D__END_HIDDEN_DECLS= -I../crypto/asn1 -I../crypto/bn -I../crypto/ec -I../crypto/ecdsa -I../crypto/evp -I../crypto/modes -I../crypto -I/builds/pantacor/pv-platforms/openwrt-base/openwrt/staging_dir/host/include -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_SOURCE -D_GNU_SOURCE -D__STRICT_ALIGNMENT -O2 -I/builds/pantacor/pv-platforms/openwrt-base/openwrt/staging_dir/host/include -fpic -Wall -std=gnu99 -fno-strict-aliasing -fno-strict-overflow -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DHAVE_GNU_STACK -Wno-pointer-sign -MT compat/getprogname_linux.lo -MD -MP -MF compat/.deps/getprogname_linux.Tpo -c compat/getprogname_linux.c -o compat/getprogname_linux.o
compat/getprogname_linux.c: In function 'getprogname':
compat/getprogname_linux.c:32:2: error: #error "Cannot emulate getprogname"
 #error "Cannot emulate getprogname"
  ^~~~~

Reported-by: Anibal Portero <anibal.portero@pantacor.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 1282a63027)
2019-09-04 13:31:40 +02:00
Hans Dedecker
f362ddc3b9 netifd: update to latest git HEAD
899f168 system-linux: Coverity fixes

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 11617bcb3b)
2019-09-04 13:31:31 +02:00
Kevin Darbyshire-Bryant
3cd27e5d1b tools: libressl: fix build on MacOS
Making all in tests
depbase=`echo handshake_table.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	gcc -DPACKAGE_NAME=\"libressl\" -DPACKAGE_TARNAME=\"libressl\" -DPACKAGE_VERSION=\"2.9.2\" -DPACKAGE_STRING=\"libressl\ 2.9.2\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libressl\" -DVERSION=\"2.9.2\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_SYMLINK=1 -DHAVE_ERR_H=1 -DHAVE_READPASSPHRASE_H=1 -DHAVE_ASPRINTF=1 -DHAVE_MEMMEM=1 -DHAVE_READPASSPHRASE=1 -DHAVE_STRLCAT=1 -DHAVE_STRLCPY=1 -DHAVE_STRNDUP=1 -DHAVE_STRNLEN=1 -DHAVE_STRSEP=1 -DHAVE_TIMEGM=1 -DHAVE_GETPROGNAME=1 -DHAVE_SYSLOG=1 -DHAVE_POLL=1 -DHAVE_SOCKETPAIR=1 -DHAVE_ARC4RANDOM=1 -DHAVE_ARC4RANDOM_BUF=1 -DHAVE_ARC4RANDOM_UNIFORM=1 -DHAVE_TIMINGSAFE_BCMP=1 -DHAVE_CLOCK_GETTIME=1 -DHAVE_VA_COPY=1 -DHAVE___VA_COPY=1 -DSIZEOF_TIME_T=8 -I.  -I../include -I../include/compat -DLIBRESSL_INTERNAL -D__BEGIN_HIDDEN_DECLS= -D__END_HIDDEN_DECLS= -I ../crypto/modes -I ../crypto/asn1 -I ../ssl -I ../tls -I ../apps/openssl -I ../apps/openssl/compat -D_PATH_SSL_CA_FILE=\"../apps/openssl/cert.pem\" -I/Users/kevin/wrt/staging_dir/host/include  -D__STRICT_ALIGNMENT  -O2 -I/Users/kevin/wrt/staging_dir/host/include  -fpic -Wall -std=gnu99 -fno-strict-aliasing  -fno-strict-overflow -D_FORTIFY_SOURCE=2 -fstack-protector-strong  -Qunused-arguments -Wno-pointer-sign -MT handshake_table.o -MD -MP -MF $depbase.Tpo -c -o handshake_table.o handshake_table.c &&\
	mv -f $depbase.Tpo $depbase.Po
make[4]: *** No rule to make target `/Users/kevin/wrt/build_dir/host/libressl-2.9.2/crypto/.libs/libcrypto_la-cpuid-macosx-x86_64.o', needed by `handshake_table'.  Stop.
make[3]: *** [all-recursive] Error 1

A similar error & clues from
e783d60473

"
LibreSSL 2.9.1 now has a test that requires libtls.a, however, when building a
shared library only build, the --disable-static flag is passed to libressl,
which prevents the building of libtls.a.

With libtls.a not being built, the following error occurs:
libressl-2.9.1/tls/.libs/libtls.a', needed by 'handshake_table'.  Stop.

There are three options to fix this:
1) Stick with autotools, and provide a patch that removes building anything in
   the tests folder.
2) Pass --enable-static to LIBRESSL_CONF_OPTS
3) Change the package type to cmake, as a cmake build does not have this issue."

It appears we cannot change to cmake because cmake has a dependency on
an ssl library.

Take option 1 and do not build the tests.

Also take the opportunity to remove man page building as well.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 8d6d227bb6)
2019-09-04 13:31:24 +02:00
Hans Dedecker
9634ae8632 curl: update to 7.65.3
For changes in 7.65.3; see https://curl.haxx.se/changes.html#7_65_3

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit fc2df4f705)
2019-09-04 13:31:00 +02:00
Roman Yeryomin
e8cbcce608 tools: libressl: update to 2.9.2 version
To keep in sync with OpenSSL 1.1.x branch version options.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
(cherry picked from commit 3f1e8c0131)
2019-09-04 13:30:54 +02:00
Martin Schiller
f9a7a40ac4 openvpn: add new list option tls_ciphersuites
To configure the list of allowable TLS 1.3 ciphersuites, the option
tls_ciphersuites is used instead of tls_ciphers.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
(cherry picked from commit 261df949fa)
2019-09-04 13:29:57 +02:00
Rafał Miłecki
6ac62c4b6c base-files: don't set ARGV and ARGC
Those are not used by any image check function anymore.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 3f4c785a6b)
2019-09-04 13:29:37 +02:00
Rafał Miłecki
adec8aa291 mvebu: sysupgrade: drop platform_copy_config_sdcard() argument
That function doesn't take any arguments so don't pass anything when
calling it.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 670ce65a44)
2019-09-04 13:28:58 +02:00
Eneas U de Queiroz
1e30a6bca9 target/toolchain/files/wrapper.sh: simplify 'case'
Removed an eglibc remnant, and while at it, grouped all of the
TOOLCHAIN_PLATFORMs using the same FLAGS together.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 7d97bc19f0)
2019-09-04 13:28:08 +02:00
Eneas U de Queiroz
7569e8ef86 libs/toolchain: remove eglibc remnant file
This removes package/libs/toolchain/eglibc-files/etc/nsswitch.conf.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit c47eff0df3)
2019-09-04 13:28:04 +02:00
Rafał Miłecki
67b3e44465 ubox: implement service_running() in log init.d script
It allows checking if service is running.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 1b937cb141)
2019-09-04 13:27:52 +02:00
Rafał Miłecki
ff9255f7a1 rpcd: implement service_running() in init.d script
It allows checking if service is running.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 285c83a004)
2019-09-04 13:27:48 +02:00
Hans Dedecker
5eeda5350b procd: update to latest git HEAD
31f0765 procd: check strchr() result before using it

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 9a72e7f601)
2019-09-04 13:27:32 +02:00
Rafał Miłecki
d6840e7b44 base-files: move stage2 upgrade to separated file
do_upgrade_stage2() isn't really any common code. It isn't used anywhere
except for /sbin/sysupgrade that passes it to the stage2.

Moving its code to separated file also simplifies COMMAND variable.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit f7edd94a65)
2019-09-04 13:27:19 +02:00
John Crispin
0f4a3be2f4 include/package.mk: Add support for src-checkout/ folder
This feature is similar to the SRC_TREE_OVERRIDE. However instead of having
to manually create a symlink inside the package folder, the buildsystem
will check if $(TOP_DIR)/src-checkout/$(PKG_NAME)/.git is present and use
this instead.

Signed-off-by: John Crispin <john@phrozen.org>
(cherry picked from commit 9e57b62783)
2019-09-04 13:26:54 +02:00
Rosen Penev
c00c06b877 usbreset: Add missing header
Fixes undefined reference to strtoul

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit 653e05d27f)
2019-09-04 13:26:39 +02:00
Daniel Engberg
7b06f3ba0a util-linux: Update to 2.34
Update util-linux to 2.34
Refresh patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit d51f53b5ba)
2019-09-04 13:26:35 +02:00
Daniel Engberg
b7ceeb72a8 tools/gengetopt: Update to 2.23
Update gengetopt to 2.23
Remove 100-dependency_fix.patch, fixed upstream
Rework no tests and docs patch
Fix typo in copyright section

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 6fac9077c6)
2019-09-04 13:26:24 +02:00
DENG Qingfang
89828932c5 iperf3: update to 3.7
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 42b3a3a89b)
2019-09-04 13:26:13 +02:00
Rafał Miłecki
a074ed2933 base-files: drop support for NAND upgrade in platform_pre_upgrade()
With bcm53xx switched to the new procedure there is no more need for
keeping that backward compatibility code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit ea4e1dac71)
2019-09-04 13:25:46 +02:00
Rafał Miłecki
e98eab1b6b bcm53xx: sysupgrade: call nand_do_upgrade() from platform_do_upgrade()
Calling nand_do_upgrade() from platform_pre_upgrade() was obsoleted in
the commit 30f61a34b4 ("base-files: always use staged sysupgrade").

This change brings bcm53xx in sync with other targets and allows
dropping backward compatibility code. It shouldn't change any user
visible behavior.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit ccf8a8e863)
2019-09-04 13:25:14 +02:00
Rafał Miłecki
ebef2c27eb base-files: drop unused jffs2_copy_config()
Its last usage was dropped back in 2013 in the commit b95bdc8ab5
("kernel/base-files: clean up old code related to refreshing mtd
partitions, it is no longer used anywhere").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit f58ca6ee57)
2019-09-04 13:24:56 +02:00
Emil Muratov
1d68badbb3 zram-swap: Add extra commands for status/compaction
This patch adds two new commands:
  zram status - shows memory stats for all zram swaps
  zram compaction - trigger compaction for all zram swaps

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit a9deed62af)
2019-09-04 13:24:43 +02:00
Emil Muratov
dc97db2e39 busybox: enable swapon/off by default to make it consistent with mkswap
No size increase on busybox binary.
  Since busybox mkswap is already enabled by default it seems reasonable
  to enable swapon/off too. For ex. this obsoletes installing block-mount
  dependency for zram-swap.

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
(cherry picked from commit afa5ce2493)
2019-09-04 13:24:37 +02:00
Emil Muratov
86735992c8 zram-swap: Add zram compaction and statistics info output
Executing '/etc/init.d/zram start' during runtime (with a swap being already
mounted) triggers zram device compaction and prints out nice stats info about
zram memory usage

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [use IEC's MiB unit]
(cherry picked from commit b062c90f47)
2019-09-04 13:24:36 +02:00
Emil Muratov
7580357dc0 zram-swap: Fix busybox dependency check
- fix dependency on BUSYBOX_CONFIG_SWAPONOFF (removed in 84da2a6)
   - add busybox defaults checking (fix zram-swap always installs swap-utils
     and libblkid as dependency, even if busybox includes mkswap by default)

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
(cherry picked from commit c0d93432f2)
2019-09-04 13:24:36 +02:00
Konstantin Demin
c6698c7b34 libnftnl: bump to version 1.1.3
bump ABI version accordingly (thanks to Jo-Philipp Wich).

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
(cherry picked from commit ce8027ed29)
2019-09-04 13:24:04 +02:00
Felix Fietkau
3ff6397068 build: skip kernel stack validation when building on macOS
Since we switched to 4.19, the kernel build checks for libelf to decide if
it should build tools for stack validation.

On macOS, this check fails during target/compile, but succeeds during package
build (because of the pkg-config path picking up target libraries).

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry picked from commit c3e31b6a9b)
2019-09-04 13:23:33 +02:00
Florian Eckert
937a17de19 comgt: add delay option for 3g proto
All protos for wwan (ncm,qmi,mbim) do have a delay option.
To standardize that add also the missing delay option to the 3g proto.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
(cherry picked from commit 313444a79e)
2019-09-04 13:23:25 +02:00
Karel Kočí
ec49bb64e7 base-files: supress service restart of umount
Restart is in default implemented so it calls stop and start. This is
pretty unsafe to call on umount service. This service should not do
anything on restart the same way as on start. Only use of this service
is on stop.

Signed-off-by: Karel Kočí <cynerd@email.cz>
(cherry picked from commit 537b801c54)
2019-09-04 13:23:16 +02:00
Florian Eckert
3cb0eed8a1 uqmi: fix indentation style and boundary
Fix indentation style and boundary.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
(cherry picked from commit c06f2a2dcb)
2019-09-04 13:23:09 +02:00
Florian Eckert
bd8e0746c8 uqmi: add mtu config option possibility
There are mobile carrier who have different MTU size in their network.
With this change it is now possible to configure this with the qmi
proto handler.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
(cherry picked from commit 8eb63cb7df)
2019-09-04 13:23:09 +02:00
Alban Bedel
ffdf98b204 scripts: time.pl: Don't print the time on stderr
Having the build time written on stderr make it appear with V=w
although it is not an error or warning. Just write the time on stdout
to have it part of the build log like all the rest, but not clutter
the output when only warnings and errors should be shown.

Signed-off-by: Alban Bedel <albeu@free.fr>
(cherry picked from commit 340df72e07)
2019-09-04 13:23:00 +02:00
Jason A. Donenfeld
a7be52284c wireguard: bump to 0.0.20190702
* curve25519: not all linkers support bmi2 and adx

This should allow WireGuard to build on older toolchains.

* global: switch to coarse ktime

Our prior use of fast ktime before meant that sometimes, depending on how
broken the motherboard was, we'd wind up calling into the HPET slow path. Here
we move to coarse ktime which is always super speedy. In the process we had to
fix the resolution of the clock, as well as introduce a new interface for it,
landing in 5.3. Older kernels fall back to a fast-enough mechanism based on
jiffies.

https://lore.kernel.org/lkml/tip-e3ff9c3678b4d80e22d2557b68726174578eaf52@git.kernel.org/
https://lore.kernel.org/lkml/20190621203249.3909-3-Jason@zx2c4.com/

* netlink: cast struct over cb->args for type safety

This follow recent upstream changes such as:

https://lore.kernel.org/lkml/20190628144022.31376-1-Jason@zx2c4.com/

* peer: use LIST_HEAD macro

Style nit.

* receive: queue dead packets to napi queue instead of empty rx_queue

This mitigates a WARN_ON being triggered by the workqueue code. It was quite
hard to trigger, except sporadically, or reliably with a PC Engines ALIX, an
extremely slow board with an AMD LX800 that Ryan Whelan of Axatrax was kind
enough to mail me.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
(cherry picked from commit 7c23f741e9)
2019-09-04 13:22:54 +02:00
Alexander Couzens
c26a970f5b Make linux kernel builds reproducible when BUILDBOT selected
The linux kernel is not reproducible because the build user
and domain is included into the kernel. Set the build user
to `builder` and build domain to buildhost.

It's also possible to build reproducible builds by setting
KERNEL_BUILD_USER KERNEL_BUILD_DOMAIN to static values.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
(cherry picked from commit fdd0a8d491)
2019-09-04 13:22:40 +02:00
Bjørn Mork
1e887ddc8d scripts/feeds: add src-include method
The src-include method allows recursive inclusion of feeds.conf snippets.

This can for example be used for adding static local feeds to
feeds.conf.default without ever having to update the local feeds.conf:

 src-include defaults feeds.conf.default
 src-link custom /usr/local/src/lede/custom

Signed-off-by: Bjørn Mork <bjorn@mork.no>
(cherry picked from commit 7a1b575ac4)
2019-09-04 13:22:34 +02:00
Florian Eckert
5a41c027e1 base-files: add network_get_uptime() to /lib/functions/network.sh
Add missing ubus api call for uptime value.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
(cherry picked from commit 9e780ed5f7)
2019-09-04 13:22:00 +02:00
Petr Štetiar
f011347ad2 upgs: update to latest git HEAD
cd7eabcd8c9d ugps: Fix compilation under 64-bit
198c06051dd0 Fix build error caused by enabled extra compiler warnings
fc2ab8756b3b Enable extra compiler warnings

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit f924fab3dc)
2019-09-04 13:21:41 +02:00
Jonas Gorski
bdd1bf8b89 build: warn when packages have no associated install section
Declaring a package without the appropriate install section is an easy
mistake to make, especially when renaming packages. Since this is also
easy to detect, warn about it when it happens.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
No-objections-at-all-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 5ede3fcdf7)
2019-09-04 13:21:22 +02:00
Eneas U de Queiroz
c71f70fcdd ustream-ssl: update to 2019-06-24
This adds chacha20-poly1305 support to the mbedtls variant.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 82a8ddd603)
2019-09-04 13:20:56 +02:00
Joseph Tingiris
12e66c71d9 rssileds: change rssileds.init STOP index
This patch is in a series to allow additional STOP indexes after
umount, so that other block devices may stop cleanly.

rssileds.init is now STOP=89

Signed-off-by: Joseph Tingiris <joseph.tingiris@gmail.com>
(cherry picked from commit 8a5a01a677)
2019-09-04 13:20:47 +02:00
Joseph Tingiris
c10b097198 kexec-tools: change kdump.init STOP index
This patch is in a series to allow additional STOP indexes after umount,
so that other block devices may stop cleanly.

kdumpinit is now STOP=90

Signed-off-by: Joseph Tingiris <joseph.tingiris@gmail.com>
(cherry picked from commit 5883b5a1f8)
2019-09-04 13:20:43 +02:00
Joseph Tingiris
7c9213b8b3 base-files: change boot & umount STOP indexes
This patch is in a series to allow additional STOP indexes after umount,
so that other block devices may stop cleanly.

boot is now STOP=90
umount is now STOP=90

After this patch series, the resulting STOP indexes in the 80s & 90s
will be:

STOP=85 odhcpd.init
STOP=89 conntrackd.init
STOP=89 log.init
STOP=89 rssileds.init
STOP=90 boot
STOP=90 kdump.init
STOP=90 network
STOP=90 sysfixtime
STOP=90 umount
STOP=98 mdadm.init (note: will be addressed in a separate patch)

Signed-off-by: Joseph Tingiris <joseph.tingiris@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[PKG_RELEASE is now 200]

(cherry picked from commit 04811007e5)
2019-09-04 13:20:18 +02:00
Josef Schlehofer
dc10fd35f1 mbedtls: Update to version 2.16.2
Signed-off-by: Josef Schlehofer <josef.schlehofer@nic.cz>
(cherry picked from commit a2f54f6d5d)
2019-09-04 13:20:09 +02:00
Deng Qingfang
c0c7377603 package/network: add PKGARCH:=all to non-binary packages
Packages such as xfrm contain only script files, add PKGARCH:=all

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 6762e72524)
2019-09-04 13:19:14 +02:00
Eneas U de Queiroz
15a5b79132 nghttp2: deduplicate files in staging_dir
'38b22b1e: deduplicate files in libnghttp2' missed duplicates in
staging_dir by Build/InstallDev.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
(cherry picked from commit ee1a783314)
2019-09-04 13:18:46 +02:00
Daniel Engberg
f1fa1c9d8d tools/bison: Update to 3.4.1
Update bison to 3.4.1
Remove 010-intl-stub-compat.patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
(cherry picked from commit 9fc03832bc)
2019-09-04 13:18:42 +02:00
Jo-Philipp Wich
a3a9e1d0fe rpcd: add direct dependency on libjson-c
The OpenWrt buildroot ABI version rebuild tracker does not handle
transient dependencies, therefor add all libraries linked by rpcd
as direct dependencies to the corresponding binary package definition.

This ensures that rpcd is automatically rebuilt and relinked if any
of these libraries has its ABI_VERSION updated in the future.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit eaad2211db)
2019-09-04 13:18:31 +02:00
Jo-Philipp Wich
193366ee23 metadata: handle ABI version rebuild tracking for transient dependencies
Extend the packageauxvars database to keep a list of possible package
dependencies for each provider, then utilize this information in buildroot
to resolve the ABI version dependencies of dependent packages up to five
levels deep.

This should properly trigger rebuilds for packages indirectly depending
on other packages whose ABI_VERSION changed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 27a4a71c24)
2019-09-04 13:18:24 +02:00
Yousong Zhou
6e0bd49014 base-files: apply new sysctl.conf at postinst
This is mainly for kmod-br-netfilter.  To turn off
bridge-netfilter-call-xxx immediately after installation

While at it

 - Define filelist="/usr/lib/opkg/info/${pkgname}.list"
 - Reuse "[ -z "$root" ]"
 - Grep with "-m1"

Fixes FS#2300

Reported-by: Marco Sartorius <tidbits@ormoorgmen.info>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 3dc4f59eab)
2019-09-04 13:18:19 +02:00
Linus Walleij
97e52258d7 gemini: Fix up DNS-313 compatible string
It's a simple typo in the DNS file, which was pretty serious.
No scripts were working properly. Fix it up.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[integrate upstream patch into openwrt target]

(cherry picked from commit 5470e928d0)
2019-09-04 13:17:46 +02:00
Christian Lamparter
bf5dd92cea hostapd: remove stale WPA_SUPPLICANT_NO_TIMESTAMP_CHECK option
Support to disable the timestamp check for certificates in
wpa_supplicant (Useful for devices without RTC that cannot
reliably get the real date/time) has been accepted in the
upstream hostapd. It's implemented in wpa_supplicant as a
per-AP flag tls_disable_time_checks=[0|1].

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 99bf9a1ac2)
2019-09-04 13:17:05 +02:00
Christian Lamparter
40379b0ec6 apm821xx: fix bogus key-presses on boot
"There are often transient line events when
the system is powered up and initialized and it
is often necessary for the gpio_chip driver to
clear any interrupt flags in hardware before
setting up the gpio chip, especially the
irqchip portions of it."
<http://lists.infradead.org/pipermail/openwrt-devel/2019-June/017630.html>

This patch adds a fix for the APM821XX's interrupt
controller to clear any bogus pending toggled
interrupts that happens on various APM821XX boards
on boot.

The patch also changes the debouce-interval from the
default 5ms debounce interval to 60ms all around.
The default setting caused on occasions that the button
state became stuck in a pressed state, even though the
button was released.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(backported from commit 971f31bedc)
2019-09-04 13:16:44 +02:00
Jonas Gorski
f79e6e01bd scripts/config: fix *c_shipped build depency tracking
The Makefile was missing dependencies on *c_shipped, so changes never
triggered a rebuild. Add these as optional dependencies so their absence
isn't treated as an error.

In addition, fix a typo preventing the zconf.lex.o from being removed on
clean.

Fixes: 9d5510a500 ("build: add new menuconfig code based on linux 3.9")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 0096a1cf00)
2019-09-04 13:16:14 +02:00
Jonas Gorski
0bfac320ea metadata: ensure one dependency provider to be y if a package is y
When there are multiple packages providing a meta-package, it is
possible to to create a config where a package is selected as =y, but
all of its dependency providers are just selected as =m. This is due to
the selection statement being just

  config PACKAGE_foo
    select PACKAGE_bar if !PACKAGE_baz

which is already fulfilled by PACKAGE_bar=m. Fix this by properly
comparing the selection states:

  config PACKAGE_foo
    select PACKAGE_bar if PACKAGE_baz<PACKAGE_foo

Also invert the select conditions to improve readability.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
[slightly reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>

(cherry picked from commit 1fd50531ca)
2019-09-04 13:15:53 +02:00
Jo-Philipp Wich
1754dc2ddb treewide: fix syntax errors exposed after kconfig update
After commit e82a4d9cfb ("config: regenerate *_shipped sources") the mconf
parser became more strict as a side effect and started to spew a series of
warnings when evaluating our generated kconfig sources:

  tmp/.config-package.in:705:warning: ignoring unsupported character '@'

The root cause of these warnings is a wrong use of the @SYMBOL dependency
syntax in various Makefile. Fix the corresponding Makefiles by turning
`@SYM||@SYM2` expressions into the proper `@(SYM||SYM2)` form.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 74739c4228)
2019-09-04 13:15:40 +02:00
Nicolas Pitre
e7ccc34478 config: fix relational operators for bool and tristate symbols
Since commit 31847b67bec0 ("kconfig: allow use of relations other than
(in)equality") it is possible to use relational operators in Kconfig
statements. However, those operators give unexpected results when
applied to bool/tristate values:

	(n < y) = y (correct)
	(m < y) = y (correct)
	(n < m) = n (wrong)

This happens because relational operators process bool and tristate
symbols as strings and m sorts before n. It makes little sense to do a
lexicographical compare on bool and tristate values though.

Documentation/kbuild/kconfig-language.txt states that expression can have
a value of 'n', 'm' or 'y' (or 0, 1, 2 respectively for calculations).
Let's make it so for relational comparisons with bool/tristate
expressions as well and document them. If at least one symbol is an
actual string then the lexicographical compare works just as before.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
[rebased against OpenWrt kconfig, slightly reword commit message]
(backported from upstream 9059a3493efea6492451430c7e2fa0af799a2abb)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>

(cherry picked from commit 75dcaf3d23)
2019-09-04 13:15:26 +02:00
Jonas Gorski
17ee485731 config: regenerate *_shipped sources
The pregenerated `zconf.hash.c` and `zconf.lex.c` files have not been
kept in sync with their respective `*.y` and `*.l` sources in the past
causing our kconfig implementation to not recognize important kconfig
grammer elements such as relational `<`, `<=`, `>` and `>=` operators.

Fixes: 2d7e602381 ("scripts/config: sync with latest linux upstream")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
[reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>

(cherry picked from commit 972123f1e0)
2019-09-04 13:15:26 +02:00
Jo-Philipp Wich
02c1e99d1b procd: add direct dependencies on libblobmsg-json and libjson-c
The OpenWrt buildroot ABI version rebuild tracker does not handle
transient dependencies, therefor add all libraries linked by procd
as direct dependencies to the corresponding binary package definition.

This ensures that procd is automatically rebuilt and relinked
if any of these libraries has its ABI_VERSION updated in the
future.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 66838cd851)
2019-09-04 13:15:16 +02:00
Petr Štetiar
8cd426de44 urngd: move project to git.openwrt.org
Let's move project to a proper place.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit bec8fb1ee7)
2019-09-04 13:13:33 +02:00
Hans Dedecker
5667768236 nghttp2: bump to 1.39.1
7ffc239b Bump up version number to 1.39.1
bc886a0e Fix FPE with default backend
a3a14a9c Fix log-level is not set with cmd-line or configuration file
acfb3607 Update manual pages
bdfd14c2 Bump up version number to 1.39.0, LT revision to 31:4:17
cddc09fe Update AUTHORS
3c3b6ae8 Add missing colon
2f83aa9e Fix multi-line text travis issue
fc591d0c Run nghttpx integration test with cmake build
9a17c3ef travis: use multi-line text
b7220f07 cmake: Remove SPDY related files
a1556fd1 Merge pull request #1356 from nghttp2/fix-log-level-on-reload
77f1c872 nghttpx: Fix unchanged log level on configuration reload
49ce44e1 Merge pull request #1352 from nghttp2/travis-osx
f54b3ffc Fix libxml2 CFLAGS output
b0f5e5cc Implement daemon() using fork() for OSX
8d6ecd66 Enable osx build on travis
f82fb521 Update doc
2e1975dd clang-format-8
97ce392b Merge pull request #1347 from nghttp2/nghttpx-ignore-cl-te-on-upgrade
afefbda5 Ignore content-length in 200 response to CONNECT request
4fca2502 nghttpx: Ignore Content-Length and Transfer-Encoding in 1xx or 200 to CONNECT
6975c336 Update llhttp to 1.1.3
0288093c Fix llhttp_get_error_pos usage
a3a03481 Merge pull request #1340 from nghttp2/nghttpx-llhttp
c64d2573 Replace http-parser with llhttp
f028cc43 clang-format
302e3746 Merge pull request #1337 from nghttp2/upgrade-mruby
3cdbc5f5 Merge pull request #1335 from adamgolebiowski/boost-1.70
a6925186 Fix mruby build error
45d63d20 Upgrade mruby to 2.0.1
cbba1ebf asio: support boost-1.70
e86d1378 Bump up version number to 1.39.0-DEV
4a9d2005 Update manual pages

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 865e25e049)
2019-09-04 13:13:21 +02:00
Hauke Mehrtens
670fd46b3f urngd: Fix more wrong type in format string
Also the other type is worng and causes compile problems on ARM64
platforms.

Fixes: 9b53201d9c ("urngd: Fix wrong type in format string")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1ae1276eab)
2019-09-04 13:13:16 +02:00
Hauke Mehrtens
9697f4cf73 libubox: update to latest git HEAD
9dd2dcf libubox: add format string checking to ulog()
ecf5617 ustream: Add format string checks to ustream_(v)printf()

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit fc454ca153)
2019-09-04 13:12:35 +02:00
Hauke Mehrtens
8a78e4dbb9 urngd: Fix wrong type in format string
GCC 9.1 complains about this wrong type used in the format string, fix
this to make the compiler happy.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 9b53201d9c)
2019-09-04 13:12:19 +02:00
Hauke Mehrtens
18e3ab9e34 ubox: bump to git HEAD
4df34a4 kmodloader: Increase path array size to make it always fit

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 22d3d91c77)
2019-09-04 13:12:09 +02:00
Hans Dedecker
512244e49a netifd: xfrm fixes
9932ed0 netifd: fix xfrm interface deletion and standardize netlink call

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 1fd900ddc2)
2019-09-04 13:12:05 +02:00
Adrian Schmutzler
f44725ce92 ath79: Merge cases in 11-ath10k-caldata
Cosmetical patch that just merges two cases.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 28baaaae82)
2019-09-04 13:11:49 +02:00
Linus Walleij
0b1f62a277 gemini: Fix MAC address assignment for DIR-685
The DIR-685 has the MAC addresses in the RedBoot code just like
DNS-313. Check some magic numbers to determine that the MAC
address is where we want it and extract it from RedBoot.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[replaced ifconfig with ip, ! -z = -n, added string quotes]

(cherry picked from commit 86098ea87e)
2019-09-04 13:10:00 +02:00
Linus Walleij
b790e346b9 gemini: Make a per-board case for ethernet MAC
The DNS-313 isn't the only special board so let's bite the
bullet and create a case ladder in preparation for DIR-685.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [refreshed]
(cherry picked from commit 38d85d2c9f)
2019-09-04 13:09:56 +02:00
Linus Walleij
28d8006866 gemini: Use library functions to assign MAC address
This simplifies the ethernet address extraction script
by using standard library functions to locate the MTD
partitions and extract ethernet address from a binary
offset location in the flash. Furthermore, the aging
ifconfig is replaced by the ip tool, which will now
assign the MAC addresses.

Suggested-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[ifconfig replacement, use -n instead of ! -z,
-n requires string to be quoted within the test brackets,
drop prepended "x" in check, add quotes, make local
variables local, kill whitespaces]

(cherry picked from commit cd6c3535cd)
2019-09-04 13:09:51 +02:00
Christian Lamparter
c54818e205 gemini: enable CONFIG_PACKET
CONFIG_PACKET is a important feature to have.
The Packet protocol is used by applications which
communicate directly with network devices without
an intermediate network protocol implemented in
the kernel, e.g. tcpdump and ip.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit bdbb679adb)
2019-09-04 13:09:25 +02:00
André Valentin
09d37d67ec network/config/xfrm: add host-dependency for xfrm interface parent
Add proto_add_host_dependency to add a dependency to the tunlink interface

Signed-off-by: André Valentin <avalentin@marcant.net>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
(cherry picked from commit f6dab98044)
2019-09-04 13:09:02 +02:00
Hans Dedecker
37530be1ef netifd: update to latest git HEAD
42a3878 interface-ip: fix possible null pointer dereference
c1964d8 system-linux: remove superfluous dev check

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
(cherry picked from commit 55fcc77072)
2019-09-04 13:08:47 +02:00
Paul Spooren
bbcd7d05e0 f2fs-tools: fixup SPDX license
The f2fs-tools have a wrong PKG_LICENSE with is not SPDX compatible.

Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 35a70d6262)
2019-09-04 13:08:42 +02:00
Konstantin Demin
141bc476f5 nghttp2: deduplicate files in libnghttp2
libnghttp2 accidentally ships library twice:

$ tar -Oxzf libnghttp2-14_1.38.0-1_mips_24kc.ipk ./data.tar.gz | tar -tzvf -
drwxr-xr-x root/root         0 2019-06-07 23:14 ./
drwxr-xr-x root/root         0 2019-06-07 23:14 ./usr/
drwxr-xr-x root/root         0 2019-06-07 23:14 ./usr/lib/
-rw-r--r-- root/root    144412 2019-06-07 23:14 ./usr/lib/libnghttp2.so.14
-rw-r--r-- root/root    144412 2019-06-07 23:14 ./usr/lib/libnghttp2.so.14.17.3

after fix, there's library and symlink (as designed):

$ tar -Oxzf libnghttp2-14_1.38.0-2_mips_24kc.ipk ./data.tar.gz | tar -tzvf -
drwxr-xr-x root/root         0 2019-06-07 23:14 ./
drwxr-xr-x root/root         0 2019-06-07 23:14 ./usr/
drwxr-xr-x root/root         0 2019-06-07 23:14 ./usr/lib/
lrwxrwxrwx root/root         0 2019-06-07 23:14 ./usr/lib/libnghttp2.so.14 -> libnghttp2.so.14.17.3
-rw-r--r-- root/root    144412 2019-06-07 23:14 ./usr/lib/libnghttp2.so.14.17.3

Binary package size reduced accordingly: 134621 -> 66593.

Compile/run-tested: ar71xx/generic.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
(cherry picked from commit 38b22b1e70)
2019-09-04 13:08:29 +02:00
Hans Dedecker
49d35646ea odhcpd: various fixes
8f1347b odhcpd: router: Fix out of scope memory access
d37736e dhcpv6-ia: free assignment when validity timer expires

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-09-03 21:53:43 +02:00
Michal Cieslakiewicz
4fb6b8c553 ar71xx: WNR2200: remove redundant GPIO for WLAN LED
Without this patch, an extra entry appears for AR9287 GPIO
that duplicates WLAN LED but in fact drives nothing:

gpiochip1: GPIOs 502-511, ath9k-phy0:
 gpio-502 (                    |netgear:blue:wlan   ) out hi
 gpio-503 (                    |netgear:amber:test  ) out hi
 gpio-504 (                    |netgear:green:power ) out lo
 gpio-505 (                    |rfkill              ) in  hi
 gpio-507 (                    |wps                 ) in  hi
 gpio-508 (                    |reset               ) in  hi
 gpio-510 (                    |ath9k-phy0          ) out hi <===!

The pin pointed above is default LED GPIO (8) for AR9287.
For WNR2200 it is not connected anywhere - pin 0 drives blue WLAN
LED instead - but initialization code is missing that information.

This fix calls ap9x_pci_setup_wmac_led_pin() function at device
setup, forcing WLAN LED pin to be 0 and removing redundant entry.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
2019-08-30 23:20:09 +02:00
Karl Pálsson
a5762b45c2 ath79: etactica-eg200: fix restore button
The button is labelled reboot/restore in documentation, and has always
been used for that.  Naming it WPS has always been wrong.

Signed-off-by: Karl Pálsson <karlp@etactica.com>
[matched author with SoB]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-08-30 23:03:18 +02:00
Linus Walleij
4d5a47d206 gemini: Stop enforcing command line
The command line enforced by the kernel is harmful, we want to
use the command line passed from the device tree. This is
especially important for the SQ201, Teltonika RUT and WBD111
which has a console set to 115200n8 and not 19200n8 like all
the others, so their consoles will be confusingly changing
baudrate between boot loader and kernel. The setting in the
device tree corresponds to what the boot loader is using.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
(cherry picked from commit ea44ed5f38)
2019-08-30 22:59:55 +02:00
Koen Vandeputte
db94ee6256 kernel: bump 4.14 to 4.14.141
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-30 16:46:52 +02:00
Alin Nastac
22378beb58 iproute2: add libcap support, enabled in ip-full
Preserve optionality of libcap by having configuration script follow the
HAVE_CAP environment variable, used similarly to the HAVE_ELF variable.

Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase/refresh patches]
(backported from commit a6da3f9ef7)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-08-30 12:39:27 +02:00
Felix Fietkau
73d45c7378 mac80211: add config tweak for tx bursting when using VHT
By default, set BE tx queue TXOP limit to 2.0 in the hostapd config
Many vendor drivers are doing similar things to boost throughput.
On MT7612 under ideal conditions, it improves tx throughput from 470 Mbit/s
to about 570 Mbit/s.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit 8650201f10)
2019-08-28 21:05:52 +02:00
Koen Vandeputte
dd4b8a24a1 ath9k: backport dynack improvements
Close cooperation with Lorenzo Bianconi resulted
in these patches which fix all remaining seen issues
when using dynack.

Fix link losses when:
- Late Ack's are not seen or not present
- switching from too low static coverage class to dynack on a live link

These are fixed by setting the Ack Timeout/Slottime to
the max possible value for the currently used channel width when
a new station has been discovered.

When traffic flows, dynack is able to adjust to optimal values
within a few packets received (typically < 1 second)

These changes have been thoroughly tested on ~60 offshore devices
all interconnected using mesh over IBSS and dynack enabled on all.

Distances between devices varied from <100m up to ~35km

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
(cherry picked from commit f6e8ba0238fe349b7529357793e2fb18635819ed)
2019-08-28 13:09:41 +02:00
Koen Vandeputte
9e837873e7 kernel: bump 4.14 to 4.14.140
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-28 13:09:41 +02:00
Jo-Philipp Wich
ee164007b0 fstools: update to latest Git HEAD
6a61b9a probe: fallback to libblkid.so.1 when libblkid.so does not exist

Also remove deprecation notices from init script while we're at it.

Fixes: FS#2274
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 517cb0b70b)
2019-08-28 12:48:45 +02:00
Christian Lamparter
f2c6fa3dbb fstools: update to HEAD of 2019-07-01 - 1539b5
Update fstools to commit 1539b535ac327a3bc599d1ca871e14fd0dc3bba1

git log --pretty=oneline --abbrev-commit ff1ded63..1539b535

1539b53 libblkid-tiny: increment label size to 256
d563f3c libblkid-tiny: fix wrong btrfs label length
3957dd3 block: prevent mount point confusion
9b36dc2 libfstools: avoid false positives when matching devices and volumes

Created with the help of the make-package-update-commit.sh script.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 8036345225)
2019-08-28 12:48:38 +02:00
Jo-Philipp Wich
6710bb25b6 iwinfo: update to latest Git HEAD
a9f9557 nl80211: support reading hardware id from phy directly
c586cd3 iwinfo: add device id for MediaTek MT7612E
d4382dd iwinfo: add device id for Atheros AR9390

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit b13f3300d5)
2019-08-28 12:47:08 +02:00
Koen Vandeputte
0a59e91973 ar71xx/ath79: ag71xx: dont fetch the same var again
tx_size was just declared above and set to BIT(tx->order)
Use the declaration instead, which could avoid a pointer deref

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 6852eab58236e3991f5d73f211018dfef01f2a64)
2019-08-27 10:31:06 +02:00
Koen Vandeputte
db1a935e5c ar71xx: ag71xx: use base address value directly from the source
This brings the code more inline with the ath79 flavour

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
8d78aa8eaf ar71xx: ag71xx: make use of managed dev API simplifying code
Backport of a4eef43a12 ("ath79: ag71xx: replace alloc_etherdev with devm_alloc_etherdev")
combined with the initial changes from John Crispin.

Simplifies the code a lot by using the Managed dev API.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
c9b28b5703 ar71xx: ag71xx: replace ag71xx_get_phy_if_mode_name with phy_modes()
Backport of f73b2d64ed ("ath79: ag71xx: replace ag71xx_get_phy_if_mode_name() with phy_modes()")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
d143a0a4f6 ar71xx: ag71xx: pass correct device pointer to dma functions
Backport of 4eaa3626a8 ("ath79: ag71xx: pass correct device pointer to dma functions")

While 4.14 does not contain the warnings,
it still makes sense to use the proper pointers here.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
42b42d2c9b ar71xx/ath79: ag71xx: get ring_mask consistent
All other instances of this identical declaration fetch the
value directly from the ring_order.

Also do it here.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
576791b9b4 ar71xx: ag71xx: add missing register writes
These are added in ath79, but were not backported here

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
DENG Qingfang
faaa52eff9 tools/mtd-utils: update to 2.1.1
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit 1664d6698169bed1373db70acdf8ad46fa786b2e)
2019-08-27 10:31:06 +02:00
DENG Qingfang
c03765e87a mtd-utils: update to 2.1.1
Removed upstream patch
Compile and run tested on mvebu

Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
(cherry picked from commit fb57c617ba5269a6c2050e42b9d68813e262bf0d)
2019-08-27 10:31:06 +02:00
Koen Vandeputte
8fba3ebe88 kernel: bump 4.14 to 4.14.139
Refreshed all patches.

Also add a missing symbol for x86 which got used now in this bump.
- ISCSI_IBFT

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
9952c8cf40 ath10k-ct: update to version 2019-08-14
Changes:

9e5ab25027e0 ath10k-ct:  Update to latest 5.2 upstream, support bigger mtu, 160Mhz

Removed upstreamed patches:
- 204-ath10k-fix-max-antenna-gain-unit.patch
- 205-ath10k-adjust-tx-power-reduction-for-US-regulatory-d.patch

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-27 10:31:06 +02:00
Koen Vandeputte
c46219021f ath10k-firmware: update Candela Tech firmware images
This should fix a problem with 1560 MTU, 160Mhz on DFS channels,
some other small issues on < 5.2 kernels, and for 5.2 driver,
it pulls in some upstream stable fixes.

wave-1 firmware changes since last update:

  *  June 24, 2019: Try allocating low-priority WMI msgs if high-prio are not available.

  *  June 24, 2019: Init rate-ctrl to start at lowest rate instead of in the middle.  Hoping
                    this helps DHCP when station connects from a long distance.

wave-2:

  *  June 24, 2019  Start rate-ctrl at minimal values to help DHCP work better for far-away peers.

  *  July 24, 2019  Fix old regression that made /a (and probably /b/g) perform poorly, at least on
                    diet-compiled images.

  *  Aug 8, 2019  Improve a/b/g rate-ctrl by damping the PER swings caused by the all-or-nothing logic
                  of transmitting non-block-ack frames one at a time.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit de5f0764883ad6a0767da58d7359f3e01aa91139)
2019-08-27 10:31:06 +02:00
Hauke Mehrtens
5c47bfb735 ath10k-ct: remove patches for old versions
the ath10k-ct package ships multiple versions of the ath10k-ct driver,
OpenWrt currently only uses the version 4.19, but we still ship some
patches for older versions. Remove all patches only touching older
versions and also remove the patch for older versions from patches which
do the same changes to multiple versions of ath10k-ct.

This removes some unneeded patches, the end binary should stay the same.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 10fe5ca362)
2019-08-27 10:31:06 +02:00
Hauke Mehrtens
218cc22a43 ath10k-ct: update to version 2019-06-13
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 8f61b4cac4)
2019-08-27 10:31:06 +02:00
Adrian Schmutzler
10671619dc ath79: Fix whitespace errors in 11-ath10k-caldata
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 1174b94bc9)
2019-08-27 10:31:06 +02:00
Hauke Mehrtens
3a2bdf91bf ath10k-firmware: Fix mirror hash
Fixes: 7f79882d44 ("ath10k-firmware: update board-2.bin for community firmwares")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 7c640c2960)
2019-08-27 10:31:06 +02:00
Christian Lamparter
e57a756487 ath10k-firmware: update board-2.bin for community firmwares
This patch updates the board-2.bin for the default
IPQ4019, QCA9984 and QCA9888 ath10k-firmware-xyz-ct
and -ct-htt firmwares.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit 7f79882d44)
2019-08-27 10:31:06 +02:00
Kevin Darbyshire-Bryant
3898d98061 ath10k-firmware: update Candela Tech firmware images
wave-1:

2019-05-09: Tweak rate-ctrl:  Ramp PER up faster, down slower.  This
	    helps throughput in rate-vs-range test, especially with
	    nss1.

2019-05-20: Disable adaptive-CCA.  I am not sure it helps, and it may
	    make it slower to detect noise that should tell the system
	    to stop transmitting.  If someone has means to test this
	    properly, I'd be happy to work with them.

wave-2:

2019-05-15: Fix problem where rate-ctrl sometimes used rix of 0x0.

2019-05-15: Allow raw-tx of encrypted frame.  Requires a patch to the
	    driver to use raw mode when skb has WEP flag enabled AND
	    skb is flagged to not be encrypted.  Lightly tested.

2019-05-16: Fix tx-hang that happened when rate-ctrl chose an OFDM rate
	    for 20Mhz and sent that as AMPDU.  To fix, limit to (V)HT
	    rates if peer is (V)HT.  It seems that MCS0 (V)HT20 should
	    have as good of a chance of being detected as CCK or OFDM.

2019-06-06: Disable TX-BFEE, TX-BFER for IBSS connections.  I suspect
	    this is part of the tx-hang issue seen with IBSS between
	    two 9984 radios.

2019-06-12: Fix rx-rate reporting in 'fw_stats' logic.  This was at
	    least partly due to regressions I had added earlier when
	    working on some multi-vdev enhancements.

2019-6-12: Fix case where extd peer-stats were not always populated.
	   The stats gathering code did not handle error conditions
	   well.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit ff2382e36c)
2019-08-27 10:31:06 +02:00
Kevin Darbyshire-Bryant
f830903c37 ath10k-ct: Update to 2019-06-13
Changes:

ath10k:  Improve PMF/MPF mgt frame check

And add a driver for 5.2 (beta, not even tested yet) kernel.

Refresh patches.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 49b3dcb2ab)
2019-08-27 10:31:06 +02:00
Felix Fietkau
c3327f48dc mt76: update to the latest version
b3a29655ae0b mt76x02: fix crash on device reset
ffddb685a679 mt76x02u: check chip version on probe
7fc5f925ec35 mt76x2u: remove duplicated entry in mt76x2u_device_table
61311d9b307a mt76: introduce mt76_free_device routine
a7dfcf2e2498 mt76: move mac_work in mt76_dev
334b4cedf2b0 mt76: add mac80211 driver for MT7615 PCIe-based chipsets
edb2a001b695 mt76: add unlikely() for dma_mapping_error() check
355c07904da7 mt76: use macro for sn and seq_ctrl conversion
133bffba8bb2 add firmware for MT7615E
49d9c1b29f1d mt76: usb: reduce locking in mt76u_tx_tasklet
3e371ca35c7f mt76: set txwi_size according to the driver value
50073265559a mt76: add skb pointer to mt76_tx_info
c47a5685d00b mt76: dma: introduce skb field in mt76_txwi_cache
9029560fad1f mt76: dma: add skb check for dummy pointer
e9eea3923774 mt76: mt7615: use sizeof instead of sizeof_field
98c5359e9649 Revert "mt76: fix potential deadlock on cancelling workqueues"
bc9baa7b12b9 mt76x02u: remove bogus stop on suspend
6c1cab9abafc mt76usb: fix tx/rx stop
0e674c50a5a3 mt76x02: remove bogus mutex usage
59f7bb6fbfc5 Revert "mt76: mt76x02: send no-skb tx status without holding the status lock"
b0f2a30452f0 mt76x02: avoid status_list.lock and sta->rate_ctrl_lock dependency
62054defd78a mt76: mt7603: remove query from mt7603_mcu_msg_send signature
e79d96acf597 mt76: mt7603: use standard signature for mt7603_mcu_msg_send
be8f0394e335 mt76: mt7603: initialize mt76_mcu_ops data structure
9a9c6569e987 mt76: introduce mt76_mcu_restart macro
980b91e04006 mt76: mt7603: init mcu_restart function pointer
a97db3f3ceee mt76: mt7603: run __mt76_mcu_send_msg in mt7603_mcu_send_firmware
151115f8160b mt76: mt76x02: mt76x02_poll_tx() can be static
7391f98f8b4b mt76: fix endianness sparse warnings
6c06f7381129 mt76: mt7603: report firmware version using ethtool
f06647efbd1c mt76: usb: use EP max packet aligned buffer sizes for rx
f43fccf0990e mt76: move beacon_int in mt76_dev
74ab2cf6171e mt76: move beacon_mask in mt76_dev
23c2f94deeeb mt76: add TX/RX antenna pattern capabilities
6e790e106a84 mt76: move pre_tbtt_tasklet in mt76_dev
7606c08414e5 mt76: mt7603: enable/disable pre_tbtt_tasklet in mt7603_set_channel
ff22eee58520 mt76: do not enable/disable pre_tbtt_tasklet in scan_start/scan_complete
3157385e2277 mt76: mt7603: dynamically alloc mcu req in mt7603_mcu_set_eeprom
cc674e2d1f10 mt76: mt76x02: remove useless return in mt76x02_resync_beacon_timer
6b184272ba15 mt76: move tx_napi in mt76_dev
bce63c453c85 mt76: mt7603: use napi polling for tx cleanup
4afd89e8ab20 mt76: mt7615: use napi polling for tx cleanup
2cb46830faf7 mt76: move netif_napi_del in mt76_dma_cleanup
b4ceb9f7c791 mt76: Fix a signedness bug in mt7615_add_interface()
d00dc9524068 mt76: mt7615: Use after free in mt7615_mcu_set_bcn()
4e0ccc6a2da6 mt76: mt7615: Make mt7615_irq_handler static
0fd552a55847 mt7615: mcu: simplify __mt7615_mcu_set_wtbl
50f70948ffcc mt7615: mcu: simplify __mt7615_mcu_set_sta_rec
4434d04d3c50 mt7615: mcu: remove bss_info_convert_vif_type routine
083fbb97223c mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl_bmc
f61ca8019129 mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl
35bd12d609ac mt7615: mcu: unify mt7615_mcu_add_wtbl_bmc and mt7615_mcu_del_wtbl_bmc
f8f990b9092e mt7615: mcu: remove unused parameter in mt7615_mcu_del_wtbl
965bca14795e mt7615: remove query from mt7615_mcu_msg_send signature
9b9ca18d9602 mt7615: remove dest from mt7615_mcu_msg_send signature
935b7e5edaba mt7615: mcu: remove skb_ret from mt7615_mcu_msg_send
2442db44c2ab mt7615: mcu: unify __mt7615_mcu_set_dev_info and mt7615_mcu_set_dev_info
645bc458e1ab mt7615: mcu: do not use function pointers whenever possible
40c4201c28bf mt7615: mcu: remove unused structure in mcu.h
a8834a233fa7 mt7615: mcu: use standard signature for mt7615_mcu_msg_send
824d25c44124 mt7615: initialize mt76_mcu_ops data structure
d9434275a872 mt7615: mcu: init mcu_restart function pointer
c2211e478c6e mt7615: mcu: run __mt76_mcu_send_msg in mt7615_mcu_send_firmware
cb63a06c403a mt76: mt7603: stop mac80211 queues before setting the channel
c6aaa3a2a9ea mt76: mt7615: rearrange cleanup operations in mt7615_unregister_device
97609f3708c7 mt76: mt7615: add static qualifier to mt7615_rx_poll_complete
f9dadd2d9377 mt76: mt7603: add debugfs knob to enable/disable edcca
89cda5d85498 mt7603: fix reading target tx power from eeprom
77d0e3378bd1 mt76: fix setting chan->max_power
f575da2f01a4 mt76: mt76x02: fix tx status reporting issues
a5d18dca9d3e mt76: mt76x02: fix tx reordering on rate control probing without a-mpdu
bd32a93e4996 mt76: mt76x02: remove enable from mt76x02_edcca_init signature
18386eef1d22 mt76: mt76x2u: remove mt76x02_edcca_init in mt76x2u_set_channel
da3514f6de4f mt76: mt76x2: move mutex_lock inside mt76x2_set_channel
0d4719c327ca mt76: mt76x02: run mt76x02_edcca_init atomically in mt76_edcca_set
fd5af7397257 mt76: mt76x02: fix edcca file permission
a0f51f276104 mt76: mt7615: do not process rx packets if the device is not initialized
753cdee4f6f6 mt76: mt7615: stop mcu first in mt7615_unregister_device
899efe755bae mt76: move mt76_insert_ccmp_hdr in mt76-module
6960b6e2d163 mt76: mt7615: add support for mtd eeprom parsing
4bcb0577daa5 mt76: mt7615: select wifi band according to eeprom
866f2c6cd0a2 mt76: generalize mt76_get_txpower for 4x4:4 devices
514fb04492a6 mt76: mt7615: add the capability to configure tx power
ced9d43a8a85 mt76: mt7615: init get_txpower mac80211 callback
8abd502a5f86 mt76: mt7615: rearrange locking in mt7615_config
5b9b62e0b00c mt76: move mt76_get_rate in mt76-module
661c7c8e1acc mt76: Remove set but not used variables 'pid' and 'final_mpdu'
f072c7ba2150 mt76: mt7615: enable support for mesh
28d9496205a6 mt76: mt7615: fix slow performance when enable encryption
827b9ade1672 mt76: mt7615: remove unused variable in mt7615_mcu_set_bcn
34eea1414b8b mt76: mt7615: remove key check in mt7615_mcu_set_wtbl_key
2bfae5a25251 mt76: usb: fix rx A-MSDU support
b0335320fc2c mt76: usb: do not always copy the first part of received frames
3e7fc1573c6f mt76x02: fix reporting of non-probing frames with tx status requested
0d5caead9765 Revert "mt76: usb: do not always copy the first part of received frames"
335e8c6baf77 Revert "mt76: usb: fix rx A-MSDU support"
47ddf4b722a1 mt76: revert support for TX_NEEDS_ALIGNED4_SKBS
0b6520bd1c98 mt7603: rework and fix tx status reporting
539b6796605c mt7603: improve hardware rate switching configuration
d86d6efa7214 mt76x0: fix RF frontend initialization for external PA
f476a14761ec mt76x02: fix endian issue in tx status reporting patch
f8d051785221 mt76: mt7615: simplify mt7615_mcu_set_sta_rec routine
73ff45f618fd mt76: mt7615: add support for per-chain signal strength reporting
9b67ae62d9ea mt76: mt7615: init per-channel target power
160fdc05e260 mt76: mt7615: take into account extPA when configuring tx power
2211d9370976 mt76: mt76x02u: fix sparse warnings: should it be static?
3750533a37a4 mt76: mt7615: fix incorrect settings in mesh mode
c37c1ca3fa01 mt76: mt7615: update peer's bssid when state transition occurs
9dd1089a29af mt76: mt76u: reduce rx memory footprint
0789f45e52c5 mt76: mt7615: remove cfg80211_chan_def from mt7615_set_channel signature
2dca431cd7fc mt76: move nl80211_dfs_regions in mt76_dev data structure
3386ccf7842b mt76: mt76u: get rid of {out,in}_max_packet
d680ab01cddd mt76: usb: fix rx A-MSDU support
6cafaca7225d mt7603: use READ_ONCE instead of ACCESS_ONCE
9e2e0b857710 mt76: round up length on mt76_wr_copy
e378ef1bc1e5 mt76: mt7615: fix sparse warnings: warning: restricted __le16 degrades to integer
7991dd7e25c8 mt76: mt7615: introduce mt7615_regd_notifier
901a4c7b7f8c mt76: mt7615: add hw dfs pattern detector support
57c600e5b945 mt76: mt7615: do not perform txcalibration before cac is complited
6afc9521962f mt76: mt7615: add csa support
8919516006e4 mt76: mt7615: add radar pattern test knob to debugfs
3be723cad7a9 mt76: mt7615: clean up FWDL TXQ during/after firmware upload
47fe37e22fdf mt76: mt7615: fall back to sw encryption for unsupported ciphers
bc5e0417939f mt76: mt7603: enable hardware rate up/down selection
ae760db52abc mt76: mt7615: move mt7615_mcu_set_rates to mac.c
2ae01f7e7715 mt76: mt7615: reset rate index/counters on rate table update
6f9837833baf mt76: mt7615: sync with mt7603 rate control changes
edbe88ec7c1f mt76: usb: fix endian in mt76u_copy
f43b6228facf mt76: usb: remove unneeded {put,get}_unaligned
5e1e5b75d6e8 mt76: usb: use full intermediate buffer in mt76u_copy
017d0ff097f7 mt76: mt76u: fix typo in mt76u_fill_rx_sg
2c0ccf1561c1 mt76: mt7615: always release sem in mt7615_load_patch
0c6f1a2b3c33 mt76: mt7615: introduce mt7615_mcu_send_ram_firmware routine
3dfc1eeffedf mt76: mt7615: fix sparse warnings: incorrect type in assignment (different base types)
947532099c3e mt76: mt7603: fix sparse warnings: warning: incorrect type in assignment (different base types)
e07451d27941 mt76: mt7615: fix sparse warnings: warning: cast from restricted __le16
b973bef0f87f mt7603: do not use tssi-off power value for mt7628
8fc3e6e02e96 mt76: mt7615: fix using VHT STBC rates
b21b99187a54 mt76: mt7615: fix PS buffering of action frames
3d43dd886951 mt76: mt7615: fix invalid fallback rates
0ce46825b8df mt76: mt7603: fix invalid fallback rates
3b08966d99ae Revert "mt76: usb: use full intermediate buffer in mt76u_copy"
48800e7b6088 Revert "mt76: usb: remove unneeded {put,get}_unaligned"
439354d54085 Revert "mt76: usb: fix endian in mt76u_copy"
8c1da9367beb mt76: usb: fix endian in mt76u_copy
307be50cc5f4 mt76: usb: remove unneeded {put,get}_unaligned
5d298297c00c mt76: mt76x02: use params->ssn value directly
f74d117ed41c mt76: mt7603: use params->ssn value directly
649f2e83742e mt76: mt7615: use params->ssn value directly
b647180c86be mt76: mt7615: unlock dfs bands
410923fa24de Revert accidental debugging change
3d7f7384bef0 mt76: mt7615: add missing register initialization
75656a4590a3 net: wireless: support of_get_mac_address new ERR_PTR error
fb0f432834c0 mt76: stop rx aggregation on station removal
76aada563b66 mt76: dma: reset q->rx_buf on rx reset
3245ca8b8aeb mt76: check of_get_mac_address for NULL as well to restore old kernel compat
8e495245ab3d mt76: mt7615: move mt7615_mac_get_key_info in mac.c
e4f48a8df6aa mt76: mt7615: add mt7615_mac_wtbl_addr routine
e8c95e5a41f0 mt76: mt7615: introduce mt7615_mac_wtbl_set_key routine
d998b90c4bed mt76: mt7615: remove wtbl_sec_key definition
60d279ec2762 mt76: mt7615: add set_key_cmd and mt76_wcid to mt7615_mac_wtbl_set_key signature
4947ad4eab6a mt76: introduce mt76_mmio_read_copy routine
4d9001b8ab1d mt76: mt7615: fix MT7615_WATCHDOG_TIME definition
3d6796b867b6 mt76: mt7603: fix watchdog rescheduling in mt7603_set_channel
8d7a48030005 mt76: mt7615: add 4 WMM sets support
ae0f11149248 mt76: mt7615: update cw_min/max related settings
8b7bbd017654 mt76: mt7603: fix some checkpatch warnings
e6045467848d mt76: mt7615: fix some checkpatch warnings
c415c676e255 mt76: mt76x02: fix some checkpatch warnings
f625afcedc9b mt76: switch to SPDX tag instead of verbose boilerplate text
4d57f1cee4aa mt76: mt7615: rework locking scheme for mt7615_set_channel
2becd13be766 mt76: mt7615: add Smart Carrier Sense support
20f0c196722a mt76: mt76x02: introduce mt76x02_pre_tbtt_enable and mt76x02_beacon_enable macros
ae83a05b1050 mt76: mt76x02: do not copy beacon skb in mt76x02_mac_set_beacon_enable
92fa62ace198 mt76: mt76x02u: enable multi-vif support
c6dabfe953af mt76: mt76x02u: enable survey support
1f44159b41ff mt76: mt7603: move survey_time in mt76_dev
9657e6304322 mt76: mt7615: enable survey support
af860c0decb1 mt76: move mt76_tx_tasklet in mt76 module
a9d2a28b39fc mt76: mt7603: remove unnecessary mcu queue initialization
281b10fc1fe6 mt76: mt7615: add BIP_CMAC_128 cipher support
37673a4181e4 mt76: fix some checkpatch warnings
a7fa32603981 mt76: add default implementation for mt76_sw_scan/mt76_sw_scan_complete
5c35bdf057af mt7615: apply calibration-free data from OTP
0e3baf0213c9 mt76: fix a leaked reference by adding a missing of_node_put
2d5928fef23d net: Remove dev_err() usage after platform_get_irq()
a0824197ab00 mt76: mt76x0e: disable 5GHz band for MT7630E
4d8a9f20610f mt76: do not send BAR frame on tx aggregation flush stop
2a0edbb4473b mt76: remove offchannel check in tx scheduling

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-08-26 19:10:10 +02:00
Felix Fietkau
7c32f8eff0 mac80211: backport support for the IEEE80211_KEY_FLAG_GENERATE_MMIE flag
Required for an upcoming mt76 update

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commit 0441edfb7f)
2019-08-26 18:43:24 +02:00
Felix Fietkau
1a1a504a54 mac80211: add new minstrel_ht patches to improve probing on mt76x2
Also include follow-up regression fix from master

Signed-off-by: Felix Fietkau <nbd@nbd.name>
(cherry-picked from commits 9861050b85 and f0992d7a30)
2019-08-26 16:27:30 +02:00
Paul Spooren
8bf8de95a2 imagebuilder: fix make info for empty SUPPORTED_DEVICES
For x86/64 (maybe more) target the SUPPORTED_DEVICES variable is empty
which causes the `&&` junction to fail, producing a non zero exit code.

Tested-by: Paul Spooren <mail@aparcar.org>
Fixed-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Paul Spooren <mail@aparcar.org>
(cherry picked from commit 07926d7def)
2019-08-22 21:19:04 +02:00
Hauke Mehrtens
7d300326ee mdadm: Use upstream fix for musl 1.1.23 compile
Fixes: d720f83f87 ("mdadm: Fix compile with musl 1.1.23")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ebbec2fdc6)
2019-08-21 10:28:27 +02:00
Hauke Mehrtens
d720f83f87 mdadm: Fix compile with musl 1.1.23
This adds missing includes for sys/sysmacros.h which are needed with
musl libc 1.1.23.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit ba8aeb02ea)
2019-08-21 10:27:09 +02:00
Hans Dedecker
c85f9a245a odhcpd: remove socket from uloop upon NETEV_IFINDEX_CHANGE
949476e router: close socket upon NETEV_IFINDEX_CHANGE fixed

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-08-19 21:31:15 +02:00
Hauke Mehrtens
b2cb6bb48a musl: Fix CVE-2019-14697
musl libc through 1.1.23 has an x87 floating-point stack adjustment
imbalance, related to the math/i386/ directory. In some cases, use of
this library could introduce out-of-bounds writes that are not present
in an application's source code.

This problem only affects x86 and no other architectures.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit c262daf308)
2019-08-18 23:59:23 +02:00
Jo-Philipp Wich
5d906a656e uhttpd: update to latest Git HEAD
6b03f96 ubus: increase maximum ubus request size to 64KB

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit d1f207ecc9)
2019-08-18 20:01:59 +02:00
Jo-Philipp Wich
190c5626ff uhttpd: add direct dependency on libjson-c
The OpenWrt buildroot ABI version rebuild tracker does not handle
transient dependencies, therefor add all libraries linked by uhttpd
as direct dependencies to the corresponding binary package definition.

This ensures that uhttpd is automatically rebuilt and relinked if any
of these libraries has its ABI_VERSION updated in the future.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit a95ddaba02)
2019-08-18 20:01:58 +02:00
Hauke Mehrtens
a2a311fc2b uhttpd: Fix format string build problems
91fcac34ac uhttpd: Fix multiple format string problems

Fixes: fc454ca153 libubox: update to latest git HEAD
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 3c401f45c9)
2019-08-18 20:01:58 +02:00
Luiz Angelo Daros de Luca
3b34fcaf94 musl: ldso/dlsym: fix mips returning undef dlsym
This happens only the second time a library is loaded by dlopen().
After lib1 is loaded, dlsym(lib1,"undef1") correctly resolves the undef
symbol from lib1 dependencies. After the second library is loaded,
dlsym(lib2,"undef1") was returning the address of "undef1" in lib2
instead of searching lib2 dependencies.

Using upstream fix which now uses the same logic for relocation time
and dlsym.

Fixes openwrt/packages#9297

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
(cherry picked from commit 0d0617ff14)
2019-08-17 17:13:51 +02:00
Rosen Penev
6868188101 bzip2: Update to 1.0.8
It seems bzip2 was abandoned by the author and adopted by the sourceware
people. The last release of bzip2 was from 2010.

Several security bugs were fixed as well as others.

Fixed up PKG_LICENSE to be compatible with SPDX.

Changed URLs to point to the new home.

Added patch that gets rid of deprecated utime function and switches it to
utimensat.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-08-17 17:00:11 +02:00
Eneas U de Queiroz
b35e1360cd wolfssl: bump to 4.1.0-stable
Always build AES-GCM support.
Unnecessary patches were removed.

This includes two vulnerability fixes:

CVE-2019-11873: a potential buffer overflow case with the TLSv1.3 PSK
extension parsing.

CVE-2019-13628 (currently assigned-only): potential leak of nonce sizes
when performing ECDSA signing operations. The leak is considered to be
difficult to exploit but it could potentially be used maliciously to
perform a lattice based timing attack.

This brings the package up-to-date with master, so it incorporates
changes from 4.0.0 in master:
* Removed options that can't be turned off because we're building with
  --enable-stunnel, some of which affect hostapd's Config.in.
* Adjusted the title of OCSP option, as OCSP itself can't be turned off,
  only the stapling part is selectable.
* Mark options turned on when wpad support is selected.
* Add building options for TLS 1.0, and TLS 1.3.
* Add hardware crypto support, which due to a bug, only works when CCM
  support is turned off.
* Reorganized option conditionals in Makefile.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2019-08-17 17:00:10 +02:00
Hauke Mehrtens
3809b6662d mac80211: Update to version 4.19.66-1
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-08-17 13:36:06 +02:00
Hauke Mehrtens
ac7ccf739a mac80211: Update to version 4.19.57
This updates to backports-4.19.57-1 which contains the wireless
subsystem and driver from kernel 4.19.57.
The removed patches are applied upstream.

Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-08-17 13:36:06 +02:00
Hans Dedecker
0f0ed2451e odhcpd: fix closing of router socket
c2d6032 router: fix previous commit

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-08-17 09:45:10 +02:00
Hauke Mehrtens
6db454e9b6 kernel: Activate CONFIG_OPTIMIZE_INLINING
This will reduce the size of the kernel if CONFIG_CC_OPTIMIZE_FOR_SIZE is
set like for all targets with small_flash feature flag.
I haven't seen any changes for an ARM64 target which optimizes the
kernel for speed instead.

On the ath79/tiny target the uncompressed kernel size was reduced by
3.2% and the compressed kernel size by 2.1%

kernel size with CONFIG_OPTIMIZE_INLINING=n
4346412 build_dir/target-mips_24kc_musl/linux-ath79_tiny/vmlinux
1391169 build_dir/target-mips_24kc_musl/linux-ath79_tiny/tplink_tl-wr941-v4-kernel.bin

Kernel size with CONFIG_OPTIMIZE_INLINING=y
4212396 build_dir/target-mips_24kc_musl/linux-ath79_tiny/vmlinux
1362051 build_dir/target-mips_24kc_musl/linux-ath79_tiny/tplink_tl-wr941-v4-kernel.bin

This change is currently pending for kernel 5.2 and already in
linux-next, this updates our patch to match the upstream version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 6dac1c0a9b)
2019-08-17 00:18:29 +02:00
Klaus Kudielka
e79f192c0a mvebu: sysupgrade: sdcard: fix platform_do_upgrade_sdcard
Unconditionally execute the final case statement, even if the disk layout
changed. This is necessary, to keep the original Turris Omnia flash
instructions working: The disk layout WILL change, when switching from
TurrisOS to OpenWRT. Without updating the uboot environment at the same
time, the user would end up with an unbootable system.

Fixes commit 2e5a0b81ec ("mvebu: sysupgrade: sdcard: keep user added ...")

Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
2019-08-17 00:17:46 +02:00
Tomasz Maciej Nowak
342bcb739f mvebu: enable xHCI USB controller connected to PCIe
This commit fixes regression on Linksys WRT1900 (Mamba) where this device
doesn't have USB 3.0 controller integrated in SoC, instead it has Etron
EJ168 connected to PCIe lane. Previously enabled in kernel 4.4 and 4.9,
was lost in transition to 4.14.

Fixes: 4ccad92 ("mvebu: Add support for kernel 4.14")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-08-17 00:17:46 +02:00
Hans Dedecker
45a26cb211 odhcpd: fix sending RA when link state brings bridge down
13928b3 router: close socket upon NETEV_IFINDEX_CHANGE

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-08-16 09:54:43 +02:00
David Bauer
d97c6d9f09 lantiq: unify Fritz!Box LED mappings
This commit unifies the LED mapping of the AVM Fritz!Box routers, which
have a combined Power/DSL LED.

With the stock firmware, the Power LED has the following
characteristics:

 - Blink when DSL sync is being established
 - Solid when DSL sync is present

We can't completely resemble this behavior in OpenWrt. Currently, the
Power LED is completely off, when DSL sync is missing. This is not
really helpful, as a user might have the impression, that he bricked his
device.

Instead, map the Info-LED to the state of the DSL connection.
There is no consistent behavior for the Info-LED in the stock
firmware, as the user can set it's function by himself. The DSL
connection state is one possible option for the Info LED there.

Also use the red Power LED to indicate a running upgrade, in case the
board has a two-color Power LED.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 3032bf7f89)
2019-08-15 14:53:04 +02:00
Jo-Philipp Wich
ce41f468e1 Revert "ath79: make target source-only"
This reverts commit 2b074654b0.

Due to popular demand, I've decided to revert this commit after
deliberating with Petr. This means that 19.07 will ship ath79 binary
images after all.

We do however consider the ath79 target on Kernel 4.14 in the 19.07
branch to be beta quality at best.

Acked-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-08-14 21:27:11 +02:00
Koen Vandeputte
bc138c5b72 kernel: bump 4.14 to 4.14.138
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-14 18:24:11 +02:00
Russell Senior
46e9a9b04e tools/patch: apply upstream patch for cve-2019-13638
GNU patch through 2.7.6 is vulnerable to OS shell command injection that
can be exploited by opening a crafted patch file that contains an ed style

diff payload with shell metacharacters. The ed editor does not need to be
present on the vulnerable system. This is different from CVE-2018-1000156.

https://nvd.nist.gov/vuln/detail/CVE-2019-13638

Signed-off-by: Russell Senior <russell@personaltelco.net>
(cherry picked from commit bcfd1d7685)
2019-08-14 07:29:32 +02:00
David Bauer
61e51473c2 lantiq: add led-upgrade alias for Fritz!Box 7412
This adds the led-upgrade alias for the AVM Fritz!Box 7412 to indicate a
running firmware upgrade.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 920abb9b58)
2019-08-11 12:54:57 +02:00
David Bauer
b72fa3e4a8 lantiq: enable second VPE on Fritz!Box 7412
The AVM Fritz!Box 7412 does not use the VMMC part of the Lantiq chip but
rather a proprietary solution based on the DECT chip for the FXS ports.

Therefore, the second VPE can be enabled for use with OpenWrt.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 891a700759)
2019-08-11 12:54:57 +02:00
David Bauer
5355665cc8 lantiq: correct Fritz!Box 7412 button logic level
The AVM FRITZ!Box 7412 buttons are both active low, which is currently
incorrectly defined in the device-tree.

This leads to the device booting directly into failsafe.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit c12947b39e)
2019-08-11 12:54:57 +02:00
Johann Neuhauser
af2ceb93d7 lantiq: use wpad-basic for boards with enough storage
This commit selects wpad-basic for the FRITZ!Box 7312 and 7412 as
wpad-mini is only selected on boards with small flash.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
[add short description]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit c3c3cd5e4a)
2019-08-11 12:54:57 +02:00
Hans Dedecker
30798132bf odhcpd: fix lingering uloop socket descriptor
e9e8240 router: fix lingering uloop socket descriptor

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-08-10 10:18:00 +02:00
Koen Vandeputte
62eae4805b ar71xx: ag71xx: init rings with GFP_KERNEL
ar71xx got lost during final rebase ..

Fixes: c8a6ce71e4 ("ar71xx/ath79: ag71xx: init rings with GFP_KERNEL")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-09 18:52:21 +02:00
Koen Vandeputte
c8a6ce71e4 ar71xx/ath79: ag71xx: init rings with GFP_KERNEL
Upstream commit	246902bdf562d45ea3475fac64c93048a7a39f01

Which contains following explanation:

--
There is no need to use GFP_ATOMIC here, GFP_KERNEL should be enough.
The 'kcalloc()' just a few lines above, already uses GFP_KERNEL.
--

Looking at the code, all other descriptors also use plain GFP_KERNEL

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-09 18:32:38 +02:00
Koen Vandeputte
dda342abba ar71xx/ath79: ag71xx: fix sleep in atomic
When enabling atomic-sleep-debugging options in the kernel,
following splat is seen when disabling the interface (which happens on boot):

[   10.892878] eth0: link down
[   10.896788] BUG: sleeping function called from invalid context at net/core/dev.c:5563
[   10.904730] in_atomic(): 1, irqs_disabled(): 1, pid: 425, name: ip
[   10.911004] 2 locks held by ip/425:
[   10.914539]  #0:  (rtnl_mutex){....}, at: [<80377474>] rtnetlink_rcv_msg+0x2d8/0x380
[   10.922441]  #1:  (&(&ag->lock)->rlock){....}, at: [<80330158>] ag71xx_hw_disable+0x24/0x94
[   10.930976] CPU: 0 PID: 425 Comm: ip Not tainted 4.14.136 #0
[   10.936716] Stack : 805e0000 80589228 80557404 876998ec 80610000 80610000 87cdcafc 805b5327
[   10.945233]         80551534 000001a9 8061386c 87699ccc 87cfb180 00000001 876998a0 84f70903
[   10.953751]         00000000 00000000 80b00000 8769979c 6a7407fa 00000000 00000007 00000000
[   10.962270]         000000b7 16d0954a 000000b6 00000000 80000000 87cb658c 87cb65b0 00000001
[   10.970787]         8046f97c 87699ccc 87cfb180 87ff2810 00000003 802ce724 0806e098 80610000
[   10.979306]         ...
[   10.981797] Call Trace:
[   10.984287] [<8006cb0c>] show_stack+0x58/0x100
[   10.988814] [<800aab34>] ___might_sleep+0x100/0x120
[   10.993774] [<8035c434>] napi_disable+0x30/0xd8
[   10.998377] [<80330198>] ag71xx_hw_disable+0x64/0x94
[   11.003418] [<8033069c>] ag71xx_stop+0x24/0x38
[   11.007959] [<80359e30>] __dev_close_many+0xcc/0x104
[   11.013009] [<80362eac>] __dev_change_flags+0xc8/0x1ac
[   11.018227] [<80362fb8>] dev_change_flags+0x28/0x70
[   11.023182] [<80376890>] do_setlink+0x31c/0x91c
[   11.027786] [<80379360>] rtnl_newlink+0x3ec/0x7f8
[   11.032563] [<80377498>] rtnetlink_rcv_msg+0x2fc/0x380
[   11.037799] [<8039a734>] netlink_rcv_skb+0xd4/0x178
[   11.042754] [<80399d10>] netlink_unicast+0x168/0x250
[   11.047796] [<8039a2d4>] netlink_sendmsg+0x3d8/0x434
[   11.052841] [<8033f0e4>] ___sys_sendmsg+0x1dc/0x290
[   11.057794] [<80340140>] __sys_sendmsg+0x54/0x84
[   11.062495] [<8007212c>] syscall_common+0x34/0x58

This is caused by calling napi_disable() while holding the spinlock.

Fix it by omitting the spinlock, which is not required here
Extensively tested on GL-MiFi, RB-912 and RB-922 hardware

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-09 18:32:38 +02:00
Koen Vandeputte
33af038bec kernel: bump 4.14 to 4.14.137
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-09 18:32:38 +02:00
Jo-Philipp Wich
872cbcc628 config: introduce separate CONFIG_SIGNATURE_CHECK option
Introduce a new option CONFIG_SIGNATURE_CHECK which defaults to the value
of CONFIG_SIGNED_PACKAGES and thus is enabled by default.

This option is needed to support building target opkg with enabled
signature verification while having the signed package lists disabled.

Our buildbots currently disable package signing globally in the
buildroot and SDK to avoid the need to ship private signing keys to
the build workers and to prevent the triggering of random key generation
on the worker nodes since package signing happens off-line on the master
nodes.

As unintended side-effect, updated opkg packages will get built with
disabled signature verification, hence the need for a new override option.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit f565f276e2)
2019-08-07 07:53:48 +02:00
Petr Štetiar
ff550dae32 adb: fix build breakage on recent musl
Fix build breakage as upstream has removed implicit include of
sys/sysmacros.h from sys/types.h:

 remove implicit include of sys/sysmacros.h from sys/types.h

 this reverts commit f552c792c7ce5a560f214e1104d93ee5b0833967, which
 exposed the sysmacros.h macros (device major/minor calculations) for
 BSD and GNU profiles to mimic an unintentional glibc behavior some
 code depended on. glibc has deprecated and since removed them as the
 resolution to bug #19239, so it makes no sense for us to keep this
 behavior. affected code should all have been fixed by now, and if it's
 not yet fixed it needs to be for use with modern glibc anyway.

Ref: https://git.musl-libc.org/cgit/musl/commit/include/sys/types.h?id=a31a30a0076c284133c0f4dfa32b8b37883ac930
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 79596f782e)
2019-08-07 07:43:30 +02:00
Jo-Philipp Wich
4fd7a30c70 packages: apply usign padding workarounds to package indexes if needed
Since usign miscalculates SHA-512 digests for input sizes of exactly
64 + N * 128 + 110 or 64 + N * 128 + 111 bytes, we need to apply some
white space padding to avoid triggering the hashing edge case.

While usign itself has been fixed already, there is still many firmwares
in the wild which use broken usign versions to verify current package
indexes so we'll need to carry this workaround in the forseeable future.

Ref: https://forum.openwrt.org/t/signature-check-failed/41945
Ref: https://git.openwrt.org/5a52b379902471cef495687547c7b568142f66d2
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit e1f588e446)
2019-08-07 07:22:37 +02:00
Jo-Philipp Wich
7a10c7b882 usign: update to latest Git HEAD
This update fixes usign signature verification on files with certain
file sizes triggering a bug in the shipped SHA-512 implementation.

5a52b37 sha512: fix bad hardcoded constant in sha512_final()
3e6648b README: replace unicode character
716c3f2 README: add reference to OpenBSD signify
86d3668 README: provide reference for ed25519 algorithm
939ec35 usign: main.c: describe necessary arguments for -G

Ref: https://forum.openwrt.org/t/signature-check-failed/41945
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit 991dd5a893)
2019-08-06 20:58:35 +02:00
Koen Vandeputte
bcbc7ba768 kernel: bump 4.14 to 4.14.136
Refreshed all patches.

Altered patches:
- 306-v4.16-netfilter-remove-saveroute-indirection-in-struct-nf_.patch

Remove upstreamed:
- 100-powerpc-4xx-uic-clear-pending-interrupt-after-irq-ty.patch
- 088-0002-i2c-qup-fixed-releasing-dma-without-flush-operation.patch
- 500-arm64-dts-marvell-Fix-A37xx-UART0-register-size.patch

Fixes:
- CVE-2019-13648
- CVE-2019-10207

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-08-06 11:54:50 +02:00
David Bauer
0f3d54f5b7 mpc85xx: correct OCEDO Panda LED definition
WLAN0 and the unused LED are currently swapped. Fix this, so the LED
behavior matches the other OCEDo devices.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit a3a2b4857e)
2019-08-05 22:40:35 +02:00
Russell Senior
a941d39460 tools/patch: apply upstream patch for CVE-2019-13636
In GNU patch through 2.7.6, the following of symlinks is mishandled in
certain cases other than input files. This affects inp.c and util.c.

https://nvd.nist.gov/vuln/detail/CVE-2019-13636

Signed-off-by: Russell Senior <russell@personaltelco.net>
(cherry picked from commit 995bcc5329)
2019-08-01 21:54:43 +02:00
Petr Štetiar
53b61baac6 scripts/ubinize-image.sh: fix buildbot breakage
New Docker based buildslaves install just bare minimum of packages, thus
not having bsdmainutils package installed which provides `hexdump`
utility, leading to the following build breakage on buildbots:

 ubinize-image.sh: 12: /builder/scripts/ubinize-image.sh: hexdump: not found

So this patch simply replaces `hexdump` with `od` utility provided by
coreutils package, which should be likely available.

Co-authored-by: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit c6d41c320c)
2019-08-01 21:54:40 +02:00
David Bauer
862352cdbd ar71xx: fix HiveAP 121 PLL for 1000M
The Aerohive HiveAP 121 has the wrong PLL value set for Gigabit speeds,
leading to packet-loss. 10M and 100M work fine.

This commit sets the Gigabit Ethernet PLL value to the correct value,
fixing packet loss.

Confirmed with iperf and floodping.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit cb49e46a8a)
2019-08-01 21:29:43 +02:00
Koen Vandeputte
a654ac0d6e ar71xx: really fix Mikrotik board detection
commit e09da0169a ("ar71xx: fix Mikrotik board detection")
was generated based on testing a rb-912 board, on which detection failed.

Testing on more hardware shows something fun:

machine	: MikroTik RouterBOARD 922UAGS-5HPacD
machine	: Mikrotik RouterBOARD 912UAG-5HPnD

Both lowercase and uppercase are used.
So ensure we support both now ..

Fixes: e09da0169a ("ar71xx: fix Mikrotik board detection")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 845b2a1cfe)
2019-08-01 12:11:59 +02:00
Koen Vandeputte
19f768f691 toolchain/musl: bump to version 1.1.23
new features:
- riscv64 port
- configure now allows customizing AR and RANLIB vars
- header-level support for new linux features in 5.1

major internal changes:
- removed extern __syscall; syscall header code is now fully self-contained

performance:
- new math library implementation for log/exp/pow
- aarch64 dynamic tlsdesc function is streamlined

compatibility & conformance:
- O_TTY_INIT is now defined
- sys/types.h no longer pollutes namespace with sys/sysmacros.h in any profile
- powerpc asm is now compatible with clang internal assembler

changes for new POSIX interpretations:
- fgetwc now sets stream error indicator on encoding errors
- fmemopen no longer rejects 0 size

bugs fixed:
- static TLS for shared libraries was allocated wrong on "Variant I" archs
- crash in dladdr reading through uninitialized pointer on non-match
- sigaltstack wrongly errored out on invalid ss_size when doing SS_DISABLE
- getdents function misbehaved with buffer length larger than INT_MAX
- set*id could deadlock after fork from multithreaded process

arch-specfic bugs fixed:
- s390x SO_PEERSEC definition was wrong
- passing of 64-bit syscall arguments was broken on microblaze
- posix_fadvise was broken on mips due to missing 7-arg syscall support
- vrregset_t layout and member naming was wrong on powerpc64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-31 16:56:19 +02:00
Koen Vandeputte
4fd61b6220 kernel: bump 4.14 to 4.14.134
Refreshed all patches.

Remove upstreamed:
- 049-v4.20-mips-remove-superfluous-check-for-linux.patch

Fixes:
- CVE-2019-3846
- CVE-2019-3900

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-31 16:56:19 +02:00
Koen Vandeputte
8c57d88fcc imx6: bump SDMA firmware to 3.5
- add uart rom script address in header of sdma firmware to support
  the uart driver of latest kernel working well while old firmware
  assume ram script used for uart driver as NXP internal legacy
  kernel.
- add multi-fifo SAI/PDM scripts.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 819b6345a206ad182dd3c2d786a3d7f04e33f751)
2019-07-31 16:56:19 +02:00
Petr Štetiar
2b074654b0 ath79: make target source-only
In order to prevent build of images for this release as ath79 is going
to deprecate ar71xx in the next release.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-07-29 17:47:29 +02:00
Koen Vandeputte
1172d809f2 ar71xx: fix Mikrotik board detection
Fix a typo in the machine type being extracted from /proc/cpuinfo
which causes all Mikrotik board to be undetected properly.

This lead to sysupgrade issues and probably some others too.

Fixes: 76c963bb01 ("ar71xx: base-files: fix board detect on new MikroTik devices")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-29 10:15:46 +02:00
Tomislav Požega
5ec609815e ar71xx: fix WLAN LED names for Archer C7
Update WLAN LED colour identifier for both interfaces on Archer C7

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
(cherry picked from commit 65762cdd22)
2019-07-28 23:27:39 +02:00
Tomislav Požega
be14b1feae ar71xx: fix system LED names on Archer C5/C7
Move system LED board definitions of Archer C5/C7 to reflect
actual system LED colour used

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
(cherry picked from commit a73934fc9a)
2019-07-28 23:25:24 +02:00
Tomislav Požega
c59e24ca30 ar71xx: Archer C7 v1 LED names and RFKILL fixes
All leds on these boards are green. v1 has RFKILL GPIO 23 for production
units (it had GPIO 13 only for test phase units, and these are rather
very rare to find). As for the previous attempt to fix this and revert
due to WDR boards have blue leds, it was wrong: WDR board does not use
common setup (false).

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
(cherry picked from commit c79c001b59)
2019-07-28 23:25:11 +02:00
Tomislav Požega
3c65433186 ar71xx: update qca-usb-quirks patch
Base address for USB0 has changed from 0x18116c94 on AR934X
to 0x18116d94 on QCA9558. CP Typo remained for years here...

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
(cherry picked from commit fd5aa19480)
2019-07-28 23:25:03 +02:00
Rafał Miłecki
8efccf76f8 mac80211: brcm: improve brcmfmac debugging of firmware crashes
This provides a complete console messages dump.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 6a7b201b6c)
2019-07-28 14:21:50 +02:00
Rafał Miłecki
d8c59fa699 mac80211: brcm: update brcmfmac 5.4 patches
Use commits from wireless-drivers-next.git.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 8e466fb7e3)
2019-07-28 14:17:48 +02:00
Biwen Li
e0f468864b tfa-layerscape: fix create_pbl and byte_swap host build
- make create_pbl and byte_swap as host tools

- fix a bug that maybe use the cross compiler
to compile create_pbl and byte_swap:

	# -a option appends the image for Chassis 3 devices in case of non secure boot
	aarch64-openwrt-linux-musl-gcc -Wall -Werror -pedantic -std=c99 -O2
	 -DVERSION=v1.5(release):reboot-10604-ge9216b3336 -D_GNU_SOURCE -D_XOPEN_SOURCE=700
	 -c -o create_pbl.o create_pbl.c
	cc1: note: someone does not honour COPTS correctly, passed 0 times
	  LD      create_pbl
	/usr/bin/ld: create_pbl.o: Relocations in generic ELF (EM: 183)
	/usr/bin/ld: create_pbl.o: Relocations in generic ELF (EM: 183)
	/usr/bin/ld: create_pbl.o: Relocations in generic ELF (EM: 183)
	create_pbl.o: error adding symbols: File in wrong format
	collect2: error: ld returned 1 exit status
	Makefile:43: recipe for target create_pbl failed
	make[4]: *** [create_pbl] Error 1
	plat/nxp/tools/pbl_ch2.mk:45: recipe for target pbl failed
	make[3]: *** [pbl] Error 2

- add tfa- prefix to all tools in order to avoid future clashes with
  other toolnames

Signed-off-by: Biwen Li <biwen.li@nxp.com>
[added missing HOST_CFLAGS, added tfa- prefix to the tools]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 83d5ca2186)
2019-07-27 07:14:09 +02:00
Petr Štetiar
94e9084e1e tfa-layerscape: fix fiptool host build
fiptool is a host tool, used in a firmware generation pipeline, but it's
not treated as such, leading to the build breakage on the hosts which
don't have {Open,Libre}SSL dev package installed:

 In file included from fiptool.h:16:0,
                 from fiptool.c:19:
		 fiptool_platform.h:18:27: fatal error: openssl/sha.h:
		 No such file or directory
		  #  include <openssl/sha.h>

So this patch promotes fiptool into the host tool with proper host
include and library paths under STAGING_DIR.

Ref: https://github.com/openwrt/openwrt/pull/2267
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit b8249cef9f)
2019-07-27 07:13:59 +02:00
Jo-Philipp Wich
0a64b70e4e openwrt-keyring: update to Git HEAD
8080ef3 usign: add 19.07 release build pubkey
e24fe0d usign: use distro agnostic comments
251ded7 usign: fix filename of Stijn's usign key
14f0efc gpg: update snapshots public signing key
14f845b gpg: replace my public GPG key
4f735b8 gpg: add OpenWrt 19.07 signing key
228f8da gpg: add OpenWrt 18.06 v2 signing key
36057d9 gpg: update LEDE 17.01 public signing key
f2989ab Add my public GPG and usign key

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
(cherry picked from commit e9216b3336)
2019-07-25 19:40:57 +02:00
Petr Štetiar
5100629e32 urngd: move project to git.openwrt.org
Let's move project to a proper place.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit bec8fb1ee7)
2019-07-22 09:53:01 +02:00
Petr Štetiar
a624821474 build: add urandom-seed and urngd to default packages set
urandom-seed content was split from base-files into separate package so
in order to preserve the current functionality and to provide some
fallback mechanism in case jent-rng initialization fails in urngd we
need to add it back.

urngd is OpenWrt's micro non-physical true random number generator based
on timing jitter.

Tested-by: Lucian Cristian <lucian.cristian@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit f5387b754f)
2019-07-22 09:53:01 +02:00
Petr Štetiar
f573d3de11 base-files: move urandom seed bits into separate package
So it's possible to install or remove it as needed.

Tested-by: Lucian Cristian <lucian.cristian@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 27bfde9c9f)
2019-07-22 09:53:01 +02:00
Petr Štetiar
81c5a5c4b3 ubox: move getrandom into separate getrandom package
So it's possible to install or remove it as needed.

Tested-by: Lucian Cristian <lucian.cristian@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 9b4de712ca)
2019-07-22 09:53:01 +02:00
Petr Štetiar
5082c1b204 urngd: add micro non-physical true RNG based on timing jitter
μrngd is OpenWrt's micro non-physical true random number generator based
on timing jitter.

Using the Jitter RNG core, the rngd provides an entropy source that
feeds into the Linux /dev/random device if its entropy runs low. It
updates the /dev/random entropy estimator such that the newly provided
entropy unblocks /dev/random.

The seeding of /dev/random also ensures that /dev/urandom benefits from
entropy. Especially during boot time, when the entropy of Linux is low,
the Jitter RNGd provides a source of sufficient entropy.

Acked-by: Jo-Philip Wich <jow@mein.io>
Tested-by: Lucian Cristian <lucian.cristian@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 714bd89fce)
2019-07-22 09:53:01 +02:00
Rafał Miłecki
bc0c0a5564 mac80211: brcm: backport first set of 5.4 brcmfmac changes
This doesn't include 9ff8614a3dbe ("brcmfmac: use separate Kconfig file
for brcmfmac") due to a few conflicts with backports changes.

An important change is:
[PATCH 2/7] brcmfmac: change the order of things in brcmf_detach()
which fixes a rmmod crash in the brcmf_txfinalize().

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit db8e08a5a4)
2019-07-21 16:24:41 +02:00
David Bauer
abe137ff5e ramips: add support for ASUS RT-AC57U
SoC:   MediaTek MT7621AT
RAM:   128M (Winbond W631GG6KB-15)
FLASH: 16MB (Spansion S25FL128SA)
WiFi:  MediaTek MT7603EN bgn 2SS
WiFi:  MediaTek MT7612EN nac 2SS
BTN:   Reset - WPS
LED:    - Power
        - LAN {1-4}
        - WAN
        - WiFi 2.4 GHz
        - WiFi 5 GHz
        - USB
UART:  UART is present next to the Power LED.
       TX - RX - GND - 3V3 / 57600-8N1
       3V3 is the nearest one to the Power LED.

Installation
------------
Via TFTP:
1. Set your computers IP-Address to 192.168.1.75.
2. Power up the Router with the Reset button pressed.
3. Release the Reset button after 5 seconds.
4. Upload OpenWRT sysupgrade image via TFTP:
 > tftp -4 -v -m binary 192.168.1.1 -c put <IMAGE>

Via SSH:
Note: User/password for SSH is identical with the one used in the
Web-interface.
1. Complete the initial setup wizard.
2. Activate SSH under "Administration" -> "System".
3. Transfer the OpenWrt sysupgrade image via scp:
 > scp owrt.bin admin@192.168.1.1:/tmp
4. Connect via SSH to the router.
 > ssh admin@192.168.1.1
5. Write the OpenWrt image to flash.
 > mtd-write -i /tmp/owrt.bin -d linux
6. Reboot the router
 > reboot

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 14e0e4f138)
2019-07-21 13:10:12 +02:00
David Bauer
5cd9b50d69 ath79: add support for devolo WiFi pro 1750x
Hardware
--------
CPU:   Qualcomm Atheros QCA9558
RAM:   128M DDR2
FLASH: 16MiB
ETH:   1x Atheros AR8035 (PoE in)
WiFi2: QCA9558 3T3R
WiFi5: QCA9880 3T3R
BTN:   1x Reset
LED:   1x LED Power (non-controllable)
       1x LED Status (internal)
       1x LED LAN (controlled by PHY)
       1x LED WLAN
BEEP:  1x GPIO attached piezo beeper
UART:  3.3V GND TX RX (115200-N-8) (3.3V is square pad)
       Header is located next to external-LED header.

Installation
------------
Make sure you set a password for the root user as prompted on first
setup!

1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password the one set in the web interface.

2. Install OpenWRT with

> sysupgrade -n -F /tmp/<openwrt-image-name>

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit cb3cd52694)
2019-07-21 13:09:45 +02:00
Etienne Champetier
76a4c93f9d ar71xx: enable SGMII fixup on Mikrotik wAP AC
fixes intermittent loss of connectivity on 1Gbit port, with log message:
> 803x_aneg_done: SGMII link is not ok

Thanks to David Bauer for pointing me in the right direction.
I just had to figure out the right bus_id, which you find in this log:
> ag71xx ag71xx.1: connected to PHY at gpio-1:00 [uid=004dd074,
  driver=Atheros 8031 ethernet]

Fixes FS#2236

Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
[Wrapped commit message - Fixed whitespace erors]
Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 2a7519e29d)
2019-07-21 13:09:31 +02:00
Petr Štetiar
4022035aaf mt7620: disable image generation for Netgear EX2700
Image generation is currently failing on builbots due to the following
error:

 WARNING: Image file [...] mt7620-ex2700-squashfs-factory.bin is too big

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-07-20 23:40:20 +02:00
Alberto Bursi
299faa7ab7 x86: add modern network modules to Generic target
Many Atom-based embedded/industrial x86 boards can't run 64bit operating
systems due to either processor or board firmware limitations, but they
have modern interfaces (PCIe) or have modern Intel gigabit controllers
onboard.  With the current default package selection for x86 Generic
target their network won't work.

Add the modern gigabit network modules needed or most likely going to be
used as add-in cards, similar to what is the list on x86_64 target.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
[fixed whitespace issue]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit bb27cde257)
2019-07-20 22:58:08 +02:00
Petr Štetiar
2938d6530a ath25: disable image generation for ubnt2 and ubnt5 devices
Image generations is currently failing on builbots due to the following
errors:

 mkfwimage -B XS2 -v XS2 [...] ath25-ubnt2-squashfs-sysupgrade.bin
 ERROR: Failed creating firmware layout description - error code: -2

 mkfwimage -B XS5 -v XS5 [...] ath25-ubnt5-squashfs-sysupgrade.bin
 ERROR: Failed creating firmware layout description - error code: -2

That cryptic -2 error simply means, that kernel+rootfs doesn't fit into
the firmware partition.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-07-20 08:57:23 +02:00
David Bauer
6d59f4eeb4 gpio-button-hotplug: unify polled and interrupt code
This patch unifies the polled and interrupt-driven gpio_keys code
paths as well implements consistent handling of the debounce
interval set for the GPIO buttons and switches.

Hotplug events will only be fired if

1. The input changes its state and remains stable for the duration
   of the debounce interval (default is 5 ms).

2. In the initial stable (no state-change for duration of the
   debounce interval) state once the driver module gets loaded.

   Switch type inputs will always report their stable state.
   Unpressed buttons will not trigger an event for the initial
   stable state. Whereas pressed buttons will trigger an event.
   This is consistent with upstream's gpio-key driver that uses
   the input subsystem (and dont use autorepeat).

Prior to this patch, this was handled inconsistently for interrupt-based
an polled gpio-keys. Hence this patch unifies the shared logic into the
gpio_keys_handle_button() function and modify both implementations to
handle the initial state properly.

The changes described in 2. ) . can have an impact on the
failsafe trigger. Up until now, the script checked for button
state changes. On the down side, this allowed to trigger the
failsafe by releasing a held button at the right time. On the
plus side, the button's polarity setting didn't matter.

Now, the failsafe will only engage when a button was pressed
at the right moment (same as before), but now it can
theoretically also trigger when the button was pressed the
whole time the kernel booted and well into the fast-blinking
preinit phase. However, the chances that this can happen are
really small. This is because the gpio-button module is usually
up and ready even before the preinit state is entered. So, the
initial pressed button event gets lost and most devices behave
as before.

Bisectors: If this patch causes a device to permanently go into
failsafe or experience weird behavior due to inputs, please
check the following:
 - the GPIO polarity setting for the button
 - the software-debounce value

Run-tested for 'gpio-keys' and 'gpio-keys-polled' on

 - devolo WiFi pro 1200e
 - devolo WiFi pro 1750c
 - devolo WiFi pro 1750x
 - Netgear WNDR4700
 - Meraki MR24
 - RT-AC58U

Signed-off-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [further
cleanups, simplification and unification]
(cherry picked from commit 27f3f493de)
2019-07-19 17:04:30 +02:00
Petr Štetiar
074c8e296c gpio-button-hotplug: fix 4.19 build breakage on malta/be64
While testing 4.19 build on malta/be64, I've encountered following
error:

 gpio-button-hotplug/gpio-button-hotplug.c:529:18: error: implicit
 declaration of function 'gpio_to_desc'

which is caused by the missing include fixed by this patch.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
(cherry picked from commit dd6d82112a)
2019-07-19 17:00:30 +02:00
Adrian Schmutzler
96cc390d88 ath79: Use -v1 suffix for TP-Link WDR3600/4300
In ath79, identifiers tplink_tl-wdr3600 and tplink_tl-wdr4300 have
been used while most other TP-Link devices include the revision.

Although there actually is only one major revision of these
devices, they bear the revision on their bottom (v1.x). TP-Link
also refers to the devices as V1 on its web page.

This patch thus adds -v1 to both so it is more consistent
with other devices and with what you would expect from reading
the on-device sticker and the support pages.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-07-17 22:47:28 +02:00
Matt Merhar
c0a715f75e openvpn: fix handling of list options
This addresses an issue where the list option specified in
/etc/config/openvpn i.e. 'tls_cipher' would instead show up in the
generated openvpn-<name>.conf as 'ncp-ciphers'. For context,
'ncp_ciphers' appears after 'tls_cipher' in OPENVPN_LIST from
openvpn.options.

Also, the ordering of the options in the UCI config file is now
preserved when generating the OpenVPN config. The two currently
supported list options deal with cipher preferences.

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
(cherry picked from commit 1d4c4cbd20)
2019-07-17 20:11:41 +02:00
Petr Štetiar
0254087e92 ath79: ar9330: add missing watchdog node
It was reported in FS#2385, that Carambola2 doesn't currently have
working watchdog so fix it by adding watchdog node.

Ref: FS#2385
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 0893f28e19)
2019-07-17 16:49:54 +02:00
Deng Qingfang
7a4acfce6d iptables: update to 1.8.3
Update iptables to 1.8.3

ChangeLog:
  https://netfilter.org/projects/iptables/files/changes-iptables-1.8.3.txt

Removed upstream patches:
- 001-extensions_format-security_fixes_in_libip.patch
- 002-include_fix_build_with_kernel_headers_before_4_2.patch
- 003-ebtables-vlan-fix_userspace_kernel_headers_collision.patch

Altered patches:
- 200-configurable_builtin.patch
- 600-shared-libext.patch

No notable size changes

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [lipibtc ABI_VERSION fix]
(cherry picked from commit 299f6cb2da)
2019-07-17 13:13:11 +02:00
Rafał Miłecki
74b0b42fc6 libroxml: bump to the 3.0.2 version
* Fix for memory leak regression
* Support for (un)escaping

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 430d65c544)
2019-07-16 14:13:07 +02:00
Petr Štetiar
48662712b2 fstools: add direct dependencies on libblobmsg-json and libjson-c
The OpenWrt buildroot ABI version rebuild tracker does not handle
transient dependencies, therefore add all libraries linked by
block-mount and blockd as direct dependencies to the corresponding
binary package definition.

This ensures that block-mount and blockd is automatically rebuilt and
relinked if any of these libraries has its ABI_VERSION updated in the
future.

Fixes: FS#2373
[jow: similar fix for procd and 98.42% of commit message]
Signed-off-by: Jo-Philip Wich <jow@mein.io>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit cbae306815)
2019-07-15 00:48:13 +02:00
Yousong Zhou
1c3587cad9 busybox: strip off ALTERNATIVES spec
Now that busybox is a known alternatives provider by opkg, we remove the
ALTERNATIVES spec and add a note to make the implicit situation clear

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry-picked from commit 62be427067)
2019-07-12 09:17:34 +00:00
Yousong Zhou
8936bdb269 opkg: bump to version 2019-06-14
Opkg starting from this version special-cases busybox as alternatives
provider.  There should be no need to add entries to ALTERNATIVES of
busybox package

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry-picked from commit e51b513f75)
2019-07-12 09:17:16 +00:00
Koen Vandeputte
b947de25a6 ar71xx: fix nand init issues on some rb2011 devices
While flashing lots of RB2011 devices, I noticed that
some of them refused to boot properly, failing over the NAND parameters.

Checking in detail shows that some device seem to use another NAND flash
which only support standard 2048-byte pages, without 512-byte subpage support.

This commit disables usage of these small subpage completely.

Advantages:
- Both NAND's with(out) subpage support are working now
- The nand speed increases a bit (measured roughly 1%) in typical usecases

Disadvantages:
- The maximum storage capacity decreases by ~0.2%
as small changes can consume a full page (2048 bytes) now.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-12 09:39:33 +02:00
Koen Vandeputte
519cdf377a kernel: delete leftovers from unused kernel versions
Commit 000d400baa ("kernel: drop everything not on kernel version 4.14")
dropped everything not related to kernel 4.14, but forgot
to remove the parts in kernel-version.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-12 09:39:33 +02:00
Koen Vandeputte
f40f7b0fb5 kernel: bump 4.14 to 4.14.133
Refreshed all patches.

Fixes:

- CVE-2019-3900

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-12 09:39:33 +02:00
Hauke Mehrtens
87457ad81b mac80211: Do not build b43legacy on BRCM47xx mips74 subtarget
b43legacy needs ssb support and we do not compile the mips74 subtarget
of the brcm47xx target with SSB support. This causes a build failure in
the mac80211 package and only some of the kernel modules are being
created.

I am not aware of any device with a BRCM47xx mips74 CPU which uses a
b43legacy compatible device.

Fixes: FS#2334
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit e05310b9b8)
2019-07-12 01:27:16 +02:00
Fredrik Olofsson
955b393cf0 kernel: cherry pick patch removing __linux__ check
This is already included in newer upstream. Needed to build BPF programs
using the MIPS kernel include files.

Without this patch, clang fails with "#error Use a Linux compiler or
give up." in sgidefs.h when building BPF programs.

Signed-off-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
(cherry-picked from commit 7d96c301d6)
2019-07-10 18:05:32 +02:00
Adrian Schmutzler
65034359ee base-files: Fix path check in get_mac_binary
Logic was inverted when changing from string check to file check.
Fix it.

Fixes: 8592602d0a ("base-files: Really check path in get_mac_binary")
Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit 6ed3349308)
2019-07-09 23:08:10 +02:00
Koen Vandeputte
7f4510a251 kernel: bump 4.14 to 4.14.132
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-07-09 17:02:09 +02:00
Hauke Mehrtens
411e42cdc6 wolfssl: Fix package hash
Fixes: 3167a57f72 ("wolfssl: update to 3.15.7, fix Makefile")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-07-08 16:56:38 +02:00
Konstantin Demin
5ef6c20183 netsupport: move out mqprio from kmod-sched
Currently, there's unable to install "kmod-sched-mqprio" after
"kmod-sched" (or vice versa), because "sch_mqprio.ko" is
shipped in both packages.

Fixes: f83522fa63 ("linux: Add kmod-sched-mqprio")
Fixes: 6af639e0bf ("linux: Add kmod-sched-act-vlan")
Fixes: 72c7e2dc46 ("linux: Add kmod-sched-flower")
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
[Add cls_flower and act_vlan]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-07-08 16:28:27 +02:00
Eneas U de Queiroz
3167a57f72 wolfssl: update to 3.15.7, fix Makefile
This includes a fix for a medium-level potential cache attack with a
variant of Bleichenbacher’s attack.  Patches were refreshed.
Increased FP_MAX_BITS to allow 4096-bit RSA keys.
Fixed poly1305 build option, and some Makefile updates.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 2792daab5a)
2019-07-08 12:41:20 +01:00
Adrian Schmutzler
cd4fcd46f1 base-files: Really check path in get_mac_binary
Currently, path argument is only checked for being not empty.

This changes behavior to actually check whether path exists.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-07-05 22:30:22 +02:00
Pawel Dembicki
acd2497cfb mpc85xx: Use gzip compressed kernel on HiveAP-330
After commit 1e41de2f48 ("mpc85xx: convert TL-WDR4900 v1 to simpleImage")
XZ compression of zImage was enabled. This change exposed a problem with
the HiveAP-330 images, which was fixed by foregoing the compression on
the kernel altogether with commit 98089bb8ba
("mpc85xx: Use uncompressed kernel on the HiveAP-330").

This patch adds back the gzip compression of the kernel image by
utilizing the generic OpenWRT uImage method instead of relying on
the PowerPC bootwrapper script that did it previously.

Compile-tested: p1020/hiveap-330

Tested-by: Chris Blake <chrisrblake93@gmail.com> [run-tested]
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[filled in even more text]
2019-07-05 22:29:27 +02:00
Mathias Kresin
1b99051399 lantiq: enable STP where referenced
While moving common used parts to dtsi files, the was disabled by
default but not enabled for all boards using the STP.

Fixes: f519fea4c6 ("lantiq: kernel 4.14: cleanup dts files")

Reported-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2019-07-03 11:17:29 +02:00
W. Michael Petullo
cb9db2a0c3 ar71xx: fix ath79/rb4xx IRQ initialization on kernel 4.14
Apply the same approach as in commit 3b53d6fdbc ("ar71xx: fix pci irq
init on kernel 4.14") to fix IRQ initialization for ath79-based chipsets
on rb4xx.

Ref: PR#2182
Acked-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: W. Michael Petullo <mike@flyn.org>
[commit ref fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 8c7d6c47a7)
2019-07-03 07:47:38 +02:00
Karel Kočí
4a7a8d93fa fstools: block-mount: fix restart of fstab service
Restarting service causes file-systems to be unmounted without being
mounted back. When this service was obsoleted it should have been
implemented in a way that all actions are ignored. Up to this commit
default handler was called when restart was requested. This default
handler just simply calls stop and start. That means that stop called
unmount but start just printed that this service is obsoleted.

This instead implements restart that just prints same message like start
does. It just calls start in reality. This makes restart unavailable for
call.

Signed-off-by: Karel Kočí <karel.koci@nic.cz>
(cherry picked from commit 3ead9e7b74)
2019-06-28 22:03:44 +02:00
Brett Mastbergen
34d3eaff4a mvebu: Fix platform.sh for non-generic espressobin versions
When the non-generic espressobin targets were added these board checks
were not updated.   One side effect of this is that config is not saved
during an upgrade of -emmc,-v7, or -v7-emmc devices.

Signed-off-by: Brett Mastbergen <bmastbergen@untangle.com>
(cherry picked from commit 95c1dc5e86)
2019-06-28 21:53:05 +02:00
Vladimir Vid
6c9a744588 mvebu: fix regression for non-generic ESPRESSObin versions
When targets for multiple ESPRESSObin devices were added, not all
files were updated which means any ESPRESSObin version beside generic
won't have proper networking, sysupgrade and uboot-env. This patch
fixes the issue.

* fixup network detection
* fixup uboot-env
* fixup platform.sh for sysupgrade

Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
(cherry picked from commit bc47285cb3)
2019-06-28 21:52:57 +02:00
Vladimir Vid
886f524c6b mvebu: image: fix generic-arm64.bootscript mmc selection
Not all versions of ESPRESSObin require SD card, but can
be booted from the internal emmc flash (mmc dev 1) instead.
Add a simple check in the bootscript to see which mmc device
is detected and boot from it using mmcdev variable.

Tested-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
(cherry picked from commit 008b41b9b0)
2019-06-28 21:52:21 +02:00
Bjørn Mork
9deef062a4 base-files: use OPENWRT prefix for os-release variables
Just stumbled across this LEDE legacy, without finding any real reason
to keep it.  There is a single LEDE_DEVICE_MANUFACTURER_URL dependency
in the luci feed repo which needs to be syncronized.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
[re-added missing commit message]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
(cherry picked from commit 8a34a54b6a)
2019-06-27 17:17:24 +02:00
Chuanhong Guo
a353f2ee7f ramips: mt7621: add IRQ for GPIO node
This makes interrupt-based gpio-keys working.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
(cherry picked from commit 110daa16e4)
2019-06-27 17:17:23 +02:00
Koen Vandeputte
096a67796a uqmi: bump to latest git HEAD
1965c7139374 uqmi: add explicit check for message type when expecting a response
01944dd7089b uqmi_add_command: fixed command argument assignment

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 47986dc6ea1d643cd348501da09cd2e3ee2f9ee1)
2019-06-27 14:17:48 +02:00
Koen Vandeputte
1792df73c4 kernel: bump 4.14 to 4.14.131
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-27 14:17:48 +02:00
Yangbo Lu
94a1999b4f layerscape: drop pause frame support for aquantia phy
An aquantia phy patch which dropped pause frame support was
missing when integrated LSDK-19.03 kernel patches into OpenWrt.
Without this patch, LS1043A 10G port would not work. So apply it.

Patch link
https://source.codeaurora.org/external/qoriq/qoriq-components/
linux/commit/?h=linux-4.14&id=66346b115818365cfaf99d292871b19f0a1d2850

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-26 07:27:38 +02:00
Koen Vandeputte
eee336ee4a kernel: bump 4.14 to 4.14.130
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-25 16:48:50 +02:00
Christian Lamparter
dbe5730bf9 apm821xx: fix bogus key-presses on boot
"There are often transient line events when
the system is powered up and initialized and it
is often necessary for the gpio_chip driver to
clear any interrupt flags in hardware before
setting up the gpio chip, especially the
irqchip portions of it."
<http://lists.infradead.org/pipermail/openwrt-devel/2019-June/017630.html>

This patch adds a fix for the APM821XX's interrupt
controller to clear any bogus pending toggled
interrupts that happens on various APM821XX boards
on boot.

The patch also changes the debouce-interval from the
default 5ms debounce interval to 60ms all around.
The default setting caused on occasions that the button
state became stuck in a pressed state, even though the
button was released.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-24 20:30:09 +02:00
Chris Blake
43b8e5b120 mpc85xx: Use uncompressed kernel on the HiveAP-330
It seems that newer builds of OpenWRT have a gzip kernel
larger than 2MB~, which for some reason fails to boot on this board.

However, we have 8MB of kernel space and currently the uncompressed
kernel is 6.5MB~, so we have some space to grow until a better
solution is worked out.

Before:
 ## Booting kernel from Legacy Image at ee840000 ...
  Image Name:   Linux-4.19.53
  Created:      2019-06-22  11:17:48 UTC
  Image Type:   PowerPC Linux Kernel Image (gzip compressed)
  Data Size:    2315724 Bytes =  2.2 MB
  Load Address: 00000000
  Entry Point:  00000000
  Verifying Checksum ... OK
 ## Loading init Ramdisk from Legacy Image at 02000000 ...
  Image Name:   OpenWrt fake ramdisk
  Created:      2019-06-22  11:17:48 UTC
  Image Type:   PowerPC Linux RAMDisk Image (uncompressed)
  Data Size:    0 Bytes =  0 kB
  Load Address: 00000000
  Entry Point:  00000000
  Verifying Checksum ... OK
 ## Flattened Device Tree blob at ec000000
  Booting using the fdt blob at 0xec000000
  Uncompressing Kernel Image ... Error: Bad gzipped data
  GUNZIP: uncompress, out-of-mem or overwrite error -
	must RESET board to recover
  Loading Ramdisk to 10000000, end 10000000 ... OK
  Loading Device Tree to 00ffa000, end 00fffc78 ... OK
  ft_fixup_l2cache: FDT_ERR_NOTFOUND

After:
 ## Booting kernel from Legacy Image at ee840000 ...
  Image Name:   POWERPC OpenWrt Linux-4.19.53
  Created:      2019-06-22  11:17:48 UTC
  Image Type:   PowerPC Linux Kernel Image (uncompressed)
  Data Size:    6724584 Bytes =  6.4 MB
  Load Address: 00000000
  Entry Point:  00000000
  Verifying Checksum ... OK
 ## Loading init Ramdisk from Legacy Image at 02000000 ...
  Image Name:   OpenWrt fake ramdisk
  Created:      2019-06-22  11:17:48 UTC
  Image Type:   PowerPC Linux RAMDisk Image (uncompressed)
  Data Size:    0 Bytes =  0 kB
  Load Address: 00000000
  Entry Point:  00000000
  Verifying Checksum ... OK
 ## Flattened Device Tree blob at ec000000
  Booting using the fdt blob at 0xec000000
  Loading Kernel Image ... OK
  OK
  Loading Ramdisk to 10000000, end 10000000 ... OK
  Loading Device Tree to 00ffa000, end 00fffc78 ... OK

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [75 cpl limit]
2019-06-24 20:28:33 +02:00
Jeff Kletsky
a471d8c595 ipq40xx: Linksys: sysupgrade: Ensure OEM volumes are removed
When OEM volumes are present in the [alt_]firmware partition,
sysupgrade will write a new kernel, but will fail to write
the root file system. The next boot will hang indefinitely

    Waiting for root device /dev/ubiblock0_0...

Modified ipq40xx/base-files/lib/upgrade/linksys.sh
to remove both `squashfs` and `ubifs` if found
on the target firmware partition's UBI device.

Run-tested-on: Linksys EA8300

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[applied some shellcheck suggestions as well]
2019-06-24 20:28:33 +02:00
Koen Vandeputte
b8fc9c1580 kernel: bump 4.14 to 4.14.129
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-24 16:40:01 +02:00
Stefan Lippers-Hollmann
69b988c994 mac80211: update WDS/4addr fix to the version accepted upstream
This updates "{nl,mac}80211: allow 4addr AP operation on crypto
controlled devices" to the version (v3), which was accepted into
upstream mac80211.git and which is tagged for -stable backporting
(v4.18+).

https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211.git/commit/?id=33d915d9e8ce811d8958915ccd18d71a66c7c495

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[format-patch]
2019-06-22 13:19:38 +02:00
Kevin Darbyshire-Bryant
2cb8ae2079 iproute2: update ctinfo support
Follow upstream changes - header file changes only
no functional or executable changes, hence no package bump
required

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit a8f0c02f80)
2019-06-20 21:18:46 +01:00
Kevin Darbyshire-Bryant
7888adb0aa kernel: update act_ctinfo
Follow upstream changes - header file changes
no executable  difference at all

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 5273fb6b21)
2019-06-20 21:18:19 +01:00
Adrian Schmutzler
136c8a889f ath79: Add SUPPORTED_DEVICES for Archer C7 v1/v2
The identifier for both devices is "archer-c7" on ar71xx, set here:
https://github.com/openwrt/openwrt/blob/master/target/linux/ar71xx/base-files/lib/ar71xx.sh#L348
https://github.com/openwrt/openwrt/blob/master/target/linux/ar71xx/base-files/lib/ar71xx.sh#L511

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-20 20:09:32 +02:00
Robinson Wu
4e925d0b82 base-files: fix uci led oneshot/timer trigger
This patch adds a missing type property which prevented
the creation of oneshot and timer led triggers when they
are specified in the /etc/board.d/01_leds files.

i.e.:

ucidef_set_led_timer "system" "system" "zhuotk:green:system" "1000" "1000"

Fixes: b06a286a48 ("base-files: cleanup led functions in uci-defaults.sh")
Signed-off-by: Robinson Wu <wurobinson@qq.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-20 20:09:21 +02:00
Koen Vandeputte
9ed98198cb kernel: bump 4.14 to 4.14.128
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-20 15:50:00 +02:00
Henryk Heisig
76c963bb01 ar71xx: base-files: fix board detect on new MikroTik devices
Move all MikroTik devices to new function to increase script execution
speed.

Machine name in new version of MikroTik RouterBOARD devices add "RB"
before model name:

 Old machine name: MikroTik RouterBOARD 951Ui-2nD
 New:              MikroTik RouterBOARD RB951Ui-2nD

So this patch should fix it for all currently supported MikroTik boards.

Tested-by: Cezary Jackiewicz <cezary@eko.one.pl> [wAP R-2nD]
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
[rebased,commit message facelift,script fixes]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[spotted missing 922UAGS-5HPacD]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-19 08:44:28 +02:00
Koen Vandeputte
17fc5375f0 kernel: bump 4.14 to 4.14.127
Refreshed all patches.

Fixes:

- CVE-2019-11479
- CVE-2019-11478
- CVE-2019-11477

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-18 14:49:13 +02:00
Koen Vandeputte
c26420b914 kernel: bump 4.14 to 4.14.126
Refreshed all patches.

Altered patches:
- 816-pcie-support-layerscape.patch

This patch also restores the initial implementation
of the ath79 perfcount IRQ issue. (78ee6b1a40)
It was wrongfully backported upstream initially and got reverted now.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-06-18 11:41:38 +02:00
George Amanakis
1d1dca45ea mvebu: fixes commit 4089df4f4b
err_free_stats has been deprecated. Replace with err_netdev.

Compile-tested on: mvebu
Runtime-tested on: mvebu

Fixes: 4089df4f4b ("kernel: bump 4.14 to 4.14.125 (FS#2305 FS#2297)")
Signed-off-by: George Amanakis <gamanakis@gmail.com>
[altered hashes]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
(cherry picked from commit 1e3800df18)
2019-06-17 10:45:37 +02:00
Rafał Miłecki
4fce09c1ec kernel: backport 4.18 patch adding DMI_PRODUCT_SKU
It's needed for applying some hardware quirks. This fixes:
drivers/net/wireless/broadcom/brcm80211/brcmfmac/dmi.c:60:20: error: 'DMI_PRODUCT_SKU' undeclared here (not in a function); did you mean 'DMI_PRODUCT_UUID'?
    DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "T8"),

Fixes: c52054e568 ("mac80211: brcm: backport remaining brcmfmac 5.2 patches")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 4d11c4c378)
2019-06-17 06:57:09 +02:00
Rafał Miłecki
c52054e568 mac80211: brcm: backport remaining brcmfmac 5.2 patches
This improves FullMAC firmware compatibility, adds logging in case of
firmware crash and *may* fix "Invalid packet id" errors.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 8888cb725d)
2019-06-16 22:05:54 +02:00
Christian Lamparter
158a716215 mac80211: refresh patches
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-15 19:52:03 +02:00
Christian Lamparter
78049d448c iwinfo: update PKG_MIRROR_HASH
This patch updates the PKG_MIRROR_HASH to match the one
of the current version.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-15 19:10:28 +02:00
Sven Eckelmann
5913543190 ath10k-ct: adjust tx power reduction for US regulatory domain
FCC allows maximum antenna gain of 6 dBi. 15.247(b)(4):

> (4) The conducted output power limit
> specified in paragraph (b) of this section
> is based on the use of antennas
> with directional gains that do not exceed
> 6 dBi. Except as shown in paragraph
> (c) of this section, if transmitting
> antennas of directional gain greater
> than 6 dBi are used, the conducted
> output power from the intentional radiator
> shall be reduced below the stated
> values in paragraphs (b)(1), (b)(2),
> and (b)(3) of this section, as appropriate,
> by the amount in dB that the
> directional gain of the antenna exceeds
> 6 dBi.

https://www.gpo.gov/fdsys/pkg/CFR-2013-title47-vol1/pdf/CFR-2013-title47-vol1-sec15-247.pdf

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 00:40:25 +02:00
Sven Eckelmann
f1d4da3029 ath10k-ct: fix max antenna gain unit
Most of the txpower for the ath10k firmware is stored as twicepower (0.5 dB
steps). This isn't the case for max_antenna_gain - which is still expected
by the firmware as dB.

The firmware is converting it from dB to the internal (twicepower)
representation when it calculates the limits of a channel. This can be seen
in tpc_stats when configuring "12" as max_antenna_gain. Instead of the
expected 12 (6 dB), the tpc_stats shows 24 (12 dB).

Tested on QCA9888 and IPQ4019 with firmware 10.4-3.5.3-00057.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 00:40:25 +02:00
Sven Eckelmann
06222ce73e mac80211: ath10k: adjust tx power reduction for US regulatory domain
FCC allows maximum antenna gain of 6 dBi. 15.247(b)(4):

> (4) The conducted output power limit
> specified in paragraph (b) of this section
> is based on the use of antennas
> with directional gains that do not exceed
> 6 dBi. Except as shown in paragraph
> (c) of this section, if transmitting
> antennas of directional gain greater
> than 6 dBi are used, the conducted
> output power from the intentional radiator
> shall be reduced below the stated
> values in paragraphs (b)(1), (b)(2),
> and (b)(3) of this section, as appropriate,
> by the amount in dB that the
> directional gain of the antenna exceeds
> 6 dBi.

https://www.gpo.gov/fdsys/pkg/CFR-2013-title47-vol1/pdf/CFR-2013-title47-vol1-sec15-247.pdf

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 00:40:25 +02:00
Sven Eckelmann
af76c19d53 mac80211: ath10k: fix max antenna gain unit
Most of the txpower for the ath10k firmware is stored as twicepower (0.5 dB
steps). This isn't the case for max_antenna_gain - which is still expected
by the firmware as dB.

The firmware is converting it from dB to the internal (twicepower)
representation when it calculates the limits of a channel. This can be seen
in tpc_stats when configuring "12" as max_antenna_gain. Instead of the
expected 12 (6 dB), the tpc_stats shows 24 (12 dB).

Tested on QCA9888 and IPQ4019 with firmware 10.4-3.5.3-00057.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 00:40:25 +02:00
Sven Eckelmann
918f4c8887 mac80211: ath9k: Increase allowed antenna gain to 6 dBi
FCC allows maximum antenna gain of 6 dBi. 15.247(b)(4):

> (4) The conducted output power limit
> specified in paragraph (b) of this section
> is based on the use of antennas
> with directional gains that do not exceed
> 6 dBi. Except as shown in paragraph
> (c) of this section, if transmitting
> antennas of directional gain greater
> than 6 dBi are used, the conducted
> output power from the intentional radiator
> shall be reduced below the stated
> values in paragraphs (b)(1), (b)(2),
> and (b)(3) of this section, as appropriate,
> by the amount in dB that the
> directional gain of the antenna exceeds
> 6 dBi.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-06-15 00:40:25 +02:00
Mantas Pucka
8386f975a9 kernel: mt29f_spinand: fix memory leak during page program
Memory is allocated with devm_kzalloc() on every page program
and leaks until device is closed (which never happens).

Convert to kzalloc() and handle error paths manually.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2019-06-15 00:27:08 +02:00
Koen Vandeputte
f96fbf0328 iwinfo: update to latest git HEAD
1372f47eff34 iwinfo: Add Mikrotik R11e-5HnDr2

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-12 16:05:42 +02:00
Koen Vandeputte
4089df4f4b kernel: bump 4.14 to 4.14.125 (FS#2305 FS#2297)
Refreshed all patches.

This bump contains upstream commits which seem to avoid (not properly fix)
the errors as seen in FS#2305 and FS#2297

Altered patches:
- 403-net-mvneta-convert-to-phylink.patch
- 410-sfp-hack-allow-marvell-10G-phy-support-to-use-SFP.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-12 15:25:41 +02:00
Daniel Golle
000d400baa kernel: drop everything not on kernel version 4.14
* Remove testing patches for kernel version 4.19
 * remove targets ar7, ixp4xx, orion
Those targets are still on kernel 4.9, patches for 4.14 were not ready
in time. They may be readded once people prepare and test patches for
kernel 4.14.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-06-12 01:18:52 +02:00
Yousong Zhou
c4e727f01c dnsmasq: move feature detection inside a shell func
Resolves openwrt/packages#9219

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
(cherry picked from commit 04b45d3a31)
2019-06-11 15:07:26 +02:00
Alexander Couzens
b344ca9ca6 OpenWrt v19.07: set branch defaults
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-06-11 01:53:08 +02:00
Alexander Couzens
c53f62b111 version.mk: use https:// instead of http://
Only the repo should not use https. Otherwise the build would need
a wget/uclient_fetch with tls support.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-06-11 01:49:44 +02:00
Alexander Couzens
79948e9d61 replace links towards lede-project.org with openwrt.org
Modify VERSION_SUPPORT_URL VERSION_REPO
Replace BUGS variable in toolchain/gcc/common.mk

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-06-11 01:46:53 +02:00
Karl Pálsson
3b36aae9d5 toolchain: replace LEDE in help text
Use generic wording.

Signed-off-by: Karl Pálsson <karlp@etactica.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [fixed a -> á]
2019-06-10 11:31:52 +02:00
Kristian Evensen
86b6d31e6e ramips: Remove redundant LED-cases
01_leds has several redundant LED-cases. This commit cleans
up the file by merging these cases into shared cases.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2019-06-10 11:25:47 +02:00
Adrian Schmutzler
fde0abf267 ath79: Add support for TP-Link Archer C25 v1
The TP-Link Archer C25 is a low-cost dual-band router.

Specification:

- CPU: Atheros QCA9561 775 MHz
- RAM: 64 MB
- Flash: 8 MB
- Wifi: 3x3 2.4 GHz (integrated), 1x1 5 GHz QCA9887
- NET: 5x 10/100 Mbps Ethernet

Some LEDs are controlled by an additional 74HC595 chip, but not
all of them as e.g. for the C59.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-10 11:25:47 +02:00
Adrian Schmutzler
409940cef4 ath79: Reorder some TP-Link Archer devices in 01_leds
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-10 11:25:47 +02:00
Deng Qingfang
b47cf6d539 ramips: mt7620: select kmod-rt2800-pci driver for RT5592
ASUS RP-N53 and Buffalo WHR-600D use RT5592 for 5GHz wireless
After commit 367813b9b1 the driver for RT5592 (rt2800pci)
is not selected by default anymore, which broke their 5GHz wireless
Add it back to device packages

Fixes: 367813b9b1 ("ramips: mt7620: fix dependencies")

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-06-10 11:25:47 +02:00
David Santamaría Rogado
e19506f206 ath79: migrate Archer C7 5GHz radio device paths
When upgrading a TP-Link Archer C7 v2 from ar71xx to ath79,
the 5ghz radio stops working because the device path changed.

Some people subtitute the unsupported QCA9880v1 in the Archer v1
with supported QCA9880v2 radio. Since the stock radio doesn't
work, so it's safe to apply the change also for the Archer v1
images as well.

Also this patch renames the migration file and variables from
wmac to wifi.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[removed comment, added return 0 (not that it matters since uci is
clever, see 00-wmac-migration thread), reworded commit message]
2019-06-10 11:25:46 +02:00
Adrian Schmutzler
fcb920ffe7 ath79: Consistently label art partition with lower case
This patch harmonizes the label and alias for art partitions
across ath79. Since lower case seems to be more frequent, use that
consistently.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-10 11:25:41 +02:00
Adrian Schmutzler
4d807ad2d9 ath79: Read MAC addresses from flash in 11-ath10k-caldata
In commit c3a8518 eth0 and eth1 have been swapped for some devices,
but 11-ath10k-caldata has not been updated.
Instead of fixing this by swapping eth0/eth1, this patch will read
addresses from flash (as done for several devices already) so
adjustments due to eth order become obsolete.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-10 11:25:41 +02:00
Adrian Schmutzler
3d153323ab ath79: Consistently label info partition
The info/product-info partition, which frequently contains MAC
adresses, is typically assigned the 'info' alias in DTS, but
then labelled with 'info', 'product-info' or 'config'.

This leads to different aliases if used for setting MAC adresses
in DTS compared to when using e.g. mtd_get_mac_binary. Occationally,
also multiple switch-case entries are used just because of different
labelling.

This patch relabels those partitions in ath79 to consistently use
'info'.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-06-10 11:25:41 +02:00
Pawel Dembicki
c4fdd4979b mpc85xx: re-enable TL-WDR4900v1 images
This reverts commit 324e94f31b ("mpc85xx: disable bricking TL-WDR4900v1 images")

The previous commit fixes the TL-WDR4900v1. Enable the target again.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-10 11:21:35 +02:00
Christian Lamparter
1e41de2f48 mpc85xx: convert TL-WDR4900 v1 to simpleImage
Converts the TP-Link WDR4900 v1 to use the simpleImage in the
hopes of prolonging the life of the device. While at it,
the patch makes the fdt.bin an ARTIFACT and sets the KERNEL_SIZE
to 2684 KiB as a precaution since the stock u-boot is using a
fixed kernel size.

Note: Give the image some time, it will take much longer to
extract and boot.

[tested for 4.14/4.19]

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Co-authored-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-06-10 11:21:35 +02:00
André Valentin
452d88e8f7 config: add xfrm interface support scripts
This package adds scripts for xfrm interfaces support.
Example configuration via /etc/config/network:

config interface 'xfrm0'
        option proto 'xfrm'
        option mtu '1300'
        option zone 'VPN'
        option tunlink 'wan'
        option ifid 30

config interface 'xfrm0_static'
        option proto 'static'
        option ifname '@xfrm0'
        option ip6addr 'fe80::1/64'
        option ipaddr '10.0.0.1/30'

Now set in strongswan IPsec policy:
 	if_id_in = 30
	if_id_out = 30

Signed-off-by: André Valentin <avalentin@marcant.net>
2019-06-10 10:07:24 +02:00
Hans Dedecker
cc092a285a curl: update to 7.65.1
For changes in 7.65.1; see https://curl.haxx.se/changes.html#7_65_1

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-06-10 10:06:05 +02:00
André Valentin
ae3e232b11 netsupport: add xfrmi interface support
Add support for xfrm interfaces in kernel. XFRM interfaces are used by
the IPsec stack for tunneling.
XFRM interfaces are available since linux 4.19.

Signed-off-by: André Valentin <avalentin@marcant.net>
2019-06-09 21:48:22 +02:00
Petr Štetiar
0e1d07af1d kirkwood: image: fix unwanted 2nd inclusion of kernel
In commit d2e18dae28 ("kirkwood: cleanup image build code") the image
build code was refactored, setting KERNEL_IN_UBI=0 which doesn't work as
the KERNEL_IN_UBI needs to be unset in order to make it working as
intended, which leads to factory images with two kernels in them:

 binwalk --keep-going openwrt-kirkwood-cisco_on100-squashfs-factory.bin
 MD5 Checksum:  c33e3d1eb0cb632bf0a4dc287592eb70
 DECIMAL   	HEX       	DESCRIPTION
 -------------------------------------------------------------------------------
 0         	0x0       	uImage header [...] "ARM OpenWrt Linux-4.14.123"
 5769216   	0x580800  	uImage header [...] "ARM OpenWrt Linux-4.14.123"

Cc: Mathias Kresin <dev@kresin.me>
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=2285
Fixes: d2e18dae28 ("kirkwood: cleanup image build code")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-09 14:51:47 +02:00
Petr Štetiar
6c5bfaac84 gpio-button-hotplug: gpio-keys: fix always missing first event
Commit afc056d7dc ("gpio-button-hotplug: support interrupt
properties") changed the gpio-keys interrupt handling logic in a way,
that it always misses first event, which causes issues with rc.button
scripts, so this patch restores the previous behaviour.

Fixes: afc056d7dc ("gpio-button-hotplug: support interrupt properties")
Reported-by: Kristian Evensen <kristian.evensen@gmail.com>
Tested-by: Kuan-Yi Li <kyli.tw@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [drop state check]
2019-06-09 14:51:47 +02:00
Petr Štetiar
27d234a345 gpio-button-hotplug: fix wrong initial seen value
Currently the generated event contains wrong seen value, when the button
is pressed for the first time:

 rmmod gpio_button_hotplug; modprobe gpio_button_hotplug
 [ pressing the wps key immediately after modprobe ]
 gpio-keys: create event, name=wps, seen=1088, pressed=1

So this patch adds a check for this corner case and makes seen=0 if the
button is pressed for the first time.

Tested-by: Kuan-Yi Li <kyli.tw@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-09 14:51:47 +02:00
Petr Štetiar
33ccfe0e14 gpio-button-hotplug: use pr_debug and pr_err
pr_debug can be used with dynamic debugging.

Tested-by: Kuan-Yi Li <kyli.tw@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-09 14:51:47 +02:00
Yousong Zhou
0299a4b73e dnsmasq: skip options that are not compiled in
This is to make life easier for users with customized build of
dnsmasq-full variant.  Currently dnsmasq config generated by current
service script will be rejected by dnsmasq build lacking DHCP feature

 - Options like --dhcp-leasefile have default values.  Deleting them
   from uci config or setting them to empty value will make them take on
   default value in the end
 - Options like --dhcp-broadcast are output unconditionally

Tackle this by

 - Check availablility of features from output of "dnsmasq --version"
 - Make a list of options guarded by HAVE_xx macros in src/options.c of
   dnsmasq source code
 - Ignore these options in xappend()

Two things to note in this implementation

 - The option list is not exhaustive.  Supposedly only those options that
   may cause dnsmasq to reject with "unsupported option (check that
   dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" are taken
   into account here
 - This provides a way out but users' cooperation is still needed.  E.g.
   option dnssec needs to be turned off, otherwise the service script
   will try to add --conf-file pointing to dnssec specific anchor file
   which dnsmasq lacking dnssec support will reject

Resolves FS#2281

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-09 08:17:52 +00:00
Hans Dedecker
6b762dd75f netifd: xfrm tunnel support
8c6358b netifd: add xfrm tunnel interface support

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-06-08 21:51:37 +02:00
Konstantin Demin
10011f91c5 busybox: add ALTERNATIVES for brctl
Busybox brctl applet conflicts with the version from bridge-utils.
Fix this by using ALTERNATIVE support for brctl in busybox.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2019-06-08 13:51:40 +02:00
Deng Qingfang
0f4e65ec7b tools/ccache: update to 3.7.1
Update ccache to 3.7.1

Release notes:
https://ccache.dev/releasenotes.html#_ccache_3_7_1

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-06-08 09:59:25 +02:00
Chen Minqiang
de1431b589 kernel: re-add bridge allow reception on disabled port
The "bridge allow reception on disabled port" implementation
was broken after these commits:

08802d93e2 ("kernel: bump 4.19 to 4.19.37")
b765f4be40 ("kernel: bump 4.14 to 4.14.114")
456f486b53 ("kernel: bump 4.9 to 4.9.171")

This leads to issues when for example WDS is used, tied to a bridge:

[ 96.503771] wlan1: send auth to d4:5f:25:eb:09:82 (try 1/3)
[ 96.517956] wlan1: authenticated
[ 96.526209] wlan1: associate with d4:5f:25:eb:09:82 (try 1/3)
[ 97.086156] wlan1: associate with d4:5f:25:eb:09:82 (try 2/3)
[ 97.200919] wlan1: RX AssocResp from d4:5f:25:eb:09:82 (capab=0x11 status=0 aid=1)
[ 97.208706] wlan1: associated
[ 101.312913] wlan1: deauthenticated from d4:5f:25:eb:09:82 (Reason: 2=PREV_AUTH_NOT_VALID)

It seems upstream introduced a new patch, [1]
so we have to reimplement these patches properly:

target/linux/generic/pending-4.9/150-bridge_allow_receiption_on_disabled_port.patch
target/linux/generic/pending-4.14/150-bridge_allow_receiption_on_disabled_port.patch
target/linux/generic/pending-4.19/150-bridge_allow_receiption_on_disabled_port.patch

[1] https://lkml.org/lkml/2019/4/24/1228

Fixes: 08802d93e2 ("kernel: bump 4.19 to 4.19.37")
Fixes: b765f4be40 ("kernel: bump 4.14 to 4.14.114")
Fixes: 456f486b53 ("kernel: bump 4.9 to 4.9.171")
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
[updated commit message and title]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-07 18:22:20 +02:00
Kevin Darbyshire-Bryant
021a9b4cb9 iproute2: add tc action ctinfo support
Add the userspace control portion of the backported kernelspace
act_ctinfo.

ctinfo is a tc action restoring data stored in conntrack marks to
various fields.  At present it has two independent modes of operation,
restoration of DSCP into IPv4/v6 diffserv and restoration of conntrack
marks into packet skb marks.

It understands a number of parameters specific to this action in
additional to the usual action syntax.  Each operating mode is
independent of the other so all options are optional, however not
specifying at least one mode is a bit pointless.

Usage: ... ctinfo [dscp mask [statemask]] [cpmark [mask]] [zone ZONE]
		  [CONTROL] [index <INDEX>]

DSCP mode

dscp enables copying of a DSCP stored in the conntrack mark into the
ipv4/v6 diffserv field.  The mask is a 32bit field and specifies where
in the conntrack mark the DSCP value is located.  It must be 6
contiguous bits long. eg. 0xfc000000 would restore the DSCP from the
upper 6 bits of the conntrack mark.

The DSCP copying may be optionally controlled by a statemask.  The
statemask is a 32bit field, usually with a single bit set and must not
overlap the dscp mask.  The DSCP restore operation will only take place
if the corresponding bit/s in conntrack mark ANDed with the statemask
yield a non zero result.

eg. dscp 0xfc000000 0x01000000 would retrieve the DSCP from the top 6
bits, whilst using bit 25 as a flag to do so.  Bit 26 is unused in this
example.

CPMARK mode

cpmark enables copying of the conntrack mark to the packet skb mark.  In
this mode it is completely equivalent to the existing act_connmark
action.  Additional functionality is provided by the optional mask
parameter, whereby the stored conntrack mark is logically ANDed with the
cpmark mask before being stored into skb mark.  This allows shared usage
of the conntrack mark between applications.

eg. cpmark 0x00ffffff would restore only the lower 24 bits of the
conntrack mark, thus may be useful in the event that the upper 8 bits
are used by the DSCP function.

Usage: ... ctinfo [dscp mask [statemask]] [cpmark [mask]] [zone ZONE]
		  [CONTROL] [index <INDEX>]
where :
	dscp MASK is the bitmask to restore DSCP
	     STATEMASK is the bitmask to determine conditional restoring
	cpmark MASK mask applied to restored packet mark
	ZONE is the conntrack zone
	CONTROL := reclassify | pipe | drop | continue | ok |
		   goto chain <CHAIN_INDEX>

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-06-07 12:05:32 +01:00
Kevin Darbyshire-Bryant
b8a72dfd28 kernel: backport act_ctinfo
ctinfo is a new tc filter action module.  It is designed to restore
information contained in firewall conntrack marks to other packet fields
and is typically used on packet ingress paths.  At present it has two
independent sub-functions or operating modes, DSCP restoration mode &
skb mark restoration mode.

The DSCP restore mode:

This mode copies DSCP values that have been placed in the firewall
conntrack mark back into the IPv4/v6 diffserv fields of relevant
packets.

The DSCP restoration is intended for use and has been found useful for
restoring ingress classifications based on egress classifications across
links that bleach or otherwise change DSCP, typically home ISP Internet
links.  Restoring DSCP on ingress on the WAN link allows qdiscs such as
but by no means limited to CAKE to shape inbound packets according to
policies that are easier to set & mark on egress.

Ingress classification is traditionally a challenging task since
iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
lookups, hence are unable to see internal IPv4 addresses as used on the
typical home masquerading gateway.  Thus marking the connection in some
manner on egress for later restoration of classification on ingress is
easier to implement.

Parameters related to DSCP restore mode:

dscpmask - a 32 bit mask of 6 contiguous bits and indicate bits of the
conntrack mark field contain the DSCP value to be restored.

statemask - a 32 bit mask of (usually) 1 bit length, outside the area
specified by dscpmask.  This represents a conditional operation flag
whereby the DSCP is only restored if the flag is set.  This is useful to
implement a 'one shot' iptables based classification where the
'complicated' iptables rules are only run once to classify the
connection on initial (egress) packet and subsequent packets are all
marked/restored with the same DSCP.  A mask of zero disables the
conditional behaviour ie. the conntrack mark DSCP bits are always
restored to the ip diffserv field (assuming the conntrack entry is found
& the skb is an ipv4/ipv6 type)

e.g. dscpmask 0xfc000000 statemask 0x01000000

|----0xFC----conntrack mark----000000---|
| Bits 31-26 | bit 25 | bit24 |~~~ Bit 0|
| DSCP       | unused | flag  |unused   |
|-----------------------0x01---000000---|
      |                   |
      |                   |
      ---|             Conditional flag
         v             only restore if set
|-ip diffserv-|
| 6 bits      |
|-------------|

The skb mark restore mode (cpmark):

This mode copies the firewall conntrack mark to the skb's mark field.
It is completely the functional equivalent of the existing act_connmark
action with the additional feature of being able to apply a mask to the
restored value.

Parameters related to skb mark restore mode:

mask - a 32 bit mask applied to the firewall conntrack mark to mask out
bits unwanted for restoration.  This can be useful where the conntrack
mark is being used for different purposes by different applications.  If
not specified and by default the whole mark field is copied (i.e.
default mask of 0xffffffff)

e.g. mask 0x00ffffff to mask out the top 8 bits being used by the
aforementioned DSCP restore mode.

|----0x00----conntrack mark----ffffff---|
| Bits 31-24 |                          |
| DSCP & flag|      some value here     |
|---------------------------------------|
			|
			|
			v
|------------skb mark-------------------|
|            |                          |
|  zeroed    |                          |
|---------------------------------------|

Overall parameters:

zone - conntrack zone

control - action related control (reclassify | pipe | drop | continue |
ok | goto chain <CHAIN_INDEX>)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Reviewed-by: Toke Høiland-Jørgensen <toke@redhat.com>
Acked-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Make suitable adjustments for backporting to 4.14 & 4.19
and add to SCHED_MODULES_FILTER

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-06-06 15:41:07 +01:00
Biwen Li
5159d71983 layerscape: update patches-4.14 to LSDK 19.03
All patches of LSDK 19.03 were ported to Openwrt kernel.
We still used an all-in-one patch for each IP/feature for
OpenWrt.

Below are the changes this patch introduced.
- Updated original IP/feature patches to LSDK 19.03.
- Added new IP/feature patches for eTSEC/PTP/TMU.
- Squashed scattered patches into IP/feature patches.
- Updated config-4.14 correspondingly.
- Refreshed all patches.

More info about LSDK and the kernel:
- https://lsdk.github.io/components.html
- https://source.codeaurora.org/external/qoriq/qoriq-components/linux

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:09 +02:00
Biwen Li
639d127b83 layerscape: fix u-boot bootcmd
Current latest LSDK-19.03 u-boot had a bug that bootcmd
environment was always been reset when u-boot started up.
This was found on boards with spi NOR boot. Before the
proper fix-up is applied, we have to use a workaround
to hard code the bootcmd for OpenWrt booting for now.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:09 +02:00
Yangbo Lu
8468bf04d0 layerscape: drop ppa package
Drop ppa package since TF-A is used instead.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:09 +02:00
Biwen Li
c07d3302b3 layerscape: convert to use TF-A for firmware
This patch is to convert to use TF-A for firmware.
- Use un-swapped rcw since swapping will be done in TF-A.
- Use u-boot with TF-A defconfig.
- Rework memory map for TF-A introduction.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:09 +02:00
Biwen Li
17dcbe1b8e layerscape: add ARM Trusted Firmware package
Add TF-A packages for Layerscape to implement trusted firmware.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
f7f1f39c34 layerscape: add rcw packages for ls1043ardb/ls1046ardb SD boot
Add rcw packages for ls1043ardb/ls1046ardb SD boot.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Yangbo Lu
b4b53cd39b layerscape: drop armv8_32b support
NXP LSDK has decided to drop armv8_32b support considering
few users are using it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Yangbo Lu
9ad7c53383 layerscape: update restool to LSDK 19.03
Update restool to LSDK 19.03.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
4b4b686b1d layerscape: update u-boot to LSDK 19.03
Update u-boot to LSDK 19.03.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
fbb865099b layerscape: update ppfe-firmware to LSDK 19.03
Update ppfe-firmware to LSDK 19.03.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
f4f4b053b9 layerscape: update ls-rcw to LSDK 19.03
Update ls-rcw to LSDK 19.03.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
584611e076 layerscape: update ls-mc to LSDK 19.03
Update to ls-mc to LSDK 19.03.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
1efc6f3515 layerscape: update ls-dpl to LSDK 19.03
Update ls-dpl to LSDK 19.03.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Biwen Li
5dd307afef layerscape: update fman-ucode to LSDK 19.03
The source code was same from lsdk-1806 to lsdk-1903.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Yangbo Lu
d32ca55492 layerscape: remove POSIX_MQUEUE configs
The POSIX_MQUEUE configs had been handled by OpenWrt
configuration.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Yangbo Lu
65adf759b5 kernel: handle CFQ_GROUP_IOSCHED/CGROUP_HUGETLB in config-4.14
The generic config-4.14 should handle below configs.
- CONFIG_CFQ_GROUP_IOSCHED
- CONFIG_CGROUP_HUGETLB

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-06-06 15:40:08 +02:00
Sebastian Meiling
239b79f668 kernel: add package for atusb wpan module
This adds a new package for the kernel module of the ATUSB WPAN driver.

Signed-off-by: Sebastian Meiling <s@mlng.net>
[fixed SoB: and From: mismatch]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-06 15:40:08 +02:00
Daniel Gonzalez Cabanelas
d1a015f8ca brcm63xx: DVA-G3810BN/TL: Fix the WAN ethernet port
The WAN port has the wrong configuration in the kernel for the DVA-G3810BN/TL

The WAN port uses the internal phy, but it isn't enabled at the kernel board data.

Fix it.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2019-06-06 12:05:51 +02:00
Roman Yeryomin
94464cfca2 build: fix external module symbol collection if build_dir is a symlink
e26ffb31df fixed only embedded modules
symbol collection. If we are building external modules, like broadcom-wl
or lantiq dsl stuff then modules which do EXPORT_SYMBOL have unresolved
paths in Module.symvers and external module which depend on other
external modules will have empty dependencies, leading to broken
module loading.
This was discussed on IRC with Jonas some time ago.
Fix this by handling both resolved and unresolved paths.

Fixes: e26ffb31df ("build: fix module symbol collection if build_dir is a symlink")
Signed-off-by: Roman Yeryomin <roman@advem.lv>
[jonas.gorski@gmail.com: add appropriate fixes tag]
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2019-06-06 12:05:51 +02:00
Kevin Darbyshire-Bryant
24e09bac48 Revert "kernel: backport act_ctinfo"
This reverts commit 7c50182e0c.

Produces build error:
Package kmod-sched is missing dependencies for the following libraries:
nf_conntrack.ko

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-06-06 10:45:15 +01:00
Jo-Philipp Wich
f664d560df rpcd: fix init script reload action
Drop the legacy start() and stop() procedures and define a proper
reload signal action instead.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-06-06 11:27:11 +02:00
Kevin Darbyshire-Bryant
7c50182e0c kernel: backport act_ctinfo
ctinfo is a new tc filter action module.  It is designed to restore
information contained in firewall conntrack marks to other packet fields
and is typically used on packet ingress paths.  At present it has two
independent sub-functions or operating modes, DSCP restoration mode &
skb mark restoration mode.

The DSCP restore mode:

This mode copies DSCP values that have been placed in the firewall
conntrack mark back into the IPv4/v6 diffserv fields of relevant
packets.

The DSCP restoration is intended for use and has been found useful for
restoring ingress classifications based on egress classifications across
links that bleach or otherwise change DSCP, typically home ISP Internet
links.  Restoring DSCP on ingress on the WAN link allows qdiscs such as
but by no means limited to CAKE to shape inbound packets according to
policies that are easier to set & mark on egress.

Ingress classification is traditionally a challenging task since
iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
lookups, hence are unable to see internal IPv4 addresses as used on the
typical home masquerading gateway.  Thus marking the connection in some
manner on egress for later restoration of classification on ingress is
easier to implement.

Parameters related to DSCP restore mode:

dscpmask - a 32 bit mask of 6 contiguous bits and indicate bits of the
conntrack mark field contain the DSCP value to be restored.

statemask - a 32 bit mask of (usually) 1 bit length, outside the area
specified by dscpmask.  This represents a conditional operation flag
whereby the DSCP is only restored if the flag is set.  This is useful to
implement a 'one shot' iptables based classification where the
'complicated' iptables rules are only run once to classify the
connection on initial (egress) packet and subsequent packets are all
marked/restored with the same DSCP.  A mask of zero disables the
conditional behaviour ie. the conntrack mark DSCP bits are always
restored to the ip diffserv field (assuming the conntrack entry is found
& the skb is an ipv4/ipv6 type)

e.g. dscpmask 0xfc000000 statemask 0x01000000

|----0xFC----conntrack mark----000000---|
| Bits 31-26 | bit 25 | bit24 |~~~ Bit 0|
| DSCP       | unused | flag  |unused   |
|-----------------------0x01---000000---|
      |                   |
      |                   |
      ---|             Conditional flag
         v             only restore if set
|-ip diffserv-|
| 6 bits      |
|-------------|

The skb mark restore mode (cpmark):

This mode copies the firewall conntrack mark to the skb's mark field.
It is completely the functional equivalent of the existing act_connmark
action with the additional feature of being able to apply a mask to the
restored value.

Parameters related to skb mark restore mode:

mask - a 32 bit mask applied to the firewall conntrack mark to mask out
bits unwanted for restoration.  This can be useful where the conntrack
mark is being used for different purposes by different applications.  If
not specified and by default the whole mark field is copied (i.e.
default mask of 0xffffffff)

e.g. mask 0x00ffffff to mask out the top 8 bits being used by the
aforementioned DSCP restore mode.

|----0x00----conntrack mark----ffffff---|
| Bits 31-24 |                          |
| DSCP & flag|      some value here     |
|---------------------------------------|
			|
			|
			v
|------------skb mark-------------------|
|            |                          |
|  zeroed    |                          |
|---------------------------------------|

Overall parameters:

zone - conntrack zone

control - action related control (reclassify | pipe | drop | continue |
ok | goto chain <CHAIN_INDEX>)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Reviewed-by: Toke Høiland-Jørgensen <toke@redhat.com>
Acked-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

Make suitable adjustments for backporting to 4.14 & 4.19

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-06-06 09:41:26 +01:00
Petr Štetiar
dc8ec266dd rpcd: update to the latest git head
89bfaa424606 Fix possible linker errors by using CMake find_library macro
 569284a119f9 session: handle NULL return values of crypt()

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-06 10:16:22 +02:00
Koen Vandeputte
66d1c29655 kernel: bump 4.19 to 4.19.48
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-05 12:12:59 +02:00
Petr Štetiar
df34f29fcc kernel: generic: make kernel-debug.tar.bz2 usable again
This patch removes 202-reduce_module_size.patch which is causing missing
debug symbols in kernel modules, leading to unusable
kernel-debug.tar.bz2 on all platforms, making debugging of release
kernel crashes difficult.

Cc: Felix Fietkau <nbd@nbd.name>
Acked-by: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:26:34 +02:00
Chuanhong Guo
0ab9f283f7 ramips: add support for TOTOLINK LR1200
Specifications:
- SoC: MT7628DAN (MT7628AN with 64MB built-in RAM)
- Flash: 8M SPI NOR
- Ethernet: 5x 10/100Mbps
- WiFi: 2.4G: MT7628 built-in
        5G: MT7612E
- 1x miniPCIe slot for LTE modem (only USB pins connected)
- 1x SIM slot

Flash instruction:
U-boot has a builtin web recovery page:
1. Hold the reset button while powering it up
2. Connect to the ethernet and set an IP in 192.168.1.0/24 range
3. Open your browser and upload firmware through http://192.168.1.1

Note about the LTE modem:
If your router comes with an EC25 module and it doesn't show up
as a QMI device, you should do the following to switch it to QMI
mode:
1. Install kmod-usb-serial-option and a terminal software
   (e.g. minicom or screen). All 4 serial ports of the modem
   should be available now.
2. Open /dev/ttyUSB3 with the terminal software and type this
   AT command: AT+QCFG="usbnet",0
3. Power-cycle the router. You should now get a QMI device
   recognized.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-06-05 10:26:33 +02:00
Rytis Zigmantavičius
64493d42b4 ath79: add support for 8devices Carambola2 development board
Specifications:
- Atheros AR9331 (400 MHz)
- 64 MB of RAM (DDR2)
- 16 MB of Flash (SPI)
- 1T1R 2.4 Wlan (AR9331)
- 2x 10/100 Mbps Ethernet
- 3x LEDs, 1x gpio button
- 1x USB 2.0, 5V
- UART over usb, 115200n8

Upgrading from ar71xx target:
- Put image into board:
    scp openwrt-ath79-generic-8dev_carambola2-squashfs-sysupgrade.bin \
        root@192.168.1.1/tmp/
- Run sysupgrade
    sysupgrade /tmp/sysupgrade.bin

Upgrading from u-boot:
- Set up tftp server with sysupgrade.bin image
- Go to u-boot (reboot and press ESC when prompted)
- Set TFTP server IP
    setenv serverip 192.168.1.254
- Set device ip from same subnet
    setenv ipaddr 192.168.1.1
- Copy new firmware to board
    tftpboot 0x81000000 sysupgrade.bin
- erase flash
    erase 0x9f050000 +${filesize}
- flash firmware
    cp.b 0x81000000 0x9f050000 ${filesize}
- Reset board
    reset

Signed-off-by: Rytis Zigmantavičius <rytis.z@8devices.com>
[wrapped long line in commit description, whitespace and art address
 fix in DTS, keep default lan/wan setup, removed -n in sysupgrade]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:24:45 +02:00
Kristian Evensen
046263095e ath79: Add support for ZBT-WD323
ZBT-WD323 is a dual-LTE router based on AR9344. The detailed
specifications are:

* AR9344 560MHz/450MHz/225MHz (CPU/DDR/AHN).
* 128 MB RAM
* 16MB of flash(SPI-NOR, 22MHz)
* 1x 2.4GHz wifi (Atheros AR9340)
* 3x 10/100Mbos Ethernet (AR8229)
* 1x USB2.0 port
* 2x miniPCIe-slots (USB2.0 only)
* 2x SIM slots (standard size)
* 4x LEDs (1 gpio controlled)
* 1x reset button
* 1x 10 pin terminal block (RS232, RS485, 4x GPIO)
* 2x CP210x UART bridge controllers (used for RS232 and RS485)
* 1x 2 pin 5mm industrial interface (input voltage 12V~36V)
* 1x DC jack
* 1x RTC (PCF8563)

Tested:
- Ethernet switch
- Wifi
- USB port
- MiniPCIe-slots (+ SIM slots)
- Sysupgrade
- Reset button
- RS232

Intallation and recovery:

The board ships with OpenWRT, but sysupgrade does not work as a
different firmware format than what is expected is generated.  The
easiest way to install (and recover) the router, is to use the
web-interface provided by the bootloader (Breed).

While the interface is in Chinese, it is easy to use. First, in order to
access the interface, you need to hold down the reset button for around
five seconds. Then, go to 192.168.1.1 in your browser. Click on the
second item in the list on the left to access the recovery page. The
second item on the next page is where you select the firmware.  Select
the menu item containing "Atheros SDK" and "16MB" in the dropdown close
to the buttom, and click on the button at the bottom to start
installation/recovery.

Notes:
* RS232 is available on /dev/ttyUSB0 and RS485 on /dev/ttyUSB1

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
[removed unused poll-interval from gpio-keys, i2c-gpio 4.19 compat]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:24:36 +02:00
Chuanhong Guo
c3a8518918 ath79: fix default config for devices with eth0/eth1 swapped
also fix the following problems in this commit:
glinet,gl-ar150: This router uses an uncommon order of setting up gmacs
                 in ar71xx. gmac0 is preferred to be wan port because of
                 the additional link status info available. So this
                 router will have eth0/eth1 swapped comparing to ar71xx.
tplink,tl-wr710n-v1: same as gl-ar150
embeddedwireless,dorin: eth0 is used as switch port, which was incorrect.
                        It's correct now, so keep this one untouched.
tplink,tl-wr842n-v1: we don't swap PHYs on ar7241 so the original port order
                     is incorrect.
reorder archer-a7-v5 entry.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-06-05 10:12:31 +02:00
Chuanhong Guo
8dde11d521 ath79: dts: drop "simple-mfd" for gmacs in SoC dtsi
With a proper probe deferring for ag71xx we don't need to explicitly
probe mdio1 before gmac0.
Drop all "simple-mfd" in SoC dtsi so that gmac orders can be the same
as ar71xx.
This makes eth0/eth1 order the same as those in ar71xx, which means
we don't need a migration script for this anymore and we can merge
incorrectly split gmac/mdio driver back together.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-06-05 10:12:31 +02:00
Chuanhong Guo
32817580e7 ath79: ag71xx: defer probe if of_phy_connect failed
gmac0 may need a phy on builtin switch, which can be unavailable
if gmac0 is probed before builtin switch.
Return -EPROBE_DEFER in this case so that gmac0 can be probed
later.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-06-05 10:12:31 +02:00
Chuanhong Guo
f84715d463 ath79: rework LED configurations for tplink,archer-d50-v1
The original one has the following problem:
1. Port mask of lan led includes wan port.
2. By using netdev trigger with vlan port, the link led
   is always on.

This commits fixes the above problems by correcting port
mask for lan led and use swconfig trigger for wan leds.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-06-05 10:12:31 +02:00
Pawel Dembicki
9b7abd9fe2 ramips: mt7620: fix 5GHz WiFi LED on DWR-118-A1
Support for D-Link DWR-118 A1 was added before LEDs feature
in mt76x0e driver.

This fixes the 5GHz WiFi LED which was previously inverted.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-06-05 10:12:30 +02:00
Petr Štetiar
971d358579 ar71xx: ag71xx: update ethtool support
Remove references to broken and mostly deprecated phy_ethtool_ioctl, use
new {s,g}et_link_ksettings and add nway_reset which was previously
handled in phy_ethtool_ioctl.

Cc: John Crispin <john@phrozen.org>
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=1982
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:12:30 +02:00
Petr Štetiar
206af613b2 ath79: ag71xx: update ethtool support
ethtool doesn't work currently as phy_ethtool_ioctl expects user space
pointer, but it's being passed kernel one. Fixing it doesn't make sense
as {s,g}et_settings were deprecated anyway.  So let's rather remove
phy_ethtool_ioctl and use new {s,g}et_link_ksettings instead. While at
it, update nway_reset as well.

Cc: John Crispin <john@phrozen.org>
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=1982
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:12:30 +02:00
Petr Štetiar
eafe0611d9 ar71xx: ag71xx: remove unused SIOCETHTOOL ioctl handling
This ioctl is currently routed through generic interface code:

  dev_ioctl
    dev_ethtool
      __ethtool_get_link_ksettings
        phy_ethtool_ioctl

Cc: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:12:30 +02:00
Petr Štetiar
5fee0a0923 ath79: ag71xx: remove unused SIOCETHTOOL ioctl handling
This ioctl is currently routed through generic interface code:

 dev_ioctl
   dev_ethtool
     __ethtool_get_link_ksettings
       phy_ethtool_ioctl

Cc: John Crispin <john@phrozen.org>
Cc: Chuanhong Guo <gch981213@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:12:30 +02:00
Petr Štetiar
bf58bc3bd8 ramips: ethernet: remove unused SIOCETHTOOL ioctl handling
This ioctl is currently routed through generic interface code.

  dev_ioctl
    dev_ethtool
      __ethtool_get_link_ksettings
        phy_ethtool_ioctl

Cc: Felix Fietkau <nbd@nbd.name>
Cc: John Crispin <john@phrozen.org>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:12:30 +02:00
Petr Štetiar
52156b4968 kernel: generic: remove broken and obsolete phy_ethtool_ioctl
Remove 701-phy_extension.patch from 4.14 and 4.19 kernel, as it's
currenlty broken and fixing doesn't make sense as most of it is
deprecated anyway.

Cc: John Crispin <john@phrozen.org>
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=1982
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-06-05 10:12:30 +02:00
Yousong Zhou
ef7aa03bdb libunwind: bump to version 1.3.1
Libunwind provides a sigreturn stub for x86 in version 1.2 [1].  However
the arch still depends on setcontext() which is unavailable in musl-libc
and which is supposed to be "deprecated everywhere" [2]

 [1] x86 sigreturn unimplemented for some libcs,
     https://github.com/libunwind/libunwind/issues/13
 [2] setcontext deprecated on x86,
     https://github.com/libunwind/libunwind/issues/69

Refs: https://github.com/openwrt/packages/issues/8548#issuecomment-497791552
Reported-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-06-05 01:13:07 +00:00
Koen Vandeputte
3209f5ae3d kernel: bump 4.19 to 4.19.47
Refreshed all patches.

Compile-tested on: imx6
Runtime-tested on: imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-03 17:00:29 +02:00
Koen Vandeputte
794771afde kernel: bump 4.14 to 4.14.123
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>
2019-06-03 17:00:29 +02:00
Koen Vandeputte
ff88d94372 kernel: bump 4.9 to 4.9.180
Refreshed all patches.

Compile-tested: ar7
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-03 17:00:29 +02:00
Koen Vandeputte
405e08bee6 kernel: bump 4.19 to 4.19.46
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-03 12:40:53 +02:00
Koen Vandeputte
8f6fd53db9 kernel: bump 4.14 to 4.14.122
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>
2019-06-03 12:40:53 +02:00
Koen Vandeputte
a0f7bdfc71 kernel: bump 4.9 to 4.9.179
Refreshed all patches.

Compile-tested: ar7
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-06-03 12:40:53 +02:00
Christian Lamparter
06e63aad57 apm821xx: backport accepted linux-crypto patches to 4.19
This patch brings the crypto4xx driver up to the latest
upstream changes.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-02 11:08:38 +02:00
Christian Lamparter
dfa86b01e5 apm821xx: backport accepted linux-crypto patches to 4.14
This patch brings the crypto4xx driver up to the latest
upstream changes.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-02 11:08:38 +02:00
Christian Lamparter
1544df0d89 apm821xx: MX60: convert to interrupt-driven gpio-key driver
This patch converts the device to use the gpio-key
over gpio-key-polled driver.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-02 11:08:37 +02:00
Christian Lamparter
651adad603 apm821xx: MR24: convert to interrupt-driven gpio-key driver
This patch converts the device to use the gpio-key
over gpio-key-polled driver.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-02 11:08:37 +02:00
Christian Lamparter
9148cbcb7b apm821xx: WNDAP6X0: convert to interrupt-driven gpio-key driver
This patch converts the device to use the gpio-key
over gpio-key-polled driver.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-06-02 11:08:37 +02:00
David Bauer
b8236e102c ath79: fix QCA955x GMAC register size
The register size of the QCA955x currently matches the size stated in
the datasheet. However, there are more hidden GMAC registers which are
needed for the SGMII workaround to work.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-06-02 11:08:37 +02:00
Jason A. Donenfeld
593b487538 wireguard: bump to 0.0.20190601
There was an issue with the backport compat layer in yesterday's snapshot,
causing issues on certain (mostly Atom) Intel chips on kernels older than
4.2, due to the use of xgetbv without checking cpu flags for xsave support.
This manifested itself simply at module load time. Indeed it's somewhat tricky
to support 33 different kernel versions (3.10+), plus weird distro
frankenkernels.

If OpenWRT doesn't support < 4.2, you probably don't need to apply this.
But it also can't hurt, and probably best to stay updated.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-06-01 14:00:51 +02:00
Jason A. Donenfeld
a1210f8888 wireguard: bump to 0.0.20190531
* tools: add wincompat layer to wg(8)

Consistent with a lot of the Windows work we've been doing this last cycle,
wg(8) now supports the WireGuard for Windows app by talking through a named
pipe. You can compile this as `PLATFORM=windows make -C src/tools` with mingw.
Because programming things for Windows is pretty ugly, we've done this via a
separate standalone wincompat layer, so that we don't pollute our pretty *nix
utility.

* compat: udp_tunnel: force cast sk_data_ready

This is a hack to work around broken Android kernel wrapper scripts.

* wg-quick: freebsd: workaround SIOCGIFSTATUS race in FreeBSD kernel

FreeBSD had a number of kernel race conditions, some of which we can vaguely
work around. These are in the process of being fixed upstream, but probably
people won't update for a while.

* wg-quick: make darwin and freebsd path search strict like linux

Correctness.

* socket: set ignore_df=1 on xmit

This was intended from early on but didn't work on IPv6 without the ignore_df
flag. It allows sending fragments over IPv6.

* qemu: use newer iproute2 and kernel
* qemu: build iproute2 with libmnl support
* qemu: do not check for alignment with ubsan

The QEMU build system has been improved to compile newer versions. Linking
against libmnl gives us better error messages. As well, enabling the alignment
check on x86 UBSAN isn't realistic.

* wg-quick: look up existing routes properly
* wg-quick: specify protocol to ip(8), because of inconsistencies

The route inclusion check was wrong prior, and Linux 5.1 made it break
entirely. This makes a better invocation of `ip route show match`.

* netlink: use new strict length types in policy for 5.2
* kbuild: account for recent upstream changes
* zinc: arm64: use cpu_get_elf_hwcap accessor for 5.2

The usual churn of changes required for the upcoming 5.2.

* timers: add jitter on ack failure reinitiation

Correctness tweak in the timer system.

* blake2s,chacha: latency tweak
* blake2s: shorten ssse3 loop

In every odd-numbered round, instead of operating over the state
    x00 x01 x02 x03
    x05 x06 x07 x04
    x10 x11 x08 x09
    x15 x12 x13 x14
we operate over the rotated state
    x03 x00 x01 x02
    x04 x05 x06 x07
    x09 x10 x11 x08
    x14 x15 x12 x13
The advantage here is that this requires no changes to the 'x04 x05 x06 x07'
row, which is in the critical path. This results in a noticeable latency
improvement of roughly R cycles, for R diagonal rounds in the primitive. As
well, the blake2s AVX implementation is now SSSE3 and considerably shorter.

* tools: allow setting WG_ENDPOINT_RESOLUTION_RETRIES

System integrators can now specify things like
WG_ENDPOINT_RESOLUTION_RETRIES=infinity when building wg(8)-based init
scripts and services, or 0, or any other integer.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-05-31 21:01:33 +02:00
Jan Hoffmann
085f66de9a ramips: create R6220 dtsi and improve WNDR3700v5 support
The R6220 and WNDR3700v5 are identical apart from using NAND/NOR flash and
having a different casing. This adds a new cleaned up R6220.dtsi with the
common bits for both devices. Both devices now have feature parity.

Performed cleanup:
 * generic DTS node names
 * regulator for usb power
 * added missing pinctrl groups
 * use switch port instead of VLAN as trigger for WAN LED

Fixes for WNDR3700v5:
 * all LEDS work
 * correct ethernet MAC addresses

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
2019-05-31 11:21:22 +02:00
Markus Scheck
5ff5c9bce6 ramips: add support for Xiaomi Mi Router 4A (100M Edition)
- SoC:      MediaTek MT7628AN
- Flash:    16MB (Winbond W25Q128JV)
- RAM:      64MB
- Serial:   As marked on PCB, 3V3 logic, baudrate is 115200
- Ethernet: 3x 10/100 Mbps (switched, 2x LAN + WAN)
- WIFI0:    MT7628AN 2.4GHz 802.11b/g/n
- WIFI1:    MT7612EN 5GHz 802.11ac
- Antennas: 4x external (2 per radio), non-detachable
- LEDs:     Programmable power-LED (two-colored, yellow/blue)
            Non-programmable internet-LED (shows WAN-activity)
- Buttons:  Reset

INSTALLATION:

1. Connect to the serial port of the router and power it up.
   If you get a prompt asking for boot-mode, go to step 3.
2. Unplug the router after
       > Erasing SPI Flash...
       > raspi_erase: offs:20000 len:10000
   occurs on the serial port. Plug the router back in.
3. At the prompt select option 2 (Load system code then
   write to Flash via TFTP.)
4. Enter 192.168.1.1 as the device IP and 192.168.1.2 as the
   Server-IP.
5. Connect your computer to LAN1 and assign it as 192.168.1.2/24.
6. Rename the sysupgrade image to test.bin and serve it via TFTP.
7. Enter test.bin on the serial console and press enter.

Signed-off-by: Markus Scheck <markus@mscheck.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[added mt76 compatible]
2019-05-31 11:21:22 +02:00
Eneas U de Queiroz
a41f474d17 build: add support to && in DEPENDS
Adds support to && operand in DEPENDS.  Also, fixes generation of ||
dependencies by scripts/package-metadata.pl.

The precedence order from higher to lower is && then ||.  Use of
parentheses to change the order is not supported. As before, they are
silently ignored.  Use them for readability only.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [DMARC removal]
2019-05-31 11:21:22 +02:00
Eneas U de Queiroz
f22ef1f1de openssl: update to version 1.1.1c
Highlights of this version:
 - Prevent over long nonces in ChaCha20-Poly1305 (CVE-2019-1543)
 - Fix OPENSSL_config bug (patch removed)
 - Change the default RSA, DSA and DH size to 2048 bit instead of 1024.
 - Enable SHA3 pre-hashing for ECDSA and DSA

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [DMARC removal]
2019-05-31 11:21:22 +02:00
David Santamaría Rogado
4d6da05683 ath79: add leds migrations for archer-c7-v2 and v4
In ar71xx v2 has blue color defined because the same mach-*.c is also used
for TL-WDR4900 model with blue leds. ath79 v2 dts defines them as green.

For v4 the situation is the same as v5 so the conversion is identical only
v4 instead v5.

So now upgrading from ar71xx to ath79 should be also smoother for v2 and v4.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
2019-05-31 11:21:22 +02:00
Davide Fioravanti
7c91144ae6 ramips: add CUDY WR1000 support
Cudy WR1200 is an AC1200 AP with 3-port FE and 2 non-detachable antennas

Specifications:

MT7628 (580 MHz)
64 MB of RAM (DDR2)
8 MB of FLASH
2T2R 2.4 GHz (MT7628)
2T2R 5 GHz (MT7612E)
3x 10/100 Mbps Ethernet (2 LAN + 1 WAN)
2x external, non-detachable antennas (5dbi)
UART header on PCB (57600 8n1)
7x LED, 2x button

Known issues:
The Power LED is always ON, probably because it is connected
directly to power.

Flash instructions
------------------
Load the ...-factory.bin image via the stock web interface.

Openwrt upgrade instructions
----------------------------
Use the ...-sysupgrade.bin image for future upgrades.

Revert to stock FW
------------------
Warning! This tutorial will work only with the following OEM FW:
  WR1000_EU_92.122.2.4987.201806261618.bin
  WR1000_US_92.122.2.4987.201806261609.bin
If in the future these firmwares will not be available anymore,
you have to find the new XOR key.

1) Download the original FW from the Cudy website.

   (For example WR1000_EU_92.122.2.4987.201806261618.bin)

2) Remove the header.

   dd if="WR1000_EU_92.122.2.4987.201806261618.bin" of="WR1000_EU_92.122.2.4987.201806261618.bin.mod" skip=8 bs=64

3) XOR the new file with the region key.

   FOR EU: 7B76741E67594351555042461D625F4545514B1B03050208000603020803000D
   FOR US: 7B76741E675943555D5442461D625F454555431F03050208000603060007010C

   You can use OpenWrt's tools/firmware-utils/src/xorimage.c tool for this:

   xorimage -i WR1000..bin.mod -o stock-firmware.bin -x -p 7B767..

   Or, you can use this tool (CHANGE THE XOR KEY ACCORDINGLY!):
   https://gchq.github.io/CyberChef/#recipe=XOR(%7B'option':'Hex','string':''%7D,'',false)

4) Check the resulting decrypted image.

   Check if bytes from 0x20 to 0x3f are:
   4C 69 6E 75 78 20 4B 65 72 6E 65 6C 20 49 6D 61 67 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00

   Alternatively, you can use u-boot's tool dumpimage tool to check
   if the decryption was successful. It should look like:

   # dumpimage -l stock-firmware.bin
   Image Name:   Linux Kernel Image
   Created:      Tue Jun 26 10:24:54 2018
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    4406635 Bytes = 4303.35 KiB = 4.20 MiB
   Load Address: 80000000
   Entry Point:  8000c150

5) Flash it via forced firmware upgrade and don't "Keep Settings"

   CLI: sysupgrade -F -n stock-firmware.bin

   LuCI: make sure to click on the "Keep settings" checkbox
         to disable it. You'll need to do this !TWICE! because
         on the first try, LuCI will refuse the image and reset
	 the "Keep settings" to enable. However a new
         "Force upgrade" checkbox will appear as well.
         Make sure to do this very carefully!

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[added wifi compatible, spiffed-up the returned to stock instructions]
2019-05-31 10:36:36 +02:00
Davide Fioravanti
62ce6d58f2 ramips: unify JCG helper command definition
This patch makes the JCG helper command definition available
for every rampis target

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
2019-05-31 10:30:03 +02:00
Davide Fioravanti
d95dff162a firmware-utils: jcgimage: add support for 4MiB+ images
The first version of this script allowed just 4Mb factory images.
With this patch is possible to set the maximum size of the payload.

For an 8Mb flash, the corresponding maxsize is:
8 * 1024 * 1024 - 5 * 64 * 1024 = 8388608 - 327680 = 8060928

If the -m argument is not set, the default maximum size will be
used for backward compatibility.

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
2019-05-31 10:30:03 +02:00
Davide Fioravanti
1bbd524e84 firmware-utils: jcgimage: fix style and compiler warnings
Fixed some compilation warnings.

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
2019-05-31 10:30:03 +02:00
Christian Lamparter
bd83592fc4 apm821xx: wndr4700: interrupt-driven gpio-keys
This patch fixes the active_low setting and
converts all of the physical keys on the wndr4700
to utilize the interrupt-driven gpio-keys driver
over the polled version.

The sdcard-insertion hack has been removed since the
block-subsystem will now be polling the device instead.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-31 10:30:03 +02:00
Christian Lamparter
afc056d7dc gpio-button-hotplug: support interrupt properties
Upstream Linux's input gpio-keys driver supports
specifying a external interrupt for a gpio via the
'interrupts' properties as well as having support
for software debounce.

This patch ports these features to OpenWrt's event
version. Only the "pure" interrupt-driven support is
left behind, since this goes a bit against the "gpio"
in the "gpio-keys" and I don't have a real device to
test this with.

This patch also silences the generated warnings showing
up since 4.14 due to the 'constification' of the
struct gpio_keys_button *buttons variable in the
upstream struct gpio_keys_platform_data declaration.

gpio-button-hotplug.c: In function 'gpio_keys_get_devtree_pdata':
gpio-button-hotplug.c:392:10: warning: assignment discards 'const'
	qualifier from pointer target type [-Wdiscarded-qualifiers]
   button = &pdata->buttons[i++];
          ^
gpio-button-hotplug.c: In function 'gpio_keys_button_probe':
gpio-button-hotplug.c:537:12: warning: assignment discards 'const'
	qualifier from pointer target type [-Wdiscarded-qualifiers]
   bdata->b = &pdata->buttons[i];
            ^
gpio-button-hotplug.c: In function 'gpio_keys_probe':
gpio-button-hotplug.c:563:37: warning: initialization discards 'const'
	qualifier from pointer target type [-Wdiscarded-qualifiers]
   struct gpio_keys_button *button = &pdata->buttons[i];
                                   ^
Acked-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-31 10:30:03 +02:00
Hans Dedecker
678ee30ee4 ppp: add config options to tune discovery timeout and attempts
Upstream PPP project has added in commit 8e77984 options to tune discovery
timeout and attempts in the rp-pppoe plugin.

Expose these options in the uci datamodel for pppoe:
	padi_attempts: Number of discovery attempts
	padi_timeout: Initial timeout for discovery packets in seconds

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-31 09:43:10 +02:00
Hans Dedecker
42977978e2 ppp: update to version 2.4.7.git-2019-05-25
8e77984 rp-pppoe plugin: Add options to tune discovery timeout and number of attempts

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-31 09:43:03 +02:00
Fabian Bläse
0f8b9addfc gre: introduce 'nohostroute' option
It is not always necessary to add a host route for the gre peer address.

This introduces a new config option 'nohostroute' (similar to the
option introduced for wireguard in d8e2e19) to allow to disable
the creation of those routes explicitely.

Signed-off-by: Fabian Bläse <fabian@blaese.de>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2019-05-31 09:42:32 +02:00
Yousong Zhou
cf463159df uclient: bump to version 2019-05-30
This version bump contains the following commit to fix FS#2222

	3b3e368 uclient-http: set data_eof when content-length is 0

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-05-30 12:13:31 +00:00
Yousong Zhou
1e5f4dcd66 libunwind: requires glibc if arch in powerpc
libunwind for powerpc depends on getcontext() from libc which musl-libc
does not provide because this API and its friends are supposed to be
"obsolescent" [1,2]

 [1] Subject: Re: setcontext/getcontext/makecontext missing?
     https://www.openwall.com/lists/musl/2016/02/04/5
 [2] http://pubs.opengroup.org/onlinepubs/009695399/functions/makecontext.html

Refs: https://github.com/openwrt/packages/issues/8548#issuecomment-497200058
Reported-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-05-30 10:30:45 +00:00
Sandeep Sheriker M
a765a2178c at91:renaming subtraget legacy to sam9x
renaming subtraget legacy to sam9x for adding new sam9 soc's

Signed-off-by: Sandeep Sheriker M <sandeep.sheriker@microchip.com>
2019-05-30 12:12:57 +02:00
Hauke Mehrtens
ab629543c0 gemini: Activate Realtek and vitesse DSA driver again
This activates the wrongly removed DSA drivers again.

Fixes 9ab4d74b5f ("kernel: Move some DSA config options to generic config")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Reported-by: Linus Walleij <linus.walleij@linaro.org>
2019-05-30 12:12:37 +02:00
Hauke Mehrtens
ed224b1880 at91: Update kernel to version 4.14
This adds support for kernel 4.14 to the target and directly make it the
default kernel version to use.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Sandeep Sheriker <sandeepsheriker.mallikarjun@microchip.com>
2019-05-30 12:12:37 +02:00
Hauke Mehrtens
aff084adf3 at91: Merge SAMA5 subtargets
Instead of maintaining 3 very similar subtargets merge them into one.
This does not use the Arm NEON extension any more, because the SAMA5D3
does not support NEON.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Sandeep Sheriker <sandeepsheriker.mallikarjun@microchip.com>
2019-05-30 12:12:37 +02:00
Hauke Mehrtens
28e00650a5 at91: Clean up kernel configuration
This removes some settings which are normally set by the generic
configuration and should not be changed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Sandeep Sheriker <sandeepsheriker.mallikarjun@microchip.com>
2019-05-30 12:12:37 +02:00
Hauke Mehrtens
bf0e4cb13f at91: Refresh kernel configuration
The configuration of the sama5d4 subtarget was used as the default
configuration and then the subtarget configurations were adapted.

The resulting kernel configuration without any extra modules selected is
still the same.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Sandeep Sheriker <sandeepsheriker.mallikarjun@microchip.com>
2019-05-30 12:12:37 +02:00
Alan Swanson
e7bd254ed9 lantiq: BTHOMEHUBV5A: don't power off with restart button
The restart button is currently assigned to KEY_POWER power script but
an easily accessible button immediately powering off the device is
undesirable. Switch to using new KEY_POWER2 reboot script with 5 second
seen delay.

Fixes: FS#1965
Signed-off-by: Alan Swanson <reiver@improbability.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
2019-05-30 11:55:50 +02:00
Alan Swanson
5422fed787 gpio-button-hotplug: add KEY_POWER2 handling
For devices such as BTHOMEHUBV5A with both reset and restart buttons,
its easily accessible restart button has been assigned to KEY_POWER
power script to poweroff preventing accidental (or malicious) factory
resets by KEY_RESTART reset script. However an easily accessible button
immediately powering off the device is also undesirable.

As KEY_RESTART is already used for reset script (and there's no
KEY_REBOOT in Linux input events), use KEY_POWER2 for rebooting via new
reboot script with 5 second seen delay.

Fixes: FS#1965
Signed-off-by: Alan Swanson <reiver@improbability.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
2019-05-30 11:55:50 +02:00
Alan Swanson
a46259787d button-hotplug: add KEY_POWER2 handling
For devices such as BTHOMEHUBV5A with both reset and restart buttons,
its easily accessible restart button has been assigned to KEY_POWER
power script to poweroff preventing accidental (or malicious) factory
resets by KEY_RESTART reset script. However an easily accessible button
immediately powering off the device is also undesirable.

As KEY_RESTART is already used for reset script (and there's no
KEY_REBOOT in Linux input events), use KEY_POWER2 for rebooting via new
reboot script with 5 second seen delay.

Fixes: FS#1965
Signed-off-by: Alan Swanson <reiver@improbability.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
2019-05-30 11:55:50 +02:00
Alan Swanson
70c7a0c33e base-files: add reboot only button handler
For devices such as BTHOMEHUBV5A with both reset and restart buttons,
its easily accessible restart button has been assigned to KEY_POWER
power script to poweroff preventing accidental (or malicious) factory
resets by KEY_RESTART reset script. However an easily accessible button
immediately powering off the device is also undesirable.

Fixes: FS#1965
Signed-off-by: Alan Swanson <reiver@improbability.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz> [long line wrap]
2019-05-30 11:55:49 +02:00
Petr Štetiar
6a92eb5b38 procd: update to latest git HEAD
ade00ca585a4 container: fix .dockerenv stat check
 385b904b2f0a hotplug: improve error message during group ownership change

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-30 08:03:02 +02:00
Paul Spooren
62940df3a9 procd: update to latest git HEAD
7f0f6b2 procd: add docker support

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-05-29 17:57:35 +02:00
Mikael Magnusson
8128a7e4fc busybox: fix: ip addr flush hangs when run by non-root user
Add upstream patch from:
https://git.busybox.net/busybox/commit/?id=028c5aa18b5273c029f0278232d922ee1a164de6

The patch fixes a problem with an infinite loop causing 100% CPU usage
when running the following command /lib/preinit/10_indicate_preinit
without the CAP_NET_ADMIN capability (such as in Docker):
  ip -4 address flush dev $pi_ifname

Signed-off-by: Mikael Magnusson <mikma@users.sourceforge.net>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [refresh patch]
2019-05-28 13:18:58 +02:00
Koen Vandeputte
b97d44af67 kernel: bump 4.19 to 4.19.45
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-28 11:02:42 +02:00
Koen Vandeputte
35551e58db kernel: bump 4.14 to 4.14.121
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>
2019-05-28 11:02:42 +02:00
Koen Vandeputte
bcb6fc2f84 kernel: bump 4.9 to 4.9.178
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-28 11:02:42 +02:00
Hans Dedecker
6636171bed netifd: fix missing ip rules after network reload (FS#2296)
beb810d iprule: fix missing ip rules after a reload (FS#2296)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-28 10:21:02 +02:00
Petr Štetiar
99c52251cc ath79: ecb1750: additional dts fixes
This patch fixes following missing bits:

 - add missing 'compatible' property on firmware partition
 - set vendor partition 'userconfig' read-only

Fixes: 30dcbc741d ("ath79: add support for EnGenius ECB1750")
Signed-off-by: Sven Friedmann <sf.openwrt@okay.ms>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-27 22:44:08 +02:00
Ryan Mounce
6d6985ff0e ath79: add support for WD My Net N750
SoC: AR9344
RAM: 128MB
Flash: 16MiB Winbond 25Q128BVFG SPI NOR
5GHz WiFi: AR9380 PCIe 3x3:3 802.11n
2.4GHz WiFi: AR9344 (SoC) AHB 2x2:2 802.11n

5x Gigabit ethernet via AR8327N switch (green + amber LEDs)
2x USB 2.0 via GL850G hub
4x front LEDs from SoC GPIO
1x front WPS button from SoC GPIO
1x bottom reset button from SoC GPIO

Known issues:
AR8327N LEDs only have default functionality, not presented in sysfs.
This is a regression from ar71xx.

UART header JP1, 115200 no parity 1 stop
TX
GND
VCC
(N/P)
RX

See https://openwrt.org/toh/wd/n750 for flashing detail.
Procedures unchanged from ar71xx.

Tested sysupgrade + factory flash from WD Emergency Recovery

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2019-05-27 22:44:08 +02:00
Hans Dedecker
7d77879236 curl: bump to 7.65.0
For changes in 7.65.0; see https://curl.haxx.se/changes.html#7_65_0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-26 21:51:04 +02:00
Hans Dedecker
f54611b06d map: don't set default firewall zone to wan
Don't set the default firewall zone to wan if not specified to keep the
behavior aligned with other tunnel protocols like gre and 6rd.
If the interface zone is not specified try to get it from the firewall config
when constructing the procd firewall rule.
While at it only add procd inbound/outbound firewall rules if a zone is specified.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-26 09:44:37 +02:00
Hans Dedecker
470f5b31e3 464xlat: don't set default firewall zone to wan
Don't set the default firewall zone to wan if not specified to keep the
behavior aligned with other tunnel protocols like gre and 6rd.
If the interface zone is not specified try to get it from the firewall config
when constructing the procd firewall rule.
While at it only add a procd inbound firewall rule if a zone is specified.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-26 09:43:57 +02:00
Petr Štetiar
ace241014c ethtool: bump to 5.1
* Feature: Add support for 200Gbps (50Gbps per lane) link mode
 * Feature: simplify handling of PHY tunable downshift
 * Feature: add support for PHY tunable Fast Link Down
 * Feature: add PHY Fast Link Down tunable to man page
 * Feature: Add a 'start N' option when specifying the Rx flow hash indirection table.
 * Feature: Add bash-completion script
 * Feature: add 10000baseR_FEC link mode name
 * Fix: qsfp: fix special value comparison
 * Feature: move option parsing related code into function
 * Feature: move cmdline_coalesce out of do_scoalesce
 * Feature: introduce new ioctl for per-queue settings
 * Feature: support per-queue sub command --show-coalesce
 * Feature: support per-queue sub command --coalesce
 * Fix: fix up dump_coalesce output to match actual option names
 * Feature: fec: add pretty dump

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-25 13:44:43 +02:00
Alexander Couzens
c4abaa345c Revert "base-files: add console to inittab"
This reverts commit cde52cb486.
When using OpenWrt in qemu, the shell is unsuable

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-05-25 08:13:20 +02:00
Hans Dedecker
0293aa72d1 uci: fix heap use after free (FS#2288)
f199b96 uci: fix options list of section after type change

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-23 22:05:40 +02:00
Hans Dedecker
f21c8577bb glibc: update to latest 2.27 commit (BZ #24531)
54ba8bcd423 Fix tcache count maximum (BZ #24531)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-23 14:17:21 +02:00
Linus Walleij
8a83f17b24 gemini: Support sysupgrade on DIR-685
This makes sysupgrade work on the D-Link DIR-685 after
initial factory install.

We create the platform.sh script to support sysupgrade
on more targets as we move on with sysupgrade support.

Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[cleanup in platform.sh, removed superfluous SUPPORTED_DEVICES]
2019-05-23 10:19:52 +02:00
Liangbin Lian
4bb9af48ca lua: lnum: fix strtoul based number parsing
Lua's LNUM patch currently doesn't parse properly certain numbers as
it's visible from the following simple tests.

On x86_64 host (stock Lua 5.1.5, expected output):

 $ /usr/bin/lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)'

  2147483648
  8796093022208
  4294967296

On x86_64 host:

 $ staging_dir/hostpkg/bin/lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)'

  -2147483648
  0
  0

On x86_64 target:

 $ lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)'

  -2147483648
  0
  0

On ath79 target:

 $ lua -e 'print(0x80000000); print(0x80000000000); print(0x100000000)'

  -2147483648
  8796093022208
  4294967296

It's caused by two issues fixed in this patch, first issue is caused by
unhadled strtoul overflow and second one is caused by the cast of
unsigned to signed Lua integer when parsing from hex literal.

Run tested on:

 * Zidoo Z9S with RTD1296 CPU (aarch64_cortex-a53)
 * qemu/x86_64
 * qemu/armvirt_64
 * ath79

Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
[commit subject/message touches, fixed From to match SOB, fixed another
 unhandled case in luaO_str2i, host Lua, package bump]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-23 10:19:52 +02:00
Hans Dedecker
33b81b5721 Revert "bc: update to 1.07.1"
This reverts commit 0111b86f1d as it
breaks on Linux distributions without ed support

./fix-libmath_h: line 1: ed: command not found

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-22 21:27:44 +02:00
Deng Qingfang
0111b86f1d bc: update to 1.07.1
Update bc to 1.07.1
Use GNU mirror

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-05-22 13:13:06 +02:00
Paul Spooren
cde52cb486 base-files: add console to inittab
When running OpenWrt inside an LXC container no shell is opend as LXC
defaults to a virtual /dev/console.

This patch allows to enter a shell after starting the container via
`lxc-start`, without it is only posible to access a shell on tty1 via
`lxc-console`.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-05-21 14:54:15 +02:00
Alexander Couzens
8357b8131c ar71xx: wr940 v4/v6: correct lan interface mac address
The vendor firmware only uses two mac addresses, the mac address on the
label and the label + 1. While checking multiple devices, all labels have
even mac addresses. Concluding only 2 address are assigned to a device.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-05-21 14:53:45 +02:00
Koen Vandeputte
4da5ba4a6b iwinfo: update to latest git HEAD
073a838891e5 iwinfo: Complete device IDs for Ubiquiti airOS XM/XW devices
04f5a7d3a431 iwinfo: Add Mikrotik R11e-5HnD
c2cfe9d96c9a iwinfo: Fix 802.11ad channel to frequency

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-21 14:24:18 +02:00
Koen Vandeputte
8eb7cf0cd7 kernel: bump 4.19 to 4.19.44
Refreshed all patches.

Remove upstreamed:
- 103-MIPS-perf-ath79-Fix-perfcount-IRQ-assignment.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-21 09:45:15 +02:00
Koen Vandeputte
f442b306f9 kernel: bump 4.14 to 4.14.120
Refreshed all patches.

Remove upstreamed:
- 103-MIPS-perf-ath79-Fix-perfcount-IRQ-assignment.patch
- 060-fix-oxnas-rps-dt-match.patch

Altered patches:
- 0067-generic-Mangle-bootloader-s-kernel-arguments.patch
- 006-mvebu-Mangle-bootloader-s-kernel-arguments.patch
- 996-generic-Mangle-bootloader-s-kernel-arguments.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-21 09:45:15 +02:00
Koen Vandeputte
00324e434e kernel: bump 4.9 to 4.9.177
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-21 09:45:15 +02:00
Alexander Wördekemper
0f6b944c92 ath79: glinet_gl-ar750s: Add USB power & microSD
The GL.iNet AR750S USB and microSD port is currently not working out of
the box.  GPIO 7 is used to control the power of the USB port. Add GPIO
7 as a fixed-regulator for the port.  Also add &usb1 to DTS to get the
microSD port to work.

Signed-off-by: Alexander Wördekemper <alexwoerde@web.de>
2019-05-20 21:25:00 +02:00
Petr Štetiar
2f1a11d008 imx6: apalis: fix config survival after sysupgrade -n
This patch fixes `sysupgrade -n` when flashed with rootfs of the same
size as currently running, so the rootfs_data wouldn't get destroyed and
thus survive reboot. So let's fix it by always cleaning up the content
of the rootfs_data during sysupgrade.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Petr Štetiar
049748e87e uboot-imx6: bump to 2019.04 and refresh patches
Build tested: apalis, mx6sabresd, nitrogen6dl, nitrogen6dl2g, nitrogen6q,
	      nitrogen6q2g, nitrogen6s, nitrogen6s1g, wandboard

Run tested: apalis

Cc: Felix Fietkau <nbd@nbd.name>
Cc: Vladimir Vid <vladimir.vid@sartura.hr>
Cc: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Petr Štetiar
4318bba0e9 ath79: add leds migrations for archer-c7-v5
ar71xx uses `archer-c7-v5` for led prefix, but ath79 sticks to more
generic `tplink` as the DTS is reused by more boards, so we need to
perform migrations of the LED names during upgrade.

Cc: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Petr Štetiar
73b21559ce ar71xx: set mib-poll-interval on devices with ar8xxx switch
Commit "generic: ar8216: add mib_poll_interval switch attribute" sets
mib-poll-interval as disabled by default (was set to 2s), so it makes
switch LEDs trigger disfunctional on devices which don't have
mib-poll-interval set.

So this patch sets mib-poll-interval to 500ms on devices which are using
ar8xxx switch LEDs trigger, as the same value was set for built in
switches in 443fc9ac35 ("ath79: use ar8216 for builtin switch").

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-05-20 21:19:48 +02:00
Petr Štetiar
00d14635db apm821xx: set mib-poll-interval on emac0 attached ar83xx switch
Commit "generic: ar8216: add mib_poll_interval switch attribute" sets
mib-poll-interval as disabled by default (was set to 2s), so it makes
switch LEDs trigger disfunctional on devices which don't have
mib-poll-interval set.

So this patch sets mib-poll-interval to 500ms on devices which have
ar83xx switch connected to emac0, as the same value was set for built in
switches in 443fc9ac35 ("ath79: use ar8216 for builtin switch").

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Petr Štetiar
6648e9458f ath79: set mib-poll-interval on mdio0 attached ar83xx switch
Commit "generic: ar8216: add mib_poll_interval switch attribute" sets
mib-poll-interval as disabled by default (was set to 2s), so it makes
switch LEDs trigger disfunctional on devices which don't have
mib-poll-interval set.

So this patch sets mib-poll-interval to 500ms on devices which have
ar83xx switch connected to mdio0 bus, as the same value was set for
built in switches in 443fc9ac35 ("ath79: use ar8216 for builtin
switch").

Some measurements performed on TP-Link Archer C7-v5:

 mib-type=0, mib-poll-interval=500ms (10s pidstat)

  Average:  %usr %system  %guest   %wait    %CPU   CPU  Command
  Average:  0.00    1.93    0.00    0.00    1.93     -  kworker/0:2

  iperf3 (30s): 334 Mbits/sec

 mib-type=0, mib-poll-interval=2s (10s pidstat)

  Average:  %usr %system  %guest   %wait    %CPU   CPU  Command
  Average:  0.00    1.14    0.00    0.00    1.14     -  kworker/0:2

  iperf3 (30s): 334 Mbits/sec

So it seems like we get 4x faster LED refresh rate for additional 0.8%
CPU load.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Petr Štetiar
aac8b52184 base-files: add support for the new ar8xxx MIB counters settings
Commit "generic: ar8216: add mib_poll_interval switch attribute" has
added mib_poll_interval global config option and commit "generic:
ar8216: group MIB counters and use two basic ones only by default" has
added mib_type config option.

So this patch adds ucidef_set_ar8xxx_switch_mib helper function which
would allow configuration of the above mentioned new switch config
options.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Petr Štetiar
2c26dc7b41 netifd: add support for the new ar8xxx MIB counters settings
Commit "generic: ar8216: add mib_poll_interval switch attribute" has added
mib_poll_interval global config option and commit "generic: ar8216: group
MIB counters and use two basic ones only by default" has added mib_type
config option.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-20 21:19:48 +02:00
Chuanhong Guo
01c0d7f86f generic: ar8216: group MIB counters and use two basic ones only by default
There are too many MIB counters that almost nobody needs since commit
d6366ce366 ("generic: ar8216: mib_work_func: read all port mibs
everytime").

In the worker function to poll MIB data, it deals with all ports instead
of only one port every time, which introduces too many mdio operations
that it becomes a heavy CPU load even on not-emulated MDIO bus.

This commit groups MIB counters and enable only TxBytes and RxGoodBytes
by default (both of which are necessary to get swconfig led working.)
and adds an swconfig attribute to allow enabling all counters if users
need them.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-05-20 21:17:57 +02:00
Chuanhong Guo
107dc4326c generic: ar8216: add mib_poll_interval switch attribute
This allows specifying interval of polling MIB counters from userspace
and allow completely turning off MIB counter support by setting
mib_poll_interval to 0.

Since MIB counter polling is a heavy CPU load for GPIO emulated MDIO
bus, disable this behavior by default. Those who wants to use swconfig
LEDs can enable them with qca,mib-poll-interval dts property or with
swconfig command.

Fixes: FS#2230 ("kworker spikes 100% cpu every 2 second.")
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-05-20 21:17:45 +02:00
Hauke Mehrtens
df6e8c8771 uboot-fritz4040: Add host flags for host compiler
This adds the host staging directory to the include path to make it use
the zlib.h files from the staging include directory and also link
against the zlib version from the staging directory.

This fixes a compile problem when the zlib header were not installed on
the build host.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[picked from openwrt-18.06]
2019-05-19 12:29:24 +02:00
Christian Lamparter
2d0c0abf5d apm821xx: WNDR4700: remove obsolete sd-card change detection
The SD-Card polling is now implemented by default in the
fs-tools block-mount utility package. It might not be as
fast as the current detection method since the polling
time is 2 Seconds, but it's much less of an hack.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-19 12:29:24 +02:00
Hans Dedecker
a7967bada9 ppp: update to version 2.4.7.git-2019-05-18
c9d9dbf pppoe: Custom host-uniq tag
44012ae plugins/rp-pppoe: Fix compile errors

Refresh patches
Drop 520-uniq patch as upstream accepted
Drop 150-debug_compile_fix patch as fixed upstream

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-18 21:39:19 +02:00
Deng Qingfang
9ccb24c548 scons: update to 3.0.5
Update scons to 3.0.5

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-05-18 21:17:45 +02:00
Christian Lamparter
00db985ba8 ath79: convert WD MyNet Range Extender to gpio-keys
This patch converts the Range Extender to use the
interrupt-driven gpio-keys driver over the polled variant.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-18 17:59:49 +02:00
Christian Lamparter
ba68afa204 ath79: convert Netgear WNDR3700 series to gpio-keys
This patch converts the WNDR3700 to use the interrupt-driven
gpio-keys driver over the polled variant.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-18 17:59:49 +02:00
Christian Lamparter
1e52eacc42 ath79: use the qca,qca9563 chip compatible for the WR818
All other QCA9563 devices already use this identifier for
the exact SoC. Not that this matters much since as upstream
states in Documentation/devicetree/usage-model.txt:

"First and foremost, the kernel will use data in the DT to
identify the specific machine.  In a perfect world, the
specific platform shouldn't matter to the kernel because all
platform details would be described perfectly by the device
tree in a consistent and reliable manner.

[...]

In the majority of cases, the machine identity is irrelevant,
and the kernel will instead select setup code based on the
machine's core CPU or SoC."

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-18 17:59:49 +02:00
Nicholas Smith
73e0f52b6e ramips: add support for Telco Electronics X1
Hardware:
SoC:   MT7621
DRAM:  256MB DDR3
Flash: 16MB SPI-NOR
WiFi:  2.4GHz: MT7603 @ PCIe0
WiFi:  5.8GHz: MT7612 @ PCIe1
Modem: Sierra Wireless MC74xx

Interfaces:
GBE RJ45 x5
mPCIe    x2
UART     x1
I2C      x1
JTAG     x1
UIM      x1
LEDs     x6

Flash instructions:
Flash from within the factory bootloader, firmware web interface or CLI using
sysupgrade -F -n

Signed-off-by: Nicholas Smith <mips171@icloud.com>
2019-05-18 17:59:49 +02:00
Davide Fioravanti
f5d2c91415 ath79: add support for TP-Link Archer D50 V1
TP-Link Archer D50 v1 is a dual-band AC1200 router + modem.
The router section is based on Qualcomm/Atheros QCA9531 + QCA9882.
The "DSL" section is based on BCM6318 but it's currently not supported.

Internally eth0 is connected to the Broadcom CPU.

Router section - Specification:

CPU: QCA9531 650/600/200 MHz (CPU/DDR/AHB)
RAM: 64 MB (DDR2)
Flash: 8 MB (SPI NOR)
Wifi 2.4GHz: QCA9531 2T2R
Wifi 5GHz: QCA9982 2T2R
4x 10/100 Mbps Ethernet
8x LED, 3x button
UART header on PCB

Known issues:
DSL not working (eth0) (WIP)

UART connection
---------------
J2 HEADER (Qualcomm CPU)
. TX
. RX
. GND
O VCC

J16 HEADER (Broadcom CPU)
O VCC
. GND
. RX
. TX

The following instructions require a connection to the J2 UART header.

Flash instruction under U-Boot, using UART
------------------------------------------
 1. Press any key to stop autobooting and obtain U-Boot CLI access.
 2. Setup ip addresses for U-Boot and your tftp server.
 3. Issue below commands:
	tftpboot 0x81000000 openwrt-ath79-generic-tplink_archer-d50-v1-squashfs-sysupgrade.bin
	erase 0x9f020000 +$filesize
	cp.b 0x81000000 0x9f020000 $filesize
	reset

Initramfs instruction under U-Boot for testing, using UART
----------------------------------------------------------
 1. Press any key to stop autobooting and obtain U-Boot CLI access.
 2. Setup ip addresses for U-Boot and your tftp server.
 3. Issue below commands:
	tftpboot 0x81000000 openwrt-ath79-generic-tplink_archer-d50-v1-initramfs-kernel.bin
	bootm 0x81000000

Restore the original firmware
-----------------------------
 0. Backup every partition using the OpenWrt web interface
 1. Download the OEM firmware from the TP-Link website
 2. Extract the bin file in a folder (eg. Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin)
 3. Remove the U-Boot and the Broadcom image part from the file.
    Issue the following command:
	dd if="Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin" of="Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin.mod" skip=257 bs=512 count=15616
 4. Double check the .mod file size. It must be 7995392 bytes.
 5. Flash it using the OpenWrt web interface. Force the update if needed.
    WARNING: Remember to NOT keep settings.

 5b. (Alternative to 5.) Flash it using the U-Boot and UART connection.
     Issue below commands in the U-Boot:
        tftpboot 0x81000000 Archer_D50v1_0.8.0_1.3_up_boot(170223)_full_2017-02-24_09.37.45.bin.mod
        erase 0x9f020000 +$filesize
        cp.b 0x81000000 0x9f020000 $filesize
        reset

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [removed
default-state = "off", it's already the default, added pcie node,
fixed typo]
2019-05-18 17:59:49 +02:00
Davide Fioravanti
c349cc5752 tools/firmware-utils: mktplinkfw2: add Qualcomm layouts
This commit adds the partition layout used by the TP-Link Archer D50
and probably by the TP-Link Archer D7 to mktplinkfw2.

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
2019-05-18 17:59:49 +02:00
Chris Blake
aee5c98619 ath79: add support for Aruba AP-105
SoC: Atheros AR7161-8C1A @ 680 MHz
RAM: 128MB - 2x Etron Technology EM6AB160TSA-5G
NOR: 16MB - 1x MXIC MX25L12845EMI-10G (SPI-NOR)
WI1: Atheros AR9223-AC1A 802.11bgn
WI2: Atheros AR9220-AC1A 802.11an
ETH: Atheros AR8021-BL1E + PoE
LED: Dual-Color Power/Status, Ethernet, WLAN2G and WLAN5G
BTN: 1 x Reset
I2C: AT97SC4303s TPM (needs driver!)
CON: RS232-level 8P8C/RJ45 Console Port - 9600 Baud

Factory installation:

 - Needs a u-boot replacement. See Wiki for
   information on how to do a in-circut flash with
   a SPI-Flasher like a CH314A or flashrom. Wiki page
   can be found at https://openwrt.org/toh/aruba/aruba_ap-105

 - Be careful when dis- and reassembling the device to
   not squish any of the antenna cables in the process!

 - Be sure to make a full 16 MiB backup of your device
   before flashing the new u-boot! This is needed if you
   ever have interest in reverting back to stock firmware.

Not working:

 - TPM (needs a driver)

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2019-05-18 16:44:41 +02:00
Jan Hoffmann
2fdd02cc7c ramips: add factory image for WNDR3700v5
This uses the existing rules for Sercomm factory images and moves them
to the ramips image Makefile, so they can be used in all subtargets.

The new factory image for WNDR3700v5 can be flashed using nmrpflash.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
2019-05-18 16:44:41 +02:00
Adrian Schmutzler
d4b89b7170 ath79: Add support for TP-Link TL-WR1043N v5
Specifications:

 - QCA9563 at 775 MHz
 - 64 MB RAM Zentel A3R12E40CBF-8E
 - 16 MB flash Winbond W25Q128FVSG
 - 3 (non-detachable) Antennas / 450 Mbit
 - 1x/4x WAN/LAN Gbps Ethernet (QCA8337)
 - reset and Wi-Fi buttons

TP-Link TL-WR1043N v5 appears to be identical to the TL-WR1043ND v4,
except that the USB port has been removed and there is no longer a
removable antenna option. It also has different partitioning scheme.

The software is more in line with the Archer series in that it uses a
nested bootloader scheme.

(This has been adapted from the OpenWrt Wiki page)
<https://openwrt.org/toh/tp-link/tl-wr1043nd>

Installation on HW rev.5:

Factory firmware can be installed via the WEB interface.

Alternatively, it is also possible to use a TFTP server
for recovery purposes:
 - Rename OpenWRT or original firmware to WR1043v5_tp_recovery.bin
 - Set static IP of your PC to *192.168.0.66*
 - Router will obtain IP 192.168.0.86 for a few seconds while
   loading, when reset button pressed at power On.

And finally, there's always u-boot access through the UART.
For information visit the wiki.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[reworked commit message]
2019-05-18 16:38:18 +02:00
Adrian Schmutzler
78ea648a3a ath79: Move TL-WR1043ND v1 definition to companions
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-05-18 16:38:18 +02:00
Adrian Schmutzler
696e6069a4 ath79: Move settings specific for TP-Link TL-WR1043ND v4 to DTS
This prepares for support of v5.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-05-18 16:38:18 +02:00
Christian Lamparter
80f861ef75 build: add UBOOT_PATH to DEFAULT_DEVICE_VARS and set a default
The helper shared Build/append-uboot in include/image-commands.mk
uses it, so include this variable in DEFAULT_DEVICE_VARS.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-18 16:37:30 +02:00
Linus Walleij
76338fded0 gemini: Fix up firmware checksum on DIR-685
Using the same method as the D-Link DAP-2695 A1 we use
the "mtd" tool to augment the firmware checkum in flash
on first boot of a new firmware on the D-Link DIR-685.
We need to augment the Makefile for "mtd" to build in
the special WRGG fixup support for Gemini as well.

This works around the problem of the machine not booting
after factory install unless the sysupgrade is applied
immediately.

Based on commit e3875350f3
"ar71xx: add support for D-Link DAP-2695 rev. A1"

Cc: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-05-18 16:37:30 +02:00
Linus Walleij
30b4b7ee09 mtd: Make fixwrgg command work on DIR-685
The D-Link DIR-685 has the same problem as the
D-Link DAP-2695: when flashing the factory image, the
checksum includes the whole flashed image, even the
rootfs_data part with the end of filesystem mark.
Also the whole flashed image is stored in the flash,
so on the first boot, the whole rootfs image is loaded
into memory with the kernel.

This is fixed using the fixwrgg command to mtd, but
for this to work we need to make fixwrgg work with
the Little-Endian ARM DIR-685.

The code tries to be endian agnostic but this fails
because the WRGG image loader doesn't. On ARM, the
file size is stored in little endian format, and on
big-endian systems it is stored in big endian format,
so we can just drop all the friendly htonl() that
will make the shdr->size big endian: this will
actually break the little endian systems, and on
the big endian systems the native endianness will
still be correct.

The magic number is always stored in little endian
format however, so make sure this is always read
in LE32 format. I chose to create a straight-forward
le32_to_cpu() static inline that IMO is simple and
easy to read.

Cc: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-05-18 16:37:30 +02:00
Liu Yu
671c9d16e3 ramips: add support for HILINK HLK-7628N
Specification:

CPU:       MT7628 580 MHz. MIPS 24K
RAM:       128 MB
Flash:     32 MB
WIFI:      802.11n/g/b 20/40 MHz
Ethernet:  5 Port ethernet switch
UART:      2x

Flash instruction:
The U-boot is based on Ralink SDK so we can flash the firmware using UART:
1. Configure PC with a static IP address and setup an TFTP server.
2. Put the firmware into the tftp directory.
3. Connect the UART0 line as described on the PCB.
4. Power up the device and press 2, follow the instruction to
   set device and tftp server IP address and input the firmware
   file name. U-boot will then load the firmware and write it into
   the flash.
5. After firmware is started connect via ethernet at 192.168.1.1

Signed-off-by: Liu Yu <f78fk@live.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [removed dupped subject]
2019-05-18 13:43:55 +02:00
sven friedmann
30dcbc741d ath79: add support for EnGenius ECB1750
Specification:

- Qualcomm Atheros SoC QCA9558
- 720/600/200 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 1x 10/100/1000 Mbps Ethernet
- 3T3R 2.4 GHz (QCA9558 WMAC)
- 3T3R 5.8 Ghz (QCA9880-BR4A, Senao PCE4553AH)

https://fccid.io/A8J-ECB1750

Tested and working:

- lan, wireless, leds, sysupgrade (tftp)

Flash instructions:

1.) tftp recovery

- use a 1GbE switch or direct attached 1GbE link
- setup client ip address 192.168.1.10 and start tftpd
- save "openwrt-ath79-generic-engenius_ecb1750-initramfs-kernel.bin" as "ap.bin" in tfpd root directory
- plugin powercord and hold reset button 10secs.. "ap.bin" will be downloaded and executed
- afterwards login via ssh and do a sysuprade

2.) oem webinterface factory install (not tested)

Use normal webinterface upgrade page und select "openwrt-ath79-generic-engenius_ecb1750-squashfs-factory.bin".

3.) oem webinterface command injection

OEM Firmware already running OpenWrt (Attitude Adjustment 12.09).
Use OEM webinterface and command injection. See wiki for details.

https://openwrt.org/toh/engenius/engenius_ecb1750_1

Signed-off-by: sven friedmann <sf.openwrt@okay.ms>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[use interrupt-driven "gpio-keys" binding]
2019-05-18 13:43:55 +02:00
Jeff Kletsky
819e7946b0 ipq40xx: Add support for Linksys EA8300 (Dallas)
The Linksys EA8300 is based on QCA4019 and QCA9888 and provides three,
independent radios. NAND provides two, alternate kernel/firmware
images with fail-over provided by the OEM U-Boot.

Installation:

  "Factory" images may be installed directly through the OEM GUI.

Hardware Highlights:

  * IPQ4019 at 717 MHz (4 CPUs)
  * 256 MB NAND (Winbond W29N02GV, 8-bit parallel)
  * 256 MB RAM
  * Three, fully-functional radios; `iw phy` reports (FCC/US, -CT):
      * 2.4 GHz radio at 30 dBm
      * 5 GHz radio on ch. 36-64 at 23 dBm
      * 5 GHz radio on ch. 100-144 at 23 dBm (DFS), 149-165 at 30 dBm
      #{ managed } <= 16, #{ AP, mesh point } <= 16, #{ IBSS } <= 1
      * All two-stream, MCS 0-9
  * 4x GigE LAN, 1x GigE Internet Ethernet jacks with port lights
  * USB3, single port on rear with LED
  * WPS and reset buttons
  * Four status lights on top
  * Serial pads internal (unpopulated)

  "Linksys Dallas WiFi AP router based on Qualcomm AP DK07.1-c1"

Implementation Notes:

  The OEM flash layout is preserved at this time with 3 MB kernel and
  ~69 MB UBIFS for each firmware version. The sysdiag (1 MB) and
  syscfg (56 MB) partitions are untouched, available as read-only.

Serial Connectivity:

  Serial connectivity is *not* required to flash.

  Serial may be accessed by opening the device and connecting
  a 3.3-V adapter using 115200, 8n1. U-Boot access is good,
  including the ability to load images over TFTP and
  either run or flash them.

  Looking at the top of the board, from the front of the unit,
  J3 can be found on the right edge of the board, near the rear

      |
   J3 |
  |-| |
  |O| | (3.3V seen, open-circuit)
  |O| | TXD
  |O| | RXD
  |O| |
  |O| | GND
  |-| |
      |

Unimplemented:

    * serial1 "ttyQHS0" (serial0 works as console)
    * Bluetooth; Qualcomm CSR8811 (potentially conected to serial1)

Other Notes:

    https://wikidevi.com/wiki/Linksys_EA8300 states

        FCC docs also cover the Linksys EA8250. According to the
	RF Test Report BT BR+EDR, "All models are identical except
	for the EA8300 supports 256QAM and the EA8250 disable 256QAM."

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
2019-05-18 13:43:54 +02:00
Jeff Kletsky
b3770eaca3 mtd: base-files: Unify dual-firmware devices (Linksys)
Consistently handle boot-count reset and upgrade across
ipq40xx, ipq806x, kirkwood, mvebu

Dual-firmware devices often utilize a specific MTD partition
to record the number of times the boot loader has initiated boot.

Most of these devices are NAND, typically with a 2k erase size.
When this code was ported to the ipq40xx platform, the device in hand
used NOR for this partition, with a 16-byte "record" size. As the
implementation of `mtd resetbc` is by-platform, the hard-coded nature
of this change prevented proper operation of a NAND-based device.

* Unified the "NOR" variant with the rest of the Linksys variants

* Added logging to indicate success and failure

* Provided a meaningful return value for scripting

* "Protected" the use of `mtd resetbc` in start-up scripts so that
   failure does not end the boot sequence

* Moved Linksys-specific actions into common `/etc/init.d/bootcount`

For upgrade, these devices need to determine which partition to flash,
as well as set certain U-Boot envirnment variables to change the next
boot to the newly flashed version.

* Moved upgrade-related environment changes out of bootcount

* Combined multiple flashes of environment into single one

* Current-partition detection now handles absence of `boot_part`

Runtime-tested: Linksys EA8300

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[checkpatch.pl fixes, traded split strings for 80+ chars per line]
2019-05-18 13:43:51 +02:00
Jeff Kletsky
4bdc873a5f firmware/ipq-wifi: Extend for multi-chip boards
This package provides board-specific reference ("cal") data
on an interim basis until included in the upstream distros

While originally conceived for IPQ4019-based boards, similar needs
are appearing with three-radio devices. For some of these devices,
both a board-2.bin file needs to be supplied both for the IPQ4019
as well as for the other radio on the board.

This patch allows new or multiple overrides to be specified by:

  * Adding board name to ALLWIFIBOARDS
  * Placing file(s) in this directory named as
      board-<devicename>.<qca4019|qca9888|qca9984>
  * Adding
      $(eval $(call generate-ipq-wifi-package,<device>,<display name>))

(along with suitable package selection for the board)

At this time, QCA4019, QCA9888, and QCA9984 are supported.
Extension to other chips should be straightforward.

The existing files, board-*.bin, are "grandfathered" as QCA4019.

The package name has been retained for compatability reasons.
At this time it DEPENDS:=@TARGET_ipq40xx, limiting its visibility.

Build-tested-on: asus_map-ac2200, alfa-network_ap120c-ac,
    avm_fritzbox-7530, avm_fritzrepeater-3000, engenius_eap1300,
    engenius_ens620ext, linksys_ea6350v3, qxwlan-e2600ac-c1/-c2

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
2019-05-18 13:43:22 +02:00
Hans Dedecker
7b58c58733 netifd: update to latest git HEAD
22e8e58 interface-ip: use ptp address as well to find local address target
f1aa0f9 treewide: pass bool as second argument of blobmsg_check_attr

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-18 09:35:25 +02:00
Rosen Penev
395bef4bba libbsd: Fix compilation under ARC
The 8 year old file does not have any ARC definitions.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[updated content of the patch with version sent to upstream]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-17 21:41:43 +02:00
Luis Araneda
250bbaf360 zynq: make title consistent for all devices
Modify the title to match the following format, as it's enough
to uniquely identify a device:
<manufacturer> <model>

This matches what's done for other targets and has the
added benefit of creating a sorted-by-manufacturer list
of devices on menuconfig

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-05-17 21:41:43 +02:00
Kristian Evensen
97780e363f system: uci: Use config dir on uci_add and support add_/del_list
This commit makes three changes to the uci shell library:

* A check for UCI_CONFIG_DIR has been added to the command line when
adding anonymous sections. Without this change, adding anonymous
sections to configs not stored in /etc/config is not possible.

* Support for adding/removing items from lists were missing, so I have
added the functions uci_add_list() and uci_remove_list() to simplify
working with uci lists from scripts.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
[added missing package version bump]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-17 21:41:43 +02:00
Kristian Evensen
869376710d ramips: Add support for ZBT WE826-E
ZBT WE826-E is a dual-SIM version of the ZBT WE826. The router has the
following specifications:

- MT7620A (580 MHz)
- 128MB RAM
- 32MB of flash (SPI NOR)
- 5x 10/100Mbps Ethernet (MT7620A built-in switch)
- 1x microSD slot
- 1x miniPCIe slot (only USB2.0 bus)
- 2x SIM card slots (standard size)
- 1x USB2.0 port
- 1x 2.4GHz wifi (rt2800)
- 10x LEDs (4 GPIO-controlled)
- 1x reset button

The following have been tested and working:
- Ethernet switch
- wifi
- miniPCIe slot
- USB port
- microSD slot
- sysupgrade
- reset button

Installation and recovery:

In order to install OpenWRT the first time or recover the router, you
can use the web-based recovery system. Keep the reset button pressed
during boot and access 192.168.1.1 in your browser when your machine
obtains an IP address.  Upload the firmware to start the recovery
process.

How to swap SIMs:

You control which SIM slot to use by writing 0/1 to
/sys/class/gpio/gpio13/value. In order for the change to take effect,
you can either use AT-commands (AT+CFUN) or power-cycle the modem (write
0/1 to /sys/class/gpio/gpio14/value).

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2019-05-17 21:41:43 +02:00
Kristian Evensen
52b59a984f ramips: Add support for Head Weblink HDRM200
Head Weblink HDRM200 is a dual-sim router based on MT7620A. The detailed
specifications are:

- MT7620A (580MHz)
- 64MB RAM
- 16MB of flash (SPI NOR)
- 6x 10/100Mbps Ethernet (MT7620A built-in switch)
- 1x microSD slot
- 1x miniPCIe slot (only USB2.0 bus). Device is shipped with a SIMCOM
SIM7100E LTE modem.
- 2x SIM slots (standard size)
- 1x USB2.0 port
- 1x 2.4GHz wifi (rt2800)
- 1x 5GHz wifi (mt7612)
- 1x reset button
- 1x WPS button
- 3x GPIO-controllable LEDs
- 1x 10 pin terminal block (RS232, RS485, 4 x GPIO)

Tested:
- Ethernet switch
- Wifi
- USB slot
- SD card slot
- miniPCIe-slot
- sysupgrade
- reset button

Installation instructions:

Installing OpenWRT for the first time requires a bit of work, as the
board does not ship with OpenWRT. In addition, the bootloader
automatically reboots when installing an image over tftp. In order to
install OpenWRT on the HDRM200, you need to do the following:

* Copy the initramfs-image to your tftp-root (default filename is
test.bin) and configure networking accordingly (default server IP is
10.10.10.3, client 10.10.10.123). Start your tftp server.
* Open the board and connect to UART. The pins are exposed and clearly
marked.
* Boot the board and press 1.
* Either use the default filename and client/server IP-addresses, or
specify your own.

The image should now be loaded to memory and board boot. If the router
reboots while the image is loading, you need to try again. Once the
board has booted, copy the sysupgrade-image to the router and run
sysupgrade in order to install OpenWRT to the flash.

Notes:

- You control which SIM slot to use by writing 0/1 to
/sys/class/gpio/gpio0/value. In order for the change to take
effect, you can either use AT-commands (AT+CFUN) or power-cycle the
modem (write 0/1 to /sys/class/gpio/gpio21/value).
- RS485 is available on /dev/ttyS0.
- RS232 is available on /dev/ttyS1.
- The name of the ioX-gpios map to the labels on the casing.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
[fixed whitespace issue and merge conflict in target.mk]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-17 21:41:43 +02:00
Jeffery To
782eda9750 zlib: Use relative paths in pkg-config metadata file
The buildroot pkg-config (in staging_dir/host/bin) overrides the prefix
and exec_prefix variables in *.pc files, to supply the correct
(buildroot) paths for callers. If other variables are not defined
relative to prefix and exec_prefix, then the returned values will be
incorrect.

The default zlib.pc file generated by cmake contains absolute paths.
This patches the file to use relative paths (relative to ${prefix} and
${exec_prefix}).

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-05-17 21:41:43 +02:00
Jeffery To
3fcb709275 build: fix STAGING_DIR cleaning when filenames contain spaces
When looping through a package's STAGING_FILES_LIST (a list of
file/directory paths delimited by newlines), if the path contains
spaces, then the path will be split by the while loops, and the
file/directory will not be deleted/removed.

This sets the internal field separator to the newline only so that the
entire path is considered when deleting/removing.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-05-17 21:41:43 +02:00
Chuanhong Guo
fc553c7e4c ath79: drop unused/incomplete dts
These dts itself are incomplete (e.g. missing mtd partitions) and its
deivce support is never added to ath79 target.
Drop these unused dts for now.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-05-17 21:41:42 +02:00
Petr Štetiar
8be66c2332 ath79: ar9330: fix switch_led_disable_pins reg value
In commit e9652e1696 ("ath79: fix pinmux for ar933x devices") I've
wrongly changed desired register value to 0xf8 although it should've
been set to 0x0.

0xf8 value sets bits 3-7 (ETH_SWITCH_LEDx_EN) to 1 which actually
enables ethernet switch LEDs, so 0x0 is correct value in order to use
the pins as GPIO.

Fixes: e9652e1696 ("ath79: fix pinmux for ar933x devices")
Reported-by: Chuanhong Guo <gch981213@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-17 21:41:42 +02:00
Petr Štetiar
e2c0a2cb95 ath79: archer-x7-v5: sync ar8327 initial reg values with ar71xx
Simply dumped content of this regs in ar71xx and wrote them to DTS, as a
result port 6 on the switch will appear disconnected as on Archer C7v4.

[AS: testing and PORT6_STATUS fix]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-17 21:41:42 +02:00
Koen Vandeputte
c4e3fde486 kernel: bump 4.19 to 4.19.43
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-17 11:21:02 +02:00
Koen Vandeputte
6c3584b61c kernel: bump 4.14 to 4.14.119
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>
2019-05-17 11:21:02 +02:00
Koen Vandeputte
bbbfc895b1 kernel: bump 4.9 to 4.9.176
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-17 11:21:02 +02:00
Hans Dedecker
5546fe9fc3 odhcpd: update to latest git HEAD (FS#2242)
41a74cb config: remove 'ignore' config option
c0c8034 treewide: init assignment lists head
f98b7ee config: use list safe iterator in lease_delete
3c9810b dhcpv4: fix lease ordering by ip address
b60c384 config: use multi-stage parsing of uci sections
a2dd8d6 treewide: always init interface list heads during initialization
a17665e dhcpv4: do not allow pool end address to overlap with broadcast address
6b951c5 treewide: give file descriptors safe initial value
39e11ed dhcpv4: DHCP pool size is off-by-one
4a600ce dhcpv4: add support for Parameter Request List option 55
09e5eca dhcpv4: fix DHCP packet size
3cd4876 ndp: fix syslog flooding (FS#2242)
79fbba1 config: set default loglevel to LOG_WARNING

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-17 08:54:30 +02:00
Hans Dedecker
5c742c86ef glibc: update to latest 2.27 commit
f9c3c12f336 Fix crash in _IO_wfile_sync (bug 20568)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-16 19:05:57 +02:00
Richard Musil
71ab2c9d17 imagebuilder: new DISABLED_SERVICES make variable
Adds a new variable DISABLED_SERVICES to ImageBuilder Makefile, which
defines a list of services (installed as /etc/init.d/*) to be disabled
during the build of a custom image (normally all are enabled).

It comes handy when a particular service should not be run under normal
circumstances, but should be ready in the image for situations when it
might be needed.

Signed-off-by: Richard Musil <risa2000x@gmail.com>
2019-05-15 13:34:24 +02:00
Adrian Schmutzler
33ce2ad3e7 ath79: Add missing reset button for TP-Link CPE210 v2 and v3
Reset button support seems to be missing in ath79.

Run-tested on CPE210 v2.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-05-15 13:34:24 +02:00
Paul Wassi
e9652e1696 ath79: fix pinmux for ar933x devices
Properly disable the SoC's internal Switch LEDs on the pinmux.
Devices that previously called ath79_gpio_function_disable for
the switch LEDs, just need to reference switch_led_pins in the
pinctrl-0 property of the gpio-leds node.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
[changed desired pinctrl register value from 0x1f to proper 0xf8]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[renamed pinmux name to switch_led_disable_pins to make purpose more clear]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-15 13:34:24 +02:00
Petr Štetiar
0aa59e81b3 ath79: archer-x7-v5: remove confusing ar8327 initvals for LEDs
This devices have LEDs connected to the SoC's GPIOs, so it makes no
sense to fiddle with ar8327 LED regs.

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-15 13:34:24 +02:00
Adrian Schmutzler
f32e05c541 ar71xx: Fix network setup for TP-Link Archer C25 v1
Network for the Archer C25 v1 is set up without switch for no
obvious reason. The LED setup is even done switch-based.

This patch changes network setup so a switch is created.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-05-15 13:34:24 +02:00
Tomasz Maciej Nowak
e7756974aa tegra: add vendor string to device name
for better identification. Also create SUPPORTED_DEVICES string from it
which corresponds to dts compatible string.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-15 13:34:23 +02:00
Josef Schlehofer
eb7eed416b mvebu: add kmod-i2c-mux-pca954x for Turris Omnia
The driver is for the I2C mux.
Schematic available at https://doc.turris.cz/doc/_media/rtrom01-schema.pdf

Signed-off-by: Josef Schlehofer <josef.schlehofer@nic.cz>
Tested-by: Rosen Penev <rosenp@gmail.com>
2019-05-15 13:34:23 +02:00
Rosen Penev
2f97797471 nftables: Fix compilation with uClibc-ng
Missing header for va_list.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[updated with upstream version of the patch]
2019-05-15 13:34:23 +02:00
Stijn Segers
5cd49395d3 lantiq/xrx200: enable initramfs images
Commit eae6cac6a3 ("lantiq: add support for AVM FRITZ!Box 7362 SL"), but
one needs an initramfs image to flash OpenWrt from stock firmware (as
described in the commit log). This patch has the initramfs image built
by default.

Thanks to blogic (for pointing to the FEATURES declaration in the target
Makefiles) and Musashino on the forum for suggesting
config/Config-images.in needed editing too. While at it, reorder the
TARGET_INITRAMFS_COMPRESSION_LZMA declarations alphabetically.

This patch will result in initramfs images for all lantiq subtargets
that have the ramdisk flag set. I tested on the falcon and ase
subtargets, which lack that flag, to confirm they don't produce any
initramfs images with this patch - which they do not.

Given the limited scope of the lantiq (sub)target(s), blogic indicated
this should be OK.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[fixed the wrong reference to eae6cac6a3 commit]
2019-05-15 13:34:23 +02:00
Deng Qingfang
172b02c05f linux-firmware: update to 20190416
Update linux-firmware to 20190416, which includes updated firmwares e.g. for ath10k
Also switch to official tarball source.

The following firmware files we use are updated in this change:
ath10k/QCA6174/hw3.0/board-2.bin
ath10k/QCA9888/hw2.0/firmware-5.bin
ath10k/QCA988X/hw2.0/firmware-5.bin
ath10k/QCA9984/hw1.0/firmware-5.bin
mrvl/sd8887_uapsta.bin
mrvl/pcie8897_uapsta.bin
iwlwifi-8000C-36.ucode
iwlwifi-8265-36.ucode

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-05-14 21:59:38 +02:00
Hauke Mehrtens
38666e8ae4 malta: Deactivate MIPS O32 and N32 support
OpenWrt is completely compiled from sources using a 64 bit compiler, we
do not need support for the old 32 bit MIPS interface on 64 Bit CPUs,
deactivate it.

Fixes: 46af22de16 ("kernel: Remove CONFIG_COMPAT")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 21:50:42 +02:00
Hauke Mehrtens
529c3477b9 octeon: Deactivate MIPS O32 and N32 support
OpenWrt is completely compiled from sources using a 64 bit compiler, we
do not need support for the old 32 bit MIPS interface on 64 Bit CPUs,
deactivate it.

Fixes: 46af22de16 ("kernel: Remove CONFIG_COMPAT")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 21:50:42 +02:00
Hauke Mehrtens
77401cdc40 octeon: Refresh kernel configuration
This refreshes the kernel configuration with "make kernel_oldconfig"

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 21:50:27 +02:00
Hauke Mehrtens
9ab4d74b5f kernel: Move some DSA config options to generic config
This moves some new configuration options to the generic kernel
configuration instead of configuring them for each target on our own.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 21:11:58 +02:00
Hauke Mehrtens
5ee62b23f8 valgrind: Add support for ARM64 architecture
valgrind also works on the ARM64 architecture, build it also for such CPUs.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 20:28:41 +02:00
Hauke Mehrtens
a489f72ab5 valgrind: Update to version 3.15.0
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 20:28:34 +02:00
Hauke Mehrtens
e669cf7f6a strace: Update to version 5.0
The removed patch was merged upstream.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 20:28:26 +02:00
Hauke Mehrtens
02d4d36d4b iperf: Update to version 2.0.13
The removed patches are already integrated in the upstream version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-14 20:28:18 +02:00
Jonas Gorski
3611cfe73d brcm63xx: fixup broken patch after kernel bump
Fixes the following compilation issue that was introduced with the bump
to 4.14.118:

  CC      drivers/gpio/gpiolib-of.o
drivers/gpio/gpiolib-of.c: In function 'of_gpiochip_add':
drivers/gpio/gpiolib-of.c:510:12: error: too few arguments to function 'of_gpiochip_scan_gpios'
   status = of_gpiochip_scan_gpios(chip);
            ^~~~~~~~~~~~~~~~~~~~~~
drivers/gpio/gpiolib-of.c:247:5: note: declared here
 int of_gpiochip_scan_gpios(struct gpio_chip *chip, unsigned int start,
     ^~~~~~~~~~~~~~~~~~~~~~
scripts/Makefile.build:326: recipe for target 'drivers/gpio/gpiolib-of.o' failed

Fixes: 09050b6fe2 ("kernel: bump 4.14 to 4.14.118")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2019-05-14 13:15:11 +02:00
Koen Vandeputte
86fd8cb435 kernel: bump 4.19 to 4.19.42
Refreshed all patches.

Remove upstreamed:
- 060-v5.1-serial-ar933x_uart-Fix-build-failure-with-disabled-c.patch
- 400-v5.2-leds-trigger-netdev-fix-refcnt-leak-on-interface-ren.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-13 19:17:41 +02:00
Koen Vandeputte
09050b6fe2 kernel: bump 4.14 to 4.14.118
Refreshed all patches.

Remove upstreamed:
- 060-v5.1-serial-ar933x_uart-Fix-build-failure-with-disabled-c.patch

Altered:
- 143-gpio-fix-device-tree-gpio-hogs-on-dual-role-gpio-pin.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-13 19:17:41 +02:00
Koen Vandeputte
461ef39345 kernel: bump 4.9 to 4.9.175
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-13 19:17:41 +02:00
Koen Vandeputte
762361a79c brcm63xx: remove kernel 4.9 support
This target got bumped to 4.14 a long time ago
in commit: 2308b87204

Remove all leftover 4.9 files.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-13 19:17:41 +02:00
Hans Dedecker
06403981e1 ppp: update to version 2.4.7.git-2019-05-06
fcb076c Various fixes for errors found by coverity static analysis (#109)
d98ab38 Merge branch 'pppd_print_changes' of https://github.com/nlhintz/ppp into nlhintz-pppd_print_changes

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-13 15:34:42 +02:00
Hauke Mehrtens
655fff1571 kernel: Fix build of omap target
CONFIG_HW_RANDOM_OMAP is not set to any value after kmod-random-omap was
removed, add the configuration option to the generic configuration.

Fixes: cd3b298533 ("omap24xx: Remove unmaintained target")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-12 00:05:04 +02:00
Tomasz Maciej Nowak
de3387654b mvebu: add images for additional ESPRESSObin boards
This commit adds support for different iterations of ESPRESSObin.
The added variants are:

ESPRESSObin with soldered eMMC,

ESPRESSObin V7, compared to V5 some passive elements changed and ethernet
ports labels positions have been reversed,

ESPRESSObin V7 with soldered eMMC.

Please refer to:
584d7c5 ("mvebu: new subtarget cortex A53")
for instruction how to boot OpenWrt image placed on SD card. It is
advised for owners of V5 and previous with bootloader based on U-Boot
2015.01, to upgrade the latest version available at:
http://espressobin.net/tech-spec.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
ee96fa15b1 mvebu: use device-tree board detection
Convert whole target to Device Tree based board detection instead of
identifying devices by dts file name. With this we can drop mvebu.sh
translation script and rely on common method for model detection.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
a39d2a8053 mvebu: align device names to vendor_device format
Add vendors in device names and also rename few device names, for easier
identyfying potential firmware to flash. The vendor and device string is
mainly derived from model/compatipble string in dts from particular
device, but since not all devices are well described, some of the renames
follow marketing names.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
30b5554411 mvebu: image: don't create unnecessarily shell variables
Use make syntax to pass the U-Boot image location and boot with root
partitions size, instead of relying on shell functions and variables.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
9509a6df0b mvebu: image: improve readability of device recipes
Drop overly complex amount of defines wich are referenced in the same
devices pool and move image recipes to common define, since devices not
using them overwrite it.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
fb005d688e mvebu: image: introduce BOOT_SCRIPT variable
All of U-Boot scripts repeat the same pattern with only Device Tree blob
name changing for respective device. Therefore create generic scripts
which will be altered on demad by image build process, and create
BOOT_SCRIPT variable which can be added to device recipe and will allow
referencing the same script by many device recipes. This will allow to
slim down the ammount of files in buildroot tree and avoid needlessly
incrementing amount of boot scripts if new devices will be added.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
ef384c68e7 mvebu: image: stack repeated variables
All of arm64 devices have part of variables repeatedly defined. Stack
them to common define, and reference it in each device recipe.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Tomasz Maciej Nowak
f0c2bac252 mvebu: remove unnecessary code building dtbs
Even if dts is not included in upstream Makefile, it is built anyway by
recipe specified in include/image.mk. Also remove Build/dtb, it's not
used since 3f72f3a ("mvebu: clearfog: include DTB for all variants in
image").

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 23:11:04 +02:00
Alexandru Ardelean
aecd0e09c9 toolchain/binutils: use default Host/Configure rule
This seems to have been omitted over-time.
Using the default Host/Configure seems to work fine.

The last patches to have touched this in a major way were ~10 years ago:
33a0eb3613 ("cosmetic & coherency fixes")
7eb1589875 ("build system refactoring in preparation for allowing
              packages to do host-build steps")

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2019-05-11 23:10:10 +02:00
Rosen Penev
0b26382533 uClibc++: Update to 0.2.5
Switched to xz archives for smaller size.

Removed upstreamed patches.

Reorganized Makefile a little bit for clarity. Build/Prepare is not useful
anymore. Upstream converted the file to LF.

Refreshed config.

Removed -ansi option from the original CFLAGS as this was causing long
long support to be missing.

Removed fPIC. We have the macro $(FPIC) already used. No point in setting
fpic and fPIC together.

Removed pedantic -Wlong-long warnings as they are not useful.

Removed -std=gnu++98. Not only is it unnecessary (it compiles against all
standards), it actually results in a size increase. 75843 vs. 75222 (gcc
in OpenWrt defaults to g++14).

Added --gc-sections to linker flags to reduce size: 72653 vs 75222.

Removed warn linker options. They have been upstreamed.

Tested on Archer C7v2 and GnuBee PC1.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-05-11 23:10:10 +02:00
Rosen Penev
e49b6bb618 xfsprogs: Replace valloc with posix_memalign
Fixes compilation under uClibc-ng.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-05-11 23:10:10 +02:00
Jeff Kletsky
3bc8ed91d4 generic-4.19: Backport spi-nand support for GigaDevice A/E
This patch backports verbatim the commits from Linux 5.0 and 5.1
that implemented support for GigaDevice SPI NAND A and E variants.

Supported only in Linux 4.19 and later as based on the upstream
drivers/mtd/nand/spi/ framework.

mtd-spinand-add-support-for-GigaDevice-GD5FxGQ4xA.patch
commit c93c613214ac (5.0)

mtd-spinand-Add-support-for-GigaDevice-GD5F1GQ4UExxG.patch
commit c40c7a990a46 (5.1)

Run-tested-on: GL.iNet AR750S

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
2019-05-11 23:10:10 +02:00
Hauke Mehrtens
747587ec61 kernel: Reorder generic configuration
This was done like this:
./scripts/kconfig.pl '+' target/linux/generic/config-4.14 /dev/null > target/linux/generic/config-4.14-new
mv target/linux/generic/config-4.14-new target/linux/generic/config-4.14

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
87ac3e801d gemini: Make kernel text and rodata read-only
This is activate for all other targets except gemini, also activate it
there.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
f7426b13fa cns3xxx: Activate CONFIG_CPU_SW_DOMAIN_PAN
This is already activated for all other ARM targets

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
2164a7bf15 x86: Activate CONFIG_X86_SMAP
This activates "Supervisor Mode Access Prevention". modern CPUs will
prevent the kernel code from accessing any data from the userspace
without the usage of copy_to_user() or copy_from_user()

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
75eb8a146d kernel: Deactivate CONFIG_BINFMT_MISC
CONFIG_BINFMT_MISC allows it to add support for new executable formats
to the kernel from user space, the kernel will then detect for example a
java binary and call the java execution program automatically. I am not
aware that this feature is used in OpenWrt and this could be used to
exploit something. Deactivate it for all targets for now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
d4ad7e6548 kernel: Do not set CONFIG_DEVMEM or CONFIG_DEVKMEM
This is deactivated by default and should be manually activated in the
OpenWrt kernel configuration

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
57ec21ef3d kernel: Activate CONFIG_SYN_COOKIES for all targets
Some targets deactivated CONFIG_SYN_COOKIES, for unknown reasons, use
the default setting from the generic configuration which activates
CONFIG_SYN_COOKIES.

This should prevent SYN flooding.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
46af22de16 kernel: Remove CONFIG_COMPAT
This removes support for executing old 32 bit applications on 64 bit ARM
and MIPS kernels.
On OpenWrt we normally compile all the user space applications on our
own and do not support third party binary only modules especial not 32
bit applications on 64 bit CPUs.

This reduces the attack surface on such systems and should also save
some memory.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
7099bf0926 kernel: Remove CONFIG_DEBUG_RODATA and CONFIG_DEBUG_SET_MODULE_RONX
These were renamed to CONFIG_STRICT_KERNEL_RWX and CONFIG_STRICT_MODULE_RWX and are
activated in kernel 4.14 and later by default.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
32eb66881c kernel: Activate CONFIG_ARM64_SW_TTBR0_PAN
This activates "Emulate Privileged Access Never using TTBR0_EL1
switching" on ARM64.

This should prevent the kernel from reading code from user space in
kernel context.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Hauke Mehrtens
9b1239451d Kernel: Activate CONFIG_HARDENED_USERCOPY
This adds additional checks to the copy_from_user() and copy_to_user()
functions. The details are described in this article:
https://lwn.net/Articles/695991/

This should only have a very small performance impact on system calls
and should not affect routing performance.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-11 17:15:41 +02:00
Christian Lamparter
bdaaf66e28 utils/spidev_test: build package directly from Linux
Jeff Kletsky noted in his patch titled:
"utils/spidev_test: Update to current source from upstream Linux"
that the spidev_test utility OpenWrt ships is severly out of date.

Instead of updating the spidev_test.c from the current kernel,
this patch replaces the package building code to utilize the
very file that gets shipped with the kernel we compiling for
anyway much like the "perf" package already does.

Reported-by: Jeff Kletsky <git-commits@allycomm.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-05-11 16:37:11 +02:00
Adrian Schmutzler
d8ec6dee49 ath79: Add missing read-only properties
Add some read-only properties to protect partitions from
accidental changes.

Also fixed two whitespaces error on the way.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-05-11 16:37:11 +02:00
Lucian Cristian
4582fe7c14 lldpd: add option to edit hostname
also fixes the annoying repeating syslog
lldp[]: unable to get system name

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-05-11 16:37:11 +02:00
Lucian Cristian
cb30971a44 lldpd: update to 1.0.3
Support for CDP PD PoE

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-05-11 16:37:11 +02:00
Robert Marko
671d8752d1 ath10k-ct: Update to current version
This patch updates ath10k-ct to current version.
Changes are:
     ath10k-ct:  Fix printing PN in peer stats.

     Previous logic was incorrect.  Also add set-special API to enable
     returning PN.

Patches refreshed and tested on 8devices Jalapeno dev board(IPQ4019)

Signed-off-by: Robert Marko <robimarko@gmail.com>
2019-05-11 16:37:11 +02:00
Robert Marko
61f4ceb146 ath10k-firmware: update Candela Tech firmware images
Release notes since last time:

Release notes for wave-1:

2019-04-02: Support some get/set API for eeprom rate power tables.
	    Mostly backported from 10.2

2019-04-02: Support adaptive-CCA, backported from 10.2

2019-04-02: Support adding eeprom configAddr pairs via the
            set-special API. These configAddrs can be used to change
            the default register settings for up to 12 registers.

2019-05-03: Fix tx-power settings for 2x2, 3x3 rates.
	    Original logic I put in back in 2016 set 2x2 and 3x3 lower
	    than the needed to be when using most NICs (very high
	    powered NICs would not have been affected I think, not sure
	    any of those exist though.)

	    This improves throughput for 2x2 and 3x3 devices,
	    especially when the signal is weaker.

Release notes for wave-2:

2019-04-08: When setting keys, if high bit of high value of
	    key_rsc_counter is set to 0x1, then the lower 48 bits will
	    be used as the PN value.  By default, PN is set to 1 each
	    time the key is set.

2019-04-08: Pack PN into un-used 'excretries' aka
	    'num_pkt_loss_excess_retry' high 16 bits.
	    This lets us report peer PN, but *only* if driver has
	    previously set a PN when setting key (or set-special cmd is
	    used to enable PN reporting).

	    This is done so that we know the driver is recent
            enough to deal with the PN stat reporting.

2019-04-16: Support specifying tx rate on a per-beacon packet.
	    See ath10k_wmi_op_gen_beacon_dma and
	    ath10k_convert_hw_rate_to_rate_info for API details.

	     Driver needs additional work to actually enable this
	     feature currently.

2019-04-30: Compile out tx-prefetch caching logic.
	    It is full of tricky bugs that cause tx hangs.
	    I fixed at least one, but more remain and I have wasted too
	    much time on this already.

2019-05-08: Start rate-ctrl at mcs-3 instead of mcs-5.
	    This significantly helps DHCP happen quickly, probably
	    because the initial rate being too high would take a while
	    to ramp down, especially since there are few packets sent
	    by the time DHCP needs to start.

	    This bug was triggered by me decreasing retries of 0x1e
	    (upstream default) to 0x4.  But, I think it is better to
	    start with lower initial MCS instead of always having a
	    very high retry count.

Tested on 8devices Jalapeno dev board(IPQ4019)

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [neatify]
2019-05-11 16:37:11 +02:00
David Bauer
a4dc519888 ramips: fix R6120 factory image
The factory firmware omits the JFFS2 end-marker while flashing via
web-interface. Add a 64k padding after the marker fixes this problem.

When the end-marker is not present, OpenWRT won't save the overlayfs
after initial flash.

Reported-by: Andreas Ziegler <dev@andreas-ziegler.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
2019-05-11 16:37:11 +02:00
Klaus Kudielka
0a11c87e46 mvebu: fix board_name condition in 79_move_config
The correct board_name for the Turris Omnia is armada-385-turris-omnia.

Fixes: 4e8345ff68 ("mvebu: base-files: autodetect upgrade device")
Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
2019-05-11 16:37:11 +02:00
Klaus Kudielka
ad62247800 base-files: improve lib/upgrade/common.sh
Recently, upgrade device autodetection has been added to the mvebu target.
This exposes some shortcomings of the generic export_bootdevice function,
e.g. on the Turris Omnia: export_bootdevice silently reports the root
partition to be the boot device. This makes the sysupgrade process fail at
several places.

Fix this by clearly distinguishing between /proc/cmdline arguments which
specify the boot disk, and those which specify the root partition. Only in
the latter case, strip off the partition, and do it consistently.
root=PARTUUID=<pseudo PARTUUID for MBR> (any partition) and root=/dev/*
(any partition) are accepted.

The root of the problem is that the *existing* export_bootdevice in
/lib/upgrade/common.sh behaves differently, if the kernel is booted with
root=/dev/..., or if it is booted with root=PARTUUID=...

In the former case, it reports back major/minor of the root partition,
in the latter case it reports back major/minor of the complete boot disk.

Targets, which boot with root=/dev/... *and* use export_bootdevice /
export_partdevice, have added workarounds to this behaviour, by specifying
*negative* increments to the export_partdevice function.

Consequently, those targets have to be adapted to use positive increments,
otherwise they are broken by the change to export_bootdevice.

Fixes: 4e8345ff68 ("mvebu: base-files: autodetect upgrade device")
Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
Tested-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-11 16:37:11 +02:00
Steve Glennon
6411eac5da ipq40xx: add factory image for EnGenius ENS620EXT
Extended  mksenaofw to support new "capwap" header structure.
This supports flashing from factory 3.0.0, 3.0.1, 3.1.0 and 3.5.5
firmware.

Note that the factory image format changes for 3.1 and later firmware,
and that the 3.1.0 and 3.5.5 Engenius firmware will refuse the
factory_30.bin file. Similarly, the 3.0.0 and 3.0.1 Engenius firmware
will refuse the factory_35.bin file.

Flashing from the Engenius 3.1.0 firmware with the factory_35.bin
firmware has not been tested, as 3.1.0 firmware (Engenius "middleFW")
is only intended as part of the upgrade path to 3.5.5 firmware.

Modified ipq40xx image Makefile to appropriately invoke mksenaofw
with new parameters to configure the capwap header.

Note that there is currently no method to return to factory firmware,
so this is a one-way street.

Path from factory 3.0.0 and 3.0.1 (EnGenius) software to OpenWrt is
to navigate to 192.168.1.1 on the stock firmware and navigate to the
firmware menu. Then copy the URL you have for that page, something like
http://192.168.1.1/cgi-bin/luci/;stok=12345abcdef/admin/system/flashops
and replace the trailing /admin/system/flashops with just /easyflashops

You should then be presented with a simple "Firmware Upgrade" page.
On that page, BE SURE TO CLEAR the "Keep Settings:" checkbox.

Choose the openwrt-ipq40xx-engenius_ens620ext-squashfs-factory_30.bin,
click "Upgrade" and on the following page select "Proceed".

Path from factory 3.5.5 (EnGenius) software to OpenWrt is simply to
use the stock firmware update menu. Choose the
openwrt-ipq40xx-engenius_ens620ext-squashfs-factory_35.bin and click
"Upload" and "Proceed".

The device should then flash the OpenWrt firmware and reboot. Note
that this resets the device to a default configuration with Wi-Fi
disabled, LAN1/PoE acting as a WAN port (running DHCP client) and LAN2
acting as a LAN port with a DHCP server on 192.168.1.x (AP is at
192.168.1.1)

Signed-off-by: Steve Glennon <s.glennon@cablelabs.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[sorry, for unfixing the 80-lines eyesores.]
2019-05-11 16:37:11 +02:00
Steve Glennon
9b0eb4d260 ipq40xx: Fix reboot on EnGenius ENS620EXT
This patch works around an issue where reboot would cause the AP
to power down and not reboot.

The ipq4019 restart controller reboot causes the system
to power down and not recover. Fix is to disable the restart
controller in the device tree and the device reverts to
using the watchdog to perform the reset.

The real problem is due to the buggy bootloader that ships
with the device. Steve Glennon reported in the PR for this
patch: <https://github.com/openwrt/openwrt/pull/2009> that:

"the problem was due to a bad u-boot that ships with the device.

Using the u-boot that comes with 3.5.5.3 EnGenius factory
software now allows the old code (using the do_msm_reboot)
to reboot successfully.

On to the bad news:
Well 3.5.5.3 is a bad path. Finally managed to recover. You
CANNOT use prior EnGenius firmware to downgrade.

Findings:

* They now password protect the serial console with a new, unkown
  password.
* They changed the protection on their walled-garden. I have to
  use the ssh admin@ip /bin/sh --login to get out of their
  walled-garden.
* Attempts to flash the original 3.0.0 or 3.0.1 EnGenius firmware
  fail through the UI and sysupgrade. Their firmware update GUI now
  seem to detect regular openwrt images, but they fail to flash
  Attempts to flash a normal OpenWrt image with sysupgrade fail.
[..]

Attempts to sysupgrade with EnGenius firmware fail with the same
"mandatory section(s) missing" error, so you cannot downgrade to
3.0.0 or 3.0.1."

Signed-off-by: Steve Glennon <s.glennon@cablelabs.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [added valuable
findings from github discussion]
2019-05-11 16:37:11 +02:00
Alberto Bursi
4de0a61a62 kirkwood: enable sata port multiplier
Marvell sata controllers in all kirkwood SoCs support
sata port multipliers, just like mvebu.
Enable this feature in the default kernel config
so it is available in normal builds.
tested and working on nsa310b

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2019-05-11 16:37:11 +02:00
Felix Fietkau
85017c40f4 build: add a config option for enabling a testing version of the target kernel
If the target supports a newer kernel version that is not used by default
yet, it can be enabled with this option

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-05-11 11:37:10 +02:00
Daniel Golle
9cb3a3255e toolchain/nasm: update to version 2.14
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-05-11 01:30:00 +02:00
Deng Qingfang
367813b9b1 ramips: mt7620: fix dependencies
MT7620 integrated WMAC does not need RT2x00 PCI driver or firmware
Also corrected kmod-eeprom-93cx6 and kmod-lib-crc-itu-t dependencies
according to original Kconfig and lsmod output

This will remove some unnecessary packages from MT7620 target to
save some space

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[75 characters per line in the commit message]
2019-05-11 01:05:11 +02:00
Hans Dedecker
290a7dc0c7 procd: fix compile issue
1361b97 container: include stdbool.h

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-09 18:33:39 +02:00
Hans Dedecker
165d598521 netifd: update to latest git HEAD
f6fb700 interface-ip: fine tune IPv6 mtu warning
975a5c4 interface: tidy ipv6 mtu warning

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-08 22:15:19 +02:00
Hans Dedecker
792c9fc8ca procd: update to latest git HEAD
9b35439 procd: detect lxc container and behave accordingly

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-08 20:52:45 +02:00
Koen Vandeputte
bc85640cdc kernel: bump 4.19 to 4.19.38
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-06 12:43:01 +02:00
Koen Vandeputte
07720c392f kernel: bump 4.14 to 4.14.115
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>
2019-05-06 12:43:01 +02:00
Koen Vandeputte
fca966d7b7 kernel: bump 4.9 to 4.9.172
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-06 12:43:01 +02:00
Rosen Penev
4760541027 elfutils: Fix compile with uClibc-ng
Probably glibc too. argp_help takes a char *. not const char *.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[updated with upstream version of the patch]
2019-05-05 21:11:01 +02:00
Tomasz Maciej Nowak
b18d1d5d3f uboot-tegra: bump to 2019.04
This version has important change for tegra boards which is reserving
32MB memory for Linux kernel instead of current 16MB.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-05-05 21:11:01 +02:00
Jeff Kletsky
2437418cd5 ath79: glinet_gl-ar750s: Use QCA9887 firmware
The GL.iNet AR750S is based around the QCA9563
and requires the QCA9887 firmware for operation.

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
2019-05-05 21:11:01 +02:00
Joachim Fünfer
edf1d6264b ar71xx: fix failsafe interface for TL-WR940nv6
Switches failsafe mode interface from WAN to LAN ports.

Tested on TL-WR940Nv6.0 and TL-WR940Nv6.1

Signed-off-by: Joachim Fünfer <joachim.fuenfer@stusta.net>
2019-05-05 21:11:01 +02:00
David Bauer
3364af629d ath79: fix OCEDO Raccoon 10Mbit PLL value
This corrects the PLL value for 10 Mbit/s links on the OCEDO Raccoon.
Prior to this patch, 10 Mbit/s links would not transmit data.

It is worth mentioning that the vendor firmware used the same PLL
settings and 10Mbit/s was also not working there.

All other link-modes are working correctly without any packet loss.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-05-05 21:11:01 +02:00
Arthur Skowronek
fc23bcdaa2 base-files: add service_stopped as a post stop hook
Purpose of these changes is to introduce a hook for post service
shutdown in a similar fashion to the existing hook service_started. I
found it to be useful to specify a hook that is called once the service
has been stopped and not before the service is stopped like the
stop_service hook does.

The concrete use case I have for this is that I'm running a binary that
takes over the hardware watchdog timer. Said binary unfortunately can
not use ubus directly to tell procd to hand over the watchdog timer so
this has to be done in the service file for the binary in question. In
order to support a clean handover of the watchdog timer back to procd,
the service init script has to dispatch the ubus invocation once the
binary in question has been stopped.

Signed-off-by: Arthur Skowronek <ags@digineo.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[added commit message, use the same form as other hooks]
2019-05-05 21:11:01 +02:00
Rosy Song
3b4c44aa8b ar71xx: mute script error in ar922x-led-fix script
This commit fixes following script error in syslog:

 cat: can't open '/sys/devices/platform/ehci-platform/usb1/1-1/1-1.2/1-1.2:1.4/ieee80211/phy*/name': No such file or directory
 sh: add: unknown operand
 sh: add: unknown operand

Signed-off-by: Rosy Song <rosysong@rosinson.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[commit subject and message tweaks]
2019-05-05 21:11:01 +02:00
Petr Štetiar
51216b4f83 kernel: Rename UPROBE_EVENT to UPROBE_EVENTS
Upstream has renamed UPROBE_EVENT to UPROBE_EVENTS in the following
commit:

 commit 6b0b7551428e4caae1e2c023a529465a9a9ae2d4
 Author: Anton Blanchard <anton@samba.org>
 Date:   Thu Feb 16 17:00:50 2017 +1100

     perf/core: Rename CONFIG_[UK]PROBE_EVENT to CONFIG_[UK]PROBE_EVENTS

     We have uses of CONFIG_UPROBE_EVENT and CONFIG_KPROBE_EVENT as
     well as CONFIG_UPROBE_EVENTS and CONFIG_KPROBE_EVENTS.

     Consistently use the plurals.

So I'm changing it to this plural option in order to make kconfig happy
and stop asking about it if kernel is compiled with verbose logging:

 Enable uprobes-based dynamic events (UPROBE_EVENTS) [Y/n/?] (NEW)

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-05 14:41:49 +02:00
Petr Štetiar
97d3f800a8 config: kernel: Add KPROBE_EVENTS config option
Upstream has renamed KPROBE_EVENT to KPROBE_EVENTS in the following
commit:

 commit 6b0b7551428e4caae1e2c023a529465a9a9ae2d4
 Author: Anton Blanchard <anton@samba.org>
 Date:   Thu Feb 16 17:00:50 2017 +1100

     perf/core: Rename CONFIG_[UK]PROBE_EVENT to CONFIG_[UK]PROBE_EVENTS

     We have uses of CONFIG_UPROBE_EVENT and CONFIG_KPROBE_EVENT as
     well as CONFIG_UPROBE_EVENTS and CONFIG_KPROBE_EVENTS.

     Consistently use the plurals.

So I'm adding this plural option in order to make kconfig happy and stop
asking about it if kernel is compiled with verbose logging:

  Enable kprobes-based dynamic events (KPROBE_EVENTS) [Y/n/?] (NEW)

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-05-05 14:41:49 +02:00
Hauke Mehrtens
1325e74e0c kernel: Remove support for kernel 3.18
No target is using kernel 3.18 anymore, remove all the generic
support for kernel 3.18.

The removed packages are depending on kernel 3.18 only and are not used on
any recent kernel.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 22:41:38 +02:00
Hauke Mehrtens
675832de79 xburst: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
cd3b298533 omap24xx: Remove unmaintained target
This target only supports kernel 4.1, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
8ba38cc145 ppc44x: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
406a3826dc ppc40x: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
65cdfbabde mcs814x: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
e6f9a8e89b au1000: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
c35425f418 adm8668: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Hauke Mehrtens
2d0a2ff1e0 adm5120: Remove unmaintained target
This target only supports kernel 3.18, which is not supported in OpenWrt
any more for multiple releases. It also looks like there is no active
maintainer for this target.
Remove the code and all the packages which are only used by this target.

To add this target to OpenWrt again port it to a recent and supported
kernel version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-05-03 21:27:12 +02:00
Koen Vandeputte
49dca520fb brcm2708: fix renamed definition (FS#2265)
This target adds an alternative mmc driver using a patch.
Within this patch, a definition got renamed upstream.

Change it to fix following compile error:

  CC      drivers/mmc/host/bcm2835-mmc.o
In file included from ./include/linux/kernel.h:14:0,
                 from ./include/linux/delay.h:22,
                 from drivers/mmc/host/bcm2835-mmc.c:25:
drivers/mmc/host/bcm2835-mmc.c: In function 'bcm2835_mmc_dumpregs':
drivers/mmc/host/bcm2835-mmc.c:254:27: error: 'SDHCI_ACMD12_ERR' undeclared (first use in this function); did you mean 'SDHCI_CMD_CRC'?
   bcm2835_mmc_readw(host, SDHCI_ACMD12_ERR),
                           ^
./include/linux/printk.h:137:18: note: in definition of macro 'no_printk'
    printk(fmt, ##__VA_ARGS__); \
                  ^~~~~~~~~~~
drivers/mmc/host/bcm2835-mmc.c:253:2: note: in expansion of macro 'pr_debug'
  pr_debug(DRIVER_NAME ": AC12 err: 0x%08x | Slot int: 0x%08x\n",
  ^~~~~~~~
drivers/mmc/host/bcm2835-mmc.c:254:27: note: each undeclared identifier is reported only once for each function it appears in
   bcm2835_mmc_readw(host, SDHCI_ACMD12_ERR),
                           ^
./include/linux/printk.h:137:18: note: in definition of macro 'no_printk'
    printk(fmt, ##__VA_ARGS__); \
                  ^~~~~~~~~~~
drivers/mmc/host/bcm2835-mmc.c:253:2: note: in expansion of macro 'pr_debug'
  pr_debug(DRIVER_NAME ": AC12 err: 0x%08x | Slot int: 0x%08x\n",
  ^~~~~~~~
scripts/Makefile.build:326: recipe for target 'drivers/mmc/host/bcm2835-mmc.o' failed
make[8]: *** [drivers/mmc/host/bcm2835-mmc.o] Error 1

Upstream commit:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v4.14.114&id=45fd8679ea86bffb352132a1df4917c3d11375aa

Fixes: b765f4be40 ("kernel: bump 4.14 to 4.14.114")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-03 16:37:48 +02:00
Rafał Miłecki
2c3dd70741 procd: add procd_running() helper for checking running state
This should be helpful for implementing service_running() in procd init
scripts.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
2019-05-02 22:14:19 +02:00
Hans Dedecker
8696f0c3e3 procd: update to latest git HEAD
01f3dc8 instance: dump user and group as well

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-05-02 17:39:16 +02:00
Michael Heimpold
218b1bbecd procd: allow passing optional group instance parameter
Sometimes is desirable to run a process with a specific group id
instead of the default one which is derived from passwd entry.
This can be achived now by using procd_set_param group $mygroup.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_SOURCE_VERSION update]
2019-05-02 17:39:16 +02:00
Michael Heimpold
a12ab07e21 procd: allow passing optional syslog facility as instance parameter
Optional syslog facility can be set by adding procd_set_param facility
$myfacility.
While at, also add stdout/stderr documentation.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_SOURCE_VERSION update]
2019-05-02 17:38:51 +02:00
Koen Vandeputte
08802d93e2 kernel: bump 4.19 to 4.19.37
Refreshed all patches.

Altered patches:
- 150-bridge_allow_receiption_on_disabled_port.patch
- 201-extra_optimization.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-02 12:59:26 +02:00
Koen Vandeputte
b765f4be40 kernel: bump 4.14 to 4.14.114
Refreshed all patches.

Altered patches:
- 150-bridge_allow_receiption_on_disabled_port.patch
- 201-extra_optimization.patch

Remove upstreamed:
- 022-0006-crypto-crypto4xx-properly-set-IV-after-de-and-encryp.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-02 12:59:26 +02:00
Koen Vandeputte
456f486b53 kernel: bump 4.9 to 4.9.171
Refreshed all patches.

Altered patches:
- 150-bridge_allow_receiption_on_disabled_port.patch
- 201-extra_optimization.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-05-02 12:59:26 +02:00
Robert Marko
a9190ee3a4 kernel: iio: Fix BMP280 Auto probing
Currently Auto probing for BMP/BME280 does not work because kernel
module name in the call is not correct.
Package name was used instead of kernel module name.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2019-05-02 09:35:35 +02:00
Rafał Miłecki
d6643aca34 libroxml: bump to the 3.0.1 version
Some of changes:
* Support for local-name()
* General refactoring
* Better parsing performance
* Fix possible buffer overflow & memleak
* Validation checks
* More commit functions (file, buffer, fd)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-05-01 07:25:55 +02:00
Hans Dedecker
430b66bbe8 procd: update to latest git HEAD
cfaed56 procd: add SIGPWR as signal
a30a8fd procd: copy the respawn property of new instance

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-29 21:48:09 +02:00
Daniel Golle
26dafeeba4 mac80211: rt2x00: replace patches with upstream version
Support for RT3883/RT3663 was merged upstream [1]. Use that patch
instead of our original series. The resulting source tree is
exactly identical, this commit is merely reorganizing the patches.

[1]: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git/commit/?id=d0e61a0f7cca51ce340a5a73595189972122ff25

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-29 18:39:04 +02:00
Hans Dedecker
6b5346e7ed glibc: update to latest 2.27 commit (BZ #18035)
1961e5c7296 elf: Fix pldd (BZ#18035)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-29 16:14:33 +02:00
Koen Vandeputte
fdf1aae77d kernel: add missing symbol in 4.19 config
Intel AtomISP2 dummy / power-management driver (INTEL_ATOMISP2_PM) [N/m/y/?] (NEW)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-29 15:28:33 +02:00
Deng Qingfang
ed5409dbe9 tools/ccache: update to 3.7
Update ccache to 3.7

Release notes:
https://ccache.dev/releasenotes.html#_ccache_3_7

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-04-29 08:54:53 +02:00
Felix Fietkau
9af2735734 kernel: fix regression on 4.19 with 613-netfilter_optional_tcp_window_check.patch (FS#2253)
Since ct->proto.tcp.last_win isn't updated when nf_ct_tcp_no_window_check is
enabled, the retransmission timeout check needs to be bypassed.

Based on patch by Rob Mosher

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-04-27 18:58:07 +02:00
Eneas U de Queiroz
17cb490ac4 openssl: build kmods only if engines are selected
Add a conditional to the individual package's for the kmods in DEPENDS.
This avoids the need to compile the kernel modules when the crypto
engine packages are not selected.  The final binares are not affected by
this.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
Tested-by: Rosen Penev <rosenp@gmail.com>
2019-04-26 15:31:34 +02:00
Yousong Zhou
c2fee615ce scripts/qemustart: add notes on adding new options
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-04-26 13:09:33 +00:00
Yousong Zhou
d726878546 scripts/qemustart: fix network device emulation
We only enabled pcnet driver for malta machine, and x86/legacy target
was supposed to only support e1000 model

Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-04-26 13:09:33 +00:00
Yousong Zhou
647356a3d2 scripts/qemustart: no network by default and enable with -n
This should make it easier to set up and possibly provide a "work out of
the box" experience for most test usage.  Typical wan&lan networking
setup is only two characters argument away.

Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-26 13:08:38 +00:00
Yousong Zhou
a9f6fceb42 sdk: fix building external modules when CONFIG_STACK_VALIDATION=y
The option is at the moment enabled for x86/64.  The selection chain
should be

	config RETPOLINE
	  select STACK_VALIDATION if HAVE_STACK_VALIDATION
	config x86
	  select HAVE_STACK_VALIDATION            if X86_64

cryptdev-linux:

	make[4]: Entering directory '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/cryptodev-linux-cryptodev-linux-1.10'
	make -C /store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/linux-4.14.113 M=/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/cryptodev-linux-cryptodev-linux-1.10 ARCH=x86 CROSS_COMPILE=x86_64-openwrt-linux-musl- modules
	make[5]: Entering directory '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/linux-4.14.113'
	make[6]: *** No rule to make target '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/cryptodev-linux-cryptodev-linux-1.10/ioctl.o', needed by '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/cryptodev-linux-cryptodev-linux-1.10/cryptodev.o'.  Stop.
	Makefile:1533: recipe for target '_module_/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/cryptodev-linux-cryptodev-linux-1.10' failed

Open vSwitch intree kmods

	make[7]: Entering directory '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/openvswitch-2.11.0/datapath/linux'
	make -C /store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/linux-4.14.111 ARCH=x86 M=/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/openvswitch-2.11.0/datapath/linux modules
	make[8]: Entering directory '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/linux-4.14.111'
	make[9]: *** No rule to make target 'tools/objtool/objtool', needed by '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/openvswitch-2.11.0/datapath/linux/actions.o'.  Stop.
	Makefile:1533: recipe for target '_module_/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/openvswitch-2.11.0/datapath/linux' failed
	make[8]: *** [_module_/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/openvswitch-2.11.0/datapath/linux] Error 2
	make[8]: Leaving directory '/store/buildbot/slave/x86_64/build/sdk/build_dir/target-x86_64_musl/linux-x86_64/linux-4.14.111'

Reference: builddeb: include objtool binary in headers package, https://patchwork.kernel.org/patch/9014071/
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-04-26 13:05:39 +00:00
Jose Olivera
40de4c038a elfutils: bump to 0.176
*Fixes:
  -CVE-2019-7150
  -CVE-2019-7149
  -CVE-2019-7146
  -CVE-2019-7665
  -CVE-2019-7664
  -CVE-2019-7148

*Refresh 003-libintl-compatibility.patch

*Also reset PKG_RELEASE.

Signed-off-by: Jose Olivera <oliverajeo@gmail.com>
2019-04-26 10:04:47 +02:00
Hans Dedecker
9424b6f998 scripts/qemustart: fix usage with networking support
Commit 8bf500eb79 added support for qemu usage without networking
support but broke networking support as -n and -z do not work with
unquoted argument; fix this by quoting the arguments.

Fixes 8bf500eb79

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-24 20:02:54 +02:00
Felix Fietkau
6e7e2f4421 mac80211: fix regression in skb resizing optimization in monitor mode (FS#2254)
struct ieee80211_local needs to be passed in separately instead of
dereferencing the (potentially NULL) sdata

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-04-24 09:33:38 +02:00
Koen Vandeputte
82625374ee toolchain/musl: update to version 1.1.22
new features:
- priority-inheritance mutexes
- membarrier syscall, pre-registration to use it, fallback emulation
- header-level support for new linux features in 4.19, 4.20, 5.0

major internal changes:
- complete, async-safe view of all existent threads as global list
- robust __synccall based on new thread list
- new dynamic TLS is installed synchronously at dlopen
- TLSDESC resolver functions no longer make bad ABI assumptions to call C
- resolved shared library dependencies are now recorded

compatibility & conformance:
- dependency-order shared library constructor execution
- sigaltstack no longer rejects SS_AUTODISARM, future flags
- FILE is now a complete (dummy) type in pre-C11 feature profiles
- setvbuf reports failure on invalid arguments
- TSVTX is exposed unconditionally in tar.h
- multithreaded set*id() no longer depends on /proc
- key slot reuse after pthread_key_delete no longer depends on /proc

bugs fixed:
- failures in multithreaded set*id() with concurrent thread creation/exit
- interposed free was called from invalid/inconsistent contexts
- freeaddrinfo performed invalid free of some partial results lists
- dlsym dependency order search had false negatives and false positives
- dn_skipname gave wrong results for labels with 8-bit content
- dcngettext clobbered errno, often breaking printing of error messages
- sscanf read past end of buffer under certain conditions (1.1.21 regression)
- pthread_key_create spuriously failed under race condition (1.1.21 regression)
- fdopendir wrongly succeeded with O_PATH file descriptors
- gets behaved incorrectly in presence of null bytes
- namespace violations in c11 tsd and mutex function dependencies
- incorrect prototype for makecontext (unimplemented)

arch-specfic bugs fixed:
- s390x had wrong values for POSIX_FADV_DONTNEED/_NOREUSE

Extensively tested on dozens of devices, covering most popular architectures.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Dainis Jonitis <dainis.jonitis@ubnt.com>
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2019-04-23 13:29:04 +02:00
Koen Vandeputte
e40050d104 ar71xx: add support for Mikrotik RouterBOARD 2011UiAS-2HnD r2
This board got a new hardware revision, without any change in functionality.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-23 13:22:31 +02:00
Koen Vandeputte
6afe175e5e ath10k-ct: Update to 2019-04-08
9cd701a4f028 ath10k-ct:  Add PN get/set API for wave-2 firmware.
5c8a4668323b ath10k-ct:  Support over-riding the power ctl table in eeprom
75e2705f31bb ath10k-ct:  CCA, eeprom, other changes.
a696e602a0fc ath10k-ct:  Attempt to fix-out-of-tree compile for 4.16
a2aec62262df ath10k:  Improve beacon tx status for 4.20 kernel.
be5c21a82b15 ath10k-ct:  Fix out-of-tree compile for 4.20, pull in stable changes for 4.19

Fixes compile errors when using the 4.20 flavour.
Also the amount of beacon errors seems to have dropped.

Tested on a Mikrotik RB912UAGS-5HPacD

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-23 13:22:31 +02:00
Koen Vandeputte
f337cd2ba3 kernel: bump 4.19 to 4.19.36
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-23 13:22:31 +02:00
Koen Vandeputte
07aaa7e3d6 kernel: bump 4.14 to 4.14.113
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-23 13:22:31 +02:00
Koen Vandeputte
d27c245216 kernel: bump 4.9 to 4.9.170
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-23 13:22:31 +02:00
Jo-Philipp Wich
f00a4ae6e0 Revert "uhttpd: disable concurrent requests by default"
This reverts commit c6aa9ff388.

Further testing has revealed that we will need to allow concurrent
requests after all, especially for situations where CGI processes
initiate further HTTP requests to the local host.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-04-23 08:15:46 +02:00
Eneas U de Queiroz
8abb505048 openssl: add Eneas U de Queiroz as maintainer
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-04-22 21:37:31 +02:00
Koen Vandeputte
022dfdc41c kernel: bump 4.19 to 4.19.35
Refreshed all patches.

Fixes:
- CVE-2019-3887

New symbol:
- CONFIG_LDISC_AUTOLOAD

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-22 21:15:17 +02:00
Koen Vandeputte
da5bd73d70 kernel: bump 4.14 to 4.14.112
Refreshed all patches.

New symbol:
- CONFIG_LDISC_AUTOLOAD

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-22 21:15:17 +02:00
Koen Vandeputte
6e243c2353 kernel: bump 4.9 to 4.9.169
Refreshed all patches.

New symbols:
- CONFIG_LDISC_AUTOLOAD
- CONFIG_PPC_BARRIER_NOSPEC

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-22 21:15:17 +02:00
Eneas U de Queiroz
ff9ac986ce openssl: fix OPENSSL_config bug affecting wget
This applies an upstream patch that fixes a OPENSSL_config() bug that
causes SSL initialization to fail when the openssl.cnf file is not
found.  The config file is not installed by default.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-04-22 20:30:02 +02:00
Hans Dedecker
47dc4f96cb nghttp2: bump to 1.38.0
4a9d2005 Update manual pages
acf6a922 Bump up version number to 1.38.0, LT revision to 31:3:17
4ff45821 Update AUTHORS
42dce01e Merge branch 'nghttpx-fix-backend-selection-on-retry'
a35059e3 nghttpx: Fix bug that altered authority and path affect backend selection
5a30fafd Merge branch 'nghttpx-fix-chunked-request-stall'
dce91ad3 Merge branch 'nghttpx-dont-log-authorization'
2cff8b43 nghttpx: Fix bug that chunked request stalls
be96654d nghttpx: Don't log authorization request header field value with -LINFO
ce962c3f Merge branch 'update-http-parser'
f931504e Update http-parser to v2.9.1
d978f351 Fix bug that on_header callback is still called after stream is closed
ec519f22 Merge pull request #1270 from baitisj/master
e8b213e3 Bump up version number to 1.38.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-22 13:42:24 +02:00
Kevin Darbyshire-Bryant
13ffdf4482 toolchain/binutils: refresh patches
Fix hunk offset warnings.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-04-21 15:15:23 +01:00
Hans Dedecker
399aa0b933 odhcpd: update to latest git HEAD (FS#2243, FS#2244)
6633efe router: fix dns search list option

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-19 19:24:39 +02:00
Rosy Song
524810ce6d dropbear: allow build without dbclient
This can save ~16KBytes size for the ipk

Signed-off-by: Rosy Song <rosysong@rosinson.com>
2019-04-18 22:34:19 +02:00
Lucian Cristian
ee38ffb4a9 armvirt64: enable qemu drm drivers
adds the qemu video drivers and also fixes the build failure
introduced with drm-kms-helper

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-04-18 12:06:47 +02:00
Lucian Cristian
16b381179f kernel: add missing drm symbol
dependency introduced with module drm-kms-helper

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-04-18 12:06:47 +02:00
Alexandru Ardelean
5a829af69a include: unpack.mk: remove CRLF_WORKAROUND
This patch doesn't seem to have any more users.
The only one used to be target in
`target/linux/etrax/image/e100boot/Makefile`.

That target has since been removed via commit
1080f68b2b .

There doesn't seem to be any reason left for this workaround.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2019-04-18 12:06:47 +02:00
Rafał Miłecki
083056c83f mac80211: brcm: backport brcmfmac 5.2 patches
This includes some USB fixes and early work on FullMAC firmware crash
recovery.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-04-18 10:16:10 +02:00
Petr Štetiar
bd3a18bbe4 lantiq: tdw90x0: Fix WLAN LED on TP-Link W8970 v1.2 (FS#2232)
This patch fixes disfunctional WLAN LED on TP-Link W8970. The LED was
reported working in the CC release[1], but doesn't work anymore in 18.06.2.

1. 420cb24d41

Tested-by: Damian Janarek <dzanar18@o2.pl>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-17 14:55:32 +02:00
Hans Dedecker
e20c2909a5 odhcpd: update to latest git HEAD (FS#2206)
38bc630 router: use ra_lifetime as lifetime for RA options (FS#2206)
0523bdd router: improve code readibility
0a3b279 Revert "router:"
207f8e0 treewide: align syslog loglevels
f1d7da9 router:
0e048ac treewide: fix compiler warnings
83698f6 CMakeList.txt: enable extra compiler checks

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-17 14:43:38 +02:00
Eneas U de Queiroz
450d44a8ea openssl: change defaults: ENGINE:on, NPN:off, misc
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Enable engine support by default.  Right now, some packages require
this, so it is always enabled by the bots.  Many packages will compile
differently when engine support is detected, needing engine symbols from
the libraries.

However, being off by default, a user compiling its own image will fail
to run some popular packages from the official repo.
Note that disabling engines did not work in 1.0.2, so this problem never
showed up before.

NPN support has been removed in major browsers & servers, and has become
a small bloat, so it does not make sense to leave it on by default.

Remove deprecated CONFIG_ENGINE_CRYPTO symbol that is no longer needed.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-04-17 11:26:55 +02:00
Lucian Cristian
e762f5d44a kernel: Fix kmod-drm-amdgpu and kmod-drm-radeon dependencies
Currently the Geode builds fails on following kernel module missing
dependencies:

 Package kmod-drm-amdgpu is missing dependencies for the following libraries:
 backlight.ko
 drm_kms_helper.ko
 fb.ko
 ttm.ko

So this patch tries to fix the kmod-drm-amdgpu module dependecies.

Fixes: 2f239c0 ("x86: video: add amdgpu DRM kernel package")
Fixes: 2f6918e ("x86: video: add radeon DRM module support")
Tested-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-04-16 22:51:29 +02:00
Martin Schiller
e79b9601bf procd/hotplug: add dependency to dialout and audio group
Commit 6e060bd62c introduced a dependency to the dialout group.
Adding this group to the "group" file in the base-files package is not
enough to handle this dependency, because after a sysupgrade this entry
will be missing in the "group" file.

To address this problem the dependencies to the required groups needs to
be set in the Makefile of the procd package.
Then, the uci-default script "13_fix_group_user" will add the groups
on first boot-up after a sysupgrade.

Fixes: 6e060bd62c ("base-files/hotplug: fix dedicated group for tty devices")
Tested-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-04-16 22:51:29 +02:00
Hans Dedecker
3e803499c3 netifd: update to latest git HEAD
666c14f system-linux: remove debug tracing
08989e4 interface: add neighbor config support
bfd4de3 interface: fix "if-down" hotplug event handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-15 23:20:20 +02:00
Christian Lamparter
d599890efd layerscape: unbreak ehci-fsl interaction with mpc85xx
Both targets have their own idea of how to use ehci-fsl.
This patch reverts part of commit
68b8d3b079 ("kernel: usb: add FSL EHCI package") and moves
ehci-fsl back into kmod-usb2, while also making it hopefully
useable for the mpc85xx target.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-04-15 00:20:56 +02:00
Christian Lamparter
324e94f31b mpc85xx: disable bricking TL-WDR4900v1 images
The current mpc85xx build is failing because the
TL-WDR4900v1 kernel image no longer fits into the
partition. Extending the kernel is not possible
without updating u-boot's kernel loader commands.

This patch disables the WDR4900v1 until the kernel
image size issue is fixed so the buildbot can still
compile the Sophos RED 15w Rev.1 . Installing the
WDR4900v1 images would cause the routers to get
bricked.

For the discussion, please go to:
<https://github.com/openwrt/openwrt/pull/1773>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-04-15 00:20:56 +02:00
Petr Štetiar
78ee6b1a40 kernel: MIPS: perf: ath79: Fix perfcount IRQ assignment
Currently it's not possible to use perf on ath79 due to genirq flags
mismatch happening on static virtual IRQ 13 which is used for
performance counters hardware IRQ 5.

On TP-Link Archer C7v5:

           CPU0
  2:          0      MIPS   2  ath9k
  4:        318      MIPS   4  19000000.eth
  7:      55034      MIPS   7  timer
  8:       1236      MISC   3  ttyS0
 12:          0      INTC   1  ehci_hcd:usb1
 13:          0  gpio-ath79   2  keys
 14:          0  gpio-ath79   5  keys
 15:         31  AR724X PCI    1  ath10k_pci

 $ perf top
 genirq: Flags mismatch irq 13. 00014c83 (mips_perf_pmu) vs. 00002003 (keys)

On TP-Link Archer C7v4:

         CPU0
  4:          0      MIPS   4  19000000.eth
  5:       7135      MIPS   5  1a000000.eth
  7:      98379      MIPS   7  timer
  8:         30      MISC   3  ttyS0
 12:      90028      INTC   0  ath9k
 13:       5520      INTC   1  ehci_hcd:usb1
 14:       4623      INTC   2  ehci_hcd:usb2
 15:      32844  AR724X PCI    1  ath10k_pci
 16:          0  gpio-ath79  16  keys
 23:          0  gpio-ath79  23  keys

 $ perf top
 genirq: Flags mismatch irq 13. 00014c80 (mips_perf_pmu) vs. 00000080 (ehci_hcd:usb1)

This problem is happening, because currently statically assigned virtual
IRQ 13 for performance counters is not claimed during the initialization
of MIPS PMU during the bootup, so the IRQ subsystem doesn't know, that
this interrupt isn't available for further use.

So this patch fixes the issue by simply booking hardware IRQ 5 for MIPS PMU.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-15 00:01:57 +02:00
Petr Štetiar
ecdd26fe2b umbim: update to latest git HEAD
24f9dc7 Iron out all extra compiler warnings
9d8dbc9 Enable extra compiler checks
ff8d356 mbim-proxy support
ccca03f umbim: add registration set support

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-15 00:01:57 +02:00
Petr Štetiar
5c8f557b36 Revert "ath79: Add WPS button to TP-Link Archer C7v5"
Reverting this commit as I've missed the fact, that the button is
already present in the included DTSI file.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-14 23:42:03 +02:00
Petr Štetiar
8293e7532f mac80211: Fix rate_idx underflow in mwl8k (FS#2218)
Add a patch for mwl8k which fixes endless reboot loops on Linksys EA4500
with certain 5G configurations.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-14 23:42:03 +02:00
Eike Feldmann
9e0fb5a27f ramips: add support for Rakwireless RAK633
It's OEM module with 2*26 pin header, similar to LinkIt Smart 7688 or
Vocore2.

Specification:

CPU:       MT7628 580 MHz. MIPS 24K
RAM:       64 MB
Flash:     8 MB
WIFI:      802.11n/g/b 20/40 MHz
USB:       1x Port USB 2.0
Ethernet:  5 Port ethernet switch
UART:      2x

Installation: Use the installed uboot Bootloader. Connect a serial cable
to serialport 0. Turn power on.  Choose the option: "Load system code
then write to Flash via TFTP".  Choose the local device IP and the TFTP
server IP and the file name of the system image.  After if the
Bootloader will copy the image to the local flash.

Notes: The I2C Kernel module work not correctly. You can send and
receive data. But the command i2cdetect doesn’t work. FS#845

Signed-off-by: Eike Feldmann <eike.feldmann@outlook.com>
[commit subject and message touches, DTS whitespace fixes, wifi LED
rename, pinctrl fixes, network settings fixes, lan/wmac mac addresses,
removed i2c kernel modules]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-14 23:42:03 +02:00
David Bauer
43e8c37cb4 ramips: add support for GL.iNet VIXMINI
Hardware
--------
SoC:   MediaTek MT7628NN
RAM:   64M DDR2 (Etron EM68B16CWQD-25H)
FLASH: 8M (Winbond W25Q64JVSIQ)
LED:   Power - WLAN
BTN:   Reset
UART:  115200 8N1
       TX and RX are labled on the board as pads next to the SoC

Installation via web-interface
------------------------------
1. Visit the web-interface at 192.168.8.1
   Note: The ethernet port is by default WAN. So you need to connect to
   the router via WiFi

2. Navigate to the Update tab on the left side.

3. Select "Local Update"

4. Upload the OpenWrt sysupgrade image.
   Note: Make sure you select not to preserve the configuration.

Installation via U-Boot
-----------------------
1. Hold down the reset button while powering on the device.
   Wait for the LED to flash 5 times.

2. Assign yourself a static IPv4 in 192.168.1.0/24

3. Upload the OpenWrt sysupgrade image at 192.168.1.1.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-04-13 18:46:40 +02:00
Pawel Dembicki
b3f7a73860 mpc85xx: generic: Check kernel size for the TL-WDR4900
TP-Link TL-WDR 4900 have u-boot with read-only env.
Boot command read only 0x29F000 data from flash.
Bigger images causes crc error. It can't be changed.

This patch add kernel size checking.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [utilize KERNEL_SIZE]
2019-04-13 18:46:40 +02:00
David Bauer
bb831ca43a mpc85xx: clean up device package selection
Remove wireless and USB packages from the device-specific package
selection as they are already selected by the target itself.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-04-13 15:09:09 +02:00
David Bauer
84b1257f80 mpc85xx: remove USB support from kernel
This removes USB support from the compiled kernel. Because of this, the
kernel is just small enough for the TP-Link WDR4900 to boot the
resulting kernel.

This is necessary to support the WDR4900 in the upcoming 19.xx release.
In the long run, this should be fixed with a second stage bootloader, as
the vendor bootloader only loads the first 2684k bytes.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-04-13 15:09:09 +02:00
David Bauer
68b8d3b079 kernel: usb: add FSL EHCI package
Add kernel module package for the Freescale USB2 EHCI used on the
mpc85xx platform.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-04-13 15:09:09 +02:00
INAGAKI Hiroshi
3fd443640c ath79: remove unnecessary packages from I-O DATA ETG3-R
I-O DATA ETG3-R is a wired router. So wireless-related packages are
unnecessary and remove those packages from default configuration to
reduce flash usage.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-04-13 15:06:36 +02:00
Sven Roederer
e0d98e120a ath79: add TP-Link WR842N v3
This adds support for the TP-Link WR842N v3 which is already supported on ar71xx
target (0b45bec22c).

Specification:
* SoC: QCA9533 ver 2 rev 0
* 16 MB Flash (gd25q128)
* 64 MB RAM
* 1 WAN 10/100 MBit/s (blue connector)
* 4 LAN 10/100 MBit/s (AR8229; 4 ports; yellow connectors)
* Atheros AR9531 (2,4GHz, two fixed antennas)
* USB
* Reset / WPS button
* WiFi button (rf kill)
* 8 green leds; 1 red/green led
* serial console (115200 8N1, according to the OpenWrt-wiki some soldering is needed)

Installation:
* flash via vendor WebUI (the filename must not exceed certain length)
* sysupgrade from installed OpenWrt (also ar71xx)

Thanks to Holger Drefs for providing the hardware

Tested-by: @kofec (github)
Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2019-04-13 14:39:59 +02:00
Daniel Golle
9385ff654e mac80211: rt2x00: replace patch with upstream version
Replace the patch introduced by commit d0b969eee8 ("mac80211: rt2x00:
do not increment sequence number while re-transmitting") was merged
into wireless-drivers.git. Replace our version with the merged version.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-12 22:14:47 +02:00
Daniel Golle
66e2acad9c ramips: fix pinctrl to allow hardware i2c on WRTNODE2R
Instead of assigning I2C pins as GPIOs by default, leave it up to the
user whether to install kmod-i2c-mt7621 and use them for hardware I2C
instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-11 22:26:28 +02:00
Daniel Golle
b6acb7b718 kernel: move and replace accepted patch
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-11 19:21:55 +02:00
Daniel Golle
44ae5f37fb uboot-envtools: fix fw_env.config for ox820/stg-212
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-11 19:21:55 +02:00
Kevin Darbyshire-Bryant
750a57b836 build: switch default target from ar71xx to ath79
ar71xx is in the process of being deprecated as a target accepting new
devices.  The replacement target for the same hardware is DTS
based ath79.

Switch the default build target selection from ar71xx to ath79.

This is intended to encourage DTS takeup & support for ath79 and longer
term will also aid kernel upstream support.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-04-11 17:14:01 +01:00
Stefan Lippers-Hollmann
8f17c019a1 hostapd: fix CVE-2019-9497, CVE-2019-9498, CVE-2019-9499
EAP-pwd missing commit validation

Published: April 10, 2019
Identifiers:
- CVE-2019-9497 (EAP-pwd server not checking for reflection attack)
- CVE-2019-9498 (EAP-pwd server missing commit validation for
  scalar/element)
- CVE-2019-9499 (EAP-pwd peer missing commit validation for
  scalar/element)

Latest version available from: https://w1.fi/security/2019-4/

Vulnerability

EAP-pwd implementation in hostapd (EAP server) and wpa_supplicant (EAP
peer) was discovered not to validate the received scalar and element
values in EAP-pwd-Commit messages properly. This could result in attacks
that would be able to complete EAP-pwd authentication exchange without
the attacker having to know the used password.

A reflection attack is possible against the EAP-pwd server since the
hostapd EAP server did not verify that the EAP-pwd-Commit contains
scalar/element values that differ from the ones the server sent out
itself. This allows the attacker to complete EAP-pwd authentication
without knowing the password, but this does not result in the attacker
being able to derive the session key (MSK), i.e., the attacker would not
be able to complete the following key exchange (e.g., 4-way handshake in
RSN/WPA).

An attack using invalid scalar/element values is possible against both
the EAP-pwd server and peer since hostapd and wpa_supplicant did not
validate these values in the received EAP-pwd-Commit messages. If the
used crypto library does not implement additional checks for the element
(EC point), this could result in attacks where the attacker could use a
specially crafted commit message values to manipulate the exchange to
result in deriving a session key value from a very small set of possible
values. This could further be used to attack the EAP-pwd server in a
practical manner. An attack against the EAP-pwd peer is slightly more
complex, but still consider practical. These invalid scalar/element
attacks could result in the attacker being able to complete
authentication and learn the session key and MSK to allow the key
exchange to be completed as well, i.e., the attacker gaining access to
the network in case of the attack against the EAP server or the attacker
being able to operate a rogue AP in case of the attack against the EAP
peer.

While similar attacks might be applicable against SAE, it should be
noted that the SAE implementation in hostapd and wpa_supplicant does
have the validation steps that were missing from the EAP-pwd
implementation and as such, these attacks do not apply to the current
SAE implementation. Old versions of wpa_supplicant/hostapd did not
include the reflection attack check in the SAE implementation, though,
since that was added in June 2015 for v2.5 (commit 6a58444d27fd 'SAE:
Verify that own/peer commit-scalar and COMMIT-ELEMENT are different').

Vulnerable versions/configurations

All hostapd versions with EAP-pwd support (CONFIG_EAP_PWD=y in the build
configuration and EAP-pwd being enabled in the runtime configuration)
are vulnerable against the reflection attack.

All wpa_supplicant and hostapd versions with EAP-pwd support
(CONFIG_EAP_PWD=y in the build configuration and EAP-pwd being enabled
in the runtime configuration) are vulnerable against the invalid
scalar/element attack when built against a crypto library that does not
have an explicit validation step on imported EC points. The following
list indicates which cases are vulnerable/not vulnerable:
- OpenSSL v1.0.2 or older: vulnerable
- OpenSSL v1.1.0 or newer: not vulnerable
- BoringSSL with commit 38feb990a183 ('Require that EC points are on the
  curve.') from September 2015: not vulnerable
- BoringSSL without commit 38feb990a183: vulnerable
- LibreSSL: vulnerable
- wolfssl: vulnerable

Acknowledgments

Thanks to Mathy Vanhoef (New York University Abu Dhabi) for discovering
and reporting the issues and for proposing changes to address them in
the implementation.

Possible mitigation steps

- Merge the following commits to wpa_supplicant/hostapd and rebuild:

  CVE-2019-9497:
  EAP-pwd server: Detect reflection attacks

  CVE-2019-9498:
  EAP-pwd server: Verify received scalar and element
  EAP-pwd: Check element x,y coordinates explicitly

  CVE-2019-9499:
  EAP-pwd client: Verify received scalar and element
  EAP-pwd: Check element x,y coordinates explicitly

  These patches are available from https://w1.fi/security/2019-4/

- Update to wpa_supplicant/hostapd v2.8 or newer, once available

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-04-11 11:26:01 +02:00
Stefan Lippers-Hollmann
57ab9e3add hostapd: fix CVE-2019-9496
hostapd: fix SAE confirm missing state validation

Published: April 10, 2019
Identifiers:
- CVE-2019-9496 (SAE confirm missing state validation in hostapd/AP)
Latest version available from: https://w1.fi/security/2019-3/

Vulnerability

When hostapd is used to operate an access point with SAE (Simultaneous
Authentication of Equals; also known as WPA3-Personal), an invalid
authentication sequence could result in the hostapd process terminating
due to a NULL pointer dereference when processing SAE confirm
message. This was caused by missing state validation steps when
processing the SAE confirm message in hostapd/AP mode.

Similar cases against the wpa_supplicant SAE station implementation had
already been tested by the hwsim test cases, but those sequences did not
trigger this specific code path in AP mode which is why the issue was
not discovered earlier.

An attacker in radio range of an access point using hostapd in SAE
configuration could use this issue to perform a denial of service attack
by forcing the hostapd process to terminate.

Vulnerable versions/configurations

All hostapd versions with SAE support (CONFIG_SAE=y in the build
configuration and SAE being enabled in the runtime configuration).

Possible mitigation steps

- Merge the following commit to hostapd and rebuild:

  SAE: Fix confirm message validation in error cases

  These patches are available from https://w1.fi/security/2019-3/

- Update to hostapd v2.8 or newer, once available

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-04-11 11:26:01 +02:00
Stefan Lippers-Hollmann
262229e924 hostapd: fix CVE-2019-9495
EAP-pwd side-channel attack

Published: April 10, 2019
Identifiers:
- CVE-2019-9495 (cache attack against EAP-pwd)
Latest version available from: https://w1.fi/security/2019-2/

Vulnerability

Number of potential side channel attacks were recently discovered in the
SAE implementations used by both hostapd and wpa_supplicant (see
security advisory 2019-1 and VU#871675). EAP-pwd uses a similar design
for deriving PWE from the password and while a specific attack against
EAP-pwd is not yet known to be tested, there is no reason to believe
that the EAP-pwd implementation would be immune against the type of
cache attack that was identified for the SAE implementation. Since the
EAP-pwd implementation in hostapd (EAP server) and wpa_supplicant (EAP
peer) does not support MODP groups, the timing attack described against
SAE is not applicable for the EAP-pwd implementation.

A novel cache-based attack against SAE handshake would likely be
applicable against the EAP-pwd implementation. Even though the
wpa_supplicant/hostapd PWE derivation iteration for EAP-pwd has
protections against timing attacks, this new cache-based attack might
enable an attacker to determine which code branch is taken in the
iteration if the attacker is able to run unprivileged code on the victim
machine (e.g., an app installed on a smart phone or potentially a
JavaScript code on a web site loaded by a web browser). This depends on
the used CPU not providing sufficient protection to prevent unprivileged
applications from observing memory access patterns through the shared
cache (which is the most likely case with today's designs).

The attacker could use information about the selected branch to learn
information about the password and combine this information from number
of handshake instances with an offline dictionary attack. With
sufficient number of handshakes and sufficiently weak password, this
might result in full recovery of the used password if that password is
not strong enough to protect against dictionary attacks.

This attack requires the attacker to be able to run a program on the
target device. This is not commonly the case on an authentication server
(EAP server), so the most likely target for this would be a client
device using EAP-pwd.

The commits listed in the end of this advisory change the EAP-pwd
implementation shared by hostapd and wpa_supplicant to perform the PWE
derivation loop using operations that use constant time and memory
access pattern to minimize the externally observable differences from
operations that depend on the password even for the case where the
attacker might be able to run unprivileged code on the same device.

Vulnerable versions/configurations

All wpa_supplicant and hostapd versions with EAP-pwd support
(CONFIG_EAP_PWD=y in the build configuration and EAP-pwd being enabled
in the runtime configuration).

It should also be noted that older versions of wpa_supplicant/hostapd
prior to v2.7 did not include additional protection against certain
timing differences. The definition of the EAP-pwd (RFC 5931) does not
describe such protection, but the same issue that was addressed in SAE
earlier can be applicable against EAP-pwd as well and as such, that
implementation specific extra protection (commit 22ac3dfebf7b, "EAP-pwd:
Mask timing of PWE derivation") is needed to avoid showing externally
visible timing differences that could leak information about the
password. Any uses of older wpa_supplicant/hostapd versions with EAP-pwd
are recommended to update to v2.7 or newer in addition to the mitigation
steps listed below for the more recently discovered issue.

Possible mitigation steps

- Merge the following commits to wpa_supplicant/hostapd and rebuild:

  OpenSSL: Use constant time operations for private bignums
  Add helper functions for constant time operations
  OpenSSL: Use constant time selection for crypto_bignum_legendre()
  EAP-pwd: Use constant time and memory access for finding the PWE

  These patches are available from https://w1.fi/security/2019-2/

- Update to wpa_supplicant/hostapd v2.8 or newer, once available

- Use strong passwords to prevent dictionary attacks

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-04-11 11:26:01 +02:00
Stefan Lippers-Hollmann
af606d077f hostapd: fix CVE-2019-9494
SAE side-channel attacks

Published: April 10, 2019
Identifiers:
- VU#871675
- CVE-2019-9494 (cache attack against SAE)
Latest version available from: https://w1.fi/security/2019-1/

Vulnerability

Number of potential side channel attacks were discovered in the SAE
implementations used by both hostapd (AP) and wpa_supplicant
(infrastructure BSS station/mesh station). SAE (Simultaneous
Authentication of Equals) is also known as WPA3-Personal. The discovered
side channel attacks may be able to leak information about the used
password based on observable timing differences and cache access
patterns. This might result in full password recovery when combined with
an offline dictionary attack and if the password is not strong enough to
protect against dictionary attacks.

Cache attack

A novel cache-based attack against SAE handshake was discovered. This
attack targets SAE with ECC groups. ECC group 19 being the mandatory
group to support and the most likely used group for SAE today, so this
attack applies to the most common SAE use case. Even though the PWE
derivation iteration in SAE has protections against timing attacks, this
new cache-based attack enables an attacker to determine which code
branch is taken in the iteration if the attacker is able to run
unprivileged code on the victim machine (e.g., an app installed on a
smart phone or potentially a JavaScript code on a web site loaded by a
web browser). This depends on the used CPU not providing sufficient
protection to prevent unprivileged applications from observing memory
access patterns through the shared cache (which is the most likely case
with today's designs).

The attacker can use information about the selected branch to learn
information about the password and combine this information from number
of handshake instances with an offline dictionary attack. With
sufficient number of handshakes and sufficiently weak password, this
might result in full discovery of the used password.

This attack requires the attacker to be able to run a program on the
target device. This is not commonly the case on access points, so the
most likely target for this would be a client device using SAE in an
infrastructure BSS or mesh BSS.

The commits listed in the end of this advisory change the SAE
implementation shared by hostapd and wpa_supplicant to perform the PWE
derivation loop using operations that use constant time and memory
access pattern to minimize the externally observable differences from
operations that depend on the password even for the case where the
attacker might be able to run unprivileged code on the same device.

Timing attack

The timing attack applies to the MODP groups 22, 23, and 24 where the
PWE generation algorithm defined for SAE can have sufficient timing
differences for an attacker to be able to determine how many rounds were
needed to find the PWE based on the used password and MAC
addresses. When the attack is repeated with multiple times, the attacker
may be able to gather enough information about the password to be able
to recover it fully using an offline dictionary attack if the password
is not strong enough to protect against dictionary attacks. This attack
could be performed by an attacker in radio range of an access point or a
station enabling the specific MODP groups.

This timing attack requires the applicable MODP groups to be enabled
explicitly in hostapd/wpa_supplicant configuration (sae_groups
parameter). All versions of hostapd/wpa_supplicant have disabled these
groups by default.

While this security advisory lists couple of commits introducing
additional protection for MODP groups in SAE, it should be noted that
the groups 22, 23, and 24 are not considered strong enough to meet the
current expectation for a secure system. As such, their use is
discouraged even if the additional protection mechanisms in the
implementation are included.

Vulnerable versions/configurations

All wpa_supplicant and hostapd versions with SAE support (CONFIG_SAE=y
in the build configuration and SAE being enabled in the runtime
configuration).

Acknowledgments

Thanks to Mathy Vanhoef (New York University Abu Dhabi) and Eyal Ronen
(Tel Aviv University) for discovering the issues and for discussions on
how to address them.

Possible mitigation steps

- Merge the following commits to wpa_supplicant/hostapd and rebuild:

  OpenSSL: Use constant time operations for private bignums
  Add helper functions for constant time operations
  OpenSSL: Use constant time selection for crypto_bignum_legendre()
  SAE: Minimize timing differences in PWE derivation
  SAE: Avoid branches in is_quadratic_residue_blind()
  SAE: Mask timing of MODP groups 22, 23, 24
  SAE: Use const_time selection for PWE in FFC
  SAE: Use constant time operations in sae_test_pwd_seed_ffc()

  These patches are available from https://w1.fi/security/2019-1/

- Update to wpa_supplicant/hostapd v2.8 or newer, once available

- In addition to either of the above alternatives, disable MODP groups
  1, 2, 5, 22, 23, and 24 by removing them from hostapd/wpa_supplicant
  sae_groups runtime configuration parameter, if they were explicitly
  enabled since those groups are not considered strong enough to meet
  current security expectations. The groups 22, 23, and 24 are related
  to the discovered side channel (timing) attack. The other groups in
  the list are consider too weak to provide sufficient security. Note
  that all these groups have been disabled by default in all
  hostapd/wpa_supplicant versions and these would be used only if
  explicitly enabled in the configuration.

- Use strong passwords to prevent dictionary attacks

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
[bump PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-04-11 11:26:01 +02:00
Hans Dedecker
d1739c6c9a procd: update to latest git HEAD
baaf38c procd: instance: Support deleting stopped instances

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-10 14:16:53 +02:00
Florian Eckert
2101002b3d wireguard: remove obvious comments
Remove obvious comments to save disk space.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-04-09 22:25:11 +02:00
Florian Eckert
78b6931a1a wireguard: converted whitespaces from space to tab
With this change, the file is reduced from 5186 bytes to 4649 bytes that
its approximately 10.5 percent less memory consumption. For small
devices, sometimes every byte counts.
Also, all other protocol handler use tabs instead of spaces.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-04-09 22:25:02 +02:00
Hans Dedecker
c8a8294f6e ethtool: bump to 5.0
170d821 Release version 5.0.
909f8c0 Revert "ethtool: change to new sane powerpc64 kernel headers"
a484274 ethtool: dsa: mv88e6xxx: add pretty dump for others
034a17b ethtool: dsa: mv88e6xxx: add pretty dump for 88E6390
7f1cc44 ethtool: dsa: mv88e6xxx: add pretty dump for 88E6352
a13a053 ethtool: dsa: mv88e6xxx: add pretty dump for 88E6161
4e98029 ethtool: dsa: mv88e6xxx: add pretty dump for 88E6185
ff99e46 ethtool: dsa: mv88e6xxx: add pretty dump
cb8e980 ethtool: dsa: add pretty dump
4df55c8 ethtool: change to new sane powerpc64 kernel headers
0cb963e ethtool: zero initialize coalesce struct
8f05538 ethtool: don't report UFO on kernels v4.14 and above

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-04-09 14:27:59 +02:00
Koen Vandeputte
fa8d5ad21b imx6: bump sdma firmware to 3.4
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-09 11:29:20 +02:00
Daniel Gimpelevich
f61e754522 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>
2019-04-09 11:09:26 +02:00
Daniel Gimpelevich
d75d4837fc 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>
2019-04-09 11:09:26 +02:00
Hauke Mehrtens
1f839c8584 sunxi: Remove already applied patch
This patch is already included in kernel v4.19.31.

Fixes: 8df12d76c6 ("kernel: bump 4.19 to 4.19.34")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-04-08 20:34:27 +02:00
Petr Štetiar
4953b3891a 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>
2019-04-08 18:37:05 +02:00
Petr Štetiar
b0e5e32daa 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>
2019-04-08 18:37:05 +02:00
Petr Štetiar
8bf500eb79 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>
2019-04-08 18:37:05 +02:00
Adrian Schmutzler
93d23aced2 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>
2019-04-08 18:37:05 +02:00
Adrian Schmutzler
9aa8f87d27 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
02556d6365 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>
2019-04-08 18:37:04 +02:00
Adrian Schmutzler
0a13f589c3 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>
2019-04-08 18:37:04 +02:00
Adrian Schmutzler
a5885ea407 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>
2019-04-08 18:37:04 +02:00
Adrian Schmutzler
6f354c4d32 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>
2019-04-08 18:37:04 +02:00
Adrian Schmutzler
9888f1b96c 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>
2019-04-08 18:37:04 +02:00
Christian Mauderer
8a4dc6f48c 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>
2019-04-08 18:37:04 +02:00
Markus Scheck
de2f888024 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
189aa1748b 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
31ea08a64b 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
0f8cdc28af 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
6009b3fd58 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
d23222a96c 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>
2019-04-08 18:37:04 +02:00
Petr Štetiar
dc1a73984e 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>
2019-04-08 18:37:03 +02:00
Petr Štetiar
adb0a420e5 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>
2019-04-08 18:37:03 +02:00
Petr Štetiar
136001675e 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>
2019-04-08 18:37:03 +02:00
Hans Dedecker
8f1cbef12e 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>
2019-04-08 16:07:11 +02:00
Koen Vandeputte
8df12d76c6 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>
2019-04-08 14:53:39 +02:00
Koen Vandeputte
5387bc9cbb 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>
2019-04-08 14:53:39 +02:00
Koen Vandeputte
1138e0f887 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>
2019-04-08 14:53:39 +02:00
Koen Vandeputte
5eac37624f 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>
2019-04-08 12:07:28 +02:00
Koen Vandeputte
6fe9127a56 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>
2019-04-08 12:07:28 +02:00
Hans Dedecker
80568e5854 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>
2019-04-07 20:32:55 +02:00
Stijn Tintel
310e2764a8 ubox: bump to git HEAD
5130fa4 kmodloader: fix and optimize loading of failed modules

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-04-07 19:37:18 +03:00
Tomasz Maciej Nowak
f0be038897 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>
2019-04-07 15:25:28 +02:00
Christian Lamparter
7f3facfce2 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: fac27643f0 ("firmware-utils: add nec-enc")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-04-06 20:29:35 +02:00
Kip Porterfield
b812a7fa68 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: 017ec068e3 (ramips: add support for Belkin F9K1109v1)
Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com>
2019-04-06 19:14:06 +02:00
INAGAKI Hiroshi
643fcfc8d6 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]
2019-04-06 19:14:06 +02:00
INAGAKI Hiroshi
fac27643f0 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]
2019-04-06 19:14:06 +02:00
Chuanhong Guo
d80a1c6e2c 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>
2019-04-06 19:14:06 +02:00
Eneas U de Queiroz
8252511dc0 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]
2019-04-06 19:14:06 +02:00
Michael Heimpold
32a6c252db 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>
2019-04-06 19:14:06 +02:00
Michael Heimpold
007e947976 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>
2019-04-06 19:14:06 +02:00
Rosen Penev
46dc4e206d 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>
2019-04-06 19:14:06 +02:00
Adrian Schmutzler
0eef05fb36 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]
2019-04-06 19:14:06 +02:00
Rosen Penev
2a8175a7ac 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>
2019-04-06 19:14:06 +02:00
David Bauer
b19c48dc34 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>
2019-04-06 19:14:06 +02:00
Michael Gray
5198258d10 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>
2019-04-06 19:14:06 +02:00
Tomasz Maciej Nowak
bac2c4d2fb 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>
2019-04-06 19:14:05 +02:00
Tomasz Maciej Nowak
afef17e24d 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>
2019-04-06 19:14:05 +02:00
Zhao Yu
32689e93c4 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]
2019-04-06 19:13:49 +02:00
Jason A. Donenfeld
549d44736a 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>
2019-04-06 17:26:47 +02:00
Daniel Engberg
6c22545225 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>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
2e5a0b81ec 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>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
4e8345ff68 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>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
727c3df5bb 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>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
55b4ff7f73 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>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
910eb994eb 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
78a3c51985 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
3db12da7cd 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
177a634e18 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
6e303b4532 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
95c531dc07 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
82b0230bc1 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>
2019-04-06 16:31:10 +02:00
Luis Araneda
5a739bd43e zynq: kernel: refresh config
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-04-06 16:31:10 +02:00
Hauke Mehrtens
3183430df4 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>
2019-04-06 16:31:04 +02:00
Josef Schlehofer
4ebd66d7a9 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>
2019-04-06 16:30:43 +02:00
Tomasz Maciej Nowak
09fe18f042 tegra: add kernel 4.19 support
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
bba0c012b8 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>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
6541897796 kernel: package rtc-em3027 module
Support for Microelectronic EM3027 real time clock chip.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
1b3dda179a 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>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
b874437644 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>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
8595bb0b17 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>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
42f96ed941 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>
2019-04-06 14:48:46 +02:00
Daniel Engberg
de3eb0d8a0 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>
2019-04-06 13:40:29 +02:00
Hans Dedecker
f483274422 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>
2019-04-05 12:04:01 +02:00
Michael Heimpold
6e060bd62c 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>
2019-04-04 17:09:40 +02:00
Rafał Miłecki
8dacd75ea8 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>
2019-04-04 11:35:53 +02:00
Rafał Miłecki
ebed4b6dd0 kernel: backport upstream ubifs default compression selection fix
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-04-04 11:19:33 +02:00
Rafał Miłecki
9a92af4624 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>
2019-04-04 10:59:11 +02:00
Felix Fietkau
b3d8b3ab8e 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>
2019-04-03 10:40:09 +02:00
Felix Fietkau
1dd536f1fa mac80211: improve performance by deferring tx queue selection
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-04-03 10:40:09 +02:00
Felix Fietkau
c9262a96d1 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>
2019-04-03 10:40:09 +02:00
Magnus Kroken
701b8d0050 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]
2019-04-03 10:00:39 +02:00
Adrian Schmutzler
141698ce8f 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>
2019-04-02 02:10:59 +02:00
Mario Schroen
5ec205d7ac 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>
2019-04-02 02:10:59 +02:00
Robert Marko
99f6f2c0b8 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>
2019-04-02 02:09:58 +02:00
Adrian Schmutzler
a2a972b2cf 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>
2019-04-02 02:08:37 +02:00
Hans Dedecker
848d85d13b 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>
2019-04-01 23:12:29 +02:00
Petr Štetiar
6027e49093 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: cbbef976e2 ("build: dtc: Disable noisy warnings by default")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-01 13:53:31 +02:00
Petr Štetiar
0a67e84bae 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>
2019-04-01 12:07:09 +02:00
Magnus Kroken
4376c06e80 openvpn: update to 2.4.7
Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2019-04-01 11:23:43 +02:00
Kabuli Chana
6ba3d70c95 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>
2019-04-01 10:05:49 +02:00
David Bauer
38f3433420 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>
2019-03-31 20:59:08 +02:00
Michael Pratt
d260813d09 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>
2019-03-31 20:58:51 +02:00
Christian Lamparter
fbe2e7d15e 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>
2019-03-30 10:36:31 +01:00
Hans Dedecker
6df5ab89cf 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>
2019-03-29 15:55:08 +01:00
Koen Vandeputte
968baed351 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>
2019-03-29 14:00:44 +01:00
Koen Vandeputte
8305c475cc 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>
2019-03-29 14:00:44 +01:00
Rosen Penev
2159b25466 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>
2019-03-29 09:01:46 +01:00
Rosen Penev
274439b780 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>
2019-03-29 09:01:23 +01:00
David Bauer
3f019bf96c 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>
2019-03-29 07:34:00 +00:00
Vladimir Kot
58becdb30d 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>
2019-03-29 07:34:00 +00:00
Tobias Welz
7c4b85ee27 ramips: add support for WIZnet WizFi630S board
The WIZnet WizFi630S board is in the miniPCIe form factor.

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

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

Signed-off-by: Tobias Welz <tw@wiznet.eu>
[whitespace and device name in makefile fixes]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-29 07:33:59 +00:00
Daniel Golle
b0395cfc56 iwinfo: Fix 802.11ad channel to frequency
c2cfe9d iwinfo: Fix 802.11ad channel to frequency

Fixes 9725aa271a ("iwinfo: update to latest git HEAD")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-28 15:20:58 +01:00
Petr Štetiar
1e55171a12 fstools: update to the latest master branch
ff1ded6 libfstools: Fix overflow of F2FS_MINSIZE constant
bc2c876 libfstools: Print error in case of loop blkdev failure

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-28 12:57:08 +01:00
Alexander Couzens
95f07502b7 package/uboot-omap: backport patches to fix build
* 106: fix build when libfdt-devel is installed on host
* 107: fix stdbool.h includes

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-03-28 02:10:12 +01:00
Daniel Golle
28920330f8 wireguard: introduce 'nohostroute' option
Instead of creating host-routes depending on fwmark as (accidentally)
pushed by commit
1e8bb50b93 ("wireguard: do not add host-dependencies if fwmark is set")
use a new config option 'nohostroute' to explicitely prevent creation
of the route to the endpoint.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-27 22:59:03 +01:00
Daniel Golle
7204736076 IB: fix generating .profile.mk for profiles without metadata
Fixes d6fa04a437 ("IB: include SUPPORTED_DEVICES in 'make info' output")

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-27 22:53:14 +01:00
Daniel Golle
1e8bb50b93 wireguard: do not add host-dependencies if fwmark is set
The 'fwmark' option is used to define routing traffic to
wireguard endpoints to go through specific routing tables.
In that case it doesn't make sense to setup routes for
host-dependencies in the 'main' table, so skip setting host
dependencies if 'fwmark' is set.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-27 22:53:14 +01:00
Hans Dedecker
b2152c8e6b odhcpd: update to latest git HEAD (FS#2204)
420945c netlink: fix IPv6 address updates (FS#2204)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-03-27 21:05:07 +01:00
Koen Vandeputte
555ee02f77 kernel: fix missing dependency in 4.14.108
The 4.14.108 bump introduced a missing dependency when building
specific netfilters.

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

Thanks to Jo-Philipp Wich for providing the fix

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

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-27 13:05:03 +01:00
Koen Vandeputte
af6c86dbe5 kernel: bump 4.14 to 4.14.108
Refreshed all patches.

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

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-27 10:48:59 +01:00
Koen Vandeputte
4bc0224149 kernel: bump 4.9 to 4.9.165
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-27 10:48:59 +01:00
Stijn Tintel
b422e1631e scripts/gen_image_generic.sh: fail on errors
The script always exits with value 0, even if some of the commands fail.
This can potentially create broken, unbootable images, e.g. when
make_ext4fs fails due to TARGET_KERNEL_PARTSIZE being too small for the
kernel. Avoid this by failing the script when any command fails.

Acked-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-03-27 00:13:30 +02:00
Koen Vandeputte
e1444ab59c ar71xx: add support for MikroTik RouterBOARD 922UAGS-5HPacD
This patch adds support for the MikroTik RouterBOARD 922UAGS-5HPacD
with a built-in 802.11ac High-Power radio (31dBm).

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

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

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

Not working:
- SFP cage

Installation:

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2019-03-26 18:01:47 +01:00
Hauke Mehrtens
63ed513779 mvebu: Add dependency to kmod-i2c-mux-pca954x for armada-macchiatobin
This driver is needed for the I2C mux on the board.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-03-26 15:12:01 +01:00
Hauke Mehrtens
3d945f5706 mvebu: Refresh kernel configuration
This refreshes the current kernel configuration to remove unneeded
options, add some automatically added ones and reorders them. The normal
build did this automatically, so the builds already used this
configuration.

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

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

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-26 15:11:39 +01:00
Hauke Mehrtens
ae9d3a25c2 mvebu: Fix typo in MACCHIATOBin detection
The name in the device tree file is written with two C.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-03-25 22:50:28 +01:00
Hauke Mehrtens
6af639e0bf linux: Add kmod-sched-act-vlan
This allows to configure rules to push or pop vlan headers.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-03-25 22:50:28 +01:00
Hauke Mehrtens
72c7e2dc46 linux: Add kmod-sched-flower
This allows to classify packets based on a configurable combination
of packet keys and masks.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-03-25 22:50:28 +01:00
Hauke Mehrtens
f83522fa63 linux: Add kmod-sched-mqprio
This adds Multi-queue priority scheduler (MQPRIO).

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-03-25 22:50:28 +01:00
Hauke Mehrtens
187ab0bceb linux: Add kmod-crxypto-xcbc
This can be used for IPsec.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-03-25 22:50:28 +01:00
Konstantin Demin
01964148c6 dropbear: split ECC support to basic and full
- limit ECC support to ec*-sha2-nistp256:
  * DROPBEAR_ECC now provides only basic support for ECC
- provide full ECC support as an option:
  * DROPBEAR_ECC_FULL brings back support for ec{dh,dsa}-sha2-nistp{384,521}
- update feature costs in binary size

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:35 +01:00
Konstantin Demin
5eb7864aad dropbear: rewrite init script startup logic to handle both host key files
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:34 +01:00
Konstantin Demin
6145e59881 dropbear: change type of config option "Port" to scalar type "port"
it was never used anywhere, even LuCI works with "Port" as scalar type.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:34 +01:00
Konstantin Demin
5d27b10c61 dropbear: introduce config option "keyfile" (replacement for "rsakeyfile")
* option "keyfile" is more generic than "rsakeyfile".
* option "rsakeyfile" is considered to be deprecated and should be removed
  in future releases.
* warn user (in syslog) if option "rsakeyfile" is used
* better check options ("rsakeyfile" and "keyfile"): don't append
  "-r keyfile" to command line if file is absent (doesn't exist or empty),
  warn user (in syslog) about such files

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:34 +01:00
Konstantin Demin
efc533cc2f dropbear: add initial support for ECC host key
Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:33 +01:00
Konstantin Demin
c40a84cc15 dropbear: fix regression where TTY modes weren't reset for client
cherry-pick upstream commit 7bc6280613f5ab4ee86c14c779739070e5784dfe

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:33 +01:00
Konstantin Demin
ddf1a06326 dropbear: honour CFLAGS while building bundled libtomcrypt/libtommath
Felix Fietkau pointed out that bundled libtomcrypt/libtommath do funny stuff with CFLAGS.
fix this with checking environment variable OPENWRT_BUILD in both libs.
change in dropbear binary size is drastical: 221621 -> 164277.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:33 +01:00
Konstantin Demin
9c3bfd0906 dropbear: fix hardening flags during configure
compiler complains about messed up CFLAGS in build log:
  <command-line>: warning: "_FORTIFY_SOURCE" redefined
  <command-line>: note: this is the location of the previous definition

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

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

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

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

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:33 +01:00
Konstantin Demin
a1099edf32 dropbear: bump to 2019.77
- drop patches applied upstream:
  * 010-runtime-maxauthtries.patch
  * 020-Wait-to-fail-invalid-usernames.patch
  * 150-dbconvert_standalone.patch
  * 610-skip-default-keys-in-custom-runs.patch
- refresh patches
- move OpenWrt configuration from patch to Build/Configure recipe,
  thus drop patch 120-openwrt_options.patch

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2019-03-25 22:25:32 +01:00
Christian Lamparter
616ec4365c ath10k-ct: Update to 2019-03-25
2e917efb607f ath10k: Add slow-pci bus work-around, sw-crypt blockack support.
cc73ceb0dbc7 ath10k: Fix out-of-tree compile for 4.16 driver.
4b3cf7c20972 ath10k: Improve tx-status reporting.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-25 21:19:40 +01:00
Christian Lamparter
f803ee3ba9 ath10k-firmware: update Candela Tech firmware images
Release notes since last time:

Release notes for wave-1:

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

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

Release notes for wave-2:

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

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

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

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-25 21:19:39 +01:00
Christian Lamparter
5b4765c93a gemini: Classify Raidsonic NAS IB-4220-B as a NAS
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-25 21:19:39 +01:00
Christian Lamparter
cdc6de460b gemini: D-Link DNS-313 is a NAS
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-25 21:19:39 +01:00
Christian Lamparter
7a1497fd60 apm821xx: MBL: set DEVICE_TYPE to NAS
The MyBook Live is a NAS.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-25 21:19:39 +01:00
Boris Krasnovskiy
4cf991bedb toolchain: ARM: Fix option conflict with multiarch
This problem exposed when compiling glibc, but applicable across the
board. gcc compiles runtime libraries for all supported architectures,
unless otherwise specified, and later selects applicable library based
-m[arch,cpu,*] options, thus these options should not be passed to gcc
as they break the compilation process.

Signed-off-by: Boris Krasnovskiy <borkra@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[modified so it only touches ARM - I'm too chicken, changed authors email]
2019-03-25 21:19:05 +01:00
Boris Krasnovskiy
8dcc108760 toolchain: ARM: Fix toolchain compilation for gcc 8.x
Set the toolchain's ARM CPU and FPU architectures by utilizing' gcc's
--with-cpu / --with-fpu configure options that: "Specify which cpu
variant the compiler should generate code for by default. cpu will
be used as the default value of the -mcpu= switch."

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

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

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

Reported-by: Ansuel Smith <ansuelsmth@gmail.com>
Reported-by: Daniel Engberg <daniel.engberg.lists@pyret.net> [#1203]
Signed-off-by: Boris Krasnovskiy <borkra@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [extended commit message,
removed now-deprecated CPU_CFLAGS, changed author to gmail address]
2019-03-25 21:15:58 +01:00
Christian Lamparter
84f13e19b4 ipq40xx: essedma: Add fix for memory allocation issues
This patch adds a ChromiumOS 3.18 patch [0] that fixes memory
allocation issues under memory pressure by keeping track
of missed allocs and rectify the omission at a later date.
It also adds ethtool counters for memory allocation
failures accounting so this can be verified.

[0] <d4e1e4ce68>

Reported-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-24 21:17:41 +01:00
Deng Qingfang
bfdf00977d tools/ccache: update to 3.6
Update ccache to 3.6

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-03-24 21:09:17 +01:00
Felix Fietkau
bee7ff7cf3 ramips: allow packets with ttl=0
Some broken ISPs (e.g. Comcast) send DHCPv6 packets with hop limit=0.
This trips up the TTL=0 check in the PPE if enabled.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-24 12:10:15 +01:00
Ding Tengfei
acf149d531 ath79: add support for COMFAST CF-E5/E7
COMFAST CF-E5/E7 is a outdoor 4G LTE AP with PoE support, based on
Qualcomm/Atheros QCA9531.

Short specification:

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

Flash instruction:

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

Signed-off-by: Ding Tengfei <dtf@comfast.cn>
[commit subject fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-24 01:44:27 +01:00
Marcin Jurkowski
fcc716e21d ath79: add TP-Link TL-WR710N v1
This commit adds support for TP-Link TL-WR710N v1 router.

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

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

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
2019-03-24 01:44:27 +01:00
Chuanhong Guo
8de907c441 ath79: add support for TP-Link TL-WR941N v7 (CN)
This adds support for the Chinese version of TL-WR941N v7.
It uses QCA9558+AR8236 while the international version
uses TP9343 instead.

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

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:27 +01:00
Chuanhong Guo
3d93b35f03 ath79: ag71xx: remove switch driver in ag71xx
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:27 +01:00
Chuanhong Guo
443fc9ac35 ath79: use ar8216 for builtin switch
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:27 +01:00
Chuanhong Guo
47eef3a5ce generic: ar8216: introduce qca,mib-poll-interval property
This allows users to specify a shorter mib poll interval so that the
swconfig leds could behave normal with current get_port_stats()
implementation.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:27 +01:00
Chuanhong Guo
c8c2ef1d49 generic: ar8216: do a software reset for switch during hw_init
This applies to ar8216 and ar8236. QCA's newer U-boot will enable
the switch mdio master for FE switches which makes phy inaccessible
from CPU mdio. (e.g. on TP-Link TL-WR941N v7 Chinese version which
uses QCA9558+AR8236.) For these devices PHY probing is broken and
mdio device probing is a must. We also need to disable switch mdio
master in driver for later PHY initialization.

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:27 +01:00
Chuanhong Guo
d6366ce366 generic: ar8216: mib_work_func: read all port mibs everytime
ar8xxx_mib_capture will update mib counters for all ports. Current
code only update one port at a time and the data for other ports
are lost.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:26 +01:00
Chuanhong Guo
9fc506e9b2 generic: ar8216: add support for get_port_stats()
Partially reverts commit eff3549c58.

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

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:26 +01:00
Chuanhong Guo
0598ec0abc generic: ar8216: add support for ar724x/ar933x builtin switch
This builtin switch is a bugless ar8216 with different mib counters
and gigabit cpu port.
Atheros uses the same device ID and it's impossible to distinguish
the standalone one and the builtin one. So we add support to mdio
device probe only.

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:26 +01:00
Chuanhong Guo
ad8db1fa2e generic: ar8216: mdiodev: add qca,phy4-mii-enable option
This option allows setting phy4 as a phy connected directly to CPU.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:26 +01:00
Chuanhong Guo
cf9900978a generic: ar8216: ar8229: add phy_read/phy_write
the added function also works for ar8216 and will be used in the
following ar7240 support.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:26 +01:00
Chuanhong Guo
cc817392f4 generic: ar8216: add support for separated mdio bus for phy access
Atheros FE switches have a builtin mdio master available for PHY
accessing and on ar724x/ar933x builtin switches this mdio master
is the only way of accessing PHYs.

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

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:26 +01:00
Chuanhong Guo
cb7d96499c generic: ar8216: add support for ar8229
ar8229 is the builtin switch in ar934x and later chips. There is
also a standalone version available and their registers/functions
are the same.

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

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
7d504f68a6 generic: ar8216: add mdio-device probing support
currently only ar8327 and ar8236 are added since they are the only
two I could verify.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
da64a8c656 generic: ar8216: move ar8xxx_id_chip into ar8xxx_phy_probe
ar8xxx_id_chip is used to determine current ar8xxx_chip using switch
id and this isn't needed during mdiodev probing.
Move it out of ar8xxx_probe_switch so that we can skip it.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
ebec6c9f85 generic: ar8216: add device struct into struct ar8xxx_priv
dev has been taken up by switch_dev so it's named pdev instead.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
2e6c96a649 generic: ar8216: drop duplicated include
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
15323c4ef8 generic: ar8216: move chip id reading into a separate function
for mdio-device probing we still need to read chip id but ar8xxx_chip
can be determined using drvdata. We can't distinguish the buggy
standalone ar8216 and the builtin ar8216 in ar724x/ar933x using chip
id.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
3771176c9e ath79: add support for linux 4.19
The following patches are dropped because they are merged upstream:
-0001-tty-serial-drop-QCA-pecific-SoC-symbols.patch
-0006-usb-drop-deprecated-symbols.patch
-0009-MIPS-ath79-add-lots-of-missing-registers.patch
-0010-MIPS-ath79-add-support-for-QCA953x-QCA956x-TP9343.patch
-0014-MIPS-ath79-finetune-cpu-overrides.patch
-0015-MIPS-ath79-enable-uart-during-early_prink.patch
-0016-MIPS-ath79-get-PCIe-controller-out-of-reset.patch

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

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[synchronized kernel config with make kernel_oldconfig]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-24 01:44:25 +01:00
Chuanhong Guo
4eaa3626a8 ath79: ag71xx: pass correct device pointer to dma functions
linux 4.19 doesn't accept a NULL device for these functions.
It also complains that the device struct in net_device doesn't have
a dma_mask set.
Pass the device struct from platform_device for these functions.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:24 +01:00
Chuanhong Guo
8d3af284e0 ath79: ag71xx: add support for timer functions in linux 4.15+
Kernel newer than 4.15 dropped "data" field and used from_timer
to cast out the parent struct pointer for current timer.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-24 01:44:24 +01:00
Pawel Dembicki
67fced9ba3 ramips: add support for DLINK DIR-510L
The DIR-510L Wireless Router are based on the MT7620A SoC.

Specification:

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

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

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

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

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
[fixed whitespace issue in 10-rt2x00-eeprom]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-24 01:44:24 +01:00
Pawel Dembicki
1f149fcad3 firmware-utils: mkdlinkfw: add kernel image offset
Some boards with JBOOT have partiton between bootloader
and kernel image. This patch add possibility to change kernel
partition start address.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-03-24 01:44:24 +01:00
Qin Wei
5f40b519f3 ramips: fix wrong i2s clock unit from kHz to MHz
clk_get_rate returns the current clock rate in Hz for a clock source so
if we divide it by 1M, then we get frequency in MHz and not kHz.

Signed-off-by: Qin Wei <support@vocore.io>
[added missing commit message, and fixed author with SoB from PR message]
Signed-off-by: Petr Štetiar <ynezz@true.cz>

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-24 01:44:24 +01:00
Felix Fietkau
503edc913b mt76: update to the latest version
4d8c7e8 mt76: mt76x02: send no-skb tx status without holding the status lock
7e9e9ad mt76: mt7603: add missing initialization for dev->ps_lock
3a7e6bb mt76: fix potential deadlock on cancelling workqueues
deacb8f mt76: fix using mac80211 tx skb header padding
c9402eb mt76: use napi polling for tx cleanup
60e508e mt76: use readl/writel instead of ioread32/iowrite32
5912e8a mt7603: fix sequence number assignment
95a83cc mt7603: send BAR after powersave wakeup

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-23 18:03:38 +01:00
Koen Vandeputte
0304e76cd1 kernel: bump 4.14 to 4.14.107
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Koen Vandeputte
fa91a147bb kernel: bump 4.9 to 4.9.164
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Koen Vandeputte
9c63141025 imx6: fix legacy IRQ support (4.19)
The PCIe DWC host controller is now using MSI
(Message-signaled-interrupts) by default.

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

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

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Koen Vandeputte
f7a057871b imx6: enable PCIe (4.19)
The DWC host controller symbols are now depending on a few others

Fixes: ca1b93f038 ("imx6: add support for kernel 4.19")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Koen Vandeputte
8877fdbf02 imx6: enable crypto acceleration (4.19)
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Koen Vandeputte
74f3cc04cd imx6: enable crypto acceleration
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Koen Vandeputte
d24bac0a95 imx6: refresh kernel configs
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-22 18:14:28 +01:00
Hans Dedecker
076c11a3aa glibc: update to latest 2.27 commit
1ab314d8d3 S390: Mark vx and vxe as important hwcap.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-03-22 10:57:05 +01:00
Tobias Schramm
d78e229903 ath79: Add support for Ubiquiti NanoBeam AC
The NanoBeam is a small AR9342 based directional 5 GHz AC CPE with hardware
almost identical to the Ubiquiti NanoStation AC loco. Over the NanoStation
AC loco it has 5 additional LEDs. Four of those LEDs are used as rssi
indicators, the fifth LED is used as an ethernet link/activity indicator.

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

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

Serial flashing:

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

Flashing through factory firmware:

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

Thanks to @cybermaus for testing!

Tested-by: Maurits van Dueren den Hollander <cybermaus@gmail.com>
Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2019-03-22 00:40:29 +01:00
Xavier Douville
5ac974f214 ar71xx: Add support for Mikrotik RB SXT 2nD r3
The Mikrotik RouterBOARD SXT 2nD r3 is an outdoor WiFi AP / CPE
with a single 2.4 GHz radio and a 100 Mbps Ethernet port.
The device similar to the SXT 2nD r2, but it has SPI NOR flash instead
of NAND flash.

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

Installation instructions:

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

Signed-off-by: Xavier Douville <github@douville.org>
2019-03-22 00:40:29 +01:00
Florian Eckert
9be901061e build: suppress error output in feeds.mk
If no feed.conf or feeds.conf.default is found on image generation with
the imagebuilder we always get the following message "Unable to open
feeds configuration at <dir>/scripts/feeds line 48." on std error.

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

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2019-03-22 00:40:29 +01:00
Hauke Mehrtens
94ffb7be4d netifd: update to latest git HEAD
a8cf037 netifd: wireless: Add support for GCMP cipher
34a70b6 netifd: wireless: Add support for 802.11ad

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-21 17:07:52 +01:00
Hauke Mehrtens
0168af502b ubox: update to latest git HEAD
a782779 kmodloader: increase module name length

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-21 17:07:47 +01:00
Hauke Mehrtens
9725aa271a iwinfo: update to latest git HEAD
ce1814b iwinfo: Add device ID for Wilocity Wil6210
a8e8275 iwinfo: Add support for 802.11ad

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-21 17:07:43 +01:00
Hauke Mehrtens
b36d250b55 Revert "valgrind: enable LTO and refresh patches"
This reverts commit 0331770299.

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

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-21 17:07:00 +01:00
Rosy Song
488e7ccfbc libnftnl: bump to latest version
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2019-03-21 17:05:44 +01:00
Eneas U de Queiroz
fc1386ccf8 openssl: revert disallowing parallel build
Openssl 1.1.0 made wholesale changes to its building system.
Apparently, parallel builds are working now.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-03-21 17:05:34 +01:00
Hans Dedecker
1ca69003fd odhcpd: update to latest git HEAD (FS#2160)
6d23385 dhcpv6: extra syslog tracing
b076916 dhcpv6/router: add support for mutiple master interfaces
e4a24dc ndp: fix adding proxy neighbor entries
4ca7f7e router: add extra syslog tracing
8318e93 netlink: fix neighbor event handling (FS#2160)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-03-21 16:06:10 +01:00
Aubrey McIntosh, PhD
34113999ef ar71xx: Remove ath10k packages from archer-c7-v1 (fixes FS#1743)
ath10k_pci driver crashes once loaded and causes boot loops on this
device as 5GHz radio QCA9880-AR1A shipped with this router is broken.
It's not possible to fix this problem in software, miniPCIe radio has to
be replaced.

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

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

    ath10k: reset chip before reading chip_id in probe

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

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

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

Signed-off-by: Aubrey McIntosh, PhD <aubrey.mcintosh@utexas.edu>
[subject and commit message tweaks]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-21 02:04:57 +01:00
Andreas Ziegler
78b9d57882 ath79: GL.iNet AR300M-nand/nor: correct LAN LED
The port labled as "LAN" is eth1.
That's different from the -lite variant,
where the only existing port eth0 is used as LAN

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
2019-03-21 00:57:54 +01:00
Christian Lamparter
41bceb0d4e uboot-fritz4040: fix PKG_MIRROR_HASH
The PKG_MIRROR_HASH was for some reason wrong.

Fixes: d75db67870 ("uboot-fritz4040: bump version to 2019-03-03")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-21 00:57:54 +01:00
Christian Lamparter
133bad46a6 adb: fix missing PKG_MIRROR_HASH
This package was missing a PKG_MIRROR_HASH value.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-21 00:57:54 +01:00
Adrian Schmutzler
4269914187 ramips: Speed up eeprom read/write
Reading and writing to and from flash storage is slowed down
enormously by some functions which use a block size of 1.

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

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

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Rosen Penev <rosenp@gmail.com>
2019-03-21 00:57:54 +01:00
Ozgur Can Leonard
201d3d1a82 ramips: Xiaomi MIR3G: detect board name from DTS
- Former "mir3g" board name becomes "xiaomi,mir3g".
- Reorder some entries to maintain alphabetical order.
- Change DTS so status LEDs (yellow/red/blue) mimic
  Xiaomi stock firmware: (Section Indicator)
<http://files.xiaomi-mi.co.uk/files/router_pro/router%20PRO%20EN.pdf>
<http://files.xiaomi-mi.co.uk/files/Mi_WiFi_router_3/MiWiFi_router3_EN.pdf>
|Yellow: Update (LED flickering), the launch of the system (steady light);
|Blue: during normal operation (steady light);
|Red: Safe mode (display flicker), system failure (steady light);

Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com>
[Added link to similar Router 3 model]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-21 00:57:54 +01:00
Josef Schlehofer
f22c33b40c ca-certificates: update to version 20190110
- Tested on Turris MOX, OpenWrt master
- Removed PKG_BUILD_DIR
In build_dir there were two folders
ca-certificates and ca-certificates-20190110 and it failed as files
were in ca-certificates-20190110

Signed-off-by: Josef Schlehofer <josef.schlehofer@nic.cz>
2019-03-21 00:57:54 +01:00
Steve Glennon
dc4f6b896f ipq40xx: add support for EnGenius ENS620EXT
Hardware
--------
CPU:   Qualcomm IPQ4018
RAM:   256M
FLASH: 32M SPI NOR W25Q256
ETH:   QCA8075
WiFi2: IPQ4018 2T2R 2SS b/g/n
WiFi5: IPQ4018 2T2R 2SS n/ac
LED:    - Power amber
        - LAN1(PoE) green
        - LAN2 green
        - Wi-Fi 2.4GHz green
        - Wi-Fi 5GHz green
BTN:    - WPS
UART:  115200n8 3.3V J1
       VCC(1) - GND(2) - TX(3) - RX(4)

Added basic support to get the device up and running for a sysupgrade
image only.
There is currently no way back to factory firmware, so this is a one-way
street to OpenWRT.
Install from factory condition is convoluted, and may brick your device:
1) Enable SSH and disable the CLI on the factory device from the web user
   interface (Management->Advanced)
2) Reboot the device
3) Override the default, limited SSH shell:
   a) Get into the ssh shell:
      ssh admin@192.168.1.1 /bin/sh --login
   b) Change the dropbear script to disable the limited shell. At the
      empty command prompt type:
        sed -i '/login_ssh/s/^/#/g’ dropbear
        /etc/init.d/dropbear restart
        exit
4) ssh in to a (now-) normal OpenWRT SSH session
5) Flash your built image
   a) scp openwrt-ipq40xx-engenius_ens620ext-squashfs-sysupgrade.bin
      admin@192.168.1.1:/tmp/
   b) ssh admin@192.168.1.1
   c) sysupgrade -n
      /tmp/openwrt-ipq40xx-engenius_ens620ext-squashfs-sysupgrade.bin
6) After flash completes (it may say "Upgrade failed" followed by
   "Upgrade completed") and device reboots, log in to newly flashed
   system. Note you will now need to ssh as root rather than admin.

Signed-off-by: Steve Glennon <s.glennon@cablelabs.com>
[whitespace fixes, reordered partitions, removed rng node from 4.14,
fixed 901-arm-boot-add-dts-files.patch]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-21 00:57:54 +01:00
INAGAKI Hiroshi
5c11258297 ramips: add support for I-O DATA WN-AC733GR3
I-O DATA WN-AC733GR3 is a 2.4/5 GHz band 11ac router, based on
MediaTek MT7620A.

Specification

- SoC		: MediaTek MT7620A
- RAM		: DDR2 64 MiB
- Flash		: SPI-NOR 8 MiB
- WLAN		: 2.4/5 GHz
  - 2.4 GHz : MT7620A (SoC), 2T2R
  - 5 GHz   : MT7610E, 1T1R
- Ethernet	: 10/100/1000 Mbps (RTL8367RB)
- LED/key	: 4x/4x (2x buttons, 1x slide-switch)
- UART		: through-hole on PCB
  - J1: Vcc, RX, GND, TX from LED side
  - 57600n8

Flash instruction using factory image:

1. Boot WN-AC733GR3 normaly
2. Access to "http://192.168.0.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

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-03-21 00:57:20 +01:00
Petr Štetiar
d2c3eb1e43 kernel: brcm47xx: Backport fixes for USB on WNDR3400v2 (fixes FS#2170)
Eric has reported on OpenWrt's bug tracking system[1], that he's not
able to use USB devices on his WNDR3400v2 device after the boot, until
he turns on GPIO #21 manually through sysfs.

1. https://bugs.openwrt.org/index.php?do=details&task_id=2170

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-20 23:18:46 +01:00
Petr Štetiar
846f98056a kernel: Backport ar933x_uart build fix (fixes FS#2152)
Andrey has reported on OpenWrt's bug tracking system[1], that he
currently can't use ar93xx_uart as pure serial UART without console
(CONFIG_SERIAL_8250_CONSOLE and CONFIG_SERIAL_AR933X_CONSOLE undefined),
because compilation ends with following error:

 ar933x_uart.c: In function 'ar933x_uart_console_write':
 ar933x_uart.c:550:14: error: 'struct uart_port' has no
                               member named 'sysrq'

1. https://bugs.openwrt.org/index.php?do=details&task_id=2152

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-20 23:07:03 +01:00
Deng Qingfang
31078dbc76 iproute2: update to 5.0.0
Update iproute2 to 5.0.0
Remove upstream patch 001-tc-fix-undefined-XATTR_SIZE_MAX
Alter patch 170-ip_tiny as support for IPX and DECnet is dropped
Update patch 010-cake-fwmark to match upstream commit

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-03-20 21:48:04 +01:00
Daniel Engberg
8568dcd931 toolchain: Remove binutils 2.29 for ARC targets
Remove binutils 2.29 for ARC targets

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-20 18:23:39 +01:00
Daniel Engberg
da6ba853ce toolchain: Use binutils 2.32 by default for ARC
Use binutils 2.32 by default for ARC targets

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-20 18:23:39 +01:00
Daniel Engberg
075c76ea67 toolchain: Remove GCC 7.1 for ARC targets
Remove GCC 7.1 for ARC targets

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-20 18:23:39 +01:00
Daniel Engberg
343b36ffc7 toolchain: Use GCC 8.3.0 by default for ARC
Use GCC 8.3.0 by default for ARC targets
Includes a fix by Evgeniy Didin which fixes GCC version selection if
DEVEL isn't set

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-20 18:23:39 +01:00
Evgeniy Didin
6c7b49c8b9 kernel: Update arc-add-OWRTDTB-section patch for 4.14
In 4.14.104 commit "e7264579eb80" (ARC: U-boot: check arguments paranoidly)
was introduced, which together with 332-arc-add-OWRTDTB-section.patch
caused build failure.

This commit updates 332-arc-add-OWRTDTB-section.patch.

Fixes:
http://phase1.builds.openwrt.org/builders/archs38%2Fgeneric/builds/1290
http://phase1.builds.openwrt.org/builders/archs38%2Fgeneric/builds/1269

Signed-off-by: Evgeniy Didin <evgeniy.didin@synopsys.com>
[Updated patch for kernel 4.19 in addition]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
2019-03-20 18:23:31 +01:00
Felix Fietkau
38860fe2e4 mac80211: fix an issue with the TXQ scheduling API and powersave clients
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-20 10:41:30 +01:00
Felix Fietkau
ca9ad880f2 mac80211: improve the txq scheduling API to deal with driver buffered packets
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-20 10:41:30 +01:00
Felix Fietkau
60659b2d9e mac80211: optimize skb resizing to avoid reallocation when using 802.11s + batman-adv
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-20 10:41:30 +01:00
Ryan Mounce
ffb2a3aa2a iproute2: add cake fwmark support
Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2019-03-20 07:07:15 +10:30
Ryan Mounce
6d5762f6d8 kmod-sched-cake: bump to latest cake
Update the out of tree build of cake. Applicable patches are also in
net-next.

057c738 Fix fwmark_shft assignment (again)
ca6c162 Add support for storing mark back into conntrack
7ed9b6c Fix off-by-one error when setting fwmark_shft.
a4a243a sch_cake: Interpret fwmark parameter as a bitmask
29d707e Simplify logic in cake_select_tin()
8acaaee Permit use of connmarks as tin classifiers
348f186 Make the dual modes fairer
99a7297 compat: Don't lock root qdisc when dumping stats on old kernels

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2019-03-19 22:40:13 +10:30
Koen Vandeputte
e7a7749a3c kernel: fix compile issue for tda1997x media device
Building tda1997x fails now unless V4L2_FWNODE is selected:

drivers/media/i2c/tda1997x.o: in function `tda1997x_parse_dt'
undefined reference to `v4l2_fwnode_endpoint_parse'

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-19 09:19:41 +01:00
Wang Xin-yu (王昕宇)
57b1e951b5 ipq806x: Enlarge R7500v2 flash - use netgear partition
This patch increases available space from 20MB to 86MB.
Netgrear OEM firmware contains a 'netgear' partition followed 'ubi',
which can be used in openwrt for larger ubi space. (similar to
Netgear R7800).

original author (notmyrealhandle) tested this on R7500v2 and point that
OEM firmware can auto rebuild this partition (if used by openwrt).

Author: notmyrealhandle<22336358+notmyrealhandle@users.noreply.github.com>
Signed-off-by: Wang Xin-yu (王昕宇) <comicfans44@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [minor touch-ups]
2019-03-18 20:55:52 +01:00
Sven Roederer
f1396ac753 ath79: align naming of Ubiquiti Nanostation M
Support for the Nanostation M (XW) was added in 40530c8eb with board
name "nanostation-m-xw". The current image for the "Nanostation M"
uses "nano-m" as the board name.
This commit renames it to the full product name as it's used by all
other boards. The legacy boardname of the ar71xx target is added
via SUPPORTED_DEVICES to ease switching to ath79 target.

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
[touch-ups on the commit message, removed subject remains]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-18 20:55:24 +01:00
Micke Prag
c3a17ee4b3 ramips: add #pwm-cells property to MT76x8 dts
To be able to configure pwms the pwm driver needs to know the number off
cells in the "pwms" property. For this platform this is 2.

Signed-off-by: Micke Prag <micke.prag@telldus.se>
2019-03-18 20:43:09 +01:00
Daniel Engberg
9b16a69941 usbutils: Update usb.ids to 0.321
Update usb.ids to 0.321

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-18 20:43:09 +01:00
Tomasz Maciej Nowak
b3a0c97b8c ath79: add support for jjPlus JA76PF2
jjPlus JA76PF2 (marketed as IntellusPro2) is a network embedded board.

Specification
SoC:		Atheros AR7161
RAM:		64 MB DDR
Flash:		16 MB SPI NOR
Ethernet:	2x 10/100/1000 Mbps AR8316
		LAN (CN11), WAN/PoE (CN6 - close to power barrel
		connector, 48 V)
MiniPCI:	2x
LEDS:		4x, which 3 are GPIO controlled
Buttons:	2x GPIO controlled
		Reset (SW1, closer to ethernet ports), WPS (SW2)
Serial:		1x (only RX and TX are wired)
		baud: 115200, parity: none, flow control: none

Currently there is one caveat compared to ar71xx target images as the
MAC addresses are random on every reboot. To remedy this one needs to
store the WAN MAC address in RedBoot configuration. OpenWrt on first
boot, after flashing, will read out the address and assign proper ones
to both WAN and LAN ports. It is iportant to NOT keep the old
configuration when doing sysupgrade from ar71xx.

Upgrading from OpenWrt ar71xx image
1. Connect to serial port,
2. Download OpenWrt sysupgrade image to /tmp directory and flash it
   with:
    sysupgrade -n <openwrt_sysupgrade_image_name>
3. After writing new image OpenWrt will reboot, now interrupt boot
   process and enter RedBoot (bootloader) command line by pressing
   Ctrl+C,
4. Enter following commands (replace variable accordingly),
    set_mac (to view MAC addresses)
    alias ethaddr <wan_port_mac_adress>
    (confirm storing the value by inputting y and pressing Enter)
    reset
5. Now board should restart and boot OpenWrt with proper MAC addresses.

Installation
1. Prepare TFTP server with OpenWrt initramfs image,
2. Connect to WAN ethernet port,
3. Connect to serial port,
4. Power on the board and enter RedBoot (bootloader) command line by
   pressing Ctrl+C,
5. Enter following commands (replace variables accordingly):
    set_mac (to view MAC addresses)
    alias ethaddr <wan_port_mac_address>
    (confirm storing the value by inputting y and pressing Enter)
    ip_adress -l <board_ip_adress>/24 -h <tftp_server_ip_adress>
    load -r -b 0x80060000 <openwrt_initramfs_image_name>
    exec -c ""
6. Now board should boot OpenWrt initramfs image,
7. Download OpenWrt sysupgrade image to /tmp directory and flash it
   with:
    sysupgrade <openwrt_sysupgrade_image_name>
8. Wait few minutes, after the D2 LED will stop blinking, the board
   is ready for configuration.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-03-18 20:43:09 +01:00
Tomasz Maciej Nowak
8f6f260302 ath79: routerstation: prepare to use sysupgrade-tar format image
In PR [1] introducing initial support for Ubiquiti RouterStation boards,
Mathias Kresin suggested to replace the combined sysupgrade image with
tarball generated by sysupgrade-tar.sh. This would simplify deployment
of sysupgrade as the kernel size (needed to update FIS partition) could
be simply calculated on the fly instead of reading value from combined
image header. Unfortunately this would break sysupgrade compatibility
between ar71xx image and ath79 image. Therefore this commit creates
migration path to use new sysuprade image, it adds code to accept both
of them at this moment. The plan is to keep it until new stable version
is released. Then the image recipe should be changed to new format and
compatibility code for old image removed.

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

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-03-18 20:43:09 +01:00
Martin Schiller
f3da2ebf90 lantiq: kernel 4.14: fix usb_phy1 reset status bit in vr9.dts
The status of USB PHY 1 Reset Domain is also in bit 5 of RST_STAT2.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-03-18 20:42:30 +01:00
Tomasz Maciej Nowak
9fd2a3faa5 ath79: qca955x: add wmac migration hotplug event
When upgrading from ar71xx target images to ath79 based ones, the
integrated wireless interface changes its sysfs path. Therefore the
previous enabled wireless interface will be disabled, which can cause
false complains about it not working. This commit adds hotplug event
which migrates to new path and will keep the wrireless interface
enabled after upgrade.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-03-18 20:42:29 +01:00
Tomasz Maciej Nowak
50674ccade ath79: fix leds description for EnGenius EPG5000
Align the LEDs deffinition with MACH file present in ar71xx target which
has the correct LED functions and colors adescription.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-03-18 20:42:29 +01:00
Koen Vandeputte
a8cfef6c45 kernel: bump 4.14 to 4.14.106
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>
2019-03-18 10:02:51 +01:00
Koen Vandeputte
79fc997e48 kernel: bump 4.9 to 4.9.163
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-18 10:02:51 +01:00
Deng Qingfang
89c8232f78 ipset: size optimizations
ipset utility was linked statically to libipset. Disable static library for dynamic linking to save space.
Add -Wl,--gc-sections,--as-needed for further reduction

MIPS ipk size:
ipset: 29KiB -> 2KiB
libipset: 39KiB -> 38KiB

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-03-17 22:17:48 +01:00
Stijn Tintel
d454035430 Revert "tools/cmake: Update to 3.14.0"
The cmake bump to 3.14.0 breaks build on all targets. Revert it for now.

This reverts commit a3446257a8.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-03-17 11:25:50 +01:00
Daniel Engberg
a56c21f582 tools/libelf: Add mirrors as main site is dead
Main site hasn't resolved for days so just add a few mirrors instead

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-17 10:22:36 +01:00
Daniel Engberg
a3446257a8 tools/cmake: Update to 3.14.0
Update CMake to 3.14.0
Refresh patches
Remove inofficial fossies.org and replace with GitHub (link on official site)
Remote 150-C-feature-checks-Match-warnings-more-strictly.patch as it's
a no longer needed backport from upstream.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-03-16 22:01:59 +01:00
Alexander Couzens
dd3214f95d mac80211: netifd: Use a mask when using iw set antenna
The keyword "all" is only supported by `iw set antenna` if
it's used as the only argument.
Convert "all" into a mask before calling `iw set antenna`.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-03-16 21:16:28 +01:00
Felix Fietkau
8852a09d85 mt76: update to the latest version
00ac79d mt7603: fix initialization of max rx length
320af65 mt76: mt7603: use the correct hweight8() function
bdee924 mt76: fix schedule while atomic in mt76x02_reset_state
abcb544 mt76x02: do not enable RTS/CTS by default
e97a209 mt76: remove mt76_queue dependency from tx_queue_skb function pointer
ddd98f8 mt76: remove mt76_queue dependency from tx_prepare_skb function pointer
9bc2d56 mt76: remove mt76_queue dependency from tx_complete_skb function pointer
06c917f mt76: introduce mt76_sw_queue data structure
2dc63b0 mt76: introduce mt76_txq_id field in mt76_queue_entry
312f6fc mt76: remove irqsave/restore in locking for tx status fifo
0fe6386 mt76: move mt76x02_insert_hdr_pad in mt76-core module
efe9a47 mt76: mmio: move mt76_insert_hdr_pad in mt76_dma_tx_queue_skb
0b03f87 mt76: move skb dma mapping before running tx_prepare_skb
f977a92 mt76: introduce mt76_tx_info data structure
72fe286 mt76: use mac80211 txq scheduling
b77b932 mt76: reduce locking in mt76_dma_tx_cleanup
c0ab515 mt76: store wcid tx rate info in one u32 reduce locking
f37ad72 mt76: mt76x02: store software PN/IV in wcid
5323005 mt76: move tx tasklet to struct mt76_dev
688d708 mt76: only schedule txqs from the tx tasklet
42ce040 mt76: use TX_NEEDS_ALIGNED4_SKBS
2660aa9 mt76: mt7603: store software PN/IV in wcid
3ce8a93 mt76: dma: add static qualifier to mt76_dma_tx_queue_skb
81a32aa mt7603: remove mt7603_mcu_init routine
48dc7e9 mt7603: core: do not use magic numbers in mt7603_reg_map
2236490 mt76: usb: reduce code indentation in mt76u_alloc_tx

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 21:14:43 +01:00
Felix Fietkau
4cf1394f51 mac80211: add a few performance improvement patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
1f68aac9d7 kernel: backport flow dissector batman-adv support
Improves performance on multicore systems handling batman-adv traffic

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
6869ae2ab5 mac80211: improve locking around the txq scheduling / airtime fairness API
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
04e4b779cc mac80211: backport the txq scheduling / airtime fairness API
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
fb0a80f4cf mac80211: fix an unaligned access in the mesh hash table function
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
fd8ca8deb3 netifd: add support for suppressing the DHCP request hostname by setting it to *
dnsmasq (and probably other DHCP servers as well) does not like to hand out
leases with duplicate host names.
Adding support for skipping the hostname makes it easier to deploy setups
where it is not guaranteed to be unique

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
5cda4a3e30 mac80211: update and fix the patch to allow 4-byte aligned tx skbs
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Felix Fietkau
51e1092fae mac80211: allocate tailroom for forwarded mesh packets
Fixes a warning + packet loss on encrypted mesh networks with forwarding

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-16 19:59:02 +01:00
Tony Ambardar
b61495409b iproute2: tc: reduce size of dynamic symbol table
In the case of SHARED_LIBS=y, don't use -export-dynamic to place *all*
symbols into the dynamic symbol table. Instead, use --dynamic-list to
export a smaller set of symbols similar to that defined in static-syms.h
in the case of SHARED_LIBS=n, avoiding an 11 KB tc package size increase.
The symbol set is based on that required by the only plugin, m_xt.so.

Also increment PKG_RELEASE.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE fixup]
2019-03-14 22:55:06 +01:00
Tony Ambardar
0b57a2165a iproute2: tc: enable and fix support for using .so plugins
This enables using the tc module m_xt.so, which uses the act_ipt kernel
module to allow tc actions based on iptables targets. e.g.

   tc filter add dev eth0 parent 1: prio 10 protocol ip \
   u32 match u32 0 0 action xt -j DSCP --set-dscp-class BE

Make the SHARED_LIBS parameter configurable and based on tc package
selection.

Fix a problem using the tc m_xt.so plugin as also described in
https://bugs.debian.org/868059:

  Sync include/xtables.h from iptables to make sure the right offset is
  used when accessing structure members defined in libxtables. One could
  get “Extension does not know id …” otherwise. (See also: #868059)

Patch to sync the included xtables.h with system iptables 1.6.x. This
continues to work with iptables 1.8.2.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-03-14 22:54:59 +01:00
Tony Ambardar
f61359e16e iproute2: support eBFP/XDP object file loading, simplify linking libelf
Add build and runtime dependencies on libelf, allowing tc and ip-full
to load BPF and XDP object files respectively.

Define package 'tc' as a singleton package variant, which can be used to
enable additional functionality limited only to tc. Also set ip-tiny
as the default 'ip' variant.

Preserve optionality of libelf by having configuration script follow the
HAVE_ELF environment variable, used similarly to the HAVE_MNL variable.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-03-14 22:54:50 +01:00
Hans Dedecker
127d38f219 netifd: update to latest git HEAD (FS#2087)
81ac3bc interface-ip: fix delegate config update on reload (FS#2087)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-03-14 13:50:51 +01:00
Zoltan HERPAI
5e247f3ac1 uboot-sunxi: add fix for A20-OLinuXino-Lime2-eMMC rev. K boards
The OLinuXino Lime2 rev. K boards use new PHYs (Micrel KSZ9031),
so enable that.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-03-13 22:43:13 +01:00
Zoltan HERPAI
e991fb44e0 uboot-sunxi: bump to 2019.01
Tested on:
Bananapro (A20)
Banana Pi M3 (A83t)
Linksprite pcDuino3 (A20)
Olinuxino Lime (A10)
Orange Pi 2 (H3)
Pine64 (A64)

Patches refreshed.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-03-13 22:42:38 +01:00
Rosen Penev
96e0fa94c7 ath79: ag71xx: Remove ndo_poll_controller
It is unused by default and upstream is trying to remove it as it has
negative effects when the driver is under load. Upstream explanation:

netpoll: avoid capture effects for NAPI drivers
As diagnosed by Song Liu, ndo_poll_controller() can
be very dangerous on loaded hosts, since the cpu
calling ndo_poll_controller() might steal all NAPI
contexts (for all RX/TX queues of the NIC).

This capture, showing one ksoftirqd eating all cycles
can last for unlimited amount of time, since one
cpu is generally not able to drain all the queues under load.

It seems that all networking drivers that do use NAPI
for their TX completions, should not provide a ndo_poll_controller() :

Most NAPI drivers have netpoll support already handled
in core networking stack, since netpoll_poll_dev(
 uses poll_napi(dev) to iterate through registered
NAPI contexts for a device.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-03-13 16:35:45 +01:00
Adrian Schmutzler
26f7cf8ac3 ar71xx: Speed up mtd extraction in ar71xx.sh
Although the amount of data read here is smaller than for the
caldata, there still might be some speed gain compared to reading
bytewise. And there is no harm ...

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-03-13 16:27:41 +01:00
Adrian Schmutzler
51fb186cb3 ar71xx: Speed up caldata/eeprom handling
Reading and writing to and from flash storage is slowed down
enormously by some functions which use a block size of 1.

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

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

Speed comparison @ TP-Link TL-WDR4300 (just manually) results
in a time reduction by three orders of magnitude (99.9 %).

> time dd if=/dev/mtd3 of=/lib/firmware/test-slow bs=1 count=4096 skip=4096
4096+0 records in
4096+0 records out
real    0m 15.85s
user    0m 0.06s
sys     0m 13.28s

> time dd if=/dev/mtd3 of=/lib/firmware/test-fast bs=4096 count=1 skip=4096 iflag=skip_bytes
1+0 records in
1+0 records out
real    0m 0.02s
user    0m 0.00s
sys     0m 0.02s

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-03-13 16:27:41 +01:00
Adrian Schmutzler
e1ba59ea5c ath79: Speed up caldata/eeprom handling
Reading and writing to and from flash storage is slowed down
enormously by some functions which use a block size of 1.

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

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

Speed comparison @ UBNT AC-Mesh (just manually) results
in a time reduction by three orders of magnitude (99.9 %).

> time dd if=/dev/mtd6 of=/lib/firmware/test-slow bs=1 count=4096 skip=4096
4096+0 records in
4096+0 records out
real    0m 16.84s
user    0m 0.07s
sys     0m 13.54s

> time dd if=/dev/mtd6 of=/lib/firmware/test-fast bs=4096 count=1 skip=4096 iflag=skip_bytes
1+0 records in
1+0 records out
real    0m 0.02s
user    0m 0.00s
sys     0m 0.02s

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Rosen Penev <rosenp@gmail.com>
2019-03-13 16:27:41 +01:00
kbuild test robot
91a7791115 apm821xx: usb: xhci: fix semicolon.cocci warnings
drivers/usb/host/xhci-pci.c:788:2-3: Unneeded semicolon

 Remove unneeded semicolon.

Generated by: scripts/coccinelle/misc/semicolon.cocci

Fixes: 9e0fd1b52a ("apm821xx: add support for the Netgear Centria N900 WNDR4700/WNDR4720")
Signed-off-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [changed subject]
2019-03-13 16:25:37 +01:00
Linus Walleij
ac5f431ad1 gemini: Generate padded kernel+rootfs images for DIR-685
We currently generate a kernel that boots from the harddrive
in the DIR-685. That's not how we usually do things, so
let's augment it to boot from flash and mount the rootfs
using squashfs and JFFS2 like everyone else.

Partition splitting only work when the partitions are
inside of a "partitions" node which is why we have a patch
like this (submitted upstream).

Another patch drops the rootfs arguments and renames the
firmware partition while adding the compatible "wrg"
to it so the WRGG parser will kick in.

Factory image was tested by bravely reflashing the DIR-685
from stock firmware using the web UI and the serial console
boot loader.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-03-13 16:25:36 +01:00
Linus Walleij
b907097291 kernel: mtdsplit: wrgg: Support big and little endian
The WRGG images exist in both big and little endian variants,
as can be seen from the image generator in
tools/firmware-utils/src/mkwrggimg.c, you either pass
the "-b" flag or not. The D-Link DIR-685 is using little
endian images so we need to support splitting these.

Detect endianness like this: if the kernel entity size
gets silly big (bigger than the flash memory) we are
probably using the wrong endianness.

Example: my kernel of 0x0067ff64 was switched around by
wrong endianness and detected as 0x64ff67a0 (the actual
size in swapped endianness + header 0xa0).

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-13 16:25:36 +01:00
Tomasz Maciej Nowak
ee34740ca3 ath79: add suport for EnGenius EPG5000
EnGenius EPG5000 (v1.0.0, marketed as IoT Gateway) is a dual band
wireless router.

Specification
SoC:		Qualcomm Atheros QCA9558
RAM:		256 MB DDR2
Flash:		16 MB SPI NOR
WIFI:		2.4 GHz 3T3R integrated
		5 GHz 3T3R QCA9880 Mini PCIe card
Ethernet:	5x 10/100/1000 Mbps QCA8337N
USB:		1x 2.0
LEDS:		4x GPIO controlled
Buttons:	2x GPIO controlled
UART:		4 pin header, starting count from white triangle on PCB
		1. VCC 3.3V, 2. GND, 3. TX, 4. RX
		baud: 115200, parity: none, flow control: none

Installation
1. Connect to one of LAN (yellow) ethernet ports,
2. Open router configuration interface,
3. Go to Tools > Firmware,
4. Select OpenWrt factory image with dlf extension and hit Apply,
5. Wait few minutes, after the Power LED will stop blinking, the router
   is ready for configuration.

Alternative installation
1. Prepare TFTP server with OpenWrt sysupgrade image,
2. Connect to one of LAN (yellow) ethernet ports,
3. Connect to UART port (leaving out VCC pin!),
4. Power on router,
5. When asked to enter a number 1 or 3 hit 2, this will select flashing
   image from TFTP server option,
6. You'll be prompted to enter TFTP server ip (default is 192.168.99.8),
   then router ip (default is 192.168.99.9) and for last, image name
   downloaded from TFTP server (default is uImageESR1200_1750),
7. After providing all information U-Boot will start flashing the image,
   You can observe progress on console, it'll take few minutes and when
   the Power LED will stop blinking, router is ready for configuration.

Additional information
If connected to UART, when prompted for number on boot, one can enter
number 4 to open bootloader (U-Boot) command line.
OEM firmware shell password is: aigo3d0a0tdagr
useful for creating backup of original firmware.
When doing upgrade from OpenWrt ar71xx image, it is recomended to not keep
the old configuration.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-03-13 16:25:35 +01:00
Marius Genheimer
41a86debe3 ipq40xx: limit frequencies for Asus Lyra
The Asus Lyra has filters in the antenna paths which limits
the usable frequencies on both 5GHz radios.

Signed-off-by: Marius Genheimer <mail@f0wl.cc>
2019-03-13 16:25:35 +01:00
David Bauer
148d29d47b ipq40xx: add support for AVM FRITZ!Repeater 3000
Hardware
--------
CPU:   Qualcomm IPQ4019
RAM:   256M (NANYA NT5CC128M16JR-EK)
FLASH: 128M NAND (Macronix MX30LF1G18AC-XKI)
ETH:   Qualcomm QCA8072
WiFi2: IPQ4019 2T2R 2SS b/g/n
WiFi5: IPQ4019 2T2R 2SS n/ac
WiFi5: QCA9984 4T4R 4SS n/ac
LED:    - Connect green/blue/red
        - Power green
BTN:   WPS/Connect
UART:  115200n8 3.3V
       VCC - RX - TX - GND (Square is VCC)

Installation
------------
1. Grab the uboot for the Device from the 'u-boot-fritz3000'
   subdirectory. Place it in the same directory as the 'eva_ramboot.py'
   script. It is located in the 'scripts/flashing' subdirectory of the
   OpenWRT tree.

2. Assign yourself the IP address 192.168.178.10/24. Connect your
   Computer to one of the boxes LAN ports.

3. Connect Power to the Box. As soon as the LAN port of your computer
   shows link, load the U-Boot to the box using following command.

   > ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz3000.bin

4. The U-Boot will now start. Now assign yourself the IP address
   192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP
   server root directory and rename it to 'FRITZ3000.bin'.

5. The Box will now boot OpenWRT from RAM. This can take up to two
   minutes.

6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using
   scp. SSH into the Box and first write the Bootloader to both previous
   kernel partitions.

   > mtd write /path/to/uboot-fritz3000.bin uboot0
   > mtd write /path/to/uboot-fritz3000.bin uboot1

7. Remove the AVM filesystem partitions to make room for our kernel +
   rootfs + overlayfs.

   > ubirmvol /dev/ubi0 --name=avm_filesys_0
   > ubirmvol /dev/ubi0 --name=avm_filesys_1

8. Flash OpenWRT peristently using sysupgrade.

   > sysupgrade -n /path/to/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-13 16:25:35 +01:00
David Bauer
5389db72e3 fritz-tools: add support for IPQ40xx platform
AVM devices based on Qualcomm IPQ40xx do not store sector health
information in the OOB area. Make this check optional to support this
platform.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-13 16:25:34 +01:00
David Bauer
d75db67870 uboot-fritz4040: bump version to 2019-03-03
Adds support for the AVM FRITZ!Repeater 3000

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-13 16:25:34 +01:00
Jeff Kletsky
fefa34def8 ath79: Add GL.iNet AR-300M-Lite
AR300M-Lite is single-Ethernet variant of the AR300M series
Its eth0 would otherwise be assigned to the WAN interface
making it unreachable firstboot or failsafe.

Installation instructions from OEM (OpenWrt variant):
* Install sysupgrade.bin using OEM's "Advanced" GUI (LuCI),
   * Do not preserve settings
   * Access rebooted device via Ethernet at OpenWrt default address

Add previously missing LED defaults for all three variants;
-nand, -nor, -lite to the definitions in 01_leds

Non-lite variants thanks to Andreas Ziegler
https://patchwork.ozlabs.org/patch/1049396/

Runtime-tested:  GL.iNet AR300M-Lite

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
2019-03-13 16:25:34 +01:00
Chen Minqiang
7dfe357a3d ramips: HC5861 drop unused gpio group define in dts
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2019-03-13 16:25:34 +01:00
Ozgur Can Leonard
d009033911 ramips: add support for Xiaomi Mi Router 3 Pro
Hardware:

CPU:   MediaTek MT7621AT (2x880MHz)
RAM:   512MB DDR3
FLASH: 256MB NAND
WiFi:  2.4GHz 4x4 MT7615 b/g/n (Needs driver, See Issues!)
WiFI:  5GHz 4x4 MT7615 a/n/ac  (Needs driver, See Issues!)
USB:   1x 3.0
ETH:   1x WAN 10/100/1000 3x LAN 10/100/1000
LED:   Power/Status
BTN:   RESET
UART:  115200 8n1

Partition layout and boot:

Stock Xiaomi firmware has the MTD split into (among others)

- kernel0 (@0x200000)
- kernel1 (@0x600000)
- rootfs0
- rootfs1
- overlay (ubi)

Xiaomi uboot expects to find kernels at 0x200000 & 0x600000
referred to as system 1 & system 2 respectively.
a kernel is considered suitable for handing control over
if its linux magic number exists & uImage CRC are correct.
If either of those conditions fail, a matching sys'n'_fail flag
is set in uboot env & a restart performed in the hope that the
alternate kernel is okay.
If neither kernel checksums ok and both are marked failed, system 2
is booted anyway.

Note uboot's tftp flash install writes the transferred
image to both kernel partitions.

Installation:

Similar to the Xiaomi MIR3G, we keep stock Xiaomi firmware in
kernel0 for ease of recovery, and install OpenWRT into kernel1 and
after.

The installation file for OpenWRT is a *squashfs-factory.bin file that
contains the kernel and a ubi partition. This is flashed as follows:

nvram set flag_try_sys1_failed=1
nvram set flag_try_sys2_failed=0
nvram commit
dd if=factory.bin bs=1M count=4 | mtd write - kernel1
dd if=factory.bin bs=1M skip=4 | mtd write - rootfs0
reboot

Reverting to stock:

The part of stock firmware we've kept in kernel0 allows us to run stock
recovery, which will re-flash stock firmware from a *.bin file on a USB.

For this we do the following:

fw_setenv flag_try_sys1_failed 0
fw_setenv flag_try_sys2_failed 1
reboot

After reboot the LED status light will blink red, at which point pressing
the 'reset' button will cause stock firmware to be installed from USB.

Issues:

OpenWRT currently does not have support for the MT7615 wifi chips. There is
ongoing work to add mt7615 support to the open source mt76 driver. Until that
support is in place, there are closed-source kernel modules that can be used.

See: https://forum.openwrt.org/t/support-for-xiaomi-wifi-r3p-pro/20290/170

Signed-off-by: Ozgur Can Leonard <ozgurcan@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[02_network remaps, Added link to notes]
2019-03-13 16:25:34 +01:00
Santiago Piccinini
24463d0d94 ath79: add support for LibreRouter v1
Hardware
--------
SOC:   QCA9558
RAM:   128M DDR2
Flash: 16MiB SPI-NOR
ETH:   QCA8337N: 2x 10/100/1000 PoE and PoE pass-through
WiFi2: QCA9558 (bgn) 2T2R
WiFi5: 2x mPCIE with AR9582 (an) 2T2R
BTN:   1x Reset
GPIO:  multiple GPIO on header, PoE passthrough enable
UART:  3.3V 115200 8N1 header on the board
WDG:   ATTiny13 watchdog
JTAG:  header on the board
USB:   1x connector and 1x header on the board
PoE:   10-32V input in ETH port 1, passthrough in port 2
mPCIE: 2x populated with radios (but replaceable)

OpenWrt is preinstalled from factory. To install use <your-image>-sysupgade.bin
using the web interface or with sysupgrade -n.

Flash from bootloader (in case failsafe does not work)
1. Connect the LibreRouter with a serial adapter (TTL voltage) to the UART
   header in the board.
2. Connect an ETH cable and configure static ip addres 192.168.1.10/24
3. Turn on the device and stop the bootloader sending any key through the serial
   interface.
4. Use a TFTP server to serve <your image>-sysupgrade.bin file.
5. Execute the following commands at the bootloader prompt:
    ath> tftp 82000000 <your image>-sysupgrade.bin
    ath> erase 0x9f050000 +$filesize
    ath> cp.b 0x82000000 0x9f050000 $filesize
    ath> bootm 0x9f050000

More docs
* Bootloader https://github.com/librerouterorg/u-boot
* Board details (schematics, gerbers): https://github.com/librerouterorg/board

Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
2019-03-13 16:25:34 +01:00
David Bauer
93601d647f ipq40xx: fix FRITZBox 7530 NAND controller node
This removes the 'cs-gpios' property from the AVM FRITZ!Box 7530 NAND
controller node. As pointed out by Christian Lamparter, the property is
not needed by the Qualcomm NAND controller driver.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-13 16:25:34 +01:00
Christian Lamparter
784f2e73df ipq40xx: fix phy interrupt setting
This patch fixes a problem that was discovered during DSA
development. On the MR33, the link change events from the
external AR8035-PHY would never make it to the qca8k driver.

The issue turned out to be a misplaced memcpy that was copying
over the zero-initialized irq table, when it should have been
set to PHY_POLL. Hence this patch moves the memcpy after the
array has been initialized.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-13 16:25:34 +01:00
Christian Lamparter
39092ad9e9 ipq40xx: tidy up 02_networks
- fix linksys' EA6350v3 order

 - remove whitespace that should have been tabs

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-13 16:25:34 +01:00
Eneas U de Queiroz
2407b1edcc openssl: disable digests by default, misc fixes
Openssh uses digest contexts across forks, which is not supported by the
/dev/crypto engine.  The speed of digests is usually not worth enabling
them anyway.  This changes the default of the DIGESTS option to NONE, so
the user still has the option to enable them.

Added another patch related to the use of encryption contexts across
forks, that ignores a failure to close a previous open session when
reinitializing a context, instead of failing the reinitialization.

Added a link to the Cryptographic Hardware Accelerators document to the
engine pacakges description, to provide more detailed instructions to
configure the engines.

Revert the removal of the OPENSSL_ENGINE_CRYPTO symbol, currently used
by openssh.  There is an open PR to update openssh; when merged, this
symbol can be safely removed.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [refresh patches]
2019-03-12 18:26:59 +01:00
Daniel Golle
8c593804d0 oxnas: install wireless driver on pogoplugpro
PogoPlug Pro comes with AzureWave AW-NE762H PCIe module containing
Ralink's Rt3090 chip supported by the rt2x00 driver.
Install the driver as well as wpad-basic.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-12 14:18:42 +01:00
Daniel Golle
36530ba72a mac80211: rt2x00: import and update pending patches
Imported from patchwork, patches marked with '=' have already been in
our tree:
 [v3,1/4] cfg80211: add ratelimited variants of err and warn
 [v3,2/4] rt2x00: use ratelimited variants dev_warn/dev_err
 [v3,3/4] rt2x00: check number of EPROTO errors
=[v3,4/4] rt2x00: do not print error when queue is full

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-12 11:44:27 +01:00
Daniel Golle
74ef848b96 oxnas: also akitio,mycloud uses PCIe apparently
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-12 01:06:33 +01:00
Daniel Golle
0e9b11213e oxnas: enable pcie_phy on boards utilizing PCIe
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-12 00:35:16 +01:00
Wojciech Dubowik
5107176861 procd: Enable seccomp for powerpc
Signed-off-by: Wojciech Dubowik <Wojciech.Dubowik@neratec.com>
2019-03-11 23:14:28 +01:00
Piotr Dymacz
db91418766 ath79: add support for TP-Link RE350K v1
TP-Link RE350K v1 (FCC ID: TE7RE350K) is a wall-plug AC1200 Wi-Fi range
extender with 'Kasa Smart' support. Device is based on Qualcomm/Atheros
QCA9558 + QCA9882 + AR8035 platform and is available only on US market.

Specification:

- 720/600/200 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of flash (SPI NOR)
- 1x 1 Gbps Ethernet (AR8035)
- 2T2R 2.4 GHz (QCA9558), with ext. PA (SE2565T) and LNA (SKY65971-11)
- 2T2R 5 GHz (QCA9882), with ext. PA (SE5003L1-R) and LNA (SKY65981-11)
- 2x U.FL connector on PCB
- 2x dual-band PCB antennas
- 1x LED, 2x dual-color LED (all driven by GPIO)
- 3x button (app config, led, reset)
- 1x mechanical on/off slide switch
- 1x UART (4-pin, 2.54 mm pitch) header on PCB
- 1x JTAG (8-pin, 1.27 mm pitch) header on PCB

Flash instruction:
Use 'factory' image directly in vendor GUI (default IP: 192.168.0.254,
default credentials: admin/admin).

Warning:
This device does not include any kind of recovery mechanism in U-Boot.

Vendor firmware access:
You can access vendor firmware over serial (RX line requires jumper
resistor in R306 place, near XTAL) with: root/sohoadmin credentials.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-11 22:00:26 +01:00
Piotr Dymacz
82dbcd8bf2 uboot-envtools: ramips: add support for ALFA Network Tube-E4G
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-11 22:00:26 +01:00
Piotr Dymacz
9b6413982c ramips: add support for ALFA Network Tube-E4G
ALFA Network Tube-E4G is an outdoor, dual-SIM LTE Cat. 4 CPE, based on
MediaTek MT7620A, equipped with Quectel EC25 miniPCIe modem.

Specification:

- MT7620A (580 MHz)
- 64/128/256 MB of RAM (DDR2)
- 16/32 MB of flash (SPI NOR)
- 1x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 1x miniPCIe slot (with PCIe and USB 2.0 buses)
- 2x SIM slot (mini, micro) with detect and switch driven by GPIO
- 1x detachable antenna (modem main)
- 1x internal antenna (modem div)
- 1x GPS passive antenna (optional)
- 5x LED (all driven by GPIO)
- 1x button (reset)
- UART (4-pin, 2.54 mm pitch) header on PCB

Other:

Default SIM slot is selected at an early stage by U-Boot, based on
'default_sim' environment value: 1 or unset = SIM1 (mini), 2 = SIM2
(micro). U-Boot also resets the modem, using #PERST signal, before
starting kernel.

Flash instruction:

You can use the 'sysupgrade' image directly in vendor firmware which is
based on OpenWrt (make sure to not preserve settings - use 'sysupgrade
-n -F ...' command). Alternatively, use web recovery mode in U-Boot:

1. Power the device with reset button pressed, the LAN LED will start
   blinking slowly and after ~3 seconds, when it starts blinking faster,
   you can release the button.
2. Setup static IP 192.168.1.2/24 on your PC.
3. Go to 192.168.1.1 in browser and upload 'sysupgrade' image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-11 22:00:26 +01:00
Michael Heimpold
6ac5144b13 mxs: disable unused serial drivers
This disables PL010 and 8250 serial support for this platform
as both drivers are not used: the debug UART is PL011 and the
application UARTs use a dedicated MXS specific driver.

The kernel size reduction is neglectable, but it also removes
the non-working (confusing) /dev/ttyS0 and /dev/ttyS1 devices
in a running system (which generate errors when trying to use):

  root@OpenWrt:~# echo "hello world" > /dev/ttyS0
  ash: write error: I/O error
  root@OpenWrt:~#

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2019-03-11 19:35:43 +01:00
Hans Dedecker
2cd28c9a08 busybox: add missing install dir
Add missing /usr/sbin install dir fixing :

install: cannot create regular file 'build_dir/target-x86_64_musl/busybox-1.30.1/.pkgdir/busybox/usr/sbin/ntpd-hotplug': No such file or directory

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-03-11 17:03:17 +01:00
Daniel Golle
b4917fa907 oxnas: fix oxnas-rps-timer dt-match
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-11 15:01:37 +01:00
Daniel Golle
87a81455a1 oxnas: replace oxnas-restart with version to be submitted to upstream
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-11 13:39:33 +01:00
Daniel Golle
d6fa04a437 IB: include SUPPORTED_DEVICES in 'make info' output
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-11 05:32:29 +01:00
Daniel Golle
35a7f79096 oxnas: use generic filenames for image and DTS
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-11 03:43:30 +01:00
Daniel Golle
8ad0ba3a07 oxnas: move PCIe controller outside of simple-bus
Move PCIe controller outside down to SoC level to avoid resource
mapping problems.
Also add more detailed error handling when mapping registers.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-10 23:04:28 +01:00
Daniel Golle
a18d41996e tools: tar: update to version 1.32
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-10 21:36:28 +01:00
Hans Dedecker
b04c9a1ffc nghttp2: bump to 1.37.0
cfb47d30 Take into account larger frame size for prioritization
dbbe4e01 Remove unused field
371bc3a8 clang-format
5e7889c5 Update manual pages
b1b2ad50 Bump up version number to 1.37.0, LT revision to 31:2:17
e043ca83 Update AUTHORS
c2434dfb Simplify stream_less
816ad210 Reuse name when indexing header by referencing dynamic table
f5feb16e Merge pull request #1295 from bratkartoffel/fix-compile-boringssl
adf09f21 Merge pull request #1303 from donny-dont/fix-shared-install
2591960e Explicitly set install location when building shared libs
d93842db nghttpx: Fix backend stall if header and request body are sent in 2 packets
8dc2b263 nghttpx: Use std::priority_queue
8d842701 Update manual pages
de85b0fd Update README
5d6beed5 Merge branch 'nghttpx-backend-weight'
1ff9de4c nghttpx: Backend address selection with weight
34482ed4 Fix compilation with boringssl
9b6ced66 Bump up version number to 1.37.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-03-10 19:34:33 +01:00
Hauke Mehrtens
a18e2994df lantiq: Refresh kernel 4.14 configuration
This adds two configuration options which are getting automatically
added.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-10 19:05:49 +01:00
Hauke Mehrtens
26af8e48d3 linux-atm: Fix compile problem with kernel 4.20
This fixes the following compile problem with kernel 4.20:

In file included from arp.c:20:0:
include/linux/if_arp.h:121:16: error: 'IFNAMSIZ' undeclared here (not in a function)
  char  arp_dev[IFNAMSIZ];
                ^~~~~~~~
make[7]: *** [Makefile:459: arp.o] Error 1

This is caused by commit 6a12709da354 ("net: if_arp: use define instead
of hard-coded value") in the upstream Linux kernel which is integrated
in Linux 4.20.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-10 19:04:30 +01:00
Daniel Golle
8f9155fe7a oxnas: fix PCIe register ranges in device-tree
They should be relative to apb-bridge@47000000 rather than to the
pcie-controller@c00000 inside it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-10 17:57:50 +01:00
Mathew McBride
6a2705a52f layerscape: use wrapped nand_do_upgrade for traverse-ls1043 boards
Traverse LS1043 boards are set up with a dual-system layout, rootfs{1,2} and kernel{1,2}.
nand_do_upgrade can do the image replacement work we were doing before as long as we give it the partition names.
This greatly simplifies the /lib/upgrade/platform.sh.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2019-03-10 17:48:23 +01:00
Mathew McBride
17468cc090 layerscape: rename Traverse boards along SoC lines
Upcoming product specification and branding changes mean that the names in tree do not accurately reflect released products.
To reduce any confusion, sort our boards by SoC family, e.g traverse-ls1043. Any future boards using Layerscape family SoC's
will be treated the same way, e.g Device/traverse-ls/lx/laXXXX.
The affected boards so far have only been available through OEM channels and those aren't using the provided sysupgrade.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2019-03-10 17:48:23 +01:00
Moritz Warning
3d3e04d8c8 wolfssl: fix build in busybox environments
The configure script broke when used in alpine-3.9 based docker containers. Fixed in wolfSSL >3.15.7.

Signed-off-by: Moritz Warning <moritzwarning@web.de>
2019-03-10 17:48:23 +01:00
Moritz Warning
7fc4dd3611 cmake: match warnings more strictly in C++ feature checks
Require the word "warning" to appear at the start of a line, after
whitespace, or after a `:`.  This is the same that CTest launchers use
to match warnings.  It avoids matching "warning" inside file paths.
Fixed in cmake 3.14.0.

Signed-off-by: Moritz Warning <moritzwarning@web.de>
2019-03-10 17:48:23 +01:00
Martin Schiller
ff3cfe0848 ltq-atm/ltq-ptm: re-enable/fix reset_ppe() functionality for VR9
This patch re-enables the reset_ppe() functionality for VR9 targets by using
the new lantiq rcu subsystem. The reset sequence in the reset_ppe() function
was taken from the ppa datapath driver of lantiq UGW 7.4.1.

Additionally it adds the required reset definitions to the vr9 dtsi file.

It also prepares the reset_ppe() function calls for the other lantiq targets.

This feature is needed to be able to switch between ltq-atm/ltq-ptm driver
in ATM/PTM Auto-Mode at runtime.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-03-10 16:49:31 +01:00
Danijel Tudek
eae6cac6a3 lantiq: add support for AVM FRITZ!Box 7362 SL
Hardware:
- SoC: Lantiq VRX288
- RAM: Winbond W971GG6JB 1 Gb (128 MiB)
- Flash:
  - SPI: 8 Mb (1 MiB) for bootloader and tffs
  - NAND: 1 Gb (128 MiB) for OS
- xDSL: Lantiq VRX208
- WLAN: Atheros AR9381
- DECT: Dialog Semiconductors SC14441

Everything except FXS/DECT works
(no drivers for AVM's FXS implementation with SC14441).

Installation via FTP:
1. Use scripts/flashing/eva_ramboot.py to send initramfs-kernel.bin
to the device when powering on.
Standard AVM procedures with finding the correct IP address and
the right moment to open FTP apply here (approx. 4 seconds on 7362SL).
IMPORTANT: set lzma compression in ramdisk options, bootloader stalls
when receiving uncompressed images.

2. Transfer sysupgrade.bin image with scp to /tmp directory
and run sysupgrade

3. First boot might take a bit longer if linux_fs_start was set to 1,
in that case the device will reboot twice, first time it will fail to load
second kernel (overwritten by ubifs), set linux_fs_start to 0 and reboot.

OpenWrt uses the entire NAND flash. Kernel uses 4 MiB and rootfs uses
the rest of 124 MiB, overwriting everything related to FRITZ!OS - both
OS images, config and answering machine/media server data.
To return to FRITZ!OS, use AVM's recovery image.

Signed-off-by: Danijel Tudek <danijel.tudek@gmail.com>
2019-03-10 16:49:31 +01:00
Danijel Tudek
5026f43559 lantiq: move common FRITZ736X bits into dtsi
Move common FRITZ736X bits into dtsi file
as a preparation for FRITZ7362SL support.

Signed-off-by: Danijel Tudek <danijel.tudek@gmail.com>
2019-03-10 16:49:31 +01:00
Andy Binder
20f48c8ae3 lantiq: add support for AVM FRITZ!Box 7412
Hardware:

SoC: Lantiq VRX 220
CPU Cores: 2x MIPS 34Kc at 500 MHz
RAM: 128 MiB 250 MHz
Storage: 128 MiB NAND flash
Ethernet: built-in Fast Ethernet switch, only port 2 is used
Wireless: Atheros AR9287-BL1A b/g/n with 2 pcb antennas
Modem: built-in A/VDSL2 modem
DECT: Dialog SC14441
LEDs: 1 two-color, 4 one-color
Buttons: 2
FXS: 1 port via TAE or RJ12 connector
Everything except FXS/DECT works
(no drivers for AVM's FXS implementation with SC14441).

Installation:

Use the eva_ramboot.py script to load an initramfs image on the
device. Run it a few seconds after turning the device on.
$ scripts/flashing eva_ramboot 192.168.178.1 bin/targets/lantiq/xrx200/openwrt-lantiq-xrx200-avm_fritz7412-initramfs-kernel.bin
If it fails to find the device try the ip address 169.254.120.1.
(Firmware updates or the recovery tool apparently change it.)

IMPORTANT: set lzma compression in ramdisk options, bootloader stalls
when receiving uncompressed images.

The device will load it in ram and boot it. You can reach it under
the openwrt default ip address 192.168.1.1.

Check if the key linux_fs_start is not set to 1 in tffs:
$ fritz_tffs_nand -d /dev/mtd1 -n linux_fs_start
If it is set to 1, the bootloader will select the wrong set of
partitions. Restart the box and install an FritzOS upgrade or do a
recovery. Afterwards start again at step 1.

Run sysupgrade to persistently install OpenWRT.

Signed-off-by: Valentin Spreckels <Valentin.Spreckels@Informatik.Uni-Oldenburg.de>
Signed-off-by: Andy Binder <AndyBinder@gmx.de>
2019-03-10 16:49:31 +01:00
Andy Binder
50717510e7 fritz-tools: add fritz_tffs_nand_read tool
A tool for reading the TFFS partitions (a name-value storage usually
found in AVM Fritz!Box based devices) on nand flash.

Copyright (c) 2018 Valentin Spreckels <Valentin.Spreckels@Informatik.Uni-Oldenburg.DE>

Based on the fritz_tffs_read tool:
    Copyright (c) 2015-2016 Martin Blumenstingl <martin.blumenstingl@googlemail.com>
and on the TFFS 2.0 kernel driver from AVM:
    Copyright (c) 2004-2007 AVM GmbH <fritzbox_info@avm.de>
and the TFFS 3.0 kernel driver from AVM:
    Copyright (C) 2004-2014 AVM GmbH <fritzbox_info@avm.de>
and the OpenWrt TFFS kernel driver:
    Copyright (c) 2013 John Crispin <blogic@openwrt.org>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Signed-off-by: Valentin Spreckels <Valentin.Spreckels@Informatik.Uni-Oldenburg.de>
Signed-off-by: Andy Binder <AndyBinder@gmx.de>
2019-03-10 16:49:23 +01:00
Aleksander Jan Bajkowski
445ca981d1 sunxi: add support for Orange Pi PC Plus
CPU: H3 Quad-core Cortex-A7 H.265/HEVC 4K @ 1.2 Ghz
GPU: Mali400MP2 GPU @ 600MHz (supports OpenGL ES 2.0)
Memory: 1GB DDR3 (shared with GPU)
Onboard: Storage TF card (Max. 64GB) / MMC card slot
Onboard: Storage 8 GB eMMC
Onboard: Network 10/100M Ethernet RJ45
Onboard: Network WiFi 802.11 b/g/n (Realtek RTL8189FTV)
Onboard header: SPI, I2C, GPIO, UART
USB 2.0: Three USB 2.0 HOST, One USB 2.0 OTG

Known issues:
-Wifi diesn't work

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
2019-03-09 18:55:15 +01:00
Eneas U de Queiroz
d971ae51a5 openssl: backport devcrypto changes from master
The patches to the /dev/crypto engine were commited to openssl master,
and will be in the next major version (3.0).

Changes:
- Optimization in computing a digest in one operation, saving an ioctl
- Runtime configuration options for the choice of algorithms to use
- Command to dump useful information about the algorithms supported by
  the engine and the system.
- Build the devcrypto engine as a dynamic module, like other engines.

The devcrypto engine is built as a separate package by default, but
options were added to allow building the engines into the main library.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
[refresh patches]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-09 18:55:07 +01:00
Vieno Hakkerinen
c3425be082 6to4: update OpenWrt documentation URL
Signed-off-by: Vieno Hakkerinen <txt.file@txtfile.eu>
2019-03-09 18:19:18 +01:00
Piotr Dymacz
c5394ec7e0 uboot-envtools: ath79: add support for YunCore A770
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-09 16:31:22 +01:00
Piotr Dymacz
6fa94d5e8f ath79: add support for YunCore A770
YunCore A770 is a ceiling AC750 AP with 2 Fast Ethernet ports, PoE
(802.3at) support, based on QCA9531 + QCA9887.

Specification:

- 650/597/216 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of flash (SPI NOR)
- 2x 10/100 Mbps Ethernet (PoE 802.3at support in WAN port)
- 2T2R 2.4 GHz (QCA9531), with ext. PA and LNA
- 1T1R 5 GHz (QCA9887), with ext. FEM (SKY85728-11)
- 2x regular LED, 1x RGB LED (all driven by GPIO)
- 1x button (reset)
- DC jack for main power input (12 V)
- UART header on PCB

Flash instruction:

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

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

2. Then, install OpenWrt:

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-09 16:31:17 +01:00
Piotr Dymacz
24de7c29e5 ipq40xx: backport I2C QUP driver changes from 4.17
Backport below changes for I2C QUP driver from v4.17:

  0668bc44a426 i2c: qup: fix copyrights and update to SPDX identifier
  7239872fb340 i2c: qup: fixed releasing dma without flush operation completion
  eb422b539c1f i2c: qup: minor code reorganization for use_dma
  6d5f37f166bb i2c: qup: remove redundant variables for BAM SG count
  c5adc0fa63a9 i2c: qup: schedule EOT and FLUSH tags at the end of transfer
  7e6c35fe602d i2c: qup: fix the transfer length for BAM RX EOT FLUSH tags
  3f450d3eea14 i2c: qup: proper error handling for i2c error in BAM mode
  08f15963bc75 i2c: qup: use the complete transfer length to choose DMA mode
  ecb6e1e5f435 i2c: qup: change completion timeout according to transfer length
  6f2f0f6465ac i2c: qup: fix buffer overflow for multiple msg of maximum xfer len
  f7714b4e451b i2c: qup: send NACK for last read sub transfers
  fbfab1ab0658 i2c: qup: reorganization of driver code to remove polling for qup v1
  7545c7dba169 i2c: qup: reorganization of driver code to remove polling for qup v2

This fixes various I2C issues observed on AP120C-AC board equipped with
Atmel/Microchip AT97SC3205T TPM module.

Tested-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-08 19:28:31 +01:00
Piotr Dymacz
ff8a8074b2 ipq40xx: add ath10k-calibration-variant in AP120C-AC DTS
Use 'ath10k-calibration-variant' (with the value sent upstream) for the
second (5 GHz) radio in AP120C-AC board DTS. First radio uses the same
BDF as in one of Qualcomm reference designs.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-08 19:28:31 +01:00
Piotr Dymacz
6ee73942f9 ipq-wifi: update ALFA Network AP120C-AC board-2.bin
Add specific 'variant' for 'bus=ahb,bmi-chip-id=0,bmi-board-id=25' BDF.
Use the same value ('ALFA-Network-AP120C-AC') as sent upstream.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-03-08 19:28:31 +01:00
Paul Spooren
483498808e ib: show current revision based on $(REVISION)
This is useful in for the attendedsyupsgrade server (asu) to
distinguish between snapshot version. Currently asu can't tell devices
requesting a snapshot build if the same build is already installed.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-03-08 01:18:12 +01:00
Paul Spooren
f37afec866 ib: show unified target based on $(TARGETID)
Instead of showing a slightly more readable target like
"ar71xx (Generic)" print the more generic format "ar71xx/genric"

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-03-08 01:18:12 +01:00
Daniel Golle
69d3c7e6da ucert: add PROVIDES also for minimal 'ucert' package
Otherwise ucert-full gets selected instead of ucert when depending on
ucert.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-08 01:18:12 +01:00
Felix Fietkau
9f818cb002 mt76: update to the latest version
1d7760d mt76: mt7603: set moredata flag when queueing ps-filtered packets
0b927b2 mt76: fix return value check in mt76_wmac_probe()
e72376d mt76x02: fix hdr pointer in write txwi for USB

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-07 20:36:13 +01:00
Koen Vandeputte
364ab348dc kernel: bump 4.14 to 4.14.105
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>
2019-03-07 16:32:23 +01:00
Koen Vandeputte
3ca38dcfa2 kernel: bump 4.9 to 4.9.162
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-07 16:32:23 +01:00
Felix Fietkau
fd8705e635 tools/mkimage: use http download server (fixes FS#2052)
Fixes timeouts with trying to access the FTP site.
Also remove mirror2.openwrt.org, which does not keep current tarballs

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-07 13:28:30 +01:00
Christian Lamparter
457de5a154 owl-loader: fix crash caused by endian patch
This patch fixes a crash that occured on the
BT Home Hub v5a (lantiq/xrx200) which resulted
in the device bootlooping.

Reported-by: Ryan Mounce <ryan@mounce.com.au>
Tested-by: Vitalij Alshevsky <v_alshevsky@tut.by>
Fixes: ddece08bf4 ("kernel: owl-loader: fix sparse endian warnings")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-06 22:02:56 +01:00
Mantas Pucka
a4ba41863b mips: fix dynamic ftrace
This was fixed for v4.9 in 076d2ea68, now port to all kernels

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2019-03-06 22:02:56 +01:00
Chen Minqiang
e15bda603a ramips: rework network settings for HC5861
dts: disable port4 and leave it ephy mode because it connect to nothing
switch port5 connected to GE port we use it as wan port

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2019-03-06 22:02:56 +01:00
Mantas Pucka
fe591f2fe2 ar71xx: enable QCA955x SGMII fixup on Rambutan
fixes intermittent loss of connectivity on 1Gbit port, with
log message:

  803x_aneg_done: SGMII link is not ok

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2019-03-06 22:02:56 +01:00
David Bauer
4484ef587a ath10k-ct: limit available channels via DT
This backports upstream commit

34d5629 ath10k: limit available channels via DT ieee80211-freq-limit

to the 4.19 ath10k-ct version. Without this patch, disabled channels
are still listed as a supported configuration for the radio.

The identical patch was also backported by OpenWRT to the non-ct driver.
It can be dropped as soon as we switch to an ath10k-ct version based on
4.20 or higher.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-06 21:58:59 +01:00
Michael Yartys
fc2fd1c9d6 ath10k-firmware: update Candela Tech firmware images
Release notes since last update:

wave-1 firmware:

*  Feb 14, 2019:  Remove logic that causes assert when swba logic is not
                  initialized. This was seen when trying to bring up 6 VAP
                  vdevs. A similar fix went into wave-2 firmware some time
                  ago.

*  Feb 27, 2019:  Support up to 32 vAP vdevs, fix stack corruption when
                  driver requests too many vAP.

*  Feb 28, 2019:  Support beacon-tx-wmi callback message. This lets driver
                  properly clean up beacon buffers so we don't crash
                  (somethings the entire OS/system) due to DMA errors.

wave-2 firmware:

*  Feb 27. 2019:  Support up to 32 AP vdevs. Previous to this, stack would
                  be corrupted if you went past 16 AP vdevs.

*  Feb 28, 2019:  Support beacon-tx-wmi callback message. This lets driver
                  properly clean up beacon buffers. In wave-1, this could
                  crash the entire OS, but I didn't see the same crashes
                  in wave-2, so maybe it is fixed in some other way. Add
                  the feature regardless as it seems proper.

Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
2019-03-06 21:58:59 +01:00
Michael Yartys
5c83f27ac5 ath10k-ct: Update to 2019-02-28
9360f389234a ath10k: Support up to 24 vAP per radio, fix DMA bug in wave-1.
9cbf8d430974 ath10k-ct: Add 4.20 driver, SGI support for fixed-rate tx.

Runtime tested on: ipq806x

Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
2019-03-06 21:58:59 +01:00
Christian Lamparter
33727ecea5 lantiq: enlarge ZyXEL P-2812HNU-F1 kernel partition (FS#2124)
The current snapshot release kernel with it's 2119245 Byte
size is too big to fit into the 2097152 (2MiB) area that
was set aside for the kernel. Which causes the device to
fail to boot (after an update or even during a fresh install)

 NAND read: device 0 offset 0x60000, size 0x200000
  2097152 bytes read: OK
 ## Booting kernel from Legacy Image at 80800000 ...
    Image Name:   MIPS OpenWrt Linux-4.14.98
    Created:      2019-02-13   9:37:36 UTC
    Image Type:   MIPS Linux Kernel Image (lzma compressed)
    Data Size:    2119245 Bytes = 2 MiB
    Load Address: 80002000
    Entry Point:  80002000
    Verifying Checksum ... Bad Data CRC
 ERROR: can't get kernel image!

This patch fixes the problem by enlarging the kernel partition
at the cost of the ubi/data partition behind it. The patch
also adds a KERNEL_SIZE variable to the image Makefile to
prevent silent corruptions from happening in the future.

Please note: The u-boot environment for the router also
needs to be updated. So please attach an appropriate
serial converter cable and enter the following commands
into the u-boot prompt:

 setenv nboot 'nand read 0x80800000 0x60000 0x300000; bootm 0x80800000'
 saveenv

The wiki has been updated accordingly:
<https://openwrt.org/toh/zyxel/p2812hnu-f1>

Fixes: FS#2124
Suggested-by: Mafketel (User on bugs.openwrt.org)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-06 21:58:59 +01:00
Daniel Golle
13c379e5c6 ib: display whether profile comes with image metadata
Having image metadata (and signature) appended is a condition for
semi-automated sysupgrade, hence IB needs to be able to tell which
images will end up with metadata.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-06 14:50:42 +01:00
Daniel Golle
c8778250a9 ramips: mt7620: export chip version and pkg
Similar to the (currently unused) mt7620_get_eco() function, introduce
mt7620_get_chipver() and mt7620_get_pkg() functions to allow rt2x00 to
probe for the type of WiSoC. This is ugly and probably unacceptable
for upstream, however, it should help to evaluate which of those hacks
are actually really needed, enumerate the possible values and label
them in a more meaningful way than currently done in the vendor driver.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-06 01:11:54 +01:00
Paul Spooren
7fa9794c4c metadata: add "metadata_version" field
allow downstream projects to see the current version of the metadata,
usefull if eventually more variables change

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-03-06 01:11:54 +01:00
Paul Spooren
208f287908 metadata: add "target" entry
add "target" entry based on $(TARGETID) resulting in
`<target>/<subtarget>`.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-03-06 01:11:54 +01:00
Paul Spooren
26c16aec67 metadata: fixup "board"
currently the "board" parameter contains $(BOARD) which actually results
to `<target>` (like ramips, ar71xx) without subtarget. However, one
actually excepts (not?) to contain BOARD_NAME or DEVICE_NAME.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2019-03-06 01:11:54 +01:00
Rafał Miłecki
9e32e288f0 kernel: fix refcnt leak in LED netdev trigger on interface rename
This fixes a possible unbalanced dev_hold():
> iw dev bar del
[  237.355366] unregister_netdevice: waiting for bar to become free. Usage count = 1
[  247.435362] unregister_netdevice: waiting for bar to become free. Usage count = 1
[  257.545366] unregister_netdevice: waiting for bar to become free. Usage count = 1

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-03-05 23:10:09 +01:00
Jo-Philipp Wich
64bb88841f uqmi: inherit firewall zone membership to virtual sub interfaces
Fix an issue where subinterfaces were not added to the same
firewall zone as their parent.

Fixes: FS#2122
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-05 13:19:43 +01:00
Koen Vandeputte
d3506d1bc1 ar71xx: ag71xx: fix compile error when enabling debug
Starting from kernel 4.5, phy_id needs to be fetched from a different location.

not doing so results in this compile error:

drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c: In function 'ag71xx_phy_connect_multi':
drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c:133:35: error: 'struct mdio_device' has no member named 'phy_id'
    ag->mii_bus->mdio_map[phy_addr]->phy_id);
                                   ^
./include/linux/printk.h:137:18: note: in definition of macro 'no_printk'
    printk(fmt, ##__VA_ARGS__); \
                  ^~~~~~~~~~~
drivers/net/ethernet/atheros/ag71xx/ag71xx.h:72:27: note: in expansion of macro 'pr_debug'
 #define DBG(fmt, args...) pr_debug(fmt, ## args)
                           ^~~~~~~~
drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c:130:3: note: in expansion of macro 'DBG'
   DBG("%s: PHY found at %s, uid=%08x\n",
   ^~~
scripts/Makefile.build:326: recipe for target 'drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.o' failed

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-05 13:19:43 +01:00
Koen Vandeputte
1cfbf95393 kernel: bump 4.14 to 4.14.104
Refreshed all patches.

Altered patches:
- 332-arc-add-OWRTDTB-section.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-05 13:19:43 +01:00
Koen Vandeputte
fc45ae4461 kernel: bump 4.9 to 4.9.161
Refreshed all patches.

Altered patches:
- 332-arc-add-OWRTDTB-section.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-03-05 13:19:43 +01:00
Vijayakumar Durai
d0b969eee8 mac80211: rt2x00: do not increment sequence number while re-transmitting
Currently STA+AP re-transmitting the management frames with
incremented sequence number if hardware is assigning the sequence.

Fix is to assign the sequence number for Beacon by hardware
and for other Management frames software will assign the
sequence number

Signed-off-by: Vijayakumar Durai <vijayakumar.durai1@vivint.com>
2019-03-05 03:54:39 +01:00
Petr Štetiar
40530c8eb4 ath79: Add support for Ubiquiti Nanostation M (XW)
CPU:  AR9342 SoC
RAM:      64 MB DDR2
Flash:     8 MB NOR SPI
Ports: 2x100 MBit (24V PoE in, 24V PoE out), AR8236 switch
WLAN:  2.4/5 GHz
UART:      1 UART
LEDs:        Power, 2x Ethernet, 4x RSSI LEDs (orange, red, 2x green)
Buttons:     Reset

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-ath79-generic-ubnt-nano-m-xw-squashfs-factory.bin

Tested-by: Joe Ayers <ae6xe@arrl.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-05 03:15:52 +01:00
Petr Štetiar
368b6d1a52 ath79: gmac: ar934x: Add parser for mii-gmac0-slave
While converting Nanostation M XW from current ar71xx code to ath79 I've
hit one issue, where the ethernet networking wasn't working, so I was
checking every bit in the networking setup path between ar71xx and
ath79.

I've came to the following code in ar71xx/mach-ubnt-xm.c:

 static void __init ubnt_xw_init(void) {
 	...
 	ath79_setup_ar934x_eth_cfg(AR934X_ETH_CFG_MII_GMAC0 |
                                   AR934X_ETH_CFG_MII_GMAC0_SLAVE);
 	...
 }

Where this code is setting AR934X_ETH_CFG_MII_GMAC0_SLAVE bit in
AR934X_GMAC_REG_ETH_CFG register, but I couldn't find a way of setting
this bit from DTS, so this patch adds `mii-gmac0-slave` DTS property
which allows setting of this bit in `gmac-config`, which is then used in
Nanostation M XW DTS.

Tested-by: Joe Ayers <ae6xe@arrl.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-05 03:15:52 +01:00
Chuanhong Guo
47f0be676f ath79: qca955x: assert mdio/gmac reset together
This allows resetting gmac registers during initialization.
Also add compatible string for qca955x mdio to enable more mdio
clock dividers.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Chuanhong Guo
51cdf0e9eb ath79: ar934x: assert mac/mdio reset together for gmac0
This allows resetting gmac registers during initialization.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Chuanhong Guo
cea3e9e438 ath79: ag71xx: add support for optional mdio reset
On ar933x and later chips, there are separated mac/mdio resets, but
resetting the entire gmac block with register values requires both
mac_reset and mdio_reset to be asserted together.

Add support for optional mdio reset so that we can do a full reset
if needed.

This patch also replaced deprecated devm_reset_control_get for
mac reset.

To use this feature, the following is needed:
 1. drop "simple-mfd" compatible to register mdio0 after gmac init
    so that mdio registers aren't reset after initialization.
 2. move mdio reset from mdio-bus to its parent eth node.

NOTE: This can't be applied on gmac1 with builtin switch since we
haven't add a feature to defer probe if phy connection failed.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Chuanhong Guo
596a5325cd ath79: ag71xx: register mdio using of_platform_populate
remove the hacky checking of "simple-mfd" compatible
also add some comments explaining that piece of code.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Chuanhong Guo
f92bbdcc93 ath79: ag71xx-mdio: get reset control using devm api
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Chuanhong Guo
a4eef43a12 ath79: ag71xx: replace alloc_etherdev with devm_alloc_etherdev
using the devm api makes the code simpler.
also drop unneeded memory free from ag71xx_remove since they are
allocated using devm apis.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Chuanhong Guo
f73b2d64ed ath79: ag71xx: replace ag71xx_get_phy_if_mode_name() with phy_modes()
phy_modes() in phy.h can convert PHY modes to string with supports
for all available PHY modes.

Also add a space in mode printing to make it look better.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-03-05 03:02:34 +01:00
Daniel Golle
e7aa4c0db7 oxnas: pcie: model shared resource as external pcie-phy driver
Refactor pcie-oxnas to have shared resources in syscon and new pcie-phy
driver. Hopefully this revives PCIe...

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-04 23:40:43 +01:00
Daniel Golle
3bb9dcf446 oxnas: convert pcie to builtin_platform_driver
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-04 04:04:52 +01:00
Daniel Golle
302f7d57a9 oxnas: restart: use register definitions from dt-bindings
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-03 22:09:33 +01:00
Daniel Golle
dcb08049ae oxnas: cleanup and improve pcie driver
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-03 21:50:55 +01:00
Felix Fietkau
068c4cf407 tools: squashfskit4 should only depend on coreutils on non-linux systems
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-03 20:58:52 +01:00
Alexander Couzens
ac3bae907f tools/squashfskit: fix version detection on non-linux system
gnu date is present in our staging_dir which means squashfskit will fail
to build. Prevent also a race condition if coreutils is build after
squashfskit.

To prevent a race condition, depend on coreutils.

Acked-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-03-03 19:45:10 +01:00
Felix Fietkau
33201a3ad1 mt76: update to the latest version
3c6df9b mt76: rewrite dma descriptor base and ring size on queue reset
30e757e mt76: mt76x02: when setting a key, use PN from mac80211
fa83406 mt76: mt76x2: implement full device restart on watchdog reset
ead881b mt76: mt76x02: do not sync PN for keys with sw_iv set
ba1d989 mt76: mmio: move mt76x02_set_irq_mask in mt76 module
283ebbe mt76: dma: move mt76x02_init_{tx,rx}_queue in mt76 module
b216d3c mt76: introduce q->stopped parameter
8b437d2 mt76x02: clear sta and vif driver data structures on add
2c62d03 mt76x02: clear running flag when resetting state on restart
6b10cfc mt76: mt76x02: only update the base mac address if necessary
669bc49 mt76: mt76x02: reduce false positives in ED/CCA tx blocking
2ed9382 mt76: mt7603: fix tx status HT rate validation
d2c6823 mt76: mt76x2: fix external LNA gain settings
8ee2259 mt76: mt76x2: fix 2.4 GHz channel gain settings
8bfe6d4 mt76: mt7603: clear ps filtering mode before releasing buffered frames
d13b065 mt76: mt7603: fix up hardware queue index for PS filtered packets
eb1ecc4 mt76: mt7603: notify mac80211 about buffered frames in ps queue
3687eec mt76: mt7603: clear the service period on releasing PS filtered packets
42ab27e mt76: when releasing PS frames, end the service period if no frame was found
461f3b0 mt76: mt76x02: disable ED/CCA by default

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-03 19:43:25 +01:00
Hauke Mehrtens
4590af2065 mac80211: Activate DRIVER_11W_SUPPORT for more capable drivers
ieee80211w support is only activated in hostapd when at least one
capable driver is build into the image. Many drivers which are capable
of ieee80211 (MFP) and have the MFP_CAPABLE set in the driver are still
missing the DRIVER_11W_SUPPORT dependency. Add this to more driver
capable of ieee80211w.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-03-03 16:44:47 +01:00
Daniel Golle
c1a8054114 oxnas: add SoC restart driver for reboot
Refresh oxnas kernel config while at it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-03 02:46:05 +01:00
Daniel Golle
bc97257ffe ltq-vdsl-fw: update download URL
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-02 19:24:52 +01:00
Daniel Golle
42f2e07ba0 oxnas: cloudengines,pogoplug*: enable USB ports
Reported-by: Jörg Fischer <fischer.loepsingen@yahoo.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-02 18:54:30 +01:00
Chris Blake
26cb167a5c mpc85xx: Fix Aerohive HiveAP-330 initramfs image
At some point our initramfs image grew over 6MB, which is
causing an issue when uncompressing in the stock bootloader:

=> bootm 0x5000000 - 0x1000000;
   Image Name:   Linux-4.19.24
   Created:      2019-02-23   1:58:20 UTC
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    6752470 Bytes =  6.4 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Booting using the fdt blob at 0x1000000
   Uncompressing Kernel Image ... Error: inflate() returned -5
GUNZIP: uncompress, out-of-mem or overwrite error - must RESET
   board to recover
   Loading Device Tree to 00ffa000, end 00fffc78 ... OK

To get around this, we need to move to an uncompressed image
for the initramfs image. While this makes a larger image, it
is thankfully bootable so people can then convert their
devices to run OpenWRT. It's worth noting the non-initramfs
image is under 3M, so it will be ages before we have any issues
with the flashed kernel.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[keep commit message at less than 75 characters per line]
2019-03-02 13:04:54 +01:00
David Bauer
6837c757cf ath79: make TP-Link revision naming consistent
This commit makes the TP-Link hardware-revision naming consistent to
match the one used by the vendor. TP-Link refers to the different
revisions as "vX" not "Version X".

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-02 13:04:54 +01:00
Kip Porterfield
f2c83532f9 ramips: add support for Belkin F9K1109v1
Device specification:
- SoC: Ralink RT3883 (MIPS 74Kc) 500Mhz
- RAM: 64Mb
- Flash: 8MB (SPI-NOR)
- Ethernet: 10/100/1000 Mbps
- WLAN
	Wireless 1: SoC-integrated : 2.4/5 GHz
	Wireless 2: 2.4 GHz RT3092L
- LED: 2x USB, WAN, LAN
- Key: WPS, reset
- Serial: 4-pin header, (57600,8,N,1), 3.3V TTL,
	GND, RX, TX, V - J12 marking on board
- USB ports: 2 x USB 2.0

Flashing instructions:

Option 1 (from bootloader web)
- Hold reset button on the back of router when plugging
  in power (for at-least 10 seconds after plugged in)
- Connect to a Lan port
- Set computer IP to 10.10.10.3
- Go to http://10.10.10.123 in a web browser
- Click the Browse... Button and select the
   *squashfs.sysupgrade.bin file then click APPLY

Option 2 (from the stock admin web)
- Go to firmware upgrade
- Upload the **factory** image *initramfs.bin first
- Boot into openwrt
- From Luci web in openwrt upload the *squashfs.sysupgrade.bin

Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[added v1 to the compatible identifier, added pciid for
the RT3092L, fixed pci unit-address, split out the F9K110X.dtsi
to prepare for a possible F9K1103 patch]
2019-03-02 13:04:45 +01:00
David Santamaría Rogado
6c558bae64 ath79: TP-Link Archer C7 v4 swap usb led names
Commit 34b10b46 made usb match with the corresponding usb label.
The problem is that v4 seems to use in stock firmware the
upper led for usb 1 and the lower led for usb 2.

The led assigned varies between TP-Link models and even
same model versions. For example, Archer C7 v1 and v2 have
the leds in the reverse order.

Revert 34b10b46 and swap led labels instead, now usb port
and led label match and also respect the original behavior.

Tested-by: Oldrich Jedlicka <oldium.pro@gmail.com>
Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
2019-03-02 12:59:48 +01:00
Yangbo Lu
cb911a05b0 layerscape: fix VFIO driver build issue since linux-4.14.99
The linux-4.14.99 had introduced below upstream patch.
6636dc5e01c6 arm64: io: Ensure value passed to __iormb() is held in a 64-bit register

It was causing VFIO driver build issue. This patch is to fix it.

 CC      drivers/vfio/fsl-mc/vfio_fsl_mc.o
In file included from ./include/linux/scatterlist.h:9:0,
                 from ./include/linux/iommu.h:22,
                 from drivers/vfio/fsl-mc/vfio_fsl_mc.c:14:
drivers/vfio/fsl-mc/vfio_fsl_mc.c: In function 'vfio_fsl_mc_dprc_wait_for_response':
./arch/arm64/include/asm/io.h:122:45: error: expected expression before ')' token
        : "=r" (tmp) : "r" ((unsigned long)(v))  \
                                             ^
drivers/vfio/fsl-mc/vfio_fsl_mc.c:334:3: note: in expansion of macro '__iormb'
   __iormb();
   ^~~~~~~
./arch/arm64/include/asm/io.h:122:45: error: expected expression before ')' token
        : "=r" (tmp) : "r" ((unsigned long)(v))  \
                                             ^
drivers/vfio/fsl-mc/vfio_fsl_mc.c:336:3: note: in expansion of macro '__iormb'
   __iormb();
   ^~~~~~~

Reported-by: Mathew McBride <matt@traverse.com.au>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2019-03-02 12:59:48 +01:00
Christian Lamparter
ffd8ca18cc apm821xx: speed up ath9k-caldata extraction
Reading and writing to and from flash storage is slow and currently,
the ath10kcal_extract() scripts are even more at an disadvantage
because they use a block size of 1 to be able skip.

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

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-02 12:59:48 +01:00
Dmitry Tunin
21e90685b6 ath79: speed up ath9k-eeprom extraction
This is a simple copy of ipq40xx: speed up ath10k-caldata
extraction commit a69e101ed1

Tested on DIR-825-B1

3768+0 records in
3768+0 records out
real	0m 11.90s
user	0m 0.03s
sys	0m 9.94s

1+0 records in
1+0 records out
real	0m 0.03s
user	0m 0.00s
sys	0m 0.03s

With this change eeprom extraction is fast enough to get
working Wi-Fi after initial install.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2019-03-02 12:59:48 +01:00
Christian Lamparter
4c70ac7be4 x86: fix geode image builds redux
This patch adds more disabled DRM config symbols from the
x86' config to the generic target configs. The existing
symbols in the x86' configs are kept for now, until we
know whenever we want to remove such symbols or not
(see Github PR #1831, #1825, #1828).

THis patch also contains a squashed patch from
Daniel Engberg <daniel.engberg.lists@pyret.net> titled
"kernel: Fix config for 4.14" which fixes a duplicated line
added by: commit 8bdc241d01 ("x86: fix geode image builds")

Fixes: 8bdc241d01 ("x86: fix geode image builds")
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-03-02 12:59:47 +01:00
Daniel Golle
6b2874707a oxnas: switch to DTS aliases for LEDs and use generic diag.sh
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 23:51:19 +01:00
Daniel Golle
e882d5bf31 iwinfo: update to latest git
b514490 iwinfo: add device id for MediaTek MT7603E
e9e1400 iwinfo: more Ralink and MediaTek WiSoC and PCIe chips
cb108c5 iwinfo: fix capitalization of vendor name

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 23:25:59 +01:00
Daniel Golle
e2fea41ad6 oxnas: fix forgotten MTD partition name
Fixes: 858aebc0ef ("oxnas: unify MTD partition names")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 22:15:43 +01:00
Felix Fietkau
c6caa7a27a mac80211: add a fix to prevent unsafe queue wake calls during restart
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-01 14:56:04 +01:00
Felix Fietkau
82d306b595 mac80211: backport tx queue start/stop fix
Among other things, it fixes a race condition on calling ieee80211_restart_hw

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-03-01 13:14:29 +01:00
Yousong Zhou
0e8ddc953f libubox: bump to version 2019-02-27
Contains the following change

	eeef7b5 blobmsg_json: blobmsg_format_string: do not escape '/'

Resolves FS#2147

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-03-01 08:09:41 +00:00
Yousong Zhou
eb6f5a58b9 busybox: sync Config.in files
The change was made with the following commands

	cd package/utils/busybox/config
	../convert_menuconfig.pl ~/git-repo/openwrt/openwrt/build_dir/target-mips_24kc_musl/busybox-1.30.1

convert_defaults.pl has no changes other than overwriting defaults for
BUSYBOX_DEFAULT_FEATURE_IPV6

Resolves FS#2146

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-03-01 08:09:41 +00:00
Yousong Zhou
157072ea2b busybox: unindent busybox Config.in
This is to align with upstream change 72089cf ("config: deindent all
help texts") and to make the follow-up change syncing Config.in files
with current busybox version more reviewable

It was made with the following commands

	cd package/utils/busybox/config
	find . -name 'Config.in' | xargs sed -ir -e 's/^\t  \([^ ]\)/\t\1/'

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-03-01 08:09:41 +00:00
Adrian Schmutzler
b462bab099 ath79: Fix indent
Fix wrong indentation introduced in 59c2f8a.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-03-01 09:01:45 +01:00
Daniel Golle
98f86e61ea mac80211: rt2x00: cleanup ePA, RXIQ and TX-LOFT code
consolidate patch 651-rt2x00-remove-unneccesary-code.patch.
fixup the most obvious whitespace problems in RXIQ and TX-LOFT code.
always backup registers bbpr1, bbpr4, bbpr241 and bbpr242 to avoid
compiler warning about them being potentially uninitialized.
no functional changes (intended)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 07:14:01 +01:00
Daniel Golle
7cf6e11721 mac80211: rt2x00: patch tracking cosmetics
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 04:09:00 +01:00
Daniel Golle
266b3da335 oxnas: remove uboot-oxnas-ox820 from default package selection
All supported boards should work with the $vendor bootloader just fine.
Existing users should mindfully re-flash using new initramfs build and
restore $vendor bootloader's bootcmd to it's original setting.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 04:09:00 +01:00
Daniel Golle
5fac36d5aa oxnas: switch to kmod-ledtrig-usb-port
Add port handles for both USB 2.0 ports so they can be used as
trigger-source for USB LEDs.
Suggestions for pogoplug and akitio,mycloud devices are welcome.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 04:09:00 +01:00
Daniel Golle
9a9c6f37d5 uboot-envtools: oxnas: sync with current oxnas/ox820 DTS
Use tested values on shuttle,kd20 and assumed values for
mitrastar,stg-212 and cloudengines,pogoplug*.
akitio users have yet to report back stock flash layout to support
vendor bootloader environment there as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 03:36:53 +01:00
Daniel Golle
858aebc0ef oxnas: unify MTD partition names
Use 'u-boot' and 'u-boot-env' like the majority of OpenWrt targets
does...

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-03-01 03:36:32 +01:00
Alexander Couzens
b2bf3745ff package/ncurses: change AR options to fix reproducible builds
ar has a deterministic (-D) and non-deterministic (-U) mode.
OpenWrt is already using the deterministic mode by default,
but ncurses' configure script force this to be non-deterministic.
Since autoreconf fails to generate a new configure, the configure script
is directly modified.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-02-28 19:09:35 +01:00
Alexander Couzens
ba3690c90c include/kernel: sort autoload modules list to fix reproducible builds
When autoloading more than one modules per packages,
/etc/modules.d/$module depends on the file system ordering.
To test this: use disorderfs on the build_dir and build kmod-sched.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-02-28 17:57:30 +01:00
Daniel Golle
994428f395 oxnas: add missing NAND partitions
add kernel and other missing NAND flash partitions to allow booting
using stock loader instead of the 2nd-stage bootloader.
This will ease installation from stock firmware on pogoplugs as well
as stg212 aka. medion nas.

Existing users of OpenWrt on those boards will have to boot initramfs
generated after this commit and subsequently flash first the ubinized
image, then again run initramfs to flash sysupgrade.tar image, and
then restore bootcmd in U-Boot environment back to the original setting
('nboot 60500000 0 440000' or something like that) instead of jumping
into the now no longer used 2nd-stage loader.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-28 13:03:26 +01:00
INAGAKI Hiroshi
9c7fd17f4a ipq806x: fix LED configuration for NEC Aterm WG2600HP
NEC WG2600HP uses port1 on QCA8337 as a WAN port, so "0x2" should
be used as a portmask instead of "0x1e" for "WAN" LED configuration.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-02-28 11:54:09 +01:00
David Santamaría Rogado
e65f935de9 ar71xx: Change led trigger from usbdev to usbport
This patch changes all the legacy usbdev leds triggers
to the use usbport. The problem is that the usbdev triggers
get applied as usbport in sysfs but LuCI gets confused and
is not able to show the configuration with usbdev. More
information can be found in the PR:
<https://github.com/openwrt/openwrt/pull/1819>

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[extended commit message]
2019-02-28 11:34:48 +01:00
Bart Lauret
4386054549 ath79: add support for TP-Link Archer C5 v1
TP-Link Archer C5 v1 is a dual band router
based on Qualcomm/Atheros QCA9558 + QCA9880.

Specification:

 - 720 MHz CPU
 - 128 MB of RAM (Various chips)
 - 16 MB of FLASH (Various chips)
 - SoC QCA9558 integrated 3T3R 2.4 GHz Wi-Fi
 - minipcie slot with 3T3R 5 GHz QCA9880-BR4A
 - 5x 10/100/1000 Mbps Ethernet (AR8327N Switch)
 - 10x LEDs, 2x software buttons

For further informwation on the device, visit the wiki:
<https://openwrt.org/toh/tp-link/archer-c5-c7-wdr7500>

Signed-off-by: Bart Lauret <bblauret@gmail.com>
2019-02-28 11:32:55 +01:00
David Santamaría Rogado
34b10b468e ath79: TP-Link Archer C7 v4 swap usb port leds
USB 1 triggers usb2 led and USB 2 triggers usb1.
Lower LED is usb1 and upper LED usb2.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
2019-02-28 11:32:55 +01:00
Luo chongjun
693c8fb0e3 ath79: Modify glinet x750 and AR300m MAC address offsets
In the production of glinet, the MAC address of ethernet port is
only written at the position where the ART area offset address
is 0, and the MAC address of eth1 is added 1 on the basis of eth0.

Signed-off-by: Luo chongjun <luochongjun@gl-inet.com>
2019-02-28 11:32:55 +01:00
David Bauer
95b0c07a61 ipq40xx: add support for FritzBox 7530
Hardware
--------
CPU:   Qualcomm IPQ4019
RAM:   256M
FLASH: 128M NAND
ETH:   QCA8075
VDSL:  Intel/Lantiq VRX518 PCIe attached
       currently not supported
DECT:  Dialog SC14448
       currently not supported
WiFi2: IPQ4019 2T2R 2SS b/g/n
WiFi5: IPQ4019 2T2R 2SS n/ac
LED:    - Power/DSL green
        - WLAN green
        - FON/DECT green
        - Connect/WPS green
        - Info green
        - Info red
BTN:    - WLAN
        - FON
        - WPS/Connect
UART:  115200n8 3.3V (located under the Dialog chip)
       VCC - RX - TX - GND (Square is VCC)

Installation
------------
1. Grab the uboot for the Device from the 'u-boot-fritz7530'
   subdirectory. Place it in the same directory as the 'eva_ramboot.py'
   script. It is located in the 'scripts/flashing' subdirectory of the
   OpenWRT tree.

2. Assign yourself the IP address 192.168.178.10/24. Connect your
   Computer to one of the boxes LAN ports.

3. Connect Power to the Box. As soon as the LAN port of your computer
   shows link, load the U-Boot to the box using following command.

   > ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz7530.bin

4. The U-Boot will now start. Now assign yourself the IP address
   192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP
   server root directory and rename it to 'FRITZ7530.bin'.

5. The Box will now boot OpenWRT from RAM. This can take up to two
   minutes.

6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using
   scp. SSH into the Box and first write the Bootloader to both previous
   kernel partitions.

   > mtd write /path/to/uboot-fritz7530.bin uboot0
   > mtd write /path/to/uboot-fritz7530.bin uboot1

7. Remove the AVM filesystem partitions to make room for our kernel +
   rootfs + overlayfs.

   > ubirmvol /dev/ubi0 --name=avm_filesys_0
   > ubirmvol /dev/ubi0 --name=avm_filesys_1

8. Flash OpenWRT peristently using sysupgrade.

   > sysupgrade -n /path/to/openwrt-sysupgrade.bin

Signed-off-by: David Bauer <mail@david-bauer.net>
[removed pcie-dts range node, refreshed on top of AP120-AC/E2600AC]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:32:55 +01:00
David Bauer
93b02ad95e uboot-fritz4040: bump version to 2019-02-08
Adds support for the AVM FRITZ!Box 7530.

Signed-off-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [PKG_RELEASE]
2019-02-28 11:32:55 +01:00
David Bauer
e7bc8984d9 scripts: make eva_ramboot.py offset configurable
The current eva_ramboot.py script is currently only compatible with
Lantiq based AVM devices. For IPQ40xx devices, the offset needs to be
changed. Also an alignment is not necessary here.

Adjust the script to be able to pass an optional offset to load the
image to. In case no offset is provided, the script behaves exactly as
before this commit.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-02-28 11:32:55 +01:00
Christian Lamparter
18e942b6c4 ipq40xx: fix pcie msi IRQ trigger level
From: Niklas Cassel <niklas.cassel@linaro.org>
|The databook clearly states that the MSI IRQ (msi_ctrl_int) is a level
|triggered interrupt.
|
|The msi_ctrl_int will be high for as long as any MSI status bit is set,
|thus the IRQ type should be set to IRQ_TYPE_LEVEL_HIGH, causing the
|IRQ handler to keep getting called, as long as any MSI status bit is set.
|[...]
|Not having the correct IRQ type defined will cause us to lose interrupts,
|which in turn causes timeouts in the PCIe endpoint drivers.
|
|Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
|Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:26:11 +01:00
Christian Lamparter
46b949a067 ipq40xx: enlarge PCIe BAR size
David Bauer reported that the VDSL modem (attached via PCIe)
on his AVM Fritz!Box 7530 was complaining about not having
enough space in the BAR. A closer inspection of the old
qcom-ipq40xx.dtsi pulled from the GL-iNet repository listed:

| qcom,pcie@80000 {
|       compatible = "qcom,msm_pcie";
|       reg = <0x80000 0x2000>,
|             <0x99000 0x800>,
|             <0x40000000 0xf1d>,
|             <0x40000f20 0xa8>,
|             <0x40100000 0x1000>,
|             <0x40200000 0x100000>,
|             <0x40300000 0xd00000>;
|       reg-names = "parf", "phy", "dm_core", "elbi",
|                       "conf", "io", "bars";

Matching the reg-names with the listed reg leads to
<0xd00000> as the size for the "bars".

BugLink: https://www.mail-archive.com/openwrt-devel@lists.openwrt.org/msg45212.html
Reported-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:26:11 +01:00
Christian Lamparter
ddece08bf4 kernel: owl-loader: fix sparse endian warnings
owl-loader.c:83:21: sparse: warning: incorrect type in assignment (different base types)
owl-loader.c:83:21: sparse:    expected unsigned short [usertype] reg
owl-loader.c:83:21: sparse:    got restricted __be16 const [usertype] reg
owl-loader.c:84:21: sparse: warning: incorrect type in assignment (different base types)
owl-loader.c:84:21: sparse:    expected unsigned int [usertype] val
owl-loader.c:84:21: sparse:    got restricted __be16 const [usertype] low_val
owl-loader.c:85:28: sparse: warning: restricted __be16 degrades to integer

Reported-by: kbuild test robot
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:26:11 +01:00
Christian Lamparter
ca769e081f kernel: disable touchscreen symbols
This patch removes the obsolete touchscreen config symbols
and all disables all remaining ones in the generic config.

Generated by running drivers/input/touchscreen/Kconfig

 sed -n 's/^config[[:space:]]\(.*\)/# CONFIG_\1 is not set/p' Kconfig |\
 sort -d
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:26:11 +01:00
Christian Lamparter
8bdc241d01 x86: fix geode image builds
This patch adds the disabled DRM_RADEON and DRM_AMDGPU
config symbols from the x86' config to the generic target
configs. The existing symbols in the x86' configs are kept
for now, until we know whenever we want to remove such
symbols or not (see Github PR #1831, #1825, #1828).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:26:11 +01:00
张鹏
bbab33724d ipq40xx: add support for Qxwlan E2600AC C1 and C2
Qxwlan E2600AC C1 based on IPQ4019

Specifications:
SOC:	Qualcomm IPQ4019
DRAM:	256 MiB
FLASH:	32 MiB Winbond W25Q256
ETH:	Qualcomm QCA8075
WLAN:	5G + 5G/2.4G
	* 2T2R 2.4/5 GHz
	 - QCA4019 hw1.0 (SoC)
	* 2T2R 5 GHz
	 - QCA4019 hw1.0 (SoC)
INPUT:  Reset buutton
LED:	1x Power ,6 driven by gpio
SERIAL: UART (J5)
UUSB:	USB3.0
POWER:	1x DC jack for main power input (9-24 V)
SLOT:	Pcie (J25), sim card (J11), SD card (J51)

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

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

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

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

Qxwlan E2600AC C2 based on IPQ4019

Specifications:
SOC:	Qualcomm IPQ4019
DRAM:	256 MiB
NOR:	16 MiB Winbond W25Q128
NAND:	128MiB Micron MT29F1G08ABAEAWP
ETH:	Qualcomm QCA8075
WLAN:	5G + 5G/2.4G
	* 2T2R 2.4/5 GHz
	 - QCA4019 hw1.0 (SoC)
	* 2T2R 5 GHz
	 - QCA4019 hw1.0 (SoC)
INPUT:  Reset buutton
LED:	1x Power, 6 driven by gpio
SERIAL: UART (J5)
USB:	USB3.0
POWER:	1x DC jack for main power input (9-24 V)
SLOT:	Pcie (J25), sim card (J11), SD card (J51)

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

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

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

 - Configure PC with static IP 192.168.1.xxx(2-254)/24.
 - Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
 - Open your browser and enter 192.168.1.1, select "ubi" image
   and click the upgrade button.

Signed-off-by: 张鹏 <sd20@qxwlan.com>
[ added rng node. whitespace fixes, ported 02_network,
ipq-wifi Makefile, misc dts fixes, trivial message changes ]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-28 11:26:11 +01:00
Roger Pueyo Centelles
59c2f8af8c ath79: add support for COMFAST CF-E120A v3
This patch adds support for the COMFAST CF-E120A v3, an outdoor wireless
CPE with two Ethernet ports and a 802.11an radio.

Specifications:

 - AR9344 SoC
 - 535/400/267 MHz (CPU/DDR/AHB)
 - 2x 10/100 Mbps Ethernet, both with PoE-in support
 - 64 MB of RAM (DDR2)
 - 8 MB of FLASH
 - 2T2R 5 GHz, up to 25 dBm
 - 11 dBi built-in antenna
 - POWER/LAN/WAN/WLAN green LEDs
 - 4x RSSI LEDs (2x red, 2x green)
 - UART (115200 8N1) and GPIO (J9) headers on PCB

Flashing instructions:

 The original firmware is based on OpenWrt so a sysupgrade image can be
 installed via the stock web GUI. Settings from the original firmware
 will be saved and restored on the new one, so a factory reset will be
 needed. To do so, once the new firmware is flashed, enter into failsafe
 mode by pressing the reset button several times during the boot
 process, while while the WAN LED flashes, until it starts flashing
 faster. Once in failsafe mode, perform a factory reset as usual.

 The U-boot bootloader contains a recovery HTTP server to upload the
 firmware. Push the reset button while powering the device on and
 keep it pressed for >10 seconds. The recovery page will be at
 http://192.168.1.1

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2019-02-28 11:26:10 +01:00
Marcel Jost
e6f047fa36 ramips: add TP-Link TL-WR802N-v4 support
This patch adds support for the TP-Link TL-WR802N-v4.
https://openwrt.org/toh/tp-link/tl-wr802n

Specification:
- MT7628N (580 MHz)
- 64 MB RAM
- 8 MB FLASH
- 2T2R 2.4 GHz
- 1x 10/100 Mbps Ethernet
- 1x LED

Flash instruction:

The only way to flash the image in TL-WR802N v4 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.225/24 and tftp server.
2. Rename "openwrt-ramips-mt76x8-tplink_tl-wr802n-v4-squashfs-tftp-recovery.bin"
   to "tp_recovery.bin" and place it in tftp server directory.
3. Connect PC with the LAN port, press the reset button, power up
   the router and keep button pressed for around 10 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Marcel Jost <majo@icutech.ch>
2019-02-28 11:26:10 +01:00
Thomas Vincent-Cross
a915ad8464 ramips: use generic board detection for Wavlink WL-WN575A3
Bring Wavlink WL-WN575A3 in line with other Wavlink ramips devices.

Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
2019-02-28 11:26:10 +01:00
Thomas Vincent-Cross
25c0b41901 ramips: various Wavlink WL-WN575A3 fixes
* assign pinmux groups to gpio function for LEDs/buttons
* rename flash node to be more generic in line with other device nodes
* remove useless/incorrect eeprom property from wmac node
* correct base mac address for embedded switch

Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
2019-02-28 11:26:10 +01:00
Jason A. Donenfeld
2e9b92da1f wireguard: bump to 0.0.20190227
* wg-quick: freebsd: allow loopback to work

FreeBSD adds a route for point-to-point destination addresses. We don't
really want to specify any destination address, but unfortunately we
have to. Before we tried to cheat by giving our own address as the
destination, but this had the unfortunate effect of preventing
loopback from working on our local ip address. We work around this with
yet another kludge: we set the destination address to 127.0.0.1. Since
127.0.0.1 is already assigned to an interface, this has the same effect
of not specifying a destination address, and therefore we accomplish the
intended behavior. Note that the bad behavior is still present in Darwin,
where such workaround does not exist.

* tools: remove unused check phony declaration
* highlighter: when subtracting char, cast to unsigned
* chacha20: name enums
* tools: fight compiler slightly harder
* tools: c_acc doesn't need to be initialized
* queueing: more reasonable allocator function convention

Usual nits.

* systemd: wg-quick should depend on nss-lookup.target

Since wg-quick(8) calls wg(8) which does hostname lookups, we should
probably only run this after we're allowed to look up hostnames.

* compat: backport ALIGN_DOWN
* noise: whiten the nanoseconds portion of the timestamp

This mitigates unrelated sidechannel attacks that think they can turn
WireGuard into a useful time oracle.

* hashtables: decouple hashtable allocations from the main device allocation

The hashtable allocations are quite large, and cause the device allocation in
the net framework to stall sometimes while it tries to find a contiguous
region that can fit the device struct. To fix the allocation stalls, decouple
the hashtable allocations from the device allocation and allocate the
hashtables with kvmalloc's implicit __GFP_NORETRY so that the allocations fall
back to vmalloc with little resistance.

* chacha20poly1305: permit unaligned strides on certain platforms

The map allocations required to fix this are mostly slower than unaligned
paths.

* noise: store clamped key instead of raw key

This causes `wg show` to now show the right thing. Useful for doing
comparisons.

* compat: ipv6_stub is sometimes null

On ancient kernels, ipv6_stub is sometimes null in cases where IPv6 has
been disabled with a command line flag or other failures.

* Makefile: don't duplicate code in install and modules-install
* Makefile: make the depmod path configurable

* queueing: net-next has changed signature of skb_probe_transport_header

A 5.1 change. This could change again, but for now it allows us to keep this
snapshot aligned with our upstream submissions.

* netlink: don't remove allowed ips for new peers
* peer: only synchronize_rcu_bh and traverse trie once when removing all peers
* allowedips: maintain per-peer list of allowedips

This is a rather big and important change that makes it much much faster to do
operations involving thousands of peers. Batch peer/allowedip addition and
clearing is several orders of magnitude faster now.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-02-28 08:50:19 +01:00
Alexander Couzens
889b6423b7 tools: migrate from squashfs4 to squashfskit4
squashfskit is a fork of the squashfs-tools.
squashfskit creates reproducible filesystems and includes
many of the distro patches.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Tested-by: Paul Spooren <mail@aparcar.org>
2019-02-28 01:38:46 +01:00
Eneas U de Queiroz
9e8cbecb7f openssl: bump to release 1.1.1b
This is bugfix release that incorporated all of the devcrypto engine
patches currently in the tree.

The cleaning procedure in Package/Configure was not removing the
dependency files, causing linking errors during a rebuild with
different options.  It was replaced by a simple make clean.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-02-27 22:43:30 +01:00
Hans Dedecker
c8153722a2 odhcpd: update to latest git HEAD
16c5b6c ubus: always trigger an update if interface is not found

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-27 12:12:48 +01:00
David Santamaría Rogado
e9b2a1e382 omcproxy: define configuration file
omcproxy's configuration is lost on every update or installation.
Avoid it by defining the configuration file.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
2019-02-27 10:26:14 +01:00
Mantas Pucka
abf445f189 Revert "iw: compile with LTO enabled"
After update to 5.0.1 iw-full package failed to display command list on
ipq40xx arch. Root cause was found to be LTO reordering causing
incorrect detection of command struct size in:

iw.c:552
	cmd_size = labs((long)&__section_set - (long)&__section_get);

This reverts commit ef16a394d2.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2019-02-26 23:20:04 +01:00
Hauke Mehrtens
b55fbb6b2d strace: update to version 2.26
The new patch is a backport from current strace master.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-26 23:20:04 +01:00
Syrone Wong
7fb58b8f00 tools/isl: update to 0.20
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2019-02-26 23:20:04 +01:00
Daniel Engberg
894a79d67b toolchain/binutils: Add binutils 2.32
Add binutils 2.32 to repo

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-26 23:20:04 +01:00
Daniel Engberg
40aec89b4c toolchain: Update to GCC 8.3.0
Update GCC to 8.3.0
Refresh patches
Allow GCC to be used for ARC
Source: https://github.com/openwrt/openwrt/pull/1803#issuecomment-462334890

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-26 23:20:04 +01:00
Daniel Engberg
700c0edc06 toolchain/gcc: Remove workaround for GCC 4.8
GCC 4.8 was removed a long time ago...

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-26 23:20:04 +01:00
Daniel Engberg
38867b7eba popt: Use modern toolchain logic
Replace define Build/Configure with CONFIGURE_ARGS

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-26 23:20:04 +01:00
Matt Merhar
0d1d5880c0 elfutils: fix install .so glob
Only libelf was being packaged correctly - libdw and libasm included
just the symlinks.

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
2019-02-26 23:20:04 +01:00
Aleksander Jan Bajkowski
00d89b4a89 sunxi: add support for Orange Pi One
CPU: H3 Quad-core Cortex-A7 H.265/HEVC 4K @ 1.2 Ghz
GPU: Mali400MP2 GPU @ 600MHz (supports OpenGL ES 2.0)
Memory: 512MB DDR3 (shared with GPU)
Onboard: Storage TF card (Max. 64GB) / MMC card slot
Onboard header: SPI, I2C, GPIO, UART
USB 2.0: One USB 2.0 HOST, One USB 2.0 OTG

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
2019-02-26 23:20:04 +01:00
David Bauer
4ecf2ee4a0 ath79: fix support-list for TP-Link WDR3600
The TP-Link WDR3600 shares the same machine-code in the ar71xx target,
thus expecting "tl-wdr4300" not "tl-wdr3600" in the support-list
metadata to allow non-forced sysupgrades from ar71xx to ath79.

With this, it is possible to flash a WDR4300 image on the WDR3600. It
is no problem however, as the only difference is the 5GHz WiFi chip
which has 3SS instead of 2SS. Both work with either image.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-02-26 23:20:04 +01:00
David Bauer
5568c8a9fe ath79: add ar71xx support-list entry for Fritz4020
This adds the support-list entry the AVM FRITZ!Box 4020 expects in the
ar71xx target to allow non-forced sysupgrades from ar71xx to ath79.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-02-26 23:20:04 +01:00
Andreas Ziegler
53c46b504c ar71xx: GL.iNet AR300M family: correct LED definitions
remove USB as this is no LED but power control
rename WiFi LED with correct color red (like in stock firmware)
set middle LED to be used for LAN link/activity

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
2019-02-26 23:20:04 +01:00
Sven Eckelmann
ba249bc955 ath10k-ct: fix incorrect multicast/broadcast rate setting
If no mcast_rate is set for the wifi-iface then there is no rate_idx (0)
set for the bss. This can break for example 5GHz meshpoint interfaces
because 0 maps to a CCK rate (11Mbit/s).

It must also be avoided that the ath10k-ct internal state for the rates is
not synced with the mac80211 rates state. Otherwise, the user specified
rate (e.g. a wifi-iface mcast_rate for a meshpoint interface) will only be
set on startup. And a short while after that, ath10k-ct specific code in
ath10k_check_apply_special_rates is missing a valid rate in its own
structures and is then recalculating a new default rate. This default rate
is in most situations not the requested rate.

Fixes: 4df3c71cd4 ("ath10k-ct: Update to 2018-12-11 and use version based on 4.19")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-26 23:20:04 +01:00
Sven Eckelmann
4beed12d85 mac80211: ath10k: fix incorrect multicast/broadcast rate setting
If no mcast_rate is set for the wifi-iface then there is no rate_idx (0)
set for the bss. This breaks for example 5GHz meshpoint interfaces because
0 maps to a CCK rate (11Mbit/s).

Fixes: db90c243a0 ("mac80211: update to version based on 4.19-rc4")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-26 23:20:04 +01:00
Hauke Mehrtens
b1c614784d mac80211: Add WDS / 4addr fix for ath10k supported devices
This should fix the WDS / 4addr mode with ath10k and probably other
devices.
This patch was found here: https://patchwork.kernel.org/patch/10692383/

Fixes: d9eefa7a70 ("mac80211: rebase ontop of v4.18.5")
Reported-by: Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-26 23:20:04 +01:00
Stanislaw Gruszka
426ffc563a mac80211: rt2x00: fix crash on release_firmware
Fix crash due to passing invalid r2x00dev->eeprom_file pointer to
release_firmware(). Since we copy eeprom data with EEPROM_SIZE
in rt2800_read_eeprom() we can use eeprom_file->size as marker
if the file was crated by request_firmware().

Acked-by: Kristian Evensen <kristian.evensen@gmail.com>
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
2019-02-26 22:57:32 +01:00
Felix Fietkau
0f89c17b57 mt76: update to the latest version
28d81ff mt76x0: eeprom: fix VHT mcs{8,9} rate power offset
6e33ce6 mt76: move mt76_mcu_msg_alloc in mt76-core
4637f95 mt76: move mt76_mcu_get_response in mt76-core
1763cb0 mt76: move mt76_mcu_rx_event in mt76-core
4db9d75 mt76x0: mcu: remove useless commented configuration
91d0455 mt76: move mt76_dma_tx_queue_skb_raw in mt76-core module
0e8e53f mt76: remove add_buf pointer in mt76_queue_ops
db47920 mt7603: rely on mt76_mcu_msg_alloc routine
471c447 mt7603: rely on mt76_mcu_get_response routine
cacc986 mt7603: rely on mt76_mcu_rx_event routine
11ab620 mt7603: rely on mt76_tx_queue_skb_raw common routine
82fa312 mt7603: move alloc_dev common code in mt76_alloc_device
47d5922 mt76: move alloc_device common code in mt76_alloc_device
c50c993 mt76x2u: remove mt76x2u_alloc_device routine
6ed5b7a mt76x0: remove mt76x0u_alloc_device routine
e32e249 mt76x2: remove mt76x2_alloc_device routine
6aacd1e mt76: change the return type of mt76_dma_attach()
a10e9e5 mt76x02u: use usb_bulk_msg to upload firmware
a774ff6 mt76: usb: fix possible NULL pointer dereference in mt76u_mcu_deinit
c2877bc mt76: usb: fix possible memory leak in mt76u_buf_free
a5cfe96 mt76: usb: do not run mt76u_queues_deinit twice
1e4db14 mt76: usb: move mt76u_check_sg in usb.c
302406b mt76: usb: do not use sg buffers for mcu messages
8ab5267 mt76: usb: use a linear buffer for tx/rx datapath if sg is not supported
a0a3505 mt76: usb: introduce disable_usb_sg parameter
0cee180 mt76: usb: use dev_err_ratelimited instead of dev_err in mt76u_complete_rx
1bb97c4 mt76x02u: remove bogus check and comment padding
2cbc2d4 mt76: Use the correct hweight8() function
f18e03a mt76x0u: fix suspend/resume
6231336 mt76: mt76x02: fix TSF sync mode
783da04 mt76: mt76x02: fix beacon timer drift adjustment
43d2507 mt76: mt76x02: fix beacon timer issue
59a6587 mt76: mt76x02: only reset beacon drift counter when enabling beacons
8c8eb98 mt76: mt76x02: issue watchdog reset on MCU request timeout
52161d2 mt76: mt76x02: fix ED/CCA enabling/disabling
5e7ecce mt76: mt76x2: unify mt76x2[u]_mac_resume
18af219 mt76: mt76x02: set MT_TXOP_HLDR_TX40M_BLK_EN for mt76x2
e5747b2 mt76usb: allow mt76u_bulk_msg be used for reads
2437a9a mt76usb: use synchronous msg for mcu command responses
e4250c9 mt76usb: remove usb_mcu.c
8b1110e mt76: usb: fix warning in mt76u_buf_free
89215f6 mt76: usb: introduce mt76u_fill_bulk_urb routine
523e374 mt76: usb: simplify rx buffer allocation
ffe1292 mt76: usb: simplify mt76u_tx_build_sg routine
e2a9d40 mt7603: fix ba window size selection
b040ef7 mt76: remove no longer used routine declarations
645ef43 mt76: usb: check urb->num_sgs limit in mt76u_process_rx_entry
fd315bd mt7603: disable dynamic sensitivity adjustment by default

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-26 18:01:09 +01:00
Piotr Dymacz
fe90e48c39 build: qsdk-ipq-*: include dtc in PATH before calling mkimage
Use 'dtc' from kernel sources instead of relying on host tool.

Fixes: bf4630e5ad ("build: add helpers for generating QSDK sysupgrade compatible images")
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-26 13:38:47 +01:00
Piotr Dymacz
9bf63d0339 uboot-envtools: add support for ALFA Network AP120C-AC
While at it, fix alphabetical order.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-26 00:16:22 +01:00
Piotr Dymacz
c568c6dc09 ipq40xx: add support for ALFA Network AP120C-AC
ALFA Network AP120C-AC is a dual-band ceiling AP, based on Qualcomm
IPQ4018 + QCA8075 platform.

Specification:

- Qualcomm IPQ4018 (717 MHz)
- 256 MB of RAM (DDR3)
- 16 MB (SPI NOR) + 128 MB (SPI NAND) of flash
- 2x Gbps Ethernet, with 802.3af PoE support in one port
- 2T2R 2.4/5 GHz (IPQ4018), with ext. FEMs (QFE1952, QFE1922)
- 3x U.FL connectors
- 1x 1.8 dBi (Bluetooth) and 2x 3/5 dBi dual-band (Wi-Fi) antennas
- Atmel/Microchip AT97SC3205T TPM module (I2C bus)
- TI CC2540 Bluetooth LE module (USB 2.0 bus)
- 4x LED (all driven by GPIO)
- 1x button (reset)
- 1x USB 2.0 (optional, not installed in indoor version)
- DC jack for main power input (12 V)
- UART header available on PCB (2.0 mm pitch)

Flash instruction:

1. This board uses dual-image feature (128 MB NAND is divided into two
   64 MB partitions: 'rootfs1' and 'rootfs2').
2. Before update, make sure your device is running firmware no older
   than v1.1 (previous versions have incompatible U-Boot).
3. Use 'factory' image in vendor GUI or for sysupgrade tool, without
   preserving settings.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-26 00:16:22 +01:00
Piotr Dymacz
d3f82d3b84 ipq-wifi: add board-2.bin for ALFA Network AP120C-AC
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-26 00:16:22 +01:00
Piotr Dymacz
99f72c0d62 ipq40xx: add support for Macronix MX35LF1GE4AB SPI NAND
Without a proper SPI NAND support (SPI NAND framework is available in
kernel >= 4.19) the only way to make such flash working is to include
it in raw/parallel NAND subsystem support and combine with mt29f staging
driver. Obviously, this approach isn't going to be accepted by upstream
(similar support for Winbond W25N01GV was rejected).

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-26 00:15:38 +01:00
Piotr Dymacz
bf4630e5ad build: add helpers for generating QSDK sysupgrade compatible images
Qualcomm SDK (QSDK) sysupgrade compatible images for IPQ40xx, IPQ806x
and IPQ807x use FIT format together with 'dumpimage' tool from U-Boot
for verifying and extracting them. Based on 'images' sections names,
corresponding mtd partitions are flashed. For example, in case of
NOR-only boards, below mapping is used (section name -> mtd name):

  hlos*   -> 0:HLOS
  rootfs* -> rootfs

And for boards with NAND (kernel inside UBI):

  ubi* -> rootfs

Above mappings come from unmodified QSDK sources and might be wrong for
boards running custom or modified QSDK-based firmware. Some of vendors
adjust them to meet their modified mtd layout or features like recovery
or dual-image support.

This adds simple script 'mkits-qsdk-ipq-image.sh' (based on 'mkits.sh')
for generating FIT images tree source files, compatible with the QSDK
sysupgrade format. Resulting images can be used for initial (factory ->
OpenWrt) installation and would work both in CLI and GUI.

The script is universal in a way it allows to include as many sections
as needed. To make use of it, two generic/basic build recipes for NOR
and NAND based boards are also included in 'image-commands.mk':

  Build/qsdk-ipq-factory-nand
  Build/qsdk-ipq-factory-nor

Example usage for board with UBI in NAND:

  IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2019-02-25 17:36:16 +01:00
Koen Vandeputte
f20fea9dcd kernel: bump 4.19 to 4.19.25
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-25 17:33:16 +01:00
Koen Vandeputte
ceed0665cc kernel: bump 4.14 to 4.14.103
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>
2019-02-25 17:33:16 +01:00
Koen Vandeputte
151d806c78 kernel: bump 4.9 to 4.9.160
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-25 17:33:16 +01:00
Koen Vandeputte
d037c873bf kernel: bump 3.18 to 3.18.136
Refreshed all patches.

Fixes:
- CVE-2019-6974

Compile-tested: adm5120
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-25 17:33:16 +01:00
Stijn Tintel
ffc65a80d1 kernel: add missing config symbols
The addition of kmod-input-touchscreen-ads7846 enabled
INPUT_TOUCHSCREEN, which exposes several other symbols on various
targets. Add those symbols to the generic kernel configs to fix build.

Fixes: 77a54bbf13 ("kernel: add kmod-input-touchscreen-ads7846")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-25 15:46:10 +02:00
Hans Dedecker
0b4b1027c6 odhcpd: update to latest git HEAD (FS#2142)
9e9389c dhcpv4: fix adding assignment in list (FS#2142)
e69265b dhcpv4: fix static lease lookup
afbd7dd dhcp: rework assignment free logic

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-25 12:07:52 +01:00
Stijn Tintel
02cd7f8b7a kernel: fix kmod-input-touchscreen-ads7846 deps
On targets that don't have input support enabled in the kernel config,
building kmod-input-touchscreen-ads7846 fails due to a missing
dependency on kmod-input-core. Add the dependency to fix this.

Fixes: 77a54bbf13 ("kernel: add kmod-input-touchscreen-ads7846")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-25 01:07:20 +02:00
Alexander Couzens
b7f2adbdd3 package/dnsmasq: add max_ttl/min_cache_ttl/max_cache_ttl
max_ttl - limit the ttl in the dns answer if greater as $max_ttl
min_cache_ttl - force caching of dns answers even the ttl in the answer
		is lower than the $min_cache_ttl
max_cache_ttl - cache only dns answer for $max_cache_ttl.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2019-02-24 01:48:25 +01:00
Stijn Tintel
77a54bbf13 kernel: add kmod-input-touchscreen-ads7846
This module adds support for ADS7846 based touchscreens used in devices
like the WaveShare 3.5" and 4" LCD displays designed for Raspberry Pi.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-24 01:17:01 +02:00
Stijn Tintel
c22cde2ea1 kernel: add kmod-fb-tft-ili9486
This module adds support for the ILI9486 LCD controller used in devices
like the Waveshare 3.5" and 4" LCD displays designed for Raspberry Pi.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-24 01:15:22 +02:00
Stijn Tintel
9f4a7de48a kernel: add kmod-fb-tft
This module adds support for small TFT LCD display modules. While this
module also exists in the 4.9 kernel, we are not going to support this
kernel in the next major release, so don't make it available for 4.9.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-24 01:15:22 +02:00
Stijn Tintel
4b3d17b709 kernel: add kmod-fb-sys-ram
The kernel modules that provide support for framebuffers in system RAM
are currently included in the kmod-drm-imx package. Move them to a
separate package, so that other modules can depend on them.

Increase the autoload order of the drm-imx* packages to load the modules
after loading the fb modules they depend on.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-24 01:15:05 +02:00
Stijn Tintel
e03deb8cae kernel: add kmod-iio-ccs811
This module supports the AMS CCS811 VOC sensor.
Tested on Raspberry Pi Zero W and ODROID C2.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-23 17:22:53 +02:00
Yousong Zhou
c17a68cc61 dnsmasq: prefer localuse over resolvfile guesswork
This makes it clear that localuse when explicitly specified in the
config will have its final say on whether or not the initscript should
touch /etc/resolv.conf, no matter whatever the result of previous
guesswork would be

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-02-23 01:58:20 +00:00
Koen Vandeputte
d9ab3240a5 kernel: bump 4.19 to 4.19.24
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-22 10:53:42 +01:00
Koen Vandeputte
3a2668c6d5 kernel: bump 4.14 to 4.14.102
Refreshed all patches.

Remove upstreamed:
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Remove upstreamed hunks:
- 080-pinctrl-msm-fix-gpio-hog-related-boot-issues.patch

Fixes:
- CVE-2018-1000026

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-22 10:53:42 +01:00
Koen Vandeputte
8f980a8cfe kernel: bump 4.9 to 4.9.159
Refreshed all patches.

Remove upstreamed:
- 023-1-smsc95xx-Use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 023-6-ch9200-use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 023-7-kaweth-use-skb_cow_head-to-deal-with-cloned-skbs.patch
- 050-usb-dwc2-Remove-unnecessary-kfree.patch
- 092-netfilter-nf_tables-fix-mismatch-in-big-endian-syste.patch
- 272-uapi-if_ether.h-prevent-redefinition-of-struct-ethhd.patch

Fixes:
- CVE-2018-1000026

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-22 10:53:42 +01:00
Koen Vandeputte
26f8644510 kernel: bump 3.18 to 3.18.135
Refreshed all patches.

Fixes:
- CVE-2019-3819
- CVE-2019-7221
- CVE-2019-7222

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-22 10:53:42 +01:00
Yousong Zhou
73c60ef239 scripts/qemustart: allow machine selection with new option --machine
This can be used to set machine options like highmem=off for running old
armvirt/32 kernel lacking LPAE support with QEMU version 3.0 or later

 [1] Armv7 guest fails to boot with qemu-3.0.0-1,
     https://bugzilla.redhat.com/show_bug.cgi?id=1633328#c5

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-02-22 01:35:05 +00:00
Rafał Miłecki
2d139450a3 mac80211: backport more brcmfmac changes queued for the 5.1
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-02-20 23:06:16 +01:00
Oever González
81adb132da ipq-wifi: update ipq-wifi for Linksys EA6350v3
This commit updates the file "board-linksys_ea6359v3".

Without this commit, the Linksys EA6350v3 will experience poor wireless
performance in both bands. With this patch, wireless performace will be
comparable to the performance of the stock firmware.

Signed-off-by: Oever González <notengobattery@gmail.com>
2019-02-20 18:51:31 +01:00
Chuanhong Guo
3bd871ad52 ath79: fix wmac memory region for qca953x
According to /arch/mips/include/asm/mach-ath79/ar71xx_regs.h
the size of wmac register range for qca953x is only 0x20000.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-02-20 18:51:31 +01:00
Christian Lamparter
d38789b559 firmware: ipq-wifi: mark packages as nonshared
The board-files are specific to the target and device. Hence
they need to be set as nonshared. Otherwise they do not show
up on the package repository. This causes problems for
imagebuilder, if it needs to build a image for a specific
device that hasn't had the time to have get its boardfile
upstream.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-20 18:51:31 +01:00
Linus Walleij
c72b1d8468 gemini: Generate harddisk image for DNS-313
This makes OpenWrt build an Ext2+Ext4 partitioned image
for the D-Link DNS-313 with two blank partitions, a boot
partition on /dev/sda3 and a rootfs partition on
/dev/sda4.

This uses the methods already used in apm821xx including
the tricks to convert the generated Ext2 filesystem
partition to version 1 so that the firmware bootloader
will properly recognize it.

We patch a bit around the build files to make sure we
get the rootfs size set and that genext2fs is properly
built.

Tested on the D-Link DNS-313.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[Fixing and tricksing]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-02-20 18:51:31 +01:00
Linus Walleij
6cdf08f026 firmware-tools/ptgen: Allow generation 0 size partitions
The firmware on the D-Link DNS-313 NAS require two blank
partitions before the boot partition. Support this if
explicitly requested with a "-n" flag.

Tested on the D-Link DNS-313.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[Broken out from original patch]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-02-20 18:51:31 +01:00
Christian Lamparter
a69e101ed1 ipq40xx: speed up ath10k-caldata extraction
Reading and writing to and from flash storage is slow and currently,
the ath10kcal_extract() scripts are even more at an disadvantage
because they use a block size of 1 to be able skip.

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

before: (Tested on a RT-AC58U, which has SPI-NAND).

 # time dd if=/dev/ubi0_1 of=/lib/firmware/... bs=1 skip=4096 count=12064
12064+0 records in
12064+0 records out
real    0m 0.28s
user    0m 0.02s
sys     0m 0.24s

after:

 # time dd if=/dev/ubi0_1 of=/lib/firmware/... bs=12064 skip=4096 count=1 iflag=skip_bytes
1+0 records in
1+0 records out
real    0m 0.01s
user    0m 0.00s
sys     0m 0.00s

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-20 18:51:19 +01:00
Daniel Golle
0b373bf4d6 uqmi: fix PIN_STATUS_FAILED error with MC7455 WCDMA/LTE modem
Apparently this modem replies differently to attempted --get-pin-status
which makes the script fail if a pincode is set. Fix this.

Manufacturer: Sierra Wireless, Incorporated
Model: MC7455
Revision: SWI9X30C_02.24.05.06 r7040 CARMD-EV-FRMWR2 2017/05/19 06:23:09

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-20 15:16:24 +01:00
Arnout Vandecappelle (Essensium/Mind)
2e0f41e73a hostapd: add Multi-AP patches and config options
Cherry-pick Multi-AP commits from uptream:
 9c06f0f6a hostapd: Add Multi-AP protocol support
 5abc7823b wpa_supplicant: Add Multi-AP backhaul STA support
 a1debd338 tests: Refactor test_multi_ap
 bfcdac1c8 Multi-AP: Don't reject backhaul STA on fronthaul BSS
 cb3c156e7 tests: Update multi_ap_fronthaul_on_ap to match implementation
 56a2d788f WPS: Add multi_ap_subelem to wps_build_wfa_ext()
 83ebf5586 wpa_supplicant: Support Multi-AP backhaul STA onboarding with WPS
 66819b07b hostapd: Support Multi-AP backhaul STA onboarding with WPS
 8682f384c hostapd: Add README-MULTI-AP
 b1daf498a tests: Multi-AP WPS provisioning

Add support for Multi-AP to the UCI configuration. Every wifi-iface gets
an option 'multi_ap'. For APs, its value can be 0 (multi-AP support
disabled), 1 (backhaul AP), 2 (fronthaul AP), or 3 (fronthaul + backhaul
AP). For STAs, it can be 0 (not a backhaul STA) or 1 (backhaul STA, can
only associate with backhaul AP).

Also add new optional parameter to wps_start ubus call of
wpa_supplicant to indicate that a Multi-AP backhaul link is required.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-02-20 13:17:11 +01:00
Daniel Golle
8554982e1f mac80211: rt2x00: replace pending by merged patches
Those have by now been merged into wireless-drivers-next:
 17ae2acd1a6f rt2x00: remove unneeded check
 5991a2ecd070 rt2x00: remove confusing AGC register
 9ad3b5565445 rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band
 7aca14885ede rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620
 c7ff1bfeaf1c rt2800: comment and simplify AGC init for RT6352

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-20 13:17:11 +01:00
Hauke Mehrtens
7878215a56 x86: Make kmod-drm-radeon and kmod-drm-amdgpu depend on x86
Currently these kernel packages only work on x86, restrict them to that
target.

Fixes: 2f239c02a0 ("x86: video: add amdgpu DRM kernel package")
Fixes: 2f6918ee9b ("x86: video: add radeon DRM module support")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-20 00:02:50 +01:00
Pawel Dembicki
02644e5612 generic: kernel: Add missing config option
DRM packages break modules compilation for sunxi target,
cortexa7 and cortexa8 subtargets.

This patch add missing symbol to generic config.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-02-19 22:11:29 +01:00
Hans Dedecker
1bdd3b5f7d Revert "iproute2: use tc package variant to limit other package sizes"
This reverts commit e6d84fa886 as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma
for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-19 15:22:28 +01:00
Hans Dedecker
de14f4301e Revert "iproute2: simplify linking libelf for eBFP/XDP object file support"
This reverts commit 26681fa6a6 as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma
for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-19 15:22:28 +01:00
Hans Dedecker
566bfa417e Revert "iproute2: tc: enable and fix support for using .so plugins"
This reverts commit fc80ef3613 as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and
rdma for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-19 15:22:28 +01:00
Hans Dedecker
96060b3018 Revert "iproute2: tc: reduce size of dynamic symbol table"
This reverts commit 248797834b as it breaks the
installation of the iproute2 utilities ip-bridge, ss, nstat, devlink and rdma
for the ip-full variant

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-19 15:22:28 +01:00
Yousong Zhou
afe00a79ee armvirt: 32: enable CONFIG_ARM_LPAE
This is required for running armvirt_32 on QEMU 3.0 [1], otherwise the
kernel will emit the following complaint and virtio-net-pci devices will
fail to be initialized

        [    1.124214] OF: PCI: host bridge /pcie@10000000 ranges:
        [    1.125093] OF: PCI:    IO 0x3eff0000..0x3effffff -> 0x00000000
        [    1.125942] OF: PCI:   MEM 0x10000000..0x3efeffff -> 0x10000000
        [    1.126403] OF: PCI:   MEM 0x8000000000..0xffffffffff -> 0x8000000000
        [    1.127748] pci-host-generic 4010000000.pcie: can't claim ECAM area [mem 0x10000000-0x1fffffff]: address conflict with /pcie@10000000 [mem 0x10000000-0x3efeffff]
        [    1.129752] pci-host-generic: probe of 4010000000.pcie failed with error -16

Running QEMU with "-M virt,highmem=off" is an option, but "highmem" was only
introduced as a default on flag since QEMU 2.5.0 and QEMU will fail and quit on
encounter of unknown flags

 [1] Armv7 guest fails to boot with qemu-3.0.0-1,
     https://bugzilla.redhat.com/show_bug.cgi?id=1633328#c5

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-02-19 13:13:49 +00:00
Yousong Zhou
0aedf5cfcb armvirt: 32: refresh kernel config
The diff was genereated by running the following command without
actually changing any kernel config options

	make kernel_menuconfig CONFIG_TARGET=subtarget

Here are some initial findings on the change

 - CONFIG_ARCH_OPTIONAL_KERNEL_RWX is now arch default
 - CONFIG_ARM_GIC_V3_ITS is selected by CONFIG_ARCH_VIRT
 - CONFIG_CPU_SPECTRE is select by CONFIG_CPU_V7
 - CONFIG_TIMER_OF is now a arch default
 - CONFIG_TIMER_PROBE is select by CONFIG_TIMER_OF

The following options should probably be moved to generic config

 - CONFIG_MIGRATION is a default on option
 - CONFIG_TREE_SRCU is a default on option for !PREEMPT && SMP system
 - CONFIG_RCU_NEED_SEGCBLIST

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2019-02-19 13:13:48 +00:00
Yousong Zhou
ec2a2a2aea dnsmasq: allow using dnsmasq as the sole resolver
Currently it seems impossible to configure /etc/config/dhcp to achieve
the following use case

 - run dnsmasq with no-resolv
 - re-generate /etc/resolv.conf with "nameserver 127.0.0.1"

Before this change, we have to set resolvfile to /tmp/resolv.conf.auto
to achive the 2nd effect above, but setting resolvfile requires noresolv
being false.

A new boolean option "localuse" is added to indicate that we intend to
use dnsmasq as the local dns resolver.  It's false by default and to
align with old behaviour it will be true automatically if resolvfile is
set to /tmp/resolv.conf.auto

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-19 13:06:06 +00:00
Daniel Golle
d4c999bb89 mac80211: rt2x00: backport accepted and pending patches from upstream
backport from wireless-drivers-next, replacing some existing patches in
our tree (marked with '=' are those which were already present):
 f483039cf51a rt2x00: use simple_read_from_buffer()
=5c656c71b1bf rt2800: move usb specific txdone/txstatus routines to rt2800lib
=0b0d556e0ebb rt2800mmio: use txdone/txstatus routines from lib
=5022efb50f62 rt2x00: do not check for txstatus timeout every time on tasklet
=adf26a356f13 rt2x00: use different txstatus timeouts when flushing
=0240564430c0 rt2800: flush and txstatus rework for rt2800mmio
 6eba8fd22352 rt2x00: rt2400pci: mark expected switch fall-through
 10bb92217747 rt2x00: rt2500pci: mark expected switch fall-through
 916e6bbcfcff rt2x00: rt2800lib: mark expected switch fall-throughs
 641dd8068ecb rt2x00: rt61pci: mark expected switch fall-through
 750afb08ca71 cross-tree: phase out dma_zalloc_coherent()
=c2e28ef7711f rt2x00: reduce tx power to nominal level on RT6352
 a4296994eb80 rt2x00: Work around a firmware bug with shared keys
 2587791d5758 rt2x00: no need to check return value of debugfs_create functions

pending on linux-wireless:
 rt2x00: remove unneeded check
 rt2x00: remove confusing AGC register
 rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band
 rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620
 rt2800: comment and simplify AGC init for RT6352
 rt2x00: do not print error when queue is full
 rt2800: partially restore old mmio txstatus behaviour
 rt2800: new flush implementation for SoC devices
 rt2800: move txstatus pending routine
 rt2800mmio: fetch tx status changes
 rt2800mmio: use timer and work for handling tx statuses timeouts
 rt2x00: remove last_nostatus_check
 rt2x00: remove not used entry field
 rt2x00mmio: remove legacy comment

While at it also rename some existing patches now that there are
separate folders with patches for each driver to make things a bit
nicer to handle.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-19 09:05:34 +01:00
Hans Dedecker
331963717b odhcpd: update to latest git HEAD
1f01299 config: fix build failure in case DHCPv4 support is disabled
67b3a14 dhcpv4: fix assignment of requested IP address
ca8ba91 dhcp: rework static lease logic
36833ea dhcpv6: rapid commit support
1ae316e dhcpv6: fix parsing of DHCPv6 relay messages
80157e1 dhcpv4: fix compile issue
671ccaa dhcpv6-ia: move function definitions to odhcpd.h
0db69b0 dhcpv6: improve code readibility
7847b27 treewide: unify dhcpv6 and dhcpv4 assignments
a54cee0 netlink: rework handling of netlink messages
9f25dd8 treewide: use avl tree to store interfaces
f21a0a7 treewide: align syslog tracing
edc5fb0 dhcpv6-ia: add full CONFIRM support
9d6eadf dhcpv6-ia: rework append_reply()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-18 16:11:32 +01:00
Hauke Mehrtens
d0b45962ef build: Fix print without color
The original patch removed the printing completely, just remove the
color.

Fixes: eabc1ddc45  ("build: Honour NO_COLOR in include/scan.mk")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 19:30:34 +01:00
Daniel Engberg
a0dfab220d toolchain/binutils: Remove 2.30
Remove binutils 2.30

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-17 19:22:39 +01:00
Rosy Song
93b984b78a samba36: allow build with no ipv6 support
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2019-02-17 19:22:39 +01:00
Paul Wassi
dc08514e6d uboot-kirkwood: update to 2019.01
Update U-Boot to current 2019.01 release for kirkwood platform

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-17 19:22:39 +01:00
Paul Wassi
d42c9ce326 kirkwood: add kernel 4.19 support
Add patches for 4.19
Drop patch 200-disable-tso, as the packet corruption was fixed in
kernel commit 3b89624ab54b9dc2d92fc08ce2670e5f19ad8ec8

Restructure the DTS for Marvell switch in 104-ea3500 and 105-ea4500
to fix DTC warning.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-17 19:22:39 +01:00
Oldřich Jedlička
66e875a070 kernel: Added required dependencies for socket match.
This applies to kernel 4.10 and newer.

See 8db4c5be88

The above commit added to kernel 4.10 added new dependency
for building the NETFILTER_XT_MATCH_SOCKET (xt_socket.ko)
module. The NF_SOCKET_IPVx options (both of them) need to
be enabled in order to build the NETFILTER_XT_MATCH_SOCKET
module. Without the change the module is not built.

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
e711fd48be x86: video: disable buildtin amdgpu DRM driver
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
2f239c02a0 x86: video: add amdgpu DRM kernel package
build amdgpu kernel as modules so it will find the firmware files

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
cb3798cf3f x86: DRM: add x64 subtarget support
copy settings from generic subtarget

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
edb21ee3d2 x86: video: disable builtin radeon DRM driver
builtin driver can't access the /lib/firmware while booting,
module driver will be able to read and load the firmware files

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
2f6918ee9b x86: video: add radeon DRM module support
add radeon module support so firmware can be loaded from userland

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
b06418016d linux-firmware: DRM: add amdgpu firmware
add firmware needed for amdgpu DRM display

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Lucian Cristian
22fdaa06b7 linux-firmware: DRM: add radeon firmware
add firmware needed for radeon DRM display

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-02-17 19:22:39 +01:00
Hauke Mehrtens
ce8226a971 strace: Only allow libdw or libunwind
These two dependencies are mutual exclusive and it is only possible to
select one of them, change the select to a chose so it is only possible
to select one of them in OpenWrt menu config.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 19:22:39 +01:00
Peter Wagner
b494734367 strace: fix configuration options
Signed-off-by: Peter Wagner <tripolar@gmx.at>
2019-02-17 19:22:39 +01:00
Peter Wagner
0297610554 elfutils: fix DEPENDS for libelf
Signed-off-by: Peter Wagner <tripolar@gmx.at>
2019-02-17 19:22:39 +01:00
Sven Eckelmann
9a5a10eb69 build: Accept BIN_DIR parameter for legacy-images
BIN_DIR can be set to overwrite the output path for new images. This is an
advertised feature for the imagebuilder and is used by systems like
LibreMesh's chef.

The legacy images are build using a new sub-make which doesn't receive the
variable overwrites of the parent make process. As result, the BIN_DIR is
automatically defined to the default value from rules.mk. The images will
therefore not be placed in the output path which was selected by the user.

Providing BIN_DIR as an explicit variable override to the sub-make works
around this problem.

Fixes: 26c771452c ("image.mk: add LegacyDevice wrapper to allow legacy image building code to be used for device profiles")
Reported-by: Paul Spooren <mail@aparcar.org>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-17 19:22:39 +01:00
Yangbo Lu
5d11672d07 kernel: disable CONFIG_USB_IMX21_HCD in default for kernel 4.14
CONFIG_USB_IMX21_HCD should be handled in generic config and
module package. So moved it into generic config.
This also fixed build issue (kernel config question) of layerscape
armv8_32b since it also used ARCH_MXC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
[Deactivate CONFIG_USB_IMX21_HCD also for kernel 4.19]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 19:22:39 +01:00
Oskari Lemmela
cd1e9c88f3 sunxi: fix: A64 unstable timer
Backport A64 unstable timer patches from linux 5.1

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
[Split the single patch into the two original patches]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 19:22:39 +01:00
Pawel Dembicki
d5f615bf2a sunxi: add support for Sinovoip Banana Pi M2 Plus
CPU: H3 Quad-core Cortex-A7 H.265/HEVC 4K @ 1.2 Ghz
GPU: Mali400MP2 GPU @ 600MHz (supports OpenGL ES 2.0)
Memory: 1GB DDR3 (shared with GPU)
Onboard: Storage TF card (Max. 64GB) / MMC card slot
Onboard: Network 10/100M Ethernet RJ45 (Realtek RTL8211E)
Onboard: Network BT4.0/WiFi 802.11 b/g/n (Ampak AP6212)
Onboard header: SPI, I2C, GPIO, UART
USB 2.0: Two USB 2.0 HOST, One USB 2.0 OTG

Untested:
Audio, Video

Not working:
Bluetooth

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-02-17 19:22:39 +01:00
Pawel Dembicki
1559682757 linux-firmware: broadcom: package 43430a0 FullMAC firmware
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-02-17 19:22:39 +01:00
Eneas U de Queiroz
ddee1825de openssl: patch to fix devcrypto sessions leak
Applies a patch from https://github.com/openssl/openssl/pull/8213
that fixes an error where open /dev/crypto sessions were not closed.
Thanks to Ansuel Smith for reporting it.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-02-17 19:22:35 +01:00
R. Diez
eabc1ddc45 build: Honour NO_COLOR in include/scan.mk
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Hi all:

This is my first OpenWrt patch. I am a clean, pure newbie! 8-)

Honour NO_COLOR in Makefile function 'progress' in include/scan.mk, in the same way that include/verbose.mk does.

Signed-off-by: R. Diez <rdiezmail-openwrt@yahoo.com>
2019-02-17 19:22:04 +01:00
Tomasz Maciej Nowak
55b808e0c4 x86: image: add test module to bootloader
It was previously added in 546fced, which was part of "intel-microcode:
load as early as possible" series.
Unfortunately the conditionals added to GRUB config caused error on boot,
because on sysupgrade, bootloader is not updated and is left with old
features/modules. Since this module is needed for early microcode load
and transition to this needs to be done step by step, enable the test
module now, so that every newly created image has it already embedded.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-02-17 18:22:40 +01:00
Tomasz Maciej Nowak
bb0e4f9fb0 build: remove leftovers from previous x86 commits
VBoxManage is not used and the image is created with proper permisions:
0f5d0f6  image: use internal qemu-img for vmdk and vdi images drop host
         dependencies on qemu-utils and VirtualBox

Unreachable config symbols:
9e0759e  x86: merge all geode based subtargets into one

No need to define those symbols since x86_64 is subtarget of x86:
196fb76  x86: make x86_64 a subtarget instead of a standalone target

Unreachable config symbols, so remove GRUB_ROOT:
371b382  x86: remove the xen_domu subtarget

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-02-17 18:22:40 +01:00
Daniel F. Dickinson
da50f027f0 config: kernel: Fix missing symbol on brcm2708 with CGROUPS
When CGROUP block io is enabled a new symbol is exposed and needs to
be set or unset else kernel oldconfig hangs waiting for input during
normal OpenWrt builds.  Therefore add sane defaults for this symbol
in that case.  Also, the defaults brcm2708 are different than generic
defaults because the platform's defconfig enables BLK_DEV_THROTTLING
by default (in defconfig config from the patches used to match
upstream's kernel, not in OpenWrt config-4.xx).

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
[make KERNEL_BLK_DEV_THROTTLING_LOW depend on KERNEL_BLK_DEV_THROTTLING]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 18:22:40 +01:00
Adrian Schmutzler
319c5d7c49 ar71xx: Fix 5 GHz MAC address for Archer C60 v2
Looks like C60 v2 needs the MAC address to be calculated
manually, while the C60 v1 gets it correctly without manual
interference.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-02-17 18:22:39 +01:00
Rosen Penev
5e8f18fef6 kernel: Remove CONFIG_UDF_NLS for kernel 4.19
kernel 4.18 removed the symbol and made NLS implicit.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-02-17 17:33:18 +01:00
Rosen Penev
cd519abdbc mdadm: Update to 4.1
Tested on GnuBee PC1.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-02-17 17:33:18 +01:00
Deng Qingfang
f5db5742e4 iw: update to 5.0.1
Refresh patches

MIPS IPK size increases:
iw-tiny: +3k
iw-full: +10k

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
[Remove sha256, nan, bloom, measurements and ftm from tiny version]
[sync nl80211 between backports and iw]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 17:33:18 +01:00
Hauke Mehrtens
d48a8ed40d mac80211: update to version 4.19.23-1
This updates mac80211 to backports version 4.19.23-1 which includes all
the stable fixes from kernel 4.19.23.
The removed patches are included in this version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-17 17:33:18 +01:00
Jonas Gorski
c8a30172f8 dnsmasq: ensure test and rc order as older than final releases
Opkg treats text after a version number as higher than without:

 ~# opkg compare-versions "2.80rc1" "<<" "2.80"; echo $?
 1
 ~# opkg compare-versions "2.80rc1" ">>" "2.80"; echo $?
 0

This causes opkg not offering final release as upgradable version, and
even refusing to update, since it thinks the installed version is
higher.

This can be mitigated by adding ~ between the version and the text, as ~
will order as less than everything except itself. Since 'r' < 't', to
make sure that test will be treated as lower than rc we add a second ~
before the test tag. That way, the ordering becomes

  2.80~~test < 2.80~rc < 2.80

which then makes opkg properly treat prerelease versions as lower.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2019-02-17 16:55:24 +01:00
Felix Fietkau
5b6997dcb3 hostapd: update the fix for a race condition in mesh new peer handling
Prevent the mesh authentication state machine from getting reset on bogus
new peer discovery

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-17 16:06:44 +01:00
Felix Fietkau
f948aa4d4f hostapd: enable CONFIG_DEBUG_SYSLOG for wpa_supplicant
It was already enabled for wpad builds and since commit 6a15077e2d
the script relies on it. Size impact is minimal (2 kb on MIPS .ipk).

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-17 13:05:14 +01:00
Alin Nastac
5241f9005c ipset: add support for hash(ip,mac)
Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-17 12:00:02 +01:00
Koen Vandeputte
ca13820d13 kernel: bump 4.19 to 4.19.23
Refreshed all patches.

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-15 21:53:27 +01:00
Koen Vandeputte
3967376eb7 kernel: bump 4.14 to 4.14.101
Refreshed all patches.

Fixes:
- CVE-2019-3819

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-15 21:53:27 +01:00
Koen Vandeputte
276d8b86a7 kernel: bump 4.9 to 4.9.158
Refreshed all patches.

Fixes:
- CVE-2019-3819

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-15 21:53:27 +01:00
Hannu Nyman
94993a79f8 busybox: update to 1.30.1
Minor bugfix release. Fixes for
 * bc/dc
 * sed (backslash parsing for 'w' command)
 * ip (vlan fixes)
 * grep (fixes for -x -v)
 * ls (-i compat)

No need to refresh patches or config defaults

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2019-02-14 21:43:07 +01:00
Oever González
c35d7f3f8a ipq40xx: fix ipq40xx_setup_macs for Linksys EA6350v3
This commit fixes the script that sets the MAC address of the LAN
switch. The LAN MAC address should be the WAN MAC address plus one.

Without this patch the WAN and the LAN interface will use the same
MAC address and an error will be generated.

With this patch all interfaces will have a different MAC address,
consecutive in the following order: WAN, LAN, radio0 and radio1.

Signed-off-by: Oever González <notengobattery@gmail.com>
2019-02-14 16:56:15 +01:00
Roman Glova
064e431575 ipq8064: Enabling sata port ipq8064 based devices
(original text here: https://patchwork.kernel.org/patch/8686761/)

On some SOCs PORTS_IMPL register value is never programmed by the BIOS
and left at zero value. Which means that no sata ports are avaiable for
software. AHCI driver used to cope up with this by fabricating the
port_map if the PORTS_IMPL register is read zero, but recent patch
broke this workaround as zero value was valid for nvme disks.
This patch adds ports-implemented dt bindings as workaround for this issue
in a way that DT can dictate the port_map incase where the SOCs does not
program it already.

This patch is equal to commits:
67f8425d0ee1 ("ipq8064: dts: force AP148 SATA port mapping")
2e7a2c91019c ("ARM: dts: qcom: Move common nodes to ipq8064-v.1.0.dtsi")
in the upstream linux kernel.

Signed-off-by: Roman Glova <roman_glova@epam.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[added upstream commits, reorg' commit message]
2019-02-14 16:56:15 +01:00
INAGAKI Hiroshi
93d4439454 ath79: add support for I-O DATA WN-AC1600DGR
I-O DATA WN-AC1600DGR is a 2.4/5 GHz band 11ac router, based on
Qualcomm Atheros QCA9557.

Specification:

- SoC:      Qualcomm Atheros QCA9557
- RAM:      128 MB
- Flash:    16 MB
- WLAN:     2.4/5 GHz
  - 2.4 GHz: 2T2R (SoC internal)
  - 5 GHz:   3T3R (QCA9880)
- Ethernet: 5x 10/100/1000 Mbps
  - Switch: QCA8337N
- LED/key:  6x/6x(4x buttons, 1x slide switch)
- UART:     through-hole on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port of WN-AC1600DGR
2. Connect power cable to WN-AC1600DGR and turn on it
3. Access to "http://192.168.0.1/" and open firmware update page
("ファームウェア")
4. Select the OpenWrt factory image and click update ("更新") button
5. Wait ~150 seconds to complete flashing

Alternative flash instruction using initramfs image:

1. Prepare a computer and TFTP server software with the IP address
"192.168.99.8" and renamed OpenWrt initramfs image
"uImageWN-AC1600DGR"
2. Connect between WN-AC1600DGR and the computer with UART
3. Connect power cable to WN-AC1600DGR, press "4" on the serial
console and enter the U-Boot console
4. execute "tftpboot" command on the console and download initramfs
image from the TFTP server
5. execute "bootm" command and boot OpenWrt
6. On initramfs image, download the sysupgrade image to the device
and perform sysupgrade with it
7. Wait ~150 seconds to complete flashing

This commit also removes unnecessary "qca,no-eeprom" property from
the ath10k wifi node.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-02-14 16:56:15 +01:00
Santiago Piccinini
cc8bd77772 ath79: fix qca955x dual pci resource allocation
Tested with a dual pci QCA9558 board (LibreRouter v1) in three
configurations: enabling pcie0 only, pcie1 only and both enabled.

Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [removed ML notice]
2019-02-14 16:56:15 +01:00
Santiago Piccinini
eea66c3227 ath79: fix qca955x pcie0 memory size
Datasheet states that both PCI ranges are of 0x2000000 size:
0x1000_0000-0x11FF_FFF and 0x1200_0000-0x13FF_0000.

Signed-off-by: Santiago Piccinini <spiccinini@altermundi.net>
Reviewed-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [removed ML notice]
2019-02-14 16:56:15 +01:00
Marius Genheimer
9ad3967f14 ipq40xx: add support for ASUS Lyra
SoC:   Qualcomm IPQ4019 (Dakota) 717 MHz, 4 cores
RAM:   256 MiB (Nanya NT5CC128M16IP-DI)
FLASH: 128 MiB (Macronix NAND)
WiFi0: Qualcomm IPQ4019 b/g/n 2x2
WiFi1: Qualcomm IPQ4019 a/n/ac 2x2
WiFi2: Qualcomm Atheros QCA9886 a/n/ac
BT:    Atheros AR3012
IN:    WPS Button, Reset Button
OUT:   RGB-LED via TI LP5523 9-channel Controller
UART:  Front of Device - 115200 N-8
       Pinout 3.3v - RX - TX - GND (Square is VCC)

Installation:
1. Transfer OpenWRT-initramfs image to the device via SSH to /tmp.
Login credentials are identical to the Web UI.

2. Login to the device via SSH.

3. Flash the initramfs image using

> mtd-write -d linux -i openwrt-image-file

4. Power-cycle the device and wait for OpenWRT to boot.

5. From there flash the OpenWRT-sysupgrade image.

Ethernet-Ports: Although labeled identically, the port next to
the power socket is the LAN port and the other one is WAN. This
is the same behavior as in the stock firmware.

Signed-off-by: Marius Genheimer <mail@f0wl.cc>
[Dropped setup_mac 02_network in favour of 05_set_iface_mac_ipq40xx.sh,
reorderd 02_network entries, added board.bin WA for the QCA9886 from ath79,
minor dts touchup, added rng to 4.19 dts]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-14 16:56:15 +01:00
Christian Lamparter
5ee9763aaa ipq40xx: ea6350v3: 4.19: enable pseudo rng support
Robert Marko made a big effort to enable the rng on all
ipq40xx for 4.19, so let's continue the quest.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-14 16:56:15 +01:00
Linus Walleij
b9a24f31a9 gemini: Name binary "bootpart.tar.gz"
This factory binary i supposed to actually be unzipped and
untarred by the user as part of the installation process
(this NAS boots from harddisk), so name it "bootpart.tar.gz"
and not "factory.bin" so it is helpful for users.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-14 16:56:15 +01:00
Daniel Engberg
b3c050c013 kernel: Add missing config option for kernel 4.19
Add CONFIG_USB_ROLE_SWITCH otherwise Octeon 4.19 fails compile

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-14 16:56:15 +01:00
Pawel Dembicki
bbe932ac16 mpc85xx: 4.19: add missing symbol
OCEDO Panda was added in b368373f, but only for
4.14 config. This patch fix 4.19 build for generic
and p2020 subtarget.

Signed-off-by: Pawel Dembicki <p.dembicki@wb.com.pl>
2019-02-14 16:56:15 +01:00
INAGAKI Hiroshi
e52ad0f919 ramips: change status LED for Buffalo WHR-G300N
Buffalo WHR-G300N has a LED for power status indication, but it is not
connected to the GPIO and cannot be controlled by the kernel. So,
WHR-G300N uses "ROUTER" LED as the system status LED instead.

This commit changes it to use "DIAG" LED insted of "ROUTER" like
WHR-G301N in ath79 target.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-02-14 16:56:15 +01:00
David Bauer
7bf6b59724 ramips: various Netgear R6120 fixes
The R6120 has no 5GHz WLAN LED, the assigned GPIO in fact controls
the WAN LED.

Renames the LED accordingly in the device-tree.
Removes the 5GHz WLAN LED trigger.
Adds the correct WAN port LED trigger.

----

Currently, the MAC address for the Netgear R6120 is read from the NVRAM
partition. The offset for the MAC address however is not consistent
across devices or firmware versions.

Switch to using the factory partition like all other Netgear devices do.

----

The LAN ports of the R6120 are labled in reverse on the casing.

Adjust LuCI switchport numbering accordingly.

----

The WiFi eeprom offsets for the R6120 are currently wrong (5GHz offset
is bigger than the partition itself).

Fixes poor performance on 2.4 and 5 GHz.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-02-14 16:56:14 +01:00
INAGAKI Hiroshi
f305ce5c35 ramips: add support for I-O DATA WN-AC1167GR
I-O DATA WN-AC1167GR is a 2.4/5 GHz band 11ac router, based on
MediaTek MT7620A.

Specification:

- SoC     : MediaTek MT7620A
- RAM     : DDR2 64 MB
- Flash   : SPI-NOR 8MB
- WLAN    : 2.4/5 GHz, 2T2R
  - 2.4 GHz: MT7620A (SoC)
  - 5 GHz  : MT7612E
- Ethernet: 10/100/1000 Mbps (ext. MT7530)
- LED/key : 4x/3x (2x buttons, 1x slide-switch)
- UART    : through-hole on PCB
  - J2: TX, GND, RX, Vcc from SoC side
  - 115200n8

Flash instruction using factory image:

1. Boot WN-AC1167GR normaly
2. Access to "http://192.168.0.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

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2019-02-14 16:56:14 +01:00
Paul Wassi
dee8db441e ath79: proper indentation in image/common-tp-link.mk
Add two spaces for proper indentation in image/common-tp-link.mk

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
212892ce70 ath79: fix port order on TL-WR841ND-v7
The switch ports are seen one to one on the case.
Also remove unneeded secondary port numbers in this
case statement.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
97fcd2622a ath79: change ledtrig on GL.iNet AR150
Change the ledtrig for LAN from netdev to switch.
Although eth1 comes out of the device at a single port,
this port is a switch-port and therefore the LED
must be triggered by that.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
79cc48ff60 ath79: rename TP-LINK to TP-Link
Remove inconsistencies in the vendor's name.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
78277ec162 ar71xx: fix TL-MR3220-v2 switch port order
Fix the switch port order for proper display on high
level interfaces.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
341311f319 ar71xx: fix TL-WR741ND-v4 switch port order
Fix the switch port order for proper display on high
level interfaces.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
ff541c5ca2 ath79: rename TL-WR740ND-v4 to TL-WR740N-v4
Give the device the same name it had in ar71xx.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:14 +01:00
Paul Wassi
da1107f8a5 ath79: fix TL-WR741ND-v4 switch port order
Fix the switch port order for proper display on high
level interfaces.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-02-14 16:56:13 +01:00
Koen Vandeputte
6b6f238b82 kernel: bump 4.19 to 4.19.21
Refreshed all patches.

Remove upstreamed:
- 0007-ARM-dts-Fix-up-the-D-Link-DIR-685-MTD-partition-info.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-14 16:45:01 +01:00
Koen Vandeputte
9a1d7ff187 kernel: bump 4.14 to 4.14.99
Refreshed all patches.

Remove upstreamed:
- 950-0434-mmc-bcm2835-Recover-from-MMC_SEND_EXT_CSD.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-14 16:45:01 +01:00
Koen Vandeputte
a23a13dec2 kernel: bump 4.9 to 4.9.156
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-14 16:45:01 +01:00
Hans Dedecker
880f8e6d32 dnsmasq: add rapid commit config option
Add config option rapidcommit to enable support for DHCPv4 rapid
commit (RFC4039)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-13 10:37:36 +01:00
Eneas U de Queiroz
29b69e840a openssl: add package for openssl.cnf, misc changes
- Add the /etc/ssl/openssl.cnf as a separate package, to avoid breaking
  the transitional mechanism, allowing libopenssl_1.0* and
  libopenssl_1.1* to coexist.

- Remove the (selecting) dependency on @KERNEL_AIO

- Use global SOURCE_DATE_EPOCH

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-02-12 22:24:09 +01:00
Eneas U de Queiroz
2eeb2853ed openssl: optimizations based on ARCH/small flash
Add a patch to enable the option to change the default ciphersuite list
ordering to prefer ChaCha20 over AES-GCM.  This is used by default for
all platforms, except for x86_64 and aarch64. The assumption is that
only the latter have AES-specific CPU instructions and asm code that
uses them in openssl.  Chacha20Poly1305 is 3x faster than AES-256 in
systems without AES instructions, with an equivalent strength.

Disable error messages by default except for devices with small flash or
RAM, to aid debugging.

Disable ASM by default on arm platform with small flash.  Size
difference on mips and powerpc, the other platforms with small flash
devices, are not really relevant (using 100K as a threshold).  All of
the affected platforms are source-only anyway.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-02-12 22:24:09 +01:00
Eneas U de Queiroz
d872d00b2f openssl: update to version 1.1.1a
This version adds the following functionality:
  * TLS 1.3
  * AFALG engine support for hardware accelleration
  * x25519 ECC curve support
  * CRIME protection: disable use of compression by default
  * Support for ChaCha20 and Poly1305

Patches fixing bugs in the /dev/crypto engine were applied, from
https://github.com/openssl/openssl/pull/7585

This increses the size of the ipk binray on MIPS32 by about 32%:
old:
693.941 bin/packages/mips_24kc/base/libopenssl1.0.0_1.0.2q-2_mips_24kc.ipk
193.827 bin/packages/mips_24kc/base/openssl-util_1.0.2q-2_mips_24kc.ipk

new:
912.493 bin/packages/mips_24kc/base/libopenssl1.1_1.1.1a-2_mips_24kc.ipk
239.316 bin/packages/mips_24kc/base/openssl-util_1.1.1a-2_mips_24kc.ipk

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-02-12 22:23:26 +01:00
Eneas U de Queiroz
be3892284c openssl: add configuration options, disable ssl3
Adds the following configuration options:
* using optimized assembler code (was always on before)
* use of x86 SSE2 instructions
* dyanic engine support
* include error messages
* Camellia, Gost, Idea, MDC2, Seed & Whirlpool algorithms
* RFC3779, CMS protocols
* VIA padlock hardware acceleration engine

Installs openssl.cnf with the library as it is used by engines
independent of the openssl util.

Fixes DTLS option that was innefective before.

Disables insecure SSL3 protocol and SHA0.

Adds openwrt-specific targets to Configure script, including asm support
for i386, ppc and mips64.

Strips building dirs from CFLAGS shown in binary.

Skips the fuzz directory during build.

Removed include/crypto/devcrypto.h that was included here, to use the
cryptodev-linux package, now that it was been moved from the packages
feed to the main openwrt repository.

This decreses the size of the ipk binray on MIPS32 by about 3.3%:
old:
706.957 bin/packages/mips_24kc/base/libopenssl1.0.0_1.0.2q-2_mips_24kc.ipk
199.294 bin/packages/mips_24kc/base/openssl-util_1.0.2q-2_mips_24kc.ipk

new:
693.941 bin/packages/mips_24kc/base/libopenssl1.0.0_1.0.2q-2_mips_24kc.ipk
193.827 bin/packages/mips_24kc/base/openssl-util_1.0.2q-2_mips_24kc.ipk

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2019-02-12 21:14:46 +01:00
Felix Fietkau
b044b52ab9 base-files: fix ucert verification
ucert needs to check the firmware part with metadata, but without the signature.
Use the new fwtool mode to extract that without altering the firmware image inside
the check

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-12 16:42:03 +01:00
Felix Fietkau
8f4e31ea6e fwtool: add support for extracting the truncated data part to stdout
This allows extracing the firmware + metadata from a signed firmware without
altering the original image file

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-12 16:41:38 +01:00
Felix Fietkau
d5681e45f0 fwtool: do not strip metadata if extracting signature
This allows the signature to cover the metadata area

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-12 16:41:38 +01:00
Felix Fietkau
db93949aa3 hostapd: fix race condition in mesh new peer handling
Avoid trying to add the same station to the driver multiple times

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-12 15:12:35 +01:00
Felix Fietkau
6a15077e2d hostapd: send wpa_supplicant logging output to syslog
Helpful for debugging network connectivity issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-12 15:12:35 +01:00
Rafał Miłecki
9485ea721e mac80211: brcmfmac: backport early changes queued for the Linux 5.1
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-02-12 14:18:18 +01:00
Rafał Miłecki
0994e65c6a mac80211: brcmfmac: backport remaining patches from the Linux 5.0
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-02-12 13:50:40 +01:00
Tony Ambardar
248797834b iproute2: tc: reduce size of dynamic symbol table
In the case of SHARED_LIBS=y, don't use -export-dynamic to place *all*
symbols into the dynamic symbol table. Instead, use --dynamic-list to
export a smaller set of symbols similar to that defined in static-syms.h
in the case of SHARED_LIBS=n, avoiding an 11 KB tc package size increase.

Also increment PKG_RELEASE.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
fc80ef3613 iproute2: tc: enable and fix support for using .so plugins
This enables using the tc module m_xt.so, which uses the act_ipt kernel
module to allow tc actions based on iptables targets. e.g.

   tc filter add dev eth0 parent 1: prio 10 protocol ip \
   u32 match u32 0 0 action xt -j DSCP --set-dscp-class BE

Make the SHARED_LIBS parameter configurable and based on tc package
selection.

Fix a problem using the tc m_xt.so plugin as also described in
https://bugs.debian.org/868059:

  Sync include/xtables.h from iptables to make sure the right offset is
  used when accessing structure members defined in libxtables. One could
  get “Extension does not know id …” otherwise. (See also: #868059)

Patch to sync the included xtables.h with system iptables 1.6.x. This
continues to work with iptables 1.8.2.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
26681fa6a6 iproute2: simplify linking libelf for eBFP/XDP object file support
Simplify build and runtime dependencies on libelf, which allows tc and ip
to load BPF and XDP object files respectively.

Preserve optionality of libelf by having configuration script follow the
HAVE_ELF environment variable, used similarly to the HAVE_MNL variable.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
e6d84fa886 iproute2: use tc package variant to limit other package sizes
Replace the old 'tc' with a singleton package variant which will be used
to enable additional functionality and limit it only to tc. Non-variant
packages will only be installed during 'tiny' variant builds, hence will
be configured without extra features, thus preserving previously limited
functionality and reduced package sizes.

Also set ip-tiny as the default variant, and install 'tiny' versions of
development libraries.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
bc86da377c iproute2: simplify Makefile, patches and fix feature detection
Compile-based feature detection (e.g. xtables, ipset support) was broken
due to silent compilation errors in the configure script, caused by a
Makefile variable KERNEL_INCLUDE referring to kernel build headers. Use
userspace headers by setting the same "user_headers" kernel include path
as used for the iptables build.

Remove redundant or unused Build/Configure definitions from package
Makefile, including KERNEL_INCLUDE, LIBC_INCLUDE and DBM includes.

Don't pass LDFLAGS within MAKE_FLAGS as this interferes with LDFLAGS in
tc/Makefile and masks a link parameter ("-Wl,-export-dynamic"). Instead,
use standard TARGET_LDFLAGS.

Replace EXTRA_CCOPTS in MAKE_FLAGS with cleaner TARGET_CPPFLAGS, and also
drop now unneeded patch 150-extra-ccopts.patch.

Enable defining XT_LIB_DIR from Makefile, needed to set the iptables
modules directory to something other than /lib/xtables, and also add
libxtables dependency. Both are needed with working xtables detection.
Note that libxtables is also pulled in by iptables, firewall or luci, so
this change has no size impact in most cases.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
43e14a2f9e iproute2: fix broken configuration patch
Since v4.13, iproute2 switched to a config.mk file with greater use of
pkg-config for library/feature detection. Replace the old Config patch
with one modifying the configure script but enabling the same changes:
 - explicitly disable TC_CONFIG_ATM
 - rely on feature detection for IP_CONFIG_SETNS and TC_CONFIG_XT

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
d741b31eb8 base-files: enable BPF JIT sysctl by default
Set net.core.bpf_jit_enable=1 in /etc/sysctl.d/10-default.conf.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
a7370b5179 kernel: enable CONFIG_BPF_JIT by default
Enable the built-in BPF JIT compiler for all 4.9, 4.14 and 4.19 kernels,
which should speed up cBPF and eBPF-based packet filtering (tc, iptables)
and packet sniffing (libpcap, tcpdump, fwknopd, etc).

This has minimal kernel size impact, increasing the size of uImage-lzma
(normally ~2 MB on mips_24kc or mips64el_mips64) by 5 KB for the MIPS32
arch cBPF JIT and by 9 KB for the MIPS64 arch eBPF JIT, on kernel 4.14.

With JIT enabled (cBPF only), the standard BPF test module (test_bpf.ko)
running on a DIR-835 (mips_24kc) used 33 CPU seconds, but 68 without JIT.

This change aligns with the notion of OpenWRT as the network go-to swiss
army knife for packet handling, especially on CPU-constrained platforms.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
ebcd5226cc kernel/modules: add kmod-bpf-test package
Add the test_bpf module that runs various test vectors against the BPF
interpreter or BPF JIT compiler. The module must be manually loaded, as
with the kmod-crypto-test module which serves a similar purpose.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
6be23e91b6 kernel/modules: add kmod-sched-bpf package
Add cls_bpf and act_bpf modules for additional tc classifier and action
support of cBPF and eBPF.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
cd465e3414 kernel/modules: add kmod-sched-ipset package
Add em_ipset module to support tc filter classification by IP set. Build
as a standalone package to help avoid pulling in rest of kmod-sched and
isolate new dependency on kmod-ipt-ipset.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
59b58ad4c8 kernel/modules: kmod-sched: add some common, useful actions
Add act_pedit, act_csum, act_gact and act_simple modules for additional
tc action support. Module act_simple helps with debug and logging, similar
to iptables LOG target, while act_gact provides common generic actions.
Modules act_pedit and act_csum support general packet mangling, and have
been the subject of feature requests and forum discussions (e.g. DSCP),
as well as being added to the Turris OS fork of OpenWrt ~2 years ago.

Also select dependency kmod-lib-crc32c to support act_csum.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
Tony Ambardar
f54e9f183e kernel/modules: kmod-sched-core: add missing dependency, useful module
All tc ematch modules, including those in kmod-sched-core and kmod-sched,
use cls_basic as a core dependency. Relocate cls_basic from kmod-sched to
kmod-sched-core to avoid requiring kmod-sched unnecessarily.

This change is also backwards compatible since any past tc ematch users
will have had to install both kmod-sched-core and kmod-sched anyway.

Add the matchall kernel module cls_matchall introduced in kernel 4.8. The
matchall classifier matches every packet and allows the user to apply
actions on it. It is a simpler, more efficient replacement for the common
but cryptic tc classifier idiom "u32 match u32 0 0".

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2019-02-11 20:18:48 +00:00
David Bauer
0c24b363a6 ath79: add support for Xiaomi Mi Router 4Q
Hardware
--------
CPU:   Qualcomm Atheros QCA9561
RAM:   64M DDR2
FLASH: 16M SPI-NOR
ETH:   1x WAN - 2x LAN
WiFi:  QCA9561 3T3R
BTN:   1x Reset - 1x WPS
LED:   1x Blue - 1x Red - 1x Yellow
UART:  TX - GND - RX - VCC (From ethernet port)
       115200n8 - 3.3V

Installation
------------
1. Connect to the device via UART.

2. Interrupt the U-Boot on power-on by pressing enter when prompted.

3. Connect you computer to one of the routers LAN ports.
   Assign yourself the IP 192.168.31.10/24.
   Copy the OpenWRT initramfs image to a tftp server root directory.
   Rename the image to 'x4q.bin'.

4. Load the initramfs image to the router by executing following command
   in U-Boot. The image will boot afterwards.

   > tftpboot 0x81000000 x4q.bin; bootm

5. SCP the sysupgrade-image into '/tmp'.
   Remember to assign yourself an IP in 192.168.1.0/24 for this step!

6. Install OpenWRT permanently by executing

   > sysupgrade -n /tmp/<OpenWRT-sysupgrade-image>

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-02-11 19:04:06 +01:00
Linus Walleij
4130e24326 gemini: Fix kmod-led-trig-heartbeat typo
It's kmod-ledtrig-* not kmod-led-trig-*.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
[extended subject]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-11 19:02:42 +01:00
Sven Eckelmann
2b51d8591f mac80211: ath10k: support for management rate control
Issues a wmi command to firmware when multicast rate change is received with the
new BSS_CHANGED_MCAST_RATE flag.  Also fixes the incorrect fixed_rate setting
for CCK rates which got introduced with addition of ath10k_rates_rev2 enum.

By default the firmware uses 1Mbps and 6Mbps rate for management packets
in 2G and 5G bands respectively. But when the user selects different
basic rates from the userspace, we need to send the management
packets at the lowest basic rate selected by the user.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-11 19:02:42 +01:00
Sven Eckelmann
835fc08ae3 ath10k-ct: support for management rate control
By default the firmware uses 1Mbps and 6Mbps rate for management packets
in 2G and 5G bands respectively. But when the user selects different
basic rates from the userspace, we need to send the management
packets at the lowest basic rate selected by the user.

This change makes use of WMI_VDEV_PARAM_MGMT_RATE param for configuring the
management packets rate to the firmware.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-02-11 19:02:41 +01:00
Christian Lamparter
465044d0fd ath10k-firmware: update Candela Tech firmware images
Release notes since last time:

2019-02-08:
  Fix rate-ctrl assert related to bad logic that tried to guess
  that lower bandwidth probes were automatically successful if
  higher was. The NSS mismatch that can happen here caused the
  assert. Just comment out the offending code
  (per comment from original QCA code). This is bug 69.

2019-02-10:
  Fix bssid mis-alignment that broke 4-addr vlan mode (bug 67).
  Original buggy commit was
  commit 2bf89e70ecd1 ("dev-ds: Better packing of wal_vdev struct.")

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-11 19:02:41 +01:00
Christian Lamparter
0dc48905cb build: add KERNEL_ENTRY and sort DEFAULT_DEVICE_VARS
The KERNEL_ENTRY was missing from the DEFAULT_DEVICE_VARS.

This bug was discovered while preparing alternative images
for the mpc85xx's TP-Link WDR4900-V1, which all failed to
boot due to this:
|## Booting kernel from Legacy Image at 02000000 ...
|   Image Name:   POWERPC OpenWrt Linux-4.14.96
|   Image Type:   PowerPC Linux Kernel Image (uncompressed)
|   Data Size:    2056568 Bytes = 2 MiB
|   Load Address: 01000000
|   Entry Point:  00000000
|   Verifying Checksum ... OK

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-11 19:01:50 +01:00
Rafał Miłecki
83bcacb521 mac80211: brcmfmac: fix a possible NULL pointer dereference
This fixes a possible crash in the brcmf_fw_request_nvram_done():
[   31.687293] Backtrace:
[   31.689760] [<c004fb4c>] (__wake_up_common) from [<c004fc38>] (__wake_up_locked+0x1c/0x24)
[   31.698043]  r10:c6794000 r9:00000009 r8:00000001 r7:bf54dda0 r6:a0000013 r5:c78e7d38
[   31.705928]  r4:c78e7d3c r3:00000000
[   31.709528] [<c004fc1c>] (__wake_up_locked) from [<c00502a8>] (complete+0x3c/0x4c)
[   31.717148] [<c005026c>] (complete) from [<bf54590c>] (brcmf_fw_request_nvram_done+0x5c8/0x6a4 [brcmfmac])
[   31.726818]  r7:bf54dda0 r6:c6794000 r5:00001990 r4:c6782380
[   31.732544] [<bf545344>] (brcmf_fw_request_nvram_done [brcmfmac]) from [<c0204e40>] (request_firmware_work_func+0x38/0x60)
[   31.743607]  r10:00000008 r9:c6bdd700 r8:00000000 r7:c72c3cd8 r6:c67f4300 r5:c6bda300
[   31.751493]  r4:c67f4300
[   31.754046] [<c0204e08>] (request_firmware_work_func) from [<c0034458>] (process_one_work+0x1e0/0x318)
[   31.763365]  r4:c72c3cc0
[   31.765913] [<c0034278>] (process_one_work) from [<c0035234>] (worker_thread+0x2f4/0x448)
[   31.774107]  r10:00000008 r9:00000000 r8:c6bda314 r7:c72c3cd8 r6:c6bda300 r5:c6bda300
[   31.781993]  r4:c72c3cc0
[   31.784545] [<c0034f40>] (worker_thread) from [<c003984c>] (kthread+0x100/0x114)
[   31.791949]  r10:00000000 r9:00000000 r8:00000000 r7:c0034f40 r6:c72c3cc0 r5:00000000
[   31.799836]  r4:c735dc00 r3:c79ed540
[   31.803438] [<c003974c>] (kthread) from [<c00097d0>] (ret_from_fork+0x14/0x24)
[   31.810672]  r7:00000000 r6:00000000 r5:c003974c r4:c735dc00
[   31.816378] Code: e5b53004 e1a07001 e1a06002 e243000c (e5934000)
[   31.822487] ---[ end trace a0ffbb07a810d503 ]---

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-02-11 11:28:03 +01:00
Koen Vandeputte
8c9f255ce5 ar71xx: add rssileds for xw devices
Commit 7ebbbda293 ("ar71xx: ubnt-(xm,xw): fix LED RSSI indication")
adds support for using the RSSI strenght via LEDS.

The rssileds package addition got lost during altering the patch.
Add it again to fix this.

Fixes: 7ebbbda293 ("ar71xx: ubnt-(xm,xw): fix LED RSSI indication")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-11 09:24:11 +01:00
Daniel Engberg
93034bf7f0 tools/mpfr: Update to 4.0.2
Update mpfr to 4.0.2
Use official site as last resort
Force thread-safety functionality
Refresh patches

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-10 20:51:09 +01:00
Daniel Engberg
a3383e4b01 tools/bison: Update to 3.3.2
Update bison to 3.3.2
Enable pthreads support
Refresh patches

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-10 20:49:56 +01:00
Daniel Engberg
a3df068b31 tools/sed: Update to 4.7
Update sed to 4.7
Enable pthreads support

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-10 20:48:25 +01:00
Daniel Engberg
1d1dabdf0a tools/tar: Update to 1.31
Update tar to 1.31
Fixes CVE-2018-20482
Switch to tar.xz tarball
Refresh patches

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-02-10 20:47:58 +01:00
Hans Dedecker
e3311cb138 glibc: update to latest 2.27 commit [BZ #24180]
9f44fa22cb Add compiler barriers around modifications of the robust mutex list for pthread_mutex_trylock. [BZ #24180]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-09 21:07:16 +01:00
Hans Dedecker
630a363936 vti: remove setting default firewall zone to wan
Same reasoning as in bdedb798150a58ad7ce3c4741f2f31df97e84c3f; don't set
default firewall zone to wan as the firewall zone for the vti interface
can be configured in the firewall config or it makes it impossible not to
specify a firewall zone for the vti interface.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-09 21:04:36 +01:00
Hans Dedecker
7f33f3d712 ipip: remove setting default firewall zone to wan
Same reasoning as in bdedb798150a58ad7ce3c4741f2f31df97e84c3f; don't set
default firewall zone to wan as the firewall zone for the ipip interface
can be configured in the firewall config or it makes it impossible not to
specify a firewall zone for the ipip interface.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-09 21:04:08 +01:00
Felix Fietkau
945bcaf6ec kernel: fold xt_FLOWOFFLOAD fixes into the main patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-09 14:37:30 +01:00
HsiuWen Yen
33b690216e netfilter: fix checking method of conntrack helper
This patch uses nfct_help() to detect whether an established connection
needs conntrack helper instead of using test_bit(IPS_HELPER_BIT,
&ct->status).

The reason for this modification is that IPS_HELPER_BIT is only set when
the conntrack helper is attached by explicit CT target.

However, in the case that a device enables conntrack helper via the other
ways (e.g., command "echo 1 > /proc/sys/net/netfilter/nf_conntrack_helper")
, the status of IPS_HELPER_BIT will not present any change. That means the
IPS_HELPER_BIT might lose the checking ability in the context.

Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
2019-02-09 14:37:26 +01:00
Felix Fietkau
61e01f248e base-files: do not strip fwtool signature data during check
Same reason as in commit 9808bd2799 -
sysupgrade --test must not alter the image in any way

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-09 14:34:24 +01:00
Lech Perczak
7ebbbda293 ar71xx: ubnt-(xm,xw): fix LED RSSI indication
When mapping for RSSI LEDs was defined for interface wlan0 on
Ubiquiti XM and XW family, it missed connection to actual interface.
Therefore create the mapping to interface, so RSSI LEDs work without
additional configuration, after starting rssileds service.

Also add the required package for this.

While at that, remove coefficients needed for PWM LEDs, as XM and XW
boards do not support PWM LEDs.

Tested-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
[Squashed commits + remove custom device_packages + slighty rewrite the commit msg]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Julien Rabier
6570f3c93a ar71xx: fix RB941-2nD detection
Some hAP lite routers aren't detected because
/proc/cpuinfo shows "RouterBOARD RB941-2nD"
instead of "RouterBOARD 941-2nD".

Fix that.

Signed-off-by: Julien Rabier <taziden@flexiden.org>
[Alter string to include all flavours + slight rewrite of commit msg]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Edoardo Scaglia
077253dd66 ar71xx: fix Arduino Yun enabling of level shifters outputs
As show in Arduino Yun schematic [1] GPIO 21 and 22 are connected to
output enable pin (OE) of two NTB01xx level shifters.

NTB01xx datasheets [2] [3] states that OE pin are active-high
therefore we should initialize GPIO 21 (DS_GPIO_OE) and GPIO 22
(DS_GPIO_OE2) accordingly to actually enable level shifters outputs.

[1] https://www.arduino.cc/en/uploads/Main/arduino-Yun-schematic.pdf
[2] https://www.nxp.com/docs/en/data-sheet/NTB0102.pdf
[3] https://www.nxp.com/docs/en/data-sheet/NTB0104.pdf

Signed-off-by: Edoardo Scaglia <edoardo.87@gmail.com>
2019-02-08 17:27:47 +01:00
Petr Štetiar
07e6ce4606 kernel: add missing symbols to 4.19
While preparing 4.19 for imx6 and test building it with
CONFIG_ALL_KMODS=y with verbose mode enabled, I was asked by kernel
config about few missing symbols/modules

Let's add them to the generic config.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
[slight rewrite of commit log]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Koen Vandeputte
9a3599de2c kernel: bump 4.19 to 4.19.20
Refreshed all patches.

Remove upstreamed:
- 100-arm-cns3xxx-fix-writing-to-wrong-PCI-registers-after.patch

Altered patches:
- 721-phy_packets.patch

Compile-tested on: imx6
Runtime-tested on: imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Koen Vandeputte
89bf16ad50 kernel: bump 4.14 to 4.14.98
Refreshed all patches.

Remove upstreamed:
- 100-arm-cns3xxx-fix-writing-to-wrong-PCI-registers-after.patch

Altered patches:
- 721-phy_packets.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Koen Vandeputte
34e80b5d3b kernel: bump 4.9 to 4.9.155
Refreshed all patches.

Remove upstreamed:
- 100-arm-cns3xxx-fix-writing-to-wrong-PCI-registers-after.patch

Altered patches:
- 721-phy_packets.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Koen Vandeputte
4c20c6fa94 kernel: bump 3.18 to 3.18.134
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-08 17:27:47 +01:00
Daniel Golle
f9850e9d2c mac80211: rt2x00: remove patch causing low tx power
Remove 980-rt2x00-reduce-power-consumption-on-mt7620.patch which in
combination with the most recently added patch reportedly causes TX
power to be too weak.

"without patches rssi on receiver is ~ -23dBm with 980 about -35dBm,
with both patches drops below -40dBm. with 987 only ~-28dBm"

We may need to reconsider this once we have implemented TSSI.

Fixes: cdb58b2bfe ("mac80211: rt2x00: reduce tx power to nominal level on RT6352")
Reported-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-08 13:13:39 +01:00
Deng Qingfang
39273b849f curl: bump to 7.64.0
Fixed CVEs:

CVE-2018-16890
CVE-2019-3822
CVE-2019-3823

For other changes in version 7.64.0 see https://curl.haxx.se/changes.html#7_64_0

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-02-08 08:37:24 +01:00
Daniel Golle
cdb58b2bfe mac80211: rt2x00: reduce tx power to nominal level on RT6352
Current implementation of RT6352 support provides too high tx power
at least on iPA/eLNA devices. Reduce amplification of variable gain
amplifier by 6dB to match board target power of 17dBm.
Transmited signal strength with this patch is similar to that of
stock firmware or pandorabox firmware. Throughput measured with iperf
improves. Device tested: Xiaomi Miwifi Mini.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-02-08 00:08:58 +01:00
Florian Eckert
bdedb79815 gre: remove setting default firewall zone to wan
There are two problems with this behaviour that the zone is set to wan
if no zone config option is defined in the interface section.

* The zone for the interface is "normally" specified in the firewall
config file. So if we have defined "no" zone for this interface zone
option is set now to "wan" additonaly if we add the interface in the firewall
config section to the "lan" zone, the interface is added to lan and wan at once.

iptables-save | grep <iface>

This is not what I expect.

* If I do not want to set a zone to this interface it is not possible.

Remove the default assigment to wan if no zone option is defined.
If some one need the option it stil possible to define this option.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2019-02-07 21:58:07 +01:00
Petr Štetiar
5fd68d60e4 ath79: ag71xx: Fix tx queue timeouts during ifup
On ath79 and UBNT Bullet M XW (ar9342) I was experiencing weird issues during
network setup[1] which I was able to reproduce easily with following commands:

 uci set network.lan.ipaddr='192.168.1.20'
 uci commit network
 ifup lan

Which resulted after some time in:

 ...
 WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:461 dev_watchdog+0x16c/0x280
 NETDEV WATCHDOG: eth0 (ag71xx): transmit queue 0 timed out
 ...

Sometimes I wasn't able to use networking anymore, sometimes it was enough to
just ifdown/ifup lan and network was backup. On ar71xx it was all working just
fine.

I've found out, that it was happening because ag71xx_poll() wasn't called, thus
the TX queue wasn't emptied. The ag71xx_poll() is being called from napi
hrtimer, which is enabled by napi_schedule() in ar71xx_interrupt(), but since
no interrupts were ever fired again after ag71xx_stop() was called, it was
always leading to tx queue timeouts:

 *** ag71xx_hard_start_xmit()
 eth0: packet injected into TX queue
 eth0: raw intr=00000001 TXPS POLL
 eth0: enable polling mode
 eth0: processing TX ring, flush=no
 eth0: disable polling mode, rx=1, tx=1,limit=32

 ( `ifup lan done here` )

 *** ag71xx_stop()
 *** ag71xx_open()
 *** ag71xx_hw_enable()
 IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
 IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
 *** ag71xx_hard_start_xmit()
 eth0: packet injected into TX queue
 *** ag71xx_hard_start_xmit()
 eth0: packet injected into TX queue
 ...
 WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:320 dev_watchdog+0x164/0x274

So I've looked at ag71xx_stop() in ar71xx, added the missing bits to ath79 and
fixed this issue.

1. https://github.com/openwrt/openwrt/pull/1635#issuecomment-448638246

Signed-off-by: Petr Štetiar <ynezz@true.cz>
[move ag->link before ag71xx_hw_disable to retain ordering as original]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-07 14:19:46 +01:00
Koen Vandeputte
ab18540d11 kernel: rename symbol in kernel 4.19 config
A symbol was renamed upstream starting from kernel 4.18 [1]

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.0-rc5&id=34b13e5e4641c0e9e0aad471a6d8dfb7999276f1
2019-02-07 13:06:23 +01:00
Hauke Mehrtens
f34eeeeb9a nat46: Fix mirror hash
The package hash does not match the one of the package found on the
mirrors and which is generated when I do the git clone.

Fixes: 4856fa30a6 ("nat46: import for routing, add myself as maintainer")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-02-07 11:15:11 +01:00
Stijn Tintel
26fcc937f7 brcm2708: fix early bootloader config restore
Restoring the bootloader config before rebooting fails:
tar: invalid tar magic

Add the -z option to the tar command to fix this.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-06 07:39:39 +02:00
Stijn Tintel
c30f7f402f brcm2708: drop 4.9 support
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-02-06 07:39:39 +02:00
Oldřich Jedlička
12310f05b7 ath79: add support for TP-LINK Archer C7 v4
TP-Link Archer C7 v4 is a dual-band AC1750 router, based on the
Qualcomm/Atheros QCA9561 SoC + QCA9880.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 3T3R 5 GHz
- 5x 10/100/1000 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction:
1. Upload openwrt-ath79-generic-tplink_archer-c7-v4-squashfs-factory.bin
   via Web interface

Flash instruction using TFTP recovery:
1. Set PC to fixed ip address 192.168.0.66
2. Download openwrt-ath79-generic-tplink_archer-c7-v4-squashfs-factory.bin
   and rename it to ArcherC7v4_tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
   the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
2019-02-05 19:37:31 +01:00
Petr Štetiar
bb23cb1bf2 build: Fix missing device variables for artifacts
It was reported to me today on IRC, that building of artifacts doesn't
work properly if the concat_cmd references DEVICE_NAME variable. I've
found out, that it's due to missing call of Device/Export in artifacts
building code path, so this patch adds the missing Device/Export call
which in turn exports DEFAULT_DEVICE_VARS into the artifacts
environment.

Fixes: 493c9a3551 ("build: Introduce building of artifacts")
Tested-by: Oskari Lemmela <oskari@lemmela.net>
Reported-by: Oskari Lemmela <oskari@lemmela.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-02-05 19:37:30 +01:00
Chuanhong Guo
be2b61e4f1 ramips: drop m25p,chunked-io from dts
This option was a spi nor hack which is dropped in commit
bcf4a5f474 ("ramips: remove chunked-io patch and set spi->max_transfer_size instead")

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [edit message]
2019-02-05 19:37:30 +01:00
Deng Qingfang
6621da55b7 ramips: enable MT7610E 5GHz radio of MT7620a_MT7610e EVB
This enables MT7610E of the EVB

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-02-05 19:37:30 +01:00
Ju Se Hoon
9f90074db7 ramips: add kmod-mt76x2 to WeVo 11AC NAS
The WeVo 11AC NAS has a MT7612E 802.11ac chip on the PCB.

Signed-off-by: Ju Se Hoon <joosahoon@gmail.com>
[renamed author from Albis-dev to real name, editted commit message]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-05 19:37:30 +01:00
Christian Lamparter
917e6d772c toolchain/musl: update to version 1.1.21
<https://www.openwall.com/lists/musl/2019/01/21/8>
"This release makes improvements with respect to default thread stack
size, including increasing the default from 80k to 128k, increasing
the default guard size from 4k to 8k, and allowing the default to be
increased via ELF headers so that programs that need larger stacks can
be build without source-level changes, using just LDFLAGS.
Insufficient stack size for AIO threads on kernels that don't honor
the constant MINSIGSTKSZ is also fixed.

The glob core has been rewritten to fix inability to see past
searchable-but-unreadable path components, and to avoid excessive
stack usage and unnecessary syscalls. The tsearch AVL tree
implementation has also been rewritten for better size and
performance. The math library adds more native single-instruction
implementations for arm, s390x, powerpc, and x86_64.

Various bugs are fixed, including several possible deadlocks, one of
which was a new regression in 1.1.20."

detailed release notes can be found in the WHATSNEW file:
<http://git.musl-libc.org/cgit/musl/tree/WHATSNEW#n1989>

Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-05 19:35:40 +01:00
Petr Štetiar
dd3ec40d3d ramips: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-02-05 16:28:12 +01:00
Petr Štetiar
e8eaf794ec ramips: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-02-05 16:28:12 +01:00
Christian Lamparter
d753a3ef0e ipq40xx: fix ASUS RT-AC58U switch port numbering
This patch fixes the ASUS' RT-AC58U port order by
unifying the configuration with the NBG6617.

Reported-by: Roberto Socrates (rtac58u-user on the forum)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-05 16:28:12 +01:00
Christian Lamparter
775258c128 ipq40xx: consolidate 02_network board defaults
This patch splits the big board case switch in 02_network in
two functions ipq40xx_setup_interfaces() and ipq40xx_setup_macs()
just like ath79 and ramips do.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-02-05 16:28:12 +01:00
Petr Štetiar
65f9e52526 brcm63xx: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-02-05 16:28:12 +01:00
Petr Štetiar
4b66f55bb1 brcm63xx: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-02-05 16:28:12 +01:00
Hans Dedecker
420376ab50 glibc: update to latest 2.27 commit (BZ #24155,BZ #24097)
2ebadb6451 x86-64 memcmp: Use unsigned Jcc instructions on size [BZ #24155]
3a5ae8db68 x86-64 strnlen/wcsnlen: Properly handle the length parameter [BZ #24097]
2c016ffa24 x86-64 strncpy: Properly handle the length parameter [BZ #24097]
d8457edece x86-64 strncmp family: Properly handle the length parameter [BZ #24097]
55f8812858 x86-64 memset/wmemset: Properly handle the length parameter [BZ #24097]
efc3714845 x86-64 memrchr: Properly handle the length parameter [BZ #24097]
a4690969ed x86-64 memcpy: Properly handle the length parameter [BZ #24097]
6465327195 x86-64 memcmp/wmemcmp: Properly handle the length parameter [BZ #24097]
50117e00a1 x86-64 memchr/wmemchr: Properly handle the length parameter [BZ #24097]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-04 22:43:19 +01:00
Koen Vandeputte
5a8d03ceeb ath10k-firmware: update Candela Tech firmware images
*  Jan 2, 2019
Rebase patches to make 9980 bisectable.

*  Jan 2, 2019
Fix scheduling related assert when wal-peer is deleted with pending
tx buffers (bug 54, and others)

*  Jan 7, 2019:
Fix specifying retransmits for AMPDU frames.  It was previously ignored
since it is a 'software' retransmit instead of a hardware retransmit.

*  Jan 9, 2019
Fix potential way to get zero rates selected (and then assert)

*  Jan 18, 2019
pfsched has specific work-around to just return if we find invalid flags AND
if we are in an out-of-order situation.  Maybe this is last of the pfsched
related issues (bug 54 and similar).

*  Jan 24, 2019
The rcSibUpdate method can be called concurrently with IRQ tx-completion callback,
and that could potentially allow the tx-completion callback to see invalid state
and assert or otherwise mess up the rate-ctrl logic.  So, disable IRQs in
rcSibUpdate to prevent this.  Related to bug 58.

*  Jan 28, 2019
Ensure that cached config is applied to ratectrl objects when fetched from
the cache.  This should fix part of bug 58.

*  Jan 28, 2019
Ensure that ratectrl objects from cachemgr are always initialized.  This fixes
another part of bug 58.

*  Jan 30, 2019
Better use of temporary rate-ctrl object.  Make sure it is initialized, simplify
code path.  This finishes up porting forward similar changes I made for wave-1
firmware long ago, and fixes another potential way to hit bug-58 issues.

*  Jan 30, 2019
Cachemgr did not have a callback for when memory was logically freed.  This means
that peers could keep stale references to rate-ctrl objects that were in process
of being DMA'd into to load a different peer's rate-ctrl state.  This was causing
the bugcheck logic to fail early and often, and I suspect it might be a root cause
of bug 58 as well.  The fix is to add a callback and set any 'deleted' memory references
to NULL so that we cannot access it accidentally.  Thanks to excellent logs and patience
from the bug-58 reporter!

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-04 12:09:35 +01:00
Hans Dedecker
b88907e62a toolchain/gcc: backport FORTIFY patch to 5.5.0
Commit e61061a088 added support for hardening
options  in the toolchain. However this breaks the gcc5.5.0 compilation in
case FORTIFY_SOURCE is set different from FORTIFY_SOURCE_NONE as reported
in [1].
Fix this by backporting the upstream patch which fixes this in later gcc versions

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?format=multiple&id=61164

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-02-04 09:35:11 +01:00
Felix Fietkau
646d28f996 mt76: update to the latest version
a9d4c0e mt76: mt76x2: avoid running DPD calibration if tx is blocked
4d7e13f mt76: explicitly disable energy detect cca during scan
e3c1aad mt76: run MAC work every 100ms
4e8766a mt76: clear CCA timer stats in mt76x02_edcca_init
e301f23 mt76: measure the time between mt76x02_edcca_check runs
74075ef mt76: increase ED/CCA tx block threshold

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-02-03 20:45:56 +01:00
Petr Štetiar
3b40121530 kernel: Fix drm dependency on drm_panel_orientation_quirks.ko for 4.19
Package kmod-drm is missing dependencies for the following libraries:

 drm_panel_orientation_quirks.ko

It seems, that since Linux 4.15-rc2 drm depends on drm_panel_orientation_quirks.ko

 commit 8d70f395e6cbece665b12b4bf6dbc48d12623014
 Author: Hans de Goede <j.w.r.degoede@gmail.com>
 Date:   Sat Nov 25 20:35:49 2017 +0100

    drm: Add support for a panel-orientation connector property, v6

    On some devices the LCD panel is mounted in the casing in such a way that
    the up/top side of the panel does not match with the top side of the
    device (e.g. it is mounted upside-down).

    This commit adds the necessary infra for lcd-panel drm_connector-s to
    have a "panel orientation" property to communicate how the panel is
    orientated vs the casing.

    Userspace can use this property to check for non-normal orientation and
    then adjust the displayed image accordingly by rotating it to compensate.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-02-01 17:35:34 +01:00
Koen Vandeputte
3da230a2e6 kernel: bump 4.19 to 4.19.19
Refreshed all patches.

Remove upstreamed patch:
- 800-v5.0-usb-leds-fix-regression-in-usbport-led-trigger.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-01 11:41:00 +01:00
Koen Vandeputte
206bebcad4 kernel: bump 4.14 to 4.14.97
Refreshed all patches.

Adapted patches:
- 012-kbuild-add-macro-for-controlling-warnings-to-linux-c.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-01 11:41:00 +01:00
Koen Vandeputte
604eb94550 kernel: bump 4.9 to 4.9.154
Refreshed all patches.

Adapted patches:
- 012-kbuild-add-macro-for-controlling-warnings-to-linux-c.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-02-01 11:41:00 +01:00
Rafał Miłecki
9687cc8556 bcm53xx: add first DTS changes queued for the Linux 5.1
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-02-01 07:09:27 +01:00
Anton Arapov
ae0a40d68d ramips: rb750gr3: License DTS as GPL-2.0-or-later OR MIT
Adding license in order to fully satisfy dts checklist:
- https://openwrt.org/submitting-patches#dts_checklist

Signed-off-by: Anton Arapov <arapov@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: Thibaut <hacks@slashdirt.org>
Acked-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Acked-by: Chuanhong Guo <gch981213@gmail.com>
Acked-by: Andrew Yong <me@ndoo.sg>
Acked-by: Alex Maclean <monkeh@monkeh.net>
2019-02-01 06:35:13 +01:00
Felix Fietkau
efa6b8b6b6 mt76: update to the latest version
a4ec45c mt7603: fix LED support (copy CFLAGS from main Makefile)
edda5c5 mt76x02: use mask for vifs
dd52191 mt76x02: use commmon add interface for mt76x2u
a80acaf mt76x02: initialize mutli bss mode when set up address
38e832d mt76x02: minor beaconing init changes
171adaf mt76x02: init beacon config for mt76x2u
dcab682 mt76: beaconing fixes for USB
ff81de1 mt76x02: enable support for IBSS and MESH
8027b5d mt7603: remove copyright headers
e747e80 mt76: fix software encryption issues
2afa0d7 mt7603: remove WCID override for software encrypted frames

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-31 23:22:16 +01:00
Hans Dedecker
8399ee4543 netifd: handle hotplug event socket errors
5cd7215 system-linux: handle hotplug event socket ENOBUFS errors

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-31 22:14:55 +01:00
Sven Roederer
6e575fa9d6 openssl: update list of mirrors
Host "gd.tuwien.ac.at" does not exists anymore, so we replace it by "ftp.pca.dfn.de" from the official list of mirrors.

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2019-01-31 21:21:49 +01:00
Andre Heider
4b403821c6 uboot-omap: add 'rootwait' to the kernel cmdline
Some SD cards take a while to get detected, fix booting of those.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2019-01-31 14:07:00 +01:00
Andre Heider
d5829f4183 omap: fix build without ext4 rootfs
Same fix as 7b76219e, just for omap.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2019-01-31 14:06:43 +01:00
Jo-Philipp Wich
ece5cab743 scripts: ipkg-make-index.sh: dereference symbolic links
Use `stat -L` instead of `ls -l` to follow symbolic links when obtaining
the file size of .ipk archives.

Without this change, the size of the symlink, not the size of the target
file is encoded in the package index file.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-31 12:35:29 +01:00
Kevin Darbyshire-Bryant
352db3e62a dnsmasq: latest pre-2.81 patches
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-01-31 10:13:05 +00:00
Jo-Philipp Wich
40bb2ae211 opkg: update to latest Git head
d4ba162 libopkg: only perform size check when information is available

Fixes: e079591b84 ("opkg: update to latest Git head")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-31 10:23:20 +01:00
Jo-Philipp Wich
e079591b84 opkg: update to latest Git head
cb66403 libopkg: check for file size mismatches

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-31 08:52:51 +01:00
Felix Fietkau
f665fb058f mt76: update to the latest version
c3da1aa mt7603: trigger beacon stuck detection faster
7a53138 mt7603: trigger watchdog reset if flushing CAB queue fails
6eef33b mt7603: remove mt7603_txq_init
ae30c30 mt76: add driver callback for when a sta is associated
0db925f mt7603: update HT/VHT capabilities after assoc
b5ac8e4 mt7603: initialize LED callbacks only if CONFIG_MT76_LEDS is set
c989bac mt76x0: eeprom: fix chan_vs_power map in mt76x0_get_power_info
24bd2c0 mt76x0: phy: report target_power in debugfs
bc7ce2a mt76x0: init: introduce mt76x0_init_txpower routine

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-30 15:17:23 +01:00
Mirko Parthey
555ca422d1 ramips: fix D-Link DIR-615 H1 switch port mapping
Reuse a device-specific switch port mapping which also applies to the
D-Link DIR-615 H1.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2019-01-30 13:31:43 +01:00
Günther Kelleter
c3389ab135 base-files: config_get: prevent filename globbing
When config_get is called as "config_get section option" the option
is unexpectedly globbed by the shell which differs from the way options
are read to a variable with "config_get variable section option".
Add another layer of double quotes to fix it.

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
2019-01-30 13:20:14 +01:00
Michal Hrusecky
37e91861cc build: Use LINUX_DIR for Kernel/Patch
Use LINUX_DIR as a path when patching kernel. Doesn't break the current usage,
but allows to create packages that will contain variation of a kernel with
kernel being build in some subdirectory of PKG_BUILD_DIR.

Signed-off-by: Michal Hrusecky <michal.hrusecky@nic.cz>
2019-01-30 13:20:14 +01:00
Jo-Philipp Wich
19850b639e ar71xx: fix packed-not-aligned error with GCC 8.
Building ar71xx currently fails with:

    In file included from ./include/linux/ipv6.h:5,
                     from ./include/net/ipv6.h:16,
                     from ./include/net/inetpeer.h:16,
                     from ./include/net/ip_fib.h:24,
                     from ./include/net/switchdev.h:17,
                     from ./include/net/dsa.h:23,
                     from arch/mips/ath79/dev-dsa.h:15,
                     from arch/mips/ath79/dev-dsa.c:17:
    ./include/uapi/linux/ipv6.h:107:1: error: alignment 1 of 'struct ipv6_destopt_hao' is less than 2 [-Werror=packed-not-aligned]
     } __attribute__((packed));

Address this issue by correcting the alignment of the struct packing
pragma accordingly.

Fixes: FS#1805
Reported-by: Pascal Ernster <git@hardfalcon.net>
[reword subject, rewrap commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-30 12:49:36 +01:00
Thorsten Glaser
da5bee5345 build: fix umask detection bashism
the leading 0 is optional and not emitted by some shells

Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
2019-01-30 12:39:18 +01:00
Jeffery To
a117093679 build: fix STAGING_DIR cleaning for packages
This fixes two issues with cleaning package files from STAGING_DIR:

* CleanStaging currently can only remove files and not directories. This
  changes CleanStaging to use clean-package.sh, which does remove
  directories.

* Because of the way directories are ordered in the staging files list,
  clean-package.sh currently tries (and fails) to remove parent
  directories before removing subdirectories. This changes
  clean-package.sh to process the staging files list in reverse, so that
  subdirectories are removed first.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-01-30 12:32:07 +01:00
Val Kulkov
ed514e7f9e busybox: keep syslog.conf during sysupgrade
If a user finds that logd is too barebone for their needs and wishes
to have more control over syslog, the user presently has an option
to enable CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOG and configure syslog
with settings in /etc/syslog.conf.

Presently /etc/syslog.conf silently disappears on sysupgrade. This
patch prevents such unwanted behaviour if busybox syslog is enabled
via CONFIG_BUSYBOX_CONFIG_FEATURE_SYSLOG.

Signed-off-by: Val Kulkov <val.kulkov@gmail.com>
2019-01-30 12:30:03 +01:00
David Santamaría Rogado
4bcf581352 ar71xx: use correct wan mac address for the TP-Link Archer C7 v4
The correct MAC address for this device is lan_mac +1, there is no
need to set lan_mac so use base_mac variable instead lan_mac.

Based on this PR for ath79:
https://github.com/openwrt/openwrt/pull/1726

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
[fix alphabetical ordering, reword subject]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-30 12:24:07 +01:00
Sven Roederer
989060478a openssl: bump to 1.0.2q
This fixes the following security problems:
 * CVE-2018-5407: Microarchitecture timing vulnerability in ECC scalar multiplication
 * CVE-2018-0734: Timing vulnerability in DSA signature generation
 * Resolve a compatibility issue in EC_GROUP handling with the FIPS Object Module

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
2019-01-30 11:59:46 +01:00
Jo-Philipp Wich
c6aa9ff388 uhttpd: disable concurrent requests by default
In order to avoid straining CPU and memory resources on lower end devices,
avoid running multiple CGI requests in parallel.

Ref: https://forum.openwrt.org/t/high-load-fix-on-openwrt-luci/29006
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-30 10:12:00 +01:00
Hans Dedecker
a3ccac6b1d iproute2: drop libbsd dependency
As the usage of libbsd is no longer limited to glibc, prevent libbsd
being picked up by removing the dependency on libbsd.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-29 14:00:13 +01:00
Felix Fietkau
4443804b54 wpa_supplicant: fix calling channel switch via wpa_cli on mesh interfaces
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-29 11:27:13 +01:00
Felix Fietkau
ae6b5815cd hostapd: add support for passing CSA events from sta/mesh to AP interfaces
Fixes handling CSA when using AP+STA or AP+Mesh

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-29 11:27:06 +01:00
Felix Fietkau
01895c315f ramips: move wifi related interrupts off the main core on SMP systems
Improves LAN<->WLAN bridging/routing performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-29 11:27:02 +01:00
Felix Fietkau
e1496d631e mac80211: fix an issue with allocated tailroom for encrypted mgmt packets
Fixes kernel warnings and connectivity issues in encrypted mesh networks

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-29 11:12:11 +01:00
Hauke Mehrtens
a5269ffa7a kernel: Add missing config option for kernel 4.14
Kernel 4.14.96 got the new configuration option
CIFS_ALLOW_INSECURE_LEGACY which allows to deactivate support for old
and insecure SMB versions like 1.0 and 2.0. Still allow these old SMB
version and fix build problems which occurred because this option was
not defined.

This was found by build bot.

Fixes: 3662157d8b ("kernel: bump 4.14 to 4.14.96")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-28 21:39:35 +01:00
Koen Vandeputte
ca1b93f038 imx6: add support for kernel 4.19
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
f003d732d7 kernel: bump 4.19 to 4.19.18
Refreshed all patches.

Removed upstreamed:
- 031-v5.0-MIPS-BCM47XX-Setup-struct-device-for-the-SoC.patch
- 142-jffs2-Fix-use-of-uninitialized-delayed_work-lockdep-.patch

Removed upstreamed hunk in:
- 800-bcma-get-SoC-device-struct-copy-its-DMA-params-to-th.patch

Compile-tested on: cns3xxx
Runtime-tested on: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
880a4b334e cns3xxx: don't use invalid mask value for clock events
According to a commit from kernel 4.18-rc3, it's not valid
to use "cpu_mask_all" for clock events and it should be
replaced in favor of "cpu_possible_mask" [1]

This warning was seen when booting kernel 4.19 on a cns3xxx board.
Let's fix it also here just to be safe.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v4.19.18&id=fbfa9260085b5b578a049a90135e5c51928c5f7f

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
c6bebe1a94 cns3xxx: add support for kernel 4.19
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
037800270b cns3xxx: use actual size reads for PCIe (4.19)
upstream commit 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
reimplemented cns3xxx_pci_read_config() using pci_generic_config_read32(),
which preserved the property of only doing 32-bit reads.

It also replaced cns3xxx_pci_write_config() with pci_generic_config_write(),
so it changed writes from always being 32 bits to being the actual size,
which works just fine.

Due to:
- The documentation does not mention that only 32 bit access is allowed.
- Writes are already executed using the actual size
- Extensive testing shows that 8b, 16b and 32b reads work as intended

It makes perfectly sense to also swap 32 bit reading in favor of actual size.

also backport this patch to kernel 4.19

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
9a8db2d6bf cns3xxx: refresh kernel config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
3662157d8b kernel: bump 4.14 to 4.14.96
Refreshed all patches.

Remove upstreamed patches:
- 142-jffs2-Fix-use-of-uninitialized-delayed_work-lockdep-.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
662b926146 kernel: bump 4.9 to 4.9.153
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Koen Vandeputte
aa95bdd80f kernel: bump 3.18 to 3.18.133
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-28 18:17:32 +01:00
Hauke Mehrtens
50b3044eeb brcm2708: Fix kmod-regmap split
There are more regmap dependencies missing in the brcm2708 target.

Fixes: fd5c168701 ("kernel: Build: Split kmod-regmap")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-27 19:35:46 +01:00
Hans Dedecker
617e414643 map: depend on nat46, provide map-t
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-27 18:39:55 +01:00
Hans Dedecker
633cac0cb4 464xlat: import from routing, add myself as maintainer
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-27 18:39:18 +01:00
Hans Dedecker
4856fa30a6 nat46: import for routing, add myself as maintainer
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-27 18:29:52 +01:00
Skirmantas Lauzikas
9c01273e5e ath79: add support for TP-Link Archer C2 V3 (AC900)
This commit adds support for the TP-link Archer C2 V3 (AC900).

Specifications:

 - CPU: QCA9563 750Mhz
 - Ram: 64MB (DDR2)
 - Flash: 8MB (SPI NOR)
 - Ethernet: 5x 10/100/1000
 - Wifi: QCA9563 bgn + QCA9887 an+ac
 - 9x Leds, 2x buttons

Flash instructions:

Upload openwrt-ath79-generic-tplink_archer-c2-v3-squashfs-factory.bin
via the router Web interface and flash as normal firmware update.

Signed-off-by: Skirmantas Lauzikas <skirmantas.lauzikas@blackraven.lt>
[reorder entries, fix trailing whitespace in dts, add firmware partition
 compatible string, remove led default off states, use default on state
 for system led, reuse tplink-safeloader-uimage image build recipe, squash
 with dynamic partitioning commit, reword commit message, add
 installation instructions]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-27 16:41:10 +01:00
Skirmantas Lauzikas
30f48fb107 firmware-utils: tplink-safeloader: Fix for Archer C2 V3 image generation
Fix for factory image generation, so that stock firmware will accept the
openwrt image.

Ref: https://forum.openwrt.org/t/support-for-tp-link-archer-c2-v3/15617/17
Signed-off-by: Skirmantas Lauzikas <skirmantas.lauzikas@blackraven.lt>
[reword commit message, use correct order for conditions,
 trim trailing whitespace]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-27 16:41:05 +01:00
Michael Gray
963a83d82b tools: tplink-safeloader: add C7v5 RU Support
The added entry originates from TP-Links latest Archer C7 v5 RU firmware.

Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
2019-01-27 11:52:24 +01:00
Daniel Gonzalez Cabanelas
5af04f0d94 brcm63xx: VH4032N: add missing pinctrl
Add missing pin controls for the Observa VH4032N router.

This fixes the wifi radio and ethernet LAN LEDs.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2019-01-27 11:52:24 +01:00
Daniel Gonzalez Cabanelas
6b2b35e043 brcm63xx: VH4032N: fix the power led and the wlan button
- use the blue LED for power, since the red LED is already used by
  CFE in emergency mode.
- use the correct code for the wlan button

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2019-01-27 11:52:24 +01:00
Hauke Mehrtens
9b47e4c007 brcm2708: Move kmod-sound-soc-3dlab-nano-player to sound modules
kmod-sound-soc-3dlab-nano-player was in the global kernel menu before,
add the dependency to sound to move it to the correct category.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-27 11:08:46 +01:00
Hauke Mehrtens
fcbbec8eb2 kernel: Fix kmod-regmap split
Two regmap dependencies were wrong, this patch fixes them.
This was detected by the build bots.

Fixes: fd5c168701 ("kernel: Build: Split kmod-regmap")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-27 11:07:14 +01:00
Michael Heimpold
268b5bec80 mbedtls: Kconfig option to enable/disable debug functions
This introduces a new Kconfig option to switch on/off mbedtls' support
for debug functions.

The idea behind is to inspect TLS traffic with Wireshark for debug
purposes. At the moment, there is no native or 'nice' support for
this, but at
68aea15833
an example implementation can be found which uses the debug functions
of the library. However, this requires to have this debug stuff enabled
in the library, but at the moment it is staticly patched out.

So this patch removes the static part from the configuration patch
and introduces a dynamic config file editing during build.

When enabled, this heavily increases the library size, so I added
a warning in the Kconfig help section.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2019-01-27 01:04:53 +01:00
Deng Qingfang
e8f2302516 mbedtls: update to 2.16.0
Refresh patch

https://tls.mbed.org/tech-updates/releases/mbedtls-2.16.0-2.7.9-and-2.1.18-released

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-01-27 01:04:53 +01:00
protonesso
d018b55a18 update uClibc-ng from 1.0.30 to 1.0.31
Signed-off-by: protonesso <nagakamira@gmail.com>
2019-01-27 01:04:53 +01:00
Martin Schiller
654124b1af lantiq/led_dsl: Fix netdev led trigger
In the upstream netdev led trigger the one mode file was replaced by 3
files named rx, tx and link. Fix the netdev trigger configuration code
to use the modified API.

This fix is based on 201058b35c ("base-files: Fix netdev led trigger")

Fixes: aa3b6a08c5 ("kernel: Replace ledtrig-netdev with upstream backport")
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-01-27 01:04:53 +01:00
Daniel Engberg
be1d70e0a2 sunxi: Add support for SY8106A voltage regulator
Add support for Silergy SY8106A voltage regulator which is
needed for cpufreq support on boards such as Orange Pi PC

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[Remove CONFIG_REGULATOR_SY8106A from cortexa7]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-27 01:04:52 +01:00
Karl Pálsson
04b418ac84 kernel: add kmod-usb-gadget-cdc-composite
This builds the "g_cdc" gadget module, providing ethernet+serial.

Signed-off-by: Karl Pálsson <karlp@etactica.com>
2019-01-27 01:04:37 +01:00
Petr Štetiar
cbbef976e2 build: dtc: Disable noisy warnings by default
While helping with review and build testing of a few 4.19 pull requests,
I've noticed, that dtc compiler in OpenWrt uses different options then
upstream kernel, which is leading to a very noisy output[1]. It wouldn't
be that bad per se, but a lot of such warnings aren't easily fixable so
I think, that we should follow what upstream does and simply ignore^W
silence those noisy warnings.

So this patch tries to syncs dtc compiler flags with upstream kernel
till version 4.19.13, disabling those warnings as they were added in
upstream kernel:

 v4.6-rc1-2-gbc55398 dtc: turn off dtc unit address warnings by default

  The newly added dtc warning to check DT unit-address without reg
  property and vice-versa generates lots of warnings. Turn off the check
  unless building with W=1 or W=2.

 v4.11-rc2-11-g8654cb8 dtc: update warning settings for new bus and node/property

  dtc gained new warnings checking PCI and simple buses, unit address
  formatting, and stricter node and property name checking. Disable the
  new dtc warnings by default as there are 1000s. As before, warnings are
  enabled with W=1 or W=2. The strict node and property name checks are a
  bit subjective, so they are only enabled for W=2.

 v4.16-rc3-9-g4fd98e3 scripts: turn off some new dtc warnings by default

  The latest dtc update adds some new noisy warnings, so turn them off by
  default. Disable 'avoid_unnecessary_addr_size' and 'alias_paths'. They
  can be re-enabled by building with 'W=1'.

 v4.17-rc1-27-g74656b6 kbuild: disable new dtc graph and unit-address warnings

  dtc gained some new warnings for OF graphs and unique unit addresses,
  but they are currently much too noisy. So turn off
  'graph_child_address', 'graph_port', and 'unique_unit_address' warnings
  by default. They can be enabled by building dtbs with W=1.

Build tested on imx6 and ath79 with 4.14 and 4.19.

1. https://github.com/openwrt/openwrt/pull/1694#issuecomment-450864335

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-27 00:16:14 +01:00
Tomasz Maciej Nowak
7d188fb4db mvebu: backport upstream fixes for armada 37xx
Upstream patches for processor frequency scaling, which fix possible
system hard lockups.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-01-27 00:16:14 +01:00
Tomasz Maciej Nowak
9b1102416f mvebu: espressobin: correct spi node in dts
Drop customizations in:
508-arm64-dts-armada-3720-espressobin-wire-up-spi-flash.patch
and move them to separate patch, with broader explanation.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-01-27 00:16:14 +01:00
Tomasz Maciej Nowak
b004835908 mvebu: sort armada 37xx upstream patches chronologically
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-01-27 00:16:14 +01:00
Tomasz Maciej Nowak
9f6c4ba25c mvebu: move HARDEN_BRANCH_PREDICTOR to common config
This symbol is enabled in all subtargets, move it to common kernel
config.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Acked-by: Rosen Penev <rosenp@gmail.com>
2019-01-27 00:16:14 +01:00
Hauke Mehrtens
fd5c168701 kernel: Build: Split kmod-regmap
This reduces the needed modifications to the mainline Linux kernel and
also makes the regmap package work with an out of tree kernel which
does not have these modifications.

The regmap-core is only added when it is really build as a module.
The regmap-core is normally bool so it cannot be built as a module in an
unmodified kernel. When it is selected by on other kernel module it will
always be selected as build in and it also does not show up in
$(LINUX_DIR)/modules.builtin as it is not supposed to be a kernel module.
When it is not in $(LINUX_DIR)/modules.builtin the build system expects
it to be built as a .ko file.
Just check if the module is really there and only add it in that case.

This splits the regmap package into multiple packages, one for each bus type.
This way only the bus maps which are really needed have to be added.
This also splits the I2C, SPI and MMIO regmap into separate packages to not
require all these subsystems to build them, on an unmodified upstream kernel
this also causes problems in some situations.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2019-01-27 00:16:13 +01:00
Oskari Lemmela
538127cf98 sunxi: spi flash dts changes
Backport A64 SPI flash DTS changes to 4.14 kernel.

Add Openwrt specific flash partitions to Sopine.

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
2019-01-26 23:11:49 +01:00
Oskari Lemmela
72102b11b8 sunxi: add spi flash support to kernel
Some of sunxi devices have onboard SPI flash.
Enable SPI NOR support and MTD fit split in kernel config.

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
2019-01-26 23:11:49 +01:00
Oskari Lemmela
7f06db06f2 sunxi: add a64 watchdog support
Backport A64 watchdog DTS change to 4.14 kernel.

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
2019-01-26 23:11:49 +01:00
Rosen Penev
8fd5091696 e2fsprogs: Update to 1.44.5
Added e4crypt tool for encrypting files and directories. To work properly
requires kernel and work on keyutils. That will be done in a future commit

Some top-level reorganization for consistency between packages.

Tested on GnuBee PC1 (mt7621).

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-01-26 23:11:49 +01:00
Django Armstrong
1c2f7b5115 ath79: add support for Devolo WiFi Pro 1750e
Hardware
--------
CPU:   Qualcomm Atheros QCA9558
RAM:   128M DDR2
FLASH: 16MiB
ETH:   1x Atheros AR8035 (PoE in)
       1x Atheros AR8033
WiFi2: QCA9558 3T3R (SiGE SE2565T 2.4 GHz power amp x3)
WiFi5: QCA9880 3T3R (Skyworks 5003L1 5 GHz power amp x3)
BTN:   1x Reset
       1x WPS
       1x USB eject
LED:   1x LED blue
       1x LED red
BEEP:  1x GPIO attached piezo beeper
UART:  3.3V GND TX RX (115200-N-8) (3.3V is pin closest to rear ports)
       Dupont 4 pin header
       Rear RJ45 serial port non-functional
USB:   1x v2.0

Installation
------------
Make sure you set a password for the root user as prompted on first
setup!

1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password previously set in the web interface.

2. Install OpenWRT with

> sysupgrade -n -F /tmp/<openwrt-image-name>

Signed-off-by: Django Armstrong <iamdjango@hotmail.com>
2019-01-26 21:46:33 +01:00
Mathias Kresin
2a4e756085 ramips: rt3883: drop jimage support
The splitter isn't required by any of the boards in the subtarget.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 21:46:33 +01:00
Mathias Kresin
8293aec943 ramips: disable CONFIG_MTD_SPLIT_FIRMWARE
It's no longer needed as all mt7621 devices use DT binding (supported by
upstream mtd code) for specifying "firmware" part format explicitly.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 21:46:33 +01:00
Rafał Miłecki
acd790c150 ramips: specify "firmware" partition format for remaining devices
It results in calling the right MTD parser directly instead of trying
them one by one.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
[use the lzma splitter for the AR670W]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 21:46:33 +01:00
Linus Walleij
11e9577511 gemini: Add a config for kernel v4.19
This adds a config for kernel v4.19 to the Gemini
target.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-26 21:46:33 +01:00
Linus Walleij
e44d1e17da gemini: Add v4.19 kernel patches
This is the remainder of kernel patches for the v4.19
kernel. A whole slew of the previous patch stack is now
upstream, so this mainly contains the stuff that was
added upstream between v4.19 and v5.0-rc1, and then
the USB FOTG201 patches from Hans.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2019-01-26 21:46:32 +01:00
Petr Štetiar
c2bdd018a3 uboot-imx6: Bump to 2019.01
Build tested: apalis, mx6sabresd, nitrogen6dl, nitrogen6dl2g, nitrogen6q,
              nitrogen6q2g, nitrogen6s, nitrogen6s1g, wandboard

Run tested: apalis (pending PR #1595)

Cc: Felix Fietkau <nbd@nbd.name>
Cc: Vladimir Vid <vladimir.vid@sartura.hr>
Cc: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-26 21:46:32 +01:00
Petr Štetiar
66a4978b43 u-boot.mk: Fix building of recent U-Boot sources
This patch fixes following error with U-Boot 2019.01 on imx6:

 In file included from tools/lib/crc16.c:1:0:
 ./tools/../lib/crc16.c: In function 'crc16_ccitt':
 ./tools/../lib/crc16.c:70:2: error: 'for' loop initial declarations are only allowed in C99 mode
   for (int i = 0;  i < len;  i++)
   ^
 ./tools/../lib/crc16.c:70:2: note: use option -std=c99 or -std=gnu99 to compile your code

Code was introduced in the upstream v2019.01-rc1-154-g51c2345:

 commit 51c2345bd24837f9f67f16268da6dc71573f1325
 Author: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
 Date:   Sun Nov 25 19:22:19 2018 +0100

    Roll CRC16-CCITT into the hash infrastructure

Upstream has added -std=gnu11 host flag in v2018.07-rc2-1-gfa89399:

 commit fa893990e9b53425af5f5059e04a2bffde91ccf9
 Author: Tom Rini <trini@konsulko.com>
 Date:   Tue Jun 19 23:53:54 2018 -0400

    Makefile: Ensure we build with -std=gnu11

Build tested on imx6: apalis, mx6sabresd, nitrogen6dl, nitrogen6dl2g,
                      nitrogen6q, nitrogen6q2g, nitrogen6s, nitrogen6s1g,
                      wandboard

Run tested: apalis (pending PR #1595)

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-26 21:46:32 +01:00
Michael Heimpold
52d7a1d3b2 uboot-mxs: bump to v2019.01
Also update the U-Boot BSP patch for I2SE Duckbill devices.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2019-01-26 21:46:32 +01:00
David Bauer
01dcd574a2 ramips: add support for Archer C50 v4
This adds support for the TP-Link Archer C50 v4.
It uses the same hardware as the v3 variant, sharing the same FCC-ID.

CPU:   MediaTek MT7628 (580MHz)
RAM:   64M DDR2
FLASH: 8M SPI
WiFi:  2.4GHz 2x2 MT7628 b/g/n integrated
WiFI:  5GHz 2x2 MT7612 a/n/ac
ETH:   1x WAN 4x LAN
LED:   Power, WiFi2, WiFi5, LAN, WAN, WPS
BTN:   WPS/WiFi, RESET
UART:  Near ETH ports, 115200 8n1, TP-Link pinout

Create Factory image
--------------------
As all installation methods require a U-Boot to be integrated into the
Image (and we do not ship one with the image) we are not able to create
an image in the OpenWRT build-process.

Download a TP-Link image from their Wesite and a OpenWRT sysupgrade
image for the device and build yourself a factory image like following:

TP-Link image:             tpl.bin
OpenWRT sysupgrade image:  owrt.bin

 > dd if=tpl.bin of=boot.bin bs=131584 count=1
 > cat owrt.bin >> boot.bin

Installing via Web-UI
---------------------
Upload the boot.bin via TP-Links firmware upgrade tool in the
web-interface.

Installing via Recovery
-----------------------
Activate Web-Recovery by beginning the upgrade Process with a
Firmware-Image from TP-Link. After starting the Firmware Upgrade,
wait ~3 seconds (When update status is switching to 0%), then
disconnect the power supply from the device. Upgrade flag (which
activates Web-Recovery) is written before the OS-image is touched and
removed after write is succesfull, so this procedure should be safe.

Plug the power back in. It will come up in Recovery-Mode on 192.168.0.1.
When active, all LEDs but the WPS LED are off.
Remeber to assign yourself a static IP-address as DHCP is not active in
this mode.

The boot.bin can now be uploaded and flashed using the web-recovery.

Installing via TFTP
-------------------
Prepare an image like following (Filenames from factory image steps
apply here)

 > dd if=/dev/zero of=tp_recovery.bin bs=196608 count=1
 > dd if=tpl.bin of=tmp.bin bs=131584 count=1
 > dd if=tmp.bin of=boot.bin bs=512 skip=1
 > cat boot.bin >> tp_recovery.bin
 > cat owrt.bin >> tp_recovery.bin

Place tp_recovery.bin in root directory of TFTP server and listen on
192.168.0.66/24.

Connect router LAN ports with your computer and power up the router
while pressing the reset button. The router will download the image via
tftp and after ~1 Minute reboot into OpenWRT.

U-Boot CLI
----------
U-Boot CLI can be activated by holding down '4' on bootup.

Dual U-Boot
-----------
This is the first TP-Link MediaTek device to feature a split-uboot
design. The first (factory-uboot) provides recovery via TFTP and HTTP,
jumping straight into the second (firmware-uboot) if no recovery needs
to be performed. The firmware-uboot unpacks and executed the kernel.

Web-Recovery
------------
TP-Link integrated a new Web-Recovery like the one on the Archer C7v4 /
TL-WR1043v5. Stock-firmware sets a flag in the "romfile" partition
before beginning to write and removes it afterwards. If the router boots
with this flag set, bootloader will automatically start Web-recovery and
listens on 192.168.0.1. This way, the vendor-firmware or an OpenWRT
factory image can be written.

By doing the same while performing sysupgrade, we can take advantage of
the Web-recovery in OpenWRT.

It is important to note that Web-Recovery is only based on this flag. It
can't detect e.g. a crashing kernel or other means. Once activated it
won't boot the OS before a recovery action (either via TFTP or HTTP) is
performed. This recovery-mode is indicated by an illuminated WPS-LED on
boot.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 21:46:32 +01:00
David Bauer
28cd2caa35 base-files: sysupgrade: support additional mtd options
Add support for passing additional parameters to mtd called during
sysupgrade. It will be required to toggle the "recovery moe" flag
supported by recent tp-link boards.

Signed-off-by: David Bauer <mail@david-bauer.net>
[split code from board support patch; add commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 21:46:32 +01:00
David Bauer
1e06482f7d mtd: add logic for TP-Link ramips recovery magic
This adds an option to set the recovery flag of newer TP-Link MediaTek
boards and remove it after a successful write.

To make use of this feature, add the '-t' option to mtd-write.

The '-t' option takes the mtd partition containing the recovery flag
(usually 'romfile') as an argument. Make sure this partition is not
flagged as read-only!

Example:
 > mtd -t romfile write owrt.bin firmware

This command writes the recovery-flag before it begins writing the image
to the firmware partition. After the image-write has been successful,
the recovery flag is removed.

This way, the TP-Link web-recovery is automatically enabled on an
unsucessful flash (e.g. power loss).

This option is only available if the mtd package is compiled for the
ramips target.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 21:46:32 +01:00
David Bauer
36a091cb07 tools: mktplinkfw2: add split-uboot layout
This commit adds the split-uboot partition layout used by the
Archer C50 v4 to mktplinkfw2.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 21:46:32 +01:00
Christian Lamparter
53cc74bfa7 gemini: dlink-dir-685: fix rt2800-pci package name
The package is now called kmod-rt2800-pci.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-26 21:43:17 +01:00
Oever González
a873b29284 ipq40xx: add support for Linksys EA6350v3
Specifications:
SOC: Qualcomm IPQ4018
RAM: 256 MiB Samsung K4B2G1646F-BYK0
FLASH1: MX25L1605D 2 MB
FLASH2: Winbond W25N01GV 128Mb
ETH: Qualcomm QCA8075
WLAN0: Qualcomm Atheros QCA4018 2.4GHz 802.11b/g/n 2x2
WLAN1: Qualcomm Atheros QCA4018 5GHz 802.11n/ac W2 2x2
INPUT: WPS, Reset
LED: Status - Green
SERIAL: Header at J19, Beneath DC Power Jack
        1-VCC ; 2-TX ; 3-RX; 4-GND;
        Serial 115200-8-N-1.

Tested and working:
- USB (requires extra packages)
- LAN Ethernet (Correct MAC-address)
- WAN Ethernet (Correct MAC-address)
- 2.4 GHz WiFi (Correct MAC-address)
- 5 GHz WiFi (Correct MAC-address)
- Factory installation from Web UI
- OpenWRT sysupgrade
- LED
- Reset Button

Need Testing:
- WPS button

Install via Web UI:
- Attach to a LAN port on the router.
- Connect to the Linksys Smart WiFi Page (default 192.168.1.1) and login
- Select the connectivity tab on the left
- In the manual update box on the right
- Select browse, and browse to
  openwrt-ipq40xx-linksys_ea6350v3-squashfs-factory.bin
- Click update.
- Read and accept the warning
- The router LED will start blinking. When the router LED goes solid, you
  can now navigate to 192.168.1.1 to your new OpenWrt installation.

Sysupgrade:
- Flash the sysupgrade image as usual. Please: try to do a reset everytime
  you can (doing it with LuCI is easy and can be done in the same step).

Recovery (Automatic):
- If the device fails to boot after install or upgrade, whilst the unit is
  turned on:
1 - Wait 15 seconds
2 - Switch Off and Wait 10 seconds
3 - Switch on
4 - Repeat steps 1 to 3, 3 times then go to 5.
5 - U-boot will have now erased the failed update and switched back to the
    last working firmware - you should be able to access your router on
    LAN.

Recovery (Manual):
- The steps for manual recovery are the same as the generic u-boot tftp
  client method.

Back To Stock:
- Use the generic recovery using the tftp client method to flash the
  "civic.img". Also you can strip-and-pad the original image and use
  the generic "mtd" method by flashing over the "kernel" partition.
* Just be careful to flash in the partition that the device is currently
  booted.

Signed-off-by: Ryan Pannell <ryan@osukl.com>
Signed-off-by: Oever González <notengobattery@gmail.com>
[minor edits, removed second compatible of nand, added dtb entry to 4.19]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-26 21:43:11 +01:00
Oever González
892d741259 build: add a script for generating Linksys factory images
This commit adds the 'Build/linksys-image' rule and the
'linksys-image.sh' script to the build system.

This change is needed for generating factory images for the Linksys
EA6350v3 device. Without this patch, only valid sysupgrade images can be
generated. With this patch, users can flash the device without the
need of physical access or disassembly.

Signed-off-by: Ryan Pannell <ryan@osukl.com>
Signed-off-by: Oever González <notengobattery@gmail.com>
2019-01-26 21:43:07 +01:00
Oever González
c43acdf342 mtd: add linksys_bootcount to the ipq40xx target
This commit adds the object 'linksys_bootcount_fix.o' to the ipq40xx
target.

This is needed for the Linksys EA6350v3 device. Without this patch, the
device will switch-back between the current and the last flashed firmware
every 3 (three) reboots. With this patch, the device works as expected.

Signed-off-by: Ryan Pannell <ryan@osukl.com>
Signed-off-by: Oever González <notengobattery@gmail.com>
2019-01-26 21:43:06 +01:00
Oever González
ad3e667539 uboot-envtools: add support for Linksys EA6350v3
This commit adds support for the Linksys EA6350v3 device in the ipq40xx
target.

This is needed for uboot-envtools to access the environment. Without this
patch, the Linksys EA6350v3 will not be able to access the uboot
environment. As a side effect, the feature auto_recovery will make the
device unstable by switching between the latest and the current firmware.

Signed-off-by: Ryan Pannell <ryan@osukl.com>
Signed-off-by: Oever González <notengobattery@gmail.com>
2019-01-26 21:43:04 +01:00
Oever González
fb7b8d5ad3 ipq-wifi: add support for Linksys EA6350v3
This commit adds support for the Linksys EA6350v3 device in the ipq-wifi
target.

Without this patch, the Linksys EA6350v3 won't be hable to have fully
functional wireless interfaces. This is not permanent: the board data has
already been sent to ath10k _at_ lists _dot_ infradead _dot_ org

Signed-off-by: Ryan Pannell <ryan@osukl.com>
Signed-off-by: Oever González <notengobattery@gmail.com>
2019-01-26 21:42:57 +01:00
Oever González
69aa1c5ac0 mac80211: ath: add extra 'regulatory domains'
This patch adds several country codes to the regd.h and regd_common.h
files in order to support devices whose country codes are not present in
the original list.

Without this patch, all devices whose manufacturer programmed any of these
code in their EEPROM will run without wireless interfaces.

Signed-off-by: Oever González <notengobattery@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [matched signed-off]
2019-01-26 21:41:04 +01:00
Christian Lamparter
47c3ada44a uboot-fritz4040: update package to 2019-01-25
David Bauer reported a u-boot crash (data abort) at a odd
place (byteswap) when he ran ping/tftp on his 7530.

|(FRITZ7530) # ping 192.168.1.70
|eth0 PHY0 up Speed :1000 Full duplex
|eth0 PHY1 Down Speed :10 Half duplex
|eth0 PHY2 Down Speed :10 Half duplex
|eth0 PHY3 Down Speed :10 Half duplex
|eth0 PHY4 Down Speed :10 Half duplex
|Using eth0 device
|data abort
|pc : [<84234774>]      lr : [<842351a4>]
|sp : 8412fdb0  ip : 0000009b     fp : 00000000
|r10: 00000000  r9 : 00000001     r8 : 8412ff68
|r7 : 00000000  r6 : 0000002a     r5 : 84244e90  r4 : 8425e28e
|r3 : 84244e90  r2 : 14000045     r1 : 8412fdb0  r0 : 8425e28e
|Flags: nZCv  IRQs off  FIQs off  Mode SVC_32
|Resetting CPU ...
|
|resetting ...

This issue is caused by switch from gcc 5.5 to 7.1+ as explained
in the upstream patch:

|From a768e513b07b5999a8e7d7740ac8d9da04ee7e51 Mon Sep 17 00:00:00 2001
|From: Denis Pynkin <denis.pynkin@collabora.com>
|Date: Fri, 21 Jul 2017 19:28:42 +0300
|Subject: [PATCH] net: Use packed structures for networking
|
|PXE boot is broken with GCC 7.1 due option '-fstore-merging' enabled
|by default for '-O2':
|
|BOOTP broadcast 1
|data abort
|pc : [<8ff8bb30>]          lr : [<00004f1f>]
|reloc pc : [<17832b30>]    lr : [<878abf1f>]
|sp : 8f558bc0  ip : 00000000     fp : 8ffef5a4
|r10: 8ffed248  r9 : 8f558ee0     r8 : 8ffef594
|r7 : 0000000e  r6 : 8ffed700     r5 : 00000000  r4 : 8ffed74e
|r3 : 00060101  r2 : 8ffed230     r1 : 8ffed706  r0 : 00000ddd
|Flags: nzcv  IRQs off  FIQs off  Mode S
|
|Core reason is usage of structures for network headers without packed
|attribute.

Reported-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-26 21:09:12 +01:00
Petr Štetiar
89afabf9f8 ath79: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
[split up, removed entries where it could clash due to ath9k-leds]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-26 21:09:12 +01:00
Petr Štetiar
a012b3dfa8 ath79: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-26 21:09:12 +01:00
Deng Qingfang
c2bcdabf2a ramips: fix support for MX25L25635F flash
Patch picked from commit 82618062cf

This enables 4B opcodes for MX25L25635F, to fix the reboot crash
issue (FS#1120) At least 3 devices are using this flash
- GeHua GHL-R-001
- Youku YK1
- Newifi D1

Now the MX25L25635F can be correctly detected without breaking MX25L25635E
[ 3.034324] spi-mt7621 1e000b00.spi: sys_freq: 220000000
[ 3.045962] m25p80 spi0.0: mx25l25635f (32768 Kbytes)
[ 3.056098] 4 fixed-partitions partitions found on MTD device spi0.0
[ 3.068748] Creating 4 MTD partitions on "spi0.0":

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [added deprecation notice]
2019-01-26 17:10:19 +01:00
David Bauer
b368373fab mpc85xx: add support for OCEDO Panda
CPU:   FSL P1020 (2x 800MHz E500 PPC)
RAM:   1GB DDR3
FLASH: 256MiB NAND
WiFi:  2x Atheros AR9382 2x2:2 abgn
ETH:   2x BCM54616S - 1x BCM53128 8-port switch
LED:   5x LEDs (Power, WiFi1, WiFi2, N/D, SYS)
BTN:   1x RESET

Installation
------------

1. Download initrams kernel image, dtb binary and sysupgrade image.

2. Place initramfs kernel into tftp root directory. Rename to
"panda-uimage-factory".

3. Place dtb binary into tftp root directory. Rename to "panda.fdt".

4. Start tftp server on 192.168.100.8/24.

5. Power up the device with the reset button pressed. It will download
the initrams and dtb via tftp and boot into OpenWRT in RAM.

6. SSH into the device and remove the factory partitions.

 > ubirmvol /dev/ubi0 --name=kernel1
 > ubirmvol /dev/ubi0 --name=rootfs1
 > ubirmvol /dev/ubi0 --name=devicetree1

You will have around 60 MiB of free space with that.

You can also delete "kernel2", "devicetree2", "rootfs2" and "storage"
respectively in case you do not want to go back to the vendor firmware.

7. Modify the U-Boot bootcmd to allow for booting OpenWRT

 > fw_setenv bootcmd_owrt "ubi part ubi && ubi read 0x1000000 kernel
   && bootm 0x1000000"

 > fw_setenv bootargs_owrt "setenv bootargs console=ttyS0,115200
   ubi.mtd=3,2048"

 > fw_setenv bootcmd "run bootargs_owrt; run bootcmd_owrt"

8. Transfer the sysupgrade image via scp into the /tmp directory.

9. Upgrade the device

 > sysupgrade -n /tmp/<imagename>

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 17:10:19 +01:00
David Bauer
90bfbed7c2 mpc85xx: use generic diag.sh
This commit removes the target-specific diag.sh script. This way, the
generic one is used for the target, which uses DT-aliases to specify the
LEDs used.

This way, we are also able to use different LEDs to indicate different
states. We use green status LEDs for indicating boot and a running
system. Where possible, the red status LED is used to indicate failsafe
mode and a running upgrade.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 17:10:19 +01:00
Christian Lamparter
b2e1333de3 ipq40xx: 4.19: fix pcie wifi unit-address of the MR33 and A62
The unit address should be wifi@1,0 since the device is located
at 0000:01:00.0.

Reported-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-26 17:10:19 +01:00
Mathias Kresin
1f0e08cf95 gemini: add EOD marker to rootfs images
With 6409b159e8 ("gemini: switch to 4.14") the EOF marker were dropped
from the rootfs images. Without the marker the rootfs_data partition
can't be created and it isn't possible to permanently store any
configuration changes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:38 +01:00
Mathias Kresin
82c7699dd8 gemini: fix ITian Square One SQ201 package selection
All kernel modules are prefixed with kmod-. Add the prefix to include
the desired packages.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:38 +01:00
Mathias Kresin
a565659c29 gemini: replace date placeholder
Replace the data placerholder in ImageInfo-itian_sq201 in a reproducible
way.

The code for the replace was accidentality dropped in 5bac623895
("gemini: unify and fix ib-nas4220b and sq201 image creation")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:38 +01:00
Mathias Kresin
67d39c03ec gemini: drop Teltonika RUT1xx artifacts
Support for the Teltonika RUT1xx was added with the switch to kernel
4.4. Hidding such changes in a kernel switch commit is the wrong way and
the support for the Teltonika RUT1xx is pretty much incomplete.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:38 +01:00
Mathias Kresin
2a8fe45df5 gemini: add wiligear image build code
They were dropped with 6409b159e8 ("gemini: switch to 4.14") without
any explaination.

The image generation is disabled for now as it would break the build for
the target. The mkfwimage2 call need to be adjusted to reflect the real
size of kernel and rootfs. Nevertheless, add the required code to give
interested parties a chance to fix the remaining issues.

The dts would need to use the ecoscentric,redboot-fis-partitions
partition parser to get the correct partition offsets and size. It's
expected that the OEM firmware adjusts the on flash partition table with
the values defined in the image header.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
7055cb0acc gemini: fix alphabetical order
Reorder the image recipes to keep the alphabetical order.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
0013c94025 gemini: use dts compatible based image filenames
Use an output image filename based on the compatible string from the dts
files. This way it is way easier to get for which board an image is
intended.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
b9c6862d9d gemini: drop unnecessary image build default variables
They are either not required, set to an earlier set default value or
defined due to target features.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
7f17f3b418 gemini: drop unnecessary images
The root filesystem is already part of the factory image and most likely
not required at all.

The same applies to the kernel images.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
b010519f1e gemini: all images are factory images
There is no support for sysupgrade in gemini, hence all images are only
suitable for an installation via bootloader or oem firmware.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
10dab9b098 gemini: follow common pattern for temp dir naming
For temporary directories <imagename>.tmp is a common pattern in image
build code across the tree. Use it for the nas4220b/sq201 recipe as
well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:37 +01:00
Mathias Kresin
98c2261ac2 gemini: use existing build code where possible
Use the existing image build recipes in favour of introducing deplicate
shell code.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:36 +01:00
Mathias Kresin
1e606edce6 gemini: make all tar files more reproducible
Force a fixed sorting and use the parameters to create reproducible
archives for all tar invocations.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:36 +01:00
Mathias Kresin
6491643df4 gemini: build images in temporary directories
Create files in temporary directories within the build directory
instead manipulating files in the (final) output directory.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:36 +01:00
Mathias Kresin
0ffa6bae0a gemini: don't hardcode image filenames
Use the existing image build code mechanisms to specify the image output
filename.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:36 +01:00
Mathias Kresin
ec0d58ede4 gemini: fix parallel build
Due to the missing PROFILES all images are build, regardless of the
selected (or currently processed in case of a multi profile build).

Because of the race condition builds with eight parallel jobs fail,
which can be seen on the build bots as well.

Add the PROFILES variable for now, till the root cause is identified.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-26 15:23:36 +01:00
Tomasz Maciej Nowak
650df59e8a mvebu: remove default profile
When using Image Builder and building image for Cortex A53 or
A72 subtargets, it'll fail with following message:

Collected errors:
 * opkg_install_cmd: Cannot install package mwlwifi-firmware-88w8864.
 * opkg_install_cmd: Cannot install package mwlwifi-firmware-88w8964.
make[2]: *** [Makefile:153: package_install] Error 255
make[1]: *** [Makefile:114: _call_image] Error 2

This is beacuse both packages are available only for Cortex A9 subtarget
and are included in PACKAGES array in default profile. Instead patching
this, let's remove profiles completely, since all necessary packages are
specified in DEVICE_PACKAGES array for each device.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-01-26 10:45:34 +01:00
David Bauer
25eb02ae8e ipq40xx: remove misplaced MR33 UCI definition
This removes the misplaced UCI-network configuration for the MR33. The
LAN port is set in 01_leds while it is already correctly defined in
02_network.

This was most likely an oversight as no network configuration belongs
into 01_leds.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 10:45:34 +01:00
Robert Resch
53c25fa2c4 lantiq: Add support for 2nd USB port on Fritz!Box 7320 and 7330
Enable support for 2nd USB port, which is available on Fritz!Box 7320
and 7330. It was run-tested on 7320 and 7330 as well.

Signed-off-by: Robert Resch <openwrt@webnmail.de>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-26 10:42:19 +01:00
David Bauer
d4ba7bab25 lantiq: make AVM FRITZ!Box naming consistent
This commit changes the model string and device title of all AVM boards
to fit the naming of the manufacturer.

Drop all provider-specific titles as they are re-used for every device
generation by 1&1. The original AVM model name is printed on the bottom
of every devices.

Exception applies for boards which are only supported by a specific
sub-revision.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 10:41:26 +01:00
David Bauer
915fbd4e31 ramips: adjust Netgear R6120 model name
Adjust the model string and device title to match other Netgear routers
in the ramips target.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-26 10:41:03 +01:00
Jeff Kletsky
ee3120a9db ath79: fix GL.iNet AR300M family GPIOs/LEDs
Change the "status" LED to proper GPIO 12 and "red" naming.

Remove GPIO 2 from definition as a USB LED.

GPIO 2 is used to control power to the USB socket, not an LED.
As such, PWM on the line or typical LED triggers are inappropriate.

Users who wish to control the USB power for custom applications
can manipulate the GPIO through code, or for example, export it
through /sys/class/gpio/export.

Runtime-tested:  GL.iNet AR300M-Lite

Signed-off-by: Jeff Kletsky <git-commits@allycomm.com>
2019-01-26 10:40:06 +01:00
Felix Fietkau
0465e41e05 mt76: update to the latest version
3e9a7d5 Revert "mt7603: fix txd q_idx field value"
815fd03 mt7603: fix CCA timing values
b35cc8e mt7603: set timing on channel change before starting MAC
79b337c mt7603: move CF-End rate update to mt7603_mac_set_timing
3df341d mt7603: avoid redundant MAC timing updates
1c751f3 mt76: avoid scheduling tx queues for powersave stations
2efa389 mt7603: limit station power save queue length to 64
63a79ff mt76: do not report out-of-range rx nss
fe30bd3 mt7603: issue PSE reset on tx hang
ce8cc5d mt7603: issue PSE client reset on init
e342cc5 mt7603: fix buffered multicast count register
aa470d8 mt7603: fix buffered multicast queue flush
b4ee01f mt76: fix tx status timeout processing
7d00d58 mt76x02: fix per-chain signal strength reporting
64abb35 mt76: fix corrupted software generated tx CCMP PN
0b939dc mt76: fix resetting software IV flag on key delete

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-25 23:50:17 +01:00
Jo-Philipp Wich
f4d6e8f98f libelf: fix library packaging
The library has an usual shared object file name, which caused the
install glob pattern to miss the actual so.

Fixes: #2082
Fixes; 0e70f69a35 ("treewide: revise library packaging")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-25 18:59:46 +01:00
Martin Schiller
eaaee181d1 ppp: update to version 2.4.7.git-2018-06-23
This bumps ppp to latest git version.

There is one upstream commit, which changes DES encryption calls from
libcrypt / glibc to openssl.

As long as we don't use glibc-2.28, revert this commit.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2019-01-25 14:55:46 +01:00
Jo-Philipp Wich
f01044e85c kernel: fix sdhci-msm build error
A missing upstream stable backport leads to the following build error:

     CC      drivers/mmc/host/sdhci-msm.o
    drivers/mmc/host/sdhci-msm.c:1158:3: error: 'const struct sdhci_ops' has no member named 'write_w'
      .write_w = sdhci_msm_write_w,
       ^~~~~~~
    drivers/mmc/host/sdhci-msm.c:1158:13: warning: excess elements in struct initializer
      .write_w = sdhci_msm_write_w,
                 ^~~~~~~~~~~~~~~~~
    drivers/mmc/host/sdhci-msm.c:1158:13: note: (near initialization for 'sdhci_msm_ops')
    scripts/Makefile.build:326: recipe for target 'drivers/mmc/host/sdhci-msm.o' failed

Solve the issue by backporting commit
99d570da30 ("mmc: Kconfig: Enable CONFIG_MMC_SDHCI_IO_ACCESSORS")
from linux-stable.

Ref: 528508ae8b (commitcomment-32049231)
Fixes: 528508ae8b ("kernel: bump 4.14 to 4.14.95")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-25 09:23:33 +01:00
Hans Dedecker
e906a75e67 procd: update to latest git HEAD
e2b055e hotplug.c: Make sure hotplug buffer is NULL terminated

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-24 22:54:13 +01:00
Hauke Mehrtens
e61061a088 toolchain: Include hardening.mk for toolchain build
This adds the hardening options also to the toolchain build.
With this change the /usr/lib/libstdc++.so.6.0.24 library will have
stack canaries and the /lib/libgcc_s.so.1 library will have Full RELRO.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-24 21:52:39 +01:00
Christian Lamparter
5bac623895 gemini: unify and fix ib-nas4220b and sq201 image creation
Both Build/sq201-images and Build/nas4220b-images scripts
are very similar. This patch unifies both methods at the
cost of renaming the produced sysupgrade file names, but
with the benifit of creating better reproducible files.

The patch also fixes a race in parallel builds in which case
the ImageInfo of one device could end up in both sysupgrade
files.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:04 +01:00
Christian Lamparter
de07a0a29a gemini: lazy set IMAGE_NAME
Currently, IMAGE_NAME is expanded at declaration time
and this causes strange filename in the builder's logs:

|cp: cannot stat '[...]/openwrt-gemini-dlink-dns-313-.': No such file or directory
|cp: cannot stat '[...]/openwrt-gemini-nas4220b-.': No such file or directory
|[...]

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:04 +01:00
Petr Štetiar
71cf3eab25 layerscape: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:04 +01:00
Petr Štetiar
9292822023 oxnas: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:04 +01:00
Petr Štetiar
4a954e8620 oxnas: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Christian Lamparter
b5f6ede3c4 kernel: 4.19: use upstream usbport led trigger fix
This patch replaces the current hack with a better
version of the RFC patch has been accepted upstream.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:03 +01:00
Petr Štetiar
6928d06a7e ipq806x: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Petr Štetiar
93c30bef7c ipq806x: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Petr Štetiar
540a7d1ecc ipq40xx: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Petr Štetiar
98c6c8cdfe ipq40xx: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Christian Lamparter
f932137385 apm821xx: dts overhaul
- remove stray #address-cells / #size-cells

 - fix partition unit-addresses in wd-mybooklive.dts

 - remove index from MBL's gpio node name

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:03 +01:00
Petr Štetiar
cbb44f6ed7 apm821xx: dts: Unify naming of gpio-led nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Petr Štetiar
a692eecda1 apm821xx: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:03 +01:00
Petr Štetiar
87dcf24548 at91: dts: Unify naming of gpio-keys nodes
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.

1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [split up]
2019-01-24 15:53:02 +01:00
Christian Lamparter
13251aa92b mac80211: ath10k: remove "ath10k: fix otp failure result" patch
Initially this patch was introduced as a quick fix following
the removal of 936-ath10k_skip_otp_check.patch which caused
multiple ath10k pcie devices in various ipq806x and ar71xx/ath79
targets to malfunction.

Thankfully, the affected devices have been updated to utilize
the pre-caldata method. And finally with the switch to ath10k-ct,
which never had the patch or any reports of similar issues, I
think it's time to remove this patch since it is no longer needed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:02 +01:00
Christian Lamparter
1aa00f9d13 brcm2708: boot-part feature integration
This patch adds the boot-part feature which enables the brcm2708
target move from the custom boot partition size config option to
the generic CONFIG_TARGET_KERNEL_PARTSIZE.

Note:
For people using custom images: Just like with
CONFIG_TARGET_ROOTFS_PARTSIZE changing the value
can cause sysupgrade to repartition the device!
Make sure to have a backup in this case.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-24 15:53:02 +01:00
Jo-Philipp Wich
b1781d5841 iproute2: replace libelf1 dependency with libelf
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 12:56:31 +01:00
Jo-Philipp Wich
8d13529536 perf: replace libelf1 dependency with libelf
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 12:56:11 +01:00
Jo-Philipp Wich
d7bf0898a8 elfutils: rename libelf1 to libelf
The ABI_VERSION:=1 tag will take care of transforming the binary
library package basename.

Add a virtual PROVIDES:=libelf1 for packages still having libelf1
in their DEPENDS:=... lists.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 12:52:23 +01:00
Jo-Philipp Wich
790bce92ad build: formatting fixes for per-provide ABI_VERSION suffixes
- Filter out potential duplicates with the package name
   (e.g. when renaming libfoo1 w/ ABI_VERSION:=1 to libfoo)
 - Use the GetABISuffix macro to properly separate the suffix
   with a dash in case the basename ends with a number

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 12:51:39 +01:00
Jo-Philipp Wich
0e70f69a35 treewide: revise library packaging
- Annotate versionless libraries (such as libubox, libuci etc.) with a fixed
  ABI_VERSION resembling the source date of the last incompatible change
- Annotate packages shipping versioned library objects with ABI_VERSION
- Stop shipping unversioned library symlinks for packages with ABI_VERSION

Ref: https://openwrt.org/docs/guide-developer/package-policies#shared_libraries
Ref: https://github.com/KanjiMonster/maintainer-tools/blob/master/check-abi-versions.pl
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 10:39:30 +01:00
Jo-Philipp Wich
60558790a2 build: extend ABI_VERSION suffixing to provides
When a library package specifies additional provides, e.g. libncurses
which provides libncursesw, we should also append the abi version
suffix to each provide, since there may be more than one package
providing the virtual library.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 10:39:29 +01:00
Jo-Philipp Wich
68b29a7a95 uclient: set fixed ABI_VERSION on libuclient
Last incompatible change appeared to be 4924411
("http: add proper error handling to uclient_http_redirect()") which
changed the return value of uclient_http_redirect() from bool to int.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-24 10:39:29 +01:00
Koen Vandeputte
528508ae8b kernel: bump 4.14 to 4.14.95
Refreshed all patches.

Removed superseded patches:
- 0400-Revert-MIPS-smp-mt-Use-CPU-interrupt-controller-IPI-.patch

Compile-tested on: ar71xx, cns3xxx, imx6, lantiq (xrx200, AVM 3370), x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6, lantiq (xrx200, AVM 3370)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Mathias Kresin <dev@kresin.me>
Tested-by: Robert Resch <openwrt@webnmail.de>
2019-01-24 10:10:45 +01:00
Koen Vandeputte
ed6322a7f8 kernel: bump 4.9 to 4.9.152
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-24 10:10:45 +01:00
Jason A. Donenfeld
bbcd0634f8 wireguard: bump to 0.0.20190123
* tools: curve25519: handle unaligned loads/stores safely

This should fix sporadic crashes with `wg pubkey` on certain architectures.

* netlink: auth socket changes against namespace of socket

In WireGuard, the underlying UDP socket lives in the namespace where the
interface was created and doesn't move if the interface is moved. This
allows one to create the interface in some privileged place that has
Internet access, and then move it into a container namespace that only
has the WireGuard interface for egress. Consider the following
situation:

1. Interface created in namespace A. Socket therefore lives in namespace A.
2. Interface moved to namespace B. Socket remains in namespace A.
3. Namespace B now has access to the interface and changes the listen
port and/or fwmark of socket. Change is reflected in namespace A.

This behavior is arguably _fine_ and perhaps even expected or
acceptable. But there's also an argument to be made that B should have
A's cred to do so. So, this patch adds a simple ns_capable check.

* ratelimiter: build tests with !IPV6

Should reenable building in debug mode for systems without IPv6.

* noise: replace getnstimeofday64 with ktime_get_real_ts64
* ratelimiter: totalram_pages is now a function
* qemu: enable FP on MIPS

Linux 5.0 support.

* keygen-html: bring back pure javascript implementation

Benoît Viguier has proofs that values will stay well within 2^53. We
also have an improved carry function that's much simpler. Probably more
constant time than emscripten's 64-bit integers.

* contrib: introduce simple highlighter library

This is the highlighter library being used in:
- https://twitter.com/EdgeSecurity/status/1085294681003454465
- https://twitter.com/EdgeSecurity/status/1081953278248796165

It's included here as a contrib example, so that others can paste it into
their own GUI clients for having the same strictly validating highlighting.

* netlink: use __kernel_timespec for handshake time

This readies us for Y2038. See https://lwn.net/Articles/776435/ for more info.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-01-23 18:06:49 +01:00
Deng Qingfang
752bd72668 iproute2: update to 4.20.0
Update to the latest version of iproute2; see https://lwn.net/Articles/776174/
for a full overview of the changes in 4.20.
Remove upstream patch 001-fix-print_0xhex-on-32-bit.patch and 002-tc-fix-xtables-incorrect-usage-of-LDFLAGS.patch
Introduce a patch to include <linux/limits.h> for XATTR_SIZE_MAX in tc

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2019-01-23 17:55:21 +01:00
HsiuWen Yen
fe7d965ea9 ramips: fix two-way hash and auto ageout on MT7621
Current code directly writes the FOE entry to hash_val+1 position
when hash collision occurs. However, it is found that this behavior
will cause the cache and the hardware FOE table to be inconsistent.

For example, there are three flows, and their hashed values are all
equal to 100. The first flow is written to the position of 100. The
second flow is written to the position of 100+1. Then, the logic of
the current code will also write the third flow to 100+1.

At this time, the cache has flow 1 and 2; and the hardware FOE table
has flow 1 and 3, where these two parts store different contents.
So it is necessary to check whether the hash_val+1 is also occupied
before writing. If hash_val+1 is also occupied, we won’t bind th
third flow to the FOE table.

Addition to that, we also cancel the processing of foe_entry removal
because the hardware has auto age-out ability. The hardware will
periodically iterate through the FOE table to find out the time-out
entry and set it as INVALID.

Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
2019-01-23 09:27:30 +01:00
Andy Walsh
45a2771953 uboot-ar71xx: fix musl host build
On musl based distributions, u-boot 2010.03 fails to build with:

    u-boot-2010.03/include/u-boot/crc.h:29:50: error: unknown type name 'uint'
      uint32_t crc32 (uint32_t, const unsigned char *, uint);

The issue was fixed in the newer u-boot-2018.03 version, this commit
backports the change to the older version used by ar71xx/ath79.

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
[add commit message from PR description]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 13:29:46 +01:00
Andy Walsh
94f6030170 librpc: remove package
* replaced with packages/libtirpc
* remove busybox options rarely used/deprecated
BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
BUSYBOX_CONFIG_FEATURE_INETD_RPC

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2019-01-22 13:29:46 +01:00
Jo-Philipp Wich
ceb625439a musl: improve crypt() size hack
Instead of silently downgrading any non-MD5 crypt() request to DES,
cleanly fail with return NULL and errno = ENOSYS. This allows callers
to notice the missing support instead of the unwanted silent fallback
to DES.

Also add a menuconfig toolchain option to optionally disable the crypt
size hack completely. This can be probably made dependant on SMALL_FLASH
or a similar feature indicator in a future commit.

Ref: https://github.com/openwrt/openwrt/pull/1331
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 12:08:03 +01:00
Jo-Philipp Wich
1211832977 busybox: handle crypt() errors in loginutils
The crypt(3) function is allowed to fail with either EINVAL or ENOSYS when
the given salt is either invalid or when the requested algorithm is not
implemented.

In such a case, libbb's pw_encrypt() function will silently convert the
crypt() NULL return value into an empty string which is then processed
without further errors by utilities such as chpasswd or passwd, causing
them to set an empty password when an unsupported cipher is requested.

Patch the relevant users of pw_encrypt() to abort in case an empty hash
is returned by pw_encrypt() in order to mitigate the problem.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 12:08:00 +01:00
Jo-Philipp Wich
5d1399788a ncurses: build host libraries with -fPIC
Since readline/host links ncurses/host now, we need to ensure that the
libncursesw.so host library is built with -fPIC.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 11:29:05 +01:00
Kuang Rufan
eb31562370 tools/sed: fix incorrect dependency.
sed shall depend on xz instead of xz depends on sed.

Signed-off-by: Kuang Rufan <master@a1983.com.cn>
2019-01-22 11:28:49 +01:00
Michal Hrusecky
74450124f6 build: Optionally provide file checksums in package metadata
This may be useful if you don't entirely trust your flash and want to be able
to check for corruptions.

Signed-off-by: Michal Hrusecky <Michal@Hrusecky.net>
2019-01-22 09:22:25 +01:00
Sebastian Kemper
69dfdda157 ath79: fix port order for dir 825-c1 and 835-a1
LAN ports 1 and 4 and 2 and 3 are interchanged. Fix this in 02_network
so the ports show up in the correct order in luci.

The correct ucidef_add_switch line is already present. This commit moves
the blocks around to keep alphabetical order.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2019-01-22 09:05:59 +01:00
Milan Krstic
39ede7bc67 ar71xx: ag71xx: preserve port mirror flags during swconfig apply
The swconfig load operation always triggers 'apply' function which in
this driver currently clears port mirroring flags effectively undoing
port mirroring configuration.

This fix preserves port mirroring flags during apply.

Signed-off-by: Milan Krstic <milan.krstic@gmail.com>
2019-01-22 09:05:59 +01:00
Milan Krstic
76a629ee35 ath79: ag71xx: preserve port mirror flags during swconfig apply
The swconfig load operation always triggers 'apply' function which in
this driver currently clears port mirroring flags effectively undoing
port mirroring configuration.

Signed-off-by: Milan Krstic <milan.krstic@gmail.com>
2019-01-22 09:05:59 +01:00
Jeffery To
d13e86d4c2 procd: Add wrapper for uci_validate_section()
This adds a wrapper (uci_load_validate) for uci_validate_section() that
allows callers (through a callback function) to access the values set by
uci_validate_section(), without having to manually declare a
(potentially long) list of local variables.

The callback function receives two arguments when called, the config
section name and the return value of uci_validate_section().

If no callback function is given, then the wrapper exits with the value
returned by uci_validate_section().

This also updates several init scripts to use the new wrapper function.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-01-22 09:05:59 +01:00
Carsten Wolff
2bf22b1fb7 iputils: install ping, ping6, traceroute6 with setuid root
these utilities need to run with uid 0 to be useful. Thus,
install them setuid root like other distros do, too.

Signed-off-by: Carsten Wolff <carsten@wolffcarsten.de>
[use INSTALL_SUID macro]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 09:05:59 +01:00
Matthias Badaire
cf8483cb4f fstools: media change detection (eg:sdcard) using kernel polling
Linux kernel has a polling mechanism that can be activated by changing
the parameter /sys/module/block/parameters/events_dfl_poll_msecs which
is deactivated by default or the /sys/block/[device]/events_poll_msecs
for one device.

This patch set the events_poll_msecs when a disk is inserted.
Once the media disk change event is sent by the kernel then we force a
re-read of the devices using /sbin/block info.

With this patch, insertion and ejection of sd card will automatically
generate partition devices in /dev.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
[rewrap commit message, fix bashisms, fix non-matching condition,
 bump pkg release]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 08:49:36 +01:00
Jo-Philipp Wich
5a89eea8e4 ncurses: package only versioned shared objects
Also fix the libxxxw.so* -> libxxx.so* linking to actually work, the
prevsious code failed to properly symlink the versioned .so files.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 08:49:36 +01:00
Daniel Engberg
166b335e6e readline: Update to 8.0 and various fixes
Update (lib)readline to 8.0
Remove autoreconf
Remove blankspace at the end of the lines in description
Remove --enable-shared and --enable-static as they're enabled by default
Remove TARGET_CPPFLAGS
Simplify install sections
Install readline.pc (pkgconfig)
Add patch for linking (lib)ncurses

Source:
https://git.buildroot.net/buildroot/plain/package/readline/0000-curses-link.patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-01-22 08:49:36 +01:00
Peter Wagner
4da73af112 libnetfilter-conntrack: update to 1.0.7
Signed-off-by: Peter Wagner <tripolar@gmx.at>
[split from https://github.com/openwrt/openwrt/pull/1274]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 08:15:41 +01:00
Jo-Philipp Wich
62fbdcaf06 conntrack-tools: relocated to packages feed
In order to prepare the switch from librpc to libtirpc, we need to relocate
conntrack-tools to the packages feed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-22 08:14:00 +01:00
Jo-Philipp Wich
8c9b182db6 scripts: ipkg-remove: handle existing .ipk files without SourceName field
Package archives built before commit e6bcf1e4ac
("build: add ABI_VERSION to binary package names") lack the SourceName
control file field which caused ipkg-remove to skip such archives.

Add fallback code that matches the files by their basename followed by
an underscore, similar to how the old cleanup code worked.

Fixes: #2067
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-21 16:35:40 +01:00
Koen Vandeputte
3fe555c719 kernel: bump 4.14 to 4.14.94
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>
2019-01-21 13:08:39 +01:00
Koen Vandeputte
c594cdae0c kernel: bump 4.9 to 4.9.151
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-21 13:08:39 +01:00
Hao Dong
62dadcb86c bcm53xx: add support for Phicomm K3
Hardware specifications:

- CPU: Broadcom BCM4709C0 @1.4GHz (Dual-Core ARM)
- RAM: 512 MB (DDR3)
- Flash: 128 MB (NAND)
- LAN ports: 3, LAN speed: 10/100/1000
- WAN ports: 1, WAN speed: 10/100/1000
- 2.4G: BCM4366 4x4 MIMO 1000Mbps -- Skyworks SE2623L 2.4GHz Power Amplifier (x4)
- 5G: BCM4366 4x4 MIMO 2167Mbps -- RFMD RFPA5542 5GHz Power Amplifier Module (x4)
- USB: 1x USB 3.0 port
- 1x LED, 1x reset button, 1x power switch
- 1x system status touch screen

Flash:

- Enter CFE
- Upload the trx file
- Reboot

Signed-off-by: Hao Dong <halbertdong@gmail.com>
2019-01-20 23:34:44 +01:00
Felix Fietkau
3ccc0fdd9c mt76: update to the latest version
d273ddd mt7603: fix number of frames limit in .release_buffered_frames
63bf183 mt76: add channel switch announcement support
e45db12 mt7603: fix tx status info
9d11596 mt7603: discard bogus tx status data
4bcb2f9 mt7603: fix txd q_idx field value
4206db7 mt76: set IEEE80211_HW_NEEDS_UNIQUE_STA_ADDR flag
c4e4982 mt7603: set IEEE80211_HW_TX_STATUS_NO_AMPDU_LEN
702f557 mt7603: use maximum tx count for buffered multicast packets
158529d mt7603: fix PSE reset retry sequence
fc31457 mt7603: implement support for SMPS

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-20 19:01:12 +01:00
Felix Fietkau
c8280e6e14 mac80211: add support for indicating missing tx A-MPDU length
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-20 19:01:12 +01:00
Hans Dedecker
351e5516eb nghttp2: bump to 1.36.0
e7e8ee5f Update bash_completion
b3b4e335 Update manual pages
bd93d90a Don't treat text as option if it matches -[0-9]
ea69c84b Bump up version number to 1.36.0
783b649b Update AUTHORS
eb21e6f8 Merge branch 'update-http-parser'
ab2aa567 Fix test failure
ff87a542 Use http-parser 0d0a24e19eb5ba232d2ea8859aba2a7cc6c42bc4
439dbce6 Merge branch 'nghttpx-h1-connection-pool-per-addr'
e9c9838c nghttpx: Pool h1 backend connection per address
803d4ba9 Merge branch 'nghttpx-randomize-roundrobin-order'
732245e5 make clang-format
9e8d5433 Use clang-format-7
fdcdb21c nghttpx: Randomize backend address round robin order per thread
11d0533c nghttpx: Ensure that cert serial does not exceed 20 bytes
dbb5f00d Merge pull request #1287 from rckclmbr/fix_serial_size
9cc412e2 Merge pull request #1285 from staticinvocation/master
5b2efc0a Fix getting long serial numbers for openssl < 1.1
7e4c48a4 Disable shared library if ENABLE_SHARED_LIB is OFF
082e162f Merge pull request #1282 from alagoutte/travis
7cc7c06c .travis(.yml): no longer need llvm-toolchain-trusty-7
12ebeb30 .travis(.yml): Update to Xenial
c78abbe1 Update mruby to 2.0.0
124c7848 nghttpx: Add missing return
ce9667c4 Merge branch 'nghttpx-fix-trailing-slash-handling'
f3f40840 nghttpx: Fix broken trailing slash handling
302abf1b h2load: Fix compile error with gcc
089a03be h2load: Write log file with write(2)
de4fe728 Merge branch 'pyos-master'
d1b3a83f h2load: add an option to write per-request logs
eb679253 Merge branch 'puscas-port_in_use'
6800d317 added access to the number of the current server port
c98362ea Bump up version number to 1.36.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-20 18:16:29 +01:00
Kevin Darbyshire-Bryant
1fdb4a7907 kernel: N_BADCLASS: fix macro to actually work - class e support
Backport upstream patch:

Commit 65cab850f0ee ("net: Allow class-e address assignment via ifconfig
ioctl") modified the IN_BADCLASS macro a bit, but unfortunatly one too
many '(' characters were added to the line, making any code that used
it, not build properly.

Also, the macro now compares an unsigned with a signed value, which
isn't ok, so fix that up by making both types match properly.

Reported-by: Christopher Ferris <cferris@google.com>
Fixes: 65cab850f0ee ("net: Allow class-e address assignment via ifconfig ioctl")
Cc: Dave Taht <dave.taht@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-01-19 20:45:49 +00:00
Jo-Philipp Wich
e6bcf1e4ac build: add ABI_VERSION to binary package names
Add the ABI_VERSION source makefile variable to the binary package basename
and resolve source dependencies on packages with ABI_VERSION set to such
expanded names.

If for example a package specifies DEPENDS:=libopenssl while the OpenSSL
Makefile specifies ABI_VERSION:=1.0.0, the resulting ipk control data
dependency will be "Depends: libopenssl1.0.0" and the libopenssl ipk file
will be called "libopenssl1.0.0_<version>_<arch>.ipk".

The next time a library such as OpenSSL is updated to an incompatible
version, the ABI_VERSION shall be changed accordingly to prevent opkg from
simply upgrading to an incompatible library without considering the
dependencies of already installed packages.

Also introduce another "SourceName" control field which is required by
the newly introduced "scritps/ipkg-remove" to determine the proper related
.ipk files to delete upon buildroot package clean operations.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-19 14:32:12 +01:00
Jo-Philipp Wich
e3d5b384aa build: expose ABI version in .packageauxvars
Subdequent commits need this information to resolve the ABI version when
computing binary ipk dependencies.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-19 14:32:01 +01:00
Jo-Philipp Wich
2d9d57b9de build: rename .packagesubdirs to .packageauxvars
Subsequent commits will put more auxiliary information into this file,
such as the per-package ABI version, so rename the metadata script
subcommand and file names accordingly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-19 14:31:56 +01:00
Jo-Philipp Wich
797e5c1c48 packages: set more explicit ABI_VERSION values
In the case of upstream libraries, set the ABI_VERSION variable to the
soname value of the first version version after the last backwards
incompatible change.

For custom OpenWrt libraries, set the ABI_VERSION to the date of the
last Git commit doing backwards incompatible changes to the source,
such as changing function singatures or dropping exported symbols.

The soname values have been determined by either checking
https://abi-laboratory.pro/index.php?view=tracker or - in the case
of OpenWrt libraries - by carefully reviewing the changes made to
header files thorough the corresponding Git history.

In the future, the ABI_VERSION values must be bumped whenever the
library is updated to an incpompatible version but not with every
package update, in order to reduce the dependency churn in the
binary package repository.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-19 14:31:51 +01:00
Jo-Philipp Wich
1bd18f2b5c opkg: update to latest Git head
This update fixes some cosmetical issues and a number of segmentation
faults when parsing lists having Conflicts or Replaces tags.

d217daf libopkg: fix replacelist parsing and writing
9dd9a07 libopkg: fix segmentation fault when traversing conflicts
34571ba libopkg: consider provided packages in pkg_vec_mark_if_matches()
18740e6 opkg_download: print error when fork() fails
e3d7330 libopkg: don't print unresolved dependencies twice

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2019-01-19 14:31:46 +01:00
Mathias Kresin
f5e61350e7 ramips: fix firmware splitter for edimax based boards
Use the correct splitter for board with the edimax header.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-19 12:51:04 +01:00
Mathias Kresin
116d0f276d kernel: add DT binding support to the Edimax uImage parser
It allows specifying those parsers directly in the DT.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-19 12:51:04 +01:00
Rosy Song
27be78ef46 dnsmasq: allow building without tftp server support
It saves 2871 bytes on package size while 4 bytes on memory size.

Signed-off-by: Rosy Song <rosysong@rosinson.com>
2019-01-17 22:07:06 +01:00
Stijn Tintel
59e62809e6 kernel: remove upstreamed patch from 4.19
This patch applies cleanly, so it doesn't cause errors while rebasing
patches. It results in redifinition of inode_still_linked, causing build
to fail when ubifs is enabled. Drop the patch.

Fixes: a37098a2d0 ("kernel: bump 4.19 to 4.19.16")
Reported-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-01-17 10:45:31 +02:00
Stijn Tintel
f4ebd1ead0 kernel: drop old symbol from 4.19
CONFIG_LIRC_STAGING was removed in kernel 4.16.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-01-17 03:09:47 +02:00
Stijn Tintel
a37098a2d0 kernel: bump 4.19 to 4.19.16
Refresh patches.
Remove upstreamed patches:
- backport/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch
- backport/096-v4.20-netfilter-ipv6-Preserve-link-scope-traffic-original-.patch
- backport/424-v4.20-net-dsa-fix-88e6060-roaming.patch
- hack/100-mtd-rawnand-qcom-fix-memory-corruption-that-causes-p.patch
- pending/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch
Update patch that no longer applies:
- backport/343-netfilter-nft_flow_offload-handle-netdevice-events-f.patch

Compile-tested: mesongx
Runtime-tested: mesongx

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-01-17 03:04:13 +02:00
Hans Dedecker
76cc766521 odhcpd: fix onlink IA check (FS#2060)
0a36768 dhcpv6-ia: fix compiler warning
1893905 dhcpv6-ia: fix onlink IA check (FS#2060)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-16 23:01:05 +01:00
Kevin Darbyshire-Bryant
7541d30c9c dnsmasq: backport latest pre2.81 patches
f52bb5b fix previous commit
18eac67 Fix entries in /etc/hosts disabling static leases.
f8c77ed Fix removal of DHCP_CLIENT_MAC options from DHCPv6 relay replies.
4bf62f6 Tidy cache_blockdata_free()
9c0d445 Fix e7bfd556c079c8b5e7425aed44abc35925b24043 to actually work.
2896e24 Check for not(DS or DNSKEY) in is_outdated_cname_pointer()
a90f09d Fix crash freeing negative SRV cache entries.
5b99eae Cache SRV records.
2daca52 Fix typo in ra-param man page section.
2c59473 File logic bug in cache-marshalling code. Introduced a couple of commits back.
cc921df Remove nested struct/union in cache records and all_addr.
ab194ed Futher address union tidying.
65a01b7 Tidy address-union handling: move class into explicit argument.
bde4647 Tidy all_addr union, merge log and rcode fields.
e7bfd55 Alter DHCP address selection after DECLINE in consec-addr mode. Avoid offering the same address after a recieving a DECLINE message to stop an infinite protocol loop. This has long been done in default address allocation mode: this adds similar behaviour when allocaing addresses consecutively.

The most relevant fix for openwrt is 18eac67 (& my own local f52bb5b
which fixes a missing bracket silly) To quote the patch:

It is possible for a config entry to have one address family specified by a
dhcp-host directive and the other added from /etc/hosts. This is especially
common on OpenWrt because it uses odhcpd for DHCPv6 and IPv6 leases are
imported into dnsmasq via a hosts file.

To handle this case there need to be separate *_HOSTS flags for IPv4 and IPv6.
Otherwise when the hosts file is reloaded it will clear the CONFIG_ADDR(6) flag
which was set by the dhcp-host directive.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-01-16 15:39:54 +00:00
Koen Vandeputte
63a2ed3ba5 kernel: bump 4.9 to 4.9.150
Refreshed all patches.

Remove upstreamed:
- 096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch

Altered patches:
- 024-7-net-reorganize-struct-sock-for-better-data-locality.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-16 12:56:30 +01:00
Koen Vandeputte
5be22ef2fa kernel: bump 3.18 to 3.18.132
Refreshed all patches.

Compile-tested: adm5120
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-16 12:56:30 +01:00
Mathias Kresin
26a016731d firmware-utils: mksercommfw: overhaul image creation
Move the zip compression into a build recipe. Pad the image using the
existing build recipes as well to remove duplicate functionality

Change the code to append header and footer in two steps. Allow to use a
fixed filename as the netgear update image does.

Use a fixed timestamp within the zip archive to make the images
reproducible.

Due to the changes we are now compatible to the gnu89 c standard used by
default on the buildbots and we don't need to force a more recent
standard anymore.

Beside all changes, the footer still looks wrong in compare to the
netgear update image.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-15 19:11:54 +01:00
Mathias Kresin
18c9faa032 tools: zip: add option for reproducible archives
Add the option -mt/--mtime to pass a timestamp which is used as filedate
for the containing files.

So far, it isn't used for anything written to the extra fields,
therefore requires the -X (eXclude eXtra file attributes) parameter to
be effective.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-15 19:11:53 +01:00
Mathias Kresin
ad8c2d6099 tools: add zip utility
One image requires a zip compressed image, so add the zip util found in
the packages feed, and extend it with some useful debian patches.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-15 19:11:53 +01:00
Hans Dedecker
4029788ff3 odhcpd: update to latest git HEAD (FS#2020)
7abbed4 dhcpv6: add setting to choose IA_NA, IA_PD or both
dd1aefd router: add syslog tracing for skipped routes
0314d58 router: filter route information option
5e99738 router: make announcing DNS info configurable (FS#2020)
1fe77f3 router: check return code of odhcpd_get_interface_dns_addr()
8f49804 config: check for invalid DNS addresses

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-15 14:02:21 +01:00
Kevin Darbyshire-Bryant
6e104c63d6 kmod-sched-cake: bump to latest cake
331ac70 Correctly update parent qlen when splitting GSO packets
581967c Makefile: Hook into Kbuild/Kconfig infrastructure

The parent qlen change is relevant if using cake as a leaf qdisc,
the makefile is a no-op.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-01-14 13:33:49 +00:00
Kevin Darbyshire-Bryant
ba4fe412c4 elfutils: bump to 0.175
4ea9a2db164c Update upload-release.sh script and po files.
a01938d584b9 libelf: Mark both fsize and msize with const attribute.
c338a0541663 libebl: Don't update w, t and len unnecessarily in ebl_object_note_type_name.
422b549007f6 Prepare for 0.175
22ec8efc1dd8 elflint: Allow PT_GNU_EH_FRAME segment to match SHT_X86_64_UNWIND section.
cf10453f8252 libelf: Correctly setup alignment of SHF_COMPRESSED section data.
d3e6266754b9 strip: Also handle gnu compressed debug sections with --reloc-debug-sections
72e30c2e0cb4 Handle GNU Build Attribute ELF Notes.
7a3f6fe60b85 Recognize NT_VERSION notes.
cff53f1784c9 libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT and BPF_JSLE
ecbe3120cddb libdwelf: New function dwelf_elf_begin.
4b0342b85b5b backends: Add x86_64 section_type_name for SHT_X86_64_UNWIND.
825e48c4e942 Also find CFI in sections of type SHT_X86_64_UNWIND
4789e0fb92b0 libelf: Explicitly update section data after (de)compression.
1628254ba215 strip: Add --reloc-debug-sections-only option.
f2d59180b90b strip: Extract code to update shdrstrndx into new common function.
f6ae0ab9350e strip: Split out debug section relocation into separate helper functions.
b15ee95bcee4 strip: Always copy over any phdrs if there are any.
e574889d92b1 unstrip: Add ELF_CHECK to make sure gelf_getehdr () doesn't return NULL.
5199e15870e0 Recognize and parse GNU Property notes.
b75ff1bbd060 addr2line: Use elf_getshdrstrndx not Ehdr field to print section name.
35197ea4c43e readelf: Use shstrndx to lookup section names.
9a74c190a2b3 backends: ppc use define instead of const for size of dwarf_regs array.
72d023b35f36 readelf: Make sure readp is smaller than cieend in print_debug_frame_section.
dce0b3b63ba0 readelf: Make sure readp is smaller than cieend in print_debug_frame_section.
1e7c230b277b Check sh_entsize is not zero.
22d2d082d57a size: Handle recursive ELF ar files.
2b16a9be6993 arlib: Check that sh_entsize isn't zero.
4cdb0fd0d3b4 ar: Assume epoch if ar_date is bogus.
577511f66842 findtextrel: Check that sh_entsize isn't zero.
20f9de9b5f70 libdwfl: Sanity check partial core file data reads.
2f4a040fab52 readelf: Handle multiple .debug_macro sections and decode header flag.
eee4269e5315 unstrip: Renumber the group section indexes.
c06ab0bbb476 strip, unstrip: Handle SHT_GROUP correctly.
2876b3b648f6 Handle ADD/SUB relocations
69d6e67eee30 tests: backtrace-dwarf.c improve error handling in test framework.

Originally-produced--by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2019-01-14 13:32:38 +00:00
Stijn Tintel
8c6f00ef4f kernel: bump 4.14 to 4.14.93
Refresh patches.
Remove upstreamed patches:
- backport/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch
- pending/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch
- brcm2708/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch

Compile-tested: ar71xx, ath79, brcm2708/bcm27{08,10}, octeon, x86/64
Runtime-tested: ar71xx, ath79, brcm2708/bcm27{08,10}, octeon, x86/64

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-01-14 02:20:40 +02:00
Hans Dedecker
7a4075bd10 busybox: fix ALTERNATIVES alphabetical ordering
Commit 3f0eb71dae added ALTERNATIVES for wget but not in correct
alphabetical order; increase PKG_RELEASE as well.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-13 21:45:14 +01:00
Mathias Kresin
01e95dc0dc firmware-utils: mkdlinkfw: fix build
While we don't need the gnu99 option anymore, we still need to force the
c99 standard to fix the following build error on the build bots:

src/mkdlinkfw.c: In function 'find_auh_headers':
src/mkdlinkfw.c:267:3: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
   for (int i = 0; i < header_counter; i++) {
   ^
src/mkdlinkfw.c:267:3: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-13 19:28:54 +01:00
Mathias Kresin
6a3f8b8818 build: remove duplicate mksercomfw image recipe
Keep the ramips/mt76x8 copy, since it's only required for this target at
the moment.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-13 18:31:10 +01:00
Mathias Kresin
0e78af22d9 firmware-utils: mkdlinkfw: fix error handling
fread() doesn't set errno, ferror need to be used to check for errors.
While at it, check if we read the expect number of elements.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-13 18:31:10 +01:00
Mathias Kresin
e428b127e7 firmware-utils: mkdlinkfw: create reproducible header
Use the SOURCE_DATE_EPOCH environment variable if set instead of the
current time. The used timestamp matches the timestamp of the latest
commit this way and make the images reproducible.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-13 18:31:10 +01:00
Mathias Kresin
f4aa9d8839 firmware-utils: mkdlinkfw: cleanup code
Drop unused function and macros. With the cleanup the gnu extension
typeof isn't used any longer and the gnu99 compile flag can be dropped.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-13 18:31:10 +01:00
Hans Dedecker
055cdab2bb uclient: add ALTERNATIVES for wget
Don't symlink uclient-fetch anymore to /bin/wget but rather use
the ALTERNATIVES support for wget to install it as /usr/bin/wget.
Let uclient-fetch provide wget

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-13 18:27:28 +01:00
Hans Dedecker
3f0eb71dae busybox: add ALTERNATIVES for wget
Busybox wget applet conflicts with the version from uclient.
Fix this by using ALTERNATIVE support for wget in busybox.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-13 18:27:28 +01:00
Hauke Mehrtens
d560deb7f2 uboot-sunxi: Orange Pi Zero Plus: Fix SdCard detection
The Detection pin is at PF6 and not at PH13 like defined before. I
checked the schematics and now I am am not seeing this error message any
more:
Loading Environment from FAT... Card did not respond to voltage select!

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:35:14 +01:00
Zoltan HERPAI
7a53fb40ca uboot-sunxi: disable AXP209 on Olimex A13 Olinuxino
Disable the PMIC on Olimex A13 Olinuxino, as the SPL cannot set the
core voltage correctly, which causes the board to freeze later at
kernel if CPU throttling is enabled (see below). This will almost
certainly kill the VGA output (which requires LDO3 to be set), but
this is still a better option than to disable CPU throttling for
all Cortex-A8 based devices.

[    2.485632] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 384000 KHz
[    2.525698] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 432000 KHz

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-01-13 17:35:14 +01:00
Zoltan HERPAI
d605831068 uboot-sunxi: update Theobroma A31 Pangolin support
Drop removed pinctrl definitions from the i2c3 pin layout.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2019-01-13 17:35:14 +01:00
Hauke Mehrtens
95d4c7c24b arm-trusted-firmware-sunxi: Replace with official ARM version
Instead of using a fork of the ARM trusted firmware specifically for the
Allwinner SoCs, use the official version from ARM now, this version
supports the Allwinner SoCs now and the older ATF repository is
deprecated.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:35:14 +01:00
Hauke Mehrtens
4ed05b805b uboot-sunxi: Update to version 2018.11
This updates the uboot for the sunxi target to version 2018.11
The removed patches are applied upstream and not needed any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:35:14 +01:00
Hauke Mehrtens
900c6b1a42 sunxi: Add support for kernel 4.19
This adds supprot for kernel 4.19 to the sunxi target. The patches and
the configuration were copied from the kernel 4.14 patches folder and
adapted for kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:35:14 +01:00
Hauke Mehrtens
2eeb5d6aac sunxi: Refresh kernel 4.14 configuration
Refresh the sunxi kernel configuration without doing any intentional
changes.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:35:14 +01:00
Hauke Mehrtens
0057beab1b sunxi: Use kernel specific sub target configuration
To make it easier to support multiple kernel versions in parallel also
copy the sub target specific kernel configurations into kernel specific
files.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:20:07 +01:00
Hauke Mehrtens
48f81ee1d0 sunxi: Remove unneeded patches
In the device tree file the higher offsets of the reset controller are
not used, so this patch supporting higher bits is not needed.
The sunxi architecture switched to the simple reset controller with
kernel 4.19 and then this patch does not apply any more.
The sunxi target in OpenWrt is very close to mainline, so if the device
tree files from the mainline Linux kernel need this the mainline kernel
will get support for this.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:20:07 +01:00
Hauke Mehrtens
cfc9bde379 kernel/modules: Add missing config option
This configuration option was added in kernel 4.15 and is missing in the
kernel 4.19 configuration.

Fixes: ed2839ac41 ("kernel/modules: add kmod-pmbus-zl6100 module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 17:20:07 +01:00
Hauke Mehrtens
403d36ef3d malta: Add support for kernel 4.19
This adds a kernel configuration file for kernel 4.19 on malta.
CONFIG_POWER_RESET_PIIX4_POWEROFF and CONFIG_POWER_RESET_SYSCON were
activated because malta now uses this driver for reboot.

CONFIG_BLK_DEV_SR was also added because it was also added to the kernel
default configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 16:31:40 +01:00
Hauke Mehrtens
4ab689c137 malta: Refresh kernel 4.14 configuration
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 16:31:38 +01:00
Hauke Mehrtens
c54e4747be kernel: MIPS: Add CPU option reporting to /proc/cpuinfo
Many MIPS CPUs have optional CPU features which are not activates for
all CPU cores. Print the CPU options which are implemented in the core
in /proc/cpuinfo. This makes it possible to see what features are
supported and which are not supported. This should cover all standard
MIPS extensions, before it only printed information about the main MIPS
ASEs.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 16:24:50 +01:00
Hauke Mehrtens
c7102a7699 kernel/modules: Fix build of kmod-pmbus
This fixes two build problems introduced with the recently added new
kernel module package.

Fixes: ed2839ac41 ("kernel/modules: add kmod-pmbus-zl6100 module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-13 13:16:02 +01:00
Chuanhong Guo
bd03255ec4 generic: ar8216: ar8327: kill warnings
This fixed warnings caused by returning value in a void function

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-01-13 12:25:30 +01:00
David Bauer
97e4311fca mpc85xx: add support for Sophos RED 15w Rev.1
Hardware
========
CPU:  Freescale P1010 PowerPC
RAM:  128M DDR3
NAND: 128MiB
ETH:  RTL8211F SGMII PHY
      RTL8367B 5-port RGMII switch
      (not connected to SoC - unmanaged)
WiFi: SparkLan WPEA-121N
       - Atheros AR9382 2T2R abgn
USB:  1x USB 2.0
LED:  System, Router, Internet, Tunnel controllable
      LAN1-4, WAN, Power non-controllable
BTN:  None

Installation
============
1. Power on the device while attached to the Console port.

2. Halt the U-Boot by pressing Enter when prompted.

3. Set the correct bootcmd for booting OpenWRT:
 > setenv bootargs_owrt "setenv bootargs console=ttyS0,115200"
 > setenv bootcmd "run bootargs_owrt;
   nand read 0x1000000 0x300000 0x800000;
   bootm 0x1000000;"
 > saveenv

5. Rename OpenWRT initramfs image to 'kernel.bin' and place it in a
   TFTP server root-directory served on 192.168.1.2/24. Connect your
   computer to one of the LAN-ports.

4. Boot OpenWRT initramfs image with
 > run bootargs_owrt; tftpboot 0x1000000 192.168.1.2:kernel.bin;
   bootm 0x1000000;

6. (Optional)
   Make a Backup of 'sophos-os1', 'sophos-os2' and 'sophos-data' in case
   you ever want to go back to the vendor firmware.

7. Create Ubi Volume on mtd4 by executing
 > ubiformat /dev/mtd4 -y

8. Transfer OpenWRT sysupgrade image to the device via SCP and install it
   with
 > sysupgrade -n <openwrt-image-file>

Back to Stock
=============
If you want to go back to the stock firmware, here is the bootcmd of the
vendor firmware:
 > setenv bootargs console=ttyS0,115200 root=/dev/mtdblock5;
   nand read 0xc00000 0x00300000  0x100000;
   nand read 0x1000000 0x00400000 0x00800000;
   bootm 0x1000000 - 0xc00000

Set it via 'setenv' from the U-Boot shell and don't forget to save it
using 'saveenv'!

After this, boot the OpenWRT initramfs image just like you would for
installation. Write back the three vendor partitions using mtd. Reboot
the device afterwards.

Signed-off-by: David Bauer <mail@david-bauer.net>
[refresh and reorder patches]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-13 11:31:43 +01:00
Christian Lamparter
85be0f4c21 apm821xx: 4.14: sync config
This patch syncs the 4.14 kernel config to the
current generic configuration.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-13 11:31:43 +01:00
Pawel Dembicki
46d4c09bb6 mpc85xx: disable initramfs image in TL-WDR4900
Initramfs image isn't required for this device and regular
initramfs generation isn't work properly. It create not working
binaries.

This patch disable initramfs image for TL-WDR4900.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-01-13 11:31:43 +01:00
Pawel Dembicki
5de6aed42c mpc85xx: add support for Freescale (NXP) P2020RDB
This commit add initial support for Freescale (NXP) P2020RDB

Hardware:
SoC: P2020 2x1GHz
DRAM: 512-1GB DDR3
2 + 4 GBE (2 separate ports and four in VSC7385)
Flash: 16MB NOR, 32MB NAND, 16MB SPI-NOR
PCIE x1 and mPCIE x1
SD Reader

Interfaces:
GBE RJ45 x6
USB2.0 x1
UART x2
I2C x2
JTAG x1
SD x1
PCIE x2 (PCIE and mPCIE)

Flash instructions:
Place sysupgrade image to 0x80000 address in NOR.
Eg. (no brakelines in setenv command):

setenv 'firmware_flash tftpboot $loadaddr $firmwarefile;
 protect off $norfdtaddr +$filesize; erase $norfdtaddr +$filesize;
 cp.b $loadaddr $norfdtaddr $filesize; protect on $norfdtaddr +$filesize;
 cmp.b $loadaddr $norfdtaddr $filesize'
setenv firmwarefile firmware.bin
run firmware_flash

Boot (no brakeline in setenv command):
setenv bootcmd 'setenv bootargs root=/dev/mtdblock3 rw console=$consoledev,
$baudrate rootfstype=squashfs $othbootargs;
bootm $norfdtaddr'
saveenv
boot

Known issues:
-Switch is unmanaged (VSC 7385 is connected via eLBC, driver uses SPI)
-No SD reader support

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [refreshed patches]
2019-01-13 11:31:43 +01:00
Pawel Dembicki
ed2839ac41 kernel/modules: add kmod-pmbus-zl6100 module
This patch adds the kmod packaging for the Intersil / Zilker Labs
ZL6100 and compatible digital DC-DC controllers as well as the
core kernel module for the Power Management Bus.

Add:
kmod-pmbus-core
kmod-pmbus-zl6100

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2019-01-13 11:07:37 +01:00
Hauke Mehrtens
75fdf3ba01 x86: Add support for kernel 4.19
This adds initial support for kernel 4.19 to the x86 target.
The patches and the kernel configurations were copied from kernel 4.14
and then refreshed.

The legacy and the genode target will not support PAE any more because
they use a CPU type which does not support PAE, the generic sub target
still supports PAE.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-12 22:40:36 +01:00
Hauke Mehrtens
f6e0ecdceb x86: Refresh kernel 4.14 configuration
This refreshes the kernel configuration for kernel 4.14.
First this was run for the legacy target:
	make kernel_oldconfig
Then for all targets including the legacy target this was run:
	make kernel_oldconfig CONFIG_TARGET=subtarget
The option CONFIG_104_QUAD_8 was added to the generic configuration
because it would have been automatically removed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-12 22:40:12 +01:00
Hauke Mehrtens
0ea7160abe x86: Use kernel specific subtarget configurations
This makes it possible to use different sub target configurations for
kernel 4.19 for example.
To support kernel 4.9 and kernel 4.14 with the same configuration file
already needed some extra work this will not be needed for kernel 4.19
any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-12 22:39:41 +01:00
Hauke Mehrtens
bc89690f6e gdb: The signal definitions of musl and gdb collide
This fixes compilation of gdb on arm64.

The kernel defines "struct sigcontext" in asm/sigcontext.h and musl libc
defines it in signal.h, which collides.
Kernel 4.14 misses the definitions of struct user_sve_header so we still
have to use the aarch64-sve-linux-sigcontext.h header file which also
provides that and make sure aarch64-sve-linux-sigcontext.h does not
provide the same headers as the kernel or musl.

Fixes: FS#2040
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-12 22:38:50 +01:00
Hauke Mehrtens
6be064c788 bzip2: fix hardening build
Set the LDFLAGS otherwise it will not get the target hardening flags or
any other generic flags provided in the LDFLAGS

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-12 22:38:38 +01:00
Hans Dedecker
e42a227ee3 tools/firmware-utils: fix sysupgrade typo in mkdapimg2
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-12 19:47:25 +01:00
Hans Dedecker
7197115c25 tools/firmware-utils: fix sysupgrade typo in mkdapimg
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-12 19:44:35 +01:00
Hans Dedecker
4bd9d331e5 octeon: fix typo in platform.sh
Fix upgrade typo

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-12 19:40:13 +01:00
Daniel Engberg
e4088cb84b cryptodev-linux: Update to 1.10
Update cryptodev-linux to 1.10
Switch from git to codeload generated tarball

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-01-12 19:09:43 +01:00
Felix Fietkau
0e8d5ff0fc mt76: fix typo in version number
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-11 17:23:29 +01:00
Felix Fietkau
c5373a3f0c mt76: update to the latest version
58988a3 mt76: fix signedness of rx status signal field
bce700d mt7603: fix signal strength reporting on single-stream devices
148219d mt7603: fix checkpatch issues
2a092e2 mt7603: fix per-rate retry accounting
962152b mt7603: fix WMM TXOP limit configuration
24ec040 mt7603: fix BSSID configuration in AP mode
48fb011 mt7603: fix CF-End transmit rate when 11b stations are connected
9daa5ff mt76: make const array 'data' static, shrinks object size
7d4a95c mt76: dma: avoid indirect call in mt76_dma_tx_queue_skb
f84b008 mt76: fix tx status reporting for non-probing frames
8167074 Revert "mt7603: update firmware to 20161027164355"
2ad54b2 mt76: move wcid rssi ewma init to mt76 core
d77c861 mt76: fix rssi ewma tracking
eca96cd mt76: use proper name for __MT76x02_H macro
d1bc504 mt76: fix building without CONFIG_LEDS_CLASS
a946b78 mt76: add led support to mt76x0e driver

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-11 17:04:28 +01:00
Hans Dedecker
70ffcb947c odhcp6c: update to latest git HEAD
d2e247d odhcp6c: align further with RFC8415
ce83a23 dhcpv6: avoid parsing unncessary IAs
b079733 dhcpv6: set cnt to correct IOV enum
41494da dhcpv6: get rid of request_prefix
f7437e4 dhcpv6: sanitize option request list

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-11 15:26:06 +01:00
Rafał Miłecki
45ce9897c0 kernel: add bcma fix for subdevices DMA parameters
This fixes bgmac DMA allocations with kernel 4.19.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-11 07:33:56 +01:00
Rafał Miłecki
34696ce25e kernel: backport bcma patches that improve printing functions
Updated printing functions use dev_* helpers to provide more meaningful
messages.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-10 16:47:43 +01:00
Rafał Miłecki
ef1efa756e samba36: add package with hotplug.d script for auto sharing
The new samba36-hotplug package provides a hotplug.d script for the
"mount" subsystem. It automatically shares every mounted block device.

It works by updating /var/run/config/samba file which:
1) Is read by procd init script
2) Gets wiped on reboot providing a consistent state
3) Can be safely updated without flash wearing or conflicting with user
   changes being made in /etc/config/samba

Cc: Rosy Song <rosysong@rosinson.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-10 10:33:40 +01:00
Rafał Miłecki
5a59e2c059 samba36: append config from /var/run/config/ for runtime shares
This will allow automation/hotplug.d scripts to store runtime shares in
the /var/run/config/samba. It's useful e.g. for USB drives that user
wants to be automatically shared.

Using /var/run/config/ provides:
1) Automated cleaning on reboots
   It's important for consistency (to avoid sharing non-existing drives)
2) Safety for user non-commited changes
   Automated scripts should never call "uci [foo] commit" as that could
   flush incomplete config.

Another minor gain is avoiding flash wearing for runtime setup.

Cc: Rosy Song <rosysong@rosinson.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-10 10:33:40 +01:00
Rafał Miłecki
7175b1356e brcm47xx: backport MIPS fix adding struct device for the SoC
It's needed to:
1) Fix GPIOLIB_IRQCHIP as in 4.19 there is no bcma revert anymore
2) Fix /sys/devices/
3) Fix dma_zalloc_coherent() regression

It still needs a bcma change that will follow later.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-10 06:57:19 +01:00
Rafał Miłecki
94561333cd brcm47xx: backport a final/accepted Netgear WNDR3400v3 patch
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-10 06:35:57 +01:00
Rafał Miłecki
adc8b374e3 mac80211: brcmfmac: backport fixes from the 5.0-rc1
This fixes:
1) Getting STA info with newer firmwares
2) Getting DMI / UEFI / OF data
3) Possible memory corruption in firmware loading code

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-08 09:17:11 +01:00
Rafał Miłecki
df57d71a1a mac80211: brcmfmac: trivial patches rename to use v5.0
This matches Linus releasing 5.0-rc1 in place of 4.21-rc1.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-08 09:17:11 +01:00
Egor Mikhaylov
ff62e83211 bison: update to 3.2.4
Signed-off-by: Egor Mikhaylov <nagakamira@gmail.com>
2019-01-07 22:08:44 +01:00
Rafał Miłecki
529c95cc15 mac80211: brcmfmac: fix use-after-free & possible NULL pointer dereference
1) Using fwctx variable after brcmf_fw_request_done() was executed meant
   accessing freed memory.
2) Using fwctx->completion for the wait_for_completion_timeout() call
   could reuslt in NULL pointer dereference on fw loading error or if
   brcmf_fw_request_done() was executed quickly enough.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-07 17:13:59 +01:00
Koen Vandeputte
630d8b87a5 cns3xxx: use actual size reads for PCIe
upstream commit 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
reimplemented cns3xxx_pci_read_config() using pci_generic_config_read32(),
which preserved the property of only doing 32-bit reads.

It also replaced cns3xxx_pci_write_config() with pci_generic_config_write(),
so it changed writes from always being 32 bits to being the actual size,
which works just fine.

Due to:
- The documentation does not mention that only 32 bit access is allowed.
- Writes are already executed using the actual size
- Extensive testing shows that 8b, 16b and 32b reads work as intended

It makes perfectly sense to also swap 32 bit reading in favor of actual size.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-07 17:09:06 +01:00
Koen Vandeputte
2d4f09404d gdb: bump to 8.2.1
PR build/23516 (gdb build error under msys+mingw: strip can't handle gdb-add-index.exe)
PR build/23623 (install-strip fails)
PR rust/23626 (gdb crashes in upstream rust nil-enum test)
PR rust/23650 (rust field name access error mentions "foo")
PR gdb/23663 (gdb 8.1.1: undefined rpl_stat function with musl toolchains)
PR python/23669 (gdb.execute("show commands") doesn't work)
PR python/23714 (Command repetition stops working after gdb.execute)
PR gdb/23838 (8.2 regression for invalid -data-directory)
PR gdb/23974 ("info os" crash when specifying invalid object)
PR gdb/23999 (SYMBOL_LANGUAGE assertion failure on AIX)
PR gdb/24003 (Error when binary searching CUs for a specific DIE when using DWZ)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-07 17:09:06 +01:00
Koen Vandeputte
4ef4ca4581 toolchain/gdb: bump to 8.2.1
PR build/23516 (gdb build error under msys+mingw: strip can't handle gdb-add-index.exe)
PR build/23623 (install-strip fails)
PR rust/23626 (gdb crashes in upstream rust nil-enum test)
PR rust/23650 (rust field name access error mentions "foo")
PR gdb/23663 (gdb 8.1.1: undefined rpl_stat function with musl toolchains)
PR python/23669 (gdb.execute("show commands") doesn't work)
PR python/23714 (Command repetition stops working after gdb.execute)
PR gdb/23838 (8.2 regression for invalid -data-directory)
PR gdb/23974 ("info os" crash when specifying invalid object)
PR gdb/23999 (SYMBOL_LANGUAGE assertion failure on AIX)
PR gdb/24003 (Error when binary searching CUs for a specific DIE when using DWZ)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-07 17:09:06 +01:00
Koen Vandeputte
f56a4e809b kernel: bump 4.14 to 4.14.91
Refreshed all patches.

Removed upstreamed:
- 500-ubifs-Handle-re-linking-of-inodes-correctly-while-re.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-07 17:09:06 +01:00
Koen Vandeputte
30d518bf16 kernel: bump 4.9 to 4.9.148
Refreshed all patches.

Altered patches:
- 902-debloat_proc.patch

Removed upstreamed:
- 424-v4.20-net-dsa-fix-88e6060-roaming.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-07 17:09:06 +01:00
Koen Vandeputte
a18f68ff30 kernel: bump 3.18 to 3.18.131
Refreshed all patches.

Altered patches:
- 902-debloat_proc.patch

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-01-07 17:09:06 +01:00
John Crispin
93c35bfa21 ramips: whitespace cleanup inside hnat driver
Signed-off-by: John Crispin <john@phrozen.org>
2019-01-07 15:45:51 +01:00
HsiuWen Yen
6b9bdbd493 ramips: add two-way hashing scheme for MT7621
Sometimes the tuples might be hashed to the same FOE entry.
When this hash collision problem occurs, some of the
connections will not be bound and consequently the CPU
idle rate cannot reach 100%. Therefore, two-way hashing
is adopted to alleviate this problem.

Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
2019-01-07 15:40:51 +01:00
Hans Dedecker
b3664bc702 glibc: update to latest 2.27 commit (BZ #24018)
68c2930a56 NEWS: add entries for bugs 23275, 23861, and 23907
766e8fb932 intl: Do not return NULL on asprintf failure in gettext [BZ #24018]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-07 15:16:12 +01:00
Felix Fietkau
488af51f81 mac80211: add ABI_VERSION to fix rebuild of dependent packages after upgrades
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-01-06 21:48:11 +01:00
David Bauer
634c733065 ipq40xx: copy Fritz4040 UBoot to STAGING_DIR_IMAGE
Copy U-Boot to STAGING_DIR_IMAGE (and append it to the EVA-image from
there) to fix image generation using the image-builder.

Also remove the bootloader from DEVICE_PACKAGES and instead use the
BUILD_DEVICES directive from within the U-Boot makefile.

This fixes eva-image generation using the OpenWRT image-builder.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-06 12:26:12 +01:00
Christian Lamparter
bbe7ad5a2f mpc85xx: 4.19: refresh kernel config
This patch syncs the 4.19 kernel config to the
current generic configuration.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-05 23:36:39 +01:00
Christian Lamparter
32420fc6b9 mpc85xx: 4.14: refresh kernel config
This patch syncs the 4.14 kernel config to the
current generic configuration.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-05 23:36:39 +01:00
Robert Marko
bba1428274 ipq40xx: 4.14: Sync kernel config
This patch syncs the 4.14 kernel config to the
current generic configuration.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-05 22:23:41 +01:00
Robert Marko
0c1f1dab59 ipq40xx: 4.19: Sync kernel config
This patch syncs the 4.19 kernel config since the
KERNEL_STACKPROTECTOR and compiler options are
now part of the 4.19 generic config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-05 22:23:41 +01:00
Christian Lamparter
32e953b821 ipq40xx: fix 4.14 ImageBuilder build woes
Robert Marko reported an issue with the current imagebuilder images:
"Imagebuilder includes the new kmod-usb-dwc3-qcom USB driver
package by default even on 4.14. [...] the current state imagebuilder
can't build images under 4.14 at all as the kmod-usb-dwc3-qcom does
not exist in it so it throws and error and exits."

This patch reverts the Makefile to just kmod-usb-dwc3-of-simple and
once the switch to 4.19 is done. It also removes the
kmod-usb-phy-qcom-dwc3 as they only contain the usb-phy drivers for
the ipq806x generation.

Dynamic switching based on the KERNEL_PATCHVER is possible by using:
   $(if $(filter 4.14,$(KERNEL_PATCHVER)),kmod-usb-dwc3-of-simple,kmod-usb-dwc3-qcom)
though it

Fixes: 13321fa142 ("ipq40xx: Use kmod-usb-dwc3-qcom by default")
Fixes: 6e58fb2c33 ("ipq40xx: kmod-usb-dwc3-of-simple vs kmod-usb-dwc3-qcom")
Reported-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-05 22:23:10 +01:00
Christian Lamparter
3801f8a7f7 apm821xx: MBL: fix kernel/apollo3g.dtb artifact build
The name for the artifact should have been apollo3g.dtb
and not kernel.dtb.

Fixes: 908bdbfce9f9 ("apm821xx: utilize build ARTIFACTs")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-05 22:09:08 +01:00
Pawel Dembicki
36d45e4cdc mpc85xx: add kernel 4.19 support
Copied config from 4.14

Add patches for 4.19

Drop patch 103-powerpc-fix-build-cross32ar.patch,
because issue was fixed in upstream.

Compiled: generic p1020
Compiled and tested: (unofficial) P2020, TP-Link TL-WDR4900

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-05 22:09:08 +01:00
Pawel Dembicki
0fbd3d23aa kernel: 4.19: kmod-ptp-gianfar follow upstream changes
This patch deprecates the kmod-ptp-gianfar package and
introduces kmod-ptp-qoriq for 4.19+ in its place. This
has become necessary due to the linux kernel commit
ceefc71d4c05 ("ptp: rework gianfar_ptp as QorIQ common PTP driver")

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-05 22:09:07 +01:00
Pawel Dembicki
576c69938b mpc85xx: tl-wdr4900-v1: convert to mtdsplit image
Currently, the image creation process for the TP-Link tl-wdr4900-v1
needs a fixed sized kernel and places the rootfs partition at a
fixed offset. With the upcoming move to 4.19 the kernel will no
longer fit into the existing allocated space for the kernel
partition.

This patch converts the device to utilize the established
tplink,firmware mtdsplitter, which can deal with a dynamic
kernel/rootfs size.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-05 21:59:52 +01:00
David Bauer
c8115167f9 ath79: add support for devolo WiFi pro 1200i
Hardware
--------
CPU:   Qualcomm Atheros QCA9558
RAM:   128M DDR2
FLASH: 16MiB
ETH:   1x Atheros AR8035 (PoE in)
WiFi2: QCA9558 2T2R
WiFi5: QCA9880 2T2R
BTN:   1x Reset
LED:   1x LED blue
       1x LED red
BEEP:  1x GPIO attached piezo beeper
UART:  3.3V GND TX RX (115200-N-8) (3.3V is square pad)
       Header is located next to reset-button

Installation
------------
Make sure you set a password for the root user as prompted on first
setup!

1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password the one set in the web interface.

2. Install OpenWRT with

> sysupgrade -n -F /tmp/<openwrt-image-name>

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-05 21:55:22 +01:00
David Bauer
8d68be8057 ath79: add support for devolo WiFi pro 1750i
Hardware
--------
CPU:   Qualcomm Atheros QCA9558
RAM:   128M DDR2
FLASH: 16MiB
ETH:   1x Atheros AR8035 (PoE in)
WiFi2: QCA9558 3T3R
WiFi5: QCA9880 3T3R
BTN:   1x Reset
LED:   1x LED blue
       1x LED red
BEEP:  1x GPIO attached piezo beeper
UART:  3.3V GND TX RX (115200-N-8) (3.3V is square pad)
       Header is located next to reset-button

Installation
------------
Make sure you set a password for the root user as prompted on first
setup!

1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password the one set in the web interface.

2. Install OpenWRT with

> sysupgrade -n -F /tmp/<openwrt-image-name>

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-01-05 21:55:22 +01:00
Anton Arapov
6ba58b7b02 ramips: cleanup the RB750Gr3 support
Always enable the pwr led and use the usr led for boot status indication.

Rename nodes in the dts, to match what is recommend in the devicetree
specification.

Increase the maximum spi frequency to 20MHz and drop the m25p,chunked-io
which isn't required on mt7621.

Use the BTN_0 keycode for the mode button. This board doesn't have any
wireless.

Use a more descriptive label for the reset button and the GPIO enabling
the usb vcc supply.

Use the beeper kernel module for the buzzer.

Fix the pinmux to switch only pins used as GPIOs to the GPIO function.
Add support for the PoE enable GPIO to the userspace. The PoE power
status can be read via GPIO7. Since OpenWrt doesn't have support for
reading inputs from userspace, prepare only the pinmux for the GPIO.

Signed-off-by: Anton Arapov <arapov@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-05 12:28:22 +01:00
Anton Arapov
52f2d7d2a9 ramips: add RB750Gr3 native support
This patch adds support of MikroTik RouterBOARD 750Gr3, without the need
to reflashing the bootloader.

Installation through RouterBoot follows the usual MikroTik method
https://openwrt.org/toh/mikrotik/common

Since the image isn't compatible with RouterBOARD 750Gr3 installations
which have replaced the bootloader, the former used userspace boardname
is not added to the SUPPORTED_DEVICES, to prevent a brick while trying
to upgrade to the image with native support.

Signed-off-by: Anton Arapov <arapov@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2019-01-05 12:28:22 +01:00
Daniel F. Dickinson
a54129d8aa busybox: Add ALTERNATIVES for findutils
Currently busybox find and xargs conflict with the versions from
findutils package.  Fix this by using ALTERNATIVES in busybox
and the related findutils (from packages feed) commit.

The conflict is due to the binaries being in the the same place
in rootfs and opkg not being happy about that.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2019-01-03 22:24:10 +01:00
Petr Štetiar
08ef53d2fb kernel: Fix kmod-w1 dependency on hwmon-core for 4.19
kmod-w1 depends on kmod-hwmon-core since Linux 4.14

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-03 18:05:47 +01:00
Petr Štetiar
9d11726d6c kernel: Fix rtc-ds1307 dependency on hwmon-core for 4.19
It seems, that since Linux 4.18-rc1 rtc-ds1307 depends on hwmon-core.

 commit 6b583a64fd1e019fd01626b46892ebf2361951c5
 Author: Heiner Kallweit <hkallweit1@gmail.com>
 Date:   Wed Sep 27 22:41:26 2017 +0200

    rtc: ds1307: simplify hwmon config

    We don't have to define an extra config symbol, IS_REACHABLE does
    what we need. And having this config symbol just to save the few
    bytes of hwmon support on non-DS3231 chips isn't worth it IMO
    (especially as the symbol is set per default).

While at it, use the same dependency check for `kmod-regmap` as well, so
it's future proof as well.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-01-03 18:05:47 +01:00
Hans Dedecker
fd5f0606fd firewall: update to latest git HEAD
70f8785 zones: add zone identifying local traffic in raw OUTPUT chain
6920de7 utils: Free args in __fw3_command_pipe()
6ba9105 options: redirects: Fix possible buffer overflows

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-03 17:09:51 +01:00
Paul Wassi
eb1887be93 ath79: merge cases in 02_network
Merge some duplicate cases in /etc/board.d/02_network

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-01-02 22:36:27 +01:00
Sven Eckelmann
1afe3d8443 build: Drop user/group ID/name from sysupgrade.tar
Tar will automatically record the user/group ID and name for
files/directories. This reduces the reproducibility of the sysupgrade.tar
because most of the people don't use the same username as the OpenWrt
buildserver.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-01-02 22:36:17 +01:00
Sven Eckelmann
894bcf59dc build: Use stable file ordering in sysupgrade.tar
The file ordering in the current sysupgrade depends on the order of file in
a filesystem. This is often already in a sane (alphabetical order) but this
is not always the case. For example, the OpenWrt build servers return a
different ordering.

This breaks the reproducibility of the sysupgrade tarballs significantly
and also resulted in images which cannot be used for upgrades on devices
like the OpenMesh A42/A62.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-01-02 22:36:16 +01:00
shanpo
15f6351ea3 uboot-envtools: Add domywifi dw33d support
Signed-off-by: shanpo <jwdsccd@gmail.com>
2019-01-02 22:24:52 +01:00
Ibrahim Tachijian
eb054714b0 uboot-envtools: ipq40xx: Configuration for GL.iNet GL-B1300
This commit adds the nescessary settings to allow reading the uboot environment variables on the GL.iNet GL-B1300 board.

Signed-off-by: Ibrahim Tachijian <barhom@netsat.se>
2019-01-02 22:24:49 +01:00
Alberto Bursi
9c4f903999 x86: enable kmod-bnx2 on 64-bit by default
Gigabit ethernet adapters using BCM5706/5708/5709/5716 chipset are
common on servers and as easy/cheap to get as Intel based ones.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2019-01-02 22:12:19 +01:00
Roger Pueyo Centelles
359f5e5390 kernel: mtd: add support for EN25QH64 in spi-nor.c
The Eon EN25QH64 is a 64 Mbit SPI NOR flash memory chip. Its 32, 128 and
256 Mbits siblings are supported upstream but this particular size wasn't.
This commit includes patches for kernels 4.14 and 4.19.

Tested on a COMFAST CF-E120A v3 (ath79).

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2019-01-02 22:12:19 +01:00
Hauke Mehrtens
99956528df hostapd: update to version 2018-12-02 (2.7)
This updates hostapd to version the git version from 2018-12-02 which
matches the 2.7 release.

The removed patches were are already available in the upstream code, one
additional backport is needed to fix a compile problem.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2019-01-02 15:47:13 +01:00
Rafał Miłecki
5c4277ec37 fstools: update to the latest master branch
This is a big block(d) cleanup with new feature of generating "mount"
hotplug.d events.

It's an important update for those who were using mountd in the
pre-18.06 releases. Due to the mountd being replaced with blockd a
support for "mountd" hotplug.d events has been lost. It broke all kind
of shell scripts that were e.g. managing services depending on an
external USB drive availability.

This basically (re-)adds support for calling /etc/hotplug.d/mount/
scripts with ACTION ("add" or "remove") and DEVICE set.

af93f4b block(d): improve hotplug.d "mount" events for the autofs
3bb3352 blockd: unmount device explicitly when it disappears
28753b3 block: remove target directory after unmounting
c8c7ca5 block: cleanup handling "start" action of the "autofs" command
f1bb762 block: make blockd_notify() return an int instead of void
71c2bde block: generate hotplug.d mount events
30f5096 block: validate amount of arguments for the "autofs" command
dc6a462 blockd: don't reparse blob msg in the vlist callbacks
f6a9686 blockd: don't unmount device when removing it from the list
1913fea block: don't duplicate unmounting code in the mount_action()
6b445fa block: make umount_device() function more generic
a778468 block: don't duplicate mounting code in the mount_device()
5dc631d block: simplify code picking mount target directory
2971779 block: move blockd_notify() call out of the conditional blocks
b86bd6e block: fix formatting & indent in the mount_device()
e12c0d6 fstools: use EXIT_FAILURE when indicating error on exit
091aa3d fstools: guard usage of WEXITSTATUS

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-01-02 07:21:39 +01:00
Hans Dedecker
e9e63c5a9a glibc: update to latest 2.27 commit (BZ #24027, BZ #23927)
3981fc3453 malloc: Always call memcpy in _int_realloc [BZ #24027]
f6d0e8c36f Fix rwlock stall with PREFER_WRITER_NONRECURSIVE_NP (bug 23861)
2794474c65 powerpc: Add missing CFI register information (bug #23614)
d8ca7a0c71 Fix _dl_profile_fixup data-dependency issue (Bug 23690)
f1e211096b inet/tst-if_index-long: New test case for CVE-2018-19591 [BZ #23927]
4e9f34e54f support: Implement <support/descriptors.h> to track file descriptors
e75481a7a7 support: Close original descriptors in support_capture_subprocess
0f79dc0be3 support_quote_string: Do not use str parameter name
6b2dd53aa0 support: Implement support_quote_string
50477165b9 malloc: Add another test for tcache double free check.
4b246928bd malloc: tcache double free check

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2019-01-01 22:31:43 +01:00
Christoph Krapp
59b99e1924 ath79: align GL-AR750S boardname to other GL.iNet devices
As the official device name is GL-AR750S, rename the board accordingly.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2019-01-01 19:42:41 +01:00
Christian Lamparter
257de1b01f apm821xx: sata: boot-part feature integration
This patch adds the boot-part feature to the apm82181 sata target.
This makes it possible to configure the boot partition size with
the generic CONFIG_TARGET_KERNEL_PARTSIZE symbol.

Please note: For people using custom images: Just like with
CONFIG_TARGET_ROOTFS_PARTSIZE changing the value can cause
sysupgrade to repartition the device!

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-01 16:39:59 +01:00
Christian Lamparter
7d009d8e6a apm821xx: use bin file extension for sysupgrade-tar images
Use the file extension bin for sysupgrade-tar images with
metadata to unify the file extension across the target/tree.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-01 16:39:59 +01:00
Christian Lamparter
2271967f57 apm821xx: utilize build ARTIFACTs
The exported kernel dtbs can be build as artifacts.
This way, the MyBook Live's DTB is not generated twice.

While at it, give the artifacts their proper name.
For the wndr4700 use the "device-tree" partition name and
for the MyBook Live: "apollo3g.dtb" to match the mbl_boot.scr.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-01 16:39:59 +01:00
INAGAKI Hiroshi
51fe956c4f ipq806x: add support for Buffalo WXR-2533DHP
Buffalo WXR-2533DHP is a 2.4/5 GHz band 11ac router, based on Qualcomm
IPQ8064.

The U-Boot on WXR-2533DHP employs a complicated dual firmware
protection scheme against corruptions of the kernel and rootfs
images. See the notes in buffalo.sh for details.

specifications:

- Qualcomm IPQ8064 (384 - 1,400 MHz, 2C2T)
- 512 MB of RAM (DDR3)
- 256 MB of Flash (NAND)
- 4T4R 2.4/5 GHz Wlan (QCA9980)
- 5x 10/100/1000 Mbps Ethernet
- 10x LEDs, 8x keys (6x buttons, 2x slide-switches)
- 2x USB 3.0 Type-A
- 12VDC/4A AC Adapter
- UART through-hole on PCB
  - J3: Vcc, GND, TX, RX from USB port side
  - 115200n8

Boot instructions for the initramfs image:

1. Prepare the TFTP server with the initramfs image renamed to
   "wxr2300dhp-initramfs.uImage" and IP address "192.168.11.10".
2. Press the "AOSS" button while powering on the WXR-2533DHP.
3. Wait until the "Wireless" LED flashes before releasing the AOSS button.
   The WXR-2533DHP will grab the image from TFTP server and will boot it.

Flashing instructions:

To persistently write the firmware, flash an openwrt sysupgrade image
from inside the initramfs, for example transfer
via `scp <sysupgrade> root@192.168.1.1:/tmp` and flash on the device
with `sysupgrade -n /tmp/<sysupgrade>`. Then wait ~120 seconds to
let it finish the flashing process.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded message]
2019-01-01 16:39:59 +01:00
INAGAKI Hiroshi
7e9b93fb1b base-files: allow non-standard rootfs volume name in UBI in sysupgrade
This commit allows to use non-standard UBI volume name as the rootfs
volume in sysupgrade.

ex.:
  The U-Boot on Buffalo WXR-2533DHP checks existence and checksum of
  "ubi_rootfs" volume when booting, so this name is required.

OpenWrt currently provides several patches:

490-ubi-auto-attach-mtd-device-named-ubi-or-data-on-boot.patch
491-ubi-auto-create-ubiblock-device-for-rootfs.patch
492-try-auto-mounting-ubi0-rootfs-in-init-do_mounts.c.patch

to facilitate ubi rootfs automount. However the upstream kernel
also supports the means of booting from a fully custom ubi
partition name and ubi volume name via bootargs/kernel's cmdline
parameters:

ubi.mtd=mtd_partition_name
ubi.block=rootfs_volume_name
root=/dev/ubiblock$X_$Y

For more information and examples visit the wiki over at linux-mtd:
<http://www.linux-mtd.infradead.org/faq/ubifs.html>
<http://www.linux-mtd.infradead.org/doc/ubi.html>

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-01 16:38:20 +01:00
INAGAKI Hiroshi
250f5ec139 ipq806x: add ramdisk feature
This commits adds the "ramdisk" feature to ipq806x target. The
main driving force behind this decision is to facilitate the
installation of OpenWrt on some locked IPQ806x devices.

Examples:

- NEC Aterm WG2600HP

  The U-Boot on WG2600HP is protected with a password which prevents
  users from gaining access to the u-boot prompt in order to install
  the images from there.

  Therefore, on this device, installing OpenWrt by the user involves
  changing the bootcmd as follows so that WG2600HP downloads and
  executes initramfs image from TFTP server.

  ex.:
    bootcmd="ping ${serverip} && tftpboot 0x44000000 wg2600hp-initramfs.bin; bootipq"

- Buffalo WXR-2533DHP

  The U-Boot on WXR-2533DHP has built-in firmware recovery mode.
  It's activated by holding the "AOSS" button during boot. This
  will trigger the device to download the firmware from an TFTP
  server and booting from it. By using this, the user  can the
  install OpenWrt firmware without having access to the UART
  console.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [reworded commit]
2019-01-01 15:40:13 +01:00
Christian Lamparter
6734753ef4 kernel: Add missing symbols to 4.19
Tested with apm82181 and ipq40xx minimal image versions.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-01 15:40:13 +01:00
Hannu Nyman
9b9274342c busybox: update to 1.30.0
Update busybox to 1.30.0.
Refresh patches.
Leave new features disabled by default.

Config refreshed via:

  cd package/utils/busybox/config/
  ../convert_menuconfig.pl ../../../../build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/busybox-1.30.0

  make package/busybox/compile

  cd package/utils/busybox
  ./convert_defaults.pl < ../../../build_dir/target-arm_cortex-a15+neon-vfpv4_musl_eabi/busybox-1.30.0/.config > Config-defaults.in

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2019-01-01 14:10:47 +01:00
Paul Wassi
54e3ee0215 ath79: fix case statement in 01_leds
Fix a missing 'end-of-case' recently introduced in 01_leds

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2019-01-01 01:38:51 +01:00
Mathias Kresin
8c485fbb25 ath79: rework elecom-header recipe
Replace the code with a more readable version. Rename the recipe
to reflect the real usecase.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-31 16:48:49 +01:00
Paul Wassi
28a5674e33 treewide: fix spaces vs. tabs
Fix spaces vs. tabs issues in ath79 and ramips.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 16:37:20 +01:00
Rosy Song
1c39dcc2bb ath79: tweak the position of factory partition for wr818
The 'factory' partition will move to 0x50000-0x60000 in 2019. As
the webserver in bootloader is compatible with different mtdlayout,
all the users still can upgrade firmware whatever on ath79 or ar71xx.

Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-12-31 16:37:09 +01:00
Roger Pueyo Centelles
3dfc07d186 ath79: add support for COMFAST CF-E110N
This patch adds support for the COMFAST CF-E110N, an outdoor wireless
CPE with two Ethernet ports and a 802.11bgn radio.

Specifications:

 - 650/400/216 MHz (CPU/DDR/AHB)
 - 2x 10/100 Mbps Ethernet, both with PoE-in support
 - 64 MB of RAM (DDR2)
 - 16 MB of FLASH
 - 2T2R 2.4 GHz, up to 26 dBm
 - 11 dBi built-in antenna
 - POWER/LAN/WAN/WLAN green LEDs
 - 4x RSSI LEDs (2x red, 2x green)
 - UART (115200 8N1) and GPIO (J9) headers on PCB

Flashing instructions:

 The original firmware is based on OpenWrt so a sysupgrade image can be
 installed via the stock web GUI. Settings from the original firmware
 will be saved and restored on the new want, so a factory reset will be
 needed: once the new firmware is flashed, perform the factory reset by
 pushing the reset button several times during the boot process, while the
 WAN LED flashes, until it starts flashing quicker.

 The U-boot bootloader contains a recovery HTTP server to upload the
 firmware. Push the reset button while powering the device on and keep it
 pressed for >10 seconds. The recovery page will be at http://192.168.1.1

Notes:

 The device is advertised, sold and labeled as "CF-E110N", but the
 bootloader and the stock firmware identify it as "v2".

Acknowledgments:

 Petr Štetiar <ynezz@true.cz>
 Sebastian Kemper <sebastian_ml@gmx.net>
 Chuanhong Guo <gch981213@gmail.com>

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
[drop unused labels from devicetree source file]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-31 16:25:11 +01:00
Georgi Vlaev
d03aae1a09 ath79: add support for TP-Link Archer C6 v2
This patch adds support for TP-Link Archer C6 v2 (EU)

Hardware specification:
- SOC: Qualcomm QCA9563 @ 775MHz
- Flash: GigaDevice GD25Q64CSIG (8MiB)
- RAM: Zentel A3R1GE40JBF (128 MiB DDR2)
- Ethernet: Qualcomm QCA8337N: 4x 1Gbps LAN + 1x 1Gbps WAN
- Wireless:
  - 2.4GHz (bgn) QCA9563 integrated (3x3)
  - 5GHz (ac) Qualcomm QCA9886 (2x2)
- Button: 1x power, 1x reset, 1x wps
- LED: 6x LEDs: power, wlan2g, wlan5g, lan, wan, wps
- UART: There's no UART header on the board

Flash instructions:

Upload
openwrt-ath79-generic-tplink_archer-c6-v2-squashfs-factory.bin
via the router Web interface.

Flash instruction using tftp recovery:

1. Connect the computer to one of the LAN ports of the router
2. Set the computer IP to 192.168.0.66
3. Start a tftp server with the OpenWrt factory image in the
   tftp root directory renamed to ArcherC6v2_tp_recovery.bin.
4. Connect power cable to router, press and hold the reset
   button and turn the router on
5. Keep the reset button pressed until the WPS LED lights up
6. Wait ~150 seconds to complete flashing

According to the GPL source the non-EU variant has different
GPIOs assigned to some of the LEDs and buttons. The flash
layout might be different as well. The wikidevi entry for
Archer A6/C6 assumes they are identical.

Signed-off-by: Georgi Vlaev <georgi.vlaev@gmail.com>
2018-12-31 16:25:11 +01:00
Guan-Hong Lin
9ebb44aef4 ath79: add support for EnGenius EWS511AP
EnGenius EWS511AP is a wireless managed wall AP with PoE support,
based on Qualcomm/Atheros QCA9531(Honeybee) + QCA9887.

Short specification:

- 128MB of RAM
- 16 MB of SPI FLASH
- 2T2R 2.4 GHz (QCA9531), 802.11b/g/n
- 1T1R 5 GHz (QCA9887), 802.11ac/n/a
- 2x 10/100 Mbps Ethernet (one port with PoE support)
- 1x Power LED, 2x LAN LEDs, 1x WLAN 2.4G LED, 1x WLAN 5G LED
- 1x RESET button
- built-in watchdog chipset

Flash instruction:

From EnGenius firmware to OpenWrt firmware:

Original firmware is based on QSDK.
Use sysupgrade firmware directly in vendor GUI.
Reset to factory default is necessary.

From OpenWrt firmware to EnGenius firmware:

1. Setup a TFTP server on your computer and configure static IP to 192.168.99.8
   Put the OpenWrt firmware in the root directory on your computer.
2. Power up EWS511AP. Press 4 and then press any key to enter u-boot.
3. Download OpenWrt firmware
   (ath)> tftpboot 0x80060000 ${dir}"openwrt-ath79-generic-engenius_ews511ap-squashfs-sysupgrade.bin"
4. Flash the firmware
   (ath)> erase 0x9f060000 +f50000
   (ath)> cp.b $fileaddr 0x9f060000 $filesize
5. Reboot
   (ath)> reset

Signed-off-by: Guan-Hong Lin <GH.Lin@senao.com>
2018-12-31 16:25:09 +01:00
Paul Wassi
48745221a8 ath79: add status LED on GL.iNet AR300M
This adds the triggers for the status LED of this device.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 14:24:55 +01:00
Paul Wassi
6e78d546d1 ath79: fix boardname of GL.iNet GL-AR300M
This device is called GL-AR300M, therefore rename the board(s)
to 'gl-ar300m-nor' and 'gl-ar300m-nand'

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
[change boardname in uboot envtools as well, don't use wildcards for
boardname]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-31 14:24:21 +01:00
Paul Wassi
cdbf2de777 ath79: Add support for TP-Link WR810N
Device specifications given in b23b0fb28b

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 14:18:19 +01:00
Paul Wassi
c2ecec07cc ath79: Add GL.iNet AR150 LED triggers
When switching from ar71xx to ath79 the default netdev LED
triggers for LAN and WAN got lost.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 14:05:26 +01:00
Paul Wassi
8ba76d6e74 ath79: fix boardname of GL.iNet GL-AR150
This device is called GL-AR150, therefore rename the board
to 'gl-ar150'

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 14:05:26 +01:00
INAGAKI Hiroshi
caf306ce91 ath79: add support for ELECOM WRC-1750GHBK2-I/C
ELECOM WRC-1750GHBK2-I/WRC-1750GHBK2-C are 2.4/5 GHz band 11ac
routers, based on Qualcomm Atheros QCA9563.

This commit also includes small fix; use "0x0x03000101" as pll_1000
instead of "0x03000000".

Specification:

- SoC:      Qualcom Atheros QCA9563
- RAM:      128 MB (DDR2)
- Flash:    16 MB (SPI-NOR)
- WLAN:     2.4/5 GHz
  - 2.4 GHz: 2T2R (SoC internal)
  - 5 GHz:   3T3R (QCA9880)
- Ethernet: 10/100/1000 Mbps
- LED/key:  4x/3x (2x buttons, 1x slide-switch)
- UART:     through-hole on PCB
  - Vcc, RX, GND, TX from switch (QCA8337N) side
  - 115200n8

Flash instruction using factory image:

1. Boot WRC-1750GHBK2-I/C normaly
2. Access to "http://192.168.2.1/" and open firmware upgrade page
("ファームウェア更新 手動更新(アップデート)")
3. Select the OpenWrt factory image and click apply ("適用") button
to perform firmware update
4. On the (initramfs) factory image, perform sysupgrade with
squashfs-sysupgrade image
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-31 21:38:53 +09:00
Paul Wassi
ab12913676 ath79: Fix UBNT Unifi AC LEDs
Both LEDs on these devices are ACTIVE_HIGH, change back to what
it is on ar71xx.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 13:28:31 +01:00
Paul Wassi
31dc0fbca3 ath79: Fix system LED on TP-Link WR740/741 v4
The system LED on these devices is ACTIVE_LOW, change back to what
it is on ar71xx.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-12-31 13:28:31 +01:00
Antonio Silverio
9601d94138 ath79: add support for TP-Link TL-WR841N/ND v8
CPU: Atheros AR9341 535MHz
RAM: 32MB
FLASH: 4MiB
PORTS: 4 Port 100/10 Switch, 1 Port 100/10 Wan
WiFi: Atheros AR9341 2x2:2 bgn
LED: Power (static on), LAN (controlled by Switch), WAN, SYS, WiFi, RFKill
BTN: WPS, WiFi, Reset

Installation:
Upload the factory image via the vendor-GUI.

Signed-off-by: Antonio Silverio <menion@gmail.com>
[resolve merge conflicts, squash commits, fix commit title, remove
default default off led properties, mark sysupgrade image compatible
with the ar71xx version of the board, drop blank lines from dts]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-31 13:28:31 +01:00
David Bauer
98f826fdc0 ath79: use caldata patching for Archer C58/C59
With this commit the TP-Link Archer C58 and Archer C59 use caldata
patching in order to set the correct 5GHz MAC-address.

Tested on TP-Link Archer C59 v1.

For more details see commit 330965b.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-31 13:28:31 +01:00
Christoph Krapp
af28d8a539 ath79: add support for GL.iNet GL-AR750S
Right now this patch adds nor image generation only. NAND image
generation is not supportet at the moment.

Furtheremore support for the MicroSD port is not implemented as of now.

Specification:
- SOC: QCA9563 (775MHz)
- Flash: 16 MiB (W25Q128FVSG)
- RAM: 128 MiB DDR2
- Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
- Wireless: 2.4GHz (bgn) and 5GHz (ac)
- USB: 1x USB 2.0 port
- Button: 1x switch button, 1x reset button
- LED: 3x LEDS (green)
  - Another LED can be accessed on GPIO 7 if soldered

Flash instruction:
- Set static ip to 192.168.1.2
- Unplug the power cord
- Hold reset button
- Plug power back in
- Right led will flash 5 times
- Release reset button
- Browse to 192.168.1.1
- Choose sysupgrade image in NOR-flash section
- Press "update nor firmware"
- After successful transfer unplug network cable before device restarts

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
[resolve merge conflicts, rename buttons, use switch input type for mode
switch]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-31 13:28:20 +01:00
Mathias Kresin
213c0e78fa iwinfo: fix PKG_MIRROR_HASH
The PKG_MIRROR_HASH was for some reason wrong.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-30 20:33:49 +01:00
David Bauer
06b1a6e885 ath79: fix OCEDO Koala ethernet configuration
The OCEDO Koala has incorrect PLL settings which result in ~3% packet
loss on ethernet connections.

Also omit the gmac-configuration as it's incorrect too.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-30 20:08:13 +01:00
Weijie Gao
abc7ed2c58 ath79: add support for D-Link DIR-859 A1
Hardware spec of DIR-859 A1:
SoC: QCA9563
DRAM: 64MB DDR2
Flash: 16MB SPI-NOR
Switch: QCA8337N
WiFi 5.8GHz: QCA9880

USB is supported on the PCB but not connected.

Flash instructions:

1. Upgrade the factory.bin through the factory web interface or the u-boot
   failsafe interface.
   The firmware will boot up correctly for the first time.
   Do not power off the device after OpenWrt has booted. Otherwise the u-boot
   will enter failsafe mode as the checksum of the firmware has been changed.
2. Upgrade the sysupgrade.bin in OpenWrt.
   After upgrading completes the u-boot won't complain about the firmware
   checksum and it's OK to use now.
3. If you powered off the device before upgrading the sysupgrade.bin, just
   upgrade the factory.bin through the u-boot failsafe interface and then goto
   step 2.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
[squash commits, use common seama recipes, sync factory image recipe
with ramips version]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-30 20:08:13 +01:00
Mathias Kresin
fd35c5b205 build: move seama commands to image-commands.mk
Move it to image-commands.mk to get rid of duplicate recipes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-30 20:08:13 +01:00
Mathias Kresin
de42466528 ar71xx: sync seama image build code with ramips
Use the same syntax as used in the ramips target, to use common seama
recipes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-30 20:08:13 +01:00
Mathias Kresin
7c1332d95f ramips: consolidate seama image build code
Create a common template which has the required image build code
defined. Add some new variables to pass individual parts to the seama
recipes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-30 20:08:12 +01:00
Jonas Gorski
d3bf5ff9bc opkg: drop argument from check_signature in opkg.conf
check_signature is a bool option and doesn't take any arguments. The
presence of the 1 falsely suggests setting it to 0 disables the check,
while the option actually needs to be removed or commented out to be
disabled. So remove the argument to make it more clear.

Fixes: beca028bd6 ("build: add integration for managing opkg package feed keys")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-30 13:25:58 +01:00
Jonas Gorski
a01568fbd3 brcm63xx: remove broken DSP platform device code
There is no driver and it crashes the kernel, so just remove it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-30 13:22:13 +01:00
Jonas Gorski
d09561f73d brcm63xx: fix bcm6348 pinmux group selection
The mask/shift computation used the pin group number instead of the pin
number, resulting in always modifying group 4 when applying muxes, so
fix it to consistently use the pin number.

Fixes: 0755c2d117 ("brcm63xx: add pinctrl support")
Reported-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-30 13:22:13 +01:00
Daniel Gonzalez Cabanelas
33bff49a31 brcm63xx: VH4032N: add the SPROM fixups
Add the SPROM fixups for the onboard BCM43222 wifi on the Observa
VH4032N

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2018-12-30 13:22:13 +01:00
Jonas Gorski
6d6127e537 brcm63xx: fix gpio hogs on gpio/pinctrl nodes
Work around a chicken/egg issue in registration of dual gpio/pinctrl
nodes.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-30 13:21:42 +01:00
Jonas Gorski
1789202ed4 brcm63xx: rename switch core reset patch to 0xx as it has been accepted
The core reset fix was accepted upstream, so move it to its right place.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-30 13:20:57 +01:00
Hans Dedecker
77429a820f tools/cmake: update to 3.13.2
Update to the latest stable version and refresh patches; see
https://cmake.org/cmake/help/v3.13/release/3.13.html for the latest
changes in 3.13.x

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-29 18:12:28 +01:00
Eduardo Barros
335c69fbb2 ath79: Fix wrong TL-WR740N v4 switch port order
Fix the switch port order to have the correct order in LuCI.

Fixes: FS#1469

Signed-off-by: Eduardo Barros <geadas@gmail.com>
[trim commit title, add a proper commit message, add fixes tag, keep
alphabetical order of the blocks]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-29 16:12:41 +01:00
Hans Dedecker
d405edb481 omcproxy: optimize interface triggers
Before installing an interface triggger check if an interface
trigger for the interface is already in place.
This avoids installing identical interface triggers for a given
interface

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-29 16:08:31 +01:00
David Santamaría Rogado
df8f8bad08 omcproxy: fix installation of interface triggers (FS#1972)
omcproxy will not start up if either the downlink or uplink interface is
not up at boottime as the interface triggers are not correctly
installed.

Further rework omcproxy init to make use of network functions defined
in network.sh; set proper family and proto options in procd firewall
rules.

Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-29 16:07:51 +01:00
Deng Qingfang
5580a9dd31 ramips: add support for GeHua GHL-R-001
Specs
	SoC: MT7621AT
	RAM: 512MiB
	Flash: 32MiB MX25L25635F SPI NOR
	2.4G: MT7603EN
	5G: MT7612EN
	Ethernet: 4x GE ports (1x WAN, 3x LAN) with link status LEDs
	USB 3.0
	LEDs: POWER, 5G WIFI, 2.4G WIFI, USB, Internet.
	      The last two ones are controlled by GPIO
	UART: There are 2 UARTs (UARTLITE1/ttyS0 and UARTLITE3/ttyS1) on board.
	      UARTLITE1 is close to LEDs, and UARTLITE3 is close to flash chip.
	      The stock u-boot uses UARTLITE1 by default. Baud rate is 57600

Flash instruction
	1. telnet 192.168.9.1 2317, username is "root" and password is "admin"
	   One can alternatively use UART to log in
	2. Put OpenWrt firmware in a FAT32 USB drive, and connect it to the router
	   One can alternatively download the firmware via wget through Internet
	3. mtd write /path/to/openwrt.bin firmware
	4. reboot

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-12-29 16:03:30 +01:00
Deng Qingfang
0599cd90e1 ramips: fix MT7621 dtsi
Fix SysTick reg
Add uartlite2 and uartlite3 nodes

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-12-29 16:03:30 +01:00
Simon Quigley
9f0e233576 ramips: add support for DLINK DWR-922-E2
Very similar to the DWR-921-C1, except has a telephony/RJ11 port (not
sure if supported, I didn't try), wireless router with QMI LTE embedded
modem is based on the MT7620N SoC.

Specification:

  * MediaTek MT7620N (580 Mhz)
  * 64 MB of RAM
  * 16 MB of FLASH
  * 802.11bgn radio
  * 5x 10/100 Mbps Ethernet (1 WAN and 4 LAN)
  * 2x external, detachable (LTE) antennas
  * UART header on PCB (57600 8n1)
  * 6x LED (GPIO-controlled)
  * 1x bi-color Signal Strength LED (GPIO-controlled)
  * 2x button
  * JBOOT bootloader

The status led has been assigned to the dwr-922-e2:green:signalstrength
(lte signal strength) led. At the end of the boot it is switched off and
is available for lte operation. Works correctly also during sysupgrade
operation.

Installation:
Apply factory image via d-link http web-gui, or via recovery interface:

How to recover/revert to OEM firmware:
1.) Push and hold the reset button and turn on the power. Wait until all
    LEDs start rapidly blinking (~10sec.)
2.) DHCP should give you an IP in the 192.168.123.0/24 subnet, or set
    one manually
3.) Upload original factory image via JBOOT http interface at IP
    192.168.123.254
4.) If http doesn't work, it can be done with curl command:
      curl -F FN=@XXXXX.bin http://192.168.123.254/upg
    where XXXXX.bin is name of firmware file.
5.) You can optionally telnet to 192.168.123.254 before or during the
    upload and it will report the flashing status, memory address etc.
6.) Once web UI and/or telnet says "Success", power cycle the router, or
    type "reboot" into the telnet session.

Signed-off-by: Simon Quigley <squigley@squigley.net>
[squashed commits, word wrap commit message, rename signal strenght led
name to match what is used for the DWR-921-C1 since they share the led
configuration, add label referenced in the aliases node]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-29 16:03:30 +01:00
Christian Lamparter
cb0f39c9cd kernel: fix f2fs on big endian machines
The WD MyBook Live SquashFS images didn't work anymore due to
a upstream regression in f2fs commit: 0cfe75c5b01199
("f2fs: enhance sanity_check_raw_super() to avoid potential overflows")
that got backported to 4.14.86 and landed in 4.18.

by Martin Blumenstingl:
|Treat "block_count" from struct f2fs_super_block as 64-bit little endian
|value in sanity_check_raw_super() because struct f2fs_super_block
|declares "block_count" as "__le64".
|
|This fixes a bug where the superblock validation fails on big endian
|devices with the following error:
|  F2FS-fs (sda1): Wrong segment_count / block_count (61439 > 0)
|  F2FS-fs (sda1): Can't find valid F2FS filesystem in 1th superblock
|  F2FS-fs (sda1): Wrong segment_count / block_count (61439 > 0)
|  F2FS-fs (sda1): Can't find valid F2FS filesystem in 2th superblock
|As result of this the partition cannot be mounted.
|
|With this patch applied the superblock validation works fine and the
|partition can be mounted again:
|  F2FS-fs (sda1): Mounted with checkpoint version = 7c84
|
|My little endian x86-64 hardware was able to mount the partition without
|this fix.
|To confirm that mounting f2fs filesystems works on big endian machines
|again I tested this on a 32-bit MIPS big endian (lantiq) device.

Hopefully, this will do until Martin's patch moved through upstream
to -stable.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-29 13:41:35 +01:00
Christian Lamparter
eb43efa997 apm821xx: fix MBL DUO SUPPORTED_DEVICES compat id
The MyBook Live DUO used "wd,mybooklive-duo" as the first
compatible string and not "wd_mybooklive-duo".

Fixes: 9b47aa93c7 ("apm821xx: unify My Book Live Single + Duo images")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-29 13:38:53 +01:00
Andreas Ziegler
d492da702a ramips: mt7621: fix 5GHz WiFi LED on ZBT WG3526
This fixes the 5GHz WiFi LED which was previously not working.

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
2018-12-29 12:35:47 +01:00
David Bauer
97dc323a4c ath79: fix Archer A7 v5 5GHz MAC adress
Currently all Archer A7 v5 have the same (incorrect) MAC address.
The address is currently derived from eth1 which is not present on the
QCA9563. Use eth0 to get the correct MAC address.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-29 12:35:47 +01:00
Mathias Kresin
a5030f8b10 iwinfo: update to latest git
dd508af iwinfo: fix QCA9984 vendor id
0eaabf1 iwinfo: add device id for Atheros AR9287
6e998ec iwinfo: add device id for MediaTek MT7612E
5aa8c54 libiwinfo: nl80211: add mesh stats on assoclist.
77a9e98 iwinfo: Add Mikrotik R11e-2HPnD and R11e-5HacT to hardware list

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-29 12:35:47 +01:00
Rafał Miłecki
ae622c93b3 Revert "samba36: add hotplug support"
This reverts commit fd569e5e9d.

After an extra review & discussion few concerns were raised regarding
that feature:
1) It reacts to hotplug.d "block" events instead of more accurate (but
   currently unavailable) "mount" events.
2) It requires *something* to mount block device before samba hotplug.d
   gets fired. Otherwise samba_add_section() will just return.
3) It doesn't reload Samba which some users may expect
4) It operates on /etc/ which is not a right place for autogenerated
   ephemeral config.
5) It doesn't include any cleanup for non-existing shares.

Cc: Rosy Song <rosysong@rosinson.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-28 23:09:38 +01:00
Felix Fietkau
3c899aaf11 mt76: update to the latest version
417ab77 mt7603: improve recovery from PSE reset failure
fea7ad8 mt76: move mt76x02_phy_get_min_avg_rssi to mt76 core
9d009be mt7603: add dynamic sensitivity tuning based on false CCA events
2c8e9ac mt7603: initialize channel maximum power from eeprom data
b2cc29b mt76: move mt76x02_get_txpower to mt76 core
6203d46 mt7603: add support for setting transmit power
294e095 mt7603: reset DMA scheduler on MT7628
8178f0d mt7603: apply efuse data only when it exists
e67e551 mt76: dma: remove napi from mt76_dma_rx_fill signature
0490bd2 mt76: usb: do not build the skb if reported len does not fit in buf_size
eb076ae mt76: Add missing include of linux/module.h
1d2819e mt76: fix typo in mt76x02_check_mac_err routine
9c9fae3 mt76: mac: run mt76x02_mac_work routine atomically
6be90b6 mt76: usb: avoid queue/status spinlocks while passing tx status to mac80211
40dad32 mt76x0: pci: fix ACS support
d94e9c4 mt76x02: do not set protection on set_rts_threshold callback
0d83d73 mt76x02: fixup MT_PROT_RATE_* defines
628f8d7 mt76x02: set protection according to ht operation element
f7d8c17 mt76x0: configure MT_VHT_HT_FBK_CFG1
10f57cf mt76x2: add static qualifier to mt76x2_init_hardware
37b2ad3 mt76: dfs: run mt76x02_dfs_set_domain atomically
51b6daf mt76x2: init: set default value for MT_TX_LINK_CFG
9661da4 mt76: add energy detect CCA support to mt76x{0,2}e drivers
876d0e9 mt76: mac: minor optimizations in mt76x02_mac_tx_rate_val
c78e317 mt76: dma: do not build skb if reported len does not fit in buf_size
3598046 mt76: mmio: introduce mt76x02_check_tx_hang watchdog

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-12-28 16:20:56 +01:00
Weijie Gao
74af8a833a ramips: add support for CreativeBox v1
Hardware:
SoC: MT7621
DRAM: 512MB DDR3
Flash: 32MB SPI-NOR
WiFi 2.4GHz: MT7603 @ PCIe0
WiFi 5.8GHz: MT7612 @ PCIe1
SATA: ASM1061 @ PCIe2

Interfaces:
GBE RJ45 x5
USB3.0 x1
eSATA (with USB2.0) x1
SATA x1
UART x1
I2C x1
JTAG x1

Flash instructions:
Through factory bootloader or firmware web interface

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-12-28 12:45:23 +01:00
NOGUCHI Hiroshi
d020ae79ab ramips: add SPDX license identifier into some dts,dtsi
Acked-by: Mathias Kresin <dev@kresin.me>
Acked-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: NOGUCHI Hiroshi <drvlabo@gmail.com>
2018-12-28 12:45:23 +01:00
Stijn Tintel
c5b89abe2a lldpd: consolidate CONFIGURE_VARS
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-28 12:19:32 +02:00
Christian Lamparter
e59a6c8d4c apm821xx: switch MyBook Live's recovery images to multi-file
This patch converts the MyBook Live's recovery image to utilize the
multi-image method which integrates the device-tree binary directly
into the image.

The new initramfs can be loaded through the MyBook Live's U-boot
in the following way:

=> setenv ipaddr 192.168.1.1
=> setenv serverip 192.168.1.2
=> sata init; run addtty; tftp $kernel_addr_r wd_mybooklive-initramfs.bin; bootm
   Waiting for PHY auto negotiation to complete... done
   ENET Speed is 1000 Mbps - FULL duplex connection (EMAC0)
   Using ppc_4xx_eth0 device
   TFTP from server 192.168.1.2; our IP address is 192.168.1.1
   Filename 'wd_mybooklive-initramfs.bin'.
   Load address: 0x1000000
   Loading: ################################################ [...]
   done
   [...]
   Booting kernel from Legacy Image at 01000000 ...
      Image Name:    initramfs
      Image Type:   PowerPC Linux Multi-File Image (gzip compressed)
   [...]

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-28 00:45:57 +01:00
Christian Lamparter
4cd533411e apm821xx: 4.14: switch to upstream dw-dma-hport patch
This patch fixes the build regression on 4.14 build
due to dt-bindings/dma/dw-dmac.h MIA.

apm82181.dtsi:24:10: fatal error: dt-bindings/dma/dw-dmac.h: No such file or directory

Fixes: 32141c183a ("apm821xx: add linux 4.19 apm821xx patches")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 23:08:01 +01:00
Rafał Miłecki
25d8aa7d02 brcm47xx: add support for the kernel 4.19
One patch that wasn't ported due to a lot of conflict is:
901-Revert-bcma-switch-GPIO-portions-to-use-GPIOLIB_IRQC.patch

Hopefully a correct/real fix will get developed before we switch
brcm47xx to the 4.14.

This IS NOT ready for switching/trying/using 4.19 yet due to some DMA
regression affecting bgmac:
[    0.945472] bgmac_bcma bcma0:2: Found PHY addr: 25
[    0.954565] libphy: bcma_mdio mii bus: probed
[    0.959486] ------------[ cut here ]------------
[    0.964387] WARNING: CPU: 0 PID: 1 at ./include/linux/dma-mapping.h:516 bgmac_enet_probe+0x1b4/0x5c4
[    0.973751] Modules linked in:
[    0.976913] CPU: 0 PID: 1 Comm: swapper Not tainted 4.19.9 #0
[    0.982750] Stack : 804a0000 804597c4 00000000 00000000 80458fd8 8381bc2c 838282d4 80481a47
[    0.991367]         8042e3ec 00000001 804d38f0 00000204 83980000 00000065 8381bbe0 6f55b24f
[    0.999975]         00000000 00000000 80520000 00002018 00000000 00000075 00000007 00000000
[    1.008583]         00000000 80480000 000ee811 00000000 00000000 00000000 80432c00 80248db8
[    1.017196]         00000009 00000204 83980000 803ad7b0 00000000 801feeec 00000000 804d0000
[    1.025804]         ...
[    1.028325] Call Trace:
[    1.030875] [<8000aef8>] show_stack+0x58/0x100
[    1.035513] [<8001f8b4>] __warn+0xe4/0x118
[    1.039708] [<8001f9a4>] warn_slowpath_null+0x48/0x64
[    1.044935] [<80248db8>] bgmac_enet_probe+0x1b4/0x5c4
[    1.050101] [<802498e0>] bgmac_probe+0x558/0x590
[    1.054906] [<80252fd0>] bcma_device_probe+0x38/0x70
[    1.060017] [<8020e1e8>] really_probe+0x170/0x2e8
[    1.064891] [<8020e714>] __driver_attach+0xa4/0xec
[    1.069784] [<8020c1e0>] bus_for_each_dev+0x58/0xb0
[    1.074833] [<8020d590>] bus_add_driver+0xf8/0x218
[    1.079731] [<8020ef24>] driver_register+0xcc/0x11c
[    1.084804] [<804b54cc>] bgmac_init+0x1c/0x44
[    1.089258] [<8000121c>] do_one_initcall+0x7c/0x1a0
[    1.094343] [<804a1d34>] kernel_init_freeable+0x150/0x218
[    1.099886] [<803a082c>] kernel_init+0x10/0x104
[    1.104583] [<80005878>] ret_from_kernel_thread+0x14/0x1c
[    1.110107] ---[ end trace f441c0d873d1fb5b ]---
[    1.114914] bgmac_bcma bcma0:2: Allocation of TX ring 0x200 failed
[    1.121215] bgmac_bcma bcma0:2: Unable to alloc memory for DMA
[    1.127626] bgmac_bcma: probe of bcma0:2 failed with error -12
[    1.133838] bgmac_bcma: Broadcom 47xx GBit MAC driver loaded

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-27 22:12:15 +01:00
Petr Štetiar
6ab138fa84 ath79: ubnt-bullet-m-xw: Remove eth1 disabled node
It's redundant as eth1 is disabled by default in ath79.dtsi.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-27 16:02:25 +01:00
Petr Štetiar
74f46d90be ath79: ubnt-bullet-m-xw: Move eth0 mtd-mac-address to the common include
It's same for Bullet and Nanostation so far, so let's hope it's going to
be the same for other boards sharing the same platform.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-27 16:02:25 +01:00
Petr Štetiar
6935d73851 ath79: ubnt-bullet-m-xw: Remove pll-data property from eth0 node
It's not necessary as it's already defined in ar934x.dtsi to:

  pll-data = <0x16000000 0x00000101 0x00001616>;

And in ar71xx it's currently set to the same values:

 #define AR934X_PLL_VAL_1000	0x16000000
 #define AR934X_PLL_VAL_100	0x00000101
 #define AR934X_PLL_VAL_10	0x00001616

And dumping the value from the airOS v6.1.7 has the same value:

  AR934X_PLL_ETH_XMII_CONTROL_REG 0x1805002C 0x101

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-27 16:02:24 +01:00
Petr Štetiar
965ce07dbb ath79: ubnt-xw: Add LED aliases for diag and status LED support
Currently there is no LED signalization for various system states
implemented in diag.sh, so this patch adds support for it.

Tested-by: Joe Ayers <ae6xe@arrl.net>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-27 16:02:23 +01:00
Christian Lamparter
32141c183a apm821xx: add linux 4.19 apm821xx patches
This patch updates the apm821xx target to use the 4.19 kernel.

4.19 ships with all the crypto4xx driver patches. Furthermore,
the DW-DMA fix for the SATA controller has been backported from
4.20 and integrated.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:36:23 +01:00
Christian Lamparter
96d55f9fd9 kernel: 4.19: fix usbport led trigger regression
|In the patch "usb: simplify usbport trigger" together with
|"leds: triggers: add device attribute support" caused an
|regression for the usbport trigger. it will no longer
|enumerate any "ports" (i.e the sysfs directory stays empty)
|if the usb host drivers are fully initialized before the
|usbport trigger was loaded.

<https://marc.info/?l=linux-usb&m=154577101631079>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:36:23 +01:00
Christian Lamparter
ef5ff08662 ipq40xx: convert to device-tree based USB LED trigger
Thanks to the ledtrig-usb.c the USB LED trigger can be
setup in the device-tree definition for the Asus RT-AC58U
and ZyXEL NBG6617.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:36:23 +01:00
Christian Lamparter
ee5d3a6d7c ipq40xx: fix warning triggered by bad interrupt definition
This patch fixes a kernel warning that got triggered by 4.19
because of a bad/missing interrupt level definition in the DTS.

| WARNING: CPU: 2 PID: 1996 at drivers/irqchip/irq-gic.c:1016
| CPU: 2 PID: 1996 Comm: kmodloader Not tainted 4.19.9 #0
| Hardware name: Generic DT based system
| [<c0317884>] (warn_slowpath_null) from [<c04f9cd0>]
| [<c04f9cd0>] (gic_irq_domain_translate) from [<c035af30>]
| [<c035af30>] (irq_create_fwspec_mapping) from [<c035b1e0>]
| [<c035b1e0>] (irq_create_of_mapping) from [<c0614eec>]
| [<c0614eec>] (of_irq_get) from [<c0614f3c>]
| [<c0614f3c>] (of_irq_to_resource) from [<c0614ff0>]
| [<c0614ff0>] (of_irq_to_resource_table) from [<c0610e08>]
| [<c0610e08>] (of_device_alloc) from [<c0610ea0>]
| [<c0610ea0>] (of_platform_device_create_pdata)
| [<c061120c>] (of_platform_bus_create)
| [<c06113c4>] (of_platform_populate)
| [<bf4c06b4>] (dwc3_qcom_probe [dwc3_qcom])

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:36:23 +01:00
Christian Lamparter
6e58fb2c33 ipq40xx: kmod-usb-dwc3-of-simple vs kmod-usb-dwc3-qcom
Robert Marko <robimarko@gmail.com> noted in
"ipq40xx: Use kmod-usb-dwc3-qcom by default":
| Since 4.18 we cant use DWC3 OF Simple anymore so we
| have to use kmod-usb-dwc3-qcom.

This patch adds a TODO right next to the KERNEL_PATCHVER so
it will be picked up when moving to 4.19.

I would also like to point out:

All users/devs that are compiling their own images from source
and have a existing 4.14 config and want to switch to 4.19:

Please drop kmod-usb-dwc3-of-simple and add kmod-usb-dwc3-qcom
module package. Otherwise, the USB port on your router will no
longer work.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:36:23 +01:00
Christian Lamparter
a5ac9030ed ipq40xx: MR33: device-tree update
- 4.19 no longer refuses to initialize the mdio bus if
   a phy is not connected.

 - fix partition unit-address

 - restrict partition offset and size to 32-bit integers.

 - add note to warn people not to mess with the ubi
   partition size.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:36:23 +01:00
Christian Lamparter
51ec6bddd3 ipq40xx/ipq806x: 4.19: fix qcom-nandc panic on boot
This patch fixes the crash that occures on rawnand device.
<https://patchwork.ozlabs.org/patch/1017933/>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:35:34 +01:00
Christian Lamparter
a2501ebfb0 ipq40xx: remove qcom,ipq4019 on all devices
Upstream commit:
80483c3abf8 ("ARM: qcom: Cleanup/Remove unnecessary board file")
removed all the platform device compatibles stating that:
"This patch removes the unnecessary board file. The generic machine
definition is sufficient for the Qualcomm platforms."

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:30:45 +01:00
Christian Lamparter
00dd84ca2e ipq40xx: rt-ac58u: fix device-tree snafu
- make the device userspace integration (WIFI,MAC,sysupgrade)
   work again by renaming the ubi to UBI_DEV as a temporary measure.
   In the future, once 4.14 support is dropped, this can all be
   refactored again. *sigh*

 - use the wifi0 and wifi1 labels

 - follow Device-Tree Release v0.2 2.2.2 Generic Names Recommendation

 - fix duplicated partition node-names

 - remove qcom,ipq4019 platform compatible. it's no longer needed
   (and wrong because the chip is a qcom,ipq4018).

Fixes: 4c67f3ad78d ("ipq40xx: Adapt 4.19 DTS for upstream SPI-NAND driver")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:30:45 +01:00
Robert Marko
077a63db1d ipq40xx: 4.19: Enable pseudo random number generator
IPQ40xx series has a HW pseudo random number generator built in.
It already has a node in the upstream ipq4019.dtsi so we just need to enable it.
Its driver has been rewritten to use crypto API so we dont have char interface like under 4.14 kernel.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:30:45 +01:00
Robert Marko
59485f7486 ipq40xx: files-4.19: Clear some DTC warnings
DTC was throwing warnings like this:
image-qcom-ipq4018-jalapeno.dtb: Warning (avoid_unnecessary_addr_size): /soc/spi@78b5000/m25p80@0: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property
image-qcom-ipq4018-jalapeno.dtb: Warning (avoid_unnecessary_addr_size): /soc/spi@78b5000/spi-nand@1: unnecessary #address-cells/#size-cells without "ranges" or child "reg" property

So lets fix this for our downstream boards.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:30:45 +01:00
Robert Marko
c29c8838a1 ipq40xx: Use upstream SPI-NAND driver instead of MT29F
Since 4.19 upstream kernel provides generic SPI-NAND
framework and vendor specific drivers.
Since only users of MT29F are 2 boards with Winbond
W25N01GV SPI-NAND for which support has been backported
from 4.20 we can drop the ever stuck in staging MT29F
driver and instead use the upstream driver.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [squashed]
2018-12-27 14:26:07 +01:00
Robert Marko
13321fa142 ipq40xx: Use kmod-usb-dwc3-qcom by default
Since 4.18 we cant use DWC3 OF Simple anymore so we have to use
kmod-usb-dwc3-qcom.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:06:38 +01:00
Robert Marko
c9f6116fd0 kernel: modules: usb: Add DWC3 Qualcomm kmod
Since kernel 4.18 support for Qualcomm glue layer was
moved from DWC3 OF Simple to a separate DWC3 QCOM module.
So lets add it and make it depend on 4.19 kernel and make
sure that DWC3 OF Simple is not included if 4.19 is used.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:06:38 +01:00
Robert Marko
30f2b22952 ipq40xx: Add 4.19 kernel config
This adds the neccessary 4.19 kernel config.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:06:38 +01:00
Robert Marko
8b7abea2f6 ipq40xx: Add patches for 4.19
This adds the necessary patches for 4.19 kernel.
Upstreamed patches were dropped, backported upstreamed patches
from 4.20.
Drop Winbond ID patch since that NAND IC was upstreamed to use
SPI-NAND framework and support for it was backported from 4.20.
Rework ESSEDMA patches to compile under 4.19 due to timer changes,
Clément Péron did the hard work and his changes were taken from the
initial 4.19 PR.
MR33 changes had to be manually refreshed to apply.
Refresh other patches to apply.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Remove
2018-12-27 14:06:38 +01:00
Robert Marko
96b69c2e9a ipq40xx: Add files for 4.19
This copies over files from 4.14

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-27 14:06:38 +01:00
David Bauer
e67da34431 ath79: add support for devolo WiFi pro 1750c
Hardware
--------
CPU:   Qualcomm Atheros QCA9558
RAM:   128M DDR2
FLASH: 16MiB
ETH:   1x Atheros AR8035 (PoE in)
WiFi2: QCA9558 3T3R
WiFi5: QCA9880 3T3R
BTN:   1x Reset
LED:   1x LED blue
       1x LED red
BEEP:  1x GPIO attached piezo beeper
UART:  3.3V GND TX RX (115200-N-8) (3.3V is square pad)
       Header is located next to reset-button

There is also a Micro-B USB-port present but this only seems to be a
dummy as the circuit next to it is not present (at least in my unit).

It is also not mentioned in the devolo manual.

Installation
------------
Make sure you set a password for the root user as prompted on first
setup!

1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password the one set in the web interface.

2. Install OpenWRT with

> sysupgrade -n -F /tmp/<openwrt-image-name>

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-27 14:06:38 +01:00
David Bauer
1724d4e9ed ath79: add support for devolo WiFi pro 1200e
Hardware
--------
CPU:   Qualcomm Atheros QCA9558
RAM:   128M DDR2
FLASH: 16MiB
ETH:   1x Atheros AR8035 (PoE in)
       1x Atheros AR8033
WiFi2: QCA9558 2T2R
WiFi5: QCA9880 2T2R
BTN:   1x Reset
LED:   1x LED blue
       1x LED red
BEEP:  1x GPIO attached piezo beeper
UART:  3.3V GND TX RX (115200-N-8) (3.3V is square pad)
       Header is located next to reset-button

Installation
------------
Make sure you set a password for the root user as prompted on first
setup!

1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password the one set in the web interface.

2. Install OpenWRT with

> sysupgrade -n -F /tmp/<openwrt-image-name>

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-27 14:06:38 +01:00
TOCK Chiu
8471944325 ath79: add support for TP-Link Archer C7 v5
This commit adds support for TP-Link Archer C7 v5, leveraging most effort
from commit ea9baee and 1e4ee63. Archer C7 v5 is identical to Archer A7 v5
but with a different flash layout.

Specification:
-   QCA9563 SoC (750 MHz)
-   128 MiB of RAM (DDR2)
-   16 MiB of flash (SPI)
-   5x 1 Gbps Ethernet (1x WAN + 4x LAN)
-   2.4GHz (bgn) SoC internal + 5GHz (ac) QCA9880
-   10x LED, 2x button
-   UART header on PCB

Flash instructions:
1.  Upload openwrt-ath79-generic-tplink_archer-c7-v5-squashfs-factory.bin
    via web interface.

Flash instructions using TFTP recovery:
1.  Plug PC to one of the LAN ports
2.  Set PC to fixed IP address 192.168.0.66
3.  Rename the factory image to ArcherC7v5_tp_recovery.bin and place it in
    TFTP root directory
4.  Turn on the router with the reset button pressed for about 15 secs
5.  Release the button and wait about 150 secs to complete flashing

Signed-off-by: TOCK Chiu <tock.chiu@gmail.com>
2018-12-27 14:06:38 +01:00
Daniel F. Dickinson
3bb44f4299 brcm2708: Add feature flag rootfs-part
Even with squashfs brcm2708 requires ROOTFS_PART_SIZE because the overlay
exists as a loopback device on the space not used by squashfs in the root
partition. Also for ext4 (the other fs option) ROOTFS_PART_SIZE is required,
so use feature flag rootfs-part to enable it.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-27 14:06:38 +01:00
Christian Lamparter
1155793809 apm821xx: sata: set rootfs-part feature flag
The rootfs-part feature flag ensures that
CONFIG_ROOTFS_PART_SIZE symbol will be present
at all times.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-27 14:06:38 +01:00
Daniel Engberg
5f978eec18 tools/e2fsprogs: Update to 1.44.5
Update e2fsprogs to 1.44.5

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-12-27 13:47:50 +01:00
Rafał Miłecki
f3006059eb bcm53xx: update 4.19 config
There were 3 new symbols possible to choose: ARCH_BCM_HR2, PCI_V3_SEMI
and PHY_BCM_SR_PCIE.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-27 08:15:08 +01:00
Rafał Miłecki
75b134c4c5 bcm53xx: add support for the kernel 4.19
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-27 07:59:03 +01:00
Rafał Miłecki
7a7d19abcf bcm53xx: backport DTS changes queued for the 4.21
It just replaces some downstream patches & adds relicensing work.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-27 07:33:24 +01:00
Rafał Miłecki
a5d6f2eb76 bcm53xx: rename dts backport patches changing their prefixes
Start 03x with 030 instead of 035. It's a trivial change that adds more
place for further backports in the 03x space.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-27 07:03:30 +01:00
Hauke Mehrtens
e790227553 kernel: Fix KERNEL_STACKPROTECTOR on kernel 4.19
The configuration option was renamed with kernel 4.19 from
CONFIG_CC_STACKPROTECTOR to CONFIG_STACKPROTECTOR adapt the code to set
both options.

CONFIG_STACKPROTECTOR now sets the regular stack protector and
CONFIG_STACKPROTECTOR_STRONG activates the additional protection of more
functions.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-26 17:32:48 +01:00
Hauke Mehrtens
b1daead066 kernel: Add compiler options to generic configuration
With kernel 4.19 new configuration options for the compiler were added.
These are automatically selected and set, instead of having them in each
target configuration, put them into the generic configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-26 17:32:48 +01:00
Hauke Mehrtens
89f8a8be7f kernel: Deactivate CONFIG_COMPAT_BRK
CONFIG_COMPAT_BRK disables the heap randomization which is only needed
for very old and ancient user space applications, I am not aware that we
run any of these, just deactivate this option for these targets to allow
heap randomization.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-26 17:32:48 +01:00
Rafał Miłecki
a28f6ab27f bcm53xx: update pinctrl driver & use its new DT binding
Driver has been updated upstream to support more precise DT binding and
avoid mapping conflicts between pinctrl and USB 2.0 PHY.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-25 15:52:37 +01:00
Kevin Darbyshire-Bryant
8f4841462c kernel: MIPS: math-emu Write-protect delay slot emulation pages
Backport https://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git/commit/?id=adcc81f148d733b7e8e641300c5590a2cdc13bf3

"Mapping the delay slot emulation page as both writeable & executable
presents a security risk, in that if an exploit can write to & jump into
the page then it can be used as an easy way to execute arbitrary code.

Prevent this by mapping the page read-only for userland, and using
access_process_vm() with the FOLL_FORCE flag to write to it from
mips_dsemul().

This will likely be less efficient due to copy_to_user_page() performing
cache maintenance on a whole page, rather than a single line as in the
previous use of flush_cache_sigtramp(). However this delay slot
emulation code ought not to be running in any performance critical paths
anyway so this isn't really a problem, and we can probably do better in
copy_to_user_page() anyway in future.

A major advantage of this approach is that the fix is small & simple to
backport to stable kernels.

Reported-by: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Fixes: 432c6bacbd0c ("MIPS: Use per-mm page to execute branch delay slot instructions")"

Without patch:

cat /proc/self/maps
00400000-0047a000 r-xp 00000000 1f:03 1823       /bin/busybox
00489000-0048a000 r-xp 00079000 1f:03 1823       /bin/busybox
0048a000-0048b000 rwxp 0007a000 1f:03 1823       /bin/busybox
77ec8000-77eed000 r-xp 00000000 1f:03 2296       /lib/libgcc_s.so.1
77eed000-77eee000 rwxp 00015000 1f:03 2296       /lib/libgcc_s.so.1
77eee000-77f81000 r-xp 00000000 1f:03 2470       /lib/libc.so
77f90000-77f92000 rwxp 00092000 1f:03 2470       /lib/libc.so
77f92000-77f94000 rwxp 00000000 00:00 0
7f946000-7f967000 rw-p 00000000 00:00 0          [stack]
7fefb000-7fefc000 rwxp 00000000 00:00 0
7ffac000-7ffad000 r--p 00000000 00:00 0          [vvar]
7ffad000-7ffae000 r-xp 00000000 00:00 0          [vdso]

Patch applied:

cat /proc/self/maps
00400000-0047a000 r-xp 00000000 1f:03 1825       /bin/busybox
00489000-0048a000 r-xp 00079000 1f:03 1825       /bin/busybox
0048a000-0048b000 rwxp 0007a000 1f:03 1825       /bin/busybox
77ed0000-77ef5000 r-xp 00000000 1f:03 2298       /lib/libgcc_s.so.1
77ef5000-77ef6000 rwxp 00015000 1f:03 2298       /lib/libgcc_s.so.1
77ef6000-77f89000 r-xp 00000000 1f:03 2474       /lib/libc.so
77f98000-77f9a000 rwxp 00092000 1f:03 2474       /lib/libc.so
77f9a000-77f9c000 rwxp 00000000 00:00 0
7fbed000-7fc0e000 rw-p 00000000 00:00 0          [stack]
7fefb000-7fefc000 r-xp 00000000 00:00 0
7fff6000-7fff7000 r--p 00000000 00:00 0          [vvar]
7fff7000-7fff8000 r-xp 00000000 00:00 0          [vdso]

Note lack of write permission to 7fefb000-7fefc000

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-24 21:52:08 +00:00
Christian Lamparter
87c5fd348d ath79: fix pinmux reg size for QCA955x
The range of pinmux reg property "<0x1804002c 0x40>" for QCA955x
SoC does not includes GPIO_FUNCTION register.

Reported-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-24 19:18:07 +01:00
Robert Marko
d0bf8f4fd6 ath10k-ct: Update to 2018-12-20
This version removes a lot of unusefull warnings that would quickly overflow the dmesg.
Warnings like this:
ath10k_ahb a800000.wifi: Invalid legacy rate 26 peer stats
ath10k_ahb a000000.wifi: Invalid VHT mcs 15 peer stats
On this version I only had 2 warnings at all.
Tested on 8devices Jalapeno.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-12-24 19:18:07 +01:00
INAGAKI Hiroshi
c566439c9b ath79: add support for NEC Aterm WG800HP
NEC Aterm WG800HP is a 2.4/5 GHz band 11ac router, based on Qualcomm
Atheros QCA9563.

Specification:

- Qualcomm Atheros QCA9563
- 64 MB of RAM (DDR2)
- 8 MB of Flash (SPI-NOR)
- 2.4/5 GHz wifi
  - 2.4 GHz: 2T2R (SoC internal)
  - 5 GHz: 1T1R (QCA9887)
- 4x 10/100/1000 Mbps Ethernet
- 8x LEDs, 3x keys (2x buttons, 1x slide-switch)
- UART through-hole on PCB (J2)
  - Vcc, GND, NC, TX, RX from SoC side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port on WG800HP
2. Connect power cable to WG800HP and turn on it
3. Access to "http://192.168.10.1/" and open firmware update page
("ファームウェア更新")
4. Select the OpenWrt factory image and click update ("更新") button
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-24 19:18:07 +01:00
INAGAKI Hiroshi
99df98442e build: move xor-image into image-commands
I moved xor-image into image-commands.mk to use it in ath79 target.

It required for NEC WG800HP.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-24 19:18:07 +01:00
INAGAKI Hiroshi
9145f5209f firmware-utils: add hex pattern mode for xorimage
This commit adds "hex pattern mode" to xorimage. This mode allows xor
with a hexadecimal pattern that cannot be expressed with ASCII
charactors.

usage (example):
  xorimage -i firmware.bin -o firmware.bin.new -p 6A57190601121E4C -x

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (fix checkpatch)
2018-12-24 19:18:07 +01:00
INAGAKI Hiroshi
10a54e1442 ath79: fix pinmux reg value for QCA956x
The range of pinmux reg property "<0x1804002c 0x40>" for QCA956x SoC
does not includes GPIO_FUNCTION register.

If the device uses "&jtag_disable_pins", this causes the following
errors:

[    1.982937] pinctrl-single 1804002c.pinmux: mux offset out of range: 0x40 (0x40)
[    1.990622] pinctrl-single 1804002c.pinmux: could not add functions for pinmux_jtag_disable_pins 64x

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-24 19:18:07 +01:00
Christian Lamparter
212f2a63eb kernel: Add missing symbols to 4.19
Tested with apm82181 and ipq40xx minimal image versions.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-24 19:14:21 +01:00
Daniel Engberg
666dd5dc01 tools/mtools: Update to 4.0.23
Update mtools to 4.0.23
Drop patch, workaround in upstream

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-12-24 17:05:57 +01:00
Kevin Darbyshire-Bryant
5b3afca757 kernel: bump 4.14 to 4.14.90
Refresh all patches

Remove upstream patch:
backport-4.14/424-v4.20-net-dsa-fix-88e6060-roaming.patch

Minor tweak to generic/hack-4.14/902-debloat_proc.patch to cleanly apply
after upstream changes.

Tested-on: ath79

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-24 15:06:33 +00:00
Daniel Engberg
9a37c95431 wireguard: Update to snapshot 0.0.20181218
Update WireGuard to 0.0.20181218

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-12-24 12:58:22 +01:00
Deng Qingfang
0babdf2d2b curl: bump to 7.63.0
Refresh patches, for changes in version 7.63.0 see https://curl.haxx.se/changes.html#7_63_0

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-12-24 09:46:06 +01:00
Christian Lamparter
360efb1ead ipq40xx: NBG6617: add usb-ledtrig-usbport to DEVICE_PACKAGES
The ZyXEL NBG6617 USB LED was not working with the default images.
It turned out that kmod-usb-ledtrig-usbport was missing from the
default installation.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-22 15:08:24 +01:00
Christian Lamparter
36c19c9f0b apm821xx: switch MX60(W)'s recovery images to multi-image method
In the past, the MX60(W)'s recovery images always had problems
with the size restriction and never really worked without manual
intervention. But starting with 4.19, the MX60(W)'s kernel image
outgrew the allocated space for sysupgrade images as well. Hence
This patch reworks the initramfs, which allows the device to ease
up on the impossible tight kernel size requirements for the
sysupgrade creation and packaging. And as a result, the now
orphaned special ramdisk setup is removed in the process.

This new initramfs can be loaded through the MX60(W) U-boot
in the following way:

=> setenv bootargs console=ttyS0,$baudrate
=> tftpboot $meraki_loadaddr meraki_mx60-initramfs-kernel.bin
   [...]
   Load address: 0x800000
    Loading: ################################################ [...]
    done
   [...]

=> bootm $fileaddr
   \## Booting kernel from Legacy Image at 00800000 ...
    ...

Updated Flashing instructions for new installations which integrates
the new recovery method. Users of existing installations that only
want to sysupgrade don't need to update their existing u-boot env.

=> setenv owrt_load1 ubi read \${meraki_loadaddr} kernel
=> setenv owrt_load2 ubi read \${meraki_loadaddr} recovery
=> setenv lede_bootkernel bootm \${meraki_loadaddr_kernel} - \${meraki_loadaddr_fdt}
=> setenv owrt_bootkernel bootm \${meraki_loadaddr}
=> setenv owrt_bootargs setenv bootargs console=ttyS0,\${baudrate} rootfstype=squashfs mtdoops.mtddev=oops
=> setenv owrt_boot run meraki_ubi owrt_bootargs\; run owrt_load1 meraki_checkpart lede_bootkernel\; run owrt_load2 owrt_bootkernel
=> setenv bootcmd run owrt_boot
=> saveenv

For more information and the latest flashing guide:
please visit the OpenWrt Wiki Page for the MR60:
<https://openwrt.org/toh/meraki/mx60#flashing>

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-22 15:08:24 +01:00
Daniel F. Dickinson
8d2a9e8027 ath9k: Avoid OF no-eeprom quirks when no qca,no-eeprom
Based on the process of discovery in
https://github.com/openwrt/openwrt/pull/1613, it has become clear
that (at least) the PowerCloud System CR5000 was unable to get
working 5GHz wireless (PCIe) because AH_USE_EEPROM was unconditionally
masked out, not only when qca,noeeprom was in the DTS.

This patch moves mask AH_USE_EEPROM into the if ... qca,noeeprom
OF test.

Thanks to Christian Lampartar (@chunkeey) for the heavy lifting and help.

Patch has been prepared for upstream and will be submitted after review
by @chunkeey and @xdarklight.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-22 15:08:24 +01:00
Hans Dedecker
f36bc3f9b1 odhcpd: use PKG_VERSION default value
Instrad of defining PKG_VERSION in the Makefile use the PKG_VERSION
default value

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-21 18:30:01 +01:00
David Bauer
b53111ad42 ipq40xx: disable kernel-padding for DNI image
This commit removes the fixed kernel size-padding for the Netgear
DNI image creation as it is not necessary for a working image.

The fake rootfs still needs to be padded to the blocksize.

Tested-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-20 23:54:24 +01:00
Christian Lamparter
6dff341106 ipq40xx: fix pcie wifi unit-address of the MR33 and A62
The unit address should be wifi@1,0 since the device is located
at 0000:01:00.0.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-20 19:21:42 +01:00
Christian Lamparter
a8bae35914 elfutils: fix gcc 8.0+ multistatement macros warning/error
GCC 8.0+ <https://gcc.gnu.org/gcc-8/changes.html> introduces a new
warning about unsafe macros expanding to multiple statements used
as a body of a statement such as if, else, while, switch, or for.

In combination with -Werror this can cause the compilation to fail:

|In file included from xmalloc.c:37:
|xmalloc.c: In function 'xmalloc':
|system.h:39:2: error: macro expands to multiple statements [-Werror=multistatement-macros]
|  fflush(stdout); \
|  ^~~~~~
|xmalloc.c:52:5: note: in expansion of macro 'error'
|     error (EXIT_FAILURE, 0, _("memory exhausted"));
|     ^~~~~
|xmalloc.c:51:3: note: some parts of macro expansion are not guarded by this 'if' clause
|   if (p == NULL)
|   ^~

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-20 19:21:42 +01:00
Daniel F. Dickinson
99c81eab78 ar71xx: Fix PowerCloud CR5000 5GHz wifi mac
Without this patch PowerCloud CR5000 AR9382 PCIe 5GHz Wifi uses
the mac address from eeprom instead the one specified when
initializing the PCIe chip.  There were two issues:

1) ap94_pci_init on the second PCIe wmac is wrong as there is only one
PCIe wmac on this device (the other wmac is the AR1022/AR9342 SoC wmac).
2) Without specifying pdata->use_eeprom there is a failure to load
firmware and caldata.

Thanks to Christian Lamparter (@chunkeey) for the heavy lifting and
help. [0]

[0] <https://github.com/openwrt/openwrt/pull/1613>

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-20 18:28:59 +01:00
Hans Dedecker
9b8ea3623b odhcpd: add PKG_VERSION again
Fixes commit 63d0752ca8

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-20 16:50:08 +01:00
Hans Dedecker
63d0752ca8 odhcpd: update to latest git HEAD
2d2a3b8 odhcpd: switch to libubox container_of implementation
2a71c1e treewide: switch to libubox ARRAY_SIZE immplementation

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-20 15:43:31 +01:00
Koen Vandeputte
4b60ea236e mac80211: backport upstream fixes
d350a0f43118 nl80211: fix memory leak if validate_pae_over_nl80211() fails
a50e5fb8db83 mac80211: fix a kernel panic when TXing after TXQ teardown

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-20 14:03:39 +01:00
Jo-Philipp Wich
62e4395ac7 mwlwifi: update to version 10.3.8.0-20181210
67ce93e Fix compile error on kernel 4.15+
c1345bb Change driver version to 10.3.8.0-20181210.
9cb815b Upgrade 88W8997 firmware to 8.4.4.6.
433fc6d Fix non-backport use of nla_parse before 4.12.0
3b36e21 Use wiphy_to_ieee80211_hw() instead of wiphy_priv()
97ebcfa Change driver version to 10.3.8.0-20181120.
f000953 Upgrade 88W8997 firmware to 8.4.4.4.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-20 11:33:49 +01:00
Kevin Darbyshire-Bryant
8ff0dd57bf kernel: drop MIPS fix cache flushing for highmem pages
This patch, in a variety of forms, has been around since beginning 2016
as e756c2bb07, ending up in present form 0aa6c7df60 (kernel 4.4.13 bump)
and carried forward ever since.

There have been a number of MIPS kernel memory handling changes since,
including VDSO fixes that meant openwrt patches have been dropped with
no apparent fallout.

Simple tests (ntfs-3g) on a HIGHMEM 512MB mt7621 device have not turned
up data corruption issues which would otherwise be expected.  Similarly
running on other MIPS based devices for the past 2 months hasn't turned
up anything obvious to retain this out of tree patch.

With thanks to Rosen Penev for testing on the known 'highmem' device and
Felix Fietkau for testing advice.  Not putting acked-by as it's my fault
if it breaks :-)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-20 09:45:19 +00:00
Jo-Philipp Wich
c0248183a4 ath10k-firmware: update Candela Tech firmware images
- Removed an assert from wave-1 firmware images
 - Fix three recently reported firmware crashes in wave-2 images

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-20 09:23:45 +01:00
Jo-Philipp Wich
de7ae9a0ef iproute2: require nls infrastructure due to libelf linking
Depending on the global nls support configuration in the buildroot, the
linked libelf.so library might depend on libintl.so.

Import the nls.mk helper to set library prefixes and flags accordingly
in this case.

Ref: https://github.com/openwrt/packages/issues/7728#issuecomment-448760140
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-20 08:13:24 +01:00
Jo-Philipp Wich
f2c6e2c385 elfutils: produce correct libelf.pc file when building with full nls
When building with full lagnuage support, libelf.so will depend on and
link with libintl.so so we need to change the pkg-config template to
reflect this library dependency.

Also change the Makefile to only pass --disable-nls to configure when
the full nls support is actually disabled in the buildroot config.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-20 08:13:24 +01:00
Kevin Darbyshire-Bryant
99ddff0c7f tools: Update endian definitions for Mac OSX
- it appears (at least from OS X verison 10.10, Yosemite) that the
    big and little endian defintions have changed.

    the older

       #include <sys/_endian.h>
       #include <architecture/byte_order.h>

    reference yielded the following warning:

         #define __bswap_16(x)      NXSwapShort(x)
                                    ^
       /usr/include/architecture/byte_order.h:45:1: note: 'NXSwapShort' has been explicitly marked deprecated here

    For the new OS X editions, it seems that we need to refer to:

      #include <netinet/in.h>
      #include <libkern/OSByteOrder.h>

    and respectively use 'OSSwapInt16', 'OSSwapInt32', & 'OSSwapInt64', in
    place of 'NXSwapShort', 'NXSwapLong' & 'NXSwapLongLong'.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-19 15:08:30 +00:00
Yorkie Liu
8b2efc87db scripts: rstrip.sh: allow rpath with sole $ORIGIN token
2efe776 introduces rpath checks with the commit message:

> Remove all rpath entries which do not point to a location below /lib or
> /usr/lib and which do not begin with '$ORIGIN'.

However the implementation failed to support rpath entries with only the
'$ORIGIN' token and no trailing slash, so allow these as well.

Signed-off-by: Yorkie Liu <yazhong.liu@rokid.com>
[reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-19 15:36:05 +01:00
Jo-Philipp Wich
386803a006 iproute2: only link libelf where needed
The iproute2 build system links libelf support to every utility while only
the tc program actually requires libelf specific functionality.

Unfortunately the BPF ELF functionality is not confined into an own
compilation unit but added to the existing bpf.c sources of the shared
static libutil.a, causing every iproute2 applet to pick up an implicit
libelf.so dependency.

In order to avoid this requirement, patch the iproute2 build system to
create both a libutil.a and a libutil-elf.a, with the former being built
without libelf functionality and to only link the tc applet with the libelf
enabled libutil.

Finally, make the tc package depend on libelf to solve compilation errors.

Ref: https://github.com/openwrt/packages/issues/7728
Fixes: FS#2011
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-19 10:50:02 +01:00
Tony Ambardar
4b4e6a04ac elfutils: install library files for pkg-config
Support other packages using pkg-config to query existence and details of
libelf and libdw libraries at build time.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-12-19 10:49:57 +01:00
Tony Ambardar
10a2ccb7fc base-files: install missing /etc/iproute2/ematch_map
This file is needed to properly use the tc ematch modules present in
kmod-sched-core and kmod-sched. It is a read-only index file of ematch
methods used only by tc.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-12-19 07:33:35 +01:00
Stijn Tintel
8c6662a1ac brcm2708: switch to kernel 4.14
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:22 +02:00
Stijn Tintel
f5919b65d4 brcm2708: add kernel 4.14 support
Patch generation process:
- rebase rpi/rpi-4.14.y on v4.14.89 from linux-stable
- git format-patch v4.14.89

Patches skipped during rebase:
- lan78xx: Read MAC address from DT if present
- lan78xx: Enable LEDs and auto-negotiation
- Revert "softirq: Let ksoftirqd do its job"
- sc16is7xx: Fix for multi-channel stall
- lan78xx: Ignore DT MAC address if already valid
- lan78xx: Simple patch to prevent some crashes
- tcp_write_queue_purge clears all the SKBs in the write queue
- Revert "lan78xx: Simple patch to prevent some crashes"
- lan78xx: Connect phy early
- Arm: mm: ftrace: Only set text back to ro after kernel has been marked ro
- Revert "Revert "softirq: Let ksoftirqd do its job""
- ASoC: cs4265: SOC_SINGLE register value error fix
- Revert "ASoC: cs4265: SOC_SINGLE register value error fix"
- Revert "net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends"
- Revert "Revert "net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends""

Patches dropped after rebase:
- net: Add non-mainline source for rtl8192cu wlan
- net: Fix rtl8192cu build errors on other platforms
- brcm: adds support for BCM43341 wifi
- brcmfmac: Mute expected startup 'errors'
- ARM64: Fix build break for RTL8187/RTL8192CU wifi
- ARM64: Enable RTL8187/RTL8192CU wifi in build config
- This is the driver for Sony CXD2880 DVB-T2/T tuner + demodulator
- brcmfmac: add CLM download support
- brcmfmac: request_firmware_direct is quieter
- Sets the BCDC priority to constant 0
- brcmfmac: Disable ARP offloading when promiscuous
- brcmfmac: Avoid possible out-of-bounds read
- brcmfmac: Delete redundant length check
- net: rtl8192cu: Normalize indentation
- net: rtl8192cu: Fix implicit fallthrough warnings
- Revert "Sets the BCDC priority to constant 0"
- media: cxd2880: Bump to match 4.18.y version
- media: cxd2880-spi: Bump to match 4.18.y version
- Revert "mm: alloc_contig: re-allow CMA to compact FS pages"
- Revert "Revert "mm: alloc_contig: re-allow CMA to compact FS pages""
- cxd2880: CXD2880_SPI_DRV should select DVB_CXD2880 with
  MEDIA_SUBDRV_AUTOSELECT
- 950-0421-HID-hid-bigbenff-driver-for-BigBen-Interactive-PS3OF.patch
- 950-0453-Add-hid-bigbenff-to-list-of-have_special_driver-for-.patch

Make I2C built-in instead of modular as in upstream defconfig; also the
easiest way to get MFD_ARIZONA enabled, which is required by
kmod-sound-soc-rpi-cirrus.
Add missing compatible strings from
4.9/960-add-rasbperrypi-compatible.patch, using upstream names for
compute modules.
Add extra patch to enable the LEDs on lan78xx.

Compile-tested: bcm2708, bcm2709, bcm2710 (with CONFIG_ALL_KMODS=y)
Runtime-tested: bcm2708, bcm2710

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
822b4c3b25 brcm2708: add kmod-sound-soc-3dlab-nano-player
Add kernel module for 3Dlab Nano Player support in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
6971af4ff8 brcm2708: add kmod-sound-soc-rpi-cirrus
Add kernel module for Cirrus Logic Audio Card support in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
8848694114 brcm2708: add kmod-sound-soc-googlevoicehat
Add kernel module for Google Voice HAT support in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
6fc4d3350a brcm2708: add kmod-sound-soc-audioinjector-octo-soundcard
Add kernel module for AudioInjector Octo surround sound card support in
kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
7143bab519 brcm2708: add kmod-sound-soc-allo-katana-codec
Add kernel module for Allo Katana DAC support in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
9fd92c1bc2 brcm2708: add kmod-sound-soc-allo-piano-dac-plus
Add kernel module for the Allo Piano DAC Plus in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
88397f614a brcm2708: add kmod-sound-soc-allo-digione
Add kernel module for Allo DigiOne support in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
51ea0f508d brcm2708: add kmod-sound-soc-allo-boss-dac
Add kernel module for Allo Boss DAC support in kernel 4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
a51db53792 brcm2708: add kmod-hwmon-rpi-poe-fan
Add kernel module for the fan on the PoE HAT for the 3B+ model in kernel
4.14. Without this, the fan will not turn on.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
8e52243c77 brcm2708: prepare kmod-drm-vc4 for 4.14
It requires sound card support in the new kernel. HDMI CEC support is
disabled for now; enabling it turned out to be non-trivial.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
2c324e15f8 brcm2708: prepare kmod-video-bcm2835 for 4.14
Since kernel 4.12, this driver appeared in staging. The rpi-4.14.y
kernel tree uses these as well.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
1d6b080dc3 brcm2708: prepare kmod-sound-raspidac3 for 4.14
Support for RaspiDac3 has been removed from the rpi-4.14.y kernel tree.
Make the kmod package depend on kernel 4.9.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:21 +02:00
Stijn Tintel
757fa0b7d3 brcm2708: prepare kmod-sound-arm-bcm2835 for 4.14
Since kernel 4.12, this driver appeared in staging. The rpi-4.14.y
kernel tree uses these as well.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:19:20 +02:00
Stijn Tintel
b209e2b3b0 ubox: bump to git HEAD
876c7f5 kmodloader: load_modprobe: abort after 2 attempts

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 23:17:39 +02:00
Yousong Zhou
eda3094eb9 build: fix build dependency of kmod .ipk with version filtered files
We need to use resolved file list as prerequisites for repacking kmod
.ipk files.  Note that currently version_filter uses a Makefile macro
KERNEL_PATCHVER that should be available at ipk building time.

Reported-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-12-18 20:04:17 +00:00
Yangbo Lu
583af20b8b layerscape: use MKUBIFS_OPTS for per-device ubi parameters
UBIFS_OPTS couldn't be used for per-device ubi parameters.
Let's use MKUBIFS_OPTS instead.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-12-18 20:17:23 +01:00
Biwen Li
68904cb8fd layerscape: drop kernel 4.9 support
This patch is to drop kernel 4.9 support.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-12-18 20:17:23 +01:00
Biwen Li
328530c6e7 layerscape: add LS1021AIOT board support
The LS1021A-IoT gateway reference design based on the
QorIQ LS1021A processor is a purpose-built, small
footprint hardware platform with a wide array of
high-speed connectivity and low-speed serial interfaces
to support secure delivery of IoT services for home,
business or other commercial location.

- Combines standards-based, open source software with a
  feature-rich IoT gateway design to establish a common,
  open framework for secured IoT service delivery and
  management.

- Provides a wide assortment of high-speed and serial-based
  connectivity in a compact, highly secure design.

- High efficiency through the use of the Arm-based QorIQ
  LS1021A embedded processor.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: Biwen Li <biwen.li@nxp.com>
2018-12-18 20:17:23 +01:00
Biwen Li
0a827ebd2f layerscape: upgrade kernel to 4.14
This patch is to upgrade kernel to 4.14 for layerscape.
patches-4.14 for layerscape included two categories.

- NXP Layerscape SDK kernel-4.14 patches

  All patches on tag LSDK-18.09-V4.14 were ported to OpenWrt
  kernel. Since there were hundreds patches, we had to make
  an all-in-one patch for each IP/feature.
  See below links for LSDK kernel.
  https://lsdk.github.io/components.html
  https://source.codeaurora.org/external/qoriq/qoriq-components/linux

- Non-LSDK kernel patches

  Other patches which were not in LSDK were just put in patches-4.14.
  Kept below patches from patches-4.9.
  303-dts-layerscape-add-traverse-ls1043.patch
  821-add-esdhc-vsel-to-ls1043.patch
  822-rgmii-fixed-link.patch

  Renamed and rebase them as below in patches-4.14,
  303-add-DTS-for-Traverse-LS1043-Boards.patch
  712-sdk-dpaa-rgmii-fixed-link.patch
  824-mmc-sdhci-of-esdhc-add-voltage-switch-support-for-ls.patch

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Signed-off-by: Biwen Li <biwen.li@nxp.com>
2018-12-18 20:17:23 +01:00
Petr Štetiar
7bd6969acc kernel: Add missing symbols to 4.19
While building 4.19 for ath79 with CONFIG_ALL_KMODS=y with verbose mode
enabled I was asked by kernel config about few symbols/modules so I'm
adding those missing symbols to the generic config.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-18 20:17:22 +01:00
Petr Štetiar
11945174cf kernel: Fix usb-chipidea dependency on ulpi.ko for 4.19
It seems, that since Linux 4.18-rc2 ci_hdrc depends on ulpi.

 commit a930d8bd94d8db7715d1af74299f710b1fb22fc8
 Author: Fabio Estevam <fabio.estevam@nxp.com>
 Date:   Wed Jul 4 10:09:58 2018 -0300

    usb: chipidea: Always build ULPI code

    Commit 03e6275ae381 ("usb: chipidea: Fix ULPI on imx51") causes a kernel
    hang on imx51 systems that use the ULPI interface and do not select the
    CONFIG_USB_CHIPIDEA_ULPI option.

    In order to avoid such potential misuse, let's always build the
    chipidea ULPI code into the final ci_hdrc object.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-18 20:17:22 +01:00
Michael Heimpold
c1c14c9e56 uboot-envtools: fix configuration for I2SE Duckbills
After changing board names to DT compat string, we also need to
adjust the script which generates uboot-env configuration files.

Fixes: e880a30549 ("mxs: use generic sysinfo board detection")
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-12-18 20:17:22 +01:00
Stefan Lippers-Hollmann
02b5efe1fa uboot-envtools: ath79: add support for the Buffalo BHR-4GRV2
According to https://github.com/openwrt/openwrt/pull/1527, support
for the Buffalo BHR-4GRV2 in ath79 requires repartitioning from
an initramfs image, make this easier by supporting uboot-envtools
support out of the box.

Build tested, but not runtime tested.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-12-18 20:17:16 +01:00
Stefan Lippers-Hollmann
4200dae367 uboot-envtools: ath79: add support for the Buffalo WZR-HP-AG300H
Port support for the Buffalo WZR-HP-AG300H from the ar71xx target to
ath79 as well.

Build- and runtime tested on the Buffalo WZR-HP-AG300H.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-12-18 20:17:09 +01:00
Hans Dedecker
83109450ce dropbear: fix dropbear startup issue
Interface triggers are installed by the dropbear init script in case an
interface is configured for a given dropbear uci section.
As dropbear is started after network the interface trigger event can be
missed during a small window; this is especially the case if lan is
specified as interface.
Fix this by starting dropbear before network so no interface trigger
is missed. As dropbear is started earlier than netifd add a boot function
to avoid the usage of network.sh functions as call to such functions will
fail at boottime.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2018-12-18 19:43:22 +01:00
Koen Vandeputte
6835c13e5a cns3xxx: fix writing to wrong PCI registers
Originally, cns3xxx used it's own functions for mapping, reading and writing registers.

Upstream commit 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
removed the internal PCI config write function in favor of the generic one:

cns3xxx_pci_write_config() --> pci_generic_config_write()

cns3xxx_pci_write_config() expected aligned addresses, being produced by cns3xxx_pci_map_bus()
while the generic one pci_generic_config_write() actually expects the real address
as both the function and hardware are capable of byte-aligned writes.

This currently leads to pci_generic_config_write() writing
to the wrong registers on some ocasions.

First issue seen due to this:

- driver ath9k gets loaded
- The driver wants to write value 0xA8 to register PCI_LATENCY_TIMER, located at 0x0D
- cns3xxx_pci_map_bus() aligns the address to 0x0C
- pci_generic_config_write() effectively writes 0xA8 into register 0x0C (CACHE_LINE_SIZE)

This seems to cause some slight instability when certain PCI devices are used.

Another issue example caused by this this is the PCI bus numbering,
where the primary bus is higher than the secondary, which is impossible.

Before:

00:00.0 PCI bridge: Cavium, Inc. Device 3400 (rev 01) (prog-if 00 [Normal decode])
    Flags: bus master, fast devsel, latency 0, IRQ 255
    Bus: primary=02, secondary=01, subordinate=ff, sec-latency=0

After fix:

00:00.0 PCI bridge: Cavium, Inc. Device 3400 (rev 01) (prog-if 00 [Normal decode])
    Flags: bus master, fast devsel, latency 0, IRQ 255
    Bus: primary=00, secondary=01, subordinate=02, sec-latency=0

And very likely some more ..

Fix all by omitting the alignment being done in the mapping function.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-18 14:24:57 +01:00
Koen Vandeputte
9f2739e924 kernel: bump 4.14 to 4.14.89
Refreshed all patches.

Remove upstreamed patches:
- 096-v4.20-netfilter-ipv6-Preserve-link-scope-traffic-original-.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-18 14:24:57 +01:00
Koen Vandeputte
dd0a213bed kernel: bump 4.9 to 4.9.146
Refreshed all patches.

Compile-tested on: brcm2708
Runtime-tested on: brcm2708

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-18 14:24:57 +01:00
Koen Vandeputte
902a9f23d6 kernel: bump 3.18 to 3.18.130
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-18 14:24:57 +01:00
Mathias Kresin
09004e6e13 build: drop cameo-factory recipe
The cameo factory images are created using existing image build
commands, which makes the code obsolete.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-17 23:21:40 +01:00
Mathias Kresin
38cae44e51 ath79: replace cameo-factory with existing build commands
Use pad-offset and append-string to create the cameo factory images for
the D-LINK DIR-825 C1/DIR-835 A1 factory images.

Tested-by: Sebastian Kemper <sebastian_ml@gmx.net>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-17 23:21:40 +01:00
Mathias Kresin
ffdce856e0 build: move append-string to image-commands.mk
Move it to image-commands.mk so that it can used by other targets.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-17 23:21:26 +01:00
Syrone Wong
6263a9baa3 ipset: update to 7.1
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-12-17 21:57:22 +01:00
Hans Dedecker
b0414d7188 kernel: preserve oif of IPv6 link scope packets
Backort upstream patch which preserves oif of IPv6 link scoped packets.
The outgoing interface of IPv6 link scope packets can be changed by the
function ip6_route_me_harder. This is unwanted behavior for link local
packets and multicast packets as the outgoing interface is fixed and must
not be altered as it can break neighbor discovery and multicast listener
discovery.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-17 21:42:23 +01:00
Kevin Darbyshire-Bryant
3f7de917be netifd: fix ipv6 multicast check in previous commit
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-17 19:05:07 +00:00
Sebastian Kemper
b8271e9da0 image: remove duplicate cameo-factory
The function was accidentally added twice. Remove the duplicate.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2018-12-17 19:44:45 +01:00
Christian Lamparter
5ae45dc7b3 ipq40xx: GL-B1300: convert to new partitions layout
Alberto Bursi reported:
>The patch "ipq40xx: specify "firmware" partition format for GL.iNet GL-B1300"
>prevents boot on my B1300. I compiled from latest sources.

The GL-B1300 was using the discouraged direct subnodes method to declare
the partitions on the flash.

|The partition table should be a subnode of the flash node and should be named
|'partitions'. This node should have the following property:
|- compatible : (required) must be "fixed-partitions"
|Partitions are then defined in subnodes of the partitions node.
|
|For backwards compatibility partitions as direct subnodes of the flash device are
|supported. This use is discouraged.
|NOTE: also for backwards compatibility, direct subnodes that have a compatible
|string are not considered partitions, as they may be used for other bindings.
<https://www.kernel.org/doc/Documentation/devicetree/bindings/mtd/partition.txt>

Hence, this patch converts the device to the "partitions" layout.

Fixes: 1cbe457cf9 ("ipq40xx: specify "firmware" partition format for GL.iNet GL-B1300")
Reported-by: Alberto Bursi <bobafetthotmail@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 14:22:28 +01:00
Christian Lamparter
b9501cecde ath79: dts: Remove newly added default-state=off property
I'm afraid that this will be "one of many" patches to come.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 14:22:28 +01:00
Christian Lamparter
f54ac91ef5 ar71xx/ath79: switch devices to the -ct driver and firmware
Since commit 61b5b4971e ("mac80211: make ath10k-ct the default ath10k")
select ath10k-ct and the -ct firmwares by default.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 14:22:28 +01:00
Rafał Miłecki
4472df23da bcm53xx: include WiFi firmware for devices with 4366C0
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-17 12:51:06 +01:00
Rafał Miłecki
fa211623d0 linux-firmware: broadcom: package 4366C0 FullMAC firmware
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-17 12:51:00 +01:00
Rafał Miłecki
8b4f6a1d2a linux-firmware: update to the commit from 2018-12-16
It includes e.g. new Broadcom FullMAC firmwares for 4366B1 and 4366C0.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-17 11:42:45 +01:00
Kevin Darbyshire-Bryant
2574c86ce6 kernel: backport ifconfig ioctl support for class e addresses
Backport net: Allow class-e address assignment via ifconfig ioctl
While most distributions long ago switched to the iproute2 suite
of utilities, which allow class-e (240.0.0.0/4) address assignment,
distributions relying on busybox, toybox and other forms of
ifconfig cannot assign class-e addresses without this kernel patch.

While CIDR has been obsolete for 2 decades, and a survey of all the
open source code in the world shows the IN_whatever macros are also
obsolete... rather than obsolete CIDR from this ioctl entirely, this
patch merely enables class-e assignment, sanely.

https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git/commit/?id=65cab850f0eeaa9180bd2e10a231964f33743edf

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-17 10:40:20 +00:00
Kevin Darbyshire-Bryant
d112d095a9 netifd: support configuring class e 240.0.0.0/4 addresses
cd089c5 proto: Support class-e addressing in netifd

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-17 09:27:53 +00:00
Petr Štetiar
0d23fd2ab2 treewide: dts: Remove default-state=off property from all gpio LED nodes
>From the Documentation/devicetree/bindings/leds/common.txt:

- default-state : The initial state of the LED. Valid values are "on", "off",
  and "keep". If the LED is already on or off and the default-state property is
  set the to same value, then no glitch should be produced where the LED
  momentarily turns off (or on). The "keep" setting will keep the LED at
  whatever its current state is, without producing a glitch.  The default is
  off if this property is not present.

So setting the default-state of the LEDs to `off` is redundant as `off`
is default LED state anyway. We should remove it as almost every new
PR/patch submission contains this property by default which seems to be
just copy&paste from some DTS file already present in the tree.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-17 08:16:28 +01:00
Karl-Felix Glatzer
1e4ee63cc8 ath79: add support for TP-Link Archer A7
This patch adds support for TP-Link Archer A7

Specification:
- SOC: QCA9563
- Flash: 16 MiB (SPI)
- RAM: 128 MiB (DDR2)
- Ethernet: 4x 1Gbps LAN + 1x 1Gbps WAN
- Wireless:
  - 2.4GHz (bgn) SoC internal
  - 5GHz (ac) QCA988x
- USB: 1x USB 2.0 port
- Button: 1x power, 1x reset, 1x wps
- LED: 10x LEDs
- UART: holes in PCB
  - Vcc, GND, RX, TX from ethernet port side
  - 115200n8

Flash instructions:

Upload openwrt-ath79-generic-tplink_archer-a7-v5-squashfs-factory.bin
via the Webinterface.

Flash instruction using tftp recovery:

1. Connect the computer to one of the LAN ports of the Archer A7
2. Set the computer IP to 192.168.0.66
3. Start a tftp server with the OpenWrt factory image in the tftp
   root directory renamed to ArcherC7v5_tp_recovery.bin
2. Connect power cable to Archer A7, press and hold the reset button
   and turn the router on
3. Keep the reset button pressed for ~5 seconds
4. Wait ~150 seconds to complete flashing

Changes since first revision:

  - Flash instructions using stock image webinterface
  - Changed "Version 5" in model string to "v5"
  - Split DTS file in qca9563_tplink_archer-x7-v5.dtsi
    and qca9563_tplink_archer-a7-v5.dts
  - Firmware image is now build with dynamic partitioning
  - Default to ath10k-ct

Changes since second revision:
  - Changed uboot@0 to uboot@20000 in DTS file
  - Fixed ordering issue in board led script
  - Specify firmware partition format in DTS file
  - Rebased Makefile device definition on common
    Device/tplink-safeloader-uimage definition
  - Merged switch section in network script
    (same configuration as tplink,tl-wdr3600
    and tplink,tl-wdr4300)

Signed-off-by: Karl-Felix Glatzer <karl.glatzer@gmx.de>
2018-12-17 08:09:13 +01:00
Petr Štetiar
d9753f0ec5 ath79, brcm63xx: Fix debounce-interval properties in gpio-keys-polled nodes
This patch fixes wrong usage of debounce-interval subnode property of
gpio-keys-polled nodes, which was used inproperly in parent node, but it
belongs to the subnodes, excerpt from the docs:

 Optional subnode-properties:
     - debounce-interval: Debouncing interval time in milliseconds.
       If not specified defaults to 5.

And the docs are up to date as the source code matches that description
as well:

 if (fwnode_property_read_u32(child, "debounce-interval",
                              &button->debounce_interval))
         button->debounce_interval = 5;

While at it, I've also re-formatted gpio-keys-polled nodes, usually just
adding new lines after every key subnode.

Cc: Tomasz Maciej Nowak <tomek_n@o2.pl>
Cc: Matt Merhar <mattmerhar@protonmail.com>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-17 08:05:03 +01:00
Petr Štetiar
7bd2595b67 ath79: ag71xx: Fix code formatting in ag71xx_probe
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-17 08:04:19 +01:00
Petr Štetiar
a29df78c9f ath79: ag71xx: Unify debug output with ar71xx and make debugging easier
Currently it's quite hard to diff debugging output between ar71xx and
ath79, so this patch tries to improve it by adding the same
ag71xx_dump_regs function and placing debugging output from the
registers to relatively same places.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-17 08:04:05 +01:00
Petr Štetiar
22f9afa118 ar71xx: ag71xx: Replace duplicate debugging code with simple function call
ag71xx_dump_regs is used in code several times, and is providing same
output.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-17 08:03:45 +01:00
Yousong Zhou
3cc31ea8d3 scripts/qemustart: more compact rand_mac()
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-12-17 04:16:34 +00:00
Stefan Lippers-Hollmann
6b63595fec ipq806x: drop kernel/ rootfs partition images for the ZyXEL NBG6817
Since commit 8e9a59a6b9 (build: add
mkrasimage) a proper factory image can be provided for the ZyXEL
NBG6817, which can be flashed from the OEM firmware or used for
tftp based push-button recovery, therefore the previously used
partition images for mmcblk0p5-rootfs.bin and mmcblk0p4-kernel.bin
are no longer required (and using them properly has always been
slightly difficult and risky) and can now be dropped from the image
generation code.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-12-17 00:21:34 +01:00
Sebastian Kemper
6c3c4436ee ath79: add d-link dir-825-c1 and dir-835-a1
This commit ports both dir-825-c1 and dir-835-a1 from ar71xx to ath79.
They're pretty much identical, except dir-835-a1 has less LEDs.

The routers come with 128 MByte of RAM and 16 MBytes of flash and sport
2.4GHz and 5.0GHz wireless. Both routers have entries already in
OpenWrt's TOH. Please check there for more information on these
antiquities.

https://openwrt.org/toh/hwdata/d-link/d-link_dir-825_c1
https://openwrt.org/toh/hwdata/d-link/d-link_dir-835_a1

Installation:

1. Connect to the web interface of the vendor firmware (usually
   listening on 192.168.0.1).
2. Go to "Tools", then "Firmware".
3. In the "Firmware Upgrade" box click "Browse".
4. Select the OpenWrt factory image for your router.
5. Click "Upload", confirm the popups if you agree to flash the file you
   selected.
6. Wait for firmware upgrade to complete. It takes about 5 minutes.

Run-tested on dir-825-c1. dir-835-a1 should work as well, but I don't
have this router so I can't confirm.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [trivial changes]
2018-12-17 00:21:34 +01:00
Sebastian Kemper
247fdceab6 image: add cameo-factory command
This command enables factory image generation for Cameo boards. On
upgrade the vendor firmware will check the size of the provided image
and if a specific string is located at the end of the binary.
cameo-factory will generate an image that the vendor firmware accepts.

Tested on a D-Link DIR-825 C1 with vendor firmwares 3.01 and 3.04.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2018-12-17 00:21:34 +01:00
Christian Lamparter
2630aae36f ipq40xx: device-tree overhaul
- replace licence texts with SPDX-License-Identifier where
   applicable.

 - make node-names more generic to fit with Device-Tree Release v0.2
   Section 2.2.2 Generic Names Recommendation.

 - utilize wifi0/1, blsp1_uart1 labels

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
97ba1411e5 ipq40xx: specify "firmware" partition format for EnGenius EAP1300
Specify firmware partition format by compatible string.

Cc: Steven Lin <steven.lin@senao.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
1cbe457cf9 ipq40xx: specify "firmware" partition format for GL.iNet GL-B1300
Specify firmware partition format by compatible string.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
771736c039 ipq40xx: specify "firmware" partition format for Compex WPJ428
Specify firmware partition format by compatible string.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
db2e32c04b ipq40xx: specify "firmware" partition format for ZyXEL WRE6606
Specify firmware partition format by compatible string.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
e2dc8f2ab4 ipq40xx: specify "firmware" partition format for Netgear EX61[50]0v2
Specify firmware partition format by compatible string.

Cc: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
bff9d4e081 ipq40xx: specify "firmware" partition format for AVM Fritz!Box 4040
Specify firmware partition format by compatible string.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:34 +01:00
Christian Lamparter
40180b6305 kernel: add DT binding support to the fit parser
It allows specifying default and Netgear parsers directly in the DT.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-17 00:21:33 +01:00
Hauke Mehrtens
201058b35c base-files: Fix netdev led trigger
In the upstream netdev led trigger the one mode file was replaced by 3
files named rx, tx and link. Fix the netdev trigger configuration code
to use the modified API.

Fixes: aa3b6a08c5 ("kernel: Replace ledtrig-netdev with upstream backport")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 20:11:44 +01:00
Hans Dedecker
3262fce1cd omcproxy: use PROJECT_GIT in PKG_SOURCE_URL
Switch PKG_SOURCE_URL to git.openwrt.org

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-16 19:23:36 +01:00
Kevin Darbyshire-Bryant
d6c6d1c7a7 Revert "elfutils: install library files for pkg-config"
This reverts commit 216397b812.

Due to:

Package ip-tiny is missing dependencies for the following libraries:
libelf.so.1
Makefile:187: recipe for target '/var/lib/buildbot/slaves/slave-lede-builds4/mips_24kc/build/sdk/bin/packages/mips_24kc/base/ip-tiny_4.19.0-6_mips_24kc.ipk' failed

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-16 17:20:16 +00:00
Hans Dedecker
0074a5e67e omcproxy: switch to OpenWrt github repo
Switch to OpenWrt github repo in PKG_SOURCE_URL so we can
remove the out of tree patch

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-16 18:09:23 +01:00
Hauke Mehrtens
3c04d10483 gemini: Activate USB support again
This activates the CONFIG_USB_SUPPORT option in the in the gemini kernel
again which will provide the core USB support and makes it possible to
compile the rest of the USB parts into modules. Without this change USB
will not be available in the gemini target and some modules fail to
compile because the feature list indicates USB support.

Fixes: 10ec966f7b ("gemini: Break out USB to packages")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 14:59:59 +01:00
Hauke Mehrtens
835947ce64 hostapd: Make eapol-test depend on libubus
The eapol-test application also uses the code with the newly activated
ubus support, add the missing dependency.

Fixes: f5753aae23 ("hostapd: add support for WPS pushbutton station")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 14:25:41 +01:00
Hauke Mehrtens
02324da206 tools/sdimage: Fix build with host Linux headers < 3.18
The ufb tool needs the host UAPI Linux headers from kernel 3.18
or later, remove it for now as it is not used anyway.

Fixes: 4bf5c4395b ("tools/sdimage: update to latest git version")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 14:03:35 +01:00
Hauke Mehrtens
9e7c4702a1 mbedtls: fix compilation on ARM < 6
mbedtls uses some instructions introduced in ARMv6 which are not
available in older architectures.

Fixes: 3f7dd06fd8 ("mbedtls: Update to 2.14.1")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 14:03:06 +01:00
NOGUCHI Hiroshi
83a97c53fa ramips: add support for Netgear R6350
Netgear R6350 is a wireless router, aka Netgear AC1750.

Specification:
- SoC: Mediatek MT7621AT (2 CPU cores, 4 threads)
- RAM: 128MiB (Nanya NT5CC64M16GP-DI)
- ROM: 128MiB NAND Flash (Macronix MX30LF1G18AC-TI)
- Wireless:
   for 11b/g/n (upto 300Mbps): MT7603
   for 11a/ac  (upto 1450Mbps) : MT7615, is not avaliable now
- Ethernet LAN speed: up to 1000Mbps
- Ethernet LAN ports: 4
- Ethernet WAN speed: up to 1000Mbps
- Ethernet WAN ports: 1
- USB ports: 1 (USB 2.0)
- LEDs: 4 (all can be controlled by SoC's GPIO)
- buttons: 2
- serial ports: unknown

Installation through telnet:
  - Copy kernel.bin and rootfs.bin to a USB flash disk,
    plug to usb port on the router.
  - Enable telnet with link: http://192.168.1.1/setup.cgi?todo=debug
    (login if required, default: admin password)
  - You will see "Debug Enabled!"
  - Telnet 192.168.1.1 and login with "root"
  - ls /mnt/shares/ to find out path of your USB disk.
    'myUdisk' for example.
  - cd /mnt/shares/myUdisk
  - mtd_write write rootfs.bin Rootfs
  - mtd_write write kernel.bin Kernel
  - reboot

recovery when bricked:
  nmrpflash can be used to recover to the netgear firmware
  if a broken image was flashed.

The SC_PART_MAP partition suggests that an on flash partition table
exists. After implementing a partition parser/builder for the sercom
partition format, the definitions don't match the flash layout used by
the stock firmware.

It either means the partition format has not yet been completely
understood or it isn't used by the stock firmware. For now, use fixed
partitions instead.

Signed-off-by: NOGUCHI Hiroshi <drvlabo@gmail.com>
[apply latest ramips changes and document the on flash partition map
issues]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-16 08:41:41 +01:00
Daniel Santos
9850e42284 jffs2: Fix use of uninitialized delayed_work, lockdep breakage
I've sent this one upstream.  This patch is critical if you want to run
with "prove lock correctness" (lockdep) and you happen to have certain
mtd devices.  The misuse of the uninitialized object is undefined
behaviour, but being zeroed it does not appear to have actually broken
anything other than the lockdep engine.

Signed-off-by: Daniel Santos <daniel.santos@pobox.com>
2018-12-16 01:18:48 +01:00
Michael Heimpold
4bf5c4395b tools/sdimage: update to latest git version
This includes code cleanups and fixes some portability issues,
compiler warnings about printf arguments etc.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-12-16 00:57:20 +01:00
Roman Bazalevsky
f332ae3c43 kernel/modules: HMC5843 3D-compass kernel module support enabled.
Signed-off-by: Roman Bazalevsky <rvb@rvb.name>
2018-12-16 00:57:20 +01:00
Daniel Engberg
3f7dd06fd8 mbedtls: Update to 2.14.1
Update mbedtls to 2.14.1

This fixes:
* CVE-2018-19608: Local timing attack on RSA decryption

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[Update to 2.14.1]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 00:57:20 +01:00
Brett Mastbergen
2b6eab507a netfilter: Add fib support for nftables
Signed-off-by: Brett Mastbergen <bmastbergen@untangle.com>
2018-12-16 00:57:20 +01:00
Anderson Luiz Alves
0c3c944d1e kernel: mv88e6060: disable hardware level MAC learning
Disable Marvell's hardware level MAC learning because it breaks station roaming.

When enabled it drops all frames that arrive from a MAC address
that is on a different port at learning table.

Problem description:
Multiple APs with inter-AP roaming connected to different ports,
when station moves from one AP on one port to another AP on another port,
traffic flow breaks down because the learning table is not updated.

Signed-off-by: Anderson Luiz Alves <alacn1@gmail.com>
[Replaced with upstream version, move to generic]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 00:57:20 +01:00
Deng Qingfang
18501889f6 kernel: add mv88e61xx switch port-mirroring support
Compile & run tested on mvebu

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-12-16 00:57:20 +01:00
Deng Qingfang
b88ce25e81 mt76: fix dependencies
Only MT76x0U needs kmod-mt76x02-usb

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-12-16 00:57:20 +01:00
Rosen Penev
1e98d985bb swconfig: Add missing include
Fixes these warnings:

swlib.c:455:18: warning: implicit declaration of function 'isspace'
swlib.c:461:9: warning: implicit declaration of function 'isdigit'

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-12-16 00:57:19 +01:00
Rosen Penev
d2b16a59d5 f2fs-tools: Update to 1.12.0
Added two upstream mailing list patches that fix behavior under big endian
systems. Issue was present since version 1.11.0.

Tested on Turris Omnia.

Original discussion: https://github.com/openwrt/openwrt/pull/1575

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-12-16 00:57:19 +01:00
Andre Heider
5d501e54fc lantiq: add integer latency stat for lantiq-dsl
The current stats always have a 'ms' suffix, and they're used by luci.
Introduce dsl.latency_[down|up] values, exported in µs without suffix.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2018-12-16 00:57:19 +01:00
Ben Greear
d8f861f408 rtl8812au: Add out-of-tree driver.
Use a forked version of the rtl8812au driver that works better
with OpenWRT (fix compile bugs, fix phy MAC address, etc)

Signed-off-by: Ben Greear <greearb@candelatech.com>
[update to 2018-11-16, replace rtw_byteorder.h, rename folder]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-16 00:57:19 +01:00
Eneas U de Queiroz
cb4d00d184 omcproxy: fix compilation on little-endian CPUs
Don't use cpu_to_be32 outside of a function.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-12-16 00:57:19 +01:00
Marcin Jurkowski
3c3eaa57d9 ath79: add support for TP-Link TL-WR842N/ND v1 router
This ports support for TP-Link TL-WR842N/ND v1 from ar71xx.

CPU: Atheros AR7241 400 MHz
RAM: 32 MiB
FLASH: 8 MiB
PORTS: 4 Port 100/10 Switch, 1 Port 100/10 Wan
WiFi: Atheros AR9287
LED: SYS, WiFi, LAN, WAN, 3G, QSS
BTN: WiFi, Reset/WPS

AR71xx target used "tl-mr3420" as board id so force flag is needed
if upgrading from old target.

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [trivial cleanup]
2018-12-15 21:35:45 +01:00
Christian Lamparter
330965b342 ipq806x: add ath10k calibration data MAC addresses patching
Ben Greear reported in his patch:
|Subject: netgear r7800: Fix mac address of radios.
|
|Reloading the driver causes the phyX to change, and that
|caused the MAC address to change.

This is because all ODM/OEMs except QCA bothered to write
the correct MAC address for the ath10k wifi into the
calibration data.

This patch copies over the MAC patching helper functions from ipq40xx's
target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
file and converts all the devices to patch the correct MACs into the
extracted calibration data before it gets sent to the driver, which sets
up the device with the correct MAC address. It also removes the entries
in the 10_fix_wifi_mac file as they have served their purpose for good.

Please note the C2600: There is conflicting information on what
the offset for the second wifi is supposed to be. This patch uses
what was specified in 10_fix_wifi_mac.

According to Ben Greear this method is save to use with the
stock firmware too. As he explained that the stock firmware
messes up rx-bssid mask calculation when the MAC is changed
after the first vif is created.

Reported-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-15 21:06:11 +01:00
Mathias Kresin
dd5e7d6c50 ramips: mt7620: add usb packages
Add the usb drivers for all boards with enabled ochi/ehci node in the
dts file.

Fixes: FS#1987

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-15 20:02:07 +01:00
Mathias Kresin
30c07a5675 ramips: mt7620: remove unnecessary usb packages
These are either installed as dependency or not required at all.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-15 20:02:07 +01:00
Mathias Kresin
e04d352d63 ramips: mt7620: add usb ohci driver
Add the USB 1.1 driver for all boards not having a fixed USB 2.0
device attached to the USB bus.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-15 20:02:07 +01:00
Deng Qingfang
47381aadd5 ramips: several fixes for HC5x61
- Mark other partitions as read-only for HC5x61

 - Only enable USB and PCIe for HC5761/HC5861
   HC5661 doesn't have a USB port, and there is nothing attached to its PCIe.

 - Fix HC5761 switch ports
   HC5761 has only 3 ethernet ports (1x WAN + 2x LAN). Remove unused ports.

 - Fix HC5861 5GHz radio
   HC5861 has MT7612EN 5GHz WiFi chip, not MT7610EN.

 - Fix HC5761/HC5861 WiFi LEDs
   After 5GHz is enabled, it becomes wlan0. And 2.4GHz would be wlan1.

 - Fix HC5x61 image size
   It should be 15872k (0xf80000)

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-12-15 20:02:07 +01:00
Christian Lamparter
10ad6d6e07 ipq40xx: integrate ath10kcal_patch_mac into ath10kcal_patch_mac_crc
In the thread: "ipq806x: add ath10k calibration data MAC addresses patching"
Chuanhong Guo <gch981213@gmail.com> noted that:
"All ath10k calibration data have a checksum at 0x2.
ath10kcal_patch_mac works for QCA9880/QCA9882 only because
the ath10k firmware for these two chips doesn't check the
checksum value. (QCA proprietary driver checks this and
refuses to use caldata with incorrect checksum.)"

This patch updates 11-ath10k-caldata of the ipq40xx target accordingly.

Reported-by: Chuanhong Guo <gch981213@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-15 19:02:00 +01:00
Michael Yartys
cc5c63f217 ath10k-firmware: update all CT firmware variants
Wave-1 firmware (988x, 9887): bug fixes
Wave-2 firmware (4019, 9888, 99x0, 9984): fix protected management frames, rate-ctrl fixes, and performance improvements

Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
2018-12-15 15:25:24 +01:00
Hauke Mehrtens
4df3c71cd4 ath10k-ct: Update to 2018-12-11 and use version based on 4.19
This updates the ath10k-ct driver to the version from 2018-12-11 and
selects the ath10k-ct version based on kernel 4.19 by default.

CONFIG_ATH10K_CE was introduced between kernel 4.16 and 4.19 and is a
mandatory option.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 15:25:23 +01:00
Hauke Mehrtens
af1aa07b07 gcc: update to version 7.4.0
This updates the GCC to the next minor release which fixes 178 bugs.
The two removed patches are included in gcc 7.4.0

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-15 15:25:03 +01:00
Hauke Mehrtens
fbaf48387e kernel: netfilter: chain filters merged into nf_tables.ko
In mainline kernel commit 02c7b25e5f5 ("netfilter: nf_tables: build-in
filter chain type") all chain filters were merged into one file and into
one kernel module to save some memory. The code protected by these
configuration options CONFIG_NF_TABLES_BRIDGE, CONFIG_NF_TABLES_IPV4,
CONFIG_NF_TABLES_ARP, CONFIG_NF_TABLES_IPV6, CONFIG_NF_TABLES_NETDEV and
CONFIG_NF_TABLES_INET was merged into the nft_chain_filter.c file which
is now always compiled into the nf_tables.ko file.

This only happened in kernel 4.19 and OpenWrt has to select these as
modules in older kennel versions. Mark them as build-in in the kernel
4.19 specific kernel configuration file which will then not be
overwritten by the package specific settings which try to make them
modular again.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
f891670704 kernel: netfilter: Adapt merge ipv4/ipv6 masquerade code
In kernel commit 0168e8b361 ("netfilter: nat: merge ipv4/ipv6 masquerade
code into main nat module") the CONFIG_NF_NAT_MASQUERADE_IPV4 and
CONFIG_NF_NAT_MASQUERADE_IPV6 kernel configuration option were changed
to bool and the code will not be compiled as a own module any more, but
it will be integrated into nf_nat_ipv4.ko or nf_nat_ipv6.ko to save some
memory.

Activate these options as bool in the generic kernel 4.19 configuration
only, to always build them into the nf_nat_ipv*.ko modules. The kmod
file will still try to select them as module, but the generic
configuration will not be overwritten.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
f72f793c9e kernel: netfilter: Add nf_conncount.ko
Some kernel modules from kmod-ipt-conntrack-extra depend on
nf_conncount.ko, which was added in kernel 4.16, add it to the kmod.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
89806545cc kernel: netfilter: Add nf_tproxy_ipv{4,6} and nf_socket_ipv{4,6}
The nf_socket.ko module was split in commit 8db4c5be88f ("netfilter:
move socket lookup infrastructure to nf_socket_ipv{4,6}.c") into a
common, n IPv4 and an IPv6 part.
The nf_tproxy.ko module was split in commit 45ca4e0cf27 ("netfilter:
Libify xt_TPROXY") into a common, an IPv4 and an IPv6 part.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
35929059b7 kernel: netfilter: Add nf_defrag_ipv6.ko to NF_CONNTRACK on 4.19
In kernel commit a0ae2562c6c ("netfilter: conntrack: remove l3proto
abstraction") The modules nf_conntrack_ipv4.ko, nf_conntrack_ipv6.ko and
nf_conntrack.ko were squashed together into one module. This module now
depends on nf_defrag_ipv6 when IPv6 support was activated. This is part
of the main netfilter packages, so add nf_defrag_ipv6.ko also to the
default netfilter packages on kernel 4.19 and later.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
d234431c0c kernel: Make CONFIG_NVMEM tristate
CONFIG_OF_NET depends on CONFIG_NVMEM in kernel 4.19. To fix some build
problems in mainline Linux kernel CONFIG_NVMEM was changed from tristate
to bool in commit 2a37ce25d9 ("nvmem: disallow modular CONFIG_NVMEM").

This patch in OpenWrt revert the upstream commit and changes
CONFIG_NVMEM back to tristate we just have to make sure to build this in
for all targets which select CONFIG_OF_NET.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
4c9df2aa08 kernel: tg3: Do not depend on kmod-hwmon-core on kernel 4.19
Like on kernel 4.14 this dependency is deactivated in OpenWrt.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
31abe08331 kernel: Add missing dependency to kmod-regmap
Like on kernel 4.14 some kernel modules depend now on regmap.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:50 +01:00
Hauke Mehrtens
7eabe0e433 kernel: Make video-gspca-core depend on vidobuf2
This new dependency is needed for kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
edc4da5da1 kernel: Always activate CONFIG_HW_RANDOM_TPM
CONFIG_HW_RANDOM_TPM does not activate a separate kernel module any
more, but it only activates the random code in the tpm.ko.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
c8f85a866b kernel: Make kmod-mpls depend on iptunnel in kernel 4.19
This new dependency is needed with kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
59065da634 kernel: Adapt to move of autofs4 in kernel 4.19
autofs4 is now in the fs/autofs/ folder in kernel 4.19

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
b688ec6433 kernel: Adapt to new location of video-videobuf2 in kernel 4.19
The video-videobuf2 kernel modules were moved to a new folder in kernel
4.19. videobuf2-v4l2.ko is only available since kernel 4.4, blacklist
this kmod completely on kernel 3.18.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
f125706596 kernel: Add dependencies for kernel 4.19
These dependencies are needed on kernel 4.14 and kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
6505b084cb kernel: Use crypto_simd.ko instead of lrw.ko for x86
The x86 optimized cryptographic algorithm kernel modules now mostly use
crypto_simd.ko instead of lrw.ko in kernel 4.19. Add the new module to
the kmod-crypto-misc package.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
5f67559b42 kernel: Remove crypto/ablk_helper.ko on kernel 4.19
This module was removed in kernel 4.17, all users are refactored to not
need this any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
35e0f600d8 kernel: extract asn1_decoder.ko
The asn1_decoder.ko module is needed by the kmod-nf-nathelper-extra
package in kernel 4.19, extract it and add the missing dependencies.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
36bf45ff4a kernel: add missing dependency to kmod-crypto-acompress
Like kernel on 4.14 some modules need the dependency to
kmod-crypto-acompress on kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:49 +01:00
Hauke Mehrtens
583d65ebfe kernel: Adapt to moved kvaser_usb.ko in kernel 4.19
In kernel 4.19 the kvaser_usb.ko file moved into its own directory.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
4ff4411031 kernel: Use kmod-dax on kernel 4.19
Like on kernel 4.14 kmod-dax is needed by kmod-dm also in kernel 4.19.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
6ca336479d i2c-gpio-custom: Adapt to moved include file
The i2c-gpio.h file was moved in kernel 4.18.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
a116b8e0b6 kernel: Deactivate *-gpio-custom drivers for 4.19
Kernel interface changed with kernel 4.19, it does not accept raw GPIO
numbers any more. Deactivate these drivers on kernel 4.19 for now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
7ffa42246b kernel: Add kmod-phy-realtek
The r8169 driver uses the phy lib with the realtek phy driver in kernel
4.19 instead of integrating the phy driver into the mac driver.
Add the new phy driver and add this missing dependency.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
e30ea44f68 kernel: Remove deprecated generic linux,part-probe patch
This is now replaced by some other mtd partition parsing which was
merged into upstream.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
9261e7447e kernel: Make the patches apply on top of 4.19
This makes the patches which were just copied in the previous commit
apply on top of kernel 4.19.

The patches in the backports-4.19 folder were checked if they are really
in kernel 4.19 based on the title and only removed if they were found in
the upstream kernel.

The following additional patches form the pending folder went into
upstream Linux 4.19:
pending-4.19/171-usb-dwc2-Fix-inefficient-copy-of-unaligned-buffers.patch
pending-4.19/190-2-5-e1000e-Fix-wrong-comment-related-to-link-detection.patch
pending-4.19/478-mtd-spi-nor-Add-support-for-XM25QH64A-and-XM25QH128A.patch
pending-4.19/479-mtd-spi-nor-add-eon-en25qh32.patch
pending-4.19/950-tty-serial-exar-generalize-rs485-setup.patch
pending-4.19/340-MIPS-mm-remove-mips_dma_mapping_error.patch

Bigger changes were introduced to the m25p80 spi nor driver, as far as I
saw it in the new code, it now has the functionality provided in this
patch:
pending-4.19/450-mtd-m25p80-allow-fallback-from-spi_flash_read-to-reg.patch

Part of this patch went upstream independent of OpenWrt:
hack-4.19/220-gc_sections.patch
This patch was reworked to match the changes done upstream.

The MIPS DMA API changed a lot, this patch was rewritten to match the
new DMA handling:
pending-4.19/341-MIPS-mm-remove-no-op-dma_map_ops-where-possible.patch

I did bigger manual changes to the following patches and I am not 100% sure if they are all correct:
pending-4.19/0931-w1-gpio-fix-problem-with-platfom-data-in-w1-gpio.patch
pending-4.19/411-mtd-partial_eraseblock_write.patch
pending-4.19/600-netfilter_conntrack_flush.patch
pending-4.19/611-netfilter_match_bypass_default_table.patch
pending-4.19/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
hack-4.19/211-host_tools_portability.patch
hack-4.19/221-module_exports.patch
hack-4.19/321-powerpc_crtsavres_prereq.patch
hack-4.19/902-debloat_proc.patch

This is based on patchset from Marko Ratkaj <marko.ratkaj@sartura.hr>

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 14:28:48 +01:00
Hauke Mehrtens
52a82ce3dd kernel: Copy patches from kernel 4.14 to 4.19
This just copies the files from the kernel 4.14 specific folders into
the kernel 4.19 specific folder, no changes are done to the files in
this commit.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 12:50:06 +01:00
Hauke Mehrtens
a272af75cd kernel: Move modifications of b53.h into patch
The b53 driver was added as a dsa driver into the mainline Linux kernel,
but we still use the swconfig based driver. The header file b53.h is
used by both drivers, but the swconfig one needs an extra member, add
this one in a patch to not overwrite the version shipped with the
mainline kernel.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 12:50:06 +01:00
Hauke Mehrtens
aa3b6a08c5 kernel: Replace ledtrig-netdev with upstream backport
The ledtrig-netdev was added to upstream Linux kernel 4.16, replace our
own version with the patch based on the upstream version.
This will remove the ledtrig-netdev support from kernel 3.18, because I
not want to spend time on backporting it to 3.18. This will make it
easier to use the upstream version with kernel 4.19, by just not
applying this patch.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 12:50:06 +01:00
Hauke Mehrtens
42e62a8a10 kernel: Reorder configuration
This reorders the generic kernel configuration files.
This was done with the following commands:
$ ./scripts/kconfig.pl '+' target/linux/generic/config-4.14 /dev/null > target/linux/generic/config-4.14-new
$ mv target/linux/generic/config-4.14-new target/linux/generic/config-4.14
$ ./scripts/kconfig.pl '+' target/linux/generic/config-4.9 /dev/null > target/linux/generic/config-4.9-new
$ mv target/linux/generic/config-4.9-new target/linux/generic/config-4.9

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-15 12:50:06 +01:00
Hans Dedecker
a6f9e3b608 nghttp2: bump to 1.35.1
63843750 Update manual pages
27801e98 Bump up version number to 1.35.1
60e020a8 nghttpx: Fix broken trailing slash handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-15 12:30:02 +01:00
Kevin Darbyshire-Bryant
9048b22e67 dnsmasq: Fix dhcp-boot, dhcp-reply-delay and pxe-prompt regressions
The above options were incorrectly changed to required tags.  Make them
optional again.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-14 17:51:42 +00:00
Hans Dedecker
a969e96e47 glibc: update to latest 2.27 commit (BZ #23927)
f6d0e8c36f Fix rwlock stall with PREFER_WRITER_NONRECURSIVE_NP (bug 23861)
2794474c65 powerpc: Add missing CFI register information (bug #23614)
d8ca7a0c71 Fix _dl_profile_fixup data-dependency issue (Bug 23690)
f1e211096b inet/tst-if_index-long: New test case for CVE-2018-19591 [BZ #23927]
4e9f34e54f support: Implement <support/descriptors.h> to track file descriptors
e75481a7a7 support: Close original descriptors in support_capture_subprocess
0f79dc0be3 support_quote_string: Do not use str parameter name
6b2dd53aa0 support: Implement support_quote_string
50477165b9 malloc: Add another test for tcache double free check.
4b246928bd malloc: tcache double free check

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-14 16:18:32 +01:00
Koen Vandeputte
fdd11a6eae kernel: bump 4.14 to 4.14.88
Refreshed all patches.

Altered patches:
- 180-usb-xhci-add-support-for-performing-fake-doorbell.patch

Fixes CVE:
- CVE-2018-14625

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-14 13:01:49 +01:00
Koen Vandeputte
fd918b413a kernel: bump 4.9 to 4.9.145
Refreshed all patches.

Fixes CVE:
- CVE-2018-14625

Compile-tested on: brcm2708
Runtime-tested on: brcm2708

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-14 13:01:45 +01:00
Koen Vandeputte
2bc4af1770 kernel: bump 3.18 to 3.18.129
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-14 13:01:41 +01:00
Hans Dedecker
6ff27cf0f5 iproute2: backport patch fixing incorrect usage of LDFLAGS
Backport upstream patch fixing incorrect passing of -lxtables to
LDFLAGS instead of LDLIBS in the tc/Makefile

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-14 09:57:15 +01:00
Hans Dedecker
81bb9189e4 netifd: update to latest git HEAD
1ac1c78 system-linux: get rid of SIOCSDEVPRIVATE

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-13 22:05:40 +01:00
Hauke Mehrtens
ac5a6acbb1 mac80211: Update to version 4.19.7-1
This updates the backports package used in mac80211 to version 4.19.7-1
which is based on kernel 4.19.7. This integrates all the stable fixes
introduces in this kernel version.

The deleted patches are not needed any more because they are either
included in the upstream Linux kernel 4.19.7 or in backports 4.19.7-1.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-12-13 21:33:31 +01:00
Rafał Miłecki
816ae87709 kernel: drop unneeded LINUX_VERSION_CODE checks
All those parsers are used by 4.14 targets. They don't need that
backward compatibility code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-13 16:59:21 +01:00
Rafał Miłecki
2abb128f2e kernel: add DT binding support to the LZMA and WRG parsers
It allows specifying those parsers directly in the DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-13 16:59:00 +01:00
Rafał Miłecki
840c4cba92 ramips: mt7621: disable CONFIG_MTD_SPLIT_FIRMWARE
It's no longer needed as all mt7621 devices use DT binding (supported by
upstream mtd code) for specifying "firmware" part format explicitly.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-13 13:39:56 +01:00
Rafał Miłecki
c56241c052 ramips: mt7621: specify "firmware" partition format for remaining devices
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-13 13:39:56 +01:00
Stijn Tintel
bcb8592353 kmod-dma-buf: fix build with external kernel
In hack/904-debloat_dma_buf.patch, DMA_SHARED_BUFFER is changed from
bool to tristate. As this patch is not applied to external kernel
sources, build fails if kmod-dma-buf is enabled. Fix this by only
including the module file if CONFIG_EXTERNAL_KERNEL_TREE and
CONFIG_KERNEL_GIT_CLONE_URI are not enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-12 22:15:11 +02:00
INAGAKI Hiroshi
3198ec5b9d ipq806x: fix and cleanup dts for NEC WG2600HP
This commit fixes and cleanups qcom-ipq8064-wg2600hp.dts to improve the
support for WG2600HP.

- Use dt label in qcom-ipq8064.dtsi:

  - gmac1
  - gmac2
  - gsbi4
    - gsbi4_serial
  - gsbi5
  - hs_phy_0
  - ss_phy_0
  - usb3_0
  - usb3_1
  - pcie0
  - pcie1
  - qcom_pinmux

- Fix wrong pcie reset (perst) gpios

  - drop reset-gpio and use perst-gpios in qcom-ipq8064.dtsi

- Remove unnecessary dt label from device dts

  - flash
  - phy0, phy4

- Rename spi-nor node to "flash" from "m25p80"

- Fix qca,ar8327-initvals

  - use oem settings

    - fix: PAD0_MODE, PAD6_MODE
    - drop: PAD5_MODE (unnecessary)

- Move mtd partitions under partitions (fixed-partitions) node

- Specify "firmware" partition format

  - WG2600HP uses uImage format (denx,uimage)

- Change failsafe status LED to power_red

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-12 18:59:01 +01:00
Martin Schiller
3850b41f01 openvpn: re-add option comp_lzo
This option is deprecated but needs to be kept for backward compatibility. [0]

[0] https://community.openvpn.net/openvpn/wiki/DeprecatedOptions#a--comp-lzo

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-12-12 17:15:01 +01:00
Jo-Philipp Wich
e533fb1706 rpcd: update to latest Git head
3aa81d0 file: access exec timeout via daemon ops structure
7235f34 plugin: store pointer to exec timeout value in the ops structure
ccd7c0a treewide: rename exec_timeout to rpc_exec_timeout

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-12 16:33:54 +01:00
Kevin Darbyshire-Bryant
ad8a5aa06a dnsmasq: fix ipv6 ipset bug
During upstream removal of conditional ipv6 support an order swap error
was made in a ternary operator usage.

This patch sent upstream.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-12 11:54:49 +00:00
Hans Dedecker
1ff98ddff7 iproute2: backport upstream patch to fix print_0xhex on 32 bit
The argument to print_0xhex is converted to unsigned long long
so the format string give for normal printout has to be some
variant of %llx. Backport the patch as otherwise, bogus values
will be printed on 32 bit platforms.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-12 12:38:54 +01:00
Mathias Kresin
d35f2a5565 ath9k: register GPIO chip for OF targets
This partitialy reverts commit ccab68f2d3.

Registering the GPIO chip without a parent device completely breaks the
ath9k GPIOs for device tree targets.

As long as boards using the devicetree don't have the gpio-controller
property set for the ath9k node, the unloading of the driver works as
expected.

Register the GPIO chip with the ath9k device as parent only for OF
targets to find a trade-off between the needs of driver developers and
the broken LEDs and buttons seen by users.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-12 12:28:26 +01:00
Mathias Kresin
0fdfdaef2d ath79: fix dtc compiler warnings
The qca9557/qca956x reset-controller aren't a simple bus. A simple bus
would require node unit addresses.

Add the node unit addresses for the qca9557 usb phys. Add the regs for
the USB_PWRCTL and USB_CONFIG registers even not yet used.

Fix the wrong ar7100 pcie controller node unit address as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-12 12:28:26 +01:00
Mathias Kresin
35f70774b8 ramips: drop old image validation code
Due to the enforced image metadata we ensure that the correct image is
uploaded. Checks based on a magic arn't required any more.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-12 11:01:59 +01:00
Mathias Kresin
1a5df6add7 ramips: enforce image metadata verification
Now that we got rid of all legacy images, we can enforce image metadata
verification.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-12 11:01:59 +01:00
Mathias Kresin
8e40fbff0b ramips: drop support for ALLNET ALL0239-3G and Sitecom WL-341 v3
Beside one exception, no one took care of these two remaining boards
still using the legacy image build code during the last two years.

Since OpenWrt 14.07 the ALLNET ALL0239-3G image building is broken.

The Sitecom WL-341 v3 image build code looks pretty hackish and broken.
It's questionable if the legacy image works as all.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-12 11:01:59 +01:00
Mathias Kresin
262b885b83 ramips: use new image build code for D-Link DCS-930 family
Drop the factory images and the firmware tool to create them. They don't
work any more, since the factory image has an uImage header covering the
whole kernel + rootfs. This way the uImage splitter will not be able to
find the rootfs and the kernel will panic later on.

The factory images were most likely added at a time the board had
distinct partitions for kernel and rootfs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-12 11:01:59 +01:00
Tony Ambardar
216397b812 elfutils: install library files for pkg-config
Support other packages using pkg-config to query existence and details of
libelf and libdw libraries at build time.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-12-12 09:44:32 +00:00
Daniel Golle
f5753aae23 hostapd: add support for WPS pushbutton station
similar to hostapd, also add a ubus interface for wpa_supplicant
which will allow handling WPS push-button just as it works for hostapd.
In order to have wpa_supplicant running without any network
configuration (so you can use it to retrieve credentials via WPS),
configure wifi-iface in /etc/config/wireless:

  config wifi-iface 'default_radio0'
      option device 'radio0'
      option network 'wwan'
      option mode 'sta'
      option encryption 'wps'

This section will automatically be edited if credentials have
successfully been acquired via WPS.

Size difference (mips_24kc): roughly +4kb for the 'full' variants of
wpa_supplicant and wpad which do support WPS.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-12-12 09:37:23 +01:00
Christian Lamparter
5beedcddc3 uboot-fritz4040: update package to 2018-12-09
This patch updates the uboot-fritz4040 package to the latest version.
The portability and private-libgcc patches, as well as the
upload-to-f4040.sh script have been added to the upstream repository.
Furthermore, the upload-to-f4040 has been updated to take the first
parameter as the file it is supposed to flash, otherwise it defaults
to the previous "uboot-fritz4040.bin". Furthermore the error messages
have been improved and ftp will now dump some "progress information"
to the user's console.

Also included is support for gcc 8+ and a fix for the obnoxous error
that currently breaks the builders:
| fritz/src/lzma2eva.c:23:30: fatal error: zlib.h: No such file or directory

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-11 23:00:32 +01:00
Daniel Gonzalez Cabanelas
26d4cb2ca7 brcm63xx: HG655b: fix the imagetag at dts
Fix the imagetag on the HG655b to allow a correct partition detection at boot time.

It turns out that it was defined at the wrong partition. Just move the imagetag to
the linux firmware partition.

The bug is present since the 18.06 release. Without this fix, the board won't boot.

Fixes: a27d59bb42 ("brcm63xx: switch to new partition layout specification")
Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-11 13:36:52 +01:00
Jonas Gorski
e08ef42b24 brcm63xx: fix ethernet switch core reset mask for BCM6368
The reset mask for the bcm6368 switch core was left at 0 due to a copy &
paste error. Fix this by setting it to the correct value.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-11 13:11:51 +01:00
Jonas Gorski
620b36c1b5 brcm63xx: drop legacy profile for SR102
Remove the sky.mk causing a duplicate device profile to be added in
image builder. The generic device code already generates a profile for
the device.

Fixes FS#1780.

Fixes: d591260407 ("brcm63xx: initial support for Sky SR102 router")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-12-11 13:11:10 +01:00
Koen Vandeputte
ecc6f3ff76 kernel: add missing symbol in some 4.9 subtargets
Buildbot revealed some subtargets are still missing the new symbol.

Fixes: dfbf836a52 ("kernel: bump 4.9 to 4.9.143")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-11 11:34:45 +01:00
Koen Vandeputte
f6e9f23771 kernel: bump 4.14 to 4.14.87
Refreshed all patches.

Remove upstreamed:
- 0008-MIPS-ralink-Fix-mt7620-nd_sd-pinmux.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-10 16:32:22 +01:00
Koen Vandeputte
861dcd717f kernel: bump 4.9 to 4.9.144
Refreshed all patches.

Remove upstreamed:
- 014-Kbuild-suppress-packed-not-aligned-warning-for-defau.patch

Compile-tested: ar7, brcm2708
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-10 16:32:22 +01:00
Koen Vandeputte
0028f86687 kernel: bump 4.14 to 4.14.86
Refreshed all patches.

Altered patches:
- 180-usb-xhci-add-support-for-performing-fake-doorbell.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-10 11:48:44 +01:00
Koen Vandeputte
dfbf836a52 kernel: bump 4.9 to 4.9.143
Refreshed all patches.

Altered patches:
- 950-0063-Improve-__copy_to_user-and-__copy_from_user-performa.patch
- 201-extra_optimization.patch

New symbol:
- CONFIG_HARDEN_BRANCH_PREDICTOR

Compile-tested on: ar7, at91, brcm2708, ixp4xx, layerscape, orion
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[fix brcm2708/950-0149-Update-vfpmodule.c.patch]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-10 11:48:44 +01:00
Koen Vandeputte
4e38fc824c kernel: bump 3.18 to 3.18.128
Refreshed all patches.

Altered patches:
- 002-phy_drivers_backport.patch

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-12-10 11:48:44 +01:00
Kevin Darbyshire-Bryant
8c0f6a010a dnsmasq: follow upstream dnsmasq pre-v2.81 v2
Backport upstream commits.  Most interesting 122392e which changes how
SERVFAIL is handled especially in event of genuine server down/failure
scenarios with multiple servers.  a799ca0 also interesting in that
answered received via TCP are now cached, DNSSEC typically using TCP
meant until now answers weren't cached, hence reducing performance.

59e4703 Free config file values on parsing errors.
48d12f1 Remove the NO_FORK compile-time option, and support for uclinux.
122392e Revert 68f6312d4bae30b78daafcd6f51dc441b8685b1e
3a5a84c Fix Makefile lines generating UBUS linker config.
24b8760 Do not rely on dead code elimination, use array instead. Make options bits derived from size and count. Use size of option bits and last supported bit in computation. No new change would be required when new options are added. Just change OPT_LAST constant.
6f7812d Fix spurious AD flags in some DNS replies from local config.
cbb5b17 Fix logging in cf5984367bc6a949e3803a576512c5a7bc48ebab
cf59843 Don't forward *.bind/*.server queries upstream
ee87504 Remove ability to compile without IPv6 support.
a220545 Ensure that AD bit is reset on answers from --address=/<domain>/<address>.
a799ca0 Impove cache behaviour for TCP connections.

Along with an additional patch to fix compilation without DHCPv6, sent
upstream.

I've been running this for aaaages without obvious issue hence brave
step of opening to wider openwrt community.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-10 10:38:49 +00:00
Kevin Darbyshire-Bryant
18e02fa20c Revert "dnsmasq: follow upstream dnsmasq pre-v2.81"
This reverts commit a6a8fe0be5.

buildbot found an error
option.c: In function 'dhcp_context_free':
option.c:1042:15: error: 'struct dhcp_context' has no member named 'template_interface'
       free(ctx->template_interface);

revert for the moment

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-10 09:57:19 +00:00
Kevin Darbyshire-Bryant
a6a8fe0be5 dnsmasq: follow upstream dnsmasq pre-v2.81
Backport upstream commits.  Most interesting 122392e which changes how
SERVFAIL is handled especially in event of genuine server down/failure
scenarios with multiple servers.  a799ca0 also interesting in that
answered received via TCP are now cached, DNSSEC typically using TCP
meant until now answers weren't cached, hence reducing performance.

59e4703 Free config file values on parsing errors.
48d12f1 Remove the NO_FORK compile-time option, and support for uclinux.
122392e Revert 68f6312d4bae30b78daafcd6f51dc441b8685b1e
3a5a84c Fix Makefile lines generating UBUS linker config.
24b8760 Do not rely on dead code elimination, use array instead. Make options bits derived from size and count. Use size of option bits and last supported bit in computation. No new change would be required when new options are added. Just change OPT_LAST constant.
6f7812d Fix spurious AD flags in some DNS replies from local config.
cbb5b17 Fix logging in cf5984367bc6a949e3803a576512c5a7bc48ebab
cf59843 Don't forward *.bind/*.server queries upstream
ee87504 Remove ability to compile without IPv6 support.
a220545 Ensure that AD bit is reset on answers from --address=/<domain>/<address>.
a799ca0 Impove cache behaviour for TCP connections.

I've been running this for aaaages without obvious issue hence brave
step of opening to wider openwrt community.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-10 09:14:07 +00:00
Kevin Darbyshire-Bryant
7b083bbb82 dnsmasq: drop dnssec timestamp file patch
Openwrt no longer uses and has not used since 5acfe55d71 Jun 2016 the
timestamp file (/etc/dnsmasq.time) method of resolving the dnssec/ntp
dnslookup chicken/egg problem, having used signals from ntp since that
change.

Drop the 'dnssec-improve-timestamp-heuristic' patch since it is neither
used nor sent upstream.  One less thing to refresh & maintain.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-12-10 09:14:06 +00:00
Nikos Mavrogiannopoulos
99dbbe7eb7 nettle: bump to 3.4.1
This is a security fix adding safer APIs for RSA use.

Compile tested for: ar71xx

Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
2018-12-09 20:39:35 +01:00
Luiz Angelo Daros de Luca
5cb1dce542 base-files: add sysupgrade -k to save list of pkgs
When '-k' is used, sysupgrade inserts into backup a new file
/etc/backup/installed_packages.txt which contains pkgname and origin (rom,
overlay, unknown) without touching rootfs.

It's mainly used to reinstall all extra packages:

 # opkg update
 # grep "\toverlay" /etc/backup/installed_packages.txt | cut -f1 | xargs -r opkg install
 # rm /etc/backup/installed_packages.txt

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-12-09 18:04:11 +00:00
Luiz Angelo Daros de Luca
96392e5da4 base-files: add sysupgrade -o to save all overlay files
Add sysupgrade '-o' option in order to include all overlay files in
backup, except for those that are from packages but including files
listed in conffiles, sysupgrade.conf or /lib/upgrade/keep.d.

With '-u' option, it will skip files equals to /rom and conffiles that
were not changed.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-12-09 18:04:11 +00:00
Luiz Angelo Daros de Luca
20b23270b7 base-files: add sysupgrade -u to skip unchanged files
With '-u', for a file /aaa/bbb/ccc enlisted for backup,
it will only get into backup if /rom/aaa/bbb/ccc does not
exist or /aaa/bbb/ccc is different from /rom/aaa/bbb/ccc.

It also works with '-c', but only effective for files touched
but not modified.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-12-09 18:04:11 +00:00
Luiz Angelo Daros de Luca
e8711daede base-files: minor cleanups on sysupgrade
Renamed add_uci_conffiles to add_conffiles as it includes
any conffiles listed, not only UCI ones.

Make do_save_conffiles arg mandatory

Allow other options after -l (like -c)

Do not use stdout for error messages (fixes backup to stdout)

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-12-09 18:04:11 +00:00
Hans Dedecker
929c448a6d firewall: update to latest git HEAD
14589c8 redirects: properly handle src_dport in SNAT rules

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-09 17:36:12 +01:00
Christian Lamparter
0bce89037f apm821xx: WNDAP620: remove bad semicolon in dts after #include
This patch fixes a build warning triggered by a semicolon in
the dts after the #include directive.

netgear-wndap620.dts:11:33: warning: extra tokens at end of #include directive

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-09 15:27:34 +01:00
Christian Lamparter
bd3e234473 apm821xx: move fifo-entry-size property to WNDR4700
This property (and value) came from Netgear's WNDR4700
stock firmware dts. However, other devices do not set
it and the EMAC default is 16, which matches that of
the programming notes of the APM82181 spec.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-09 15:27:29 +01:00
Christian Lamparter
87af41d554 ath10k-firmware: Fix mirror hash sum (FS#1983)
This now matches what was generated locally on my PC and the file on the
mirror server.

Fixes: 575d0240f9 ("ath10k-firmware: update board-2.bin for community firmwares")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-12-09 15:07:02 +01:00
Rafał Miłecki
4d3a53b9ef kernel: add DT binding support to the TRX and minor parsers
It allows specifying those parsers directly in the DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-09 13:58:54 +01:00
Ansuel Smith
f939598b7a iptables: fix ebtables vlan compile issue (FS#1990)
Backport an upstream patch which fixes an userspace/kernel headers
collison

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-12-08 21:50:14 +01:00
Russell Senior
ed000fcaf2 ramips: fix firmware compatible string for dir860l-b1
In commit d70ec3008d, a firmware compatible
string of "denx,uimage" was added for the Dlink DIR-860L-B1. Unfortunately,
this was the wrong string. It needs "seama" instead.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-12-08 14:18:42 +01:00
Ansuel Smith
1286c55302 iptables: bump to 1.8.2
Drop 030-extensions-libxt_bpf-Fix-build-with-old-kernel-versi.patch as pushed upstream
Added patches :
001-extensions_format-security_fixes_in_libip.patch
002-include_fix_build_with_kernel_headers_before_4_2.patch
101-remove-register-check.patch

The first and the second patch are upsteam fixes for compilation errors.
The third patch remove check if one target lib is already registred; this is caused by
shared libs that are loaded before the iptables execution.

Iptables changelog:

bba6bc6 (tag: v1.8.2) configure: bump versions for 1.8.2 release
61d6c38 xtables: add 'printf' attribute to xlate_add
5edb249 libxtables: xlate: init buffer to zero
9afd2a6 tests: shell: fix expected arptables-save output
6387941 arptables: fix --version info
d703c1f arptables: ignore --table argument.
d5754e3 arptables: make uni/multicast mac masks static
1b63e66 arptables: add test cases
5aecb2d arptables: pre-init hlen and ethertype
9677ed1 arptables: fix src/dst mac handling
ab0b6d5 arptables: fix target ip offset
c0c75ce arptables: fix -s/-d handling for negation and mask
3ac65af arptables: add basic test infra for arptables-nft
e31564f arptables: fix rule deletion/compare
2345ff6 arptables: remove code that is also commented-out in original arptables
50c2397 arptables-save: add -c option, like xtables-save
d9a518e arptables: use ->save for arptables-save, like xtables
5a52e6a extensions: test protocol and interface negation
85d7df9 xtables: Fix error return code in nft_chain_user_rename()
3ccb443 xtables: Clarify error message when deleting by index
95db364 xtables: Fix typo in do_command() error message
5f508b7 ebtables: use extrapositioned negation consistently
583b27e ebtables-save: add -c option, using xtables-style counters
e6723ab nft: add NFT_TABLE_* enumeration
21ec111 nft: replace nft_chain_dump() by nft_chain_list_get()
05947c8 iptables-nft: fix -f fragment option
7bd9feb libxtables: add and use mac print helpers
a10eb88 extensions: libebt_ip: fix tos negation
9b127b7 extensions: libebt_ip6: fix ip6-dport negation
c59ba1b xtables-nft: make -Z option work
1bf4a13 nft: add missing error string
a9f9377 iptables-tests: add % to run iptables commands
b81c8da iptables-tests: do not append xtables-multi to external commands
edf2b7c ebtables-nft: add arpreply target
2d1372e ebtables: add redirect test case
c3e8dbd ebtables: add test cases
cd90cef ebtables: relax -t table restriction, add snat/dnat test cases
fd95f1f ebtables: fix -j CONTINUE handling for add/delete
fb747f8 tests: add basic ebtables test support
d4bc5a3 iptables-nft: fix bogus handling of zero saddr/daddr
9ff9915 iptables-test: fix netns test
8c918db xtables: Fix for matching rules with wildcard interfaces
b2fc2a3 extensions: limit: unbreak build without libnftnl
682f39a xtables: Fix for spurious errors from iptables-translate
90f7dc3 (tag: v1.8.1) configure: bump versions for 1.8.1 release
0123183 iptables-test: add -N option to exercise netns removal path
abae556 libxtables: expose new etherdb lookup function through libxtables API
c2d9ed9 libxtables: prefix exported new functions for etherdb lookups
5a44360 Revert "extensions: libxt_quota: Allow setting the remaining quota"
2673faf xtables: Remove target_maxnamelen field
8ca3436 extensions: cgroup: fix option parsing for v2
0a8f2bc extensions: libxt_quota: Allow setting the remaining quota
b373a91 nft-shared: Use xtables_calloc()
5a40961 arptables: Use the shared nft_ipv46_parse_target()
9f07503 Combine parse_target() and command_jump() implementations
7373297 Combine command_match() implementations
a76ba54 libiptc: NULL-terminate errorname
a3716cc libxtables: Check extension real_name length
0195b64 iptables: Gitignore xtables-{legacy, nft}-multi scripts
671e40a xtables: Drop pointless check
7c9a152 arptables: Fix incorrect strcmp() in nft_arp_rule_find()
11e91a4 xtables: Don't read garbage in nft_ipv4_parse_payload()
d95c1e8 libxtables: Use posix_spawn() instead of vfork()
7e50eba Fix a few cases of pointless assignments
f40ce2d extensions: libebt_ip{, 6}: Drop pointless error checking
47fb86c nft-arp: Drop ineffective conditional
80aae9b iptables: Use print_ifaces() from xtables
8da04ff Share print_ipv{4,6}_addr() from xtables
b686594 iptables-apply: Replace signal numbers by names
f175dee iptables-apply: Quote strings passed to echo
52aa150 nfnl_osf: Replace deprecated nfnl_talk() by nfnl_query()
61ebf3f libxtables: Don't read garbage in xtables_strtoui()
ab639f2 libxtables: Avoid calling memcpy() with NULL source
22ef371 libiptc: Simplify alloc_handle() function signature
6b7145f libxt_time: Drop initialization of variable 'year'
749d3c2 libxt_ipvs: Avoid potential buffer overrun
8e798e0 libxt_conntrack: Avoid potential buffer overrun
74eb239 libxt_conntrack: Version 0 does not support XT_CONNTRACK_DIRECTION
d0c1f1b libxt_LED: Avoid string overrun while parsing led-trigger-id
23ef6f0 xtables: Remove unused variable in nft_is_table_compatible()
4e499d5 ip{, 6}tables-restore: Fix for uninitialized array 'curtable'
1788f54 Mark fall through cases in switch() statements
31f1434 libxtables: Integrate getethertype.c from xtables core
7ae4fb1 xtables: Fix for wrong assert() in __nft_table_flush()
8c786a3 nfnl_osf: Drop pointless check in xt_osf_strchr()
6fc7762 libxt_string: Fix array out of bounds check
2a68be1 xtables-save: Ignore uninteresting tables
f9efc8c extensions: add cgroup revision 2
9b8cb16 extensions: REJECT: Merge reject tables
56d7ab4 libxt_string: Avoid potential array out of bounds access
bfd41c8 ebtables: Fix for potential array boundary overstep
e6f9867 libiptc: Avoid side-effect in memset() calls
4144571 libxtables: Fix potential array overrun in xtables_option_parse()
9242b5d xtables: Accept --wait in iptables-nft-restore
c9f4f04 xtables: Don't check all rules for being compatible
15606f2 doc: Improve layout of u32 instructions
7345037 xtables-restore: Fix flushing referenced custom chains
7df11d1 xtables: Drop use of IP6T_F_PROTO
b6a06c1 xtables: Align return codes with legacy iptables
3bb497c xtables: Fix for deleting rules with comment
0800d9b ip6tables-translate: Fix libip6t_mh.txlate test
4cf650c ebtables-translate: Fix for libebt_limit.txlate
783e9c2 xtables: Add missing deinitialization
9771d06 ebtables: Review match/target lookup once more
85ed1ab extensions: libebt_mark: Drop mark_supplied check
6a46ca0 xtables: Add a few missing exit calls
acde6be ebtables-translate: Fix segfault while parsing extension options
2c4e4d2 ebtables: trivial: Leverage C99-style initializers a bit more
9f5b28a xlate-test: Fix for calling wrong command name
1a878a7 extensions: AUDIT: Provide translation
5ee03e6 xtables: Use meta l4proto for -p match
37b68b2 xtables: Fix for segfault when registering hashlimit extension
92f7b04 xtables: Fix for segfault in iptables-nft
294f9ef ebtables: Fix entries count in chain listing
6f29aa8 xtables: Make 'iptables -S nonexisting' return non-zero
7bccf30 ebtables: Fix for listing of non-existent chains
3d9a13d xtables: Fix for no output in iptables-nft -S
a33c6fd arptables: Drop extensions/libxt_mangle.c
02b8097 ebtables: Merge libebt_limit.c into libxt_limit.c
5de8dcf xtables: Use native nftables limit expression
514de48 ebtables: Remove flags misinterpretations
528cbf9 xtables: Fix for wrong counter format in -S output
9ca32c4 xtables: Don't pass full invflags to add_compat()
e055aeb xtables: Improve xtables-monitor first impression
b925733 tests: Fix skipping for recent nft-only tests
277f374 xtables: Spelling fixes in xtables-monitor
a9d9f64 xtables: Fix potential segfault in nft_rule_append()
fbf0bf7 tests: Add ebtables-{save,restore} testcases
f1d8508 tests: Add arptables-{save,restore} testcases
63c3dae xtables: Implement arptables-{save,restore}
aa7fb04 ebtables: Review match/target lookup
3f123dc ebtables-restore: Use xtables_restore_parse()
295d5a8 xtables-restore: Make COMMIT support configurable
1679b2c xtables-restore: Improve user-defined chain detection
2ce9f65 xtables: Match verbose ip{,6}tables output with legacy
cd79556 xtables: Reserve space for 'opt' column in ip6tables output
0357254 xtables: Print error when listing non-existent chains
206033e xtables: Fix for no output on first iptables-nft invocation
a0698de xtables: Do not count rules as chain references
d11b6b8 arptables: Fix jumps into user-defined chains
3f27955 arptables: Fix opcode printing in numeric output
f988fe4 xtables: Fix symlinks/names for ebtables-{save, restore}
3319c61 ebtables: Support --init-table command
3ec8aac arptables: Print policy only for base chains
83bc189 arptables: Fix for trailing spaces in output
aaed1b6 arptables: Fix memleaks in do_commandarp()
d67d85d ebtables: Print non-standard target parameters
2e478e9 ebtables: Fix match_list insertion
a192f03 ebtables: Fix for wrong program name in error messages
a2ed880 xshared: Consolidate argv construction routines
1cc0918 xshared: Consolidate parse_counters()
78b9d43 Consolidate DEBUGP macros
14ad525 xtables: Fix program name in xtables_error()
f7bbdb0 xtables: Use correct built-in chain count
ae574b2 xtables: Fix compilation with NLDEBUG defined
82d278c xtables: Free chains in NFT_COMPAT_CHAIN_ADD jobs
c2895ea xtables: Free chains in NFT_COMPAT_CHAIN_USER_DEL jobs
89d3443 xtables: Fix for nft_rule_flush() returning garbage
c259447 xtables: Allocate rule cache just once
ed30b93 nft: don't print rule counters unless verbose
31e4b59 iptables-restore: free the table lock when skipping a table
f8e29a1 xtables: avoid bogus 'is incompatible' warning
6ea7579 nft: decode meta l4proto
922508e xtables: implement ebtables-{save,restore}
25ef908 xtables: introduce nft_init_eb()
de8574a xtables: parameter to add_argv() may be const
6f60f22 xtables: pass format to nft_rule_save()
f3b772c xtables: introduce save_chain callback
fa1681f xtables: rename {print,save}_rule functions
444d581 xtables: get rid of nft_ipv{4,6}_save_counters()
34e1e23 xtables: eliminate nft_ipv{4,6}_rule_find()
de782e8 xtables: merge nft_ipv{4,6}_parse_target()
ae8eece xtables: get rid of nft_ipv{4,6}_print_header()
2687794 xtables: arp: make rule_to_cs callback private
1bf73c4 xtables: Use new callbacks in nft_rule_print_save()
1866625 xtables: introduce rule_to_cs/clear_cs callbacks
0589457 xtables: simplify struct nft_xt_ctx
d9c6a5d xtables: merge {ip,arp}tables_command_state structs
87b5b9e iptables: replace memset by c99-style initializers
907da5c xtables: fix crash if nft_rule_list_get() fails
565a223 xtables: Support nft suffix for arptables and ebtables
c468f01 tests: check iptables retval, not echo
47d1484 iptables: tests: add test for iptables-save and iptables-restore
e4e0704 extensions: don't bother to build libebt/libarp extensions if nft backend was disabled
17c66a5 iptables: tests: shell: Add README
6c2118c (tag: v1.8.0) configure: bump version and libnftnl dependency
7b66fc2 man: clarify translate tools do not modify any state
f7fec51 xtables-monitor: add --version option
b470b8e xtables-legacy: fix argv0 name for ip6tables-legacy
2028e54 xtables: display legacy/nf_tables flavor in error messages, too
fd8d7d7 ebtables-nft: add stp match
f15639b tests: add script that mimics firewalld startup
27f7db2 tests: fix variable name to multi-binary
2a89ec5 tests: add a few simple tests for list/new/delete
37d9d5b ebtables-nft: make -L, -X CHAINNAME work
816bd1f ebtables-nft: remove exec_style
b81708f ebtables-nft: don't crash on ebtables -X
de02a75 doc: fix some spellos and the dash escape
dcf4529 tests: add firewalld default ruleset from fedora 27
f23abd5 tests: add another ipv4 only ruleset
ed9cfe1 tests: add initial save/restore test cases
9933dc5 tests: adapt test suite to run with legacy+nftables based binaries
be70918 xtables: rename xt-multi binaries to -nft, -legacy
d49ba50 xtables-restore: init table before processing policies
344c6eb doc: Fix spelling error in hashlimit section
e063873 tests: make duplicate test work
d26c538 xtables: add xtables-monitor
db84371 xtables: translate nft meta trace set 1 to -j TRACE
20eac2a xtables: warn in case old-style (set/getsockopt) tables exist
c9f5e18 xtables: add nf_tables vs. legacy postfix to version strings
e5fed16 iptables8.in: Update coreteam names
672accf include: update kernel netfilter header files
856a875 xtables: silence two compiler warnings
ae6e159 xtables: remove dead code inherited from ebtables
107b7eb configure: add -Wlogical-op warning to cflags
bc7f49d ebtables-translate: remove --change-counters code
38b4166 iptables: tests: shell: add shell test-suite
1e6427a xtables-compat: skip invalid tables
cb368b6 xtables: more error printing fixes
b1b828f xtables: homogenize error message
4caa559 xtables: initialize basechains for rule flush command too
9b89622 xtables: rework rule cache logic
01e25e2 xtables: add chain cache
8d190e9 xtables: initialize basechains only once on ruleset restore
0a86351 xtables-compat: ignore '+' interface name
125d1ce xtables-compat: append all errors into single line
437746c xtables: extended error reporting
d1c79cd xtables: allocate struct xt_comment_info for comments
4e20209 xtables: use libnftnl batch API
49709e2 xtables-compat: remove nft_is_ruleset_compatible
03e1377 xtables: allow dumping of chains in specific table
94fd83d xtables: inconsistent error reporting for -X and no empty chain
c4f1622 ebtables-compat: add arp match extension
24ce746 ebtables-compat: add redirect match extension
84c04e3 ebtables-compat: add nat match extensions
14ec998 xtables-compat: ebtables: prefer snprintf to strncpy
5e2b473 xtables-compat: extend generic tests for masks and wildcards
1a696c9 libxtables: store all requested match types
bb436ce xtables-compat: ip6table-save: fix save of ip6 address masks
6454d7d ebtables-translate: suppress redundant protocols
07f4ca9 xtables-compat: ebtables: allow checking for zero-mac
0ca2d2a xtables-compat: ebtables: add helpers to print interface and mac addresses
3d9f300 xtables-compat: ebtables: remove interface masks from ebt_entry struct
20e2758 xtables-compat: ebtables: fix logical interface negation
2682bb0 xtables-compat: ebtables: add and use helper to parse all interface names
564862d xtables-compat: ebtables: split match/target print from nft_bridge_print_firewall
0ae81d0 xtables-compat: ebtables: kill ebtables_command_state
651cfee xtables-compat: pass correct table skeleton
652b98e xtables-compat: fix wildcard detection
49f4993 extensions: libip6t_srh.t: Add test cases for psid, nsid, and lsid
429143b extensions: libxt_CONNMARK: incorrect translation after v2
db7b4e0 extensions: libxt_CONNMARK: Support bit-shifting for --restore,set and save-mark
155e1c0 extensions: libip6t_srh: support matching previous, next and last SID
f4ffda1 extensions: libipt_DNAT: tests added for shifted portmap range
6a9ffb1 xtables-compat-restore: flush table and its content with no -n
07ae37c xtables-compat: fix bogus error with -X and no user-defined chains
df3d92b xtables-compat-restore: flush user-defined chains with -n
ca16584 xtables-compat-restore: flush rules and delete user-defined chains
ac1e85a extensions: libipt_DNAT: use size of nf_nat_range2 for rev2
e25d99a xtables-compat: pass larger socket buffer
838746e xtables-compat: xtables-save: don't return 1
2211679 xtables-compat: ebtables: support concurrent option
a77a7d8 iptables-test: fix bug with rateest
de87405 xtables-compat: fix ipv4 frag (-f)
c7b2fd6 xtables-compat: also check tg2->userspacesize
5685938 xtables-compat: avoid unneeded bitwise ops
b9d7b49 xtables-compat: restore: sync options with iptables-restore
c0ef861 extensions: add xlate test for ipables -f
d79a7f1 xtables-compat: output -s,d first during save, just like iptables
d1eb4d5 iptables-compat: chains are purge out already from table flush
09f0d47 iptables-compat: do not fail on restore if user chain exists
8798eb8 iptables-compat: remove non-batching routines
b633ef9 xtables.conf: fix hook skeletons
7af2178 xtables-compat: fall back to comment match in case name is too long
e9aeecf xlate-test: use locally installed xlate tools
0ab58e3 xtables-compat: ebtables: handle mac masks properly
734ad40 xtables-compat: nft-arp: fix warning wrt. sprintf-out-of-bounds
fb7ae9f xtables-compat: truncate comments to 254 bytes
36976c4 extensions: libipt_DNAT: support shifted portmap ranges
d7ac61b iptables-test: add nft switch and test binaries from git
992e17d xtables-compat: only fetch revisions for ip/ip6
12a52ff xtables: Fix rules print/save after iptables update
1197c5e xtables: Register all match/target revisions supported by us and kernel
e3bb24c xtables: Check match/target size vs XT_ALIGN(size) at register time
3b2530c xtables: Do not register matches/targets with incompatible revision
d3f1437 xtables: Introduce and use common function to print val[/mask] arguments
29b1d97 xtables: Introduce and use common function to parse val[/mask] arguments
56aadc0 extensions: Initialize linear mapping of symbols in _init() of extension
79c2da9 extensions: ULOG: remove test
a0956ce ebtables-translate: turn off useless compat queries
9840869 nft: arptables: remove obsolete forward hook definition
7a37d14 iptables-compat: statify nft_restart()
a3aac1d iptables-compat: handle netlink dump EINTR errors
a567dc3 ebtables-compat: add 'vlan' match extension
7564bba ebtables-compat: add 'pkttype' match extension
4d40904 ebtables-translate: update table name on -t
5c8ce9c ebtables-compat: add 'ip6' match extension
8a85a14 libebt_ip: fix translations for tos and icmp
b6f0bec libebt_ip: add icmp support
f38ed1e xt-translate: quote interface names in translated output
71a6e37 icmp: split icmp type printing to header file
e67c088 ebtables-translate: add initial test cases
207dd5e xt-compat: add ebtables-translate
d988274 xlate-translate: split common parts into helper
1650806 xtables-eb: export 3 functions
6b2041c nft-bridge: add eb-translate backend functions
3063c37 nft-bridge: fix mac address printing
394a400 nft: fix crash when getprotobynumber() returns 0
6a1dbdf ebtables-compat: support intra-positioned negations
3e94f0a nft-bridge: add forward declaration for struct nftnl_rule
5024efe libebt_limit: print 'minute' and 'seconds', not 'min' and 'secs'
ce3c780 nft: make nft_init self-contained
cb151d5 xtables-translate: rm duplicate includes
69c089b xt-compat: constify a few struct members
03ecffe ebtables-compat: add initial translations
57af67d iptables: constify option struct
88231c4 ebtables-compat: load mark target
6b4e167 ebtables-compat: don't make failing extension load fatal
24110b5 libxt_comment: silence truncation warning
98fc8ce xtables-compat: only validate the xtables builtin tables
9d9b724 xtables-compat: skip unsupported tables
59d15cf xtables-compat: also validate priorities and hook points match expected values
eb35854 xtables-compat: fix snprintf truncation warnings
fc04c8a extensions: CLUSTERIP: do not allow --local-node 0
eb2c052 extensions: CLUSTERIP: add tests
ca3c397 iptables: add xtables-translate.8 manpage
5beb158 extensions: libxt_bpf: Fix build with old kernel versions
147a891 extenstions: ecn: add tcp ecn/cwr translation
ed928a8 extensions: add tests for comp match options
632ace7 xtables-compat-multi.c: Allow symlink of ebtables
d7ccc68 iptables: add xtables-compat.8 manpage
043da5b extensions: connmark: remove non-working translation
a93b502 extensions: prefer plain 'set' over 'set mark and'
577b7e2 xtables-compat-restore: use correct hook priorities

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-12-08 10:54:09 +01:00
Romain MARIADASSOU
02494fa35c Add support for TL-WA801ND v4
This add support for TP-Link TL-WA801ND v4 (same as TL-WA801ND v3) :

Specification:

- System-On-Chip: Qualcomm Atheros QCA9533
- CPU/Speed: 650 MHz
- Flash-Chip: Winbond W25Q32BVSIG
- Flash size: 4096 KiB
- RAM: 32 MiB
- Wireless No1: SoC-integrated: QCA9533 2.4GHz 802.11bgn

Flash instructions:

1) To flash the image, rename the file
   openwrt-ar71xx-generic-tl-wa801nd-v4-squashfs-factory.bin
   to firmware.bin
2) Connect your device to the LAN port, then upload the firmware
   through web interface. It will try to download the image and
   flash it.

It can take up to 2-3 minutes to finish. When it reaches 100%, the
router will reboot itself.

Signed-off-by: Romain MARIADASSOU <roms2000@free.fr>
2018-12-07 21:46:45 +01:00
Daniel F. Dickinson
32bc733796 ath79: dts: Use PowerCloud CAP324 bicolor status LED
PowerCloud Systems CAP324 has a bicolor power LED and OpenWrt DTS files /
base files support using both colours to better inform user of state
and to better match stock firmware, so use green power to indicate
normal operation.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-12-06 20:26:57 +01:00
INAGAKI Hiroshi
3358cae523 ath79: add support for I-O DATA WN-AG300DGR
I-O DATA WN-AG300DGR is a 2T2R 2.4/5 GHz 11n router, based on Atheros
AR1022.

WN-AG300DGR does not have an LED to indicates power or system status,
I set "router" LED as OpenWrt status LED.

There is no eeprom data for 5 GHz wlan in "art" partition.

Specification:

- Atheros AR1022
- 64 MB of RAM (DDR2)
- 8 MB of Flash (SPI-NOR)
- 2T2R 2.4/5GHz wifi
  - 2.4 GHz: SoC internal
  - 5 GHz: Atheros AR93x2
- 5x 10/100/1000 Mbps Ethernet
- 6x LEDs, 6x keys (4x buttons, 1x slide switch)
- 1x USB 2.0 Type-A
- UART through-hole on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port on WN-AG300DGR
2. Connect power cable to WN-AG300DGR and turn it
3. Access to "http://192.168.0.1/" and open firmware update page
("ファームウェア")
4. Select the OpenWrt factory image and click update ("更新") button
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-06 20:26:57 +01:00
Chuanhong Guo
9dd7147f6b ath79: add support for Winchannel WB2000
WB2000 is a dual-band 11N AP using AR9344.
The factory firmware used the original DB120 partition table
with a small kernel partition at the end of firmware and the
kernel will easily get oversized in the future. Since it has
to be flashed using UART I also swapped kernel/rootfs and
changed the default load address.

Specification:

- SoC: Atheros AR9344
- RAM: 128 MB
- Flash: 16 MB
- Ethernet: 10/100/1000 Mbps (Atheros AR8035)
- 2x USB 2.0
- WIFI: AR9344(2G) + AR9382(5G)
- RTC: DS1338

Known issue:
5G ath9k led doesn't work due to commit ccab68f.

Flash instruction:
Set up a TFTP server on your computer and configure static IP.
Connect UART (J11 TX/GND/RX) and press any key to enter U-boot
shell.
1. Change the default boot command:
   setenv bootcmd 'bootm 0x9f050000 || bootm 0x9fd50000'
   saveenv
2. Set your router ipaddr and server ipaddr. e.g.:
   setenv ipaddr 192.168.1.1
   setenv serverip 192.168.1.50
3. Load and flash the firmware:
   tftp 0x80060000 fw.bin
   erase 0x9f050000 +$filesize
   cp.b $fileaddr 0x9f050000 $filesize
4. Reset your router:
   reset

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[Drop the i2c node unit address. Move the ath9k-leds node out of the spi
node, it doesn't belong there. Add the #gpio-cells property to the pci
wifi node. All fix dtc compiler warnings]
Signed-off-by: Mathias Kresin <dev@kresin.me>

merge
2018-12-06 20:26:30 +01:00
INAGAKI Hiroshi
e0c55760e6 ath79: fix ethernet configurations for I-O DATA ETG3-R
This commit fixes several issues in eth0 on ETG3-R, and solve slowdown
in NA(P)T speed.

- add gmac-config with correct configurations
- fix pll-data value

And I added ref clock-frequency.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-12-06 17:44:14 +01:00
Mathias Kresin
6e626477d5 ath79: drop unused mtd splitter
Neither the seama nor the wrgg splitter are used at the moment. Drop
them for now to not bloat the target from the beginning.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 13:28:47 +01:00
Mathias Kresin
dacd962cfd ath79: remove duplicate image build variables
Remove image build variables which are set to the same value as the
default image build recipe.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 13:28:22 +01:00
Mathias Kresin
9d8fcab77a ath79: fix GL.iNet GL-AR300M sysupgrade
The userspace boardname derived from the dts compatible was out of sync
with the expected board added to the image metadata. This way a
sysupgrade is refused.

Sync the userspace boardname and the baordname used in the image metdata
to allow a seamless sasupgrade.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 13:28:22 +01:00
Mathias Kresin
8d6f128d39 ath79: add SoC or family compatible
Add missing SoC specific compatibles and/or inherit the family
compatibles like "ubnt,xm".

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 13:28:22 +01:00
David Bauer
adfc8d8eca ath79: add AVM EVA firmware partition compatible
This commit adds firmware partition compatible for the
AVM FRITZ!Box 4020 and AVM FRITZ!WLAN Repeater 300E.

This allows to select the correct mtdsplit parser
instead of trying all available ones one by one.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-06 13:28:22 +01:00
Petr Štetiar
bc41fb7efe ath79: Define firmware partition format to all boards where applicable
Parsing "firmware" partition (to create kernel + rootfs) was implemented
using OpenWrt downstream code enabled by CONFIG_MTD_SPLIT_FIRMWARE. With
recent upstream mtd changes we can do it in a more clean way for DTS
targets. It just requires adding a proper "compatible" string to the
"firmware" partition node.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-06 13:28:22 +01:00
Mathias Kresin
ffa55386f1 ramips: fix dtc compiler warnings
The latest dtc compiler considers nodes named i2c or spi as the
respective bus:

  /pinctrl/i2c: incorrect #address-cells for I2C bus
  /pinctrl/spi: incorrect #address-cells for SPI bus

Rename the node to fix the false positives.

Fix the spi node unit address for the DWR-512-B and UBNT-ER-e50 to get
rid of the following warning:

  SPI bus unit address format error, expected "n"

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 12:17:25 +01:00
Chen Minqiang
295b37d207 ramips: mt76x8: select only the matching mt76 driver
Select the matching mt76 driver for the PCI wireless of the following
devices:

 - HiWiFi HC5861B
 - Mercury MAC1200R v2.0
 - Netgear AC1200 R6120
 - Buffalo WCR-1166DS
 - ZyXEL Keenetic Extra II
 - Wavlink WL-WN575A3

Because every device has selected the corresponding mt76 driver, we can
include kmod-mt7603 instead of the mt76 metapackage, which used for the
wireless of the mt7628 and mt7688 WiSoC.

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
[select kmod-mt7603 as target default package, add wireless driver for
WL-WN575A3]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 12:17:25 +01:00
Chuanhong Guo
c36ec336a3 ath79: rename qca9533.dtsi to qca953x.dtsi
qca9533 is a costdown version of qca9531 which doesn't have USB and PCIE.
Rename the misleading dtsi names and fix the SoC type of gl-ar300m.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[apply the changes for the gl-x750 as well]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 12:17:25 +01:00
Chuanhong Guo
5563d49a39 ramips: disable sdhc for HC5661A
Currently OpenWrt doesn't support switching MT7628 into AP mode
(which is done by writing some undocumented registers in MTK SDK)
Without doing so, enabling SD breaks 4 FE ports and the SD controller
doesn't work since SD pins aren't configured correctly.

Disable SDHC on HC5661A to recover the 4 FE ports.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[drop the sdhci node completely]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-06 12:17:25 +01:00
Hans Dedecker
476336fe66 glibc: update to latest 2.27 commit (BZ #23927)
9f433fc791 CVE-2018-19591: if_nametoindex: Fix descriptor for overlong name [BZ #23927]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-12-06 11:47:36 +01:00
Petr Štetiar
9da6cd40eb apm821xx, ath79, ipq40xx, ipq806x, lantiq, ramips: base-files: Use generic diag.sh
I wanted to add status LEDs support to my imx6 based board and have found out,
that I could use diag.sh script found in ramips platform, which seems to be
also shared in a few other platforms:

 4801276bc2078c5bcf03003c831e3b0a target/linux/ramips/base-files/etc/diag.sh
 4801276bc2078c5bcf03003c831e3b0a target/linux/ipq40xx/base-files/etc/diag.sh
 4801276bc2078c5bcf03003c831e3b0a target/linux/ath79/base-files/etc/diag.sh

And @chunkeey suggested to me, that I can also add lantiq, ipq806x and
apm821xx to the list of platforms which could share this generic
diag.sh.

I've extended the base diag.sh in a way, that if it detects any of the
DTS LED aliases, then it would use the generic DTS set_led_state code.
The code in platform's diag.sh has moved to base-files package in this
commit:

 base-files: diag.sh: Make it more generic towards DTS so it could be reused

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Tested-by: Christian Lamparter <chunkeey@gmail.com> (apm821xx and ipq40xx)
2018-12-06 08:42:40 +01:00
Petr Štetiar
60dd181a76 base-files: diag.sh: Make it more generic towards DTS so it could be reused
I wanted to add status LEDs support to my imx6 based board and have
found out, that I could use diag.sh script found in ramips platform,
which seems to be also shared in a few other platforms:

 4801276bc2078c5bcf03003c831e3b0a target/linux/ramips/base-files/etc/diag.sh
 4801276bc2078c5bcf03003c831e3b0a target/linux/ipq40xx/base-files/etc/diag.sh
 4801276bc2078c5bcf03003c831e3b0a target/linux/ath79/base-files/etc/diag.sh

So I've extended the base diag.sh in a way, that if it detects any of
the DTS LED aliases, then it would use the generic DTS set_led_state
code.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-12-06 08:42:40 +01:00
David Bauer
68e59b61c6 kernel: add DT binding support to AVM EVA parser
It allows selecting split-firmware parser directly by
specifying image-format in the device-tree.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-12-06 08:42:40 +01:00
Rosen Penev
26dcaf58ee comgt: Fix 3g.sh permissions
3g.sh needs to be executable. 600 is not correct for that.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-12-06 08:42:39 +01:00
Jonathan Thibault
e93e2b6318 octeon: Evaluate board names in alphabetical order
Signed-off-by: Jonathan Thibault <jonathan@navigue.com>
2018-12-06 08:42:22 +01:00
Ram Chandra Jangir
9ed180b000 ipq806x: dts: Add support for RGMII RX and TX clock delays
This change enables support to select phy4 in RGMII mode and
enables RGMII TX/RX clock internal delays.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2018-12-06 08:15:50 +01:00
Ram Chandra Jangir
bf7719f22c kernel: ar83xx: Add support for three GMAC's connection
We have IPQ8064 AP161 board which has three GMAC's
 * RGMII x2
 * SGMII x1.
The existing ar8327 driver does not have support for
three GMAC's connection, hence this change adds support
for the same. This has been verified on AP148 and AP161
board.

Signed-off-by: xiaofeis <xiaofeis@codeaurora.org>
Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2018-12-06 08:15:27 +01:00
Daniel Halmschlager
99e212171a ar71xx: Add usb drivers in Archer C7 v4/v5 images
This commit adds the default usb packages
- kmod-usb-core
- kmod-usb2
- kmod-usb-ledtrig-usbport
for Archer C7 v4 and v5.
(The C7 v5 configuration is based on the v4, therefore the change for v4
also applies for v5.)

Signed-off-by: Daniel Halmschlager <dh@dev.halms.at>
2018-12-05 21:30:37 +00:00
Michael Heimpold
d6ac8ca76c base-files: fix several bashisms
For equality test a simple = is sufficient, the == is
usually disregarded as bashism.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-12-05 22:16:52 +01:00
Marek Lindner
8ad45992ac ipq40xx: fix openmesh sysupgrade with tar content out of order
The tar extraction depends on the order in which the files
are added to the tar file. Since the order is not guaranteed
and depends on the host system, the combined mtd write fails
with sysupgrade images built on some systems.
Fix by changing to tar file order independent mtd write.

Fixes: 86e18f6706 ("ipq806x: add support for OpenMesh A42")
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-12-05 09:40:32 +01:00
Steven Lin
2b4ac79a79 ipq40xx: add support for EnGenius EAP1300
SOC:    IPQ4018 / QCA Dakota
CPU:    Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7
DRAM:   256 MiB
NOR:    32 MiB
ETH:    Qualcomm Atheros QCA8072
WLAN1:  Qualcomm Atheros QCA4018 2.4GHz 802.11bgn 2:2x2
WLAN2:  Qualcomm Atheros QCA4018 5GHz 802.11a/n/ac 2:2x2
INPUT:  RESET Button
LEDS:   Power, LAN, MESH, WLAN 2.4GHz, WLAN 5GHz

1. Load Ramdisk via U-Boot

To set up the flash memory environment, do the following:
a. As a preliminary step, ensure that the board console port is connected to the PC using these RS232 parameters:
   * 115200bps
   * 8N1
b. Confirm that the PC is connected to the board using one of the Ethernet ports. Set a static ip 192.168.99.8 for Ethernet that connects to board. The PC must have a TFTP server launched and listening on the interface to which the board is connected. At this stage power up the board and, after a few seconds, press 4 and then any key during the countdown.

U-BOOT> set serverip 192.168.99.8 && set ipaddr 192.168.99.9 && tftpboot 0x84000000 openwrt.itb && bootm

2. Load image via GUI

a. Upgrade EAP1300 to FW v3.5.3.2
In the GUI, System Manager > Firmware > Firmware Upgrade, to do upgrade.
b. Transfer to OpenWrt from EnGenius.
In Firmware Upgrade page, to upgrade yours openwrt-ipq40xx-engenius_eap1300-squashfs-sysupgrade.bin.

3. Revert to EnGenius EAP1300
To flash openwrt-ipq40xx-engenius_eap1300-squashfs-factory.bin by using sysupgrade command and "DO NOT" keep configuration.
$ sysupgrade –n openwrt-ipq40xx-engenius_eap1300-squashfs-factory.bin

Signed-off-by: Steven Lin <steven.lin@senao.com>
2018-12-05 09:40:32 +01:00
Stijn Tintel
e261c8b764 brcm2708-gpu-fw: add fw required for camera module
To be able to use the camera module, start_x=1 has to be set in
config.txt. This will cause the bootloader to load the GPU firmware that
contain the extra video codecs. Install these firmware files.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-05 00:39:53 +02:00
Stijn Tintel
42ca32ad2f brcm2708-gpu-fw: update to git HEAD
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-05 00:09:14 +02:00
Stijn Tintel
93a14b8f2a kernel: add missing symbol
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-04 22:45:08 +02:00
Stijn Tintel
f208f77811 mac80211: fix brcmfmac on brcm2708
An upstream change broke brcmfmac when loaded with modparam roamoff=1.
As we are carrying a patch that enables roamoff by default on the
brcm2708 target to improve stability, wireless is currently broken
there. Add a patch to fix brcmfmac with roamoff=1.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-12-04 22:45:08 +02:00
Mathias Kresin
f381cbcb5f ramips: fix Netgear EX3700/EX3800 wireless driver selection
Fix the typo to select kmod-mt76x2.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-04 20:40:27 +01:00
Felix Fietkau
4fd7882822 mt76: update to the latest version
5a5b396 mt76: throttle transmission of buffered multicast packets
8084323 mt7603: implement code for adjusting energy detect CCA thresholds
8929a6e mt7603: increase MCU timeout
f2ba65f mt7603: update firmware to 20161027164355
0ad998b mt7603: increase aggregation limits (based on vendor driver changes)
da00af0 mt7603: clear bit 18 in MT_SEC_SCR to fix ICV error

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-12-04 12:28:56 +01:00
Rafał Miłecki
f98fde2db4 Revert "kernel: use add_mtd_partitions() helper when using OpenWrt parsers"
This reverts commit 7e88753ace.

Using subpartitions (hierarchical layout) resulted in calling MTD ops of
parent partition instead of master device ops. That was expected and
should work but testing revealed some bugs.

Apparently the way MTD_ERASE_PARTIAL is implemented in the OpenWrt
breaks something and using parent partition ops triggers using that
code.

On SmartRG SR400ac it was resulting in:
[  225.487519] jffs2: Erase at 0x01ac0000 failed immediately: errno -22
on the second boot (for some reason erasing was starting over) and it
was breaking flash access in a long term.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-03 15:50:26 +01:00
Pawel Dembicki
e9a9b7d1ed ramips: add support for D-Link DWR-118-A1
The DWR-118-A1 Wireless Router is based on the MT7620A SoC.

Specification:

- MediaTek MT7620A (580 Mhz)
- 64 MB of RAM
- 16 MB of FLASH
- 1x 802.11bgn radio
- 1x 802.11ac radio (MT7610EN)
- 3x 10/100 Mbps Ethernet (3 LAN)
- 2x 10/100/1000 Mbps ICPlus IP1001 Ethernet PHY (1 WAN AND 1 LAN)
- 1x internal, non-detachable antenna
- 2x external, non-detachable antennas
- 1x USB 2.0
- UART (J1) header on PCB (57600 8n1)
- 7x LED (5x GPIO-controlled), 2x button
- JBOOT bootloader

Known issues:
- WIFI 5G LED not working
- flash is very slow

The status led has been assigned to the dwr-118-a1:green:internet led.
At the end of the boot it is switched off and is available for other
operation. Work correctly also during sysupgrade operation.

Installation:
Apply factory image via http web-gui or JBOOT recovery page

How to revert to OEM firmware:
- push the reset button and turn on the power. Wait until LED start
  blinking (~10sec.)
- upload original factory image via JBOOT http (IP: 192.168.123.254)

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-12-03 15:34:56 +01:00
Chen Minqiang
40692f0fb5 ramips: mt7620: select only the matching mt76 driver
Because every device has selected the corresponding mt76 driver, we can
now disable the mt76 metapackage by default to make sure that other
devices (those don't need mt76) avoid selecting unwanted packages.

We can find the hardware specifies and determine the dependencies on
these sites:
  https://wikidevi.com/wiki/
  https://openwrt.org/toh/hwdata/

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-12-03 15:34:56 +01:00
Chen Minqiang
7a32a73e52 ramips: mt7620: drop mt76 driver for boards without mt76 wireless
These boards don't have a mt76 wireless at all and don't need any of the
mt76 family drivers.

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-12-03 15:34:56 +01:00
Mathias Kresin
55101877d3 ramips: mt7620: disable PCIe if nothing is attached
All boards neither expose the PCIe as Mini-PCIe nor have anything
attached to the PCIe Bus. Disable PCIe for those by dropping the node
from the dts files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-12-03 15:34:56 +01:00
Chen Minqiang
14b81c909f ramips: mt7620: add missing pci wifi nodes to dts files
These devices has pci wifi but not defined in dts:
 HC5761
 HC5861
 TINY-AC

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-12-03 15:34:56 +01:00
Rafał Miłecki
7e88753ace kernel: use add_mtd_partitions() helper when using OpenWrt parsers
This helper uses hierarchical partitions layout following the way
upstream parsers work. It's closer to what we should use when mainlining
our solutions. It also doesn't require hacky casting of struct
mtd_partition to the const.

THIS WILL AFFECT KERNEL PRINTING PARTITIONS IN THE LOG

Something like:
[    3.930158] 0x0000004e0000-0x000001fb0000 : "rootfs_data"
will get replaced by:
[    3.907338] Creating 1 MTD partitions on "rootfs":
[    3.912142] 0x00000031d400-0x000001ded400 : "rootfs_data"

It's important to understand that "rootfs_data" in above example is a
*subpartition* of the "rootfs" now. To get absolute addresses (e.g. for
some debugging purposes) one has to add them to the "rootfs", e.g.
[    3.912548] 0x0000001c2c00-0x000001fb0000 : "rootfs"

(0x1c2c00 + 0x31d400 = 0x4e0000)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-03 11:26:05 +01:00
Rafał Miłecki
e24983e710 kernel: backport 2 mtd partitioning fixes
This improves handling of subpartitions.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-03 10:34:12 +01:00
Florian Eckert
675eb747aa openvpn: add list element parsing
For the parameters tls-cipher and ncp-ciphers more than one option can
be used in the OpenVPN configuration, separated by a colon, which should
be implemented as a list in order to configure it more clearly. By
adding the new OPENVPN_LIST option to the openvpn.options file with the
tls-cipher and ncp-cipher parameters, uci can now add this option as a
"list" and the init script will generate the appropriate OpenVPN
configuration from it.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-12-03 09:54:03 +01:00
Rafał Miłecki
966ba6daa4 kernel: fix downloading rcX releases
They are no longer stored in the "testing" subdirectory and are not
available as .tar.xz archives. If -rc is detected download it from the
git.kernel.org and use .tar.gz.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-12-03 09:34:57 +01:00
Russell Senior
73127a878d ath79: add support for Ubiquiti AirRouter
Indoor low-power router with 2.4 GHz radio

CPU:    Atheros AR7241 rev 1
RAM:    32 MB
Flash:  8 MB NOR SPI
Switch: Atheros AR7240
Ports:  1x WAN, 4x LAN 10/100 Ethernet
WLAN:   Atheros AR9285 (2.4 GHz)
USB:    1x USB2 host port

Note: Ethernet WAN/LAN port naming is reversed from ar71xx.
WAN is eth0; LAN is eth1.1.

UART settings: 115200, 8N1

                LEDs
        +--------------------------
        |
        |
        |
        |
        |
        |
        |
        |
    VCC | x x
     RX | * x
        | x x
        | x x
     TX | * x
    GND | * x
        |
        |
        |
        |
        +--------------------------
                ETHERNET PORTS

Installation from Ubiquiti firmware, is as for other ubnt-xm AirOs devices.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-12-03 07:58:56 +01:00
Russell Senior
20ec6af15e ath79: split ubnt outdoor device leds into separate dtsi
Move common LED configuration into a separate includible dtsi.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-12-03 07:58:49 +01:00
Eneas U de Queiroz
3fb45576ac cryptodev-linux: move from packages feed
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This is actually a build dependency for /dev/crypto support in openssl.
Since it is a kernel module, it belongs here anyway.

- Removed Nikos Mavrogiannopoulos as maintainer.
- Streamlined make flags

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-12-03 07:50:24 +01:00
Tomasz Maciej Nowak
c288ad9c2b x86: make sysupgrade.tgz reachable again
Moving binding mount before check for saved sysupgrade configuration
made it unreachable. Fix it by moving binding mount after the check.

Fixes: f78b2616 (x86: mount writable bootfs)
Reported-by: Lucian Cristian <luci@powerneth.ro>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-12-03 07:38:20 +01:00
Jo-Philipp Wich
9808bd2799 Revert "base-files: fwtool: Fix wrong checksum on combined-image with metadata"
This reverts commit 41770add03.

The fwtool_check_image() procedure is used by `sysupgrade --test` which must
not alter the image under test in any way.

Currently, when the LuCI ui or any other sysupgrade wrapper first invokes
sysupgrade --test to verify the compatibility of the image and then calculates
the sha256sum over it, the resulting checksum will differ from the original
image since the test invocation will implicitely strip the metadata trailer.

To properly fix the underlying issue, the combined image checksumming code
must be modified to skip the metadata trailer.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-12-02 16:05:44 +01:00
Mathias Kresin
78ca6a5578 ramips: merge relocate compile into build recipe
Compile the loader if the relocate-kernel image recipe is used and get
rid of the legacy build code to do so.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-30 09:04:29 +01:00
Pawel Dembicki
465d57370f ramips: specify "firmware" partition format in JBOOT devices
Specify firmware partition format by compatible string.

List of devices:
-DWR-116-A1
-DWR-118-A2
-DWR-512-B
-DWR-921-C1
-LR-25G001

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-11-30 00:22:04 +01:00
Pawel Dembicki
b5597d5cc9 kernel: add DT binding support to the jimage parser
It allows specifying jimage parser directly in the DT.

Tested on LAVA LR-25G001

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-11-30 00:22:04 +01:00
Valentín Kivachuk
30a7ab8f61 ramips: add support for MTC Wireless Router WR1201
MTC Wireless Router WR1201 is the OEM name of the board. It is also sold
rebranded as STRONG Dual Band Gigabit Router 1200.

Specification:
- SoC: MediaTek MT7621A (880 MHz)
- Flash: 16 MiB
- RAM: 128 MiB
- Wireless: 2.4Ghz(MT7602EN) and 5Ghz (MT7612EN)
- Ethernet speed: 10/100/1000
- Ethernet ports: 4+1
- 1x USB 3.0
- 1x microSD reader
- Serial baud rate of Bootloader and factory firmware: 57600

The OEM webinterface writes only as much bytes as listed in the
uImage header field to the flash. Also, the OEM webinterface
evaluates the name field of uImage header before flashing (the
string "WR1201_8_128")

To flash via webinterface, is mandatory to use first initramfs.bin
and after (from the OpenWrt) the sysupgrade.bin

Some notes:
- Some microSD will not work:

  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: card claims to support voltages below defined range
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card

Signed-off-by: Valentín Kivachuk <vk18496@gmail.com>
2018-11-30 00:20:28 +01:00
Hans Dedecker
493c1d1766 odhcpd: update to latest git HEAD
d404c7e netlink: fix triggering of NETEV_ADDR6LIST_CHANGE event
ae6cf80 config: correctly break string for prefix filter

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-29 21:46:12 +01:00
INAGAKI Hiroshi
d70ec3008d ramips: specify "firmware" partition format
Specify firmware partition format by compatible string.

formats in ramips:

- denx,uimage
- tplink,firmware
- seama

It's unlikely but the firmware splitting might not work any longer for
the following boards, due to a custom header:

- EX2700: two uImage headers
- BR-6478AC-V2: edimax-header
- 3G-6200N: edimax-header
- 3G-6200NL: edimax-header
- BR-6475ND: edimax-header
- TEW-638APB-V2: umedia-header
- RT-N56U: mkrtn56uimg

But it rather looks like the uImage splitter is fine with the extra
header.

The following dts are not touched, due to lack of a compatible string in
the matching firmware splitter submodule:

- CONFIG_MTD_SPLIT_JIMAGE_FW
    DWR-116-A1.dts
    DWR-118-A2.dts
    DWR-512-B.dts
    DWR-921-C1.dts
    LR-25G001.dts
- CONFIG_MTD_SPLIT_TRX_FW
    WCR-1166DS.dts
    WSR-1166.dts
- CONFIG_MTD_SPLIT_MINOR_FW
    RBM11G.dts
    RBM33G.dts
- CONFIG_MTD_SPLIT_LZMA_FW
    AR670W.dts
- CONFIG_MTD_SPLIT_WRGG_FW
    DAP-1522-A1.dts

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-29 13:15:44 +01:00
Mathias Kresin
1977be8bd0 ramips: unifiy sysupgrade file extensions
Use .bin as file extension where possible. The user doesn't need to that
sysupgrade images for NAND boards are tarballs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-29 13:15:44 +01:00
Mathias Kresin
7f00123d63 ramips: remove duplicate image build variables
Remove image build variables which are set to the same value as the
default image build recipe.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-29 13:15:44 +01:00
Petr Štetiar
221d3e0234 ramips: bdcom-wap2100: Change DTS license to GPL-2.0-or-later OR MIT
Having MIT as alternative is sometimes preferred by upstream maintainers
and allows sharing that simple code with other projects. We don't really
want multiple DTS versions for the same device.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-29 13:15:44 +01:00
Petr Štetiar
1576666d67 ath79: ubnt-xw: Change DTS license to GPL-2.0-or-later OR MIT
Having MIT as alternative is sometimes preferred by upstream maintainers
and allows sharing that simple code with other projects. We don't really
want multiple DTS versions for the same device.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-29 13:10:50 +01:00
Petr Štetiar
9f563267d2 ath79: ubnt-bullet-m-xw: Change DTS license to GPL-2.0-or-later OR MIT
Having MIT as alternative is sometimes preferred by upstream maintainers
and allows sharing that simple code with other projects. We don't really
want multiple DTS versions for the same device.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-29 13:10:38 +01:00
Jo-Philipp Wich
1416b63dcb rules.mk: fix syntax error
Fix broken assignment operator added in a previous commit.

Fixes db73ec9f51 ("rules.mk: add INSTALL_SUID macro")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-29 12:33:15 +01:00
Jo-Philipp Wich
b0261ee5e9 rules.mk: add INSTALL_SUID macro
This is useful for packages that want to stage SUID executables.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-29 12:06:16 +01:00
Tony Ambardar
8806da86f5 base-files: fix prerm return value, align with postinst code
The return value of a package prerm script is discarded and not returned
correctly by default_prerm(). This allows other operations like service
shutdown to "leak" their return value, prompting workarounds like commit
48cfc826 which do not address the root cause.

Preserve a package prerm script return value for use by default_prerm(),
sharing the corresponding code from default_postinst() for consistency.
Also use consistent code for handling of /etc/init.d/ scripts.

Run Tested on: LEDE 17.01.4 running ar71xx.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-11-29 11:52:56 +01:00
Felix Fietkau
5c9ad4fa6e ramips: fix MTD EEPROM offset for TL-WR840N v5
The previous offset was invalid and pointed to the end of the partition,
which was causing issues with mt76

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-29 11:45:44 +01:00
Karl Vogel
ae980458ab sdk: find kernel modules when KDIR is a symlink
The find statement would not return any results if the KDIR_BASE pointed to a
symlink. Ran into this issue due to a custom Kernel/Prepare that was installing
a symlink to the kernel directory.

The extra slash at the end fixes this scenario and does no harm for targets that
have a proper KDIR.

Signed-off-by: Karl Vogel <karl.vogel@gmail.com>
2018-11-29 09:36:14 +01:00
Petr Štetiar
8ba6e95eed ramips: bdcom-wap2100: Enable mt7610e 5GHz radio
The 5GHz radio of this device uses an mt7610e PCI-E chip, which has
been recently started to be supported.

 mt76x0e 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4
 mt76x0e 0000:01:00.0: ASIC revision: 76100002
 mt76x0e 0000:01:00.0: Firmware Version: 0.1.00
 mt76x0e 0000:01:00.0: EEPROM ver:01 fae:00

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-28 23:37:29 +01:00
Petr Štetiar
26ad357192 ramips: bdcom-wap2100: Set firmware partition format to denx,uimage
Specify firmware partition format to denx,uimage in compatible DTS property.

 2 uimage-fw partitions found on MTD device firmware
 Creating 2 MTD partitions on "firmware":
 0x000000000000-0x00000017f72b : "kernel"
 0x00000017f72b-0x000000f70000 : "rootfs"

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-28 23:37:29 +01:00
Petr Štetiar
795211093f ramips: bdcom-wap2100: Fix boot failure by adding partitions compatible property
Flash partitions were moved under partition table node, but addition of
compatible property was omitted which lead to following boot failure:

 VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
 Please append a correct "root=" boot option; here are the available partitions:
 1f00           16384 mtdblock0
  (driver?)
 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

Fixes: e4d9217f (ramips: improve BDCOM WAP2100-SK support)
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-28 23:37:29 +01:00
Michael Heimpold
e880a30549 mxs: use generic sysinfo board detection
Since we do nothing special for mxs based boards,
we can simply use the generic existing code.
We just need to convert scripts to use the DT
compatible strings.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-11-28 23:37:29 +01:00
Felix Fietkau
5ffacceb7b mac80211: fix reordering of buffered broadcast packets
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-28 23:23:38 +01:00
Felix Fietkau
87b874d4d6 mt76: update to the latest version
5fb60a7 mt7603: fix aggregation size handling
31cd20e mt7603: issue PSE reset on stuck beacon
4063ae1 mt7603: check for PSE hang / stuck beacon first
00e03b9 mt7603: fix MT_WF_PHY_CR_RXTD_BASE definition
c3efb5d mt7603: add support for detecting MT7688 and single stream devices
2a136cb mt7603: fix TKIP key setup
cd456ca mt7603: disable broken support for WEP hardware encryption
3ecb7f8 mt7603: fix hardware queue assignment
6ac9653 mt7603: fix CAB queue limits
d22feb0 mt7603: move cab queue enabling to pre-tbtt tasklet
44bb372 mt7603: fix CAB queue flush mask

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-28 23:23:38 +01:00
Jo-Philipp Wich
3082370551 openvpn: update to 2.4.6
Update the OpenVPN package to version 2.4.6, refresh patches and drop
menuconfig options which are not supported upstream anymore.

Also fix the x509-alt-username configure flag - it is not supported
by mbedtls and was syntactically wrong in the Makefile - and the
port-share option which has been present in menuconfig but not been
used in the Makefile.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-28 22:10:19 +01:00
Jo-Philipp Wich
56378bc12d uhttpd: update to latest Git head
cdfc902 cgi: escape url in 403 error output
0bba1ce uhttpd: fix building without TLS and Lua support
2ed3341 help: document -A option
fa5fd45 file: fix CPP syntax error
77b774b build: avoid redefining _DEFAULT_SOURCE

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-28 12:55:50 +01:00
David Yang
824b580079 ramips: fix switch port order for HuaWei HG255D
The order of port marks and LEDs is reversed according to the board.

Signed-off-by: David Yang <mmyangfl@gmail.com>
2018-11-28 01:11:38 +01:00
Roger Pueyo Centelles
cb6a8aa584 ramips: mt7620: add DIR-810L's mt7610e 5 GHz radio
The 5 GHz radio of this device uses an mt7610e pci-e chip, which has
been recently added support.

Tested on the actual device as AP and client, TCP throughput ~90 Mbps
U/D.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2018-11-28 01:11:38 +01:00
Nishant Sharma
df3e0b5806 ramips: add support for UniElec U7621-06-512M-64M variant
Add support for UniElec U7621-06 variant with 512MB RAM and 64MB flash.

Additional specs are below:

CPU: MT7621 (880Mhz)
Bootloader: Ralink U-Boot
Flash: 64MB
 - U-Boot identifies as Macronix MX66L51235F
 - kernel identifies as MX66L51235l (65536 Kbytes)
RAM: 512MB

Rest of the details as per commit 46ab81e405 ("ramips add support for
UniElec U7621-06")

Signed-off-by: Nishant Sharma <nishant@unmukti.in>
[use generic board detection, add firmware partition compatible, extend
firmware partition to use all of the remaining flash space, add a
maximum image size matching the firmware partition size]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-28 01:11:38 +01:00
Mathias Kresin
509d02a3d1 ramips: use generic board detection for Unielec u7621-06
Use the generic board detection for the board instead of the target
specific one. Mark the sysupgrade image compatible with the former used
userspace boardname to allow an upgrade from earlier versions.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-28 00:50:35 +01:00
Thomas Vincent-Cross
a160f50d4f ramips: add support for Wavlink WL-WN570HA1
This commit adds support for the Wavlink WL-WN570HA1, a dual-band PoE
wireless router with the following specifications:

 - CPU: MediaTek MT7688AN 580MHz
 - Flash: 8MB
 - RAM: 64MB
 - Ethernet: 1x 10/100Mbps
 - 2.4 GHz: 802.11b/g/n SoC, 1T1R, 27 dBm
 - 5 GHz: 802.11a/n/ac MT7610E, 1T1R, 25 dBm
 - Antennas: 2x external (1 per radio), detachable
 - LEDs: 3 programmable + Wi-Fi, WAN/LAN, Power
 - Buttons: Reset

Flashing instructions:

Factory U-boot launches a TFTP client if reset button is pressed during power-on.
Rename the sysupgrade file and configure TFTP as follows:

 - Client (WL-WN570HA1) IP: 192.168.10.101
 - Server IP: 192.168.10.100
 - Filename: firmware.bin

Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
[use generic board detection, add firmware partition compatible]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-28 00:50:35 +01:00
Rosy Song
31469aebd4 ath79: add support for ROSINSON WR818 board
This commit adds support for the ROSINSON WR818 WiFi-Router

SoC:    Qualcomm Atheros QCA9563,
FLASH:  Winbond W25Q128FV 16MBytes,
WiFi:   QCA9563 b/g/n 3x3 450Mbit/s,
USB:    1x USB 2.0 Type A, 1x USB2.0 Type C,
IN:     WPS/Reset button GPIO1,
OUT:    Power LED red, Internet LED red, WLAN LED red,
        LAN1 LED red, LAN2 LED red, System LED red,
UART:   RX-GPIO18, TX-GPIO22,

Tested and working:
    - Ethernet (LAN + WAN)
    - WiFi
    - OpenWRT sysupgrade
    - Button
    - LEDs

Installation of OpenWRT from vendor firmware:
    - Connect to the Web-interface at http://192.168.1.1
    - Go to "Administration" -> "Firmware Upgrade"
    - Upload the OpenWrt sysupgrade image

Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-11-27 21:11:54 +01:00
Mathias Kresin
7574781337 ath79: merge glinet gl-x750 dtsi and dts
The board doesn't come in different flash type flavours, hence there is
no need to keep a dtsi + dts for this purpose.

While at it, fix some whitespace issues.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-27 21:11:54 +01:00
Mathias Kresin
68d77241cd ath79: rename glinet x750
The boardname is gl-x750 and is already used for the led names.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-27 21:11:54 +01:00
Russell Senior
e0def989e8 ramips: fix alphabetic ordering of skylab skw92a
Fix the alphabetic ordering of skylab skw92a in ramips_setup_interfaces.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-11-27 21:11:54 +01:00
Matthias Badaire
1100ba43db ramips: fix RavPower WD03 SoC dtsi include
The RavPower WD03 is a mt7620n based baord. With the change applied, I2C
should work now with the RavPower WD03.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
[reworded commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-27 21:11:54 +01:00
John Crispin
c6aa4f53e8 Revert "x86: add intel microcode entries to grub config"
This reverts commit 546fced2a2.

Signed-off-by: John Crispin <john@phrozen.org>
2018-11-27 18:58:38 +01:00
John Crispin
231d9d5327 Revert "intel-microcode: create early load microcode image"
This reverts commit 022ffb56b2.

Signed-off-by: John Crispin <john@phrozen.org>
2018-11-27 18:58:37 +01:00
John Crispin
8ead5a735d Revert "x86: add amd microcode entries to grub config"
This reverts commit a822283c7e.

Signed-off-by: John Crispin <john@phrozen.org>
2018-11-27 18:58:35 +01:00
John Crispin
30f30d3e11 Revert "amd64-microcode: create early load microcode image"
This reverts commit 975019b3a7.

Signed-off-by: John Crispin <john@phrozen.org>
2018-11-27 18:58:33 +01:00
Daniel Engberg
731a12ad83 tools/bison: Update to 3.2.2
Update bison to 3.2.2

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-11-27 10:28:28 +01:00
David Bauer
a734450d6f ath79: add Archer C58/C59 partition compatible
This commit adds firmware partition compatible for the
TP-Link Archer C58 v1 and Archer C59 v1.

Since a22311e this allows to select the correct mtdsplit
parser instead of trying all available ones one by one.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-11-26 21:27:17 +01:00
David Bauer
df2e6b64d1 ath79: add firmware partition compatible for OCEDO
This commit adds firmware partition compatible for the
OCEDO Raccoon and OCEDO Koala.

Since a22311e this allows to select the correct mtdsplit
parser instead of trying all available ones one by one.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-11-26 21:26:56 +01:00
INAGAKI Hiroshi
37c848810c ath79: specify "firmware" partition format for I-O DATA devices
Specify firmware partition format (denx,uimage) by compatible string
for I-O DATA devices.

affected devices (&run tested)

- WN-AC1167DGR
- WN-AC1600DGR2

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-26 21:26:07 +01:00
INAGAKI Hiroshi
fa1a120a1a ath79: specify "firmware" partition format for ELECOM WRC-300GHBK2-I
Specify firmware partition format (denx,uimage) by compatible string
for ELECOM WRC-300GHBK2-I.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-26 21:26:06 +01:00
Mathias Kresin
f4abc962ec ath79: fix shebang
The shebang was accidentally changed with 9989fd5154 ("ath79: add
support for GL-iNet GL-X750").

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 19:40:31 +01:00
Mathias Kresin
aa82fdf110 ramips: fix GB-PC1/PC2 build error
With ed25e3ac02 ("ramips: fix some clocks in mt7621.dtsi") the
cpuclock node was dropped from the mt7621.dtsi without removing the
references to this node from the GB-PC1/PC2 dts files.

Remove them now, to fix the build error.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 19:40:31 +01:00
Mathias Kresin
d7494f30f5 ramips: fix Lava LR-25G001 invalid led names
It has to be <board>:<colour>:<function> and is expected exactly this
way by the userspace scripts.

While at it, fix some whitespace issues in the dts file and rename the
flash node as required upstream.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 19:40:31 +01:00
Günther Kelleter
33878b0a40 kernel: ar8xxx: get_arl_table now shows all ports of an entry
Multicast ARL entries can have multiple destination ports. Get and dump
all destination ports of each entry, not just the lowest.

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
2018-11-26 18:41:21 +01:00
Mathias Kresin
be3e69d991 ramips: rt2880: fix pci cells definition
Set the correct number of cells to fix "property has invalid length" dtc
compiler warnings.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 15:54:22 +01:00
Mathias Kresin
e4d9217fe5 ramips: improve BDCOM WAP2100-SK support
Use the generic board detection instead of the target specific one as
all recent additions are doing.

Setup the USB led via devicetree (a58535771f) and include the required
driver by default. Merge the led userspace setting with an existing
identical case.

Use the wps led for boot status indication.

Move the partitions into a partition table node (6031ab345d) and drop
needless labels. Drop misplaced cells properties (53624c1702).

Cleanup the pinmux and only switch pins to gpio functions which a
referenced as gpio in the dts.

Match the maximum image size with the size of the firmware partition.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 15:54:22 +01:00
Mathias Kresin
71ba834cf1 ramips: add Sanlinking Technologies D240 pinmux quirk
The sd function of the nd_sd group configures two of the groups pins as
gpios. The pins are used as PCIe reset/power.

Due to the driver load order, the pins are configured way to late if
triggered by the sd-card driver.

To not introduce another kind of driver load order dependency and
configure the pins as early as possible, means during pinmux driver
load.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 15:54:22 +01:00
Mathias Kresin
d6ce04dad8 ralink: fix mt7620 nd_sd pinmux
In case the nd_sd group is set to the sd-card function, Pins 45 + 46 are
configured as GPIOs. If they are blocked by the sd function, they can't
be used as GPIOs.

Reported-by: Kristian Evensen <kristian.evensen@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 15:54:22 +01:00
Mathias Kresin
9ebce69611 ramips: revert fix rt3883 pci pinmux
This reverts commit dcdc6d9dad.

Even if described this way in the datasheet, it causes a bootloop on a
RT-N56U (v1):

  of-flash 1c000000.nor-flash: do_map_probe() failed for type cfi_probe
  of-flash 1c000000.nor-flash: do_map_probe() failed
  VFS: Cannot open root device “(null)” or unknown-block(0,0): error -6

Fixes: FS#1930

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 15:54:22 +01:00
Mathias Kresin
8ec1a66c34 ramips: improve Skylab SKW92A support
Use the generic board detection instead of the target specific one as
all recent additions are doing.

Add the wireless led according the gpio number from the datasheet.
Rename the board part of the leds to match the name used for the
compatible string. Finally, do not hijack the wps led for boot status
indication longer than necessary.

Merge userspace config into existing cases.

Include the manufacture Name in the dts model string.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-11-26 15:54:22 +01:00
Hans Dedecker
533f7673ae netifd: update to latest git HEAD
dfa4ede interface: fix return code of __interface_add()
a82a8f6 netifd: fix resource leak on error in netifd_add_dynamic()
fa2403d config: fix resource leaks on error in config_parse_interface()
85de9de interface: fix memory leak on error in __interface_add()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-26 15:33:45 +01:00
John Crispin
749a29f76c Revert "ramips: mt7621-spi: replace the driver with upstream staging one"
This reverts commit a44f000077.

This breaks some mt7621 devices.

Signed-off-by: John Crispin <john@phrozen.org>
2018-11-26 14:43:42 +01:00
Zheng Qian
48a7a2a75d ramips: fix switch ports mapping for newifi d2
Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-11-26 12:31:19 +01:00
Kevin Schmidt
bce555b09b lantiq: enable FXS ports on VR200v
Disables SMP support.
Add VR200 target to keep SMP on FXS-less device variant.

Signed-off-by: Kevin Schmidt <kevin.patrick.schmidt@googlemail.com>
2018-11-26 12:30:33 +01:00
INAGAKI Hiroshi
879f2ef7c0 ath79: modify mtd partitions for Buffalo BHR-4GRV2
This commit modifies mtd partitions define for Buffalo BHR-4GRV2 and
move it to generic subtarget.

In Buffalo BHR-4GRV2, "kernel" partition is located behined "rootfs"
partition in the stock firmware. This causes the size of the kernel
to be limited by the fixed value.

0x50000                       0xe80000        0xff0000
  +-------------------------------+--------------+
  |            rootfs             |    kernel    |
  |           (14528k)            |    (1472k)   |
  +-------------------------------+--------------+

After ar71xx was updated to Kernel 4.14, the kernel size of BHR-4GRV2
exceeded the limit, and it breaks builds on official buildbot.
Since this issue was also confirmed in ath79, I modified the mtd
partitions to get rid of that limitation.

0x50000                                       0xff0000
  +----------------------------------------------+
  |                   firmware                   |
  |                   (16000k)                   |
  +----------------------------------------------+

However, this commit breaks compatibility with ar71xx firmware, so I
dropped "SUPPORTED_DEVICES += bhr-4grv2".

This commit requires new flash instruction instead of the old one.

Flash instruction using initramfs image:

1. Connect the computer to the LAN port of BHR-4GRV2
2. Set the IP address of the computer to 192.168.12.10
3. Rename the OpenWrt initramfs image to
"bhr4grv2-uImage-initramfs-gzip.bin" and place it into the TFTP
directory
4. Start the tftp server on the computer
5. While holding down the "ECO" button, connect power cable to
BHR-4GRV2 and turn on it
6. Flashing (orange) diag LED and release the finger from the button,
BHR-4GRV2 downloads the intiramfs image from TFTP server and boot
with it
7. On the initramfs image, create "/etc/fw_env.config" file with
following contents
  /dev/mtd1 0x0 0x10000 0x10000
8. Execute following commands to add environment variables for
u-boot
  fw_setenv ipaddr 192.168.12.1
  fw_setenv serverip 192.168.12.10
  fw_setenv ethaddr 00:aa:bb:cc:dd:ee
  fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
9. Perform sysupgrade with squashfs-sysupgrade image
10. Wait ~150 seconds to complete flashing

And this commit includes small fix; BHR-4GRV2 has QCA9557 as a SoC,
not QCA9558.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-26 12:28:17 +01:00
Robert Marko
d6e92b18d9 ath79: Remove source-only flag
Remove the source-only flag from ath79, its supposed to replace ar71xx after next stable release but buildbots are not currently generating images for it.
So in order to expand testing as much as possible and prepare for moving to ath79 lets enable the buildbots to actually build the target.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-11-26 12:24:54 +01:00
Chuanhong Guo
a44f000077 ramips: mt7621-spi: replace the driver with upstream staging one
That driver is more efficient thanks to the refactor of spi reading operation.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-11-26 12:24:30 +01:00
Pawel Dembicki
20b09a2125 ramips: add support for Lava LR-25G001
The Lava LR-25G001 Wireless Router is based on the MT7620A SoC.

Specification:

- MediaTek MT7620A (580 Mhz)
- 64 MB of RAM
- 16 MB of FLASH
- 1x 802.11bgn radio
- 1x 802.11ac radio (MT7610EN)
- 5x 10/100/1000 Mbps AR8337 Switch (1 WAN AND 4 LAN)
- 2x external, detachable antennas
- 1x USB 2.0
- UART (J3) header on PCB (57600 8n1)
- 8x LED (3x GPIO-controlled), 2x button
- JBOOT bootloader

Known issues:
- Work only three Gigabit ports (3/5, 1 WAN and 2LAN)

Installation:
Apply factory image via http web-gui or JBOOT recovery page

How to revert to OEM firmware:
- push the reset button and turn on the power. Wait until LED start
  blinking (~10sec.)
- upload original factory image via JBOOT http (IP: 192.168.123.254)

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-11-26 12:16:52 +01:00
Pawel Dembicki
b85fe43ec8 ramips: mt7620: add force use of mdio-mode
Some boards have external switches different than mt7530.

This patch allow to use mdio-mode without 0x1f register.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-11-26 12:16:52 +01:00
Pawel Dembicki
e61812fd34 ar8216: add adjust_link checking
Driver crash when 'phydev->adjust_link' isn't provided.

This patch check if 'phydev->adjust_link' exist before
call the method.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-11-26 12:16:52 +01:00
Weijie Gao
ed25e3ac02 ramips: fix some clocks in mt7621.dtsi
As the cpu clock calculation has been fixed, the clock for gic and spi
should be also fixed.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-11-26 12:13:52 +01:00
Weijie Gao
c7ca224299 ramips: fix cpu clock of mt7621 and add dt clk devices
For a long time the mt7621 uses a fixed cpu clock which causes a problem
if the cpu frequency is not 880MHz.

This patch fixes the cpu clock calculation and adds the cpu/bus clkdev
which will be used in dts.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-11-26 12:13:52 +01:00
Weijie Gao
f5af8be636 ramips: fix register range of memc node in mt7621.dtsi
The memc node from mt7621.dtsi has incorrect register resource.
Fix it according to the programming guide.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-11-26 12:13:52 +01:00
Weijie Gao
e217d69a4a ramips: merge two patches 101-mt7621-timer and 998-mt7621-needs-jiffies
These two patches both modified the mt7621.c, and the patch file
998-mt7621-needs-jiffies.patch adds only one line which is used by the
another patch file. So merge them into one file.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-11-26 12:13:52 +01:00
INAGAKI Hiroshi
83f08aebb1 ath79: specify "firmware" partition format for Buffalo devices
Specify firmware partition format (denx,uimage) by compatible string
for Buffalo devices.

affected devices (&run tested):
- BHR-4GRV
- WHR-G301N
- WZR-HP-AG300H
- WZR-HP-G302H A1A0
- WZR-HP-G450H (WZR-450HP)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-11-26 12:09:25 +01:00
Tomasz Maciej Nowak
d93b09fa74 sdk: expose part of advanced configuration options
These option can be useful in developement/packagig applications for
OpenWrt. Instead of searching them by hand in Config-build.in lets
expose them for easier access.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:07:06 +01:00
Steven Honson
a73283dc10 kernel: nf-nathelper-extra depends on ipt-raw
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
As automatic helper assignment is disabled in recent Linux kernels,
explicit rules must be added to the raw table for each helper.

While commit f50a524 in the firewall3 project added a set of default
rules and other additional related functionality, both this and the
alternative manual methods of defining these rules require kmod-ipt-raw.

Signed-off-by: Steven Honson <steven@honson.id.au>
2018-11-26 12:05:47 +01:00
Lorenzo Bianconi
e612e60517 ramips: add mt76x0 node to RT-AC51U device tree
Introduce mt76x0e device tree node in RT-AC51U dts.
Define mt76x0e mtd partition and offset

Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
2018-11-26 12:05:47 +01:00
Christian Lamparter
5d5c0b0582 apm821xx: wndr4700: restore sd-card media detection
This was not converted to the new, dt-based board name.

Fixes: e90dc8d272 ("apm821xx: convert to device-tree board detection")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:47 +01:00
Christian Lamparter
a2266a6d42 apm821xx: shuffle helper scripts to the front
In a patch for the ath79, Mathias Kresin mentioned that
helper scripts should be in front of the device targets.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:47 +01:00
Christian Lamparter
d82d84694e apm821xx: add support for the Netgear WNDAP620 and WNDAP660
This patch adds support for the Netgear WNDAP620 and WNDAP660,
they are similar devices, but due to the LAN LED configuration,
the switch setup and WIFI configuration each gets a different
device target.

Hardware Highlights WNDAP620:
CPU: AMCC PowerPC APM82181 at 1000 MHz
DRAM:  128 MB, 2 x 64 MiB DDR2 Hynix H5PS5162GF
CPU: AMCC PowerPC APM82181 at 1000 MHz
FLASH: 32 MiB, NAND SLC, Hynix HY27US08561A
Ethernet: RealTek RTL8363SB 2x2-Port Switch PHY - Only 1 GBit Port (POE)
Wifi: Atheros AR9380 minipcie - Dual-Band - 3x3:3
Serial: console port with RJ45 Interface (9600-N-8-1)
LEDS: Power, LAN-Activity, dual color LAN-Linkspeed, 2.4GHz, 5GHz LEDs
Button: Soft Reset Button
Antennae: 3 internal dual-band antennae + 3 x RSMA for external antennaes

Hardware Highlights WNDAP660:
CPU: AMCC PowerPC APM82181 at 1000 MHz + 2 Heatsinks
DRAM:  256 MB, 2 x 128 MiB DDR2
FLASH: 32 MiB, NAND SLC, Hynix HY27US08561A
Ethernet: RealTek RTL8363SB 2x2-Port Switch PHY (POE)
Wifi1: Atheros AR9380 minipcie - Dual-Band - 3x3:3
Wifi2: Atheros AR9380 minipcie - Dual-Band - 3x3:3
Serial: console port with RJ45 Interface (9600-N-8-1)
LEDS: Power, LAN-Activity, 2x dual color LAN-Linkspeed, 2.4GHz, 5GHz LEDs
Button: Soft Reset Button
Antennae: 6 internal dual-band antennae + 3 x RSMA for external antennaes

Flashing requirements:

 - needs a tftp server at 192.168.1.10/serverip.
 - special 8P8C(aka RJ45)<->D-SUB9 Console Cable
   ("Cisco Console Cable"). Note: Both WNDAP6x0 have
   a MAX3232 transceivers, hence no need for any separate
   CMOS/TTL level shifters.

External Antenna:
The antennae mux is controlled by GPIO 11 and GPIO14. Valid Configurations:
 = Config# = | = GPIO 11 = | = GPIO 14 = |  ===== Description =====
      1.     |   1 / High  |  0 / Low    | Use the internal antennae (default)
      2.     |   0 / Low   |  1 / High   | Use the external antennae

The external antennaes are only meant for the 2.4 GHz band.

One-way Flashing instructions via u-boot:

 0. connect the serial cable to the RJ45 Console Port
    Note: This requires a poper RS232 and not a TTL/USB adaptor.

 1. power up the AP and interrupt the u-boot process at

    'Hit any key to stop autoboot'

 2. setup serverip and ipaddr env settings
    Enter the following commands into the u-boot shell
    # setenv ipaddr 192.168.1.1
    # setenv serverip 192.168.1.10

 3. download the factory.img image to the AP
    Enter the following commands into the u-boot shell

    # tftp ${kernel_addr_r} openwrt-apm821xx-nand-netgear_wndap660-squashfs-factory.img

 4. verfiy image integrity
    Enter the following commands into the u-boot shell

    # crc32 $fileaddr $filesize

    If the calculated crc32 checksum does not match, go back to step 3.

 5. flash the image
    Enter the following commands into the u-boot shell

    # nand erase 0x110000 0x1bd0000
    # nand write ${kernel_addr_r} 0x110000 ${filesize}

 6. setup uboot environment
    Enter the following commands into the u-boot shell

    # setenv bootargs
    # setenv fileaddr
    # setenv filesize
    # setenv addroot 'setenv bootargs ${bootargs} root=/dev/ubiblock0_0'
    # setenv owrt_boot 'nboot ${kernel_addr_r} nand0 0x110000; run addroot; run addtty; bootm ${kernel_addr_r}'
    # setenv bootcmd 'run owrt_boot'
    # saveenv

 7. boot
    # run bootcmd

Booting initramfs instructions via u-boot:

 Follow steps 0 - 2 from above.

 3. boot initramfs
    Enter the following commands into the u-boot shell

    # tftp ${kernel_addr_r} openwrt-apm821xx-nand-netgear_wndap660-initramfs-kernel.bin
    # run addtty
    # bootm ${kernel_addr_r}

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Christian Lamparter
a9839fe638 generic: rtl8367b: make it possible to specify cpu_port via DT
This patch adds the feature to parse the existing cpu_port DT
property, which is used to specify which port is the cpu port
of the switch.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Christian Lamparter
910c2f9e68 generic: rtl836x: support defered probe on mdio-bus
On the WNDAP620, the mdio and mdc lines are controlled by
the EMAC ethernet device. This results in a hen-vs-egg problem.
The rtl8367b driver is probed before the ethernet driver and
the mdio-bus is not available yet, which caused the rtl8367b
driver to fail.

This patch changes the rtl8366_smi_probe_of() function to
return -EPROBE_DEFER if the mdio-bus lookup failed and changes
rtl8366_smi_probe()'s signature to return the error code back to
the callee, so it can propagate back to the kernel. Which, will
retry the switch probe at a later time.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Christian Lamparter
fb4bed5fe9 apm821xx: import gpio-export DT code from lantiq
This will come in handy for the Netgear WNDAP620's antennae mux.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Christian Lamparter
e21a9db47d apm821xx: MX60(W): enable u-boot environment
This patch adds u-boot environment access to the MX60(W) target.
"The environment size is one NAND block (128KiB on Buckminster).
We allocate four NAND blocks to deal with bad blocks which may
exist in the saved  environment"

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Christian Lamparter
f6968952df apm821xx: MR24: add to uboot-envtools
This patch adds the complicated u-boot
environment access settings for to the
MR24 target.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Christian Lamparter
6f4f77aa1d apm821xx: add uboot-envtools support
All apm821xx devices use u-boot and most of them have
an accessible u-boot environment. This patch adds the
necessary template file, but does not add the
uboot-envtools package to any of the targets.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-26 12:05:46 +01:00
Ram Chandra Jangir
dc6af37544 ipq806x: Add support for IPQ8064 AP161 board
Specification:
   - SoC: Qualcomm Atheros IPQ8064 ARM-v7 Dual Core SMP CPU
   - RAM: 512MB DDR3 System Memory
   - NOR Flash: 32MB SPI NOR
   - NAND Flash: 256MB NAND
   - Ethernet: 5 x 1G via QCA8337N
   - USB: 2 x USB 3.0 SuperSpeed
   - PCIe: 3x Mini PCIe 2.0 Slots
	   Three PCIE2.0 connectors can connect two or three radio cards
           such as the CUS260 for 2.4 GHz WLAN and the CUS239 for 802.11ac WLAN

 How to flash via u-boot console:
   tftpboot 0x44000000 openwrt-ipq806x-qcom_ipq8064-ap161-squashfs-nand-factory.bin
   nand erase  0x1340000 0x4000000
   nand write  0x44000000 0x1340000 $filesize
   setenv bootargs ‘console=ttyMSM0,115200 ubi.mtd=ubi root=/dev/ubiblock0_1’
   saveenv
   bootm

 Further upgrades via sysupgrade.

 Tested on IPQ8064 AP161 Board:
   1) NAND boot
   2) Tested USB and PCIe interfaces
   3) WDOG test
   4) cpu frequency scaling
   5) ethernet, 2G and 5G WiFi
   6) ubi sysupgrade

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2018-11-26 12:05:46 +01:00
Ram Chandra Jangir
1ade96def7 ipq8064: pinctrl: Fixed missing RGMII pincontrol definitions
Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2018-11-26 12:05:46 +01:00
Sergey Ryazanov
8baad26d01 ar71xx: fix RouterBOARD Power LED default state
RouterBOARD(s) bootloader actully turns Power LED off just before
it starts the kernel. So we need to set the LED default status to On
instead of Keep in order to keep LED on during kernel boot.

This change fixes Power LED off during the kernel boot on the RB91x and
SXT Lite boards.

Fixes: 6cad8ee0bd ("ar71xx: keep the RouterBOARD Power LED in On state")

CC: Mathias Kresin <dev@kresin.me>
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-11-26 12:05:45 +01:00
Ben Greear
38167cb7f4 hotplug: Allow configuring radio name.
This way the radio (phy) name can be the same through module reloads.

To set the desired name:

uci set wireless.@wifi-device[0].phyname=wiphy0

I guess this only works on ipq6086 boards as I could not find a more
generic place to put this.  Maybe someone can improve it.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-11-26 12:05:45 +01:00
Petr Štetiar
41770add03 base-files: fwtool: Fix wrong checksum on combined-image with metadata
If I create following image:

define Device/engenius-m36
  IMAGE/sysupgrade.bin := combined-image | append-metadata
endef

Sysupgrade then errors out:

  Invalid image. Contents do not match checksum (image:cd285595eaf297370404ae0e2815ec1a calculated:2cf9a2286fb6b01af3ea189128017d44)
  Image check 'platform_check_image' failed.

By removing the metadata from the image I get combined-image checksum
working again and sysupgrade works.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-26 12:05:45 +01:00
Tomasz Maciej Nowak
975019b3a7 amd64-microcode: create early load microcode image
Create initrd image with packed microcode. This'll allow to load it at
early boot stage.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:45 +01:00
Tomasz Maciej Nowak
a822283c7e x86: add amd microcode entries to grub config
Create initrd enries for x86 images, that'll load amd microcode as early
as possible. Also remove the preinit script responsible for late load of
microcode.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:45 +01:00
David Bauer
946ffe470d ath79: add support for Archer C58/C59 v1
This commit adds support for the Archer C58 v1 and C59 v1, previously
supported in the ar71xx target.

CPU:   Qualcomm QCA9561
RAM:   64M (C58) / 128M (C59)
FLASH: 8M (C58) / 16M (C59)
WiFi:  QCA9561 bgn 3x3:3
       QCA9888 nac 2x2:2
LED:   Power, WiFi 2.4, WiFi 5, WAN green, WAN amber, LAN, WPS
       Only C59: USB
BTN:   WPS, WiFi, Reset

Installation
------------

Via Web-UI:
Update factory image via Web-UI.

Via TFTP:
Rename factory image to "tp_recovery.bin" and place it in the root-dir
of your tftp server. Configure to listen on 192.168.0.66. Power up the
router while holding down the reset-button. The router will flash itself
and reboot.

Note: For TFTP, you might need a switch between router and computer, as
link establishment might take to long.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-11-26 12:05:45 +01:00
Daniel Santos
89eb1a6d72 ralink: Add support for GPIO as interrupt-controller
The gpio-ralink driver has everything it needs to be used as an
interrupt controller except for device tree support.  This simple patch
adds that support by configuring the irq domain to use two cells and
adding the appropriate documentation to the devicetree bindings.

Signed-off-by: Daniel Santos <daniel.santos@pobox.com>
2018-11-26 12:05:45 +01:00
Luo chongjun
9989fd5154 ath79: add support for GL-iNet GL-X750
this patch adds supports for GL-X750.

Specification:
- SOC: QCA9531 (650MHz)
- Flash: 16 MiB (W25Q128FVSG)
- RAM: 128 MiB DDR2
- Ethernet: 10/100: 1xLAN + 10/100: 1xWAN
- Wireless: 2.4GHz (bgn) and 5GHz (ac)
- USB: 1x USB 2.0 port
- Button: 1x reset button
- LED: 5x LEDS (green)

Flash instruction:
The original firmware is openwrt, so both LuCI or sysupgrade can be used.

Signed-off-by: Luo chongjun <luochongjun@gl-inet.com>
2018-11-26 12:05:45 +01:00
Christoph Krapp
987b961537 ar71xx: add support for UniFi-AC-Mesh-Pro
This adds the build option for UniFi AC Mesh Pro as well as
model detection for it.
The device is a hardware clone of the AC Pro.

- SoC: QCA9563-AL3A (775Mhz)
- RAM: 128MiB
- Flash: 16MiB - dual firmware partitions!
- LAN: 2x 1000M - POE+
- Wireless:
        2.4G: QCA9563
          5G: UniFi Chip, QCA988X compatible

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-11-26 12:05:44 +01:00
Petr Štetiar
16b950c981 ramips: Add support for ZTE ZXECS EBG3130 aka BDCOM WAP2100-SK
On the bottom sticker it's branded as ZTE ZXECS EBG3130 device, but in factory
OpenWrt image it's referenced as BDCOM WAP2100-SK device.

Specifications:

- SoC: MediaTek MT7620A
- RAM: 128 MB
- Flash: 16 MB
- Ethernet: 5 FE ports
- Wireless radio: 2T2R 2.4 GHz and 1T1R 5 GHz (MT7610EN, unsupported)
- UART: 1 x UART on PCB marked as J2 (R=RX, T=TX, G=GND) with 115200 8N1 config
- LEDs: Power, FE ports 1-5, WPS, USB, RF 2.4G, RF 5G
- Other: USB port, SD card slot and 2x external antennas (non-detachable)

Flashing instructions:

A) The U-Boot has HTTP based firmware upgrade

  A1) Flashing notes

  We've identified so far two different batches of units, unfortunately
  each batch has different U-Boot bootloader flashed with different
  default environment variables, thus each batch has different IP address
  for accessing web based firmware updater.

  * First batch has web based bootloader IP address 1.1.1.1
  * Second batch has web based bootloader IP address 192.168.1.250

  In case you can't connect to either of those IPs, you can try to get
  the default IP address via two methods:

  A1.1) Serial console, then the IP address is visible during the boot

   ...
   HTTP server is starting at IP: 1.1.1.1
   raspi_read: from:40004 len:6
   HTTP server is ready!
   ...

  A1.2) Over telnet/SSH using this command:

   root@bdcom:/# grep ipaddr= /dev/mtd0
   ipaddr=1.1.1.1

  A2) Flashing with browser

  * Change IP address of PC to 1.1.1.2 with 255.255.255.0 netmask
  * Reboot the device and try to reach web based bootloader in the
    browser with the following URL http://1.1.1.1

  * Quickly select the firmware sysupgrade file and click on the
    `Update firmware` button, this all has to be done within 10 seconds,
    bootloader doesn't wait any longer

   If done correctly, the web page should show UPDATE IN PROGRESS page
   with progress indicator. Once the flashing completes (it takes roughly
   around 1 minute), the device will reboot to the OpenWrt firmware

  A3) Flashing with curl

   sudo ip addr add 1.1.1.2/24 dev eth0
   curl \
      --verbose \
      --retry 3 \
      --retry-delay 1 \
      --retry-max-time 30 \
      --connect-timeout 30 \
      --form "firmware=@openwrt-ramips-mt7620-BDCOM-WAP2100-SK-squashfs-sysupgrade.bin" \
      http://1.1.1.1

   Now power on the router.

B) The U-boot is based on Ralink SDK so we can flash the firmware using UART.

   1. Configure PC with a static IP address and setup an TFTP server.
   2. Put the firmware into the tftp directory.
   3. Connect the UART line as described on the PCB (G=GND, R=RX, T=TX)
   4. Power up the device and press 2, follow the instruction to set device and
      tftp server IP address and input the firmware file name. U-boot will then load
      the firmware and write it into the flash.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-26 12:05:44 +01:00
Tomasz Maciej Nowak
022ffb56b2 intel-microcode: create early load microcode image
Create initrd image with packed microcode. This'll allow to load it at
early boot stage.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:44 +01:00
Tomasz Maciej Nowak
546fced2a2 x86: add intel microcode entries to grub config
Create initrd enries for x86 images, that'll load intel microcode as
early as possible. To achieve that the test module for grub is enabled
which provides shell-like conditionals. Also restrict the late load of
microcode to AMD processors.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:44 +01:00
Tomasz Maciej Nowak
ad83fde30d intel-microcode: remove dependency on iucode-tool
It is not necessary to have iucode-tool present on target system to have
functional intel-microcode package. The build time dependency is kept.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:44 +01:00
Tomasz Maciej Nowak
51e199fbe8 x86: add packages files to image bootfs
Add files to bootfs image from selected as built-in packages, which want
to install files to targets boot file system.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:44 +01:00
Tomasz Maciej Nowak
f78b261637 x86: mount writable bootfs
Mount boot file system with rw option to allow installation of packages
which install files to /boot directory.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:44 +01:00
Tomasz Maciej Nowak
31075313bf include/rootfs.mk: remove boot directory
Currently every file in boot directory is copied over target /boot on
root file system and is usually inaccessible because appropriate boot
file system is mounted on top of it. Therefore remove /boot, which in
result will also save space on target root file system.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-11-26 12:05:44 +01:00
Petr Štetiar
d42a7c4699 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 3735964 bytes
 Firmware Version: XW.ar934x.v6.0.4-42.r8474-56aa1ac-OpenWrt
 Setting U-Boot environment variables
 Un-Protected 1 sectors
 Erasing Flash.... done

Patch provided by AREDN[3] project, tested on Bullet M2 XW (ynezz) and
Nanostation M5 XW (ae6xe).

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>
2018-11-26 12:05:44 +01:00
Petr Štetiar
db4b6535f8 ath79: 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

 A) Serial console, U-Boot and TFTP

   1. Connect to serial header J1 on the PCB
   2. Power on device and enter U-Boot console
   3. Set up TFTP server serving an OpenWrt initramfs build
   4. Load initramfs build using the command tftpboot in the U-Boot cli
   5. Boot the loaded image using the command bootm
   6. Copy squashfs OpenWrt sysupgrade build to the booted device
   7. Use mtd to write sysupgrade to partition "firmware"
   8. Reboot and enjoy

 B) Experimental factory image flashing over SSH from airOS v6.1.7

   1. You need to flash your UBNT M2HP with airOS v6.1.7 firmware
      no other airOS version is currently supported
   2. git clone https://github.com/true-systems/ubnt-bullet-m2hp-openwrt-flashing
   3. cd ubnt-bullet-m2hp-openwrt-flashing
   4. make flash-factory FW_OWRT=/path/to/your/openwrt-ath79-generic-ubnt_bullet-m-xw-squashfs-factory.bin

Tested only on Bullet M2HP.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-26 12:05:38 +01:00
Roman Yeryomin
ae2b43b873 ramips: fix ethernet for f5d8235-v2 board
Belkin F5D8235 v2 has two ethernet switches on board.
One internal rt3052 and rtl8366rb on rgmii interface.
Looks like internal switch settings were lost in
translation to device tree infrastructure.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-11-26 09:58:17 +01:00
Russell Senior
e42327aa89 ramips: add support for Skylab SKW92A in EVB
Specifically, SKW92A_E16, described here:

  http://www.skylabmodule.com/wp-content/uploads/SkyLab_SKW92A_V1.04_datasheet.pdf

Specification:
- MediaTek MT7628N/N (580 Mhz)
- 64 MB of RAM
- 16 MB of FLASH
- 2T2R 2.4 GHz
- 5x 10/100 Mbps Ethernet
- 2x u.FL
- Power by micro-USB connector at USB1 on EVB
- UART via micro-USB connector at USB3 on EVB (57600 8n1)
- 5x Ethernet LEDs
- 1x WLAN LEDs
- 1x WPS LED connected by jumper wire from I2S_CK on J20 to WPS_LED pin hole next
  to daughter board on EVB
- WPS/Reset button (S2 on EVB)
- RESET button (S1 on EVB) is *not* connected to RST hole next to daughter board

Flash instruction:

>From Skylab firmware:

1. Associate with SKYLAP_AP
2. In a browser, load: http://10.10.10.254/
3. Username/password: admin/admin
4. In web admin interface: Administration / Upload Firmware, browse to
   sysupgrade image, apply, flash will fail with a message:
   Not a valid firmware. *** Warning: "/var/tmpFW" has corrupted data!
5. Telnet to 10.10.10.254, drops you into a root shell with no credentials
6. # cd /var
7. # mtd_write -r write tmpFW mtd4
   Unlocking mtd4 ...
   Writing from tmpFW to mtd4 ... [e]
8. When flash has completed, you will have booted into your firmware.

>From U-boot via TFTP and initramfs:

1. Place openwrt-ramips-mt76x8-skw92a-initramfs-kernel.bin on a TFTP server
2. Connect to serial console at USB3 on EVB
3. Connect ethernet between port 1 (not WAN) and your TFTP server (e.g.
   192.168.11.20)
4. Start terminal software (e.g. screen /dev/ttyUSB0 57600) on PC
5. Apply power to EVB
6. Interrupt u-boot with keypress of "1"
7. At u-boot prompts:
   Input device IP (10.10.10.123) ==:192.168.11.21
   Input server IP (10.10.10.3) ==:192.168.11.20
   Input Linux Kernel filename (root_uImage) ==:openwrt-ramips-mt76x8-skw92a-initramfs-kernel.bin
8. Move ethernet to port 0 (WAN) on EVB
9. At new OpenWrt console shell, fetch squashfs-sysupgrade image and flash
   with sysupgrade.

>From U-boot via TFTP direct flash:

1. Place openwrt-ramips-mt76x8-skw92a-squashfs-sysupgrade.bin on a TFTP server
2. Connect to serial console at USB3 on EVB (57600 8N1)
3. Connect ethernet between port 1 (not WAN) an your TFTP server (e.g.
   192.168.11.20)
4. Start terminal software (e.g. screen /dev/ttyUSB0 57600) on PC
5. Apply power to EVB
6. Interrupt u-boot with keypress of "2"
7. At u-boot prompts:
   Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N) Y
   Input device IP (10.10.10.123) ==:192.168.11.21
   Input server IP (10.10.10.3) ==:192.168.11.20
   Input Linux Kernel filename (root_uImage) ==:openwrt-ramips-mt76x8-skw92a-squashfs-sysupgrade.bin
8. When transfer is complete or as OpenWrt begins booting, move ethernet to
   port 0 (WAN).

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-11-26 09:47:27 +01:00
Syrone Wong
0331770299 valgrind: enable LTO and refresh patches
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-11-26 09:44:42 +01:00
Petr Štetiar
493c9a3551 build: Introduce building of artifacts
We currently could (ab)use IMAGES for this task, but the downside is,
that the filenames has filesystem tied to the filename, which might be
confusing as the artifact itself don't has to be used with that specific
filesystem. Another downside is, that the artifacts built with IMAGES
target are build for every FILESYSTEMS filesystem.

Consider following use case:

 define Device/apalis
   ...
   FILESYSTEMS := ext4 squashfs
   IMAGES := spl-uboot.bin recovery.scr
   IMAGE/spl-uboot.bin := append-uboot-spl | pad-to 68k | append-uboot
   IMAGE/recovery.scr := recovery-scr
 endef

Where we would get target binaries with following filenames:

 openwrt-imx6-apalis-squashfs.recovery.scr
 openwrt-imx6-apalis-squashfs.spl-uboot.bin
 openwrt-imx6-apalis-ext4.recovery.scr
 openwrt-imx6-apalis-ext4.spl-uboot.bin

With proposed patch, we could now just do:

 define Device/apalis
   ...
   ARTIFACTS := spl-uboot.bin recovery.scr
   ARTIFACT/spl-uboot.bin := append-uboot-spl | pad-to 68k | append-uboot
   ARTIFACT/recovery.scr := recovery-scr
 endef

Which would produce target binaries with following filenames:

 openwrt-imx6-apalis-recovery.scr
 openwrt-imx6-apalis-spl-uboot.bin

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-11-26 09:39:20 +01:00
Roman Yeryomin
b0d6653ab8 rb532: drop 4.9 support
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-11-26 09:34:09 +01:00
Roman Yeryomin
9f13cde1fa rb532: switch to 4.14
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-11-26 09:33:01 +01:00
Roman Yeryomin
920845357f rb532: add 4.14 support
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-11-26 09:31:50 +01:00
Hans Dedecker
a0d5acfbe2 nghttp2: bump to 1.35.0
e520469b Update manual pages
54067256 Bump up version number to 1.35.0
c4d2eeee Update AUTHORS
f51e696e asio: Add stop() to listen_and_serve doc
a433b132 Merge pull request #1260 from nghttp2/h2load-non-final-response
cf48a56d Merge pull request #1238 from jktjkt/cmake-fix-libevent-detection
6cad1b24 nghttpx: Write mruby send_info early
3c393dca nghttpx: Fix assertion failure on mruby send_info with HTTP/1 frontend
17292445 h2load: Handle HTTP/1 non-final response
f6644a92 make clang-format
48998f72 Merge pull request #1222 from donny-dont/fix/declspec
15ff52f9 Update README
6c03bb14 Upgrade travis toolchain
524b4392 Fix travis build failure
859bf2bc Update manual pages
b5619fb1 h2load: Clarify that time for connect includes TLS handshake
dcbe0c69 nghttpx: Simplify move ctor and operator
2996c284 nghttpx: Cleanup
42e8ceb6 nghttpx: Convert API status code to enum class
1daf9ce8 nghttpx: Convert WorkerEventType to enum class
d68edf56 nghttpx: Convert MemcachedStatusCode to enum class
0c4e9fef nghttpx: Convert memcached op to enum class
571404c6 nghttpx: Convert MemcachedParseState to enum class
4d562b77 nghttpx: Convert LogFragmentType to enum class
e6225871 nghttpx: Convert connection check status to enum class
4bd075de nghttpx: Convert Http2Session state to enum class
b46a3249 nghttpx: Convert FreelistZone to enum class
4bd44b9c nghttpx: Convert dispatch state to enum class
1b42110d nghttpx: Make Downstream state enum class
0735ec55 nghttpx: Convert shrpx_connect_proto to enum class
00554779 nghttpx: Convert DNSResolverStatus to enum class
0963f389 nghttpx: Convert SerialEventType to enum class
1abfa3ca nghttpx: Make TLS handshake state enum class
f2159bc2 nghttpx: Convert UpstreamAltMode to enum class
b0eb68ee nghttpx: Convert shrpx_forwarded_node_type to enum class
e7b7b037 nghttpx: Convert shrpx_cookie_secure to enum class
5e4f434f nghttpx: Convert shrpx_session_affinity to enum class
20ea964f nghttpx: Convert shrpx_proto to enum class
d105619b src: Remove extra braces if possible
ec5729b1 Use std::make_unique
6c919695 Use C++14
46576178 Don't send Transfer-Encoding to pre-HTTP/1.1 clients
5e925f87 Update doc
153531d4 nghttpx: Use the same type as standard stream operator<<
f7287df0 Bump up version number to 1.35.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-25 20:22:15 +01:00
Roman Bazalevsky
1f4f9b2116 kernel/modules: TI ADS1015 kernel module support enabled.
Signed-off-by: Roman Bazalevsky <rvb@rvb.name>
2018-11-25 19:26:56 +01:00
Roman Bazalevsky
e26a55e749 kernel/modules: ROHM BH1750 ALS IIO kernel module support enabled.
Signed-off-by: Roman Bazalevsky <rvb@rvb.name>
2018-11-25 19:26:56 +01:00
Kabuli Chana
392eea392c mwlwifi: update to version 10.3.8.0-20181114
compile / test target mvebu / mamba

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2018-11-25 19:26:55 +01:00
Martin Schiller
18398abe1e lantiq/basefiles: use shutdown instead of stop when the system goes down
I can't see any reason why we shouldn't use shutdown for lantiq as well.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-11-25 19:26:55 +01:00
Petr Štetiar
7c104a8358 base-files: sysupgrade: Allow downloading of firmware images using HTTPS
Currently it's only possible to download images over HTTP.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-25 19:26:50 +01:00
Rosen Penev
7ef38e42c8 flex: Add a lex symlink
Some packages like libpfring assume the presense of lex, which on some
other systems is a symlink to flex but not all. Symlink flex to fix
compilation.

Arch Linux and Fedora do this as far as I know.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-11-25 19:23:03 +01:00
Petr Štetiar
82b34c1f60 imx6: image: ventana: Add missing BOOT_SCRIPT variable
This is probably theoretical problem as the Ventana is defined first in
the image Makefile, but once the position of the definition would change
in the future (alphabetical sorting?) it would get bootscript from the
previous board which would have BOOT_SCRIPT set.

Cc: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-25 19:23:03 +01:00
Syrone Wong
09eac6d13f strace: update to 4.25
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-11-25 19:23:03 +01:00
Daniel Golle
7c4251d881 ramips: select kmod-mt76x0e for TP-Link ArcherC20i and wr902ac-v3
Both devices come with a MediaTek MT7610E 5GHz 802.11ac 1T1R radio
which wasn't supported at the time the devices were added to OpenWrt.
Now that we got it, include kmod-mt76x0e in images for those devices.

Reported-by: Arian Sanusi <openwrt@semioptimal.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-25 15:24:49 +01:00
Daniel Golle
51c094e703 kernel: enable CONFIG_BRIDGE_VLAN_FILTERING
This allows us to use the bridge as a managed switch and gracefully
handle mixed tagged and untagged frames. Prior to this, the only
alternative was creating one bridge per vlan which quickly becomes a
nightmare and still won't let you mix both tagged and untagged frames on
the physical port without some complex ebtables magic.

This is in line with the notion that OpenWRT is the network go-to swiss
army knife when you need a nice set-and-forget, low maintenance box to
handle a specific task.

Current builds of the ip-bridge package already fully support this
feature so the only requirement is enabling the kernel config.

This is disabled by default so existing bridge configurations will not
be affected.  This patch only gives the ability to turn it on with an
'ip link' command.  If there is interest, I could look into making the
feature accessible via uci configuration.

It causes about 3.1% hit on raw bridging speed, which is relatively
trivial considering that I had to use 300 byte packets to strain the CPU
enough to notice a slowdown at all.  The ER8 would chug along at wire
speed otherwise, and that's using only one core.  Since the typical
bridge use case on OpenWRT is wireless, I doubt it would be noticeable
at all.

With BRIDGE_VLAN_FILTERING

iperf -u -c 192.168.1.105 -b 1G -l 300
------------------------------------------------------------
Client connecting to 192.168.1.105, UDP port 5001
Sending 300 byte datagrams, IPG target: 2.24 us (kalman adjust)
UDP buffer size:  208 KByte (default)
------------------------------------------------------------
[  3] local 192.168.1.12 port 58045 connected with 192.168.1.105 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   977 MBytes   820 Mbits/sec
[  3] Sent 3414986 datagrams
[  3] Server Report:
[  3]  0.0-10.0 sec   811 MBytes   680 Mbits/sec   0.000 ms
581210/3414986 (0%)

Without BRIDGE_VLAN_FILTERING

iperf -u -c 192.168.1.105 -b 1G -l 300
------------------------------------------------------------
Client connecting to 192.168.1.105, UDP port 5001
Sending 300 byte datagrams, IPG target: 2.24 us (kalman adjust)
UDP buffer size:  208 KByte (default)
------------------------------------------------------------
[  3] local 192.168.1.12 port 36645 connected with 192.168.1.105 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec   977 MBytes   820 Mbits/sec
[  3] Sent 3414990 datagrams
[  3] Server Report:
[  3]  0.0-10.0 sec   836 MBytes   701 Mbits/sec   0.000 ms
493950/3414990 (0%)

In terms of kernel size, it uses 16KB (6753K vs 6737K on ER8) so a
0.002% hit.  The exact 16KB is probably just due to how the kernel is
compressed.

Suggested-by: Jonathan Thibault <jonathan@navigue.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-25 15:24:49 +01:00
Jo-Philipp Wich
0bd99db511 uclient: update to latest Git head
3ba74eb uclient-http: properly handle HTTP redirects via proxy connections

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-24 20:15:04 +01:00
Rafał Miłecki
18c5e7ba91 ath79: specify "firmware" partition format for Ubiquiti UniFi
This affects:
1. Ubiquiti UniFi-AC-LITE/LR
2. Ubiquiti UniFi-AC-PRO
3. Ubiquiti UniFi-AC-MESH
4. Ubiquiti UniFi-AC-MESH PRO

Succesfully tested on UniFi AP AC Pro.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 19:04:29 +01:00
Hannu Nyman
3e19113d5d ath79: specify "firmware" partition format for WNDR3700 and v2
Specify the new "firmware" partition format for Netgear WNDR3700
and WNDR3700v2 similarly as ffd082aa did for WNDR3800, the third
device in the family.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-11-24 13:15:55 +01:00
Rafał Miłecki
c8a005fefd ath79: specify "firmware" partition format for TP-LINK Archer C7 v2
With this change it doesn't require trying parsers one by one.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 12:46:00 +01:00
Rafał Miłecki
c87d47aee8 kernel: drop unused arch_split_mtd_part()
No single target/arch uses it and most likely there is no need to make
such a potential code target/arch specific.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 12:24:02 +01:00
Rafał Miłecki
f995e143ba kernel: add missing version.h include to the TP-LINK parser
Fixes: a29c8d685b ("kernel: add DT binding support to the TP-LINK parser")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 11:48:47 +01:00
Rafał Miłecki
a29c8d685b kernel: add DT binding support to the TP-LINK parser
It allows triggering it directly by specifying format in the DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 09:56:53 +01:00
Rafał Miłecki
ffd082aa38 ath79: specify "firmware" partition format for Netgear WNDR3800
It doesn't require trying parsers one by one.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 08:46:59 +01:00
Rafał Miłecki
a22311e6a6 kernel: add DT binding support to the uimage parsers
It allows specifying default and Netgear parsers directly in the DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 08:31:56 +01:00
Rafał Miłecki
934edb764d kernel: don't auto-split "firmware" if it has "compatible" DT property
If "compatible" is being used that should trigger a proper parser
directly. It's more reliable thanks to not trying parsers one by one. In
such case partition shouldn't be split automatically to avoid parsing it
twice.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-24 08:31:55 +01:00
David Bauer
6680fab947 kernel: b53: register switch on probe
Currently, the b53 MDIO switch driver registers the switch on
config-init and not on device probe. Because of this, the switch
gets added every time the associated interface comes up.

This commit fixes this behavior by registering the switch on device
probe.

Compile- and run-tested on OCEDO Koala.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-11-23 21:45:51 +00:00
David Bauer
53020ed4b9 tools: tplink-safeloader: add C7v5 EU SupportList
Currently flash from WebIF is broken for Archer C7 v5 EU models as their
SupportList entries are missing.

The added entries originate from TP-Links latest Archer C7 v5 EU
firmware.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-11-23 21:22:51 +00:00
Hans Dedecker
c19f1a8665 procd: update to latest git HEAD
d667354 early: set /tmp permissions explicitly

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-23 15:27:35 +01:00
Jo-Philipp Wich
952b11766c rpcd: update to latest Git head
c79ef22 main: fix logic bug when not specifying a timeout option

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-22 16:30:38 +01:00
Jo-Philipp Wich
4105555115 rpcd: update to latest Git head
2cc4b99 file: use global exec timeout instead of own hardcoded limit
ecd1660 exec: increase maximum execution time to 120s

Also expose the socket and timeout options in /etc/config/rpcd for
easier use.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-22 14:43:36 +01:00
Linus Kardell
2ac1a57677 base-files: fix unkillable processes after restart
When restart is run on an init script, the script traps SIGTERM. This is
done as a workaround for scripts named the same name as the program they
start. In that case, the init script process will have the same name as
the program process, and so when the init script runs killall, it will
kill itself. So SIGTERM is trapped to make the init script unkillable.

However, the trap is retained when the init script runs start, and thus
processes started by restart will not respond to SIGTERM, and will thus
be unkillable unless you use SIGKILL. This fixes that by removing the
trap before running start.

Signed-off-by: Linus Kardell <linus@telliq.com>
2018-11-22 13:15:10 +01:00
Koen Vandeputte
3a1978bbb4 kernel: bump 3.18 to 3.18.126
Refreshed all patches.

Compile-tested: adm5120
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-22 12:40:19 +01:00
Koen Vandeputte
02e16e9e82 kernel: bump 4.14 to 4.14.82
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-11-22 10:49:01 +01:00
Koen Vandeputte
e1debc557c kernel: bump 4.9 to 4.9.138
Refreshed all patches.

Compile-tested: ar71xx, layerscape
Runtime-tested: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-22 10:49:01 +01:00
Rafał Miłecki
d3381b5a64 bcm53xx: request Seama parser on DIR-885L directly
It's more reliable as mtd subsystem doesn't have to blindly try that
parser. It allows disabling MTD_SPLIT_FIRMWARE completely (TRX is
handled in a similar way).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-22 10:13:56 +01:00
Rafał Miłecki
dab5a93086 kernel: add DT binding support to the Seama parser
It allows specifying that parser directly in the DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-22 10:13:56 +01:00
Hans Dedecker
1dcaef8410 glibc: update to latest 2.27 commit
1517dfb8aa Add an additional test to resolv/tst-resolv-network.c
1050634904 libanl: properly cleanup if first helper thread creation failed (bug 22927)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-22 10:11:22 +01:00
Felix Fietkau
0191a06985 mt76: update to the latest version
4734108 mt7603: use mt7603_wtbl_clear on station removal
9428e34 mt7603: fix watchdog reset sequence
b3f82a3 mt7603: report PSE reset failures via debugfs
a301dec mt7603: add back PSE client reset code
94cebfc mt7603: fix handling lost interrupt events during watchdog reset
b38fe7d mt7603: only issue PSE reset on PSE stuck
da666a7 mt7603: issue PSE reset if firmware debug register indicates stuck queues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-21 15:15:05 +01:00
Felix Fietkau
8184bdddc4 mt76: update to the latest version
471d397 mt7603: fix priority for buffered multicast packets
3873e82 mt7603: fix MT_BMAP_0/MT_GROUP_THD_0 register initializion for mt7628
749d5c3 mt7603: fix reserved page handling for mt7628
d22799b mt7603: reduce reserved pages for beacons
42c5281 mt7603: fix maximum frame size in scheduler init
fa7335b mt76: fix potential NULL pointer dereference in mt76_stop_tx_queues
84aa12a mt76: fix potential null pointer deref in mt76_sta_add
7c4c33c mt7603: skip efuse tx power data for mt7628
ca2c875 mt7603: add support for accessing remapped registers via ops
b44d793 mt7603: clear PSE redirections before MCU init
82363ab mt7603: move tx status to rx queue 0
c09e8a4 mt7603: fix buffering of tx packets for powersave clients

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-20 16:56:11 +01:00
Rafał Miłecki
4585cd3bdf kernel: move diff adding run_parsers_by_type() between mtd patches
It makes more sense to add run_parsers_by_type() in a patch that
introduces parser types. That makes the other one just add a code using
it.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-20 14:44:01 +01:00
Rafał Miłecki
4d0431801d kernel: don't export parse_mtd_partitions_by_type() in 4.9 and 4.14
That function isn't used anywhere out of the mtdpart.c & can be static.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-20 14:44:01 +01:00
Jason A. Donenfeld
48d8d46d33 wireguard: bump to 0.0.20181119
* chacha20,poly1305: fix up for win64
* poly1305: only export neon symbols when in use
* poly1305: cleanup leftover debugging changes
* crypto: resolve target prefix on buggy kernels
* chacha20,poly1305: don't do compiler testing in generator and remove xor helper
* crypto: better path resolution and more specific generated .S
* poly1305: make frame pointers for auxiliary calls
* chacha20,poly1305: do not use xlate

This should fix up the various build errors, warnings, and insertion errors
introduced by the previous snapshot, where we added some significant
refactoring. In short, we're trying to port to using Andy Polyakov's original
perlasm files, and this means quite a lot of work to re-do that had stableized
in our old .S.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-19 22:15:02 +01:00
Rafał Miłecki
9b8a955358 kernel: drop mtd_pad_erasesize() helper from 4.9 and 4.14
It has been last used in kernel 3.18 for uimage and squashfs splitters
embedded in the mtdpart.c.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-19 13:33:05 +01:00
Hans Dedecker
8e409f476b netifd: update to latest git HEAD
4b83102 treewide: switch to C-code style comments
70506bf treewide: make some functions static
d9872db interface: fix removal of dynamic interfaces
2f7ef7d interface: rework code to get rid of interface_set_dynamic

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-19 10:15:26 +01:00
Rinki Kumari
dd02a19ff5 ar71xx: fix TP-Link Archer C7 v5 switch LEDs
Signed-off-by: Rinki Kumari <rinki13@gmail.com>
2018-11-17 16:27:38 +01:00
Felix Fietkau
251c350727 mt76: update to the latest version
96b3b3d mt76x2u: main: fix typo setting sta_state mac80211 callback

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-16 13:43:33 +01:00
Felix Fietkau
86fc443f8b mt76: update to the latest version
009ab91 mt76: clean up more unused EXPORT_SYMBOLs
963768d mt76x02: fix regression in tx station race condition fix
d7788cc mt76: mt76x02: make group_wcid the first member in struct mt76x02_vif
e65ad4c mt7603: make group_wcid the first member in struct mt7603_vif
7b1373e mt76: mt76x02: remove mt76x02_txq_init
a97127b mt76: replace sta_add/remove ops with common sta_state function
13f1e82 mt7603: clear wtbl entry for removed stations
90e2c1b mt7603: add mt7603_wtbl_set_skip_tx, change mt7603_wtbl_set_ps users
41931e4 mt7603: toggle skip_tx on station add/remove
d0fdf01 mt7603: avoid unnecessary wtbl writes for ps-filter

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-16 12:44:01 +01:00
Jason A. Donenfeld
bf52c968e8 wireguard: bump to 0.0.20181115
* Zinc no longer ships generated assembly code. Rather, we now
  bundle in the original perlasm generator for it. The primary purpose
  of this snapshot is to get testing of this.
* Clarify the peer removal logic and make lifetimes more precise.
* Use READ_ONCE for is_valid and is_dead.
* No need to use atomic when the recounter is mutex protected.
* Fix up macros and annotations in allowedips.
* Increment drop counter when staged packets are dropped.
* Use static constants instead of enums for 64-bit values in selftest.
* Mark large constants as ULL in poly1305-donna64.
* Fix sparse warnings in allowedips debugging code.
* Do not use wg_peer_get_maybe_zero in timer callbacks, since we now can
  carefully control the lifetime of these functions and ensure they never
  execute after dropping the last reference.
* Cleanup hashing in ratelimiter.
* Do not guard timer removals, since del_timer is always okay.
* We now check for PM_AUTOSLEEP, which makes the clear*on-suspend decision a
  bit more general.
* Set csum_level to ~0, since the poly1305 authenticator certainly means
  that no data was modified in transit.
* Use CHECKSUM_PARTIAL check for skb_checksum_help instead of
  skb_checksum_setup check.
* wg.8: specify that wg(8) shows runtime info too
* wg.8: AllowedIPs isn't actually required
* keygen-html: add missing glue macro
* wg-quick: android: do not choke on empty allowed-ips

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-11-16 09:23:02 +01:00
Daniel Engberg
59ff8687c7 util-linux: Update to 2.33
Update util-linux to 2.33
Refresh patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-11-15 21:19:37 +01:00
Pau Escrich
15f16bf05b ar71xx: add support for Gainstrong MiniBox V3.2
Adds MiniBox V3.2 ar71xx target (QCA99531 + QCA9887)
Info: http://oolite.cn/minibox-v3-2-qca9531-qca9887-module-pin-specification.html
Reference patch: http://oolite.cn/wp-content/uploads/2017/09/minibox_v3_cc15.05_20160325.patch
Installation: Upload firmware to uboot via HTTP at 192.168.1.1 (press button for 5 seconds)

Signed-off-by: Pau Escrich <p4u@dabax.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(daniel@makrotopia.org: rebased and fixed conflicts, fixed LED name,
                        added ath10k eeprom)
2018-11-15 19:49:51 +01:00
Rafał Miłecki
c6a1bcac16 kernel: fix ubifs loosing O_TMPFILE data after power cut
There was a bug in ubifs related to the O_TMPFILE. When reapplying
changes after power cut data could be lost. This problem was exposed by
overlayfs and the upstream commit 3a1e819b4e80 ("ovl: store file handle
of lower inode on copy up").

This fixes a regression introduced when switching from 4.9 to 4.14.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-15 12:32:20 +01:00
Hans Dedecker
80526d2fed bison: update to 3.2.1
Chnages since 3.2:

b590ad02 version 3.2.1
05e70adf build: fix issues in the generated tarball
7efe0b5d build: fix typo
351e3630 NEWS: update
4fd1fc70 examples: ship them
e02ce4c7 build: minor fixes in doc/
7cab285e CI: maximize chances of errors sooner
86efe282 c++: improve the generated documentation
cf1446dc tests: don't fail if the C++ compiler does not work
e93c40b3 tests: don't disable C++ warnings in C files
eff67391 c++: workaround portability issue
5a0d7802 tests: work around getopt portability issues
f1e0839c doc: -Wzero-as-null-pointer-constant was added to GCC 4.7
3bf429ae examples: #include <cstring> in calc++
f8cadc73 c: provide a definition of _Noreturn that works for C++
bd7aebb8 c: update the definition of _Noreturn
ca8039e6 tests: don't expect the shell to support 'local'
5d07f4f7 bitset: fix warning
e605ad96 build: fix use of gnulib Make variables
50fac71d maint: post-release administrivia

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-15 11:45:25 +01:00
Kevin Darbyshire-Bryant
3a6bddd7f7 hostapd: add utf8_ssid flag & enable as default
SSIDs may contain UTF8 characters but ideally hostapd should be told
this is the case so it can advertise the fact. Default enable this
option.

add uci option utf8_ssid '0'/'1' for disable/enable e.g.

config wifi-iface
	option utf8_ssid '0'

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-11-14 17:41:18 +00:00
Koen Vandeputte
e14dc93073 kernel: bump 4.14 to 4.14.81
Refreshed all patches.

Removed upstreamed patches:
- 081-spi-bcm-qspi-switch-back-to-reading-flash-using-smal.patch

Altered patches:
- 0054-cpufreq-dt-Handle-OPP-voltage-adjust-events

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-14 16:27:43 +01:00
Koen Vandeputte
7e20e4ab96 kernel: bump 4.9 to 4.9.137
Refreshed all patches.

Removed upstreamed hunks in:
- 703-phy-support-layerscape.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-14 16:27:43 +01:00
Koen Vandeputte
f7a406deaf kernel: bump 3.18 to 3.18.125
Refreshed all patches.

Compile-tested on: adm5120
Compile-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-14 16:27:43 +01:00
Ted Hess
042d68a195 tools/pkg-config: Handle variable substitution of 'bindir' to redirect to STAGING_DIR/bin
Signed-off-by: Ted Hess <thess@kitschensync.net>
2018-11-13 15:40:30 -05:00
Felix Fietkau
d965f41ac8 mt76: update to the latest version
6745830 mt76: fix race condition in station removal
7e5c819 mt76: add mt76_sta_remove helper
75aa36e mt7603: use wcid/wcid_mask from struct mt76_dev
fd85ff9 mt7603: use mt76_sta_remove helper
0848d2d mt7603: simplify mt7603_mcu_msg_send, remove skb_ret handling
83a80ca mt76: request tx status for powersave released EOSP packet
df5c797 mt76: fix uninitialized mutex access setting rts threshold
0bfa98e mt76: introduce mt76x02_config_mac_addr_list routine
4248446 mt76x0: pci: enable VHT rates in IBSS mode
f75efd8 mt76x2u: phy: add TX_SHAPING calibration
c1d67b4 mt76x2u: phy: run phy_channel_calibrate after channel switch
9fe0fe8 mt76x2u: main: use mt76x02_bss_info_changed utility routine
3fc95d7 mt76x2u: init: remove mt76x2u_init_beacon_offsets routine
88f6883 mt76: remove wait argument from mt76x02_mcu_calibrate

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-13 21:22:28 +01:00
Felix Fietkau
3879fc2b1a mac80211: fix spurious disconnections with powersave clients
Affects all drivers using ieee80211_tx_status_noskb, e.g. ath9k and mt76

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-13 20:35:29 +01:00
Stijn Tintel
e95e9fcbb2 kernel: bump 4.14 to 4.14.80
Refresh patches.

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

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-11-13 00:44:01 +02:00
Stijn Tintel
43e1b38e4a kernel: drop old bluetooth config symbols
They do not exist in any of the supported kernel versions.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-11-12 19:11:54 +02:00
Daniel Engberg
a95bef0579 bzip2: Replace main site with mirrors (FS#1913)
Use Gentoo and FreeBSDs distfile caches as mirrors because
main site/domain is abandoned.
Source: https://lwn.net/Articles/762264/

Fixes FS#1913

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-12 17:09:09 +01:00
Daniel Engberg
04f4dd6fa2 tools/cmake: Update to 3.12.4
Update cmake to 3.12.4

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-11-12 12:04:38 +01:00
Alexander Couzens
81d7f82441 ugps: update to latest git HEAD
07528d43f9bc nmea.c: set _BSD_SOURCE to have timegm() & stime() on musl
b88037b6bf6a check timegm return code
ccabdf6c235f nmea.c: Add null byte to nmea fields
cdc1478a8133 remove deprication warning

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-11-11 02:37:05 +01:00
Petr Štetiar
1b4b942bce Revert "iptables: fix dependency for libip6tc on IPV6"
This patch reverts commit 2dc1f54b12 as it
breaks the build for me on x86-64 if I've IPV6 support disabled. Same config
builds fine on `openwrt-18.06` branch at 55d078b2.

  $ grep IPV6 .config

  # CONFIG_KERNEL_IPV6 is not set
  # CONFIG_IPV6 is not set

Build errors out on:

  Package libiptc is missing dependencies for the following libraries:
  libip6tc.so.0

Looking at iptables-1.6.2/libiptc/Makefile.am:

  libiptc_la_LIBADD   = libip4tc.la libip6tc.la

and to iptables-1.6.2/libiptc/libiptc.pc.in:

  Requires:	libip4tc libip6tc

It seems that libiptc needs v4/v6 libs, so v6 isn't optional.

Cc: Rosy Song <rosysong@rosinson.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2018-11-10 18:50:29 +01:00
Hans Dedecker
5617e138bd ethtool: update to 4.19
8a1ad80 Release version 4.19.
ecdf295 ethtool: Fix uninitialized variable use at qsfp dump
98c148e ethtool: better syntax for combinations of FEC modes
d4b9f3f ethtool: support combinations of FEC modes

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-10 13:44:09 +01:00
Rafał Miłecki
0cf32de17c bcm53xx: add DT patch describing pins mux controller
It's needed to support new devices that use specific pin functions.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-09 22:29:16 +01:00
Felix Fietkau
7dd42aa592 mt76: update to the latest version
ffccb48 mt76: do not wake tx queues during flush

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-09 15:26:44 +01:00
Rafał Miłecki
c7c4ae35d6 kernel: deprecate support for the generic "linux,part-probe" DT binding
It has been rejected upstream and instead a nice/more generic solution
has been implemented. It's possible now to describe partitions format
using "compatible" DT string.

No OpenWrt target uses "linux,part-probe" anymore, leave it only in case
some forks need it. It will be dropped with support for new kernels.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-09 14:57:45 +01:00
Kevin Darbyshire-Bryant
1a73b2d089 tools: firmware-utils: mksercommfw build on Darwin
asm/byteorder.h & hence __cpu_to_be32() doesn't exist on Darwin

Shamelessly copy some byte swap functions from oseama.c

Acked-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-11-09 13:27:03 +00:00
Rafał Miłecki
9a3c805584 ramips: use separated mtd patch reverting write_page() removal
This helps understanding mtd changes needed to get downstream NAND
driver working.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-09 13:31:47 +01:00
Daniel Engberg
dbba87aa6a popt: Add main site back to PKG_SOURCE_URL
Main site is back up after weeks of downtime.
Add it back as last resort

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-11-09 08:50:18 +01:00
Rafał Miłecki
f975ab8f4e bcm53xx: update pinctrl driver
It's upstream now with a one trivial fix.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-09 07:41:36 +01:00
Hans Dedecker
c97c672f9b procd: update to latest git HEAD
20192e4 watchdog: improve seting watchdog timeout and frequency

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-08 14:51:33 +01:00
Daniel Golle
217fe505b6 oxnas: remove superseded sysupgrade image check
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-08 14:41:42 +01:00
Daniel Golle
b831eb5363 oxnas: kd20: correct memory size to 256MB
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-08 14:41:42 +01:00
Koen Vandeputte
b4e17a7440 ramips: fix netgear r6120 factory image generation
as indicated in commit c5bf408ed6 "(ramips: fix image generation for mt76x8")
more rework was needed to fix the other issues.

Building on another machine, but using the same arch, showed
the application failing again for different reasons.

Fix this by completely rewriting the application, fixing following found issues:

- buffer overflows, resulting in stack corruption
- flaws in memory requirement calculations (too small, too large)
- memory leaks
- missing bounds checking on string handling
- non-reproducable images, by using unitilized memory in checksum calculation
- missing error handling, resulting in succes on specific image errors
- endianness errors when building on BE machines
- various minor build warnings
- documentation did not match the code actions (header item locations)
- allowing input to be decimal, hex or octal now

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-08 13:32:22 +01:00
Jo-Philipp Wich
d157a76c67 script: ipkg-build: honour $SOURCE_DATE_EPOCH
When the SOURCE_DATE_EPOCH environment variable is set, use it to
override the timestamps of .ipk archive contents.

This ensures that .ipk archives built in environments without SCM
metadata (mainly the SDK) are reproducible between different runs.

Ref: https://github.com/openwrt/packages/issues/6954
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-11-08 11:52:33 +01:00
Hans Dedecker
559635dbb6 iproute2: update to 4.19.0
Update to the latest version of iproute2; see https://lwn.net/Articles/769354/
for a full overview of the changes in 4.19.
Remove 190-add-cake-to-tc patch as CAKE qdisc is now supported in 4.19.0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-08 11:09:13 +01:00
Felix Fietkau
68b43270f9 mt76: update to the latest version, fix a typo
29d9532 mt7603: fix faulty variable initialization in last commit

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-08 09:17:35 +01:00
Felix Fietkau
df1191bcea mt76: update to the latest version
417cf49 mt7603: improve recovery from MCU hang

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-07 20:36:50 +01:00
Rafał Miłecki
4d5b0efc09 mac80211: brcmfmac: backport the last accepted 4.21 changes
It's a typo fix & patch that helps debugging possible WARN-ings.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-07 11:17:00 +01:00
Rafał Miłecki
3eab6b8275 mac80211: brcmfmac: backport NVRAM loading improvements
This adds support for storing board specific NVRAM files as firmware.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-07 11:11:08 +01:00
Rafał Miłecki
5932eb690f mac80211: brcmfmac: backport firmware loading cleanup
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-07 09:43:32 +01:00
Rafał Miłecki
b50f162b3c mac80211: brcmfmac: backport the latest 4.20 changes
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-07 09:14:55 +01:00
Rafał Miłecki
f7a3459ab9 mac80211: brcmfmac: rename 4.20 backport patches
Include kernel version to help tracking changes.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-11-07 08:54:16 +01:00
Felix Fietkau
4fd9a5667e mt76: update to the latest version
172f081 mt76x0: do not overwrite other MT_BBP(AGC, 8) fields
2ae2046 mt76x0: phy: use mt76_poll_msec in mt76x0_phy_temp_sensor
add66a0 mt76x0: init: use mt76x02_mac_shared_key_setup in mt76x0_init_hardware
1f24db9 mt76x2: move wcid_tx_rate conf at bootstrap
097b2bd mt76x0: init: use mt76x02_mac_wcid_setup for wcid configuration
d0eb03e mt76x2u: init: remove not useful configuration
c7aa8f4 mt76x2u: init: use common routines for wcid/key initialization
bd568d9 mt76: move mt76x02_eeprom_copy in mt76x02-lib module
57b441d mt76x0: phy: introduce tssi calibration support
a78802c mt76x0: phy: use tssi reported value to configure tx power if available
94ad030 mt76: remove mcu_msg_alloc
15cb426 mt76: remove wait argument from mt76x02_mcu_function_select
cd76a83 mt76: remove wait argument from mt76x02_mcu_set_radio_state
9b97e0f mt76x02: run calibration after scanning
663b197 mt76x02: assure we update gain after scan
eb53745 mt76x0: dfs: fix IBI_R11 configuration on non-radar channels
ef06c30 mt76: avoid queue/status spinlocks while passing tx status to mac80211
5195257 mt7603: fix maximum rx frame size
01815e9 mt7603: use mutex from struct mt76_dev
3c8e8a7 mt7603: use irq_lock/irqmask from struct mt76_dev
8b7f50d mt76: add size check for additional rx fragments
87bad3a mt7603: stop MAC on watchdog reset
c34baab mt7603: add missing unlock in case changing the channel fails
ac6fc78 mt7603: add debugfs file to trigger watchdog resets
d9b5324 mt7603: add SPDX license identifiers
498d716 mt7603: fix checkpatch issues
a1afefd mt7603: fix handling of fixed rate packets
5ee0523 mt7603: fix tx status rate reporting for fixed-rate packets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-06 22:25:49 +01:00
Felix Fietkau
b318edb999 ramips: add missing DTS frequency limit for the 5 GHz radio on Archer C20i
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-11-06 22:25:49 +01:00
Koen Vandeputte
7e173b4331 valgrind: bump to 4.14.0
Release notes can be found here:

http://www.valgrind.org/docs/manual/dist.news.html

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-06 16:34:47 +01:00
Koen Vandeputte
c5bf408ed6 ramips: fix image generation for mt76x8
Buildbot fails to generate images for targets also generating a
Sercomm binary with following error:

Opening file: /mnt/ramdisk/koen/firmware/builds/owrt_mt76x8/build_dir/target-mipsel_24kc_musl/linux-ramips_mt76x8/tmp/openwrt-ramips-mt76x8-netgear_r6120-squashfs-factory.img.rootfs.zip
Filesize: 3648606 .
mksercommfw: malloc.c:2427: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Makefile:287: recipe for target '/mnt/ramdisk/koen/firmware/builds/owrt_mt76x8/build_dir/target-mipsel_24kc_musl/linux-ramips_mt76x8/tmp/openwrt-ramips-mt76x8-netgear_r6120-squashfs-factory.img' failed

Debugging using valgrind shows stack corruption due to a buffer overflow.
The author of the generator assumes the filename ends with "root",
while it should be "rootfs".

Fix this by accounting for the 2 missing characters which solves the build issues.

More work is required to cleanup this source, which will be done later on.

Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-06 15:29:51 +01:00
Koen Vandeputte
74738c4b80 imx6: fix DMA transaction errors
Following errors were seen in the past on imx6 when using serial:

[ 22.617622] imx-uart 2020000.serial: DMA transaction error.
[ 22.623228] imx-uart 2020000.serial: DMA transaction error.
[ 22.628826] imx-uart 2020000.serial: DMA transaction error.
[ 22.648951] imx-uart 2020000.serial: DMA transaction error.
[ 22.654558] imx-uart 2020000.serial: DMA transaction error.
[ 22.660156] imx-uart 2020000.serial: DMA transaction error.

Which is the reason why DMA for the serial ports
got disabled in commits:

efb362cd93 ("imx6: disable dma on uart")
3b4241071d ("imx6: disable UART dma")

As indicated on mailinglist discussion, the cause seems to be
the usage of very old SDMA firmware which is present in the soc:

[    0.624302] imx-sdma 20ec000.sdma: Direct firmware load for imx/sdma/sdma-imx6q.bin failed with error -2
[    0.624318] imx-sdma 20ec000.sdma: Falling back to user helper
[   64.531607] imx-sdma 20ec000.sdma: external firmware not found, using ROM firmware

This patch adds the new firmware binary. (2196 bytes)

It is required to embed the binary into the kernel image, as it
gets loaded very early in the boot process where the rootfs is not
available yet:

[    0.622966] imx-sdma 20ec000.sdma: loaded firmware 3.3

Extended testing shows that the DMA errors are not seen anymore
when using this newer firmware version.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-06 11:49:27 +01:00
Koen Vandeputte
5ac34818f9 ath9k: fix dynack in IBSS mode
Currently, dynack was only tested upstream using AP/STA mode.
Testing it on IBSS, showed that late-ack detection was broken.

This is caused due to dynack using Association Request/Response
frames for late-ack detection, which IBSS does not use.
Also allowing Authentication frames here solves this.

A second issue also got fixed, which was also seen AP/STA mode:

When a station was added, the estimated value would be exponentially averaged
using 0 as a starting point.

This means that on larger distances, the ack timeout was still not high
enough before synchronizing would run out of late-ack's for estimation.

Fix this by using the initial estimated value as a baseline
and only start averaging in the following estimation rounds.

Test setup:
- 2x identical devices:  RB912UAG-5HPnD + 19dB sector
- IBSS
- 2x2 802.11an (ar9340), HT20, long GI
- RSSI's  -70 / -71
- Real distance: 23910 meter

Results (60s iperf runs):

Fixed coverage class 54 (up to 24300m):
* 21.5 Mbits/sec

Dynack:
* 28.9 Mbits/sec

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-06 11:49:27 +01:00
Koen Vandeputte
860de2e1aa ar71xx: disable some tiny targets with kernel 4.14
The bump to kernel 4.14 caused a massive increase in kernel size.

For most targets, switching them to dynamic partitioning allowed
to cope with this.

On some targets, the kernel partition is located behind the rootfs,
which disallows switching to dynamic partitioning as the boot location
would be altered, requiring a u-boot change.

Also within the tiny section, which disables kernel symbols etc
to decrease the image size,  the partition size is still too small.

Disable these targets for now, fixing image generation:

- Buffalo BHR-4GRV2
- Zbtlink ZBT-WE1526

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-11-05 16:00:06 +01:00
Koen Vandeputte
c764b2b531 kernel: bump 4.14 to 4.14.79
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>
2018-11-05 16:00:00 +01:00
Hans Dedecker
69734416d2 glibc: update to latest 2.27 commit (BZ#23709,BZ#23822)
d8eee5ef55 x86: Fix Haswell CPU string flags (BZ#23709)
5cd5309d91 i64: fix missing exp2f, log2f and powf symbols in libm.a [BZ #23822]
1759ea197b conform: XFAIL siginfo_t si_band test on sparc64

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-05 14:22:17 +01:00
Hannu Nyman
f1ed7747bb tools/bison: update to version 3.2
Update bison to version 3.2

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-11-05 14:04:26 +01:00
David Bauer
5896b146a4 ipq40xx: fix NBG6617 LED mapping
The NBG6617's LEDs are wrongly identified in the 01_leds boardinit
script (board instead of boardname), resulting in referencing
non-existent LEDs in UCI.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-11-05 02:30:00 +00:00
Daniel Golle
9bcc08958b oxnas: add console=ttyS0,115200 argument to bootargs
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-04 21:43:37 +01:00
Daniel Golle
cf7896117b oxnas: enable image metadata by setting SUPPORTED_DEVICES
For each board, set the legacy name as well as the new based on the
compatible-string from devicetree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-04 21:43:37 +01:00
Daniel Golle
ef9b169df0 oxnas: remove stray kernel config symbols
CONFIG_CRYPTO_* shouldn't be set by the target

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-04 21:43:36 +01:00
Daniel Golle
4f017c871d oxnas: switch to generic board detect
remove /lib/oxnas.sh platform-specific board-detection and use
generic which is based on device-tree compatible node instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-11-04 21:43:36 +01:00
Alexander Couzens
900005ee75 iperf: allow non-ipv6 builds
Add configure argument --disable-ipv6 when ipv6 is deselected.
Add fix-non-ipv6-builds.patch as long there is no new upstream
release.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-11-03 02:36:24 +01:00
Martin Weinelt
0411813c6f ramips: fix leds on GL.iNet GL-MT300N-V2
The WAN LED now shows the link state. It's color is green,
not blue.

Signed-off-by: Martin Weinelt <hexa@darmstadt.ccc.de>
2018-11-02 21:43:15 +01:00
Hans Dedecker
c9f5934c71 curl: noop commit to refer CVEs fixed in 7.62.0
When bumping Curl to 7.62.0 in commit 278e4eba09 I did not include the fixed
CVEs in the commit message; this commit fixes this.

The following CVEs were fixed in 7.62.0 :

CVE-2018-16839
CVE-2018-16840
CVE-2018-16842

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-11-02 13:16:13 +01:00
Christian Lamparter
dceee8cc09 ipq-wifi: drop custom board-2.bins
The BDFs for all boards were upstreamed to the ath10k-firmware
repository and linux-firmware.git.

We switched to the upstream board-2.bin, hence the files can be removed
here.

Keep the ipq-wifi package in case new boards are added. It might take
some time till board-2.bins send upstream are merged.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-01 17:16:53 +01:00
Christian Lamparter
8b18fce3b8 ipq40xx: nbg6617: switch to upstream boardfile variant
The NBG6617's boardfile was merged and this device can
now switch to the upstream ath10k board-2.bin.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-01 17:16:53 +01:00
Christian Lamparter
575d0240f9 ath10k-firmware: update board-2.bin for community firmwares
This patch updates the board-2.bin for the default
IPQ4019, QCA9984 and QCA9888 ath10k-firmware-xyz-ct
and -ct-htt firmwares.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-01 17:16:52 +01:00
Christian Lamparter
6840f15a16 ipq40xx: rt-ac58u: replace ubi auto load hack
This patch replaces the custom autoload quirk of the
RT-AC58U with a bootargs-append overwrite.

The vendor's u-boot doesn't leave the bootargs / cmdline alone,
so the it can't be overwritten in any other way right now...
And of course, this will be a lot of fun to deal with once
the device switches to the new spi-nand subsystem.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-11-01 17:16:52 +01:00
Rosen Penev
8fc187a76e kernel: Remove dependencies on old kernels
Kernels 4.1 and 4.4 are not part of the tree anymore.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-11-01 17:16:52 +01:00
Rosen Penev
32fc41baab tools/patch: Add fedora patch for crashing git style patches
https://lists.gnu.org/archive/html/bug-patch/2018-10/msg00000.html

I assume a CVE number will be assigned soon.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-11-01 17:16:52 +01:00
Daniel Engberg
f9a408b75e libconfig: Fix tarball filename (and URL)
v$(PKG_VERSION).tar.gz is a bad idea and will clash for obvious reasons.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-11-01 17:16:52 +01:00
Hauke Mehrtens
3361a8817e scripts: update config.guess and config.sub
This updates these two files to commit 2fa97a8a0ed3 ("config.guess
(amd64:CYGWIN*:*:*, x86_64:CYGWIN*:*:*): Set master") which is the
current master of
https://git.savannah.gnu.org/gitweb/?p=config.git;a=summary

This contains updates for multiple architectures and will unbreak the
build on the x32 ABI.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-11-01 17:16:52 +01:00
Thorsten Glaser
a395563f68 build: fix libressl build on x32 (amd64ilp32) host
disable use of assembly code since x32 gets misdetected as amd64

Signed-off-by: Thorsten Glaser <tg@mirbsd.org>
2018-11-01 17:16:52 +01:00
Michael Heimpold
79b766d07d uboot-mxs: bump to v2018.09
Also update the U-Boot BSP patch for I2SE Duckbill devices
and remove upstreamed patch for LibreSSL support.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-11-01 17:16:52 +01:00
Hannu Nyman
b0a2e60793 tools/ccache: update to 3.5
Update ccache to 3.5

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-11-01 13:49:52 +01:00
Kabuli Chana
390158bd2b mwlwifi: update to version 10.3.8.0-20181029
compile / test target mvebu / mamba

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2018-11-01 13:48:49 +01:00
Thomas Fuzeau
87e1894d59 kernel: add kmod-usb-serial-mos7840
Enable build of kernel module for mos7840 usb-serial devices.

Signed-off-by: Thomas Fuzeau <tfuzeau@loocla.com>
2018-11-01 13:44:48 +01:00
Hans Dedecker
278e4eba09 curl: bump to 7.62.0
Refresh patches, for changes in version 7.62.0 see https://curl.haxx.se/changes.html#7_62_0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-31 23:06:42 +01:00
Matthias Schiffer
dd9da51462 openssl: enable OPENSSL_WITH_DEPRECATED when OpenSSL is built as a build dep
Some package (e.g. libunbound) depend on OPENSSL_WITH_DEPRECATED. In some
situations it may happen that libunbound and openssl are only pulled in as
build dependencies, but are not enabled in .config.

In such cases, the defaults of symbols like OPENSSL_WITH_DEPRECATED are
ignored (as the whole symbol depends on PACKAGE_libopenssl), and config
symbol dependencies of libunbound aren't effective either (as libunbound
is not actually enabled).

This commit works around the issue by introducing a hidden negated symbol
OPENSSL_NO_DEPRECATED, which is always disabled when PACKAGE_libopenssl is
disabled, and ensures that OpenSSL is built with deprecated APIs in this
case. A user can still manage to break the build by explicitly enabling
libopenssl and disabling OPENSSL_WITH_DEPRECATED; the interaction between
build dependencies and config symbols will require further discussion.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-10-30 20:38:34 +01:00
Kevin Darbyshire-Bryant
3dba852547 dnsmasq: tighten config file permissions
Install following as config files (600) perms instead of as data (644)

/usr/share/dnsmasq/dhcpbogushostname.conf
/usr/share/dnsmasq/trust-anchors.conf
/usr/share/dnsmasq/rfc6761.conf
/etc/hotplug.d/ntp/25-dnsmasqsec
/etc/config/dhcp
/etc/dnsmasq.conf

dnsmasq reads relevant config files before dropping root privilege and
running as dnsmasq:dnsmasq

ntpd runs as root so the hotplug script is still accessible

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-30 09:25:32 +00:00
Koen Vandeputte
162e016fed ar71xx: expand kernel size for ubnt targets
Kernel 4.14 is pretty large causing a build error as the partition is too small.
Expand the kernel partition a bit to make it fit.

* ubnt-uap-pro
* ubnt-unifi-outdoor-plus

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-29 16:20:47 +01:00
Koen Vandeputte
d6b63f1698 ar71xx: disable ap91-5g due to kernel size
This target causes a build failure as the kernel image does not fit
into the kernel partition.

As the kernel is located behind the rootfs, it cannot be enlarged
as the boot entry location would get altered.

Disable this target for now.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-29 16:20:47 +01:00
Koen Vandeputte
f3b80c36bb ar71xx: fix sysupgrade generation for some targets
These targets are already defined as having a dynamic partition
but the safeloader was not adapted for them.

This causes a build warning for the sysupgrade image being too big.

Targets:
- c58-v1
- c60-v1
- c60-v2
- TL-WR1043 v5
- TL-WR902AC v1
- TL-WR942N V1

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-29 11:21:23 +01:00
Koen Vandeputte
7c78be1b74 ar71xx: switch more targets to dynamic partitioning
Targets:
- TP-LINK ER355
- TP-LINK C25 V1
- TP-LINK C59 V1
- TP-LINK C7 V4
- TP-LINK C7 V5

Fixes build issues seen due to the kernel being too big

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-29 11:21:23 +01:00
Radek Dostál
9d35b68776 ar71xx: switch TP-Link RE450 v1 to dynamic partitioning
As mentioned in commit 5f24933 recent changes on ar71xx (switch to 4.14,
memory compaction, ...) cause an increase in kernel size, making it too
big for RE450.

RE450 images were not build due to the following error message:
os-image partition too big (more than 1572864 bytes): Success

Tested on RE450, device boots and was used to send this patch.

Reported-by: Enrico Mioso <mrkiko.rs@gmail.com>
Suggested-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Radek Dostál <rd@radekdostal.com>
[rewrote commit msg keeping it tight + fixed SoB lines]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-29 11:21:23 +01:00
David Bauer
f89fc43a50 ar71xx: move OCEDO Koala to generic and use dynamic partitioning
This changes the OCEDO Koala flash-layout to a unified firmware
partition, thus making the ar71xx-generic kernel fit in flash.

Compile and runtested on OCEDO Koala.

Signed-off-by: David Bauer <mail@david-bauer.net>
[small title reword]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-29 11:21:23 +01:00
Mathias Kresin
374e646724 ath79: fix PQI Air Pen support
Use the correct dts filename. It has to be <soc>_<manufacturer>_<device>.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-28 11:03:49 +01:00
YuheiOKAWA
27eae6597e ath79: add support for PQI Air Pen
SoC: AR9330 (or AR9331 revision?)
Ethernet x1, Wireless 2.4G, uSD card slot x1.
USB Power, include Li-Po Battery.

Flash 8MiB. (factory is dual image)
1. write image is use half 4MiB size from factory.
  write initramfs image to mtd6 and mtd7.
2. change next boot setting. next is mtd6 boot.
  echo -ne "\x01" | dd of=/dev/mtdblock8 conv=notrunc bs=1 count=1 seek=0

3. rewrite sysupgrade image.
  change next boot setting. next is mtd4.
  echo -ne "\x00" | dd of=/dev/mtdblock8 conv=notrunc bs=1 count=1 seek=0

OEM mtd.
dev:    size   erasesize  name
mtd0: 00040000 00010000 "u-boot"
mtd1: 00010000 00010000 "u-boot-env"
mtd2: 00010000 00010000 "ART"
mtd3: 00010000 00010000 "NVRAM"
mtd4: 00140000 00010000 "uImage"
mtd5: 00280000 00010000 "rootfs"
mtd6: 00140000 00010000 "uImage2"
mtd7: 00280000 00010000 "rootfs2"
mtd8: 00010000 00010000 "CONF"

Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
2018-10-28 10:59:14 +01:00
Roger Pueyo Centelles
23f9b2d9a9 ath79: Add support for Ubiquiti LiteAP ac (LAP-120)
This commit adds support for the Ubiquiti LiteAP ac (LAP-120), an outdoor
5 GHz AC access point with an integrated 120° 16 dBi antenna. The device
was previously known as LiteBeam AP ac but was later rebranded.

CPU:    Atheros AR9342 SoC
RAM:    64 MB DDR2
Flash:  16 MB NOR SPI
Ports:  1 GbE port (PoE in)
WLAN:   5 GHz QCA899X (PCI)

The integrated QCA899X is a Ubiquiti branded part with modified vendor
and product id (0777:11ac9). It is very similar to the NanoStation loco
AC, except for the 2.4 GHz management radio (missing here).

Installation procedure is the same as the NanoStation [loco] AC:

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

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2018-10-28 10:59:09 +01:00
Felix Fietkau
8edce6014a mt76: update to the latest version
fdc63f1 mt76: fix regression in tx status handling

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-27 17:54:37 +02:00
Daniel Engberg
4056be58f3 mt76: Fix dependencies for PCI support
USB support doesn't necessarily mean that there's
PCI support available so move that to the drivers
which requires PCI support. This applies to the
sunxi platform for instance.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [fix mt76x0e]
2018-10-26 17:23:38 +02:00
Felix Fietkau
6026356578 mt76: update to the latest version
0b8b15f mt7603: use common mmio mcu struct
d612e2e mt76: mt76x02: skip station tx status for non-sta wcid entries
d89d84b mt76: mt76x02: only override control->sta on sw-encrypted tx
9d59d2a mt76: add support for reporting tx status with skb
ed17ba2 mt7603: use common tx status handling code
14b6c59 mt76x0: use band parameter for LC calibration

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-25 22:49:08 +02:00
Philip Prindeville
a6d02a7572 grub2: fix regression caused by binutils-2.31.1
grub-efi no longer works:

grub-mkimage: error: relocation 0x4 is not implemented yet.

See:

http://git.savannah.gnu.org/cgit/grub.git/commit/util?id=842c390469e2c2e10b5aa36700324cd3bde25875

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>i [PKG_RELEASE increase]
2018-10-25 16:51:42 +02:00
Jonathan Lancett
9ac7350240 mwlwifi: driver version to 10.3.8.0-20181022
Upgrade 88W8997 firmware to 8.4.0.52.
Removed unnecessary firmware settings.
Added vendor events.
Fixed crash problem when module is removed.
Modified the code to protect tx queues.

Signed-off-by: Jonathan Lancett <j.lancett@ntlworld.com>
[tidy commit message]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-24 17:55:14 +01:00
Hans Dedecker
70315fe144 glibc: update to latest 2.27 commit (BZ #23562, BZ #23275)
77b4b8231e signal: Use correct type for si_band in siginfo_t [BZ #23562]
5bdb6897fc Fix race in pthread_mutex_lock while promoting to PTHREAD_MUTEX_ELISION_NP [BZ #23275]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-23 15:57:51 +02:00
Felix Fietkau
2f9179419c mt76: update to the latest version
d033272 mt76: mt76x0: handle chip specific initval differences
1a2b2dc mt76: usb: fix static tracepoints
11151f4 mt76x0: antenna select corrections
dade109 mt76x0: init: simplify mt76x0_init_mac_registers
3c54612 mt76x0: pci: add missing MODULE_FIRMWARE macro
97e0269 mt76x0: mac: remove mt76x0_mac_set_ampdu_factor
5d8c4bf mt76x0: align mt76x0u and mt76x0e fw version
d4391ae mt76: move mt76x02_mac_set_short_preamble in mt76x02_mac.c
aa6ebf9 mt76: move mt76x02_init_device in mt76x02-lib module
a4a08c3 mt76: move mac beacon routines in mt76x02-lib module
6b69650 mt76: move tx beacon routines in mt76x02-lib module
8486047 mt76x0: pci: add pre_tbtt_tasklet support
acd4c99 mt76: move mt76x02_sw_scan and mt76x02_sw_scan_complete in mt76x02-lib module
2d736cf mt76: move mt76x02_get_txpower in mt76x02_util.c
aa1d6bd mt76: move mt76x02_sta_ps in mt76x02-lib module
e684281 mt76: introduce mt76x02_init_beacon_config routine
c181d97 mt76x0: pci: enable AP support
3b86d99 mt76: move mt76x02_set_tx_ackto in mt76x02-lib module
41d7ef7 mt76x0: update init vals for MT_TX_PROT registers
fe5a149 mt76: move tx protection routines in mt76x02-lib module
5bca2de mt76: move mt76x02_bss_info_changed in mt76x02-lib module
d21a835 mt76: move dfs support in mt76x02-lib module
ba9d424 mt76x0: pci: add DFS support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-23 11:18:06 +02:00
Koen Vandeputte
5f298b95a1 kernel: add missing symbol for target bcm53xx
Fixes: ca88f4153f ("kernel: bump 4.14 to 4.14.77")

Reported-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-23 10:57:02 +02:00
Rafał Miłecki
9b385b2496 bcm53xx: use upstream SPI controller fix
This just moves patch to use 0xx prefix and includes maintainer's s-o-b.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-10-23 09:43:08 +02:00
Koen Vandeputte
bc3d47cd12 kernel: bump 4.14 to 4.14.78
Refreshed all patches.

Remove upstreamed:
- 050-net-emac-fix-fixed-link-setup-for-the-RTL8363SB-swit.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-22 15:28:31 +02:00
Koen Vandeputte
9c42391c0d kernel: bump 4.9 to 4.9.135
Refreshed all patches.

Fixes:
- CVE-2018-10883

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-22 15:28:31 +02:00
Hans Dedecker
59db98d0f2 fstools: update to git HEAD
29e53af fstools: add ntfs support

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-21 20:48:36 +02:00
Hauke Mehrtens
9fcfcd49f8 mac80211: hermes-pcmcia: add missing dependency to kmod-pcmcia-core
This fixes a build problem on x86.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-21 16:46:16 +02:00
Hauke Mehrtens
e1db49310e linux-firmware: intel: Add iwl 9000 and 9260 firmware
Add the most recent supported firmware file for the Intel 9000 and
9260 wireless chips. The API version 41 is not yet supported by the driver.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-20 16:24:29 +02:00
Hauke Mehrtens
10dffe2fa3 linux-firmware: intel: update firmware files for 7265D, 8000C and 8265
Use more recent versions for the Intel wireless chips 7265D, 8000C and 8265.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-20 16:24:29 +02:00
Ryan Mounce
4d2613b01a mpc85xx: workaround 4.14 cross compile issue
Regression introduced with 4.10 by 43c9127d94d62a232ed33ed2eab8a08657ce5472

Build will fail if system 'ar' does not support deterministic builds.
e.g. macOS with Xcode toolchain

Appears to be fixed upstream in 4.18 by af3901cbbd3de182aafb8ee553c825c0074df6a2

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2018-10-20 16:24:29 +02:00
Arthur Skowronek
5f2cb6d7dc tools/pkg-config: pass arguments at the end
Go for openwrt passes pkg-config arguments in the format of

        pkg-config --cflags -- pkg-name

which in turn will be passed down to the real pkg-config as something
like

        pkg-config.real --cflags -- pkg-name --define...

and causes the real pkg-config implementation to missinterpret the given
argument list.

This also helps to fix https://github.com/golang/go/issues/27940

Signed-off-by: Arthur Skowronek <arthur.skowronek@tuta.io>
2018-10-20 16:24:29 +02:00
Yufei Miao
260be8a579 mwlwifi: driver version to 10.3.8.0-20181008
Signed-off-by: Yufei Miao <myf@myf.cloud>
2018-10-20 16:24:29 +02:00
Roman Bazalevskiy
47e7a3904d kernel/modules: Aosong AM2315/AM2320 IIO kernel module support enabled.
Signed-off-by: Roman Bazalevskiy <rvb@rvb.name>
2018-10-20 16:24:29 +02:00
Deng Qingfang
858a8acf3e kernel/modules: add kmod-fou6 package
IPv6 support for Foo-over-UDP tunnel

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-10-20 16:24:23 +02:00
Robert Marko
f6a26f9a20 linux-firmware: Update linux-firmware to 2018-10-18
Kalles ath10k PR was finally merged so update linux-firmware to
include those changes.

This is needed since disabling ath10k-firmware a lot of custom BDF-s
in board-2.bin-s are not available in previously outdated linux-firmware
board-2.bin-s.
This also includes support for boards currently using ipq-wifi and other
WIP ones.

Runtime tested on 8devices Jalapeno.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-10-20 16:13:39 +02:00
Christian Lamparter
fc70276e6c apm821xx: add disk-activity triggers via DT.
The WNDR4700 and the MBL have a dedicated HDD activity LED.
This patch adds the default led triggers to the DTS and
removes the entries in 01_leds.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-10-20 16:13:39 +02:00
Christian Lamparter
1d5d77612f apm821xx: apm82181.dtsi overhaul
- order entries by mmio address where possible

 - switch to lower-case address values

 - comment on BSP u-boot behaviour in regards to
   what it edits and look for

 - annotate irq lines with the help of interrupt-names

 - remove deprecated "device_type" properties
   The pci and network device_type had to stay since
   they are required by the drivers and u-boot.
   the cpu and memory device_types will remain as well
   as they are still part of the DT Spec.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-10-20 16:13:39 +02:00
Christian Lamparter
9ca82c2374 apm821xx: force WNDR4700 console to 115200n8
With the upcoming 4.19 release, the serial console on the
Netgear WNDR4700 would no longer work as it is never really
set and always relied on the kernel's serial code not to
change the baud rate.

On the stock firmware, Netgear forced the console setting
through a custom CONFIG_CMDLINE in their kernel to 115200.
Normally, they should have done it in a different way and
just passed the baudrate through a "console=..." kernel
parameter via the bootargs in the "/chosen" dt node.
But in their default u-boot bootcmd setting, they somehow
forgot to add the "run addtty", so there's no easy way to
pass the baudrate from u-boot to the kernel. So it has
to be forced as otherwise it ends up as 9600 baud.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-10-20 16:13:39 +02:00
Christian Lamparter
68bb91018d apm821xx: set uart compatible to ns16750
The APM821XX/PPC460EX datasheet mentions:
"Register compatibility with 16750 register set"

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-10-20 16:13:39 +02:00
Christian Lamparter
92bcd08989 build: remove obsolete -rc kernel testing rewrites
The -rcX "testing" kernels are no longer hosted on
cdn.kernel.org file servers directly in a "testing"
directory. Therefore the logic that tested for "-rc"
can be removed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-10-20 16:13:39 +02:00
Linus Walleij
f280bd7fa8 gemini: Fix up image generation
I noticed that the image generator for the Gemini generates
some 10+ MB files for the second (application) partition.
This is just wrong. The first 6144K partition named initramfs
easily fits OpenWRTs squashfs,jffs2 overlayed partitions
with nice headroom for storing configuration files.

Generate a blank partition for the hddapp.tgz file and delete
it after generating the firmware image - when performing
updates manually you just want the "rd.z" file around
anyways.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-10-20 16:13:39 +02:00
Linus Walleij
10ec966f7b gemini: Break out USB to packages
This creates a new kernel package for the fotg210 host
controller and uses that with the gemini to shrink the
kernel. The SQ201 needs the USB2 PCI package as well.

The build system required me to make kernel_oldconfig
beofore it would build without errors so some minor
unrelated Kconfig entries are changed.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-10-20 16:13:39 +02:00
Baptiste Jonglez
b2c68ceea7 kernel: Add support for Winbond w25q128jv SPI NOR flash
Newer batches of several Mikrotik boards contain this yet-unsupported
flash chip, for instance:

- rb941-2nd (hAP lite)
- rb952ui-5ac2nd (hAP ac lite)
- RBM33G

and probably other Mikrotik boards need this patch as well.

The patch was submitted upstream by Robert Marko: https://patchwork.ozlabs.org/patch/934181/

Closes: FS#1715
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
Cc: Robert Marko <robimarko@gmail.com>
2018-10-20 16:13:39 +02:00
Daniel Engberg
d27d87c910 toolchain/musl: Don't override optimization set by upstream
Don't override optimization set by upstream.
Provides a speed increase for internal (library), malloc and string
operations in musl.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[add : to PKG_RELEASE release variable for consistency]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-20 14:22:56 +01:00
Kevin Darbyshire-Bryant
6c4d3d705a dnsmasq: bump to v2.80
dnsmasq v2.80 release

Change from rc1:

91421cb Fix compiler warning.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-19 17:36:02 +01:00
Koen Vandeputte
ca88f4153f kernel: bump 4.14 to 4.14.77
Refreshed all patches.

Altered patches:
- 666-Add-support-for-MAP-E-FMRs-mesh-mode.patch

New symbol for arm targets:
- HARDEN_BRANCH_PREDICTOR

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-19 10:01:57 +02:00
Koen Vandeputte
6d682d82b0 kernel: bump 4.9 to 4.9.134
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-19 10:01:57 +02:00
Hans Dedecker
15a59e3e08 iproute2: install ip-tiny and ip-full in /usr/libexec
Install the ip-tiny and ip-full variants in /usr/libexec as the suffixed
ip variants are not meant to be called directly

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-18 17:15:51 +02:00
Felix Fietkau
a91d82303c mt76: update to the latest version
b51337a mt76: clean up unused leftover EXPORT_SYMBOLs
383b228 mt76x0: reduce duplication in setting rf bandwidth parameters
a1a4528 mt76: mt76x0: handle chip specific initval differences
f473340 mt76: usb: fix static tracepoints
3a975b4 mt76x0: antenna select corrections
37c1150 mt76x0: init: simplify mt76x0_init_mac_registers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-18 16:29:25 +02:00
Jason A. Donenfeld
4653818dab wireguard: bump to 0.0.20181018
ba2ab5d version: bump snapshot
5f59c76 tools: wg-quick: wait for interface to disappear on freebsd
ac7e7a3 tools: don't fail if a netlink interface dump is inconsistent
8432585 main: get rid of unloaded debug message
139e57c tools: compile on gnu99
d65817c tools: use libc's endianness macro if no compiler macro
f985de2 global: give if statements brackets and other cleanups
b3a5d8a main: change module description
296d505 device: use textual error labels always
8bde328 allowedips: swap endianness early on
a650d49 timers: avoid using control statements in macro
db4dd93 allowedips: remove control statement from macro by rewriting
780a597 global: more nits
06b1236 global: rename struct wireguard_ to struct wg_
205dd46 netlink: do not stuff index into nla type
2c6b57b qemu: kill after 20 minutes
6f2953d compat: look in Kbuild and Makefile since they differ based on arch
a93d7e4 create-patch: blacklist instead of whitelist
8d53657 global: prefix functions used in callbacks with wg_
123f85c compat: don't output for grep errors

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-18 08:55:01 +02:00
Fabio Bettoni
ddc11c3932 ar71xx/ath79: fix mtd corruption
In commit fec8fe8069 ("kernel: bump 4.9 to 4.9.116") [1], the following patch for removed:
- 403-mtd_fix_cfi_cmdset_0002_status_check.patch

This patch contained fixes for both write and erase functions.

While the chip-detects for erase got fixed upstream [2],
some modifications are still required, even with the fixes applied.

While at it, also apply the same fix for target ath79,
which suffers the same issue.

Not doing so results in following errors seen:

Collected errors:
 * pkg_write_filelist: Failed to open //usr/lib/opkg/info/luci-lib-ip.list: I/O error.
 * opkg_install_pkg: Failed to extract data files for luci-lib-ip. Package debris may remain!
 * opkg_install_cmd: Cannot install package luci-ssl.
 * opkg_conf_write_status_files: Can't open status file //usr/lib/opkg/status: I/O error.

[    0.780920] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    8.406396] jffs2: notice: (415) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
[    8.423476] mount_root: switching to jffs2 overlay
[  270.902671] jffs2: Write of 1989 bytes at 0x005ce6f8 failed. returned -5, retlen 962
[  270.931965] jffs2: Write of 1989 bytes at 0x005ceec0 failed. returned -5, retlen 0
[  270.939631] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
[  270.950397] jffs2: Write of 68 bytes at 0x005ceec0 failed. returned -5, retlen 0
[  270.957838] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
[  270.968584] jffs2: Write of 68 bytes at 0x005ceec0 failed. returned -5, retlen 0
[  270.976027] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero
[  270.986735] jffs2: Write of 68 bytes at 0x005ceec0 failed. returned -5, retlen 0
[  270.994225] jffs2: Not marking the space at 0x005ceec0 as dirty because the flash driver returned retlen zero

[1] https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=fec8fe806963c96a6506c2aebc3572d3a11f285f
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v4.9.133&id=a0239d83e1cb60de5e78452d4708c083b9e3dcbe

Fixes: fec8fe8069 ("kernel: bump 4.9 to 4.9.116")
Signed-off-by: Fabio Bettoni <fbettoni@gmail.com>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-17 18:55:37 +02:00
Koen Vandeputte
5f24933309 ar71xx: Move some targets to tiny
Recent changes on ar71xx (switch to 4.14, memory compaction, ...) cause
an increase in kernel size, making it too big for some devices.

Move these devices to the tiny target, where kernel symbols and
optimization for speed are disabled, reducing the kernel size.

Devices:
- EnGenius ENS202EXT
- OCEDO Koala

Compile-tested targets:

- ar71xx->generic->default
- ar71xx->smallFlash->Default

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-17 18:02:16 +02:00
Hans Dedecker
db6f9d5598 netifd: update to latest git HEAD
841b5d1 system-linux: enable by default ignore encaplimit for grev6 tunnels
125cbee system-linux: fix a typo in gre tunnel data parsing logic

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-17 11:18:30 +02:00
Hans Dedecker
3d015e971f gre: make encaplimit support configurable
Make inclusion of the destination option header containing the tunnel
encapsulation limit configurable for IPv6 GRE packets.
Setting the uci parameter encaplimit to ignore; allows to disable the
insertion of the destination option header in the IPv6 GRE packets.
Otherwise the tunnel encapsulation limit value can be set to a value
from 0 till 255 by setting the encaplimit uci parameter accordingly.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-17 11:18:20 +02:00
Rosen Penev
622176262d tools/xz: Add PKG_CPE_ID for proper CVE tracking
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-16 19:17:36 +01:00
Rosen Penev
74a5c619dc tools/libressl: Add PKG_CPE_ID for proper CVE tracking
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-16 19:16:28 +01:00
Mathias Kresin
80c61c161a treewide: use wpad-basic for not small flash targets
Add out of the box support for 802.11r and 802.11w to all targets not
suffering from small flash.

Signed-off-by: Mathias Kresin <dev@kresin.me>

Mathias did all the heavy lifting on this, but I'm the one who should
get shouted at for committing.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-16 15:07:41 +01:00
Kevin Darbyshire-Bryant
1063d904b7 hostapd: add basic variant
Add a basic variant which provides WPA-PSK only, 802.11r and 802.11w and
is intended to support 11r & 11w (subject to driver support) out of the
box.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-16 15:07:41 +01:00
Rosy Song
fd09e251e9 ppp: don't start ppp with IPv6 support if ipv6 is not supported
Signed-off-by: Rosy Song <rosysong@rosinson.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-16 14:31:45 +02:00
Felix Fietkau
202ac58ca2 mt76: update to the latest version, add mt76x0 firmware, enable mt76x0e
96fa353 mt76: do not store aggregation sequence number for null-data frames
c50dca8 mt76x0: print BBP version only for debug
ddc9e05 mt76x0: correct RF access via RF_CSR register.
02d2385 mt76: allow to identify bus
c438e67 mt76x0: correct RF reg pairs write for PCIe
c83abb8 mt76x0: use bus helper to identify rf access method
9c272ff mt76x0: phy: fix bank check in mt76x0_rf_csr_{wr,rr}
1945d57 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_mcu.c
214eab7 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_phy.c
29bc2ae mt76: use mt76x02_dev instead of mt76_dev in mt76x02_util.c
08ecb5f mt76: use mt76x02_dev instead of mt76_dev in mt76x02_usb_mcu.c
fd9b2b0 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_mac.c
f37bd25 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_txrx.c
48950cb mt76: use mt76x02_dev instead of mt76_dev in mt76x02_eeprom.c
06276cc mt76x0: pci: report firmware version using ethtool
72546ed mt76x0: pci: add missing mac80211 callbacks
4de98cd mt76: disable ldpc coding for mt76x0 devices
f0951c2 mt76x0: pci: add mt76x0_register_device in mt76x0e_register_device
4f3685e mt76: reserve enough room for USB tx skbs
5e6907f mt76x0: remove dma.h
acfc5a9 mt76x0: pci: fix set external PA I/O current
2b79bb7 mt76: mt76x0e: another fix for the external PA current setting
8a0acfd mt76x0: phy: fix restore phase in mt76x0_phy_recalibrate_after_assoc
e9e949b mt76x0: phy: remove channel parameter from mt76x0_phy_set_chan_bbp_params
1775717 mt76: move mt76x02_phy_set_bw in mt76x02-lib module
f82134f mt76: move mt76x02_phy_set_band in mt76x02-lib module
3eaa34f mt76x0: pci: rename mt76x0_phy_calibrate
7269fb4 mt76x0: pci: introduce mt76x0_phy_calirate routine
a514b75 mt76x0: phy: update set_channel for mt76x0e devices
62a1bc5 mt76x0: eeprom: introduce mt76x0_tssi_enabled routine
a48481d mt76x0: phy: add phy/vco temperature compensation
cc34ce9 mt76: move rssi_gain_thresh routines in mt76x02-lib module
eaf9751 mt76: move mt76x02_phy_adjust_vga_gain in mt76/mt76x02_phy.c
2715e7c mt76: introduce mt76x02_init_agc_gain routine
87fcb31 mt76x0: phy: align channel gain logic to mt76x2 one
98f8ef7 mt76x0: phy: do not run calibration during channel switch
cf859ad mt76x2: align mt76x2 and mt76x2u firmware
1f3f767 mt76x2u: align channel gain logic to mt76x2 one
d1c1454 treewide: Replace more open-coded allocation size multiplications
bcbecd2 mt76x0: phy: use proper name convention
b6694e6 mt76x0: phy: simplify rf configuration routines
da129c9 mt76x0: phy: improve code readability in initvals_phy.h
eab7ab1 mt76x0: pci: add get_survey support
9e493f7 mt76: move mt76x02_mac_work routine in mt76x02-lib module
ecec6ba mt76: move mt76x02_debugfs in mt76x02-lib module
4f3b608 mt76x0: use shared debugfs implementation
6aae25b mt76x0: use mt76x02_mac_work as stats handler
b228a45 mt76x2u: introduce mac workqueue support
4671af4 mt76x0: phy: unify calibration between mt76x0u and mt76x0e
5ed28f3 mt76x0: do not perform MCU calibration for MT7630
9b844da add mt7610e firmware

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-16 13:01:11 +02:00
Rosen Penev
a6bd9d0cb6 tools: patch: Add missing CVE-2018-6951 fix
uscan reports a new CVE now that PKG_CPE_ID was added.

Reordered patches by date.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[re-title commit & refresh patches]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-16 11:51:10 +01:00
Jo-Philipp Wich
3e633bb370 hostapd: fix MAC filter related log spam
Backport two upstream fixes to address overly verbose logging of MAC ACL
rejection messages.

Fixes: FS#1468
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-10-16 12:11:20 +02:00
Christian Lamparter
583466bb5b dnsmasq: fix dnsmasq failure to start when ujail'd
This patch fixes jailed dnsmasq running into the following issue:

|dnsmasq[1]: cannot read /usr/share/dnsmasq/dhcpbogushostname.conf: No such file or directory
|dnsmasq[1]: FAILED to start up
|procd: Instance dnsmasq::cfg01411c s in a crash loop 6 crashes, 0 seconds since last crash

Fixes: a45f4f50e1 ("dnsmasq: add dhcp-ignore-names support - CERT VU#598349")

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[bump package release]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-16 10:39:59 +01:00
Hans Dedecker
79982b26bb toolchain/glibc: update to 2.27+
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-16 11:37:59 +02:00
Koen Vandeputte
0d0bd8e6da kernel: bump 4.14 to 4.14.76
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-16 10:08:56 +02:00
Koen Vandeputte
e80af4b53b kernel: bump 4.9 to 4.9.133
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-16 10:08:54 +02:00
Koen Vandeputte
912340033a kernel: bump 3.18 to 3.18.124
Refreshed all patches.

Compile-tested: adm5120
Runtime-tested: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-16 10:06:45 +02:00
Kevin Darbyshire-Bryant
b8bc672f24 dnsmasq: bump to v2.80rc1
53792c9 fix typo
df07182 Update German translation.

Remove local patch 001-fix-typo which is a backport of the above 53792c9

There is no practical difference between our test8 release and this rc
release, but this does at least say 'release candidate'

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-16 08:39:21 +01:00
Hans Dedecker
39e5e17045 dnsmasq: fix compile issue
Fix compile issue in case HAVE_BROKEN_RTC is enabled

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-15 13:42:55 +02:00
Felix Fietkau
d251a11f60 ramips: refresh mt7621 kernel config
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-15 12:54:12 +02:00
Felix Fietkau
e34ea1b4ff kernel: add CONFIG_CC_OPTIMIZE_FOR_* to the default config
Avoid repeating them in the target config, they are overwritten by
top-level menuconfig anyway

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-15 12:54:00 +02:00
Daniel Golle
ed0d5a1e60 wolfssl: update to version 3.15.3-stable
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-10-15 08:41:02 +02:00
Felix Fietkau
055fb0ba83 mt76: move mt76x2e firmware to kmod-mt76x2-common and use it for mt76x2u
USB and PCIe devices can run the same firmware

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-14 18:47:44 +02:00
Hauke Mehrtens
759f111f8d tools: patch: Fix build by not modifing Makefile.am
A new test case was adding in one of the patches fixing a problem, this
also included a change in the test/Makefile.am to add this test case.
The build system detected a change in the Makefile.am and wants to
regenerate the Makefile.in, but this fails because automake-1.15 is not
installed yet. As automake depends on patch being build first, make sure
we do not modify the Makefile.am.

This fixes build problem seen by the build bots.

Fixes: 4797dddfde ("patch: apply upstream cve fixes")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 16:47:15 +02:00
Hauke Mehrtens
07e8c217cb tools: patch: make patch build depend on automake
The Makefile.am changed and now patch wants to use automake to
regenerate the Makefile.in. Make sure automake was build before we build
patch.

This fixes build problem seen by the build bots.
Fixes: 4797dddfde ("patch: apply upstream cve fixes")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 15:27:38 +02:00
Russell Senior
4797dddfde patch: apply upstream cve fixes
Apply two upstream patches to address two CVEs:

 * CVE-2018-1000156
 * CVE-2018-6952

Add PKG_CPE_ID to Makefile.

Build tested on apm821xx and ar71xx.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-10-14 13:36:09 +01:00
Hauke Mehrtens
4c3fae4adc hostapd: Add WPA-EAP-SUITE-B-192 (WPA3-Enterprise)
This adds support for the WPA3-Enterprise mode authentication.

The settings for the WPA3-Enterpriese mode are defined in
WPA3_Specification_v1.0.pdf. This mode also requires ieee80211w and
guarantees at least 192 bit of security.

This does not increase the ipkg size by a significant size.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:15 +02:00
Hauke Mehrtens
18c6c93a3b hostapd: Activate Opportunistic Wireless Encryption (OWE)
OWE is defined in RFC 8110 and provides encryption and forward security
for open networks.

This is based on the requirements in the Wifi alliance document
Opportunistic_Wireless_Encryption_Specification_v1.0_0.pdf
The wifi alliance requires ieee80211w for the OWE mode.
This also makes it possible to configure the OWE transission mode which
allows it operate an open and an OWE BSSID in parallel and the client
should only show one network.

This increases the ipkg size by 5.800 Bytes.
Old: 402.541 Bytes
New: 408.341 Bytes

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:15 +02:00
Hauke Mehrtens
4a009a16d2 hostapd: Activate Simultaneous Authentication of Equals (SAE)
This build the full openssl and wolfssl versions with SAE support which
is the main part of WPA3 PSK.

This needs elliptic curve cryptography which is only provided by these
two external cryptographic libraries and not by the internal
implementation.

The WPA3_Specification_v1.0.pdf file says that in SAE only mode
Protected Management Frames (PMF) is required, in mixed mode with
WPA2-PSK PMF should be required for clients using SAE, and optional for
clients using WPA2-PSK. The defaults are set now accordingly.

This increases the ipkg size by 8.515 Bytes.
Old: 394.026 Bytes
New: 402.541 Bytes

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:15 +02:00
Hauke Mehrtens
a1ad1144b6 hostapd: SAE: Do not ignore option sae_require_mfp
This patch was send for integration into the hostapd project.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:14 +02:00
Hauke Mehrtens
779773a0de hostapd: backport build fix when OWE is activated
This backports a compile fix form the hostapd project.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:14 +02:00
Hauke Mehrtens
4b93b03577 hostapd: sync config with default configuration
This replaces the configuration files with the versions from the hostapd
project and the adaptions done by OpenWrt.

The resulting binaries should be the same.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:14 +02:00
Hauke Mehrtens
8f7a2bd084 netifd: update to latest git HEAD
22476ff wireless: Add Simultaneous Authentication of Equals (SAE)
c6c3a0d wireless: Add Opportunistic Wireless Encryption (OWE)
a117e41 wireless: Add WPA-EAP-SUITE-B-192 (WPA3-Enterprise)

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-14 13:57:08 +02:00
Florian Eckert
71865200c9 uqmi: fix variable initilization for timeout handling
Also add logging output for SIM initilization.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-12 09:36:05 +02:00
Felix Fietkau
e220ffb533 mac80211: fix A-MSDU packet handling with TCP retransmission
Improves local TCP throughput and fixes use-after-free bugs that could lead
to crashes.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-11 18:42:54 +02:00
Rafał Miłecki
f00cb94f7c bcm53xx: add pending pinctrl driver
It's required to support devices using adjustable SoC pins for some
specific purpose (e.g. I2C, PWM, UART1).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-10-11 14:19:22 +02:00
Robert Marko
b1ab8fac5a ath10k-ct: Update to 29-09-2018
Update ath10k-ct to be able to drop 210-ath10k-fix-recent-bandwidth-conversion-bug.patch
as its upstream.

b9989fbd5d6e ath10k-ct: Add upstream patch to fix peer rate reporting.
ac9224344dbf ath10k-ct: Support sending custom frames with no-ack flag.
bc938bc2021e ath10k-ct: Support sending pkts with specific rate on 10.4 firmware.

Runtime tested on:
- GL-iNet GL-B1300
- Mikrotik RB912 + QCA9882

Signed-off-by: Robert Marko <robimarko@gmail.com>
[Added list of all changes from previous version + add own test device]
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-11 12:52:27 +02:00
Florian Eckert
4cabda8b7d uqmi: update PKG_RELEASE version
update PKG_RELEASE

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
0c9d06b5b2 uqmi: stop proto handler if verify pin count is not 3
Check pin count value from pin status and stop verification the pin if
the value is less then 3. This should prevent the proto-handler to
lock the SIM. If SIM is locked then the PUK is needed.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
4b80bd878d uqmi: evaluate pin-status output in qmi_setup function
Load the json output from uqmi --get-pin-status command and evaluate the
"pin1_status" value.

The following uqmi "pin1_status" values are evaluated:

- disabled
  Do not verify PIN because SIM verification is disabled on this SIM

- blocked
  Stop qmi_setup because SIM is locked and a PUK is required

- not_verified
  SIM is not yet verified. Do a uqmi --verify-pin1 command if a SIM is
  specified

- verified:
  Do not verify the PIN because this was already done before

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
f171a86d06 uqmi: do not block proto handler if SIM is uninitialized
QMI proto setup-handler will wait forever if SIM does not get initialized.
To fix this stop polling pin status and notify netifd. Netifd will generate
then a "ifup-failed" ACTION.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
dec1bfa0f4 uqmi: do not block proto handler if modem is unable to registrate
QMI proto setup-handler will wait forever if it is unable to registrate to
the mobile network. To fix this stop polling network registration status
and notify netifd. Netifd will generate then a "ifup-failed" ACTION.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
dee93def39 uqmi: add timeout option value
This value will be used for now during following situations:
* Ask the sim with the uqmi --get-pin-status command.
* Wait for network registration with the uqmi --get-serving-system command.

This two commands wait forever in a while loop. Add a timeout to stop
waiting and so inform netifd.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
2d57aa9c4c uqmi: redirect uqmi commands output to /dev/null
Move uqmi std and error output on commands without using them to /dev/null.
This will remove useless outputs in the syslog.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Florian Eckert
692c6d9a5d uqmi: fix indenting
fix indenting

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-10-11 12:18:16 +02:00
Rafał Miłecki
92de28b751 bcm53xx: replace SPI revert with a fix sent upstream
Instead of reverting whole commit it's enough to just revert a single
line change. It seems the real problem with the regressing commit was a
bump of read chunk size. Switching back to 256 B chunks is enough to fix
the problem/regression.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-10-11 10:04:46 +02:00
John Crispin
d24bdaa794 procd: update to latest git HEAD
94944ab procd: Add cpu string to board detection

Signed-off-by: John Crispin <john@phrozen.org>
2018-10-11 08:42:52 +02:00
John Crispin
3e8ef61c01 package/: fix $(PROJECT_GIT) usage
Signed-off-by: John Crispin <john@phrozen.org>
2018-10-11 08:42:52 +02:00
Rosen Penev
82d272efed procd: Install hotplug files as 600
procd runs as root, so it only makes sense that its files are restricted.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-11 08:06:43 +02:00
Rosen Penev
4572d996a4 linux-atm: Install hotplug file as 600
The hotplug files is only used by procd, which runs as root.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-11 08:06:35 +02:00
Rosen Penev
c7144ec688 comgt: Install hotplug and netifd files as 600
procd and netifd both run as root. These files are not used elsewhere.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-11 08:06:28 +02:00
Rosen Penev
f5ddbd695b samba36: Install several config files as 600
Hotplug is managed by procd, which runs as root. The other files are used
by root as well.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-11 08:06:18 +02:00
Rosen Penev
745c3acd64 soloscli: Install hotplug file as 600
Hotplug is managed by procd, which runs as root.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-11 08:06:09 +02:00
Rosen Penev
49065d227a firewall: Install config files as 600
None of the files in firewall are used by non-root.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-10-11 08:05:41 +02:00
Magnus Kroken
ba826ce4e7 mpc85xx: remove kernel 4.9 support
Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-10-11 08:04:10 +02:00
Magnus Kroken
650806d83a mpc85xx: switch to kernel 4.14
Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-10-11 08:04:02 +02:00
Magnus Kroken
c83c180489 mpc85xx: add kernel 4.14 support
Based on patches previously submitted by Achim Gottinger:
http://lists.infradead.org/pipermail/openwrt-devel/2018-June/012719.html

Tested on TP-Link TL-WDR4900 v1.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-10-11 08:03:56 +02:00
Koen Vandeputte
f4b7dfcc4b netfilter: add missing dependency for kernel 4.14
Since kernel 4.14.75 commit ("netfilter: xt_cluster: add dependency on conntrack module")
a dependency is required on kmod-nf-conntrack.

It seems this was already present for kmod-ipt-clusterip
but not yet for kmod-ipt-cluster

Add it fixing a build error when including kmod-ipt-cluster:

Package kmod-ipt-cluster is missing dependencies for the following libraries:
nf_conntrack.ko
modules/netfilter.mk:665: recipe for target '/mnt/ramdisk/koen/firmware/builds/openwrt/bin/targets/cns3xxx/generic/packages/kmod-ipt-cluster_4.14.75-1_arm_mpcore_vfp.ipk' failed
make[3]: *** [/mnt/ramdisk/koen/firmware/builds/openwrt/bin/targets/cns3xxx/generic/packages/kmod-ipt-cluster_4.14.75-1_arm_mpcore_vfp.ipk] Error 1
make[3]: Leaving directory '/mnt/ramdisk/koen/firmware/builds/openwrt/package/kernel/linux'
Command exited with non-zero status 2
time: package/kernel/linux/compile#1.80#0.05#2.07
package/Makefile:107: recipe for target 'package/kernel/linux/compile' failed
make[2]: *** [package/kernel/linux/compile] Error 2
make[2]: Leaving directory '/mnt/ramdisk/koen/firmware/builds/openwrt'
package/Makefile:103: recipe for target '/mnt/ramdisk/koen/firmware/builds/openwrt/staging_dir/target-arm_mpcore+vfp_musl_eabi/stamp/.package_compile' failed
make[1]: *** [/mnt/ramdisk/koen/firmware/builds/openwrt/staging_dir/target-arm_mpcore+vfp_musl_eabi/stamp/.package_compile] Error 2
make[1]: Leaving directory '/mnt/ramdisk/koen/firmware/builds/openwrt'
/mnt/ramdisk/koen/firmware/builds/openwrt/include/toplevel.mk:216: recipe for target 'world' failed
make: *** [world] Error 2

Fixes: f983956a8b ("kernel: bump 4.14 to 4.14.75")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v4.14.75&id=b969656b46626a674232c0eadf92a394b89df07c
2018-10-10 17:33:04 +02:00
Koen Vandeputte
13f283198e ar71xx: remove linux 4.9 support
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-10 15:12:01 +02:00
Koen Vandeputte
77d004de6d ar71xx: switch to kernel 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-10 14:45:11 +02:00
Koen Vandeputte
f983956a8b kernel: bump 4.14 to 4.14.75
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-10 14:45:11 +02:00
Koen Vandeputte
571fe28464 kernel: bump 4.9 to 4.9.132
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-10 14:45:11 +02:00
Felix Fietkau
212aa33226 kernel: enable memory compaction
Compaction is the only memory management component to form high order (larger
physically contiguous) memory blocks reliably. The page allocator relies on
compaction heavily and the lack of the feature can lead to unexpected OOM
killer invocations for high order memory requests. You shouldn't disable this
option unless there really is a strong reason for it.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Michal Hrusecky <michal.hrusecky@nic.cz>
2018-10-09 14:29:55 +02:00
Felix Fietkau
567fe53230 mt76: fix typo in kmod-mt76x0u package description
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-09 14:16:03 +02:00
Felix Fietkau
1e8882585c kernel: support gcc-optimized inlining on all architectures
Optimized inlining was disabled by default when gcc 4 was still
relatively new. By now, all gcc versions handle this well and there
seems to be no real reason to keep it x86-only.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-09 14:15:53 +02:00
Kevin Darbyshire-Bryant
a45f4f50e1 dnsmasq: add dhcp-ignore-names support - CERT VU#598349
dnsmasq v2.80test8 adds the ability to ignore dhcp client's requests for
specific hostnames.  Clients claiming certain hostnames and thus
claiming DNS namespace represent a potential security risk. e.g. a
malicious host could claim 'wpad' for itself and redirect other web
client requests to it for nefarious purpose. See CERT VU#598349 for more
details.

Some Samsung TVs are claiming the hostname 'localhost', it is believed
not (yet) for nefarious purposes.

/usr/share/dnsmasq/dhcpbogushostname.conf contains a list of hostnames
in correct syntax to be excluded. e.g.

dhcp-name-match=set:dhcp_bogus_hostname,localhost

Inclusion of this file is controlled by uci option dhcpbogushostname
which is enabled by default.

To be absolutely clear, DHCP leases to these requesting hosts are still
permitted, but they do NOT get to claim ownership of the hostname
itself and hence put into DNS for other hosts to be confused/manipulate by.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-09 09:45:16 +01:00
Kevin Darbyshire-Bryant
3925298f3c wireguard: bump to 0.0.20181007
64750c1 version: bump snapshot
f11a2b8 global: style nits
4b34b6a crypto: clean up remaining .h->.c
06d9fc8 allowedips: document additional nobs
c32b5f9 makefile: do more generic wildcard so as to avoid rename issues
20f48d8 crypto: use BIT(i) & bitmap instead of (bitmap >> i) & 1
b6e09f6 crypto: disable broken implementations in selftests
fd50f77 compat: clang cannot handle __builtin_constant_p
bddaca7 compat: make asm/simd.h conditional on its existence
b4ba33e compat: account for ancient ARM assembler

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-09 09:11:58 +01:00
Hans Dedecker
16c712501c e2fsprogs: fix glibc compile issue (FS#1749,FS#1796)
Fixes the following build error:

.../toolchain-i386_pentium4_gcc-7.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/7.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: ../lib/libcom_err.so: undefined reference to `sem_post’
.../toolchain-i386_pentium4_gcc-7.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/7.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: ../lib/libcom_err.so: undefined reference to `sem_wait'
.../toolchain-i386_pentium4_gcc-7.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/7.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: ../lib/libcom_err.so: undefined reference to `sem_init’
.../toolchain-i386_pentium4_gcc-7.3.0_glibc/lib/gcc/i486-openwrt-linux-gnu/7.3.0/../../../../i486-openwrt-linux-gnu/bin/ld: ../lib/libcom_err.so: undefined reference to `sem_destroy’

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-08 17:24:23 +02:00
Stijn Tintel
b134b3299c Revert "kernel: add a RPS balancer"
This reverts commit 7af1fb9faa.

With the RPS balancer patch, both my APU2s are crashing, sometimes just
after a few minutes of uptime.

[ 6241.170132] BUG: unable to handle kernel paging request at ffffffffa20a75a8
[ 6241.177248] IP: get_rps_cpu+0x41c/0x440
[ 6241.181140] PGD 2012067 P4D 2012067 PUD 2013063 PMD 0
[ 6241.186370] Oops: 0000 [#1] SMP NOPTI
[ 6241.190080] Modules linked in: pppoe ppp_async pptp pppox ppp_mppe ppp_generic nf_nat_pptp nf_flow_table_ipv6 nf_flow_table_ipv4 nf_flow_table_inet nf_conntrack_pptp lzo iptable_nat ipt_REJECT ipt_MASQUERADE ftdi_sio xt_time xt_tcpudp xt_tcpmss xt_string xt_statistic xt_state xt_recent xt_quota xt_policy xt_pkttype xt_owner xt_nat xt_multiport xt_mark xt_mac xt_limit xt_length xt_hl xt_helper xt_esp xt_ecn xt_dscp xt_conntrack xt_connmark xt_connlimit xt_connbytes xt_comment xt_bpf xt_addrtype xt_TCPMSS xt_REDIRECT xt_NFQUEUE xt_LOG xt_HL xt_FLOWOFFLOAD xt_DSCP xt_CT xt_CLASSIFY wireguard usbserial ts_fsm ts_bm spidev slhc rfcomm nft_set_rbtree nft_set_hash nft_reject_ipv6 nft_reject_ipv4 nft_reject_inet nft_reject nft_redir_ipv4 nft_redir nft_quota nft_numgen nft_nat nft_meta nft_masq_ipv4 nft_masq
[ 6241.261735]  nft_log nft_limit nft_flow_offload nft_exthdr nft_ct nft_counter nft_chain_route_ipv6 nft_chain_route_ipv4 nft_chain_nat_ipv4 nfnetlink_queue nf_tables_ipv6 nf_tables_ipv4 nf_tables_inet nf_tables nf_reject_ipv4 nf_nat_tftp nf_nat_snmp_basic nf_nat_sip nf_nat_redirect nf_nat_proto_gre nf_nat_masquerade_ipv6 nf_nat_masquerade_ipv4 nf_nat_irc nf_conntrack_ipv6 nf_nat_ipv6 nf_conntrack_ipv4 nf_nat_ipv4 nf_nat_h323 nf_nat_ftp nf_nat_amanda nf_nat nf_log_ipv4 nf_flow_table_hw nf_flow_table nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_tftp nf_conntrack_snmp nf_conntrack_sip nf_conntrack_rtcache nf_conntrack_proto_gre nf_conntrack_netlink nf_conntrack_irc nf_conntrack_h323 nf_conntrack_ftp nf_conntrack_broadcast ts_kmp nf_conntrack_amanda macvlan lzo_decompress lzo_compress libcrc32c kvm irqbypass
[ 6241.333427]  iptable_raw iptable_mangle iptable_filter ipt_ah ipt_ECN ip_tables hidp hci_uart crc_ccitt cdc_acm btusb btintel br_netfilter bnep bluetooth sch_cake tcp_bbr sch_teql em_nbyte sch_codel sch_prio sch_pie act_ipt em_meta sch_gred sch_dsmark cls_basic em_cmp em_text act_police sch_sfq sch_fq sch_multiq sch_red act_connmark nf_conntrack act_skbedit act_mirred em_u32 cls_u32 cls_tcindex cls_flow cls_route cls_fw sch_tbf sch_htb sch_hfsc sch_ingress configs evdev i2c_piix4 kfifo_buf industrialio i2c_dev xt_set ip_set_list_set ip_set_hash_netiface ip_set_hash_netport ip_set_hash_netnet ip_set_hash_net ip_set_hash_netportnet ip_set_hash_mac ip_set_hash_ipportnet ip_set_hash_ipportip ip_set_hash_ipport ip_set_hash_ipmark ip_set_hash_ip ip_set_bitmap_port ip_set_bitmap_ipmac ip_set_bitmap_ip ip_set
[ 6241.405252]  nfnetlink ip6t_REJECT nf_reject_ipv6 nf_log_ipv6 nf_log_common ip6table_mangle ip6table_filter ip6_tables x_tables ip_gre gre igb i2c_algo_bit ifb ip6_vti ip_vti sit l2tp_netlink l2tp_core ipcomp6 xfrm6_tunnel xfrm6_mode_tunnel xfrm6_mode_transport xfrm6_mode_beet esp6 ah6 ipcomp xfrm4_tunnel xfrm4_mode_tunnel xfrm4_mode_transport xfrm4_mode_beet esp4 ah4 ip6_tunnel tunnel6 tunnel4 ip_tunnel veth snd_compress snd_pcm_oss snd_mixer_oss snd_pcm snd_timer snd_rawmidi snd_seq_device snd_hwdep snd soundcore mpls_gso mpls_iptunnel mpls_router af_key xfrm_user xfrm_ipcomp xfrm_algo br2684 atm regmap_mmio vxlan udp_tunnel ip6_udp_tunnel ecdh_generic sha512_ssse3 sha512_generic sha256_ssse3 sha1_ssse3 seqiv jitterentropy_rng drbg md5 kpp ccp_crypto rsa_generic mpi asn1_decoder akcipher ccp sha256_generic
[ 6241.477726]  sha1_generic hmac ghash_generic gcm echainiv des_generic deflate zlib_deflate ctr cmac ccm cbc authenc crypto_acompress sdhci_pltfm pf_ring sp5100_tco leds_apu2 gpio_nct5104d button_hotplug ptp pps_core
[ 6241.497122] CPU: 3 PID: 0 Comm: swapper/3 Not tainted 4.14.73 #0
[ 6241.503198] Hardware name: PC Engines apu2/apu2, BIOS v4.8.0.2 20180705
[ 6241.509858] task: ffff88012a0d8000 task.stack: ffffc90000070000
[ 6241.515841] RIP: 0010:get_rps_cpu+0x41c/0x440
[ 6241.520246] RSP: 0018:ffff88012ed83db0 EFLAGS: 00010286
[ 6241.525511] RAX: 00000000ffffffff RBX: 0000000000011ae8 RCX: 0000000000000001
[ 6241.532737] RDX: 00000000ffffffff RSI: ffff88012a0d8788 RDI: 0000000000000282
[ 6241.539956] RBP: ffff88012ed83e00 R08: 0000000000000001 R09: 0000000000000000
[ 6241.547183] R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff82dae2e0
[ 6241.554403] R13: ffff880124de4480 R14: 0000000000000000 R15: ffff880128120000
[ 6241.561625] FS:  0000000000000000(0000) GS:ffff88012ed80000(0000) knlGS:0000000000000000
[ 6241.569820] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 6241.575651] CR2: ffffffffa20a75a8 CR3: 00000001251da000 CR4: 00000000000406e0
[ 6241.582830] Call Trace:
[ 6241.585322]  <IRQ>
[ 6241.587372]  ? lock_acquire+0x59/0x80
[ 6241.591102]  netif_receive_skb_internal+0x1e4/0x2d0
[ 6241.596037]  napi_gro_receive+0x48/0x90
[ 6241.599948]  igb_alloc_rx_buffers+0xc97/0x1b60 [igb]
[ 6241.604981]  ? note_gp_changes+0x76/0xc0
[ 6241.608963]  net_rx_action+0x10c/0x280
[ 6241.612752]  __do_softirq+0xf0/0x22d
[ 6241.616375]  irq_exit+0x5e/0xa0
[ 6241.619573]  do_IRQ+0xee/0x110
[ 6241.622682]  common_interrupt+0x8b/0x8b
[ 6241.626556]  </IRQ>
[ 6241.628699] RIP: 0010:native_safe_halt+0x6/0x10
[ 6241.633260] RSP: 0018:ffffc90000073e10 EFLAGS: 00000202 ORIG_RAX: ffffffffffffff3d
[ 6241.640910] RAX: ffff88012a0d8000 RBX: ffff88012a190c00 RCX: 0000000000000000
[ 6241.648110] RDX: ffff88012a0d8000 RSI: 0000000000000001 RDI: ffff88012a0d8000
[ 6241.655354] RBP: ffffc90000073e10 R08: 0000000000000006 R09: 0000000000000000
[ 6241.662554] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88012a190c64
[ 6241.669791] R13: 0000000000000001 R14: 0000000000000001 R15: 0000000000000001
[ 6241.676986]  acpi_safe_halt.part.9+0xe/0x20
[ 6241.681226]  acpi_idle_do_entry+0x2c/0x40
[ 6241.685325]  acpi_idle_enter+0x1ee/0x2b0
[ 6241.689298]  ? sched_clock+0x9/0x10
[ 6241.692839]  cpuidle_enter_state+0x1f2/0x230
[ 6241.697162]  cpuidle_enter+0x12/0x20
[ 6241.700803]  call_cpuidle+0x38/0x40
[ 6241.704335]  do_idle+0xed/0x160
[ 6241.707557]  cpu_startup_entry+0x6e/0x70
[ 6241.711557]  start_secondary+0x1b4/0x1d0
[ 6241.715536]  secondary_startup_64+0xa5/0xb0
[ 6241.719777] Code: d4 48 8d 04 9b 48 8b 35 53 a7 ac 00 48 8d 1c 43 48 83 c6 64 48 c1 e3 03 48 8d bb e8 e2 da 82 e8 cb a9 ba ff 41 8b 14 1c 48 89 d0 <48> 0f a3 15 dc dc b6 00 0f 83 46 fc ff ff 48 83 c4 28 5b 41 5c
[ 6241.739100] RIP: get_rps_cpu+0x41c/0x440 RSP: ffff88012ed83db0
[ 6241.744993] CR2: ffffffffa20a75a8
[ 6241.748373] ---[ end trace 77367d9f9830d5bc ]---

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-10-08 11:03:23 +03:00
Julian Haupt
0308385d1d sunxi: add support for Orange Pi Zero
Signed-off-by: Julian Haupt <julian.haupt@hauptmedia.de>
2018-10-07 22:16:10 +02:00
Hauke Mehrtens
5933958168 image: ignore usign build errors
The tl-wa850re-v2 images from the ar71xx/tiny target are getting too big
with the default packages. The size check is done before the meta data
is added so there is no file to add meta data to or to sign. Originally
errors in Build/append-metadata were getting ignored, but if the signing
fails the error is not ignored.
This adds a check if the file to be signed is there and only does the
signing if it is there. This way it does not fail if the package
creation was already aborted earlier.

Fixes: 848b455d2e ("image: use ucert to append signature")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-07 22:14:35 +02:00
Rosy Song
0fa1dd71cc fstools: filter unknown action in mount.hotplug script
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-10-07 21:34:13 +02:00
Hans Dedecker
ec9576607d busybox: fix IPv6 dependency
Commit 9f0cb135dd made BUSYBOX_CONFIG_FEATURE_IPV6 dependant on IPV6 but
did not make its default value BUSYBOX_DEFAULT_FEATURE_IPV6 dependant
on IPV6. BUSYBOX_DEFAULT_FEATURE_IPV6 will have as default value y if
IPV6 is enabled otherwise n.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-07 20:46:51 +02:00
Kevin Darbyshire-Bryant
30cc5b0bf4 dnsmasq: bump to v2.80test8
e1791f3 Fix logging of DNSSEC queries in TCP mode. Destination server address was misleading.
0fdf3c1 Fix dhcp-match-name to match hostname, not complete FQDN.
ee1df06 Tweak strategy for confirming SLAAC addresses.
1e87eba Clarify manpage for --auth-sec-servers
0893347 Make interface spec optional in --auth-server.
7cbf497 Example config file fix for CERT Vulnerability VU#598349.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-07 16:42:12 +01:00
Hans Dedecker
329f2d5457 nghttp2: bump to 1.34.0
2b085815 (tag: v1.34.0) Update manual pages
986fa302 Bump up version number to 1.34.0, LT revision to 31:1:17
7c8cb3a0 nghttpx: Improve CONNECT response status handling
334c439c Fix bug that regular CONNECT does not work
6700626c Rule out content-length in the successful response to CONNECT
15162add Update manual pages
93270777 Merge pull request #1235 from nghttp2/backend-conn-timeout
aeb92bbb nghttpx: Add read/write-timeout parameters to backend option
fc7489e0 nghttpx: Fix mruby parameter validation
87ac872f nghttpx: Update doc
c278adde nghttpx: Log error when mruby file cannot be opened
f94d7209 Merge pull request #1234 from nghttp2/nghttpx-rfc8441
9b9baa6b Update doc
02566ee3 nghttpx: Update doc
3002f31b src: Add debug output for SETTINGS_ENABLE_CONNECT_PROTOCOL
d2a594a7 nghttpx: Implement RFC 8441 Bootstrapping WebSocket with HTTP/2
651e1477 Allow client sending :protocol optimistically
a42faf1c nghttpx: Write TLS alert during handshake
4aac05e1 Merge pull request #1231 from nghttp2/ws-lib-only
b80dfaa8 Adjustment for RFC 8441
a19d8f5d Deal with :protocol pseudo header
33f6e90a Add NGHTTP2_TOKEN__PROTOCOL
ed7fabcb Add SETTINGS_ENABLE_CONNECT_PROTOCOL
8753b6da Update doc
f2de733b Update neverbleed to fix OpenSSL 1.1.1 issues
88ff8c69 Update mruby 1.4.1
a63558a1 nghttpx: Call OCSP_response_get1_basic only when OCSP status is successful
3575a132 nghttpx: Fix crash with plain text HTTP
e2de2fee Update bash_completion
9f415979 Update manual pages
4bfc0cd1 Merge pull request #1230 from nghttp2/nghttpx-faster-logging
9c824b87 nghttpx: Get rid of std::stringstream from Log
a1ea1696 Make VALID_HD_NAME_CHARS and VALID_HD_VALUE_CHARS const qualified
dfc0f248 Make static_table const qualified
ed7c9db2 nghttpx: Add mruby env.tls_handshake_finished
5b42815a nghttpx: Strip incoming Early-Data header field by default
cfe7fa9a nghttpx: Add --tls13-ciphers and --tls-client-ciphers options
cb8a9d58 src: Remove TLSv1.3 ciphers from DEFAULT_CIPHER_LIST
023b9448 Merge branch 'tls13-early-data'
9b03c64f nghttpx: Should postpone early data by default
b8eccec6 nghttpx: Disable OpenSSL anti-replay
9f212587 Specify SSL_CTX_set_max_early_data and add an option to change max value
47f60124 nghttpx: Add an option to postpone early data processing
770e44de Implement draft-ietf-httpbis-replay-02
2ab319c1 Don't hide error code from openssl
39923024 Remove SSL_ERROR_WANT_WRITE handling
b30f312a Honor SSL_read semantics
c5cdb78a nghttpx: Add TLSv1.3 0-RTT early data support
f79a5812 Bump up version number to 1.34.0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-07 17:39:05 +02:00
David Bauer
35c314bdb2 ath79: add Fritz!Box 4020 switchconfig
In contrast to ar71xx, uci switchconfig is missing in the ath79 target.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-10-07 17:26:30 +02:00
Rafał Miłecki
87cd118794 iperf: fix --daemon option
Support for -D got broken in the 2.0.11 release by the upstream commit
218d8c667944 ("first pass L2 mode w/UDP checks, v4 only"). After that
commit clients were still able to connect but no traffic was passed.
It was reported and is fixed now in the upstream git repository.

Backport two patches to fix this. The first one is just a requirement
for the later to apply. The second one is the real fix and it needed
only a small adjustment to apply without backporing the commit
10887b59c7e7 ("fix --txstart-time report messages").

Fixes: 457e6d5a27 ("iperf: bump to 2.0.12")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-10-07 17:13:39 +02:00
David Bauer
5815bb2e41 ath79: add support for TP-Link TL-WA901ND v2
This commit adds support for the TP-Link TL-WR901ND v2 access point.

CPU:   Atheros AR9132 400MHz
RAM:   32MB
FLASH: 4MiB
WiFi:  Atheros AR9103 3x3:2 bgn
LED:   Power (static on)
       LAN (controlled by PHY)
       SYS, WiFi, QSS toggleable
BTN:   Reset, QSS

Installation:
Upload the factory image via the vendor-GUI.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-10-07 15:49:25 +02:00
INAGAKI Hiroshi
6d1abbcab4 ath79: add support for Buffalo WZR-HP-G302H A1A0
Buffalo WZR-HP-G302H is a 2T2R 2.4 GHz 11n router, based on Atheros
AR7242.

It is Japanese market model of WZR-HP-G300NH2, but there are some
diffrences. This commit is based on WZR-HP-G300NH2 in ar71xx.
And, G302H has several hardware versions and hardware is different
dependent on the versions. This commit adds support for "A1A0"
version.

Specification:

- Atheros AR7242
- 64 MB of RAM (DDR2)
- 32 MB of Flash
  - 2x 16 MB SPI-NOR flash
- 2.4 GHz 2T2R wifi
  - Atheros AR9283
- 5x 10/100/1000 Mbps Ethernet
  - Atheros AR8316
- 7x LEDs, 5x keys
  - LED: 1x gpio-leds, 6x ath9k-leds
  - key: 3x buttons, 2x slide switches
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - 115200n8

Flash instruction using factory image:

1. Boot WZR-HP-G302H normaly and connect the computer to its LAN port
2. Access to "http://192.168.11.1/" and move to firmware update page
("ファーム更新")
3. Select the OpenWrt factory image and click update ("更新実行")
button to perform firmware update
4. Wait ~200 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-10-07 15:44:19 +02:00
INAGAKI Hiroshi
d745eac636 ath79: add hwver parameter to buffalo-tag
In order to be able to set the value of "hardware version" other than
"3", I added the "hwver" parameter.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-10-07 15:44:19 +02:00
Robert Marko
adbd9d1f1f ath79: Add support for TP-Link TL-WR842N-v2
This PR adds support for TP-Link TL-WR842N-v2 router which is supported by ar71xx to ath79.

This is a low cost model with following specs:

CPU: Atheros AR9341 SoC
RAM: 32 MB DDR1
Flash: 8 MB NOR SPI
Switch: Internal AR9341 5 port 10/100 Mbit
Ports:  5x 10/100 Mbit(1x WAN, 4x LAN)
USB: 1x USB2.0
WLAN: 2.4 GHZ AR9341

Installation:

Simply flash the factory image through stock firmware WEB UI.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-10-07 15:44:19 +02:00
Sven Eckelmann
ebd57de1f9 ipq40xx: Create /var/lock directory in platform_do_upgrade_*
The sysupgrade_pre_upgrade hook was removed with 5e1b4c57de ("base-files:
drop fwtool_pre_upgrade") while there were still scripts using it:

* target/linux/ar71xx/base-files/lib/upgrade/allnet.sh
* target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh
* target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh

Not running the hooks can either prevent a successful upgrade or brick the
device because the fw_setenv program cannot be started correctly.

Instead of adding this hook again, the directory /var/lock for fw_setenv
can also just be created directly before fw_setenv is called.

Fixes: 5e1b4c57de ("base-files: drop fwtool_pre_upgrade")
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-10-07 15:44:19 +02:00
Sven Eckelmann
c383e0c979 ar71xx: Create /var/lock directory in platform_do_upgrade_*
The sysupgrade_pre_upgrade hook was removed with 5e1b4c57de ("base-files:
drop fwtool_pre_upgrade") while there were still scripts using it:

* target/linux/ar71xx/base-files/lib/upgrade/allnet.sh
* target/linux/ar71xx/base-files/lib/upgrade/openmesh.sh
* target/linux/ipq40xx/base-files/lib/upgrade/openmesh.sh

Not running the hooks can either prevent a successful upgrade or brick the
device because the fw_setenv program cannot be started correctly.

Instead of adding this hook again, the directory /var/lock for fw_setenv
can also just be created directly before fw_setenv is called.

Fixes: 5e1b4c57de ("base-files: drop fwtool_pre_upgrade")
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-10-07 15:44:19 +02:00
Sven Eckelmann
11d51276b1 ar71xx: Use sysupgrade's RAMFS_COPY_* for fw_(set|print)env
The install_bin from /lib/upgrade/common.sh is no longer creating the
symlinks when a secondary parameter is added. But the fw_setenv program was
always copied this way to the ramdisk for the upgrade.

Instead, this should be done using RAMFS_COPY_* like on all other
platforms.

Fixes: 438dcbfe74 ("base-files: automatically handle paths and symlinks for RAMFS_COPY_BIN")
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-10-07 15:44:19 +02:00
Mathias Kresin
b09992a7d9 ath79: fix build warning
The image build code for the Ubiquiti Nanostation AC series adds the
factory image as to be build image. The same is already done by an
included recipe which results into an expanded IMAGE variable of:

  IMAGES = sysupgrade.bin factory.bin factory.bin

The build system doesn't like these duplicates and issues the following
warning:

  Makefile:82: warning: overriding recipe for target...

Get remove the duplicate factory image to get rid of the warning.

Fixes: 5736af8024 ("ath79: Add support for Ubiquiti NanoStation AC loco")
       fa3c2676ab ("ath79: Add support for Ubiquiti Nanostation AC")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 15:44:19 +02:00
Hans Dedecker
af78e90d4c odhcpd: update to latest git HEAD (FS#1853)
57f639e (HEAD -> master, origin/master, origin/HEAD) odhcpd: make DHCPv6/RA/NDP support optional
402c274 dhcpv6: check return code of dhcpv6_ia_init()
ee7472a router: don't leak RA message in relay mode (FS#1853)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-07 15:11:36 +02:00
Felix Fietkau
518fb345e1 iw: strip a few more non-essential features from iw-tiny
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-07 12:45:41 +02:00
Felix Fietkau
7999282f7f iw: fix filtering linked object files for iw-tiny
It was broken by the recent commit that added iw-full

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-07 12:45:41 +02:00
Mathias Kresin
b07b3ddaad ramips: don't hijack the status led
Don't hijack the status led to indicate the wireless state. If we don't
have a dedicated wireless led, it's as simply as the wireless status
can't be indicated.

Such a led misuse should be set by the user and not shipped by default.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:35:03 +02:00
Mathias Kresin
c074239c79 ramips: move status led unset to devicetree
Release the led used for boot status indication via devicetree instead
of setting a default off trigger in userspace.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:34:18 +02:00
Mathias Kresin
8f4dfadd5a ramips: add support for indicating the boot state using multiple leds
Use diag.sh version used for other targets supporting different leds
for the different boot states.

The existing led sequences should be the same as before.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:34:18 +02:00
Mathias Kresin
772b27c207 ramips: set F5D8235 v1 usb led trigger via devicetree
Assign the usbdev trigger via devicetree and drop the userspace
handling of the usb leds.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:34:18 +02:00
Mathias Kresin
04eab0a1c9 ramips: set rt2880 pci controller of_node
Set the PCI controller of_node such that PCI devices can be
instantiated via device tree.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:34:18 +02:00
Mathias Kresin
a58535771f ramips: set usb led trigger via devicetree
Assign the usbdev trigger via devicetree for all subtargets and drop
the userspace handling of the usb leds.

With the change all usb ports are triggering the usb led instead of
only usb 1.1 XOR usb 2.0 XOR usb 3.0 as it was before.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-10-07 11:34:18 +02:00
Tobias Schramm
fa3c2676ab ath79: Add support for Ubiquiti Nanostation AC
5 GHz AC wireless outdoor PoE CPE with internal 2.4 GHz management radio

CPU:    Atheros AR9342 SoC
RAM:    64 MB DDR2
Flash:  16 MB NOR SPI
Switch: QCA8334
Ports:  2 GbE ports (1x PoE in, 1x PoE passthrough)
WLAN:   5 GHz QCA899X (PCI) and 2.4 GHZ AR9342

Successor to the old NanoStation M5 with AC wireless.

The integrated QCA899X is a Ubiquiti branded part with modified vendor and
product id (0777:11ac9).

Serial

Serial settings: 115200, 8N1

* = plated through hole
0 = nylon screw

      [Top of device]
+--------------------------+
|    [label]               |
|  0                       |
|                    0     |
|         [ubnt]           |
|         [logo]  3V3  *   |
|                  TX  *   |
|                  RX  *   |
|                 GND  *   |
|                          |
|                      *   |
|                      *   |
|                      *   |
|                      *   |
|    0                     |
|                 0        |
|                          |
|                          |

Installation

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

Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-10-07 10:46:20 +02:00
Tobias Schramm
5736af8024 ath79: Add support for Ubiquiti NanoStation AC loco
Atheros AR9342, 16 MB flash, 64 MB RAM

Successor to the old NanoStation M5 loco with AC wireless.

Includes a mac80211 patch for ath10k_pci because Ubiquiti uses a Ubiquiti
branded and customized QCA988X with vendor id 0777 and device id 11ac for
AC wireless.

Installation

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

Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-10-07 10:46:20 +02:00
Tobias Schramm
bc5761f90b ath79: Add generic device tree for Ubiquiti WA boards
Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-10-07 10:46:20 +02:00
Tobias Schramm
8f697e406a mkfwimage: Add image type definition for WA images
This patch adds a new type of ubiquiti image, the WA image. First seen
on the NanoStation AC loco the generic name implies that we will see
this type of image on more ubiquiti devices thus it makes sense to
implement it in mkfwimage.

The main difference is that WA images are signed. The "END" header has
been replaced by a "ENDS" header followed by a 2048 bit RSA signature.
This signature is not being generated by mkfwimage and filled with 0x00.

Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-10-07 10:46:20 +02:00
INAGAKI Hiroshi
4b9882eb92 ath79: fix MAC address for Buffalo BHR-4GRV
I added mtd-mac-address for WZR-HP-G450H and BHR-4GRV in
1df1ea4d7e, but that address in ART is
incorrect for BHR-4GRV.

WZR-HP-G450H has wlan eeprom and MAC address in ART, but BHR-4GRV
has only MAC address in ART.

- WZR-HP-G450H
  - eeprom: 0x1000
  - MAC:    0x1002

- BHR-4GRV
  - MAC:    0x0

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-10-07 10:46:20 +02:00
Hauke Mehrtens
90bb790fbf intel-microcode: update to version 20180807a
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-10-07 02:12:06 +02:00
Thomas Nixon
6b729e1563 uboot-lantiq: fix compile with modern host dtc
In dtc version 1.4.6 the macro names in header include guards changed,
but the build relies on them matching in order to replace selected
headers. This is a horrible hack to work around this.

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
2018-10-07 02:12:06 +02:00
Ansuel Smith
43e71e0416 uboot-envtools: adds r7800 uboot env support
This fix and adds support for r7800 uboot env

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-10-07 02:12:06 +02:00
Rene Kjellerup
53be2d2a4e bcm53xx: added basic dts for linksys ea6500v2
only thing not working is the b43 5GHz wifi band as upstream
kernel
doesn't supporthe 0x4360 chip so far

Signed-off-by: Rene Kjellerup <rk.katana.steel@gmail.com>
2018-10-07 02:12:06 +02:00
Daniel Engberg
6e6e7adc8c mac80211: Use @KERNEL alias instead of hardlink
Use @KERNEL alias provided by toolchain instead of relying on a specific site.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
fface27db8 binutils: Use 2.31.1 by default
Set binutils 2.31.1 as default

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
754a08e8d9 toolchain/binutils: Fix u-boot on some armhf platforms
Backport commit 3d9c8f6b3f033a6092425b7344647fb51dbed5c6
Without this binutils doesn't properly link u-boot

Source:
https://sourceware.org/bugzilla/show_bug.cgi?id=23571

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
f6159c1e37 tools/cmake: Update to 3.12.3
Update CMake to 3.12.3

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
9efd0cb403 tools/bison: Update to 3.1
Update bison to 3.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
969d052e96 toolchain/fortify-headers: Update to 1.0
Update fortify-headers to 1.0

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
6bdc6cdd04 tools/libressl: Update to 2.8.1
Update libressl to 2.8.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Daniel Engberg
7808ba86ea tools/mtools: Update to 4.0.19
Update mtools to 4.0.19

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-10-07 02:10:15 +02:00
Hans Dedecker
f771a1b962 ubus: update to latest git HEAD
221ce7e ubusd_acl: event send access list support
da503db ubusd_acl: event listen access list support
c035bab ubusd_acl: rework wildcard support
73bd847 ubusd_event: move strmatch_len to ubus_common.h
0327a91 ubus/lua: add support for BLOBMSG_TYPE_DOUBLE

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-06 21:26:34 +02:00
Jason A. Donenfeld
b665856450 wireguard: bump to 0.0.20181006
* Account for big-endian 2^26 conversion in Poly1305.
  * Account for big-endian NEON in Curve25519.
  * Fix macros in big-endian AArch64 code so that this will actually run there
    at all.
  * Prefer if (IS_ENABLED(...)) over ifdef mazes when possible.
  * Call simd_relax() within any preempt-disabling glue code every once in a
    while so as not to increase latency if folks pass in super long buffers.
  * Prefer compiler-defined architecture macros in assembly code, which puts us
    in closer alignment with upstream CRYPTOGAMS code, and is cleaner.
  * Non-static symbols are prefixed with wg_ to avoid polluting the global
    namespace.
  * Return a bool from simd_relax() indicating whether or not we were
    rescheduled.
  * Reflect the proper simd conditions on arm.
  * Do not reorder lines in Kbuild files for the simd asm-generic addition,
    since we don't want to cause merge conflicts.
  * WARN() if the selftests fail in Zinc, since if this is an initcall, it won't
    block module loading, so we want to be loud.
  * Document some interdependencies beside include statements.
  * Add missing static statement to fpu init functions.
  * Use union in chacha to access state words as a flat matrix, instead of
    casting a struct to a u8 and hoping all goes well. Then, by passing around
    that array as a struct for as long as possible, we can update counter[0]
    instead of state[12] in the generic blocks, which makes it clearer what's
    happening.
  * Remove __aligned(32) for chacha20_ctx since we no longer use vmovdqa on x86,
    and the other implementations do not require that kind of alignment either.
  * Submit patch to ARM tree for adjusting RiscPC's cflags to be -march=armv3 so
    that we can build code that uses umull.
  * Allow CONFIG_ARM[64] to imply [!]CONFIG_64BIT, and use zinc arch config
    variables consistently throughout.
  * Document rationale for the 2^26->2^64/32 conversion in code comments.
  * Convert all of remaining BUG_ON to WARN_ON.
  * Replace `bxeq lr` with `reteq lr` in ARM assembler to be compatible with old
    ISAs via the macro in <asm/assembler.h>.
  * Do not allow WireGuard to be a built-in if IPv6 is a module.
  * Writeback the base register and reorder multiplications in the NEON x25519
    implementation.
  * Try all combinations of different implementations in selftests, so that
    potential bugs are more immediately unearthed.
  * Self tests and SIMD glue code work with #include, which lets the compiler
    optimize these. Previously these files were .h, because they were included,
    but a simple grep of the kernel tree shows 259 other files that carry out
    this same pattern. Only they prefer to instead name the files with a .c
    instead of a .h, so we now follow the convention.
  * Support many more platforms in QEMU, especially big endian ones.
  * Kernels < 3.17 don't have read_cpuid_part, so fix building there.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-10-06 20:49:11 +02:00
Felix Fietkau
ffe824e912 mt76: fix dependencies
- make kmod-mt76-core hidden
- select kmod-mt76-core and kmod-usb-core from mt76-usb

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 14:26:32 +02:00
Felix Fietkau
d51cbefe86 mt76: update to the latest version
053de5c mt76x0: pci: add mt76x0e_cleanup routine
c6b1926 mt76x2: move mt76x2 source files to mt76x2 folder
6afb1b8 mt76: fix header guard macro define names
05c7f24 mt76: fix frag length allocation for usb
6856ef6 mt76: usb: fix hw initialization sequence
3d43146 mt76x0: usb: stop cal/mac workqueues at hw stop
bef08cc mt76: move mt76x02_tx_get_max_txpwr_adj in mt76x02_util.c
cd42111 mt76: add get_tx_txpwr_adj function pointer to mt76_driver_ops
c49a3ae mt76: move mt76x02_mac_write_txwi in mt76x02-lib module
4bae980 mt76: usb: use mt76x02u_tx_prepare_skb to fill txwi
e0847b4 mt76x0: init: remove unnecessary configurations
e802b5c mt76: move mt76x02_phy_get_min_avg_rssi in mt76x02_phy.c
2742847 mt76: move mt76x02_rx_get_sta and mt76x02_rx_get_sta_wcid in mt76x02_util.h
c26f9fd mt76x0: mac: use sta ewma estimation for rssi tracking
330fbe3 mt76x0: remove unused variable in mt76x0_dev
a56efc5 mt76x0: remove hw_atomic_mutex mutex in mt76x0_dev
abd1daa mt76x2: move mt76x2_dev in mt76x02_util.h
d5d1e59 mt76x0: merge mt76x0_dev in mt76x02_dev
e236ba5 mt76: move mt76x02_mac_process_rx in mt76x02-lib module
724d547 mt76: unify rxwi parsing between mt76x2 and mt76x0 drivers
ec3d829 mt76: move mt76x02_tx in mt76x02-lib module
159f767 mt76: move txrx shared routines in mt76x02_txrx.c
9c874cd mt76: rename mt76x02_util.h in mt76x02.h
fd9174f mt76x2: remove leftover function declatarions
608708a mt76: move tpc routines in mt76x02-lib module
45b8f5e mt76: move mt76x02_tx_prepare_skb in mt76x02_txrx.c
9a39521 mt76: usb: move mt76x02u_tx_complete_skb in mt76x02_usb_core.c
3770c54 mt76: move mt76x02_mac_poll_tx_status in mt76x02-lib moudle
9730290 mt76: move mt76x02_tx_complete in mt76x02-lib module
99e0486 mt76: use mt76x02_dev instead of mt76_dev in mt76x02_mmio.c
3d2cfe3 mt76: move tx_tasklet management in mt76x02-lib moudle
e61671e mt76: move irq handler in mt76x02-lib moudle
d533f13 mt76x0: pci: report firmware version using ethtool

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
8c647e873f iw: add iw-full package without size reduction hacks
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
502bcd93fe mac80211: move marvell packaging code to marvell.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
2804a7f13e mac80211: move intel packaging code to intel.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
1f14ac9a0c mac80211: move realtek packaging code to realtek.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
7f984dab1c mac80211: move broadcom packaging code to broadcom.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
bde8ddf1ad mac80211: move atheros/qca packaging code to ath.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
ece90fc9df mac80211: move rt2x00 packaging code to ralink.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
fe6606c7ba mac80211: remove duplicated lines for building packages, use PKG_DRIVERS instead
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Felix Fietkau
b7855230a3 build: insert blank line after KernelPackage template to allow chaining calls to it
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-06 13:02:29 +02:00
Alexander Couzens
6ef1c978ba package/lldp: don't link against libbsd on !USE_GLIBC builds
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-10-05 00:44:55 +02:00
Koen Vandeputte
3b53d6fdbc ar71xx: fix pci irq init on kernel 4.14
The IRQ init structs are marked as __initconst which
means this memory can be free after init.

On this platform, the PCI IRQ init happens very late _after_ the
kernel already freed the memory allocated for these structs.

During IRQ allocation, the allocation function is passed
with invalid data at this point leading to following error:

[    0.000000] SoC: Qualcomm Atheros QCA9533 ver 2 rev 0
[    2.382828] Freeing unused kernel memory: 264K
[   34.414816] pci 0000:00:00.0: no irq found for pin 1

and

[    0.000000] SoC: Qualcomm Atheros QCA956X ver 1 rev 0
[    2.125401] Freeing unused kernel memory: 284K
[    9.526479] pci 0000:00:00.0: no irq found for pin 1

After this patch:

[   14.960814] pci 0000:00:00.0: using irq 40 for pin 1

Commit 318e19ba67 ("ar71xx: add v4.14 support") fixed this for the
default targets already present in the source by default but forgot
to remove the __initconst attribute for targets QCA953x and QCA956x
which are only added later through platform patches.

Fixes: 318e19ba67 ("ar71xx: add v4.14 support")

Reported-by: Sven Schönhoff <sven.schoenhoff@gmail.com>
Reported-by: Dirk Brenken <dev@brenken.org>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Dirk Brenken <dev@brenken.org>
2018-10-04 16:15:24 +02:00
Koen Vandeputte
a2adeffffc kernel: bump 4.14 to 4.14.74
Refreshed all patches.

Fixes CVE:

- CVE-2018-7755

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-04 16:15:03 +02:00
Koen Vandeputte
0bcff6b0db kernel: bump 4.9 to 4.9.131
Refreshed all patches.

Fixes CVE:

- CVE-2018-10880
- CVE-2018-7755

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-04 16:15:03 +02:00
Syrone Wong
68f109609b ipset: update to 6.38
dropped already upstream patch

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-10-04 13:15:22 +02:00
Florian Fainelli
2cc821e7ed sunxi: Turn on CONFIG_SUN4I_A10_CCU for A20
CONFIG_SUN4I_A10_CCU controls both the A10 and the A20 enabling of the
CCU (LCCF) driver, this will be necessary once we move beyond kernel
4.14 because 4.15 has commit f18698e1c66338b902de386e4ad97b8b1b9d999d
("ARM: dts: sun7i: Convert to CCU") which requires this driver.

Fixes: ad2b3bf310 ("sunxi: Add support for kernel 4.14")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2018-10-02 20:54:01 -07:00
Kevin Darbyshire-Bryant
885052fbfb kmod-sched-cake: bump to 20181002
Revert "Add workaround for wrong skb->mac_len values after splitting GSO"

Remove our local patch which did the same thing.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-02 19:59:05 +01:00
Stijn Tintel
7378ca79b9 strace: add option to enable libdw stack tracing
Fixes build with CONFIG_libdw=y.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-10-02 19:57:33 +03:00
Koen Vandeputte
7bfe757bc4 kernel: bump 4.14 to 4.14.73
Refreshed all patches.

Removed upstreamed:
- 192-Revert-ubifs-xattr-Don-t-operate-on-deleted-inodes.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-02 13:44:36 +02:00
Koen Vandeputte
00f1dc55e8 kernel: bump 4.9 to 4.9.130
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-10-02 13:44:36 +02:00
Hans Dedecker
c8e2edfd9e netifd: update to latest git HEAD (FS#1875)
83428fa iprule: coding style fixes
aeec2a0 iprule: fix segfault (FS#1875)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-10-02 13:34:04 +02:00
Kevin Darbyshire-Bryant
b47614f9f1 kmod-sched-cake: don't gso fixup on fixed kernels
Kernels 4.14.73 & 4.9.140 include the gso fixup fix, so cake
doesn't need to do it.  Let's not waste cpu cycles by doing it in
cake which could be really important on cpu constrained devices.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-10-02 12:04:11 +01:00
Felix Fietkau
031c31ccdb mt76: update to the latest version, fixes mt76x2 beacon issue
94d4445 mt76: mt76x2: fix multi-interface beacon configuration

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-10-01 13:36:17 +02:00
Rosy Song
456df06071 odhcpd-ipv6only: fix dependency for IPV6
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-30 21:05:42 +02:00
Hans Dedecker
8e604dea31 netifd: update to latest git HEAD
94e156f scripts: fix previous commit
3c8ac1c netifd: fix wpa mixed mode matching

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-30 21:05:35 +02:00
Hauke Mehrtens
99e1a12fd0 kernel: Add missing config option for NFSDv4
This configuration option is not set when building the
layerscape/armv8_64b target.

Fixes: 92aa21497b ("kernel: build support for NFSv4 in nfsd")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 23:18:33 +02:00
Felix Fietkau
6bf3a86ed6 uml: update to linux 4.14
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
c3a0102195 build: fix kernel headers install for uml
The kernel headers makefile needs to override LINUX_KARCH

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
911cacfc35 x86: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
210531d8df omap: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
6ce13b87eb octeon: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
b7dfc59e63 malta: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
f445953d9f kirkwood: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
fd686dfca3 brcm47xx: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
b7dd438f66 armvirt: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Felix Fietkau
2ad995ccfe sunxi: remove linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 18:09:45 +02:00
Enrique Giraldo
61454a0a8c hostapd: add acs feature indication
Signed-off-by: Enrique Giraldo <enrique.giraldo@galgus.net>
2018-09-29 17:23:11 +02:00
W. Michael Petullo
92aa21497b kernel: build support for NFSv4 in nfsd
Signed-off-by: W. Michael Petullo <mike@flyn.org>
2018-09-29 17:23:11 +02:00
Amol Bhave
366e6ef5c3 build: use CMAKE_SOURCE_SUBDIR variable to cmake.mk
Sometimes, the CMakeLists.txt file is not in the root directory of a
repo. In those cases, the CMAKE_SOURCE_SUBDIR variable can be specified
to use CMakeLists.txt from a subdirectory instead.

Signed-off-by: Amol Bhave <ambhave@fb.com>
2018-09-29 17:23:11 +02:00
Emil Muratov
bbf46c9f8f zram-swap: bump pkg version
Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2018-09-29 17:23:11 +02:00
Emil Muratov
70d3ffb47f zram-swap: Add "max compression streams" configuration option
Config option to limit maximum compression streams per zram dev for
multicore CPU's. This could be defined via 'zram_comp_streams' option in
the 'system' section of '/etc/config/system' file or via cli (for e.x.
with 'uci set system.@System[0].zram_comp_streams=2 && uci commit
system'). Default is number of logical CPU cores.

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2018-09-29 17:23:11 +02:00
Emil Muratov
814cae7362 zram-swap: fix number of created zram devices for multicore CPU's
Use only one zram swap device of the specified $size instead of
[N x $size] devices for multicore CPUs Now zram module uses multiple
compression streams for each dev by default, so we do not need to create
several zram devs to utilize multicore CPUs.

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2018-09-29 17:23:11 +02:00
Emil Muratov
9edc1fe8ab zram-swap: fix zram dev reset for multicore cpu devices
* "zram stop" could reset up to $(num_of_cores) zram devices even if
   some of those were not mounted as swap dev's. This fix tries to
   enumerate mounted swap zram dev's before making a reset

 * remove hot-added zram devs on stop (except zram0)

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2018-09-29 17:23:11 +02:00
Emil Muratov
b9e89adfb7 zram-swap: compression algorithm configuration option
Compression algorithms for zram are provided by kernel crypto API, could
be any of [lzo|zl4|deflate|<some_more>] depending on kernel modules.
Compress algo for zram-swap could be defined via 'zram_comp_algo' option
in 'system' section of '/etc/config/system' file, or via cli (for e.x.
with 'uci set system.@System[0].zram_comp_algo=lz4 && uci commit
system'). check available algo's via 'cat /sys/block/zram0
/comp_algorithm'

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2018-09-29 17:23:11 +02:00
Mathew McBride
33f47c28c6 layerscape: fix Ethernet/DPAA/FMAN on Traverse boards after DTS refresh
Patch 303 is required for Traverse LS1043 targets when using the NXP DPAA1 driver.
The recent refresh of 4.9 patches on layerscape changed how FMan/BMan memory regions
were defined and meant Ethernet stopped working on these boards.

(Note that these definitions are only required for NXP's Ethernet driver, the new
upstream driver in >=4.15 works using the DTS provided in files/)

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-09-29 17:23:11 +02:00
Christian Lamparter
64756a9a30 apm821xx: net: emac: fix fixed-link setup for the RTL8363SB switch
On the Netgear WNDAP620, the emac ethernet isn't receiving nor
xmitting any frames from/to the RTL8363SB (identifies itself
as a RTL8367RB).

This is caused by hardware not knowing the right forced link
settings (speed, duplex, pause, etc.) settings.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-29 17:23:11 +02:00
Christian Lamparter
641dc50164 base-files: make it possible to specify switch led mode
The swconfig switch led driver has the ability to switch
between a "link, rx and/or tx" mode. However, this feature
was not implemented in uci, the led init script and
config_generate.

This patch adds a seventh parameter to the
ucidef_set_led_switch() function. The accepted values for
this parameter are: link, rx and tx.
Any permutations of these three values are supported, as
long as they are properly encased with quotes.
If the parameter is not specified it will default to "all"
(link rx tx).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-29 17:23:11 +02:00
Christian Lamparter
c417aee9f1 apm821xx: fix dtc compiler warnings for MX60(W) and MR24's dts files
This patch fixes some of the dtc warnings:

MR24:
"reg" property in [...]mdio/phy@1 has invalid length (4 bytes)
Node [...]button@1 has a unit name, but no reg property
Relying on default #address-cells value for [...]phy@1
Relying on default #size-cells value for [...]phy@1

MX60(W):
Node [..]nand/all has a reg or ranges property, but no unit name
Node [..]button@1 has a unit name, but no reg property

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-29 17:23:11 +02:00
Christian Lamparter
2a926b1a0a apm821xx: remove wd, mybooklive-duo leftovers
The unification of the My Book Live Single and duo image in
commit 9b47aa93c7 ("apm821xx: unify My Book Live Single + Duo images")
made the wd,mybooklive-duo obsolete in most places and can
be removed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-29 17:23:11 +02:00
Christian Lamparter
63a7cf6791 treewide: replace 'linux, stdout-path' with 'stdout-path'
This follows a similar upstream patch by Rob Herring:

|commit 78e5dfea84dc15d69940831b3981b3014d17222e
|Author: Rob Herring <robh@kernel.org>
|Date:   Wed Feb 28 16:44:06 2018 -0600
|    powerpc: dts: replace 'linux,stdout-path' with 'stdout-path'
|
|    'linux,stdout-path' has been deprecated for some time in favor of
|    'stdout-path'. Now dtc will warn on occurrences of 'linux,stdout-path'.
|    Search and replace all the of occurrences with 'stdout-path'.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-29 17:23:11 +02:00
Andre Heider
7b76219e15 sunxi: fix build without ext4 rootfs
The sdcard image generation uses CONFIG_TARGET_ROOTFS_PARTSIZE, which is
currently bound to TARGET_ROOTFS_EXT4FS on this target.

Since the rootfs is squashfs anyway, allow deselecting of the ext4fs
one.

Sort the target list alphabetically while here.

Signed-off-by: Andre Heider <a.heider@gmail.com>
2018-09-29 17:23:11 +02:00
Hauke Mehrtens
247ef4d98b sunxi: enable CONFIG_BPF_SYSCALL and CONFIG_EMBEDDED
This takes the options from the generic configuration

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 17:23:11 +02:00
Hauke Mehrtens
91a71804f8 kernel: Activate VDSO on MIPS again
The cache coloring problem on MIPS CPUs was fixed with kernel 4.9.129 of
the kernel 4.9 branch. Activate VDSO support for MIPS again.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 17:23:11 +02:00
Hauke Mehrtens
0214166b31 samsung: Remove unneeded config options
The samsung target deactivates some options which are activated in the
generic kernel configuration. This looks unnecessary to me, so remove
this. This also fixes build problem found by build bot, for example the
kmod-fs-nfs-v3 was not building, because CONFIG_NETWORK_FILESYSTEMS was
deactivated.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 17:23:11 +02:00
Hauke Mehrtens
3404c5978a samsung: Add missing dependencies to kmod-of-mdio
The samsung target builds of_mdio.ko as a module, add the needed
dependency to it.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-29 17:23:11 +02:00
Felix Fietkau
93db9a65da mac80211: fix management frame protection issue with mt76 (and possibly other drivers)
Software crypto wasn't working for management frames because the flag
indicating management frame crypto was missing

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 16:05:14 +02:00
Felix Fietkau
273594b37c mt76: update to latest, adds mt76x0u and mt76x2u support, fixes a mt7603 powersave issue
d220f43 Revert "mt76x2: reset HW before probe"
0853d79 Revert "mt76x2: add functions for setting extended MAC address registers"
8ba17b1 Revert "mt76: use a per rx queue page fragment cache"
3f0ac35 mt76x2: init: disable APCLI by default
38014de mt76x2: remove unnecessary break in mt76x2_mac_process_tx_rate()
fbf4791 mt76x2: fix TXD_INFO bitmask definition
d00c616 mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status()
0d42d22 mt76: introduce mt76_{incr,decr} utility routines
0f6379a mt76x2: dfs: add sw event ring buffer
df8071f mt76x2: dfs: add sw pattern detector
016df9c mt76x2: debugfs: add sw pulse statistics to dfs debugfs
a6915cb mt76: move MT_TXD_INFO, MT_MCU_MSG and MT_RX_FCE_INFO defs in dma.h
911e6aa mt76x2: move mt76x2_fw_header and mt76x2_patch_header definitions in mcu.h
c55d29b mt76x2: move utility routines in mt76x2.h
d08ea82 mt76x2: introduce mt76x2_init_device routine
6a1e809 mt76x2: move interface_modes definition in mt76x2_init
5aa0972 mt76x2: introduce mt76x2_mac_load_tx_status routine
730b86c mt76x2: add napi struct to mt76_rx_poll_complete/mt76_rx_complete signatures
1ab6cea mt76x2: add buffer len to mt76x2_mac_write_txwi signature
7ac6dac mt76: rename mt76_tx_queue_skb in mt76_dma_tx_queue_skb
66f3949 mt76: introduce tx_queue_skb function pointer in mt76_bus_ops
d099694 mt76: introduce mt76x2-common module
9bf1aa1 mt76: add mt76x2_tx_common to mt76x2-common module
29f960a mt76: add mt76x2_mac_common to mt76x2-common module
8f568ce mt76: add mt76x2_init_common to mt76x2-common module
61c4c61 mt76: add mt76x2_common to mt76x2-common module
264edbe mt76: add mt76x2_phy_common to mt76x2-common module
7625508 mt76: move mt76x2_debugfs in mt76-common module
99a3afa mt76: add usb support to mt76 layer
25b4598 mt76: add driver code for MT76x2u based devices
253c443 mt76x0: core files
6ed7bc2 mt76x0: mac files
a2c1068 mt76x0: usb files
c332481 mt76x0: mcu files
0d7d9ed mt76x0: phy files
5d50834 mt76x0: init files
c633654 mt76x0: eeprom files
18a9d4e mt76x0: trace and debugfs files
7395bba mt76x0: dma and tx files
08dec4c mt76x0: main file
5892efd mt76: add more states
e176af8 mt76: Kconfig and Makefile for mt76x0 driver
5c38d48 mt76x0: disable HW before probe
2f37f60 mt76x0: load firmware from mediatek subdir
1388140 mt76x0: rename mt76_* functions
1cb65d5 mt76x0: rename trace symbols
4fe2b16 mt76x0: correct type for eeprom gain value
560b643 mt76x0: perform mt76x0_mac_set_ampdu_factor
d1645aa mt76x0: Remove VLA usage
f8a0da4 mt76: Fix comparisons with invalid hardware key index
884eca5 mt76: unify wait_for_mac
fc636f0 mt76: rename mt76x2_regs.h
493feb9 mt76: merge mt76x0/regs.h into mt76x02_regs.h
a238099 mt76: create new mt76x02-lib module for common mt76x{0,2} code
55bceee mt76: unify mac_get_key_info
f6c19cf mt76: add helpers for register access with mt76_dev struct
34a95b8 mt76: unify mac_shared_key_setup
4286255 mt76: unify mt76x02_mac_wcid_set_key
732535e mt76: unify mac_wcid_setup
51b74ac mt76: use mac_wcid_set_drop in mt76x0
1b4a98f mt76x0: use mt76_wcid_free in mt76x0
fcf2130 mt76: unify mt76x02_vif struct
1f35eb5 mt76: unify sta structure part 1
086ea9f mt76: unify sta structure part 2
caff9a2 mt76x0: initalize custom tx queues
7362da7 mt76x0: use mt76x02_sta and mt76x02_tx_status
3a03aa1 mt76: move mt76_reg_pair definition in mt76.h
a853831 mt76: split __mt76u_mcu_send_msg and mt76u_mcu_send_msg routines
a80564f mt76: move mt76x2u_mcu_deinit routine in mt76-usb module
ac92496 mt76: add multiple regs read support to usb_mcu layer
8b0e08f mt76x0: use mt76u_init for bus initialization
ef32115 mt76x0: remove mt76x0_vendor_reset routine
949858f mt76x0: remove mt76x0_vendor_single_wr routine
21ecb9b mt76x0: remove mt76x0_mcu_msg_alloc routine
4cfeebb mt76x0: use shared mt76 usb mcu completion
2600712 mt76x0: remove mt76x0_complete_urb routine
0bd0fe8 mt76x0: remove mt76x0_vendor_request routine
f88bde2 mt76x0: remove unused mt76x0_wait_asic_ready routine
7eca333 mt76x0: use mt76u_mcu_send_msg utility routine to send fw cmds
8fedb79 mt76x0: remove unused mt76x0_mcu structure
e8fe4f3 mt76x0: use mt76u_mcu_fw_send_data for fw uploading
b9c46a8 mt76x0: remove unused routines for usb_buff alloc/free
ed3366d mt76: Enable NL80211_EXT_FEATURE_CQM_RSSI_LIST
9867146 mt76: verify evt type in usb mcu response
82a8c8a mt76: move wcid fields to common mt76_dev struct
f409c6b mt76: unify sta_add / sta_remove
d972ddd mt76: pratially unify add_interface
f8f5788 mt76x0: fix wrong usage of wcid_mask in remove_interface
380f89c mt76: unify ampdu_action
8c7098e mt76: unify set_key
2a20cfc mt76x0: remove empty sta_notify
a690333 mt76: unify AC to hw queue mapping
4453308 mt76: unify conf_tx
d9352cb mt76x0: remove vif_mask
196720e mt76: unify remove_interface
57c3e89 mt76: unify add_interface
91fce2f mt76: unify sta_rate_tbl_update and related helpers
3977f48 mt76: unify txwi and rxwi structures
41e0403 mt76: unify load_tx_status
4674502 mt76: unify send_tx_status and related helpers
02816b0 mt76: use mt76_rx_status in mt76x0
0a17b1e mt76: unify mac_process_rate
8aac175 mt76x0: reserve enough space in mac80211
81a655a mt76: unify {insert/remove}_hdr_pad
d8f7d2e mt76: partially unify filling txwi fields
3533718 mt76x2: change mt76x2_tx_complete routine signature
469aeb1 mt76: move mt76x2_tx_complete routine in mt76x02-lib module
87f138b mt76: move mt76x2u_remove_dma_hdr in mt76x02-lib module
c87a7e8 mt76: move mt76x2u_tx_complete_skb in mt76x02-lib moudule
b85e072 mt76: move mt76_qsel definition in dma.h
53b3c5a mt76: move mt76x2u_set_txinfo in mt76x02-lib module
34cec25 mt76x0: introduce mt76x0_tx_prepare_skb routine
6c5ac15 mt76: move mt76x2u_tx_status_data in mt76x02-lib module
0ba8261 mt76x0: init mt76_driver_ops callbacks
2615090 mt76x0: use mt76_alloc_device for device allocation
3c40eaf mt76x0: disable usb rx bulk aggregation
746edd7 mt76x0: mark device as running in mt76x0_start
dd77785 mt76x0: simplify mt76_mac_process_rx signature
3739601 mt76x0: add mt76x0_queue_rx_skb routine
062aaa8 mt76x0: unify tx/rx datapath with mt76x2u driver
85f171f mt76x0: stop stat workqueue at hw stop
8c68115 mt76x0: set max fragments size
ac02f5c mt76x0: remove unused dma.c source file
964df72 mt76x0: remove unused stat work_queue
afb34b8 mt76x0: remove unused {tx/rx}_queue definitions
a4fd791 mt76x0: remove unused mt76x0_tx_status routine
0e92ff6 mt76x0: remove unused endpoint definitions
8340e19 mt76x0: remove unused stat_work
bfbbf05 mt76x0: enable per-sta tx queueing
a8fcaa3 mt76x0: init hw capabilities
6a9b73c mt76x0: trim rx skb to proper length
aa0c279 mt76: remove unused MT76_MORE_STATS state
873d792 mt76x0: remove mt76x0_stop_hardware routine
246a216 mt76: move mt76 rate definitions in mt76x02-lib module
aae3fb8 mt76x0: alloc mcu buffers first in mt76x0_mcu_cmd_init
3c693a1 mt76x0: fix memory leak during hw probe
98faee1 mt76x0: move stop related routines in mt76x0_mac_stop
d07c02a mt76x0: move mt76x0_init_hardware in mt76x0_register_device
12c01f4 mt76x0: do not free/alloc buffers during suspend/resume
297cc34 mt76x0: remove has_{2,5}ghz fields of mt76x0_eeprom_params
2d77a9a mt76x0: use mt76_register_device for device registration
bb57912 mt76x0: inital split between pci and usb
3e241f3 mt76x0: remove unused mt76x0_wcid
a8c61c2 mt76x0: remove some usb specific code from mt76x0_register_device
e4a7387 mt76x0: make device allocation bus neutral
6da4642 mt76x0: run vco calibration for each channel configuration
1ac35da mt76: move mt76x0 and mt76x2 mcu shared defs in mt76x02_mcu.h
4d43674 mt76: add mt76_mcu_ops data structure for mcu related pointers
479b153 mt76: add usb implementation of {wr,rd}_rp
e525b01 mt76: add rd_rp and wr_rp to bus_ops/mcu_ops
f5590b0 mt76: usb: use common helpers for mcu_alloc_msg()/mcu_send_msg()
d2773ce mt76: usb: move mt76x02 mcu code in mt76x02-usb module
6337ffb mt76: usb: move mt76u_skb_dma_info in mt76x02_usb_core.c
5a79f17 mt76x02: move TXD/RXD/MCU definitions in mt76x02_dma.h
88ece32 mt76x02: add static qualifier to mt76x02_remove_dma_hdr
d63b72f mt76x0: remove unused mt76x0_burst_read_regs
0aef244 mt76x0: remove mt76x0_burst_write_regs()
14aaf87 mt76: usb: remove skb check in mt76x{0,2}u mcu routines
46ba81c mt76x2: use mt76_dev instead of mt76x2_dev in mt76x2_tx_queue_mcu
dbc4442 mt76x2: remove leftover mt76u_buf data structure in mt76x2_mcu
26909cd mt76: introduce mmio data structure in mt76_dev
425e7e0 mt76: move __iomem regs in mt76_mmio
28cfe61 mt76x2: use mt76_dev instead of mt76x2_dev in mt76x2_mcu_msg_send
a1e27de mt76x2: use common helpers for mcu_alloc_msg()/mcu_send_msg()
90b1eac mt76: unify firmware header between mt76x0 and mt76x2
a0cbd4b mt76: move mt76{0,2} mcu shared code in mt76x02_mcu.c
a633c61 mt76x2: move mt76x2 mcu shared code in mt76x2_mcu_common.c
ce91108 mt76: move shared mcu_calibrate routine in mt76x02-lib module
2b3b4df mt76x2: move mt76x2_phy_tssi_compensate in mt76x2-common module
39a380a mt76: use a per rx queue page fragment cache
b4a2141 mt76x2u: run device cleanup routine if resume fails
df11092 treewide: Use struct_size() for kmalloc()-family
788becd treewide: devm_kzalloc() -> devm_kcalloc()
971005a mt76x2u: Add support for Alfa AWUS036ACM
878b0bd mt76: fix debugfs_simple_attr.cocci warnings
44ed12d wireless: Use octal not symbolic permissions
a6f80ef build: make building 76x2e and 7603e optional
1047913 mt76x0: usb: move firmware loading to usb.c
26b20f8 mt76x0: remove mcu source file
44145f3 mt76x0: remove unused usb header file
d56be99 mt76x0: usb: remove mt76_fw definition
3733445 mt76x2: fix tx power configuration for VHT mcs 9
0aced80 mt76x0: pci: add mt7650 PCI ID
35e88c0 mt76x0: pci: add fw uploading routine
3991afa mt76: move seq_put_array in mt76-core module
6cf6fba mt76: add stbc entries to mt76_rate_power
4451f99 mt76: move common eeprom definitions in mt76x02-lib module
c9100cb mt76: move eeprom utility routines in mt76x02_eeprom.h
611b8c7 mt76: move mt76x2_eeprom_get in mt76x02_eeprom.h
b59ed56 mt76: move mt76x02_mac_setaddr in mt76x02-lib module
844daeb mt76: move mt76x2_get_efuse_data in mt76x02-lib module
7556cb9 mt76: move mt76x2_ext_pa_enabled routine in mt76x02_eeprom.c
19d7853 mt76x0: remove mt76x0_set_country_reg routine
ba7a3da mt76: add mt76x02_get_rx_gain and mt76x02_get_lna_gain utility routines
35b0a2a mt76x0: unify lna_gain parsing
2a470db mt76x0: unify rssi_offset parsing
fe89537 mt76x0: unify temperature offset parsing
76bc22f mt76x0: unify freq offset parsing
bedeb3d mt76: move mt76x02_eeprom_parse_hw_cap in mt76x02-lib module
1adcd39 mt76x0: unify parse hw capabilities
df23620 mt76: move mt76x2_tssi_enabled in mt76x02_eeprom.h
ebca136 mt76: usb: remove WARN_ON in mt76u_get_rx_entry_len
cf8f750 mt76: fix return value of mt76x02_wait_for_mac
f802bd5 mt76: move mt76_rate_power in mt76_dev
4b6093c mt76: add mt76x02_phy_set_txpower utility routine
c206b8c mt76: move rate_txpower handler in mt76 debugfs
4da6fd3 mt76: move mt76x02_rate_power_val in mt76x02-lib module
fb3806d mt76x0: remove mt76x0_phy_set_tx_power and mt76x0_extra_power_over_mac
730db56 mt76x0: remove eeprom dependency from mt76x0_set_tx_power_per_rate
212fa2c mt76x0: remove eeprom dependency from mt76x0_get_power_info
280e452 mt76x0: use shared debugfs implementation
21fddc3 mt76x0: phy: introduce mt76x0_phy_set_txpower routine
b0d85d4 mt76: include linux/module.h in files using MODULE_*
a47083b mt76: report firmware version using ethtool
dc66f7c mt76: usb: make rx page_frag_cache access atomic
09d696b mt76: use skb_pad() instead of __skb_pad()
e8d7890 mt76x0: add quirk to disable 2.4GHz band for Archer T1U
e76fe15 mt76x2: disable WLAN core before probe
41c552f mt76x0: work around cflags issue in compat layer for trace.h
b95bc8a mt76x0: use mt76_poll in mt76x0_set_wlan_state
3a3554a mt76: move wait_for_wpdma in mt76x02_dma.h
0527feb mt76: add mt76x02_dma_enable/mt76x02_dma_disable utility routines
a8fda4b mt76: move mt76x02_set_irq_mask in mt76x02_mmio.c
11e3028 mt76: move queue initialization in mt76x02_mmio.c
5a29094 mt76: move mt76x02_beacon_offset in mt76x02_util.c
5f1d0ff mt76: mmio: add implementation of wr_rp and rd_rp
47eee35 mt76: move mt76x2_wait_for_bbp in mt76x02-lib module
7cc4be7 mt76x0: update initvals to latest version of vendor driver
e1a2179 mt76x0: pci: move mcu code in pci_mcu.c
886f6fc mt76x0: usb: move mcu code in usb_mcu.c
c7b28f4 mt76x0: use mt76x02 utility routines in mt76x0 init code
005d40a mt76x0: init: remove duplicated initialization
94776fe mt76x0: init: remove MT_PBF_SYS_CTRL configuration in mt76x0_reset_csr_bbp
5bb8339 mt76x0: init rx filter in mt76x0_init_hardware
fe1379a mt76: add mt76x02_mac_start routine
da982d3 mt76x0: usb: move initialization code in usb.c
22be43e mt76x0: pci: add hw initialization at bootstrap
15a50e1 mt76x0: phy: set antenna parameter according to wireless band
5d2a331 mt76: move set_{tx,rx}_path routines in mt76x02-lib module
8050d71 mt76x0: add ieee80211_ops ops pointer to mt76x0_alloc_device signature
c240904 mt76x0: pci: add mt76x0e_{start/stop} callbacks
b50f38a mt76x0: eeprom: load eeprom data from mtd by default
fb5bae0 mt76x0: usb: move mt76x0u_tx_prepare_skb in usb.c
4047e1f move mt7603 source files to mt7603/
14f70f4 mt7603: fix wcid for frames sent via drv_tx
542f17e mt76: fix handling ps-poll frames
7464cc9 mt76: check aggregation sequence number for frames sent via drv_tx

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-29 13:29:46 +02:00
Rosy Song
fcfb9e4ded util-linux: add eject support
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-28 23:13:22 +02:00
Hauke Mehrtens
b47a9cd4ba ath10k-ct: fix bandwidth conversion bug
This backports a patch from the upstream kernel which was also shipped
previously in mac80211.
This fixes the following warning:
WARNING: CPU: 0 PID: 2881 at backports-4.19-rc5-1/net/wireless/util.c:1146 cfg80211_calculate_bitrate+0x238/0x348 [cfg80211]
invalid rate bw=2, mcs=0, nss=1

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-28 23:05:43 +02:00
Ansuel Smith
39a9620547 ath10k-ct: adds leds support
This rework and adds patch from ath10k source to make leds work also on candela source

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-09-28 22:47:21 +02:00
Hauke Mehrtens
3f7f27892e layerscape: armv7: activate USB support.
The feature flags say that this target supports USB so packages
depending on USB are being build, but actually the kernel configuration
misses USB support. It looks like this SoC supports USB, so activate it.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-28 21:42:09 +02:00
Hauke Mehrtens
92a96dd662 mac80211: fix ipw200 build with kernel < 4.10
The __change_mtu() function is only compiled when
CPTCFG_IPW2200_PROMISCUOUS is set, more it to the general area.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-28 21:40:11 +02:00
Hauke Mehrtens
d8274451cb layerscape: kmod-ppfe: Fix kernel options
The CONFIG_FSL_PPFE and the CONFIG_FSL_PPFE_UTIL_DISABLED are boolean,
so they should be selected with an =y in OpenWrt, otherwise OpenWrt will
select them as =m. These options will make pfe.ko being build as a
module even if this is boolean.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-27 22:54:19 +02:00
Hauke Mehrtens
7cc2a6c6be kernel: Add missing config options for layerscape armv7 target
This adds some configuration options which are selectable when the
layerscape armv7 target is compiled.
This was found by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-27 22:54:19 +02:00
Hauke Mehrtens
a3c80e855c kernel: Add missing config options for samsung target
This adds some configuration options which are selectable when the
samsung target is compiled.
This was found by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-27 22:54:19 +02:00
Kevin Darbyshire-Bryant
37961f12ba wireguard: bump to 0.0.20180925
33523a5 version: bump snapshot
0759480 curve25519-hacl64: reduce stack usage under KASAN
b9ab0fc chacha20: add bounds checking to selftests
2e99d19 chacha20-mips32r2: reduce stack and branches in loop, refactor jumptable handling
d6ac367 qemu: bump musl
28d8b7e crypto: make constant naming scheme consistent
56c4ea9 hchacha20: keep in native endian in words
0c3c0bc chacha20-arm: remove unused preambles
3dcd246 chacha20-arm: updated scalar code from Andy
6b9d5ca poly1305-mips64: remove useless preprocessor error
3ff3990 crypto-arm: rework KERNEL_MODE_NEON handling again
dd2f91e crypto: flatten out makefile
67a3cfb curve25519-fiat32: work around m68k compiler stack frame bug
9aa2943 allowedips: work around kasan stack frame bug in selftest
317b318 chacha20-arm: use new scalar implementation
b715e3b crypto-arm: rework KERNEL_MODE_NEON handling
77b07d9 global: reduce stack frame size
ddc2bd6 chacha20: add chunked selftest and test sliding alignments and hchacha20
2eead02 chacha20-mips32r2: reduce jumptable entry size and stack usage
a0ac620 chacha20-mips32r2: use simpler calling convention
09247c0 chacha20-arm: go with Ard's version to optimize for Cortex-A7
a329e0a chacha20-mips32r2: remove reorder directives
3b22533 chacha20-mips32r2: fix typo to allow reorder again
d4ac6bb poly1305-mips32r2: remove all reorder directives
197a30c global: put SPDX identifier on its own line
305806d ratelimiter: disable selftest with KASAN
4e06236 crypto: do not waste space on selftest items
5e0fd08 netlink: reverse my christmas trees
a61ea8b crypto: explicitly dual license
b161aff poly1305: account for simd being toggled off midway
470a0c5 allowedips: change from BUG_ON to WARN_ON
aa9e090 chacha20: prefer crypto_xor_cpy to avoid memmove
1b0adf5 poly1305: no need to trick gcc 8.1
a849803 blake2s: simplify final function
073f3d1 poly1305: better module description

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-27 21:19:38 +01:00
Kevin Darbyshire-Bryant
d9a37d8d1e dnsmasq: bump to v2.80test7
Bump to latest test release:

3a610a0 Finesse allocation of memory for "struct crec" cache entries.
48b090c Fix b6f926fbefcd2471699599e44f32b8d25b87b471 to not SEGV on startup (rarely).
4139298 Change behavior when RD bit unset in queries.
51cc10f Add warning about 0.0.0.0 and :: addresses to man page.
ea6cc33 Handle memory allocation failure in make_non_terminals()
ad03967 Add debian/tmpfiles.conf
f4fd07d Debian bugfix.
e3c08a3 Debian packaging fix. (restorecon)
118011f Debian packaging fix. (tmpfiles.d)

Delete our own backports of ea6cc33 & 4139298, so the only real changes
here, since we don't care about the Debian stuff are 48b090c & 3a610a0

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-27 16:13:40 +01:00
Hauke Mehrtens
3fa7e62cec mac80211: fix selecting of ath10k -ct firmware
There is not firmware file with -ct-ct postfix, remove one -ct.

Fixes: 61b5b4971e ("mac80211: make ath10k-ct the default ath10k")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-27 00:22:13 +02:00
Hauke Mehrtens
2a64c7ea74 mac80211: Use backports-4.19-rc5-1.tar.xz
This is an official release with some minor changes compared to the
unofficial 4.19-rc4-1 we used before.
* added bcma and ssb again, which is removed in OpenWrt
* fix to build with kernel 4.19
* other minor fixes not relevant for Openwrt.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-27 00:22:06 +02:00
Rosy Song
2dc1f54b12 iptables: fix dependency for libip6tc on IPV6
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-26 22:40:37 +02:00
Martin Schiller
e86cdf85a7 uboot-lantiq: fix compatibility with gcc7
Backport u-boot commit 704f3acfcf55343043bbed01c5fb0a0094a68e8a to fix
compatibility with gcc7.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-09-26 20:35:07 +02:00
INAGAKI Hiroshi
81f7bdcb8d ath79: add support for Buffalo BHR-4GRV
Buffalo BHR-4GRV is a wired router, based on Atheros AR7242.

Specification:

- Atheros AR7242
- 64 MB of RAM
- 32 MB of Flash
  - 2x 16 MB SPI-NOR flash
- 5x 10/100/1000 Mbps Ethernet
- 3x LEDs, 2x keys
- 1x USB 2.0 Type-A
- UART header on PCB
  - JP1: Vcc, GND, TX, RX from reset button side

Flash instruction using factory image:

1. Boot the BHR-4GRV normaly and connect the computer to its LAN port
2. Access to
"http://192.168.11.1/cgi-bin/cgi?req=frm&frm=py-db/firmup.html"
with user "bufpy" and password "otdpopy"
3. Select the OpenWrt factory image and click "OK" button to perform
firmware upgrade
4. Wait ~200 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-26 20:35:07 +02:00
INAGAKI Hiroshi
1df1ea4d7e ath79: fix support for Buffalo WZR-HP-G450H and split to dts/dtsi
There are many parts that are incorrect or missing in the current
code for Buffalo WZR-HP-G450H in ath79, so its support is broken.

I fixed that issues and split to dts/dtsi files to add support for
Buffalo BHR-4GRV.

And WZR-450HP has the same hardware as WZR-HP-G450H, so I change the
device name to "WZR-HP-G450H/WZR-450HP".

Specification:

- Atheros AR7242
- 64 MB of RAM
- 32 MB of Flash
  - 2x 16 MB SPI-NOR flash
- 3T3R 2.4 GHz wifi
  - SoC internal
- 5x 10/100/1000 Mbps Ethernet
- 6x LEDs, 5x keys
- 1x USB 2.0 Type-A
- UART header on PCB
  - JP1: Vcc, GND, TX, RX from reset button side

Flash instruction using factory image:

1. Boot the WZR-HP-G450H (or WZR-450HP) normaly and connect the computer
to its LAN port
2. Access to
"http://192.168.11.1/cgi-bin/cgi?req=frm&frm=py-db/firmup.html"
with user "bufpy" and password "otdpopy"
3. Select the OpenWrt factory image and click "OK" button to perform
firmware update
4. Wait ~200 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-26 20:35:07 +02:00
INAGAKI Hiroshi
b6e6785c88 ath79: fix wrong pll-data value for I-O DATA WN-AC-DGR devices
The pll-data value "0x56000000" is wrong for I-O DATA WN-AC1600DGR2
and WN-AC1167DGR, so there was a problem of slowing down the speed of
ethernet.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-26 20:35:07 +02:00
Steffen Förster
8480907e70 ramips: fix Archer C20 sysupgrade
The sysupgrade image failed the check due to the wrong string in the
supported devices. This patch provides the correct name by dropping the
SUPPORTED_DEVICES to use the default generated name.

Signed-off-by: Steffen Förster <steffen@chemnitz.freifunk.net>
[drop the SUPPORTED_DEVICES, the old name was never used in a release]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-26 20:35:07 +02:00
Emil Muratov
8e6bc1a5be ramips: fix power LED DTB for wt3020
Since c134210 power LED is no longer lights after boot-up.
Reversing gpio polarity makes it work as it should be.

Signed-off-by: Emil Muratov <gpm@hotplug.ru>
2018-09-26 20:35:07 +02:00
Joseph C. Lehner
d6e39e7466 ramips: ex2700: actually remove kmod-mt76*
When building using the multiple devices option with per-device root
filesystem, only the meta package mt76 is omitted but not the
dependencies selected by the package.

Explicitly exclude all 3 mt76 packages, plus the metapackage.
Otherwise, these modules will be included in the build, wasting
a few hundred kilobytes.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
[mention the root cause of the issue in the commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-26 20:35:07 +02:00
Hauke Mehrtens
c662299bf9 ath10k-ct: update to version ath10k-4.16
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-26 16:39:45 +02:00
Hauke Mehrtens
02e7fa6f8a iw: update nl80211.h
Now this file matches the version in backports.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-26 16:39:44 +02:00
Hauke Mehrtens
4fcbad1aa0 mac80211: fix compile warning in 986-rt2x00-add-TX-LOFT-calibration.patch
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-26 16:39:44 +02:00
Hauke Mehrtens
ec684ce193 mac80211: Add patches which were added later
These patches were added after the new matches structure for the
mac80211 package was created. All the deleted patches are already
integrated in kernel 4.19-rc4.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-26 16:39:44 +02:00
Hauke Mehrtens
db90c243a0 mac80211: update to version based on 4.19-rc4
This updates mac80211 to backports based on kernel 4.19-rc4.

I plan to integrate all the patches which are in this tar into upstream
backports soon.

I used the backports generated from this code:
https://github.com/hauke/backports/commits/wip2

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-26 16:39:44 +02:00
John Crispin
61b5b4971e mac80211: make ath10k-ct the default ath10k
We select ath10k-ct by default, but it is still possible to build
the upstream version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John Crispin <john@phrozen.org>
2018-09-26 16:39:44 +02:00
Daniel Golle
de1c58a64b mac80211: rt2x00: add experimental patches from Stanislaw Gruszka
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-09-26 16:39:44 +02:00
Daniel Golle
c837c41a76 mac80211: rt2x00: remove obsolete patch
According to Stanislaw Gruszka the patch
    600-23-rt2x00-rt2800mmio-add-a-workaround-for-spurious-TX_F.patch
should be dropped.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-09-26 16:39:44 +02:00
Tomislav Požega
d449233fd2 mac80211: rt2x00: add TX LOFT calibration
Add TX LOFT calibration from mtk driver.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2018-09-26 16:39:44 +02:00
Tomislav Požega
5d1620f29c mac80211: rt2x00: add RXIQ calibration
Add RXIQ calibration found in mtk driver. With old openwrt builds this gets us ~8Mbps more of RX bandwidth (test with iPA/eLNA layout).
Please try if this makes any difference among various board/RF layouts.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2018-09-26 16:39:43 +02:00
Tomislav Požega
e125b6abb2 mac80211: rt2x00: add RXDCOC calibration
Add RXDCOC calibration code from mtk driver. Please try if this makes any difference among various board/RF layouts.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2018-09-26 16:39:43 +02:00
Tomislav Požega
061541f207 mac80211: rt2x00: add r calibration
Add r calibration code as found in mtk driver.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2018-09-26 16:39:43 +02:00
Tomislav Požega
66929e3414 mac80211: rt2x00: add RF self TXDC calibration
Add TX self calibration based on mtk driver.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
2018-09-26 16:39:43 +02:00
Tomislav Požega
6044682b83 mac80211: rt2x00: write registers required for reducing power consumption
Write registers required for reducing power consumption like the vendor
driver does when ADJUST_POWER_CONSUMPTION_SUPPORT is set.
This helps devices to sync at better TX/RX rates and improves overall
performance.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: edited commit message]
2018-09-26 16:39:39 +02:00
Daniel Golle
b88df4a7c8 linux-firmware: set PKG_MIRROR_HASH
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-09-26 16:35:33 +02:00
John Crispin
0a1faecdb5 linux-firmware: add ath10k support
Signed-off-by: John Crispin <john@phrozen.org>
2018-09-26 16:35:33 +02:00
John Crispin
9860cdda76 ath10k-firmware: disable the package and use default linux-firmware package
Signed-off-by: John Crispin <john@phrozen.org>
2018-09-26 16:35:33 +02:00
John Crispin
d9eefa7a70 mac80211: rebase ontop of v4.18.5
Signed-off-by: John Crispin <john@phrozen.org>
2018-09-26 16:35:33 +02:00
Koen Vandeputte
e9d92bf1e1 kernel: bump 4.14 to 4.14.72
Refreshed all patches.

Removed upstreamed:
- 203-MIPS-ath79-fix-restart.patch
- 0013-MIPS-ath79-fix-system-restart.patch
- 180-earlycon-initialize-port-uartclk-based-on-clock-frequency-property.patch
- 181-earlycon-remove-hardcoded-port-uartclk-initialization-in-of_setup_earlycon. patch
- 700-1-6-e1000e-Remove-Other-from-EIAC.patch
- 700-2-6-Partial-revert-e1000e-Avoid-receiver-overrun-interrupt-bursts.patch
- 700-3-6-e1000e-Fix-queue-interrupt-re-raising-in-Other-interrupt.patch
- 700-4-6-e1000e-Avoid-missed-interrupts-following-ICR-read.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-26 15:54:18 +02:00
Koen Vandeputte
3caf940cc6 kernel: bump 4.9 to 4.9.129
Refreshed all patches.

Removed upstreamed:
- 203-MIPS-ath79-fix-restart.patch

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-26 15:54:18 +02:00
Koen Vandeputte
17e90d88e2 kernel: bump 3.18 to 3.18.123
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-26 15:54:18 +02:00
Rosy Song
a6add47869 netifd: do not validate relevant section when ipv6 is not supported
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-25 22:35:38 +02:00
Florian Eckert
61a5994900 base-files: add network_get_metric() to /lib/functions/network.sh
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2018-09-25 10:16:03 +02:00
Mauro Mozzarelli
9f105ce8c8 kernel: netfilter: add IPVS kernel module support
IPVS (IP Virtual Server) implements transport-layer load balancing inside
the Linux kernel, so called Layer-4 switching. IPVS running on a host acts
as a load balancer at the front of a cluster of real servers, it can direct
requests for TCP/UDP based services to the real servers, and makes services
of the real servers to appear as a virtual service on a single IP address.

This change adds the following kmod packages
- kmod-nf-ipvs
- kmod-nf-ipvs-ftp
- kmod-nf-ipvs-sip

Signed-off-by: Mauro Mozzarelli <mauro@ezplanet.org>
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-09-24 21:44:37 +01:00
Andy Walsh
e0196152eb ncurses: use default host install
* just use default host/install, so libs/headers get properly generated/installed

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-09-24 19:22:53 +02:00
Andy Walsh
2bbc9376c6 gettext-full: host compile with -fpic
Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-09-24 19:18:52 +02:00
Samuel Casa
65e9561b3d zram-swap: Shell cosmetic
Signed-off-by: Samuel Casa <samuel.casa@neratec.com>
2018-09-24 19:08:59 +02:00
Samuel Casa
b291517fdf zram-swap: remove trailing whitespaces in init script
Signed-off-by: Samuel Casa <samuel.casa@neratec.com>
[slightly reword subject]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-09-24 19:08:59 +02:00
David Yang
aaf46a8fe2 dante: disable sched_getscheduler() - not implemented in musl
musl doesn't come with an valid implementation of `sched_getscheduler()`;
it simply returns -ENOSYS for it. Without this option (and compile dante
with `sched_getscheduler()` enabled), you will get

    error: serverinit(): sched_getscheduler(2): failed to retrieve current
    cpuscheduling policy: Function not implemented

and dante won't start at all.

Ref: http://lists.alpinelinux.org/alpine-devel/3932.html
Ref: http://lists.alpinelinux.org/alpine-devel/3936.html
Signed-off-by: David Yang <mmyangfl@gmail.com>
[slightly reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-09-24 19:04:47 +02:00
Tony Ambardar
4097ab6a97 base-files: fix postinstall uci-defaults removal
Commit 7f694582 introduced a bug where default_postinst() often fails to
remove a uci-defaults script after application, leaving it to run again
after a reboot.
(Note: commit 7f694582 also introduced FS#1021, now fixed by 73c745f6)

The subtle problem arises from the shell logical chain:
[ -f "$i" ] && . "$i" && rm -f "$i"

Most uci-defaults scripts contain a terminal 'exit 0' statement which,
when sourced, results in the logic chain exiting before executing 'rm -f'.
This was observed while testing upgrades of 'luci-app-sqm'.

The solution is to wrap the shell sourcing in a subshell relative to the
command 'rm -f':
( [ -f "$i" ] && . "$i" ) && rm -f "$i"

Revert to using 'grep' to prefilter the list of entries from the control
file, which yields the full path of uci-defaults scripts. This allows
keeping the existence check, directory change and script sourcing inside
the subshell, with the script removal correctly outside.

This approach avoids adding a second subshell only around the "." (source)
command. The change also preserves the fix FS#1021, since the full path is
used to source the script, which is POSIX-portable irrespective of PATH
variable or reference to the CWD.

Run Tested on: LEDE 17.01.4 running ar71xx, while tracing installation of
package luci-app-sqm with its associated /etc/uci-defaults/luci-sqm file.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-09-24 18:58:00 +02:00
Konstantin Demin
d3b43f49ac rules.mk: add ESED command
ESED is SED with extended regular expressions turned on.
Command line and usage are the same as for SED.

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2018-09-24 15:57:27 +01:00
Rafał Miłecki
43d36606d6 kernel: pick earlycon regression fixes from the stable-queue.git
This fixes regression introduced in kernel 4.14 and makes bcm53xx revert
obsolete.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-09-24 13:47:06 +02:00
Felix Fietkau
dee8804de0 build: drop buildbot toolchain rebuild check when not using git
The check cleans and rebuilds the toolchain if it changed on update.
When building from a source tarball, it is reasonable to expect that
there will be no updates, so no rebuild check is necessary

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-24 11:03:20 +02:00
Jo-Philipp Wich
4f277eb640 lldpd: inhibit linking of libbsd on !GLIBC
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-09-24 08:36:10 +02:00
Rosy Song
9f0cb135dd busybox: fix dependency for IPV6
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-23 17:45:08 +02:00
Hauke Mehrtens
efffba3409 kernel: fix build of nftables
Backport an additional patch from 4.16 for nftables.
This fixes a build problem recently introduced.

Fixes: f57806b56e ("kernel: generic: Fix nftables inet table breakage")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-22 23:59:10 +02:00
Yangbo Lu
87d7a596ec layerscape: build ls-dpl package with linux dtc tool
Building ls-dpl package requires the dtc tool. This patch
is to support using linux dtc tool for ls-dpl package.
This avoids compile issue when host system doesn't have
the dtc tool.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:58 +02:00
Yangbo Lu
db30adc931 layerscape: fix get_device_file() function of restool
The restool failed to work with current gcc-7.3.0-musl.
This patch is to add a restool fix-up patch to fix
multiple problems encountered in the get_device_file()
function:
 - The deprecated atoi() function is replaced by strtoul
 - An invalid memory access was being performed by using
 memory from dir->d_name even after closedir(). This is
 fixed by a strdup() on the device filename.
 - Also, error prints now print any relevant error code.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:58 +02:00
Yangbo Lu
0f44c7c8d1 layerscape: update README for SD card boot and new devices
This patch is to update the README since SD card boot support
and LS1012AFRWY/LS1021ATWR were introduced.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
7016dd48f1 layerscape: add ls1012afrwy support and drop ls1012afrdm
ls1012afrdm was no longer supported in NXP Layerscape SDK.
Instead a new board ls1012afrwy was introduced in LSDK.
This patch is to drop ls1012afrdm and add ls1012afrwy support.
Since only 2MB NOR flash could be used, we just put u-boot
and firmware on NOR flash, and put kernel/dtb/rootfs on SD
card.

The Layerscape FRWY-LS1012A board is an ultra-low-cost
development platform for LS1012A Series Communication
Processors built on Arm Cortex-A53. This tool refines the
FRDM-LS1012A with more features for a better hands-on experience
for IoT, edge computing, and various advanced embedded
applications. Features include easy access to processor I/O,
low-power operation, micro SD card storage, an M2 connector, a
small form factor, and expansion board options via mikroBUS Click
Module. The MicroBUS Module provides easy expansion via hundreds
of powerful modules supporting sensors, actuators, memories,
and displays.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
eb684205e5 layerscape: add SD card boot support
NOR/QSPI Flash on Layerscape board only has limited 64MB memory size.
Since some boards (ls1043ardb/ls1046ardb/ls1088ardb/ls1021atwr)
could support SD card boot, we added SD boot support for them to put
all things on SD card to meet large memory requirement.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
f0ec7bd27d layerscape: add armv7 subtarget and ls1021atwr board support
The NXP TWR-LS1021A module is a development system based
on the QorIQ LS1021A processor.
- This feature-rich, high-performance processor module can
  be used standalone or as part of an assembled Tower System
  development platform.
- Incorporating dual Arm Cortex-A7 cores running up to 1 GHz,
  the TWR-LS1021A delivers an outstanding level of performance.
- The TWR-LS1021A offers HDMI, SATA3 and USB3 connectors as
  well as a complete Linux software developer's package.
- The module provides a comprehensive level of security that
  includes support for secure boot, Trust Architecture and
  tamper detection in both standby and active power modes,
  safeguarding the device from manufacture to deployment.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
0d95eb2cce layerscape: split image makefile per subtarget
This patch is to split image makefile per subtarget.
The ARMv7 subtarget will be added in the future.
It will be not convinient if only one makefile is used
for several subtargets management and future development.
This patch also dropped 32-bit Traverse LS1043-S since
Traverse only intended to support 64-bit and the 32-bit
compile now had an issue.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
82dd7f7da2 layerscape: define ls-append function
This patch is to define a ls-append function for
each device to reuse it for image appending.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
a83eae385a layerscape: update linux 4.9 patches to LSDK-18.06
This patch is to update linux 4.9 patches to LSDK-18.06
release and to adjust config-4.9 accordingly.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:57 +02:00
Yangbo Lu
ad1dbc0ca3 layerscape: add u-boot environment support for OpenWrt boot
This patch is to implement u-boot environment txt files
to support OpenWrt boot for all layerscape devices.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
dcf57c766a layerscape: update u-boot to LSDK-18.06
The u-boot source code had been migrated to codeaurora
for LSDK-18.06 release and the future release. This
patch is to update u-boot to LSDK-18.06 for both
uboot-layerscape and uboot-layerscape-armv8_32b packages.
Besides, this patch also introduced some other changes.
- Reworked uboot-layerscape makefile to make it more
  readable.
- Define package in uboot-layerscape-armv8_32b for each board.
- Fixed u-boot package selection in target image makefile.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
e83faa3d7d layerscape: drop uboot-layerscape patches
Dropped uboot-layerscape patches which were environemnt patches.
We will make u-boot environment binaries with a txt file for all
devices.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
5c325c2b63 layerscape: update restool to LSDK-18.06
The restool source code had been migrated to codeaurora
for LSDK-18.06 release and the future release. This patch
is to update restool to LSDK-18.06 release.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
32bb763e45 layerscape: update ls-ppa to LSDK-18.06
This patch is to update ls-ppa to LSDK-18.06 release
and to rework ls-ppa makefile to make it more readable.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
89c4ed57b7 layerscape: update ls-rcw to LSDK-18.06
The rcw source code had been migrated to codeaurora
for LSDK-18.06 release and the future release. The
source code had also involved ls1012ardb/ls1012afrdm/
ls1088ardb/ls2088ardb rcw, so we updated ls-rcw to
LSDK-18.06, reworked the makefile and dropped ls-rcw-bin
package in this patch. Also reworked ls-rcw patch to
adapt to the latest source code.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
984cf8d89d layerscape: update ppfe-firmware to LSDK-18.06
This patch is to update ppfe-firmware to LSDK-18.06 release.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
c19f520686 layerscape: update ls-mc to LSDK-18.06
This patch is to update ls-mc to LSDK-18.06 release.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
e4fee592ea layerscape: update ls-dpl to LSDK-18.06
The dpl-examples source code had been migrated to
codeaurora for LSDK-18.06 release and the future
release. This patch is to update this package to
LSDK-18.06.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:56 +02:00
Yangbo Lu
56853409c4 layerscape: update fman-ucode to LSDK-18.06
Actually there was no change for fman-ucode in LSDK-18.06
just tagged with LSDK-18.06. This patch is to rework the
fman-ucode makefile to make it more readable, and to use
lsdk-1806 as the PKG_VERSION.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-09-22 21:20:55 +02:00
Luis Araneda
b959f361be zynq: kernel: select FPGA-related configs
These configs are necessary to program the FPGA fabric

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-22 21:20:55 +02:00
Jasper Scholte
a689307c97 sunxi: build image/uboot for the NanoPi NEO2
The NanoPi NEO2 is a small Allwinner H5 based board available with
different DRAM configurations.
This board is very similar to the NanoPi NEO PLUS2

Signed-off-by: Jasper Scholte <NightNL@outlook.com>
2018-09-22 21:20:55 +02:00
Brett Mastbergen
f57806b56e kernel: generic: Fix nftables inet table breakage
Commit b7265c59ab ("kernel: backport a series of netfilter cleanup
patches to 4.14") added patch 302-netfilter-nf_tables_inet-don-t-use-
multihook-infrast.patch.  That patch switches the netfilter core in the
kernel to use the new native NFPROTO_INET support.  Unfortunately, the
new native NFPROTO_INET support does not exist in 4.14 and was not
backported along with this patchset.  As such, nftables inet tables never
see any traffic.

As an example the following nft counter rule should increment for every
packet coming into the box, but never will:

nft add table inet foo
nft add chain inet foo bar { type filter hook input priority 0\; }
nft add rule inet foo bar counter

This commit pulls in the required backport patches to add the new
native NFPROTO_INET support, and thus restore nftables inet table
functionality.

Tested on Turris Omnia (mvebu)

Fixes: b7265c59ab ("kernel: backport a series of netfilter cleanup ...")
Signed-off-by: Brett Mastbergen <bmastbergen@untangle.com>
2018-09-22 21:20:55 +02:00
Hartmut Knaack
d3a492c72f kernel: add Si7020 relative humidity/temperature sensor driver
Add support for the Silicon Labs Si7020 family of relative humidity and
temperature sensors using the I2C bus.

Signed-off-by: Hartmut Knaack <knaack.h@gmx.de>
2018-09-22 21:20:55 +02:00
Hartmut Knaack
265dcb05ea kernel: add TSL4531 ambient light sensor driver
Add support for the TAOS TSL4531x family of ambient light sensors using
the I2C bus.

Signed-off-by: Hartmut Knaack <knaack.h@gmx.de>
2018-09-22 21:20:55 +02:00
Robert Marko
b9ba32b2e3 ath79: Fix GL-AR300M USB trigger
Correct a typo preventing USB trigger to work on AR300M.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-09-22 21:20:48 +02:00
David Bauer
cd02d4faf9 ar71xx: flag FritzBox 4020 buttons as active low
Buttons of AVM FritzBox 4020 are incorrectly flagged as active high.

This was an oversight as RFKill button was working as expected even
with incorrectly flagged GPIO.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-09-22 19:26:26 +02:00
David Bauer
c6ecb83db4 ath79: flag FritzBox 4020 buttons as active low
Buttons of AVM FritzBox 4020 are incorrectly flagged as active high.

This was an oversight as RFKill button was working as expected even
with incorrectly flagged GPIO.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-09-22 19:26:26 +02:00
Magnus Kroken
7849f74117 mbedtls: update to 2.13.0
* Fixed a security issue in the X.509 module which could lead to a buffer overread during certificate extensions parsing.
* Several bugfixes.
* Improvements for better support for DTLS on low-bandwidth, high latency networks with high packet loss.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-09-22 19:26:25 +02:00
Felix Fietkau
a32a70f4f2 ath9k: add back support for using tx99 with active monitor interfaces
Fixes controlling bitrate

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-22 18:41:38 +02:00
Felix Fietkau
7decdf923a mac80211: fix tx queue allocation for active monitor interfaces
Fixes a crash with drivers like ath9k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-22 18:41:36 +02:00
Felix Fietkau
a6beca1f56 mt76: fix tx power issue for mt76x2
6e1898d mt76x2: fix tx power configuration for VHT mcs 9

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-22 12:56:18 +02:00
Kevin Darbyshire-Bryant
8ee7a80d19 kernel: re-enable MIPS VDSO
kernel upstream commit 9efcaa7c4afba5628f2650a76f69c798f47eeb18 to 4.14
itself a backport of 0f02cfbc3d9e413d450d8d0fd660077c23f67eff has
resolved the cache line issues that led to us disabling VDSO by default
on MIPS.

Remove our force disable patch:

pending-4.14/206-mips-disable-vdso.patch

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-09-22 07:48:15 +01:00
Luiz Angelo Daros de Luca
38a88ade14 elfutils: bump to 0.174
- Simplified musl patch with error.h concentrated into system.h

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-09-21 21:32:12 +02:00
Christian Lamparter
1801e60390 toolchain/musl: update to version 1.1.20
This release introduces the ability to replace/interpose the allocator
(malloc) subject to certain restrictions, adds an experimental m68k
port, and makes notable improvements to stdio (application-provided
buffers), getaddrinfo (AI_ADDRCONFIG, support for IPv4-only kernel
configurations), the dynamic linker (safety against dlopen of
libraries using initial-exec TLS model, reclaiming unused memory on
FDPIC archs, better dladdr results), and handling of default thread
stack size (pthread_setattr_default_np now works more reliably).

Many bugs have been fixed, including potentially dangerous regressions
in iconv (only for new conversions to legacy encodings) and visibly
incorrect behavior in printf on non-x86 archs (%a format with
precision specifier), in getopt_long_only when short options are a
prefix for a long option, in complex arc-trig/hyperbolic functions, in
strftime and mktime (timezone-specific issues), and numerous
less-obvious places.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[altered commit msg a bit keeping it tight]
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-21 13:25:08 +02:00
Koen Vandeputte
0dbdb476f3 kernel: bump 4.14 to 4.14.71
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-21 13:23:16 +02:00
Koen Vandeputte
72e9b4059e kernel: bump 4.9 to 4.9.128
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-21 13:23:16 +02:00
Kevin Darbyshire-Bryant
6c4cbe94bd dnsmasq: Change behavior when RD bit unset in queries.
Backport upstream commit

Change anti cache-snooping behaviour with queries with the
recursion-desired bit unset. Instead to returning SERVFAIL, we
now always forward, and never answer from the cache. This
allows "dig +trace" command to work.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-21 09:59:03 +01:00
Jonathan Lancett
95b3f8ec8d mwlwifi: driver version to 10.3.8.0-20180920
Signed-off-by: Jonathan Lancett <j.lancett@ntlworld.com>
[minor tweak to commit title]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-20 21:03:48 +01:00
Felix Fietkau
ccab68f2d3 ath9k: fix unloading the module
Registering a GPIO chip with the ath9k device as parent prevents unload,
because the gpiochip core increases the module use count.
Unfortunately, the only way to avoid this at the moment seems to be to
register the GPIO chip without a parent device

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-20 10:08:17 +02:00
Rosen Penev
5efd080e20 mdadm: Install /etc/config file as 600
/etc/config/mdadm is only used by the init script which is ran as root.
There is no need for it to be readable by anything else.

Added PKG_CPE_ID for proper CVE tracking.

Small reorganization for consistency between Makefiles.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-19 09:42:13 +01:00
Rosen Penev
4ad87744fa fstools: Install mount.hotplug and 10-fstab.defaults as 600
Both of these are used by programs that run as root and nothing else.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-19 09:41:28 +01:00
Rosen Penev
873801a671 usbmode: Update modeswitch data to 20170806
Changed hotplug file to 600 as it is only read by procd, which runs as
root.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-19 09:41:28 +01:00
Rosen Penev
39d8b2cf79 trelay: Install hotplug and config files as 600
The hotplug file is ran by procd, which runs as root. The config file is
used by the init script, which also runs as root.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-19 09:41:28 +01:00
Rosen Penev
7651e254d5 dropbear: Install /etc/config as 600
/etc/config/dropbear is used by the init script which only runs as root.

Small whitespace change.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-19 09:41:28 +01:00
Rosen Penev
add4871582 lldpd: Install /etc/config file as 600
/etc/config/lldpd is only used by the init script, which only runs as root

Adjusted homepage and download URLs to use HTTPS.

-std=c99 is useful for GCC versions less than 6. Current OpenWrt uses 7.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-19 09:41:28 +01:00
Hans Dedecker
6cd41ca673 netifd: update to latest git HEAD
23941d7 system-linux: enable by default ignore encaplimit for ip6 tunnels

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-19 10:09:25 +02:00
Hans Dedecker
d9691b66e2 map: drop default encaplimit value
Setting encaplimit to a numerical value results into the value being
included as tunnel encapsulation limit in the destination option header
for tunneled packets.
Several users have reported interop issues as not all ISPs support the
destination option header containing the tunnel encapsulation limit
resulting into broken map connectivity.
Therefore drop the default encaplimit value for map tunnels so
no destination option header is included by default.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-19 09:42:45 +02:00
Hans Dedecker
1241707b40 ds-lite: drop default encaplimit value
Setting encaplimit to a numerical value results into the value being
included as tunnel encapsulation limit in the destination option header
for tunneled packets.
Several users have reported interop issues as not all ISPs support the
destination option header containing the tunnel encapsulation limit
resulting into broken ds-lite connectivity.
Therefore drop the default encaplimit value for ds-lite tunnels so
no destination option header is included by default.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-19 09:42:28 +02:00
Jason A. Donenfeld
f07a94da50 wireguard: bump to 0.0.20180918
* blake2s-x86_64: fix whitespace errors
* crypto: do not use compound literals in selftests
* crypto: make sure UML is properly disabled
* kconfig: make NEON depend on CPU_V7
* poly1305: rename finish to final
* chacha20: add constant for words in block
* curve25519-x86_64: remove useless define
* poly1305: precompute 5*r in init instead of blocks
* chacha20-arm: swap scalar and neon functions
* simd: add __must_check annotation
* poly1305: do not require simd context for arch
* chacha20-x86_64: cascade down implementations
* crypto: pass simd by reference
* chacha20-x86_64: don't activate simd for small blocks
* poly1305-x86_64: don't activate simd for small blocks
* crypto: do not use -include trick
* crypto: turn Zinc into individual modules
* chacha20poly1305: relax simd between sg chunks
* chacha20-x86_64: more limited cascade
* crypto: allow for disabling simd in zinc modules
* poly1305-x86_64: show full struct for state
* chacha20-x86_64: use correct cut off for avx512-vl
* curve25519-arm: only compile if symbols will be used
* chacha20poly1305: add __init to selftest helper functions
* chacha20: add independent self test

Tons of improvements all around the board to our cryptography library,
including some performance boosts with how we handle SIMD for small packets.

* send/receive: reduce number of sg entries

This quells a powerpc stack usage warning.

* global: remove non-essential inline annotations

We now allow the compiler to determine whether or not to inline certain
functions, while still manually choosing so for a few performance-critical
sections.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-19 08:30:13 +01:00
Kevin Darbyshire-Bryant
687168ccd9 dnsmasq: Handle memory allocation failure in make_non_terminals()
Backport upstream commit:

ea6cc33 Handle memory allocation failure in make_non_terminals()

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-19 07:43:02 +01:00
Mike McCormack
e8cbfedc72 ucert: work around short read
usign occasionally writes 16 characters then exits without writing a LF,
leaving ucert hanging waiting for more input.  Accept 16 characters
or more rather than 17 to work around the short read.

Signed-off-by: Mike McCormack <mike@atratus.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-09-18 13:51:09 +02:00
Koen Vandeputte
0cda4af005 kernel: bump 4.14 to 4.14.70
Refreshed all patches.

Added new patch:
- 192-Revert-ubifs-xattr-Don-t-operate-on-deleted-inodes.patch

This fixes a bug introduced in upstream 4.14.68 which caused targets using
ubifs to produce file-system errors on boot, rendering them useless.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-17 15:47:44 +02:00
Koen Vandeputte
784d7f0251 kernel: bump 4.9 to 4.9.127
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-17 15:47:44 +02:00
Koen Vandeputte
92511d21cc kernel: bump 3.18 to 3.18.122
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-17 15:47:44 +02:00
Daniel Golle
e51aa699f7 uqmi: pass-through ipXtable to child interfaces
Allow setting specific routing tables via the ip4table and ip6table
options also when ${ifname}_4 and ${ifname}_6 child interfaces are
being created.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-09-15 19:18:42 +02:00
Felix Fietkau
03c7c8c853 tools/e2fsprogs: fix build with clang
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-15 15:49:43 +02:00
Kevin Darbyshire-Bryant
033f02b9b5 iproute2: q_cake: Also print nonat, nowash and no-ack-filter keywords
Pull in latest upstream tweaks:
Similar to the previous patch for no-split-gso, the negative keywords for
'nat', 'wash' and 'ack-filter' were not printed either. Add those as well.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-15 08:46:32 +01:00
Hannu Nyman
4a3298c124 busybox: update to 1.29.3
Update busybox to 1.29.3, minor bugfix release

https://git.busybox.net/busybox/log/?h=1_29_3

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-09-15 08:57:14 +02:00
Hans Dedecker
24d82c2e5c toolchain/glibc: update to latest 2.26 commit
c5c90b480e Fix segfault in maybe_script_execute.
174709d879 pthread_cond_broadcast: Fix waiters-after-spinning case [BZ #23538]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-13 11:06:30 +02:00
Rosy Song
918ec4d549 odhcpd: enable ipv6 server mode only when it is supported
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-09-12 21:47:33 +02:00
Kevin Darbyshire-Bryant
8cac857289 iproute2: q_cake: Add printing of no-split-gso option
When the GSO splitting was turned into dual split-gso/no-split-gso options,
the printing of the latter was left out. Add that, so output is consistent
with the options passed

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-12 09:13:44 +01:00
Rafał Miłecki
b3d441c5f7 mac80211: brcmfmac: backport CYW89342 support & fixes from 4.20
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-09-12 08:40:24 +02:00
Kevin Darbyshire-Bryant
66fd41ba79 kmod-sched-cake: fix 6in4/gso performance issue
Bump to latest upstream cake:

Add workaround for wrong skb->mac_len values after splitting GSO

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-09-12 05:34:44 +01:00
Florian Fainelli
4fca0e8896 netifd: update to latest HEAD
0059335c5b60 CMakeList: Check that compiler supports -Wimplicit-fallthrough

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2018-09-11 17:19:51 -07:00
Marko Ratkaj
6e80dd58bb tools/expat: fix docbook2man error on some systems
On some systems (Gentoo) configure stage fails because of docbook2man
working with SGML rather than with XML. We don't need xmlwf man pages so
we disable this.

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2018-09-11 15:00:09 +02:00
Jason A. Donenfeld
a54f492d0c wireguard: bump to 0.0.20180910
* curve25519: arm: do not modify sp directly
* compat: support neon.h on old kernels
* compat: arch-namespace certain includes
* compat: move simd.h from crypto to compat since it's going upstream

This fixes a decent amount of compat breakage and thumb2-mode breakage
introduced by our move to Zinc.

* crypto: use CRYPTOGAMS license

Rather than using code from OpenSSL, use code directly from AndyP.

* poly1305: rewrite self tests from scratch
* poly1305: switch to donna

This makes our C Poly1305 implementation a bit more intensely tested and also
faster, especially on 64-bit systems. It also sets the stage for moving to a
HACL* implementation when that's ready.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-11 11:34:23 +02:00
John Crispin
9926f7cf29 kernel: add missing symbol
Signed-off-by: John Crispin <john@phrozen.org>
2018-09-10 17:50:40 +02:00
Andy Walsh
4549ab46a8 base-files: /etc/services: add missing 'rpcbind' alias
* add missing 'rpcbind' alias to /etc/services

Allows rpcbind to open its 111 port and be reachable via lan, this is the default behaviour.

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-09-10 10:44:03 +02:00
Tobias Wolf
93bfafb8dc ramips: Fix early memory calculation for certain MIPS platforms
Kernel upstream commit 67a3ba25aa95 ("MIPS: Fix incorrect mem=X@Y handling") introduced a new issue for rt288x where "PHYS_OFFSET" is 0x0 but the calculated "ramstart" is not. As the prerequisite of custom memory map has been removed, this results in the full memory range of 0x0 - 0x8000000 to be marked as reserved
for this platform.

This patch adds the originally intended prerequisite again.

Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
2018-09-10 10:07:42 +02:00
Sven Eckelmann
78a5d25dca ar71xx: Skip more hashed blocks for OM2P(-HS) 64k variant
The OM2P(-HS)v4 got a variant which uses a slightly different flash. The
standard versions used a flash with 256KB blocks which is no longer
available. The replacement flash uses a flash with 64K blocks.

The padding for the image rootfs is already for 64K and 256K and thus can
be flashed on the device without any problems. Unfortunately, the
bootloader will check $rootfs_size (rounded down to the nearest 64k block)
minus 1x 64k. But it is now possible that the new JFFS2 rootfs_data starts
even earlier and modifies the checked region. The check will then fail and
the backup image (when available) will be booted.

Just setting it to the same number of skipped blocks as other 64K models
avoids this problem.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-09-10 10:01:58 +02:00
Daniel Engberg
3e734e822b tools/expat: Update to 2.2.6
Update (lib)expat to 2.2.6

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-09-10 10:01:27 +02:00
Daniel Engberg
c6a0d57ca9 tools/e2fsprogs: Update to 1.44.4
Update e2fsprogs to 1.44.4

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-09-10 10:01:09 +02:00
Lech Perczak
4f93342d92 ath79: ubnt-xm: add rssileds package
In order to make RSSI indicator on the device work out of box,
include "rssileds" package in per-device rootfs image by default
for Ubiquiti XM family.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
2018-09-10 09:58:31 +02:00
Lech Perczak
e440a9d73f ath79: ubnt-xm: create RSSI monitor on wlan0
When mapping for RSSI LEDs was defined for interface wlan0 on
Ubiquiti XM family, the mapping for rssileds monitor was omitted
by mistake. Therefore create the mapping, so RSSI LEDs work without
additional configuration, after starting rssileds service.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
2018-09-10 09:58:31 +02:00
Bernhard Frauendienst
480bf28273 ath79: add support for Buffalo WZR-HP-AG300H
Buffalo WZR-HP-AG300H is a dual band router based on
Qualcom Atheros AR7161 rev 2

Specification:
- 680 MHz CPU (Qualcomm Atheros AR7161)
- 128 MiB RAM (2x Samsung K4H511638G-LCCC)
- 32 MiB Flash (2x Winbond 25Q128BVFG)
- WiFi 5 GHz a/n (Atheros AR9220)
- WiFi 2.4 GHz b/g/n (Atheros AR9223)
- 1000Base-T WAN (Atheros AR7161)
- 4x 1000Base-T Switch (Atheros AR8316)
- 1x USB 2.0
- 3 Buttons (AOSS/WPS, Reset, USB Eject)
- 2 Slide switches (Router (on/off/auto), Movie Engine (on/off))
- 9 LEDs (Power green, WLAN 2GHz green, WLAN 2GHz amber,
    WLAN 5GHz green, WLAN 5GHz LED amber, Router green,
    Diag red, Movie Engine blue, USB green)

It is already supported by the ar71xx target.

For more information on the device visit the wiki:
<https://openwrt.org/toh/buffalo/wzr-hp-ag300h>

Serial console:
- The UART Header is next to Movie Engine Switch.
- Pinout is RX - TX - GND - 3.3V (Square Pad is 3.3V)
- The Serial setting is 115200-8-N-1.

Installation of OpenWRT from vendor firmware:
- Connect to the Web-interface at http://192.168.11.1
- Go to “Administration” → “Firmware Upgrade”
- Upload the OpenWrt factory image

Tested:
- Ethernet (LAN, WAN)
- WiFi
- Installation
  - via TFTP rescue
  - via factory image
    - on firmware v1.77 (28-05-2012)
    - on pro firmware v24SP2 r30356 (26-03-2018)
  - via sysupgrade from ar71xx
    (wlan devices don't work because of new names)
  - via sysupgrade from itself
- Buttons
- LEDS
- USB (Power control and device recognition)

Signed-off-by: Bernhard Frauendienst <openwrt@nospam.obeliks.de>
2018-09-10 09:35:07 +02:00
Bernhard Frauendienst
3370e10495 kernel: add driver for virtual mtd_concat devices
Some systems require multiple flash chips to be concatenated and read as
a single mtd device. The ar71xx target provides custom code to create
such mtdconcat devices. When porting devices to ath79, however, there is
no way to create such devices from within the device tree.

This commit adds a driver for creating virtual mtd-concat devices to the
ath79 target. Nodes must have a compatible = "virtual,mtd-concat" line,
and define a list of devices to concat in the 'devices' property,
for example:

flash {
	compatible = "virtual,mtd-concat";

	devices = <&flash0 &flash1>;
};

The driver is added to the very end of the mtd Makefile to increase the
likelyhood of all child devices already being loaded at the time of
probing, preventing unnecessary deferred probes which might in turn
cause other problems (like failure to load MAC addresses from art because
the partitions are not loaded yet).

Signed-off-by: Bernhard Frauendienst <openwrt@nospam.obeliks.de>
2018-09-10 09:35:07 +02:00
INAGAKI Hiroshi
7768f11534 ath79: add support for ELECOM WRC-300GHBK2-I
ELECOM WRC-300GHBK2-I is a 2.4 GHz wireless router, based on Qualcomm
Atheros QCA9563.

Specification:

- Qualcomm Atheros QCA9563
- 64 MB of RAM (DDR2)
- 8 MB of Flash (SPI-NOR)
- 2T2R 2.4 GHz wifi
  - SoC internal
- 5x 10/100/1000 Mbps Ethernet
- 3x LEDs, 4x keys(connected to GPIO: 3x)
- UART header on PCB
  - TX, GND, RX, Vcc from ethernet port side
  - 115200n8

Flash instruction using factory image:

1. Boot the WRC-300GHBK2-I normaly and connect the computer to its
LAN port
2. Access to "http://192.168.2.1/" and open firmware update page
("ファームウェア更新 手動更新(アップデート)")
3. Select the OpenWrt factory image and click apply ("適用") button
to perform firmware update
4. On the (initramfs) factory image, execute "mtd erase firmware" to
erase stock firmware and execute sysupgrade with squashfs-sysupgrade
image for WRC-300GHBK2-I
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-10 09:30:28 +02:00
INAGAKI Hiroshi
7a67b437e7 firmware-utils: mkedimaximg: add "big-endianness mode" option
In addition to the default little-endianness format, I added a mode
so that we can generate firmware with big-endianness format.

example: ELECOM WRC-300GHBK2-I (QCA9563)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-09-10 09:29:39 +02:00
Martin Schiller
628eb271dc kernel: backport i2c-gpio working over slow can_sleep GPIOs
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-09-10 09:28:55 +02:00
Martin Schiller
bc24f0ad2b kernel: backport rtc ds1308 support to 4.9
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-09-10 09:19:44 +02:00
Eneas U de Queiroz
0317fc3658 libpcap: patch to add limits.h to pcap-usb-linux.c
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This is an upstream-applied patch that fixes 'PATH_MAX' and 'NAME_MAX'
undeclared when compiling on musl with CONFIG_PCAP_HAS_USB.

[aafa351] pcap-usb-linux.c: add missing limits.h for musl systems.

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-09-10 09:15:26 +02:00
Rosen Penev
6a2ee91267 mvebu: Replace RTC initialization patch with upstreamed version
While we're at it, rename the patches to their proper git format-patch
name.

Tested on a Turris Omnia.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-10 09:11:31 +02:00
Rosen Penev
a9aa25c8b6 usbutils: Update usb.ids to 0.315
Referencing the version instead of revision should fix uscan.

Tested on Turria Omnia.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-10 09:10:20 +02:00
Christian Lamparter
745dee11ac ath79: add support for WD My Net Wi-Fi Range Extender
This patch ports over support for the device from ar71xx.

SOC:	AR7370 (Wasp - AR9344 rev2 0001974c)
RAM:	Winbond W9725G6KB-25 32MiB
FLASH:	Winbond 25Q64FVSIG 8MiB
WLAN:	AR9380 Dual-Band 802.11abgn 3x3:3
INPUT:	WPS, RESET button (hardware on/off toggle button)
LED:    Power, LAN, WiFi, 3 RSSI-Leds (low, medium, high)
Serial: Header Next to the winbond flash chip (labeld JP1)
	Pinout is GND - NC - RX - TX - 3V3 (JP1)
	The Serial setting is 115200-8-N-1.

- Installation via uboot's upgrade command
  0. attach serial cable
  1. interrupt uboot and enter "upgrade code.bin" into
      the u-boot prompt
	ar7240> upgrade code.bin

  2. rename openwrt...sysupgrade.bin to code.bin on PC
  3. run a tftp-client on the PC
	 (shell)$ tftp 192.168.1.230
	 binary
	 put code.bin
  4. wait for the device to finish

	[...]
	Copy buff to Flash from 0x9f040000 length 0x79f000
	Copy to Flash... write addr: 9f040000
	done

  5.  enter "go" in the u-boot prompt
	ar7240> go

- TFTP ramdisk image boot from the uboot prompt
  (tftp server defaults to serverip 192.168.1.254)
	=> tftpboot 81000000 initramfs.bin
	=> bootm

Tested and working:
	- LEDs
	- Buttons
	- Ethernet
	- Wi-Fi
	- OpenWRT sysupgrade

For flashing and debricking information see:
<https://openwrt.org/toh/wd/rext>

Users coming from ar71xx can use sysupgrade too. But I highly
advise to no save the old configuration and start from a clean
state.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-10 09:07:41 +02:00
Christian Lamparter
cd9c2492c1 ath79: port cybertan_part from ar71xx
This patch ports the cybertan_part code from ar71xx and converts the
driver to a DT-supported mtd parser. As a result, it will no longer
add the u-boot, nvram and art partitions, which were never part of
the special Cybertan header.

Instead these partitions have to be specified in the DT, which has the
upside of making it possible to add properties (i.e.: read-only), labels
and references to these important partitions.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-09-10 09:07:11 +02:00
Rafał Miłecki
ffa80bf5a7 mac80211: add iw command wrapper with error logging
Currently it's close to impossible to tell what part of mac80211 setup
went wrong. Errors logged into system log look like this:
radio0 (6155): command failed: No error information (-524)
radio0 (6155): command failed: Not supported (-95)
radio0 (6155): command failed: I/O error (-5)
radio0 (6155): command failed: Too many open files in system (-23)

With this commit change it's getting clear:
command failed: No error information (-524)
Failed command: iw dev wlan0 del
command failed: Not supported (-95)
Failed command: iw phy phy0 set antenna_gain 0
command failed: I/O error (-5)
Failed command: iw phy phy0 set distance 0
command failed: Too many open files in system (-23)
Failed command: iw phy phy0 interface add wlan0 type __ap

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-09-10 09:03:09 +02:00
Rosen Penev
f78e07ad2a hostapd: Fix compile with OpenSSL 1.1.0 + no deprecated APIs
Patch was accepted upsteam:

https://w1.fi/cgit/hostap/commit/?id=373c796948599a509bad71695b5b72eef003f661

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-09-10 09:01:37 +02:00
Luis Araneda
192838e018 zynq: rename zedboard with correct manufacturer
The board is made by Avnet, so rename it accordingly as
upstream has done it

Also move the device to maintain alphabetic order

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:56:16 +02:00
Luis Araneda
412763c812 zynq: add sdcard image support
Implement the generation of sdcard images with ext4 or
squashfs + f2fs overlay, but only enable the latter
automatically

Additionally, add mkf2fs and e2fsprogs to default packages
to manipulate ext4 and f2fs filesystems

Finally, disable the automatic generation of initramfs
and rootfs.tar.gz images, as they are no longer required
(they can still be selected in menuconfig)

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:55:39 +02:00
Luis Araneda
d6501467e7 zynq: enable kernel overlay and f2fs support
Select configs to enable build-in F2FS support
and use the overlayfs provided by generic config

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:55:20 +02:00
Luis Araneda
1ee9294609 zynq: remove bootargs from kernel config
Use options from generic instead of target-specific,
as the bootargs are now passed by the bootloader
and can be device-specific

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:55:02 +02:00
Luis Araneda
e2a4d14aaa uboot-zynq: use a file to modify the default environment
Follow the strategy of other targets and create a
default environment file, uEnv.txt, to configure the
behavior of U-Boot.
For now, use it to pass bootargs to the kernel

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:54:41 +02:00
Luis Araneda
306a60fcfe uboot-zynq: copy U-Boot images to STAGING_DIR
Create a directory inside STAGING_DIR and copy U-Boot
output images, so they can be used later when creating the
sdcard image

Additionally, like others targets, override the default
install method to avoid copying the images to bin directory

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:54:25 +02:00
Luis Araneda
e62df3dd8b uboot-zynq: automatically select the appropriate variant
Select the U-Boot variant automatically based on the
current selected device, and hide the package from
menuconfig

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:54:00 +02:00
Luis Araneda
5d2b702590 uboot-zynq: remove ZC706 board
The board was added when creating the target, but the
corresponding device was never defined inside the target

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-09-10 08:53:28 +02:00
Hans Dedecker
43d4b8e89e dnsmasq: bump to dnsmasq 2.80test6
Refresh patches

Changes since latest bump:

af3bd07 Man page typo.
d682099 Picky changes to 47b45b2967c931fed3c89a2e6a8df9f9183a5789
47b45b2 Fix lengths of interface names
2b38e38 Minor improvements in lease-tools
282eab7 Mark die function as never returning
c346f61 Handle ANY queries in context of da8b6517decdac593e7ce24bde2824dd841725c8
03212e5 Manpage typo.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-09 22:02:45 +02:00
Daniel Engberg
791a3a22ad tools/cmake: Update to 3.12.2
Update CMake to 3.12.2

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-09-09 21:38:20 +02:00
Daniel Engberg
9cfa5f2cec curl: Update to 7.61.1
Update curl to 7.61.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-09-09 21:38:10 +02:00
Yousong Zhou
9e58c20ec9 scripts/ipkg-build: quash error messages when conffiles.resolved is empty
When Package/xx/conffiles only contains directories that are empty at
package time, conffiles.resolved will be missing and the following
error messages will appear in the build log.

	/home/yousong/git-repo/openwrt/openwrt/scripts/ipkg-build -c -o 0 -g 0 /home/yousong/git-repo/openwrt/openwrt/build_dir/target-mips_24kc_musl/linux-malta_be/openvswitch-2.10.0/ipkg-mips_24kc/openvswitch-common /home/yousong/git-repo/openwrt/openwrt/bin/packages/mips_24kc/packages
	mv: cannot stat 'CONTROL/conffiles.resolved': No such file or directory
	chmod: cannot access 'CONTROL/conffiles': No such file or directory

It will not break the ipkg-build process.  The change is merely cosmetic
to not cause confusion when reading logs

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-09-09 01:21:01 +00:00
Yousong Zhou
204081670b scripts/metadata.pm: avoid adding dup names in provides list
The need arises from building Open vSwitch kernel datapath modules, e.g.

 - kmod-openvswitch from Linux upstream
 - kmod-openvswitch-intree from openvswitch source code

where both provides virtual package "kmod-openvswitch" for userspace
packages to select and depend on

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-09-09 01:21:01 +00:00
pacien
ef01c1d308 odhcp6c: add client fqdn and reconfigure options
Allowing DHCPV6_CLIENT_FQDN and DHCPV6_ACCEPT_RECONFIGURE to be turned off.
Defaulting to false, former behavior remains unchanged.

Signed-off-by: pacien <pacien.trangirard@pacien.net>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2018-09-08 21:36:30 +02:00
Koen Vandeputte
42f158314e ar71xx: fix switch probing on kernel 4.14
The bump to 4.14 changed the way mdio probes behind switches.

While the board_info is added to the list, the code that actually inserted
the list info into the phydev structure was missing.

This resulted in non-working ethernet ports.

Re-add it to fix switch probing.
This mimics the exact behaviour as it was in kernel 4.9.

Before:

[    1.066007] switch0: Atheros AR8327 rev. 4 switch registered on ag71xx-mdio.0
[    1.073409] Atheros AR8216/AR8236/AR8316: probe of ag71xx-mdio.0:00 failed with error -22
[    1.102455] libphy: ag71xx_mdio: probed
[    1.737938] ag71xx ag71xx.0: connected to PHY at ag71xx-mdio.0:00 [uid=004dd034, driver=Generic PHY]
[    1.747994] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode:RGMII
[    2.377642] ag71xx-mdio.1: Found an AR934X built-in switch
[    2.429938] eth1: Atheros AG71xx at 0xba000000, irq 5, mode:GMII

After:

[   11.163357] libphy: Fixed MDIO Bus: probed
[   11.319898] libphy: ag71xx_mdio: probed
[   11.360844] switch0: Atheros AR8327 rev. 4 switch registered on ag71xx-mdio.0
[   12.447398] libphy: ag71xx_mdio: probed
[   13.077402] ag71xx ag71xx.0: connected to PHY at ag71xx-mdio.0:00 [uid=004dd034, driver=Atheros AR8216/AR8236/AR8316]
[   13.088989] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode:RGMII
[   13.717716] ag71xx-mdio.1: Found an AR934X built-in switch
[   13.769990] eth1: Atheros AG71xx at 0xba000000, irq 5, mode:GMII

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Koen Vandeputte
2253524023 gdb: bump to 8.2
*** Changes in GDB 8.2

 Support for the following target has been added:

    RiscV ELF (riscv*-*-elf)

 Support for following targets and native configurations has been removed:

    m88k running OpenBSD (m88*-*-openbsd*)
    SH-5/SH64 ELF (sh64-*-elf*)
    SH-5/SH64 (sh*)
    SH-5/SH64 running GNU/Linux (sh*-*-linux*)
    SH-5/SH64 running OpenBSD (sh*-*-openbsd*)

 Various Python API enhancements
 Aarch64/Linux enhancements:

    SVE support.
    Hardware watchpoints improvements for entities stored at unaligned addresses.
        New "c" response to disable the pager for the rest of the current command.
        C expressions can now use _Alignof, and C++ expressions can now use alignof.
        Improved flexibility for loading symbol files.
        The 'info proc' command nows works on running processes on FreeBSD systems as well as core files created on FreeBSD systems.
        A new --enable-codesign=CERT configure option to automatically codesign GDB after build (useful on MacOS X).

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Koen Vandeputte
c24d02d154 toolchain/gdb: bump to 8.2
*** Changes in GDB 8.2

 Support for the following target has been added:

    RiscV ELF (riscv*-*-elf)

 Support for following targets and native configurations has been removed:

    m88k running OpenBSD (m88*-*-openbsd*)
    SH-5/SH64 ELF (sh64-*-elf*)
    SH-5/SH64 (sh*)
    SH-5/SH64 running GNU/Linux (sh*-*-linux*)
    SH-5/SH64 running OpenBSD (sh*-*-openbsd*)

 Various Python API enhancements
 Aarch64/Linux enhancements:

    SVE support.
    Hardware watchpoints improvements for entities stored at unaligned addresses.
        New "c" response to disable the pager for the rest of the current command.
        C expressions can now use _Alignof, and C++ expressions can now use alignof.
        Improved flexibility for loading symbol files.
        The 'info proc' command nows works on running processes on FreeBSD systems as well as core files created on FreeBSD systems.
        A new --enable-codesign=CERT configure option to automatically codesign GDB after build (useful on MacOS X).

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Koen Vandeputte
77024a9d95 mac80211: backport upstream fixes
Backport most significant upstream fixes (excl. hwsim fixes)
Refreshed all patches.

Contains important fixes for CSA (Channel Switch Announcement)
and A-MSDU frames.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Koen Vandeputte
079871983c kernel: bump 4.14 to 4.14.68
Refreshed all patches.

Remove upstream accepted:
- 330-Revert-MIPS-BCM47XX-Enable-74K-Core-ExternalSync-for.patch

Altered:
- 303-v4.16-netfilter-nf_tables-remove-multihook-chains-and-fami.patch
- 308-mips32r2_tune.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Koen Vandeputte
752ee31ad2 kernel: bump 4.9 to 4.9.125
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Koen Vandeputte
b4bd6c2c95 kernel: bump 3.18 to 3.18.121
Refreshed all patches.

Compile-tested on: adm5120
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-09-07 17:21:24 +02:00
Carlo Nel
6bbb220255 ramips: add support for TP-Link TL-MR3020 v3
TP-Link TL-MR3020 v3 is a pocket-size router based on MediaTek MT7628N.

This PR is based on the work of @meyergru[1], with his permission.

Specification:
- MediaTek MT7628N/N (575 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz
- 1x 10/100 Mbps Ethernet

Flash instruction:

The only way to flash the image in TL-MR3020 v3 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.225/24 and tftp server.
2. Rename "openwrt-ramips-mt76x8-tplink_tl-mr3020-v3-squashfs-tftp-recovery.bin"
   to "tp_recovery.bin" and place it in tftp server directory.
3. Connect PC with the LAN port, press the reset button, power up
   the router and keep button pressed for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

[1] https://github.com/meyergru/lede-source/commits/TL-MR3020-V3

Signed-off-by: Carlo Nel <carlojnel@gmail.com>
2018-09-06 21:36:42 +02:00
Matt Merhar
9c26def64a ath79: fix unaligned access panic in ag71xx_mdio_probe
Without "syscon" being present in an ag71xx ethernet DT node's
compatible property, a panic occurs at boot during probe citing
"Unhandled kernel unaligned access".

With this modification, the panic no longer occurs and instead the probe
simply fails, allowing the boot process to continue.

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
2018-09-06 21:35:53 +02:00
Matt Merhar
b672550b32 ath79: add syscon compatible property to ar7100 ethernet nodes
This adds "syscon" to the compatible properties for the eth0/eth1 nodes
in ar7100.dtsi.

Without this, a kernel panic is encountered on boot with some ar7100
boards. This for some reason wasn't an issue for the WNDR3800, which
uses a Realtek switch chipset, but the panic was encountered on the
RouterStation Pro (using an AR8216 switch) and some other boards that
haven't yet been merged.

The panic message mentions an unaligned access and happens in
ag71xx_mdio_probe in drivers/net/ethernet/atheros/ag71xx/ag71xx_mdio.c.

Even if the unaligned access is fixed, the ag71xx_mdio probe still fails
without the "syscon" property.

This was already being worked around in
ar7161_ubnt_routerstation-pro.dts by overriding the compatible property,
so this commit removes that as well.

All of the other ath79 .dtsi already have this property, so no changes
are needed elsewhere.

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
2018-09-06 21:35:53 +02:00
Mathias Kresin
287b7aa583 ramips: drop obsolete sd card driver code
The pinmux for all SoCs using this driver is now set via the pinmux. It
makes this code obsolete.

Some of the code targeting the mt76x8 SoCs is still required. The sd
card pins share the pads with the EPHY. These pads need to be switched
to digital mode if the pins are used for sd cards.

The eMMC 8-bit mode has to be enabled via pinmux instead of a kernel
option. The uart2 group need to be set to function "sdxc d5 d4", pwm1
to "sdxc d6" and pwm0 to "sdxc d7" to do so. It can't be done by as
part of a default pinmux, as it would break the normal operation of
uart2.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-06 21:35:53 +02:00
Mathias Kresin
563a5b5f94 ramips: add mt7620/1 sdhci pinmux
Set the pins to the required mode via the pinmux driver. It allows to
get rid of the pinmux related code in the sd card driver.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-06 21:35:53 +02:00
Mathias Kresin
a14097e8e0 ramips: fix mt7620a ND/SD pins pinmuxes
Drop the nd_sd gpio pinmux in case sdcard is used. They're mutually
exclusive and for most of the boards not even used as GPIOs.

If the pins are in sdcard mode, the pins ND_WE_N and ND_CS_N are still
GPIOs (#45 and #46).

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-06 21:35:53 +02:00
Mathias Kresin
2cc7980dcb ramips: reference node by label
Reference the HC5661A sdhci node by label instead of by the full path.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-06 21:35:53 +02:00
Mathias Kresin
1d08951628 ramips: add rt3352 SPI_CS1 pinmux
The rt3352 has a pin that can be used as second spi chip select,
watchdog reset or GPIO. The pinmux setup was missing the definition of
said pin but it is already used in the SoC dtsi.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-09-06 21:35:53 +02:00
Henrique de Moraes Holschuh
ca1b347691 dnsmasq: allow dnsmasq variants to be included in image
The dnsmasq variants should provide dnsmasq, otherwise it is impossible
to include them in the image.

This change allows one to have CONFIG_PACKAGE_dnsmasq=m and
CONFIG_PACKAGE_dnsmasq-full=y, e.g. because you want DNSSEC support, or
IPSETs suport on your 3000-devices fleet ;-)

Signed-off-by: Henrique de Moraes Holschuh <henrique@nic.br>
2018-09-06 17:57:59 +02:00
Hans Dedecker
3d377f4375 dnsmasq: bump to dnsmasq v2.80test5
Refresh patches
Remove 240-ubus patch as upstream accepted.
Add uci option ubus which allows to enable/disable ubus support (enabled
by default)

Upstream commits since last bump:

da8b651 Implement --address=/example.com/#
c5db8f9 Tidy 7f876b64c22b2b18412e2e3d8506ee33e42db7c
974a6d0 Add --caa-record
b758b67 Improve logging of RRs from --dns-rr.
9bafdc6 Tidy up file parsing code.
97f876b Properly deal with unaligned addresses in DHCPv6 packets.
cbfbd17 Fix broken DNSSEC records in previous.
b6f926f Don't return NXDOMAIN to empty non-terminals.
c822620 Add --dhcp-name-match
397c050 Handle case of --auth-zone but no --auth-server.
1682d15 Add missing EDNS0 section. EDNS0 section missing in replies to EDNS0-containing queries where answer generated from --local=/<domain>/
dd33e98 Fix crash parsing a --synth-domain with no prefix. Problem introduced in 2.79/6b2b564ac34cb3c862f168e6b1457f9f0b9ca69c
c16d966 Add copyright to src/metrics.h
1dfed16 Remove C99 only code.
6f835ed Format fixes - ubus.c
9d6fd17 dnsmasq.c fix OPT_UBUS option usage
8c1b6a5 New metrics and ubus files.
8dcdb33 Add --enable-ubus option.
aba8bbb Add collection of metrics
caf4d57 Add OpenWRT ubus patch

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-06 15:48:13 +02:00
Stijn Tintel
067e2f5f1d strace: fix build on aarch64
As of version 4.21, strace enforces mpers by default. The current
implementation of aarch64 compat in strace assumes it's identical to
ARMv7 EABI and therefore tries to enable m32 personality support. As
there is no -m32 support on aarch64, this causes the build to fail.

Restore previous strace behavior to fix build on aarch64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Tested-by: Karl Palsson <karlp@tweak.net.au>
2018-09-05 23:49:15 +02:00
Hans Dedecker
ecc3165cbc odhcpd: bump to git HEAD (detect broken hostnames)
881f66b odhcpd: detect broken hostnames
3e17fd9 config: fix odhcpd_attrs array size

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-05 11:04:19 +02:00
Felix Fietkau
36c6ba3735 imx6: use BUILD_DEVICES in uboot-imx6 for mx6cuboxi
Fixes build with the default profile

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-05 10:00:01 +02:00
Felix Fietkau
b9f926e151 imx6: rename Generic profile to Default, fixes u-boot image build issue
u-boot.mk checks for the Default profile to build images for all targets.
This brings the target default profile in sync with other targets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-05 10:00:01 +02:00
Jason A. Donenfeld
4ccbe7de6c wireguard: bump to 0.0.20180904
* Kconfig: use new-style help marker
* global: run through clang-format
* uapi: reformat
* global: satisfy check_patch.pl errors
* global: prefer sizeof(*pointer) when possible
* global: always find OOM unlikely

Tons of style cleanups.

* crypto: use unaligned helpers

We now avoid unaligned accesses for generic users of the crypto API.

* crypto: import zinc

More style cleanups and a rearrangement of the crypto routines to fit how this
is going to work upstream. This required some fairly big changes to our build
system, so there may be some build errors we'll have to address in subsequent
snapshots.

* compat: rng_is_initialized made it into 4.19

We therefore don't need it in the compat layer anymore.

* curve25519-hacl64: use formally verified C for comparisons

The previous code had been proved in Z3, but this new code from upstream
KreMLin is directly generated from the F*, which is preferable. The
assembly generated is identical.

* curve25519-x86_64: let the compiler decide when/how to load constants

Small performance boost.

* curve25519-arm: reformat
* curve25519-arm: cleanups from lkml
* curve25519-arm: add spaces after commas
* curve25519-arm: use ordinary prolog and epilogue
* curve25519-arm: do not waste 32 bytes of stack
* curve25519-arm: prefix immediates with #

This incorporates ASM nits from upstream review.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-09-05 08:52:36 +02:00
Matthias Schiffer
b452af23a8 mpc85xx: add migration script for TP-Link TL-WDR4900 v1 WLAN PCI paths
PCI paths of the WLAN devices have changed between kernel 4.4 and 4.9;
migrate config so existing wifi-iface definitions don't break.

This is implemented as a hotplug handler rather than a uci-defaults script
as the migration script must run before the 10-wifi-detect hotplug handler.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-09-04 21:27:27 +02:00
Alexander Couzens
967d6460c0 hostapd: fix build of wpa-supplicant-p2p
VARIANT:= got removed by accident.

Fixes: 3838b16943 ("hostapd: fix conflicts hell")
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-09-03 21:51:06 +02:00
Felix Fietkau
ded905ce43 imx6: extend cubox support to hummingboard, add support for building full images
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Felix Fietkau
8c41f1f81c imx6: enable f2fs and loopback support in preparation for squashfs with overlay support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Felix Fietkau
00f030a9c6 build: add support for enabling the rootfs/boot partition size option via target feature
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Felix Fietkau
7165378d19 uboot-imx6: fall back to MMC for SPL if boot mode is invalid
Fixes boot on Hummingboard

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Felix Fietkau
aa3efca8d9 uboot-imx6: remove obsolete patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Felix Fietkau
eab7bcc8e1 uboot-imx6: install images into STAGING_DIR_IMAGE
Will be used by a new combined image for cubox

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Felix Fietkau
b605a84a74 ramips: ethernet: unify tx descriptor buffer splitting
A buffer is split into multiple descriptors if it exceeds 16 KB.
Apply the same split for the skb head as well (to deal with corner cases
on fraglist support)

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-09-03 12:06:24 +02:00
Hans Dedecker
17c9b72046 nghttp2: bump to 1.33.0
9d843334 Update bash_completion
23cb3f38 Update manual pages
1d682dcd Bump up version number to 1.33.0, LT revision to 31:0:17
601fbbb4 Update doc
f44aa246 Update AUTHORS
dd74a6dd Update manual pages
e959e733 src: Refactor utos
fb9a204d nghttpx: Fix compile error without mruby
cd096802 Update doc
7417fd71 nghttpx: Per-pattern not per-backend
2d1a981c Merge branch 'akonskarm-master'
45acc922 clang-format
214d0899 Merge branch 'master' of https://github.com/akonskarm/nghttp2 into akonskarm-master
31fd707d nghttpx: Fix broken healthmon frontend
9a2e38e0 fix code for reuse addr on asio client
d24527e7 Bump up LT revision due to v1.32.1 release
6195d747 nghttpx: Share mruby context if it is compiled from same file
fb97f596 nghttpx: Allocate mruby file because fopen requires NULL terminated string
0ccc7a77 nghttpx: Move blocked request data to request buffer for API request
32826466 nghttpx: Fix crash with API request
0422f8a8 nghttpx: Fix worker process crash with neverbleed write error
e329479a Merge pull request #1215 from nghttp2/mruby-per-backend
f80a7873 Merge branch 'akonskarm-reuse_addr'
866ac6ab add option reuse addr in local endpoint configuration of asio client
b574ae6a nghttpx: Support per-backend mruby script
de4fd7cd doc: Update doc
32d7883c nghttpx: Downstream::request_buf_full: take into account blocked_request_buf_
9b24e197 nghttpx: Choose h1 protocol if headers have been sent to backend on retry
13ffece1 Merge pull request #1214 from nghttp2/fix-rst-without-dconn
9d5b781d Fix stream reset if data from client is arrived before dconn is attached

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-03 10:46:20 +02:00
Kevin Darbyshire-Bryant
dc9388ac55 iproute2: update cake man page
CAKE supports overriding of its internal classification of
packets through the tc filter mechanism.

Update the man page in our package, even though we don't
build them.  Someone may find the documentation useful.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit 30598a05385b0ac2380dd4f30037a9f9d0318cf2)
2018-08-31 15:30:28 +07:00
Kevin Darbyshire-Bryant
721dfd4eb8 kmod-sched-cake: bump to 20180827
Expand filter flow mapping to include hosts as well

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit d14ffdc307d36bd9abe908b46ff7baece54c9551)
2018-08-31 15:30:27 +07:00
Jo-Philipp Wich
555c592304 ppp: remove hardcoded lcp-echo-failure, lcp-echo-interval values
OpenWrt used to ship hardcoded defaults for lcp-echo-failure and
lcp-echo-interval in the non-uci /etc/ppp/options file.

These values break uci support for *disabling* LCP echos through
the use of "option keepalive 0" as either omitting the keepalive
option or setting it to 0 will result in no lcp-echo-* flags
getting passed to the pppd cmdline, causing the pppd process to
revert to the defaults in /etc/ppp/options.

Address this issue by letting the uci "keepalive" option default
to the former hardcoded values "5, 1" and by removing the fixed
lcp-echo-failure and lcp-echo-interval settings from the
/etc/ppp/options files.

Ref: https://github.com/openwrt/luci/issues/2112
Ref: https://dev.archive.openwrt.org/ticket/2373.html
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=854
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=1259
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-30 15:19:45 +02:00
Jo-Philipp Wich
4302c917cc Revert "ramips: mmc: Fix init for MT7628AN"
This reverts commit 3a8efaef00.

The change reportedly breaks UART2 on some boards. Furthermore it uses
bitwise logic on an uninitialized variable and fails to explain what it
is fixing exactly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-30 13:19:26 +02:00
Jo-Philipp Wich
77e2bccde8 ramips: only limit lzma dictionary size on mt7621
The changed dictionary size leads to a different LZMA header which breaks
sysupgrade image magic checkibng on at least some RT288x boards.

Since the commit message only mentions testing on MT7621 and since the
change appears to break at least one other ramips subtarget, do not take
any chances and restrict the size limitation to only MT7621.

Fixes FS#1797
Fixes 09b6755946 ("ramips: limit dictionary size for lzma compression")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-30 10:57:35 +02:00
Mathias Kresin
a6e11ccb13 ramips: fix rt3883 pinmux for second SPI
The rt3883 doesn't have a pinmux group named spi_cs1. The cs1 is part
of the pci group. The function pci-func enables the second chip select.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 21:00:58 +02:00
Mathias Kresin
dcdc6d9dad ramips: fix rt3883 pci pinmux
The PCI pins need to be set to "PCI Host support one device" to allow
the use of one PCI device and flash memory.

The pci-fnc function is intended to be used if no PCI is used but
flash, nand or the codec functionality is.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 21:00:58 +02:00
Jo-Philipp Wich
5ebcd32997 scripts: bundle-libraries: fix logic flaw
Previous refactoring of the script moved the LDSO detection into a
file-not-exists condition, causing onyl the very first executable to
get bundled.

Solve the problem by unconditionally checking for LDSO again.

Fixes: 9030a78a71 ("scripts: bundle-libraries: prevent loading host locales")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-29 14:19:43 +02:00
Thomas Equeter
acedce1d79 uqmi: wait for the control device too
The control device /dev/cdc-wdm0 is not available immediately on the
D-Link DWR-921 Rev.C3, therefore the wwan interface fails to start at
boot with a "The specified control device does not exist" error.

This patch alters /lib/netifd/proto/qmi.sh to wait for
network.wwan.delay earlier, before checking for the control device,
instead of just before interacting with the modem.

One still has to use network.wwan.proto='qmi', as the "wwan" proto
performs that sort of check before any delay is possible, failing with a
"No valid device was found" error.

Signed-off-by: Thomas Equeter <tequeter@users.noreply.github.com>
2018-08-29 13:10:12 +02:00
Freddy Leitner
7aa5dc46ee apm821xx: MBL: load kernel/dtb from SATA 0:1 first
This remedies an issue with the MBL Duo if both disks are inserted
and contain OpenWrt. kernel and dtb would be loaded from SATA 1:1
while rootfs (/dev/sda2) would be mounted on SATA 0:1.

Such a mix&match would obviously only work if both OpenWrt versions/
builds are identical, and especially fail after sysupgrade upgraded
the system disk on SATA 0:1.

The fallback to SATA 1:1 needs to be kept for MBL Single (only has
SATA 1:1) and MBL Duo with one disk inserted on SATA 1:1. To speed
up booting in those cases, the unneccesarily doubled "sata init"
will only be called once. (In theory it could be omitted completely
since the on-flash boot script already initializes SATA to load the
on-disk boot script.)

Tested on MBL Duo (all possible combination of disks) and MBL Single

Acked-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Freddy Leitner <hello@square.wf>
2018-08-29 09:43:10 +02:00
Mathias Kresin
c134210b8f ramips: drop pointless default led definitions
The LEDs should be triggered/lit by any kind of state change instead of
turned on/off unconditional.

If LEDs really need to be turned off by default, it should be done via
the default-state devicetree led property.

The handling of the wndr3700v5 and wt3020 power led is at least
strange. Something is for sure wrong with them. Either the leds are
misnamed, the default off trigger is a typo or the polarity of the
gpios is wrong. Drop the power led from userspace and wait for someone
with access to the hardware to fix it properly.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 09:39:32 +02:00
Mathias Kresin
43df31f64d ramips: add missing zbt-cpe102 diag led
Based on the userspace led configuration it's quite obvious that the
4g-0 led should be used for boot status indication.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 09:34:09 +02:00
Mathias Kresin
99045dfc59 ramips: express diag led handling via devicetree
Use the default-state property to express the desired led handling in
the devicetree source file instead of the userspace.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 09:34:07 +02:00
Mathias Kresin
111907e8d3 ramips: remove default on userspace trigger for diag leds
All the LEDs are turned on by diag.sh at the end of the boot process.
No need to do the same via userspace configuration again.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 09:26:24 +02:00
Mathias Kresin
56e6ebdea4 ramips: fix multi colour led handling
All boards either have a multi colour led or a single lightpipe. It
makes it impossible to handle the LEDs individual. Change the LED
config for these boards to take it into account.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 09:24:49 +02:00
Mathias Kresin
fe1e90deb4 ramips: rt-n12p: use the boardname helper variable
Use the helper variable for the Asus RT-N12P as it is done by all
boards.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-29 09:23:11 +02:00
Giuseppe Lippolis
774d7fc9f2 comgt: increase timeout on runcommands
Some combination of modem/wireless operator requires more time to
execute the commands.
Tested on DWR-512 embedded wwan modem and italian operator iliad (new
virtual operator).

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2018-08-29 08:34:10 +02:00
Paul Wassi
1bd6b91e0f base-files: provide more tolerant xterm detection
Set the window title not only in "xterm", but also in
e.g. "xterm-256color", "xterm-color", etc.
The case statement is taken from Debian / Ubuntu.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-08-29 08:33:54 +02:00
Bruno Randolf
fe960cead7 ugps: Update to fix position calculation
This is necessary to get my position right.
Without this my longitude is incorrecty -15.85xxxx instead of -16.52yyyy

Signed-off-by: Bruno Randolf <br1@einfach.org>
2018-08-29 08:31:10 +02:00
Bruno Randolf
6b14a73f4f ugps: Add option disabled
Like many other packages, an option to disable can be practical.

Signed-off-by: Bruno Randolf <br1@einfach.org>
2018-08-29 08:31:10 +02:00
Koen Vandeputte
01793e8752 kernel: bump 4.14 to 4.14.67
Refreshed all patches.

Removed upstreamed patches:
- 037-v4.18-0008-ARM-dts-BCM5301x-Fix-i2c-controller-interrupt-type.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-28 23:05:39 +02:00
Koen Vandeputte
22f899c6dd kernel: bump 4.9 to 4.9.124
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-28 23:05:39 +02:00
Koen Vandeputte
23366b6dc6 mediatek: remove duplicate RPS patch
Commit 7af1fb9faa ("kernel: add a RPS balancer") introduces a RPS balancer
for all targets.

In the past however, this patch was already introduced for target "mediatek"
in commit 7762c07c88 ("mediatek: bump to v4.14")

Remove the separate copy of the patch within the mediatek target,
which otherwise is applied twice and results in a build error.

Fixes: 7af1fb9faa ("kernel: add a RPS balancer")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-28 14:57:15 +02:00
Robert Marko
a9d7353192 ethtool: Update to 4.18
Tested on 8devices Jalapeno(ipq40xx)
Introduces following changes:
Feature: Add support for WAKE_FILTER (WoL using filters)
Feature: Add support for action value -2 (wake-up filter)
Fix: document WoL filters option also in help message
Feature: ixgbe dump strings for security registers

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-08-28 13:46:16 +02:00
John Crispin
fd20fdd0b8 ath79: fix remove irq code from pci driver patch
This patch got mangled in the void while rebasing it.

Signed-off-by: John Crispin <john@phrozen.org>
2018-08-28 11:58:50 +02:00
John Crispin
1d4d156a7c generic: add flow_offload accounting
This patch makes the flow offloading layer account for the traffic inside
the conntack entries.

Signed-off-by: John Crispin <john@phrozen.org>
2018-08-28 11:30:39 +02:00
John Crispin
7af1fb9faa kernel: add a RPS balancer
By default the RPS delegation will happen by masking the last few bits of
skb->hash. This patch adds an inermediate hash bucket that maps the masked
hash to a RPS core. This makes RPS results much more deterministic on SMP
systems.

Signed-off-by: John Crispin <john@phrozen.org>
2018-08-28 11:30:26 +02:00
David Bauer
8e9a59a6b9 build: add mkrasimage
The current make-ras.sh image generation script for the ZyXEL NBG6617
has portability issues with bash. Because of this, factory images are
currently not built correctly by the OpenWRT buildbots.

This commit replaces the make-ras.sh by C-written mkrasimage.

The new mkrasimage is also compatible with other ZyXEL devices using
the ras image-format.
This is not tested with the NBG6616 but it correctly builds the
header for ZyXEL factory image.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-28 11:26:53 +02:00
Dmitry Tunin
8132e06247 ath79: fix ar7100 PCI IRQ handling
Currently all PCI devices get the same IRQ that affects performance badly.

This commit adresses this problem and cleans the code.

ar7100 has a special PCI interrupt controller@18060018 that works exactly
the same way as misc interrupt controller.

This patch does the following:

1. Defines pci-intc interrupt controller@18060018 in dtsi.
2. Removes interrupt-controller property from PCI node.
3. Sets a correct interrupt mask for PCI devices.
4. Removes all IRQ handling code from the PCI driver.

"qca,ar7100-misc-intc" should be used as the compatible property, becuase on ar7100
the controlled status register is read-only and the ack method used in
"qca,ar7240-misc-intc" won't work properly.

There are two very minor downsides of this patch that don't affect perormance:

1. We allocate an IRQ domain of 32 IRQ, whan we need only 5. But ar7100 aren't tiny un terms of RAM
and that is not very important and can be tuned if we implement "nr-interrupts" property".

2. It reuses the same irg chip name "MISC" for both controllers.

Run tested on DIR-825 B1.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2018-08-28 11:26:53 +02:00
Chuanhong Guo
028daa9974 ath79: ag71xx: apply interface mode to MII0/1_CTRL on ar71xx/ar913x
We currently don't have any code configuring interface mode in ath79,
meaning that we relies on bootloader to set the correct interface mode.

This patch added code to set interface correctly so that everything works
even if bootloader configures it wrong.(e.g. on WNDR3800 u-boot set
the second GMAC mode to RMII but it should be RGMII.)

Introduced "qca,mac-idx" for the difference in MII_CTRL register value.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-28 11:26:53 +02:00
John Crispin
9300eda00f ath79: replace patches
replace our downstream version of the patches with the ones
that were sent upstream.

Signed-off-by: John Crispin <john@phrozen.org>
2018-08-28 11:26:53 +02:00
Hauke Mehrtens
af6e901ae8 strace: update strace to version 4.24
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-28 11:26:53 +02:00
Michal Cieslakiewicz
2e3e0fd94c ar71xx: WNR612v2: fix kernel panic due to wrong Wifi LED init
Netgear WNR612v2 flashed with recent OpenWrt builds suffers from kernel
panic at boot during wireless chip initialization, making device
unusable:

 ath: phy0: Ignoring endianness difference in EEPROM magic bytes.
 ath: phy0: Enable LNA combining
 CPU 0 Unable to handle kernel paging request at virtual address 1000fee1, epc == 801d08f0, ra == 801d0d90
 Oops[#1]:
 CPU: 0 PID: 469 Comm: kmodloader Not tainted 4.9.120 #0
 [ ... register dump etc ... ]
 Kernel panic - not syncing: Fatal exception
 Rebooting in 1 seconds..

This simple patch fixes above error. It keeps LED table in memory after
kernel init phase for ath9k driver to operate correctly (__initdata
removed).

Also, another bug is fixed - correct array size is provided to function
that adds platform LEDs (this device has only 1 connected to Wifi chip)
preventing code from going outside array bounds.

Fixes: 1f5ea4eae4 ("ar71xx: add correct named default wireless led by using platform leds")

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
[trimmed commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-28 07:21:01 +02:00
Matthias Schiffer
a4f4ddba61 ar71xx/generic: enable Zyxel NBG6616 in kernel config again
The NBG6616 shares a config symbol with the NBG6716. It was accidentally
removed from the config when the ar71xx-tiny target was split off.

Fixes: 0cd5e85e7a ("ar71xx: create new ar71xx/tiny subtarget for 4MB flash devices")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-08-27 20:27:25 +02:00
Matt Merhar
d03c89838e ath79: initial support for Ubiquiti RouterStation and RouterStation Pro
This adds a shared ar7161_ubnt_routerstation.dtsi as well as two other
.dts files that utilize it, ar7161_ubnt_routerstation.dts and
ar7161_ubnt_routerstation-pro.dts.

The modifications to generic-ubnt.mk, config-default, and base-files
necessary for image generation, parsing RedBoot FIS partitions, network
configuration, and sysupgrade are also included.

This reintroduces vital bits from platform_do_upgrade_combined() and its
supporting functions to /lib/upgrade/platform.sh, which were previously
removed from ath79 in 3e9d9f6225 "ath79:
sysupgrade: drop unused platform checks". The new function is called
"routerstation_do_upgrade" and will *only* work for the RouterStation
series of boards. It does however retain the ability to downgrade (e.g.
from master -> 17.01.x using sysupgrade -F).

All hardware is functional including the AR8216 switch (for the Pro),
wireless via ath5k/ath9k using the miniPCI slots, flash, USB, button,
and LED.

Switch and LAN/WAN configuration is the same as it is with the
equivalent ar71xx targets. MAC addresses are assigned based upon the
content stored in the RedBoot config partition.

Flashing via both sysupgrade and TFTP has been confirmed to work. Also,
the initramfs images are now raw .bin files instead of being wrapped in
a uImage (as they currently are in ar71xx), which makes them bootable
with RedBoot.

One notable difference to ar71xx is the inclusion of the RedBoot
"fconfig" utility (analogous to U-Boot’s fw_printenv/fw_setenv) in
DEVICE_PACKAGES. The FIS partitions are probed using the RedBoot MTD
parser’s DT binding, whose proper usage is mutually exclusive to
defining a separate fixed-partitions node for "RedBoot config". This
config partition contains the board's base MAC address. The lack of a
hard-coded flash location means that the mtd-mac-address property cannot
be used in the .dts, so instead fconfig is used to read the MAC
addresses from flash in userspace during first boot.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
2018-08-27 19:31:17 +02:00
Paul Wassi
e348ccc4e6 treewide: fix some cosmetic glitches in dts files
- fix single spaces hidden by a tab
- replace indentation with spaces by tabs
- make empty lines empty
- drop trailing whitespace
- drop unnecessary blank lines

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-08-27 19:31:17 +02:00
Mathias Kresin
3601c3de23 ramips: fix mt7620 pinmux for second SPI
The mt7620 doesn't have a pinmux group named spi_cs1. The cs1 is part
of the "spi refclk" group. The function "spi refclk" enables the second
chip select.

On reset, the pins of the "spi refclk" group are used as reference
clock and GPIO.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-27 19:31:17 +02:00
Hauke Mehrtens
a2488f3a24 linux-firmware: realtek: Add FW for rtl8192eu, rtl8723au and rtl8723bu
These devices are more or less supported by the kmod-rtl8xxxu driver.

Fixes: FS#1789
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-27 18:13:33 +02:00
Jo-Philipp Wich
9030a78a71 scripts: bundle-libraries: prevent loading host locales (FS#1803)
Binary patch the bundled glibc library to inhibit loading of host locale
archives in order to avoid triggering internal libc assertions when
invoking shipped, bundled executables.

The problem has been solved with upstream Glibc commit
0062ace229 ("Gracefully handle incompatible locale data") but we still
need to deal with older Glibc binaries for some time to come.

Fixes FS#1803
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-27 12:51:07 +02:00
Hans Dedecker
6caa8e09aa nghttp2: bump to 1.32.1
4c76aaee Update manual pages
2b51ad67 Bump up version number to 1.32.1, LT revision to 30:3:16
708379dc Tweak nghttp2_session_set_stream_user_data
73106b0d Compile with clang-6.0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-27 10:11:10 +02:00
Stijn Tintel
2c01425d2d ath10k-firmware: update both QCA988X CT variants
This fixes slow performance with 802.11w enabled.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-08-26 18:24:02 +02:00
Stijn Tintel
616b972920 ath10k-ct: bump to git HEAD
e0d2ce0 ath10k:  Support setting tx_antenna in descriptor field.
29c644f Update to latest 4.13 and 4.16 ath10k-ct drivers.
20db9db ath10k:  Support vdev stats for 4.9, 4.16  kernel
fd92066 ath10k:  Support 'ct-sta-mode' for 9984 firmware that supports it.
34954f0 ath10k:  get_tsf, PMF

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-08-26 18:40:46 +03:00
Hauke Mehrtens
0f2787b9ff x86: geode: Add missing config options
This adds a configuration options which is needed now.
Without this patch the geode build will fail.

Fixes: 4eda2fddf2 ("x86/geode: enable X86_INTEL_LPSS to select PINCTRL")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-26 12:32:26 +02:00
Hans Dedecker
8fd8e79143 iproute2: update to 4.18.0
Update to the latest version of iproute2; see https://lwn.net/Articles/762515/
for a full overview of the changes in 4.18.
Remove upstream patch 001-rdma-sync-some-IP-headers-with-glibc

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-25 20:54:00 +02:00
Felix Fietkau
d9792152fd ath9k: fix setting up tx99 with a monitor mode interface
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-08-25 19:18:08 +02:00
Felix Fietkau
d45b5a061d ath79: fix mac address increment for embedded wireless Dorin
Use mtd-mac-address-increment-byte to match ar71xx behavior

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-08-25 19:18:08 +02:00
Felix Fietkau
a1f4ebcc87 kernel: make mtd mac address increment more flexible
Allow selecting the byte on which the increment should be added.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-08-25 19:18:08 +02:00
Hauke Mehrtens
e882e63f1e kernel: add missing dependency to regmap to kmod-gpio-mcp23s08
This fixes a build problem recently introduced.

Fixes: a904003b9b ("kernel: fix kmod-gpio-mcp23s08 for linux 4.14")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-25 18:18:35 +02:00
Tuomas Tynkkynen
5dd745588e brcm47xx: Enable USB power on WNDR3400v3
WNDR3400v3 needs GPIO 21 pulled high to enable power to USB ports. Add a
kernel patch to do that.

Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
2018-08-25 16:27:17 +02:00
Keith Wong
79c233daa4 kernel: add kmod-tcp-bbr
This adds support for BBR (Bottleneck Bandwidth and RTT) TCP
congestion control. Applications (e.g. webservers, VPN client/server)
which initiate connections from router side can benefit from this.

This provide an easier way for users to use BBR by selecting /
installing kmod-tcp-bbr instead of altering kernel config and
compiling firmware by themselves.

Signed-off-by: Keith Wong <keithwky@gmail.com>
2018-08-25 15:40:24 +02:00
Daniel Engberg
e341f45913 libbsd: Update to 0.8.7
Update libbsd to 0.8.7
Remove glibc dependency
Clean up InstallDev and install entries
Use /usr path for consistency
Cherry pick patches from upstream to fix musl compilation

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-08-25 15:40:23 +02:00
Vladimir Vid
6cda4f6861 imx6: Initial support for SolidRun CuBox-i devices based on i.MX6 processors (i1, i2, i2eX, and i4Pro).
- Specifications -

CuBox i1:
- SoC: i.MX6 Solo
- Cores: 1
- Memory Size: 512MB
- GPU: GC880
- Wifi/Bluetooth: Optional
- USB 2.0 ports: 2
- Ethernet: 10/100/1000 Mbps

CuBox i2 | i2eX:
- SoC: i.MX6 Dual Lite
- Cores: 2
- Memory Size: 1GB
- GPU: GC2000
- Wifi/Bluetooth: Optional
- USB 2.0 ports: 2
- Ethernet: 10/100/1000 Mbps

CuBox i4Pro | i4x4:
- SoC: i.MX6 Quad
- Cores: 4
- Memory Size: 2/4 GB
- GPU: GC2000
- Wifi/Bluetooth: Build In
- USB 2.0 ports: 2
- Ethernet: 10/100/1000 Mbps

Built-in u-boot requires SPL (secondary program loader) to be present on the SD-card regardless of the image type which will be loaded.
SPL is generated by the u-boot-mx6cuboxi package which is preselected by the target device and can be found in bin/u-boot-mx6cuboxi directory.

Flashing the SPL:
dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=4
dd if=bin/targets/imx6/generic/u-boot-mx6cuboxi/SPL of=/dev/mmcblk0 bs=1K seek=1

Preparing the firmware on the SD-card:
(echo o; echo n; echo p; echo 1; echo ''; echo ''; echo w) | fdisk /dev/mmcblk0
mkfs.ext4 /dev/mmcblk0p1
mount /dev/mmcblk0p1 /mnt
tar -xzf bin/targets/imx6/generic/openwrt-imx6-device-cubox-i-rootfs.tar.gz -C /mnt/
mkdir -p /mnt/boot
cp bin/targets/imx6/generic/{*-uImage,*.dtb,*.scr} /mnt/boot/

Generated u-boot.img needs to be placed on the first partition:
cp bin/targets/imx6/generic/u-boot-mx6cuboxi/u-boot.img /mnt/

To boot from the SD card:

Boot script which sets mmc/dtb parameters and boots the board is automatically sourced.
If this does not work for any reason:
mmc dev 0; load mmc 0:1 $scriptaddr boot/boot.scr; source $scriptaddr

Currently imx6dl-cubox-i.dtb (Dual Lite) and imx6q-cubox-i.dtb (Quad) device trees are available.

Tested on i4Pro, MMC, USB (+ HiD), HDMI and ethernet ports are working.
Wireless and bluetooth are broken ATM. According to SolidRun forums, BCM4329/BCM4330 firmware is used which works fine on older kernels.

Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
2018-08-25 15:40:23 +02:00
Antonio Silverio
672c430d6e mac80211: mwl8k: Expand non-DFS 5G channels
Add non-DFS 5G upper channels (149-165) besides existed 4 lower channels
(36, 40, 44, 48).

Signed-off-by: Antonio Silverio <menion@gmail.com>
2018-08-25 15:40:23 +02:00
Martin Schiller
a904003b9b kernel: fix kmod-gpio-mcp23s08 for linux 4.14
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-08-25 15:33:52 +02:00
Martin Schiller
17f30bfcf7 x86/64: enable X86_INTEL_LPSS to select PINCTRL
This makes it possible to use the MCP23S08 i/o expander
on x86_64 platforms with linux 4.14.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-08-25 15:33:51 +02:00
Martin Schiller
4eda2fddf2 x86/geode: enable X86_INTEL_LPSS to select PINCTRL
This makes it possible to use the MCP23S08 i/o expander
on geode platforms with linux 4.14.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-08-25 15:33:51 +02:00
Luis Araneda
64f4c3ef35 zynq: add support for the Zybo Z7 board
The board is manufactured by Digilent
Main features:
- Soc: XC7Z010 (Z7-10) or XC7Z020 (Z7-20)
- RAM: 1 GB DDR3L
- FLASH: 16 MB QSPI
- 1 Gbps Ethernet
- USB 2.0
- microSD slot
- Pcam camera connector
- HDMI Tx and Rx
- Audio codec: stereo out, stereo in, mic
- 5 (Z7-10) or 6 (Z7-20) Pmod ports
- 6 push-buttons, 4 switches, 5 LEDs
- 1 (Z7-10) or 2 (Z7-20) RGB LEDs

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-08-25 15:33:51 +02:00
Luis Araneda
43dedd0661 uboot-zynq: add support for the zybo z7 board
Backport board support from the upcoming v2018.09 release,
and add an additional patch to read the MAC address
from flash memory

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-08-25 15:33:50 +02:00
Alex Maclean
894a95fa2d x86: add UHCI and XHCI USB host drivers to 4.14
Without UHCI a non-trivial number of machines will have no keyboard
without BIOS assistance.

Add XHCI as well in case there are chipsets which don't support legacy
interfaces, and support PCI OHCI controllers also.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-08-25 13:18:35 +02:00
Rosen Penev
3ccc2ebe01 libevent2: Switch to using release tarball
Starting with version 2.1.8, a release tarball is available.

Simplifies the Makefile slightly.

Updated the project URL. HTTPS is broken. Issue has been reported upstream

Adjusted patches. CMake support is not present in the tarball. It's made
for Windows anyway.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-25 13:18:35 +02:00
Thomas Langer
41faf52b0f build: Unset CDPATH to avoid problems
In some places the output of commands, which include "cd" are used.
In case of CDPATH the new path is printed, which might not be expected.
Disable the variable to avoid these problem.

When CDPATH was set by the user to some value like "export CDPATH=."
the git checkout done by the build system did not work anymore, the
git cloning aborted with such an error message for example:
....
Packing checkout...
tar: /disk/fs1/tmp2/mehrtens/pon-ugw/ugw-haps/openwrt/tmp/dl/ppa-drv-1.0\n@1534240258: Cannot stat: No such file or directory
tar: Date sample file not found
Try 'tar --help' or 'tar --usage' for more information.
.....

To avoid this, this patch makes the build system unset CDPATH inside
the build system, so the build system will still work even when the
user set this variable in his local environment.

Signed-off-by: Thomas Langer <thomas.langer@intel.com>
Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-25 11:10:28 +02:00
Felix Fietkau
b6adfde0c6 mt76: update to the latest version
7daf962 mt7603: add survey support
980c606 mt7603: add fix for CCA signal configuration
30b8371 mt7603: fix BAR rate

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-08-24 21:33:54 +02:00
Hans Dedecker
2211ee0037 dropbear: backport upstream fix for CVE-2018-15599
CVE description :
The recv_msg_userauth_request function in svr-auth.c in Dropbear through
2018.76 is prone to a user enumeration vulnerability because username
validity affects how fields in SSH_MSG_USERAUTH messages are handled,
a similar issue to CVE-2018-15473 in an unrelated codebase.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-24 15:25:26 +02:00
Thibaut VARÈNE
bbe2cf657c ramips: fix RBM11G partitioning
This patch improves faf64056dd by correcting
the partition scheme for the "RouterBoot" section of the flash.

The partition scheme initially submitted is incorrect and does not reflect
the actual flash structure.

The "RouterBoot" section (name matching OEM) is subdivided in several
static segments, as they are on ar71xx RB devices albeit with different
offsets and sizes.
The naming convention from ar71xx has been preserved, except for the
bootloaders which are named "bootloader1" and "bootloader2" to avoid
confusion with the master "RouterBoot" partition.
The preferred 'fixed-partitions' DTS node syntax is used, with nesting
support as introduced in 2a598bbaa3.
"partition" is used for node names, with associated "label" to match
policy set by 6dd94c2781.

Leave a note in DTS to explain how the original author selected the SPI speed.

Tested-by: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Reviewed-by: Rafał Miłecki <rafal@milecki.pl>
2018-08-24 11:53:51 +02:00
Thibaut VARÈNE
b90cad2c2e ramips: fix RBM33G partitioning
This patch improves 5684d08741 by correcting
the partition scheme for the "RouterBoot" section of the flash.

The partition scheme initially submitted is incorrect and does not reflect
the actual flash structure.

The "RouterBoot" section (name matching OEM) is subdivided in several
static segments, as they are on ar71xx RB devices albeit with different
offsets and sizes.
The naming convention from ar71xx has been preserved, except for the
bootloaders which are named "bootloader1" and "bootloader2" to avoid
confusion with the master "RouterBoot" partition.
The preferred 'fixed-partitions' DTS node syntax is used, with nesting
support as introduced in 2a598bbaa3.
"partition" is used for node names, with associated "label" to match
policy set by 6dd94c2781.

The OEM source code also define a "RouterBootFake" partition at the
beginning of the secondary flash chip: to avoid trouble if OEM ever makes
use of that space, it is also defined here.

The resulting partition scheme looks like this:
[   10.114241] m25p80 spi0.0: w25x40 (512 Kbytes)
[   10.118708] 1 fixed-partitions partitions found on MTD device spi0.0
[   10.125049] Creating 1 MTD partitions on "spi0.0":
[   10.129824] 0x000000000000-0x000000040000 : "RouterBoot"
[   10.136215] 5 fixed-partitions partitions found on MTD device RouterBoot
[   10.142894] Creating 5 MTD partitions on "RouterBoot":
[   10.148032] 0x000000000000-0x00000000f000 : "bootloader1"
[   10.154336] 0x00000000f000-0x000000010000 : "hard_config"
[   10.160665] 0x000000010000-0x00000001f000 : "bootloader2"
[   10.167046] 0x000000020000-0x000000021000 : "soft_config"
[   10.173461] 0x000000030000-0x000000031000 : "bios"
[   10.190191] m25p80 spi0.1: w25q128 (16384 Kbytes)
[   10.194950] 2 fixed-partitions partitions found on MTD device spi0.1
[   10.201271] Creating 2 MTD partitions on "spi0.1":
[   10.206071] 0x000000000000-0x000000040000 : "RouterBootFake"
[   10.212746] 0x000000040000-0x000001000000 : "firmware"
[   10.307216] 2 minor-fw partitions found on MTD device firmware
[   10.313044] 0x000000040000-0x000000220000 : "kernel"
[   10.319002] 0x000000220000-0x000001000000 : "rootfs"
[   10.324906] mtd: device 9 (rootfs) set to be root filesystem
[   10.330678] 1 squashfs-split partitions found on MTD device rootfs
[   10.336886] 0x000000b40000-0x000001000000 : "rootfs_data"

Leave a note in DTS to explain how the original author selected the SPI speed.

Tested-by: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Reviewed-by: Rafał Miłecki <rafal@milecki.pl>
[rmilecki: dropped "RouterBootFake" partition]
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-08-24 11:46:48 +02:00
Koen Vandeputte
6100655c8c ar71xx: fix typo in rb91x nand source
Fixes: 3b1ea0996f ("ar71xx: fix build error due to bad include")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-24 09:18:13 +02:00
Lech Perczak
4f3d700138 ath79: ubnt-xm: create mapping for RSSI LEDs
Ubiquiti XM series boards contain a set of RSSI LEDs. Create an UCI
mapping for them, so visual feedback on RSSI is available, when using
userspace RSSI monitor daemon.

Runtime tested using rssileds.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
2018-08-23 22:42:15 +02:00
Lech Perczak
d40956a74c ath79: ubnt-xm: hijack LED4 as booting/failsafe
Create aliases for led-booting and led-failsafe pointing at
ubnt:green:link4 LED, forUbiquiti XM series, so visual feedback
on device status becomes available, in order to enter failsafe mode
via button. led-running and led-upgrade aliases are omitted to avoid
conflicting with RSSI LEDs when in normal operation.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
2018-08-23 22:42:15 +02:00
Lech Perczak
7782715373 ath79: ubnt-xm: disable WAN on (rocket|bullet)-m
ubnt,bullet-m and ubnt,rocket-m targets support only single Ethernet
port, therefore disable creation of WAN zone and interfaces for them,
as their intended purpose is a wireless bridge. This aligns the
configuration with one found in ar71xx target.

ubnt,nano-m target is kept as is, being a two-port device.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
2018-08-23 22:42:15 +02:00
Lech Perczak
614199c81d ath79: ubnt-xm: support ath9k firmware loading
Enable ath9k EEPROM extraction on boot for Ubiquiti XM-series boards.
This is required for wireless interface to function.
Runtime tested on Nanobridge M5.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
2018-08-23 22:42:15 +02:00
INAGAKI Hiroshi
30b4f78193 ath79: add support for I-O DATA ETG3-R
I-O DATA ETG3-R is a wired router, based on Atheros AR9342.

Specification:

- Atheros AR9342
- 64 MB of RAM
- 8 MB of Flash
- 5x 10/100/1000 Ethernet
  - AR8327N
- 2x LEDs, 1x key
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - 115200n8

Flash instruction using initramfs image:

1. Connect serial cable to UART header on ETG3-R
2. Rename OpenWrt initramfs image to "1500A8C0.img" and place it in
the TFTP directory
3. Set IP address of the computer to 192.168.0.10, connect to the
LAN port of ETG3-R, and start the TFTP server on the computer
4. Connect power cable to ETG3-R and turn on the router
5. Press "Enter" key when the "Hit any key to stop autoboot:" message
is displayed on the console and enter the u-boot cli
6. execute following commands to change kernel address for u-boot
  setenv bootsf 1
  setenv mtd_kernel1 "bootm 0x9f050000"
  saveenv
7. execute "tftpboot; bootm" command to download the initramfs image from
TFTP server and boot with it
8. On the initramfs image, execute "mtd erase firmware" to erase stock
firmware and execute sysupgrade with sysupgrade image for ETG3-R
9. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-08-23 22:42:15 +02:00
Roger Pueyo Centelles
524c17d865 ramips: mt7620: add dir-810l network config
The device was not included in the /etc/board.d/02_network file, so
the network wouldn't be properly set up on boot.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2018-08-23 22:42:15 +02:00
NOGUCHI Hiroshi
ad10e71bec ramips: add support for ELECOM WRC-1900GST
ELECOM WRC-1900GST is a wireless router, based on Mediatek MT7621A.
This is almost same as WRC-2533GST except wireless specs.

Specifications:

  - SoC : MT7621A (four logical CPU cores)
  - RAM : 128MiB
  - ROM : 16MiB of SPI NOR-FLASH
  - wireless :
          5GHz : 3T3R up to 1300Mbps/11ac with MT7615
          2.4GHz : 3T3R up to 600Mbps/11n with MT7615
  - Ethernet : 5 ports, all ports is capable of 1000base-T
  - Ether switch : MT7530 (MT7621A built-in)
  - LEDs : 4 LEDs
  - buttons : 2 buttons and 1 slide-switch
  - UART : header is on PCB, 57600bps

Flash instruction using factory image:

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

Signed-off-by: NOGUCHI Hiroshi <drvlabo@gmail.com>
2018-08-23 22:42:09 +02:00
Mathias Kresin
b8996ea08a ramips: fix compatibles in SoC dtsi
The former used compatibles aren't defined anywhere and aren't used by
the devicetree source files including them.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-23 22:40:59 +02:00
Mathias Kresin
b88e03e2d4 ramips: fix GL-MT300N-V2 SoC compatible
According to abbfcc8525 ("ramips: add support for GL-inet
GL-MT300N-V2") the board has a MediaTek MT7628AN. Change the SoC
compatible to match the used hardware.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-23 22:40:59 +02:00
Mathias Kresin
28de86e816 ramips: drop not existing groups from pinmux
RT5350 neither have rgmii nor a mdio pinmux group. MT7628an doesn't
have a jtag group. Having these groups defined might cause a boot
panic.

The pin controller fails to initialise for kernels > 4.9 if invalid
groups are used. If a subsystem references a pin controller
configuration node, it can not find this node and errors out. In worst
case it's the SPI driver which errors out and we have no root
filesystem to mount.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-23 22:40:59 +02:00
Mathias Kresin
6b13238a13 generic: revert workarounds for AR8337 switch
The intention of 967b6be118 ("ar8327: Add workarounds for AR8337
switch") was to remove the register fixups for AR8337. But instead they
were removed for AR8327.

The RGMII RX delay is forced even if the port is used as phy instead of
mac, which results in no package flow at least for one board.

Fixes: FS#1664

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-23 22:40:59 +02:00
Jo-Philipp Wich
a27de701b0 wolfssl: disable broken shipped Job server macro
The AX_AM_JOBSERVER macro shipped with m4/ax_am_jobserver.m4 is broken on
plain POSIX shells due to the use of `let`.

Shells lacking `let` will fail to run the generated m4sh code and end up
invoking "make" with "-jyes" as argument, fialing the build.

Since there is no reason in the first place for some random package to
muck with the make job server settings and since we do not want it to
randomly override "-j" either, simply remove references to this defunct
macro to let the build succeed on platforms which not happen to use bash
as default shell.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-23 20:14:00 +02:00
Jo-Philipp Wich
9ffbe84ea4 grub2: rebase patches
Patch 300-CVE-2015-8370.patch was added without proper rebasing on the
version used by OpenWrt, make it apply and refresh the patch to fix
compilation.

Fixes: 7e73e9128f ("grub2: Fix CVE-2015-8370")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-23 19:08:58 +02:00
Jo-Philipp Wich
214146c6f2 uhttpd: support multiple Lua prefixes
Update to latest git HEAD in order to support configuring multiple
concurrent Lua prefixes in a single uhttpd instance:

  b741dec lua: support multiple Lua prefixes

Additionally rework the init script and update the default configuration
example to treat the lua_prefix option as key=value uci list, similar to
the interpreter extension mapping. Support for the old "option lua_prefix"
plus "option lua_handler" notation is still present.

Finally drop the sed postinstall hack in uhttpd-mod-lua to avoid mangling
files belonging to other packages. Since Lua prefixes have precedence
over CGI prefixes, simply register `/cgi-bin/luci` as Lua handler which
will only become active if both luci-base and uhttpd-mod-lua is installed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-23 09:18:04 +02:00
Rosen Penev
7e73e9128f grub2: Fix CVE-2015-8370
This CVE is a culmination of multiple integer overflow issues that cause
multiple issues like Denial of Service and authentication bypass.

More info: https://nvd.nist.gov/vuln/detail/CVE-2015-8370

Taken from Fedora.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-23 07:15:53 +02:00
Rosen Penev
f9469efbfa bzip2: Fix CVE-2016-3189
Issue causes a crash with specially crafted bzip2 files.

More info: https://nvd.nist.gov/vuln/detail/CVE-2016-3189

Taken from Fedora.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-23 07:15:35 +02:00
Koen Vandeputte
6b4ba118ac kernel: bump 4.14 to 4.14.66
Refreshed all patches

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-22 13:47:13 +02:00
Koen Vandeputte
7a9afb8783 kernel: bump 4.9 to 4.9.123
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-22 13:47:13 +02:00
Koen Vandeputte
3b1ea0996f ar71xx: fix build error due to bad include
While "rawnand.h" is available in kernel 4.14,
the default for this target is kernel 4.9 in which "nand.h" should be used.

Add an extra check to include the correct file depending on kernel version

Fixes these build errors:

drivers/mtd/nand/ar934x_nfc.c:16:10: fatal error: linux/mtd/rawnand.h: No such file or directory
 #include <linux/mtd/rawnand.h>
          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Fixes: 318e19ba67 ("ar71xx: add v4.14 support")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-22 13:11:59 +02:00
Koen Vandeputte
743654f30d ar71xx: add missing include for checking kernel version
Fixes these build errors:

arch/mips/ath79/mach-rb2011.c:20:5: error: "LINUX_VERSION_CODE" is not defined, evaluates to 0 [-Werror=undef]
 #if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0)
     ^~~~~~~~~~~~~~~~~~
arch/mips/ath79/mach-rb2011.c:20:26: error: "KERNEL_VERSION" is not defined, evaluates to 0 [-Werror=undef]
 #if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0)
                          ^~~~~~~~~~~~~~
arch/mips/ath79/mach-rb2011.c:20:40: error: missing binary operator before token "("
 #if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0)
                                        ^

Fixes: 318e19ba67 ("ar71xx: add v4.14 support")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-22 13:11:52 +02:00
Rosen Penev
499773f8ef samba36: Enable umdnsd support
Allows discovery without having to use NetBIOS. Useful for mobile devices.

Could eventually throw nbmd away. But that requires Windows 10...

Tested on Fedora 28 with avahi-discover.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-22 11:23:02 +02:00
Rosen Penev
7961009346 yamonenv: Remove dead URLs
uscan errors on the URL as it is no longer available.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-22 11:22:17 +02:00
Rosen Penev
f5098a69ed fconfig: Remove dead URLs
uscan errors on the URL as it is no longer available.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-22 11:22:04 +02:00
Rosen Penev
f2e1fd0f35 apex: Remove dead URL.
uscan errors on the URL as it is no longer available.

Also switched the download URL to HTTPS.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-08-22 11:21:53 +02:00
John Crispin
318e19ba67 ar71xx: add v4.14 support
adds v4.14 patches for testing but leaves v4.9 as default for now.

Signed-off-by: John Crispin <john@phrozen.org>
2018-08-22 08:09:00 +02:00
Jo-Philipp Wich
e5f56c07d7 iptables: make iptables-mod-conntrack-extra depend on kmod-ipt-raw
Since kernel 4.14 there is no auto assignment of conntrack helpers anymore
so fw3 needs raw table support in order to stage ct helper assignment rules.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-22 07:14:45 +02:00
Hans Dedecker
6c227e45cb dnsmasq: remove creation of /etc/ethers
Remove creation of file /etc/ethers in dnsmasq init script as the
file is now created by default in the base-files package by
commit fa3301a28e

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-21 15:55:10 +02:00
Luiz Angelo Daros de Luca
d810d44e5a base-files: create /etc/ethers by default
/etc/ethers is missing on /rom but always created when dnsmasq
runs. It is better to have it in place and avoid an extra change
in flash after firstboot.

It will generate an extra /etc/ethers-opkg when it has changed.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-21 15:55:00 +02:00
Jo-Philipp Wich
22681cdef2 uhttpd: update to latest Git head
952bf9d build: use _DEFAULT_SOURCE
30a18cb uhttpd: recognize PATCH, PUT and DELETE HTTP methods

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-21 14:48:47 +02:00
Daniel Engberg
e1a1add517 mwlwifi: Update to 10.3.8.0-20180810
Update mwlwifi to 10.3.8.0-20180810

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-08-21 07:44:37 +02:00
Hans Dedecker
40eb9bda44 netifd: update to latest git HEAD
7454d12 interface: let interface_set_down() return void
32f11a8 interface: make __interface_set_down() static
b9d5a8c interface: extend interface error messages in interface_set_up()
de394b3 interface: ensure NO_DEVICE error is always reported

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-20 16:27:38 +02:00
Koen Vandeputte
548182bc6d kernel: bump 3.18 to 3.18.119
Refreshed all patches.

Compile-tested on: adm5120, adm8668, au1000, mcs814x, ppc40x, ppc44x, xburst
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-20 13:03:23 +02:00
Koen Vandeputte
1f7ce19df2 kernel: bump 4.14 to 4.14.65
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-20 13:03:22 +02:00
Koen Vandeputte
ba30490d05 kernel: bump 4.9 to 4.9.122
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-20 13:03:22 +02:00
Yury Shvedov
cad9519eba hostapd: process all CSA parameters
This adds processing of all CSA arguments from ubus switch_chan request
in the same manner as in the control interface API.

Signed-off-by: Yury Shvedov <yshvedov@wimarksystems.com>
2018-08-20 09:24:43 +02:00
Syrone Wong
2fb95f7142 toolchain/gcc: update 8.x to 8.2.0
This release fixes LTO link-time performance problems and C++ bug introduced in GCC 8.1

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-08-20 09:24:33 +02:00
Syrone Wong
713cee6463 toolchain/gcc: add config symbol to determine how to apply path remapping
Added boolean symbol for GCC 8 and higher, when we add newer GCC, we don't have
to modify rules.mk to keep things consistant.

Fixes: da9d760 ("rules.mk: replace iremap when using GCC 8")

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-08-20 09:24:29 +02:00
Daniel Engberg
fc9cbf3bc0 target.mk: Remove obsolete octeon CPU_CFLAGS
As of commit c6e02b49f6 the octeon target
uses octeonplus instead of octeon

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-08-19 18:58:30 +02:00
David Bauer
98d3770379 ath79: fix TL-MR3020 image metadata
Sysupgrading to ath79 from ar71xx currently fails because of mismatching
supported_devices. ar71xx is expecting "tl-mr3020" which is missing in
the ath79 image. Upgrading from ath79 is unaffected, as the image
contains the old string for ar71xx and the new one coming from the
device-tree.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-19 18:58:04 +02:00
Chuanhong Guo
f195ab766c ath79: cleanup PISEN WMM003N image metadata
PISEN WMM003N is never supported by ar71xx, this commit also removed
SUPPORTED_DEVICES for it because it's completely useless.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-19 18:52:24 +02:00
David Bauer
3f8c5d5476 ath79: add support for Fritz!Box 4020
This commit adds support for the AVM Fritz!Box 4020 WiFi-router.

SoC:   Qualcomm Atheros QCA9561 (Dragonfly) 750MHz
RAM:   Winbond W971GG6KB-25
FLASH: Macronix MX25L12835F
WiFi:  QCA9561 b/g/n 3x3 450Mbit/s
USB:   1x USB 2.0
IN:    WPS button, WiFi button
OUT:   Power LED green, Internet LED green, WLAN LED green,
       LAN LED green, INFO LED green, INFO LED red
UART:  Header Next to Black metal shield
       Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V)
       The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet (LAN + WAN)
 - WiFi (correct MAC)
 - Installation via EVA bootloader
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

The USB port doesn't work. Both Root Hubs are detected as having 0 Ports:

[    3.670807] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    3.723267] usbcore: registered new interface driver usbfs
[    3.729058] usbcore: registered new interface driver hub
[    3.734616] usbcore: registered new device driver usb
[    3.744181] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    3.758357] SCSI subsystem initialized
[    3.766026] ehci-platform: EHCI generic platform driver
[    3.771548] ehci-platform ehci-platform.0: EHCI Host Controller
[    3.777708] ehci-platform ehci-platform.0: new USB bus registered, assigned bus number 1
[    3.788169] ehci-platform ehci-platform.0: irq 48, io mem 0x1b000000
[    3.816647] ehci-platform ehci-platform.0: USB 2.0 started, EHCI 0.00
[    3.824001] hub 1-0:1.0: USB hub found
[    3.828219] hub 1-0:1.0: config failed, hub doesn't have any ports! (err -19)
[    3.835825] ehci-platform ehci-platform.1: EHCI Host Controller
[    3.842009] ehci-platform ehci-platform.1: new USB bus registered, assigned bus number 2
[    3.852481] ehci-platform ehci-platform.1: irq 49, io mem 0x1b400000
[    3.886631] ehci-platform ehci-platform.1: USB 2.0 started, EHCI 0.00
[    3.894011] hub 2-0:1.0: USB hub found
[    3.898190] hub 2-0:1.0: config failed, hub doesn't have any ports! (err -19)
[    3.908928] usbcore: registered new interface driver usb-storage
[    3.915634] kmodloader: done loading kernel modules from /etc/modules-boot.d/*

A few words about the shift-register:

AVM used a trick to control the shift-register for the LEDs with only 2
pins, SERCLK and MOSI. Q7S, normally used for daisy-chaining multiple
shift-registers, pulls the latch, moving the shift register-state to
the storage register. It also pulls down MR (normally pulled up) to
clear the storage register, so the latch gets released and will not be
pulled by the remaining bits in the shift-register. Shift register is
all-zero after this.

For that we need to make sure output 7 is set to high on driver probe.
We accomplish this by using gpio-hogging.

Installation via EVA:
In the first seconds after Power is connected, the bootloader will
listen for FTP connections on 169.254.157.1 (Might also be 192.168.178.1).
Firmware can be uploaded like following:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put openwrt-sysupgrade.bin mtd1

Note that this procedure might take up to two minutes. After transfer is
complete you need to powercycle the device to boot OpenWRT.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-19 18:52:22 +02:00
Christian Lamparter
1c6e0f57a7 ath79: add support for TP-Link Archer C7 v1
TP-Link Archer C7 v1 is a dual band router
based on Qualcomm/Atheros QCA9558 + QCA9880.

Specification:

 - 720 MHz CPU
 - 128 MB of RAM (Various chips)
 - 8 MB of FLASH (Various chips)
 - SoC QCA9558 integrated 3T3R 2.4 GHz Wi-Fi
 - minipcie slot with 3T3R 5 GHz QCA9880-AR1A (unsupported by ath10k!)
 - 5x 10/100/1000 Mbps Ethernet (AR8327N Switch)
 - 10x LEDs, 2x software buttons

For further informwation on the device, visit the wiki:
<https://openwrt.org/toh/tp-link/archer-c7-1750>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-08-19 18:48:43 +02:00
Daniel Engberg
d1ea8ac3b4 util-linux: Update to 2.32.1
Update util-linux to 2.32.1
For release notes see https://lwn.net/Articles/759922/

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-16 22:29:28 +02:00
INAGAKI Hiroshi
ff4bc483fc ath79: add support for I-O DATA WN-AC1167DGR
I-O DATA WN-AC1167DGR is a 2.4/5 GHz band 11ac router, based on
Qualcomm Atheros QCA9557.

Specification:

- Qualcomm Atheros QCA9557
- 128 MB of RAM (DDR2)
- 16 MB of Flash (SPI)
- 2T2R 2.4/5 GHz wifi
  - 2.4 GHz: SoC internal
  - 5 GHz: QCA988x
- 5x 10/100/1000 Mbps Ethernet
- 6x LEDs, 6x keys (4x buttons, 1x slide switch)
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port of WN-AC1167DGR
2. Connect power cable to WN-AC1167DGR and turn on it
3. Access to "http://192.168.0.1/" and open firmware update page
("ファームウェア")
4. Select the OpenWrt factory image and click update ("更新") button
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-08-16 21:20:57 +02:00
Johann Neuhauser
94ee5e3d1d ath79: fix leds and network for TP-Link TL-WR841 v9/v11
Adding tl-wr841-v11 and the rename of tl-wr841n-v9 to tl-wr841-v9 in 01_leds
and 02_network script files are missing in commits cc35c91 and 8db6522.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
[merged with identical case in 02_network]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
3f09adaa55 ath79: don't use the pcs,cr5000 wps led as usb led
If it isn't a usb led, it shouldn't be used as one by default. It is up
to the user to add such a (mis)configuration for the board.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Dmitry Tunin
0c5a532553 ath79: add support for TP-Link MR-3040 v2
Add support for the ar71xx supported TP-Link MR-3040 v2.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2018-08-16 21:20:57 +02:00
INAGAKI Hiroshi
9e6f22e309 ath79: add support for Buffalo WHR-G301N
Buffalo WHR-G301N is a 2.4 GHz 11n router, based on Atheros AR7240.
Ported from ar71xx target.

Specification:

- Atheros AR7240
- 32 MB of RAM
- 4 MB of Flash
- 2.4 GHz 2T2R wifi
- 5x 10/100 Mbps Ethernet
- 9x LEDs, 4x keys
  - LED: 8x gpio-leds, 1x ath9k-leds
  - key: 2x buttons, 1x slide switch
- UART header on PCB
  - Vcc, GND, TX, RX from LEDs side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port of WHR-G301N
2. Connect power cable to WHR-G301N and turn on it
3. Access to "http://192.168.11.1/" and open firmware update page
("ファーム更新")
4. Select the OpenWrt factory image and click execute ("実行") button
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
[fix the SUPPORTED_DEVICES to be compatible with the ar71xx image]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
c9e9a78734 lantiq: add support for upgrade led
Indicate a (sys)upgrade via leds as well. It brings the lantiq diag.sh
script en par with the other implementations using devicetree aliases
to define multiple leds for boot status indication.

By default, use the boot finished led to indicate an upgrade for now.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
be06c726c4 treewide: drop unused get_status_led functions
The function isn't used for targets getting the status leds from the
devicetree.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
dd448cd276 treewide: fix upgrade led handling
The upgrade led is only used if a running led is defined. If no running
led is defined, the upgrade led is ignored and upgrade isn't indicated
at all.

Instead, turn off the running led prior to turning the upgrade led on.
In most cases there isn't any visual change, but it allows to use an
independent led for upgrade indication.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
56b8ac1e86 treewide: consolidate upgrade state set
Set the (sys)upgrade state when sourcing the stage2 script instead of
setting the state for each target individual.

This change fixes the, due to a missing state set, not working upgrade
led on ath79 and apm821xx.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
1ea1f3a223 ramips: mt7620: fix bad indent
Fix the indent to make the make it obvious which condition is the
parent of the loop.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Mathias Kresin
22ae14d0e7 cns3xxx: fix mtu setting with kernel 4.14
Since kernel 4.10 commit 61e84623ace3 ("net: centralize net_device
min/max MTU checking"), the range of mtu is [min_mtu, max_mtu], which
is [68, 1500] by default.

It's necessary to set a max_mtu if a mtu > 1500 is supported.

Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-16 21:20:57 +02:00
Jo-Philipp Wich
8c91807214 rpcd: update to latest git HEAD
41333ab uci: tighten uci reorder operation error handling
f91751b uci: tighten uci delete operation error handling
c2c612b uci: tighten uci set operation error handling
948bb51 uci: tighten uci add operation error handling
51980c6 uci: reject invalid section and option names

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-16 09:43:11 +02:00
Hauke Mehrtens
d74d6c4522 openssl: update to version 1.0.2p
This fixes the following security problems:
 * CVE-2018-0732: Client DoS due to large DH parameter
 * CVE-2018-0737: Cache timing vulnerability in RSA Key Generation

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-15 22:32:07 +02:00
Hauke Mehrtens
b547ab3143 kernel: bump kernel 4.9 to version 4.9.120
The following patch was integrated upstream:
 * target/linux/generic/backport-4.9/500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch

This fixes tries to work around the following security problems:
 * CVE-2018-3620 L1 Terminal Fault OS, SMM related aspects
 * CVE-2018-3646 L1 Terminal Fault Virtualization related aspects

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-15 22:32:07 +02:00
Hauke Mehrtens
e4bad5f0ac kernel: bump kernel 4.14 to version 4.14.63
The following patches were integrated upstream:
 * target/linux/ipq40xx/patches-4.14/050-0006-mtd-nand-qcom-Add-a-NULL-check-for-devm_kasprintf.patch
 * target/linux/mediatek/patches-4.14/0177-phy-phy-mtk-tphy-use-auto-instead-of-force-to-bypass.patch

This fixes tries to work around the following security problems:
 * CVE-2018-3620 L1 Terminal Fault OS, SMM related aspects
 * CVE-2018-3646 L1 Terminal Fault Virtualization related aspects

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-15 22:31:56 +02:00
Dmitry Tunin
ae9c3105a3 ath79: use both WNDR3x00 power leds for boot status indication
Use the orange led by default to match the bootloader/stock firmware
behaviour. Turn on the green power led after boot to indicate a
finished boot and the orange one off.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
[reword commit message, keep orange power led enabled during early
kernel boot]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-15 07:42:36 +02:00
Dmitry Tunin
3d9610aa13 ath79: use both DIR-825 B1 power leds for boot status indication
Use the orange led by default to match the bootloader/stock firmware
behaviour. Turn on the blue power led after boot to indicate a finished
boot and the orange one off.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
[reword commit message, keep orange power led enabled during early
kernel boot]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-15 07:42:36 +02:00
Dmitry Tunin
7a873974f7 ath79: add support for indicating the boot state using multiple leds
Use diag.sh version used for apm821xx, ipq40xx and ipq806x, which
supports different leds for the different boot states.

The existing led sequences should be the same as before.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
[reword commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-15 07:42:36 +02:00
Cezary Jackiewicz
37af596593 ramips: add support for D-Link DWR-118-A2
The DWR-118-A2 Wireless Router is based on the MT7620A SoC.

Specification:

- MediaTek MT7620A (580 Mhz)
- 128 MB of RAM
- 16 MB of FLASH
- 1x 802.11bgn radio
- 1x 802.11ac radio (MT7612EN)
- 4x 10/100 Mbps Ethernet (1 WAN and 3 LAN)
- 1x 10/100/1000 Mbps Marvell Ethernet PHY (1 LAN)
- 2x external, non-detachable antennas
- 1x USB 2.0
- UART (J1) header on PCB (57600 8n1)
- 7x LED (5x GPIO-controlled), 2x button
- JBOOT bootloader

Known issues:
- GELAN not working
- flash is very slow

The status led has been assigned to the dwr-118-a2:green:internet led.
At the end of the boot it is switched off and is available for other
operation. Work correctly also during sysupgrade operation.

Installation:
Apply factory image via http web-gui or JBOOT recovery page

How to revert to OEM firmware:
- push the reset button and turn on the power. Wait until LED start
  blinking (~10sec.)
- upload original factory image via JBOOT http (IP: 192.168.123.254)

Signed-off-by: Cezary Jackiewicz <cezary@eko.one.pl>
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-08-15 07:42:36 +02:00
Pawel Dembicki
4877ad44c7 ramips: mt7620: enable all ports unconditionally
This patch make all mt7620 ephy ports turned on.
It is necessary for some JBOOT devices.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-08-15 07:42:36 +02:00
Jo-Philipp Wich
5762efd8b2 libubox: set RPATH for host build
This is required for programs that indirectly link libjson-c through the
libubox blobmsg_json library.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-14 23:54:59 +02:00
Hans Dedecker
e2791e80cb netifd: update to latest git HEAD
522456b device: gracefully handle device names exceeding IFNAMESIZ

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-14 22:56:31 +02:00
Deng Qingfang
d20f4fc628 ramips: add support for HiWiFi HC5861B
HiWiFi "Gee Enjoy1200" HC5861B is a dual-band router based on MediaTek MT7628AN
https://www.hiwifi.com/enjoy-view

Specifications:
- MediaTek MT7628AN 580MHz
- 128 MB DDR2 RAM
- 16 MB SPI Flash
- 2.4G MT7628AN 802.11bgn 2T2R 300Mbps
- 5G MT7612EN 802.11ac 2T2R 867Mbps
- 5x 10/100 Mbps Ethernet

Flash instruction:
1. Get SSH access to the router
2. SSH to router with `ssh -p 1022 root@192.168.199.1`, The SSH password is the same as the webconfig one
3. Upload OpenWrt sysupgrade firmware into the router's `/tmp` folder with SCP
4. Run `mtd write /tmp/<filename> firmware`
5. reboot

Everything is working

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-08-14 10:21:32 +02:00
Chuanhong Guo
1213504750 ath79: add support for TP-Link TL-WR941N/ND v2/v3
Specification:
- SoC: Atheros AR9132
- Flash: 4 MB
- RAM: 32 MB
- Ethernet: Marvell 88E6060 with 5 FE ports.

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-14 10:19:37 +02:00
Johann Neuhauser
8db6522531 ath79: add support for TP-Link WR841N/ND v11
Specification:
- SoC: Atheros AR9533
- Flash: 4 MB
- RAM: 32 MB
- Ethernet: 4x LAN (100M) / 1x WAN (100M)
- WiFi: 2.4G 300M

Flash instruction:
  Flash factory image from stock WebUI.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-08-14 10:19:37 +02:00
Johann Neuhauser
18f738d3c4 ath79: move TP-Link WR841v9 aliases node from dtsi to dts
Move the alias node of the TP-Link WR841v9 and rename the phandle of
the qss led to qss_led in preparation for adding the very similar
TP-Link WR841v11.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-08-14 10:19:37 +02:00
Johann Neuhauser
cc35c91f56 ath79: fix sysupgrade TP-Link WR841v9
Remove SUPPORTED_DEVICES from wr841-v9 because it´s not needed and
for consistency rename everything to tl-wr841-v9.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-08-14 10:19:37 +02:00
Ryan Mounce
9c6c7d11c7 firmware-utils/mksercommfw: fix build with clang/macOS
fixes error: non-void function 'main' should return a value

Fixes: FS#1770

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2018-08-14 10:19:37 +02:00
Hannu Nyman
437e35f8a3 ath79: Add wifi to WNDR3700, WNDR3700v2 and WNDR3800
Add ath9k wifi capabilities to WNDR3700 family.

* use kmod-owl-loader to load firmware from "art"
* add wifi to DTS
* add wifi LEDs

Avoid using the same MAC for eth0 LAN and wlan0 by
toggling the eth0 MAC into a locally administered MAC.
That is currently done by in user-space by adding a
uci config item into /etc/config/network
(More elegant solution might be setting it already in
preinit phase.)

Known issues:

* wifi firmware file may not get created on the first boot
  after flashing on time to bring wifi normally up. Likely
  the overlay jffs2 is not yet ready for creating the
  firmware file. "wifi up" may still bring wifi up.
  Wifi will work normally at subsequent boots.

* phy0 and phy1 may get assigned mixed, so that phy0 may
  be the 5GHz radio instead of the normal 2.4GHz, and vice
  versa for phy1. Does not happen always, but may happen.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
[fix the wifi unit address in the dts]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-14 10:19:37 +02:00
Icenowy Zheng
b2a33d5463 ath79: add support for Pisen WMM003N (Cloud Easy Power)
Pisen WMM003N (sold under the name of Cloud Easy Power) is an
AR9331-based router and power bank combo device. The device uses a
stock firmware modified from OpenWRT for TP-Link TL-WR703N; however
some GPIO definition is different on this device with TL-WR703N. An
AXP202 PMIC (connected to a 5000mAh battery) and a SD slot are also
added, and the stock Flash/RAM configuration is 8MiB/64MiB.

The stock firmware is an old and heavily modified OpenWRT-based
firmware, which has telnetd defaultly open, and the root password is
"ifconfig" (quotation marks not included). The factory image format is
not known yet, however the stock firmware ships the OpenWRT's sysupgrade
command, and it can be used to install a newer firmware.

Due to the lack of the access to the STM8 embedded controller, the SD
slot is currently not usable (because it's muxed with the on-board USB
port) and the AXP PMIC cannot be monitored.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
2018-08-14 10:19:37 +02:00
Stijn Tintel
03e5dcbf10 firewall: bump to git HEAD
12a7cf9 Add support for DSCP matches and target
06fa692 defaults: use a generic check_kmod() function
1c4d5bc defaults: fix check_kmod() function

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-08-13 22:05:46 +03:00
Koen Vandeputte
ee9e0c1deb ar7: remove linux 3.18 support
This target is on 4.9 currently.
It seems the support for this old kernel never got dropped.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-13 17:10:39 +02:00
Andy Walsh
22b8237ba1 firmware-utils/mksercommfw: fix musl build
* add missing <sys/types.h> for musl

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-08-13 14:37:04 +02:00
Zoltan HERPAI
d6844b3bfa ramips: add missing USB packages into ASL26555-16M
Mirror the package list from the 8M device profile to the
16M device profile.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-08-13 10:26:03 +02:00
Daniel Engberg
0578993a41 tools/cmake: Update to 3.12.1
Update cmake to 3.12.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-08-13 09:12:24 +02:00
Peter Lundkvist
3337f202d6 ath79: drop tl prefix for TP-Link RE450 v2
This router is called RE450 and the tl prefix was used to identify it
as a TP-Link device. Drop the tl prefix since we now have tplink in
dts and device name.

Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
2018-08-13 08:51:31 +02:00
Christian Lamparter
f3ffac90bc ath79: gmac: add parsers for rxd(v)- and tx(d|en)-delay for AR9344
Some AR9344 boards do very poorly with the default settings and
need custom rxdv-delay, rxd-delay, txd-delay, txen-delay flags
to perform reasonably.

In this case the WD My Net Wi-Fi Range Extender can not even
manage 10Mbps on a 1Gbit link:

root@AR9344:~# iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from client [...]
[  5] local [...] connected to client
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  1.09 MBytes  9.16 Mbits/sec
[  5]   1.00-2.00   sec   895 KBytes  7.33 Mbits/sec
[  5]   2.00-3.00   sec   762 KBytes  6.25 Mbits/sec
[...]
[  5]  10.00-10.03  sec  17.0 KBytes  4.74 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.03  sec  9.00 MBytes  7.52 Mbits/sec

with but with the correct settings in place, it does much better:

root@AR9344:~# iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from client [...]
[  5] local [...] connected to client
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  23.1 MBytes   193 Mbits/sec
[  5]   1.00-2.00   sec  23.1 MBytes   194 Mbits/sec
[  5]   2.00-3.00   sec  23.2 MBytes   195 Mbits/sec
[...]
[  5]  10.00-10.04  sec   710 KBytes   180 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.04  sec   237 MBytes   198 Mbits/sec

The tx data and enable delay bits definitions are taken from Atheros'
AR9344 Data Sheet Section "8.6.1 Ethernet Configuration (ETH_CFG)" on
page 153.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-08-13 08:48:37 +02:00
Christian Lamparter
7b1b49bd32 packages: nvram: make it possible to include it for ath79 targets
The WD My Net Range Extender stores the MAC addresses inside the
nvram partition. This utility can extract it, but it's currently
not avilable on the ath79 target. Hence, this patch adds the
necessary target declaration, so it can be built.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-08-13 08:46:22 +02:00
Luis Araneda
09ac4aa86b uboot-zynq: update to 2018.07
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-08-13 08:43:58 +02:00
David Bauer
7d1b742b4d ath79: add QCA956x GMAC config
This commit adds the ability to configure the GMAC of the QCA956x.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-13 08:43:15 +02:00
Paul Wassi
2276bc0082 brcm47xx: cosmetic fix in model detection
In "brcm47xx: rework model detection" the file 01_detect was moved
to 01_network, therefore also update the warning message in case
everything fails.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-08-13 08:37:19 +02:00
Chuanhong Guo
cf50f72069 ath79: ar913x: fix eth pll register
PLL for eth0 internal clock on ar913x is at 0x18050014
and AR913X_ETH0_PLL_SHIFT is 20 instead of 17

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-13 08:37:19 +02:00
Chuanhong Guo
42b3fdf981 ath79: ag71xx: fix speed applied to MII0/1_CTRL on ar71xx/ar913x
Currently speed value is applied to interface mode field.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-13 08:37:19 +02:00
Hannu Nyman
4dc7cb792a ath79: add WNDR3700 and WNDR3700v2
Add support for WNDR3700 and WNDR3700v2.

They share most things with WNDR3800.
Only device IDs and partition structure needs to be set.

Note: WNDR3700 (v1) has no NETGEAR_HW_ID, but has
      also the NA version of the factory image.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-08-13 08:37:19 +02:00
Hannu Nyman
b58df9919e ath79: create WNDR3700 series .dtsi and adjust WNDR3800
Prepare for addition of WNDR3700 and WNDR3700v2 by
separating the common parts into wndr3700.dtsi and
leaving just the device-specific things into wndr3800.dts

The three routers are identical except
  * device IDs
  * WNDR3700 (v1) has only 8 MB flash, while others have 16 MB.
    Partition structure needs to be defined for each device.
  * (WNDR3800 has 128 MB RAM, but RAM size is not in DTS)

Also separate the common parts of the image recipe.
(Drop also the initramfs recipe.)

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-08-13 08:37:19 +02:00
Daniel Gimpelevich
1d3ea7874d ramips: fix BR-6478ACv2 support
The wholesale changes introduced in commit f9b8328 missed this DTS file
because it hadn't been merged yet. This patch brings it in line to match
the other mt7620a devices' DTS files.

Additionally, the Internet LED is now labeled correctly and set to unused
by default, since the WAN interface is not known in every configuration.

Using sysupgrade between images before and after this commit will require
the -F flag.

Tested-by: Rohan Murch <rohan.murch@gmail.com>
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[drop internet led default setting]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-13 08:37:19 +02:00
Ludwig Thomeczek
5543d63fc8 ramips: add support for Netgear R6120
This patch adds support for the Netgear R6120, aka Netgear AC1200.

Specification:
- SoC: MediaTek MT7628 (580 MHz)
- Flash: 16 MiB
- RAM: 64 MiB
- Wireless: 2.4Ghz(builtin) and 5Ghz (MT7612E)
- LAN speed: 10/100
- LAN ports: 4
- WAN speed: 10/100
- WAN ports: 1
- Serial baud rate of Bootloader and factory firmware: 57600

To flash use nmrpflash with the provided factory.img.
Flashing via webinterface will not work, for now.

Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
2018-08-13 08:37:19 +02:00
Ludwig Thomeczek
e5b802b9c2 firmware-utils: add sercomm/netgear tool
This adds a tool to generate a firmware file accepted
by Netgear or sercomm devices.

They use a zip-packed rootfs with header and a custom
checksum. The generated Image can be flashed via the
nmrpflash tool or the webinterface of the router.

Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
2018-08-13 08:37:19 +02:00
Jason A. Donenfeld
42dc0e2594 wireguard: bump to 0.0.20180809
* send: switch handshake stamp to an atomic

Rather than abusing the handshake lock, we're much better off just using
a boring atomic64 for this. It's simpler and performs better. Also, while
we're at it, we set the handshake stamp both before and after the
calculations, in case the calculations block for a really long time waiting
for the RNG to initialize.

* compat: better atomic acquire/release backport

This should fix compilation and correctness on several platforms.

* crypto: move simd context to specific type

This was a suggestion from Andy Lutomirski on LKML.

* chacha20poly1305: selftest: use arrays for test vectors

We no longer have lines so long that they're rejected by SMTP servers.

* qemu: add easy git harness

This makes it a bit easier to use our qemu harness for testing our mainline
integration tree.

* curve25519-x86_64: avoid use of r12

This causes problems with RAP and KERNEXEC for PaX, as r12 is a
reserved register.

* chacha20: use memmove in case buffers overlap

A small correctness fix that we never actually hit in WireGuard but is
important especially for moving this into a general purpose library.

* curve25519-hacl64: simplify u64_eq_mask
* curve25519-hacl64: correct u64_gte_mask

Two bitmath fixes from Samuel, which come complete with a z3 script proving
their correctness.

* timers: include header in right file

This fixes compilation in some environments.

* netlink: don't start over iteration on multipart non-first allowedips

Matt Layher found a bug where a netlink dump of peers would never terminate in
some circumstances, causing wg(8) to keep trying forever. We now have a fix as
well as a unit test to mitigate this, and we'll be looking to create a fuzzer
out of Matt's nice library.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-08-12 16:12:01 +02:00
Hauke Mehrtens
31aeae0774 at91: do not build image for at91-q5xr5
The kernel image of the at91-q5xr5 is getting too bing now and this is
breaking the build. Remove the image for the at91-q5xr5 from the build
to at least build images for the other devices.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-08-12 11:34:50 +02:00
Chuanhong Guo
8e4e545ecb ath79: fix eth pll for ar913x
PLL node is missing syscon in compatible string.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-11 21:46:18 +02:00
INAGAKI Hiroshi
a6369206fe ath79: add support for I-O DATA WN-AC1600DGR2
I-O DATA WN-AC1600DGR2 is a 2.4/5 GHz band 11ac router, based on
Qualcomm Atheros QCA9557.

Specification:

- Qualcomm Atheros QCA9557
- 128 MB of RAM
- 16 MB of Flash
- 2.4/5 GHz wifi
  - 2.4 GHz: 2T2R (SoC internal)
  - 5 GHz: 3T3R (QCA9880)
- 5x 10/100/1000 Mbps Ethernet
- 6x LEDs, 6x keys (4x buttons, 1x slide switch)
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port of WN-AC1600DGR2
2. Connect power cable to WN-AC1600DGR2 and turn on it
3. Access to "http://192.168.0.1/" and open firmware update page
("ファームウェア")
4. Select the OpenWrt factory image and click update ("更新") button
5. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-08-11 21:45:06 +02:00
Dmitry Tunin
97de133368 ath79: add support of D-Link DIR-825 B1
Add support for the ar71xx supported D-Link DIR-825 B1 to ath79.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2018-08-11 21:45:04 +02:00
Christian Lamparter
a441c86d93 ath79: add ath9k calibration data MAC addresses patching
This patch copies over the MAC patching helper functions from lantiq's
target/linux/lantiq/base-files/etc/hotplug.d/firmware/12-ath9k-eeprom
file.

Not all vendors bothered to write the correct MAC addresses for the
ath9k wifi into the calibration data. And while ath9k does have some
special dt-properties to extract the addresses from a fixed position,
there are still devices that require userspace to edit or modify
the caldata.

In my case, the MAC address for the Wi-Fi device is stored in an
unsorted key-value based "nvram" database and there's an existing
userspace tool to extract the data.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-08-11 21:36:27 +02:00
Mathias Kresin
dfee452713 base-files: add function to get mac as text from flash
Add a function to get a mac stored as text from flash. The octets of
the mac address need to be separated by any separator supported by
macaddr_canonicalize().

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-11 21:36:27 +02:00
Mathias Kresin
ec28d2797c base-files: use consistent coding style
Add the opening bracket right after the function name, to do it the
same way for all functions in this file.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-11 21:36:27 +02:00
Chuanhong Guo
d4e3a31f6c ath79: add support for TP-Link TL-WDR4900 v2
Specification:
- SoC: Qualcomm Atheros QCA9558
- Flash: 8 MB
- RAM: 128 MB
- Ethernet: AR8327N with 5 GE ports.
- Wireless radio: QCA9558 for 2.4G and AR9580 for 5G.

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-11 21:36:27 +02:00
Yousong Zhou
3493c1cf41 uci: bump to source date 2018-08-11
Fixes segfault when parsing malformed delta lines

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-08-11 12:04:31 +00:00
Koen Vandeputte
0ddb34b6b5 kernel: bump 4.14 to 4.14.62
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-10 18:43:23 +02:00
Koen Vandeputte
21a229317f kernel: bump 4.9 to 4.9.119
Refreshed all patches.

Delete upstreamed patch:
- 100-tcp-add-tcp_ooo_try_coalesce-helper.patch

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-10 18:43:23 +02:00
John Crispin
1961948585 wpa_supplicant: fix CVE-2018-14526
Unauthenticated EAPOL-Key decryption in wpa_supplicant

Published: August 8, 2018
Identifiers:
- CVE-2018-14526
Latest version available from: https://w1.fi/security/2018-1/

Vulnerability

A vulnerability was found in how wpa_supplicant processes EAPOL-Key
frames. It is possible for an attacker to modify the frame in a way that
makes wpa_supplicant decrypt the Key Data field without requiring a
valid MIC value in the frame, i.e., without the frame being
authenticated. This has a potential issue in the case where WPA2/RSN
style of EAPOL-Key construction is used with TKIP negotiated as the
pairwise cipher. It should be noted that WPA2 is not supposed to be used
with TKIP as the pairwise cipher. Instead, CCMP is expected to be used
and with that pairwise cipher, this vulnerability is not applicable in
practice.

When TKIP is negotiated as the pairwise cipher, the EAPOL-Key Key Data
field is encrypted using RC4. This vulnerability allows unauthenticated
EAPOL-Key frames to be processed and due to the RC4 design, this makes
it possible for an attacker to modify the plaintext version of the Key
Data field with bitwise XOR operations without knowing the contents.
This can be used to cause a denial of service attack by modifying
GTK/IGTK on the station (without the attacker learning any of the keys)
which would prevent the station from accepting received group-addressed
frames. Furthermore, this might be abused by making wpa_supplicant act
as a decryption oracle to try to recover some of the Key Data payload
(GTK/IGTK) to get knowledge of the group encryption keys.

Full recovery of the group encryption keys requires multiple attempts
(128 connection attempts per octet) and each attempt results in
disconnection due to a failure to complete the 4-way handshake. These
failures can result in the AP/network getting disabled temporarily or
even permanently (requiring user action to re-enable) which may make it
impractical to perform the attack to recover the keys before the AP has
already changes the group keys. By default, wpa_supplicant is enforcing
at minimum a ten second wait time between each failed connection
attempt, i.e., over 20 minutes waiting to recover each octet while
hostapd AP implementation uses 10 minute default for GTK rekeying when
using TKIP. With such timing behavior, practical attack would need large
number of impacted stations to be trying to connect to the same AP to be
able to recover sufficient information from the GTK to be able to
determine the key before it gets changed.

Vulnerable versions/configurations

All wpa_supplicant versions.

Acknowledgments

Thanks to Mathy Vanhoef of the imec-DistriNet research group of KU
Leuven for discovering and reporting this issue.

Possible mitigation steps

- Remove TKIP as an allowed pairwise cipher in RSN/WPA2 networks. This
can be done also on the AP side.

- Merge the following commits to wpa_supplicant and rebuild:

WPA: Ignore unauthenticated encrypted EAPOL-Key data

This patch is available from https://w1.fi/security/2018-1/

- Update to wpa_supplicant v2.7 or newer, once available

Signed-off-by: John Crispin <john@phrozen.org>
2018-08-10 15:48:21 +02:00
Luis Araneda
caebb77b45 tools: findutils: fix compilation with glibc 2.28
Add a temporary workaround to compile with glibc 2.28
as some constants were removed and others made private

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-08-10 06:29:49 +02:00
Luis Araneda
8ae8489986 tools: m4: fix compilation with glibc 2.28
Add a temporary workaround to compile with glibc 2.28
as some constants were removed and others made private

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-08-10 06:29:32 +02:00
Thibaut VARÈNE
78b5764fd8 base-files: make wifi report unknown command
Avoid having /sbin/wifi silently ignore unknown keywords and execute
"up"; instead display the help message and exit with an error.

Spell out the "up" keyword (which has users), add it to usage output,
and preserve the implicit assumption that runing /sbin/wifi without
argument performs "up".

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-08-10 05:30:57 +02:00
David Bauer
c4931713df ath79: add support for OCEDO Koala
This commit adds support for the OCEDO Koala

SOC:	Qualcomm QCA9558 (Scorpion)
RAM:    128MB
FLASH:  16MiB
WLAN1:  QCA9558 2.4 GHz 802.11bgn 3x3
WLAN2:  QCA9880 5 GHz 802.11nac 3x3
INPUT:  RESET button
LED:    Power, LAN, WiFi 2.4, WiFi 5, SYS
Serial: Header Next to Black metal shield
        Pinout is 3.3V - GND - TX - RX (Arrow Pad is 3.3V)
        The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet
 - 2.4 GHz WiFi
 - 5 GHz WiFi
 - TFTP boot from ramdisk image
 - Installation via ramdisk image
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

Installation seems to be possible only through booting an OpenWRT
ramdisk image.

Hold down the reset button while powering on the device. It will load a
ramdisk image named 'koala-uImage-initramfs-lzma.bin' from 192.168.100.8.

Note: depending on the present software, the device might also try to
pull a file called 'koala-uimage-factory'. Only the name differs, it
is still used as a ramdisk image.

Wait for the ramdisk image to boot. OpenWRT can be written to the flash
via sysupgrade or mtd.

Due to the flip-flop bootloader which we not (yet) support, you need to
set the partition the bootloader is selecting. It is possible from the
initramfs image with

 > fw_setenv bootcmd run bootcmd_1

Afterwards you can reboot the device.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-09 18:44:57 +02:00
Chuanhong Guo
387736af41 ath79: ag71xx: remove PHY reset
Bit 8/12 of reset controller which is marked as PHY_RESET/SWITCH_RESET
in datasheets will trigger either a reset for builtin switch or assert
an external ETH0_RESET_L/ETH1_RESET_L pin, which are usually connected
to external PHY/switch. None of them should be triggered every time an
interface is brought up in ethernet driver.

Remove PHY reset support from ag71xx and definition for them in dtsi.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-09 18:44:57 +02:00
INAGAKI Hiroshi
23519edbca ath79: add support for Buffalo BHR-4GRV2
Buffalo BHR-4GRV2 is a wired router, based on Qualcomm Atheros
QCA9558.
Ported from ar71xx target.

Specification:

- Qualcomm Atheros QCA9558
- 64 MB of RAM
- 16 MB of Flash
- 5x 10/100/1000 Ethernet
  - QCA8337N
- 4x LEDs, 2x keys
- UART header on PCB
  - Vcc, TX, RX, GND from LED side
  - 115200n8

Flash instruction using factory image:

1. Connect the computer to the LAN port of BHR-4GRV2
2. Connect power cable to BHR-4GRV2 and turn on it
3. Access to "http://192.168.12.1/" and open firmware update
page ("ファームウェア更新")
4. Select the OpenWrt factory image and click update ("更新実行")
button
5. Wait ~120 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-08-09 18:44:57 +02:00
Hans Dedecker
2e02fdb363 odhcp6c: apply IPv6/ND configuration earlier
Apply IPv6/ND configuration before proto_send_update so that all config info
is available when netifd is handling the notify_proto ubus call.
In particular this fixes an issue when netifd is updating the downstream IPv6 mtu
as netifd was still using the not yet updated upstream IPv6 mtu to set the
downstream IPv6 mtu

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-09 18:46:57 +02:00
David Bauer
6555612783 ath79: fix PLL settings for QCA955x
This adds PLL settings for the ethernet ports of the TP-Link TL-WR1043
v2/v3 and the Openmesh OM5P-AC-v2.

We also change the PLL-settings in the qca9557.dtsi to match the ones
used as default on the ar71xx target.

As of 4b9680f138 those devices have broken ethernet ports as the default
PLL settings defined in the QCA9557.dtsi are applied which are off for
those devices.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-09 17:24:39 +01:00
Kevin Darbyshire-Bryant
995a1ba841 ath79: add pll for archer c7
commit 4b9680f fixed pll settings and the correct pll set
by bootloader is overrided by value in qca9557.dtsi which
is incorrect for Archer C7 and breaks ethernet. Add pll
values for archer c7 to fix ethernet connection.

This individual pll tweak has been cherry picked from github pr 1260
which changes a couple of things in a single commit and should be
ideally split.  This commit get archer v7 back and working.

Tested: archer c7 v2

Original combined commit authored by:
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
c7 fix only split out by:
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-08-09 17:04:59 +01:00
Hans Dedecker
e0fbf62821 iproute2: remove libutil from InstallDev section
Commit 4d961538f6 added libutil to the iproute2 InstallDev section
but lead to compile issues with packages picking up the wrong libutil
since libutil is quite a generic name ...
Further libutil is rather meant for internal usage in iproute2 than a
public API; therefore let's remove it from the InstallDev section together
with ll_map.h

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-09 17:48:03 +02:00
Hans Dedecker
6579af7a77 netifd: update to latest git HEAD
115a694 interface-ip: always override downstream IPv6 mtu

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-09 17:39:24 +02:00
Antonio Silverio
5f4502998a sunxi: change Orange Pi PC2 MUSB/power button
Changed default role of Orange Pi PC2 MSUB port to host (in dts)
Changed default function of Orange Pi PC2 power button to PWR_BTN

Signed-off-by: Antonio Silverio <menion@gmail.com>
2018-08-09 12:07:10 +02:00
Antonio Silverio
e2e39328d5 sunxi: Added support for Xunlong Orange Pi PC2
CPU: H5 High Performance Quad-core 64-bit Cortex-A53
GPU: Mali450 OpenGL ES 2.0/1.1/1.0, OpenVG 1.1, EGL
Memory: 1GB DDR3 (shared with GPU)
Onboard Storage: TF card (Max. 32GB) / NOR flash(2MB)
Onboard Network: 1000M/100M Ethernet RJ45
USB 2.0 Ports: Three USB 2.0 HOST, one USB 2.0 OTG, HOST mode
role by default in DTS
Buttons: Power Button(SW4) Debug TTL

UART: ..DC-IN..
>[GND][RX][TX] ..HDMI..

Signed-off-by: Antonio Silverio <menion@gmail.com>
2018-08-09 12:06:58 +02:00
Stijn Tintel
14b6c72541 kernel: move e1000e patches to backports
They're already in linux.git, so they shouldn't be in pending.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-08-09 11:46:29 +02:00
Zoltan HERPAI
f4d3047671 firmware: intel-microcode: bump to 20180703
* New upstream microcode data file 20180703
    + Updated Microcodes:
      sig 0x000206d6, pf_mask 0x6d, 2018-05-08, rev 0x061d, size 18432
      sig 0x000206d7, pf_mask 0x6d, 2018-05-08, rev 0x0714, size 19456
      sig 0x000306e4, pf_mask 0xed, 2018-04-25, rev 0x042d, size 15360
      sig 0x000306e7, pf_mask 0xed, 2018-04-25, rev 0x0714, size 17408
      sig 0x000306f2, pf_mask 0x6f, 2018-04-20, rev 0x003d, size 33792
      sig 0x000306f4, pf_mask 0x80, 2018-04-20, rev 0x0012, size 17408
      sig 0x000406f1, pf_mask 0xef, 2018-04-19, rev 0xb00002e, size 28672
      sig 0x00050654, pf_mask 0xb7, 2018-05-15, rev 0x200004d, size 31744
      sig 0x00050665, pf_mask 0x10, 2018-04-20, rev 0xe00000a, size 18432
      sig 0x000706a1, pf_mask 0x01, 2017-12-26, rev 0x0022, size 73728
    + First batch of fixes for: Intel SA-00115, CVE-2018-3639, CVE-2018-3640
    + Implements IBRS/IBPB/STIPB support, Spectre-v2 mitigation
    + SSBD support (Spectre-v4 mitigation) and fix Spectre-v3a for:
      Sandybridge server, Ivy Bridge server, Haswell server, Skylake server,
      Broadwell server, a few HEDT Core i7/i9 models that are actually gimped
      server dies.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-08-09 01:00:06 +02:00
Rob Mosher
8a3582fa8a busybox: prevent compile hang with bzip2 enabled
The BZIP2_SMALL option was not being exposed via Config.in which
caused the build to fail as 'yes' is piped to the config during
build.  As it's expecting a number, it gets stuck in a loop.

Signed-off-by: Rob Mosher <nyt-openwrt@countercultured.net>
2018-08-08 22:08:49 +02:00
Jo-Philipp Wich
cc21dab6cc ucert: update to lastest git HEAD
Update to latest HEAD in order to fix a stack memory corruption issue:

1056e73 Change the sigb buffer to be the same size as the fread

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-08 19:52:13 +02:00
Koen Vandeputte
915b0ba694 cns3xxx: correct size specifier in watchdog init print
fix compiler warnings

Fixes: 84acff2865 ("cns3xxx: fix mpcore watchdog")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-08 16:05:16 +02:00
Koen Vandeputte
85a0bca7cf cns3xxx: delete invalid snip in patch
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-08 16:05:16 +02:00
David Bauer
4e39e213af ar71xx: allow to override at803x sgmii aneg status
When checking the outcome of the PHY autonegotiation status, at803x
currently returns false in case the SGMII side is not established.

Due to a hardware-bug, ag71xx needs to fixup the SoCs SGMII side, which
it can't as it is not aware of the link-establishment.

This commit allows to ignore the SGMII side autonegotiation status to
allow ag71xx to do the fixup work.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-08 15:49:24 +02:00
David Bauer
f4f99ec973 ar71xx: fix QCA955X SGMII link loss
The QCA955X is affected by a hardware bug which causes link-loss of the
SGMII link between SoC and PHY. This happens on change of link-state or
speed.

It is not really known what causes this bug. It definitely occurs when
using a AR8033 Gigabit Ethernet PHY.

Qualcomm solves this Bug in a similar fashion. We need to apply the fix
on a per-device base via platform-data as performing the fixup work will
break connectivity in case the SGMII interface is connected to a Switch.

This bug was first proposed to be fixed by Sven Eckelmann in 2016.
 https://patchwork.ozlabs.org/patch/604782/

Based-on-patch-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-08 15:48:57 +02:00
David Bauer
fbe17867da kernel: allow device-tree configuration of at803x
This commit adds the ability to configure specific functions of the
at803x series ethernet-PHYs, which were previously configured
exclusively with the help of platform-data, via device-tree.

This is needed to fully support existing boards of the ar71xx platform.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-08 15:44:33 +02:00
Jo-Philipp Wich
fefe1da440 kernel: backport upstream fix for CVE-2018-5390
Backport an upstream fix for a remotely exploitable TCP denial of service
flaw in Linux 4.9+.

The fixes are included in Linux 4.14.59 and later but did not yet end up in
version 4.9.118.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-08 14:50:31 +02:00
Hans Dedecker
4d961538f6 iproute2: add libutil to InstallDev section
In iproute2 v4.17 ll_map has been moved from the libnetlink to the libutil
library; add libutil as well to the staging dir in order to keep support
for ll_map

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-08 14:29:08 +02:00
Koen Vandeputte
0ef25a7aee kernel: remove linux 4.4 support
No targets are using this one anymore

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-08 09:51:23 +02:00
David Bauer
4b9680f138 ath79: fix QCA9557 eth PLL settings
The QCA9557 dtsi is currently missing pll-handle and pll-regs for both
eth0 and eth1, therefore PLL settings won't be applied. This commit
fixes this behavior.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-08 08:38:45 +02:00
David Bauer
5107ba2374 uboot-envtools: add ath79 target
This adds uci entries for all ath79 devices for which this already was
the case on ar71xx. Additionally we add the OCEDO Koala as there was no
support in OpenWRT yet.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-08-08 08:38:45 +02:00
Kristian Evensen
ddf64edfe1 mediatek: Fix amount of memory on U7623
While finalizing support for the U7623 with 512MB, I made an embarresing
error and configured 1GB RAM for the board. I also forgot to move memory
from the dtsi and to the dts. This commit takes care of my mistakes.

While I am confessing my mistakes, I also note that I made a mistake in
the commit message of the initial U7623 commit. It is the .bin-file, and
not the .gz file that shall be sent to the device via tftp.

v1->v2:
* Remove redundant memory node (thanks Jonas Gorski)

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-08-08 08:38:45 +02:00
Mathias Kresin
b94b4b0862 ath79: don't include tl-wdr3600 image build code for tl-wdr4300
Including the tl-wdr3600 image build code just to overwrite most of it
doesn't make much sense and only makes it hard to read.

Furthermore, the tl-wdr4300 image will be marked as compatible with the
tl-wdr3600 this way.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 08:11:11 +02:00
Mathias Kresin
12121e643b ath79: cleanup netgear wnr612-v2 supported devices
The netgear,wnr612-v2 is included by default based on the device
define.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 08:11:11 +02:00
Mathias Kresin
38877d8873 ath79: mark netgear variables as device specific
The variables are used in image build recipes and need to be marked as
per devices vars to be stored individual per image define. Otherwise
the last defined variable will be used for all boards.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 08:11:11 +02:00
Chuanhong Guo
1edba538a9 ath79: Fix led nodes for TL-WR740N v2 and add its clones
This patch did the following things:
1. Separate ath9k-leds out of gpio leds so that all other leds will work
   before ath9k loded (e.g. during preinit/init stage).
2. Rename wps led to qss since that's how TP-Link mark it.
3. Rename LED prefix to tp-link because that dts is shared by many devices.
4. Rename to wr740n-v1 because v1 is the first and v2 just use the fw of v1.
   (This will require a forced sysupgrade if you comes from
   the previous wr740n v2 image.)
5. Remove SUPPORTED_DEVICES.
   (tl-wr740n-v2 doesn't exist anywhere so it's useless.)
6. Add all WR741ND v1 clones found in ar71xx.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-08 08:11:11 +02:00
Mathias Kresin
55ff2951ea ath79: fix dts warnings
Fix all issues found by the devicetree compiler like wrong address/size
cells as well as wrong/missing/superfluous unit addresses.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 08:11:11 +02:00
Mathias Kresin
bf078fcab6 ath79: fix node names
Use the standardized node names from the devicetree specification.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 07:24:22 +02:00
Mathias Kresin
a8ad7b6efa ath79: fix compatible strings
Use only the jedec,spi-nor compatible string. Everything else either
never worked or is only support to keep compatibility.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 07:24:22 +02:00
Mathias Kresin
7b42247182 ath79: fix whitespace issue in dts files
Fixes spaces vs. tabs issues and remove indentation on blank lines.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 07:24:22 +02:00
Mathias Kresin
3b1213a377 ramips: use #include syntax for dtsi files
Use the same syntax for including dtsi for all dts files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-08 07:24:03 +02:00
Daniel Golle
8174853c78 base-files: introduce sysupgrade signature chain verification
Verify ucert signature chains in sysupgrade images in case ucert is
installed and $CHECK_IMAGE_SIGNARURE = 1.
Also make sure ucert host binary is present and generate a self-signed
ucert in case $TOPDIR/key-build.ucert is missing.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-08-08 02:22:54 +02:00
Daniel Golle
ec78f03de5 image: fix build without ucert
Make sure the Shell-expression returns true also in case of
key-build.ucert being absent.

Fixes commit 848b455d2e ("image: use ucert to append signature")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-08-08 00:48:53 +02:00
Daniel Golle
848b455d2e image: use ucert to append signature
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-08-07 23:20:49 +02:00
Daniel Golle
7a52ce3faf ucert: update source
ad816fc set rpath to make bundle-libraries.sh happy
 63ad591 blob_buf needs to be zero'd

Now that libubox, libjson-c and libblobms_json are installed into
STAGING_DIR_HOST we can properly bundle ucert in the ImageBuilder.
Follow-up commits will make use of it to include a signature-chain in
sysupgrade images using fwtool.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-08-07 23:20:18 +02:00
Daniel Golle
73100024d3 libubox: set HOST_BUILD_PREFIX
Install into STAGING_DIR_HOST rather than STAGING_DIR_HOSTPKG to make
bundle-libraries.sh happy.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-08-07 22:31:48 +02:00
Daniel Golle
a5368dc30c libjson-c: set HOST_BUILD_PREFIX
Install into STAGING_DIR_HOST rather than STAGING_DIR_HOSTPKG to make
bundle-libraries.sh happy.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-08-07 22:31:48 +02:00
Jo-Philipp Wich
1c4a255aa1 libubox: fix source version date
The referenced Git commit was made on the 25th of July, not June.

Fixes 432eaa940f ("libubox: fix mirror hash")
Fixes 5dc32620c4 ("libubox: update to latest git HEAD")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-07 17:27:05 +02:00
Jo-Philipp Wich
432eaa940f libubox: fix mirror hash
Correct the mirror hash to reflect whats on the download server.

A locally produced libubox SCM tarball was also verified to yield an identical
checksum compared to the one currently on the download server.

Fixes FS#1707.
Fixes 5dc32620c4 ("libubox: update to latest git HEAD")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-07 16:32:30 +02:00
Hans Dedecker
7402cc7160 toolchain/glibc: update to latest 2.26 commit
c9570bd2f5 x86: Populate COMMON_CPUID_INDEX_80000001 for Intel CPUs [BZ #23459]
86e0996b1a x86: Correct index_cpu_LZCNT [BZ #23456]
cf6deb084b conform/conformtest.pl: Escape literal braces in regular expressions
b12bed3e06 stdio-common/tst-printf.c: Remove part under a non-free license [BZ #23363]
20dc7a909a libio: Add tst-vtables, tst-vtables-interposed
4b10e69b1f Synchronize support/ infrastructure with master
762e9d63d5 NEWS: Reorder out-of-order bugs
2781bd5a86 libio: Disable vtable validation in case of interposition [BZ #23313]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-07 14:28:48 +02:00
Eneas U de Queiroz
33fd1d0d91 ustream-ssl: update to latest git HEAD
23a3f28 openssl, wolfssl: match mbedTLS ciphersuite list
450ada0 ustream-ssl: Revised security on mbedtls
34b0b80 ustream-ssl: add openssl-1.1.0 compatibility

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-08-07 14:28:16 +02:00
Koen Vandeputte
0d283c0180 cns3xxx: ethernet: use circular queue checks consistently
Use the same method for setting queue index pointers consistenly
throughout the source file.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-07 12:53:48 +02:00
Koen Vandeputte
06beefd6d5 cns3xxx: ethernet: cleanup code
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-07 12:53:48 +02:00
Koen Vandeputte
23cdbf2644 cns3xxx: ethernet: fix signed/unsigned comparison
Fixes a compiler warning

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-07 12:53:47 +02:00
Koen Vandeputte
d1aa6bd698 cns3xxx: add myself as maintainer
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-07 12:53:47 +02:00
Koen Vandeputte
7a254aeeb8 kernel: bump 4.14 to 4.14.61
Refreshed all patches.

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-07 12:53:47 +02:00
Koen Vandeputte
f7036a34ac kernel: bump 4.9 to 4.9.118
Refreshed all patches.

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-07 12:53:47 +02:00
Hans Dedecker
9537c1a153 procd: update to latest git HEAD
e29966f Allow disabling seccomp or changing the whitelist
5f57223 trace: Use properly sized type for PTRACE_GETEVENTMSG
747efb6 procd: fix ustream deadlock when there are 0 bytes or no newlines

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-06 22:48:42 +02:00
Jo-Philipp Wich
93ac8b03b0 Revert "netfilter: separate IPv6 relevant kernel modules from IPv4"
This reverts commit 42a3c6465a.

The change was apparently never build-tested with all kmods enabled. I took
a brief look but found no simple way to untangle this, so revert it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-06 19:46:37 +02:00
Rosy Song
42a3c6465a netfilter: separate IPv6 relevant kernel modules from IPv4
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-08-06 12:09:04 +02:00
Rosy Song
2b637e5ab8 base-files: do not add relevant sections & options except when ipv6 is support in kernel
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-08-06 12:08:47 +02:00
Chuanhong Guo
18a2595315 ath79: rename tl-archer-c7 to archer-c7
This router is called Archer C7 and the tl was used to identify
TP-LINK. Since we have added tplink in dts/board name, the tl
prefix is useless now.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
2d5fee248c ath79: alphabetical order image/generic.mk
Move the wzr-hp-g450h in image/generic.mk to keep alphabetical order.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
8288af1e18 ath79: rename dts/image using manufacturer_board scheme
This helps getting rid of SUPPORTED_DEVICES which can be
auto-generated in image/Makefile.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
2da431e583 ath79: remove quotes for boardname in scripts
Quotes are not required in case statements.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
f9065e44a6 ath79: put all devices in alphabetical order in scripts
And remove specifying lan interfaces as eth1.1 because this is
handled by ucidef_add_switch.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
3804134369 ath79: fix support for TL-MR3020 v1
Change lan and it's LED to eth0
It's broken since c7c807cb8c
where I changed the dts but forgot to change default configurations.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
690c55e8cc ath79: fix support for TL-WR740N/WR741N v4
1. Swap eth0/eth1
 Both devices are using AR9331, the builtin switch on AR9331 is
 connected to gmac1 and gmac1 is named as eth1 in ath79.
 PS: gmac1 is eth0 and gmac0 is eth1 in ar71xx because of the
 reversed initialization order.
2. Fix the incorrect compatible string in dts

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Chuanhong Guo
115e993adc ath79: remove useless phy-handle nodes
phy-handle is used to poll link status. They are useless when
we need fixed-link on these interfaces.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-08-06 07:31:54 +02:00
Christian Lamparter
3fce12568a kernel: modules: fix kmod-regmap redux
Jonas Gorski commented on the previous patch:
|This is actually the wrong fix and papers over an issue in one of our
|local patches.
|
|We intentionally allow regmap to be built as a module, see
|
|/target/linux/generic/hack-4.14/259-regmap_dynamic.patch
|[...]
|[The regulator code] optionally supports regmap thanks to the stubs
|provided if regmap is disabled - which breaks if you compile regmap
|as a module.

In order to mitigate this issue, this patch reverts the previous patch
and replaces the existing IS_ENABLED(CONFIG_REGMAP) with
IS_REACHABLE(CONFIG_REGMAP). This solves this particular issue as the
regulator code will now automatically fallback to the regmap stubs in
case the kmod-regmap module is enabled, but nothing else sets
CONFIG_REGMAP=y.

Note: There's still a potential issue that this patch doesn't solve:
If someone ever wants to make a OpenWrt kernel package for a
regulator module that requires the REGMAP feature for a target that
doesn't set CONFIG_REGMAP=y but has CONFIG_REGULATOR=y, the resulting
kmod-regulator-xyz package will not work on the target.
Luckily, there aren't any in-tree OpenWrt kernel module packages for
regulators at the moment. On the bright side: regmap is a critical
part nowadays and all new and upcoming architectures require it by
default. This will likely only ever be a problem for legacy targets
and devices that cannot afford to enable REGMAP.

Cc: Jonas Gorski <jonas.gorski@gmail.com>
Cc: John Crispin <john@phrozen.org>
Fixes: d00913d121 ("kernel: modules: fix kmod-regmap")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-08-06 07:17:12 +02:00
Chen Minqiang
f6d81e2fa1 mt7620: gsw: make IntPHY and ExtPHY share mdio addr 4 possible
To share mdio addr for IntPHY and ExtPHY,
as described in the documentation (MT7620_ProgrammingGuide.pdf).
(refer: http://download.villagetelco.org/hardware/MT7620/MT7620_ProgrammingGuide.pdf)

when port4 setup to work as gmac mode, dts like:

&gsw {
    mediatek,port4 = "gmac";
};

we should set SYSCFG1.GE2_MODE==0x0 (RGMII).
but SYSCFG1.GE2_MODE may have been set to 3(RJ-45) by uboot/default
so we need to re-set it to 0x0

before this changes:
gsw: 4FE + 2GE may not work correctly and MDIO addr 4 cannot be used by ExtPHY

after this changes:
gsw: 4FE + 2GE works and MDIO addr 4 can be used by ExtPHY

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-08-06 07:12:31 +02:00
Daniel Gimpelevich
379fe50672 ramips: fix gigabit switch PHY access on MDIO
When PHY's are defined on the MDIO bus in the DTS, gigabit support was
being masked out for no apparent reason, pegging all such ports to 10/100.
If gigabit support must be disabled for some reason, there should be a
"max-speed" property in the DTS.

Reported-by: James McKenzie <openwrt@madingley.org>
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2018-08-06 07:05:37 +02:00
Daniel Gimpelevich
5a6229a93d ramips: remove superfluous & confusing DT binding
Mediatek has a reference platform that pairs an MT7620A with an MT7530W,
where the latter responds on MDIO address 0x1f while both chips respond on
0x0 to 0x4. The driver special-cases this arrangement to make sure it's
talking to the right chip, but two different ways in two different places.
This patch consolidates the detection without the current requirement of
both tests to be separately satisfied in the DTS.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2018-08-06 07:05:37 +02:00
Daniel Gimpelevich
f72fa883b3 ramips: add support for Edimax BR-6478AC v2
Roll-up of patches by Rohan Murch, Hans Ulli Kroll, and James McKenzie.
Taken from https://forum.openwrt.org/viewtopic.php?id=67192 and updated.

Specification:
- System-On-Chip: MT7620A
- CPU/Speed: 580 MHz
- Flash-Chip: Macronix MX25L6405D
- Flash size: 8192 KiB
- RAM: 64 MiB
- Wireless No1: SoC-integrated: MT7620A 2.4GHz 802.11bgn
- Wireless No2: On-board chip: MT7612E 5GHz 802.11ac
- Switch: Mediatek MT7530W Gigabit Switch
- USB: Yes 1 x 2.0

Installation:
1. Download sysupgrade.bin
2. Open vendor web interface
3. Choose to upgrade firmware
4. After reboot connect via ethernet at 192.168.1.1

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2018-08-06 07:05:37 +02:00
Paul Spooren
ad5c2897ec imagebuilder: manifest function show stderr
This really simplifies debugging, if a package is not found or a feed is
not reachable, a proper stderr is printed. Currently it would only say
`_call_manifest` failed.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2018-08-06 06:54:42 +02:00
Andreas Ziegler
72489ebeb6 base-files: sysupgrade: abort if config backup fails
Sysupgrade shouldn't proceed, if the backup of the configuration
fails because tar (or gzip) exit with a non-zero code.

Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
2018-08-06 06:51:44 +02:00
Jo-Philipp Wich
a692e4e3de scripts: time.pl: avoid hard Time::HiRes dependency
Use Time::HiRes when available and fallback to raw syscall interface
when not. If that fails too, simply report 0, 0 as real time.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-05 12:24:01 +02:00
Jo-Philipp Wich
d3ddf6631e build: remove GNU time dependency
Replace the GNU time program invocation with a simple Perl script reporting
the timing values. Since we require Perl anyway for the build system, we can
as well use that instead of requiring a random GNU utility rarely installed
by default.

Fixes: ff6e62b288 ("build: log time taken by each packages/steps")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-05 00:06:27 +02:00
Alex Maclean
6031ab345d ramips: move partitions into partition table node
Starting with kernel 4.4, the use of partitions as direct subnodes of the
mtd device is discouraged and only supported for backward compatiblity
reasons.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-08-04 08:39:35 +02:00
Mathias Kresin
6dd94c2781 ramips: unify partition node names in dts files
Use partition@ as name for all partition nodes. Add a label where
necessary.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
bfd65fc4ab ramips: fix whitespace and comment issues in dts
Fix space vs. tabs issue and trainling whitespaces. Use C style
comments or drop the comments if they explain what is already to see in
the devicetree parameters.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
53624c1702 ramips: fix dtc warnings
Fix individual boards dtc warnings or obvious mistakes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
6384e0d16a ramips: fix hnat dtc warning
The hardware NAT node has the same reg/unit as the ethernet node. One
of them need to be a child of the other.

Make the hardware NAT node a child of the ethernet node since the it
"reference" the netdev in its properties.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
f9b8328d79 ramips: fix pci/pcie related dtc warnings
Add the ranges property to the PCI bridges where missing. Add the unit
address to PCI bridge where missing.

Rework the complete rt3883 pci node. Drop the PCI unit nodes from the
dtsi. They are not used by any dts file and should be rather in the dts
than in the SoC dtsi. Express the PCI-PCI bridge in a clean devicetree
syntax. The ralink,pci-slot isn't used by any driver, drop it. Move the
pci interrupt controller out of the pci node. It doesn't share the same
reg and therefore should be an independent/SoC child node.

Move the pci related rt3883 pinctrl setting to the dtsi instead of
defining the very same for each rt3883 board.

If the device_type property is used for PCI units, the unit is treated
as pci bridge which it isn't. Drop it for PCI units.

Reference pci-bridges or the pci node defined in the dtsi instead of
recreating the whole node hierarchy. It allows to change the referenced
node in the dtsi without the need to touch all dts.

Fix the PCI(e) wireless unit addresses. All our PCI(e) wireless chips
are the first device on the bus. The unit address has to be the bus
address instead of the PCI vendor/device id.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
d8e7a526a3 ramips: use ralink,nr-gpio instead of ralink,num-gpios
Since commit c1e7738988f5 ("checks: add gpio binding properties check")
dtc treats any *-gpios and *-gpio property as phandle at least during
checks. The only whitelisted property is nr-gpio.

Use ralink,nr-gpio in favour of ralink,num-gpios to get rid of false
positive warnings.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
1bad2b74ae ramips: fix cpu interrupt controller dtc warnings
The cpu interrupt controller doesn't have a reg property, hence we
can't use a unit address in the node name.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
b9dbf3f3c8 ramips: fix cpu related dtc warnings
We need a reg property if we are using a unit address.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
René van Dorst
0ae9396556 treewide: convert gpio-export to platform driver
Without this patch you will get an error "gpio-export probe deferral
not supported" when you try to export i2c expander gpio pins.

gpio-export is probed long before i2c-bus and i2c expander are created
and it doesn't retry it so none pins are exported.

Signed-off-by: René van Dorst <opensource@vdorst.com>
apply the change to all instances of the gpio exports patch
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Mathias Kresin
1d18a14a90 ath79: really fix TP-Link Archer C7 v2 MAC address
Revert 290c54473e ("ath79: fix TP-Link Archer C7 v2 wlan1 MAC address")
which obviously aims to have a distinct MAC address per interface.

Unfortunally it doesn't match what is used by the stock firmware and we
shouldn'z use MAC Adresses not reserverd for/assigned to a particular
board.

The correct MAC adress increments for this board are:

wlan0 (5GHz) : -1
wlan1 (2.4GHz) : 0
eth1 (LAN) : 0
eth0 (WAN) : 1

Fixes: FS#408

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-08-04 08:39:35 +02:00
Jason A. Donenfeld
68e2ebe64a wireguard: bump to 0.0.20180802
Changelog taken from the version announcement

> == Changes ==
>
>   * chacha20poly1305: selftest: split up test vector constants
>
>   The test vectors are encoded as long strings -- really long strings -- and
>   apparently RFC821 doesn't like lines longer than 998.
>   https://cr.yp.to/smtp/message.html
>
>   * queueing: keep reference to peer after setting atomic state bit
>
>   This fixes a regression introduced when preparing the LKML submission.
>
>   * allowedips: prevent double read in kref
>   * allowedips: avoid window of disappeared peer
>   * hashtables: document immediate zeroing semantics
>   * peer: ensure resources are freed when creation fails
>   * queueing: document double-adding and reference conditions
>   * queueing: ensure strictly ordered loads and stores
>   * cookie: returned keypair might disappear if rcu lock not held
>   * noise: free peer references on failure
>   * peer: ensure destruction doesn't race
>
>   Various fixes, as well as lots of code comment documentation, for a
>   small variety of the less obvious aspects of object lifecycles,
>   focused on correctness.
>
>   * allowedips: free root inside of RCU callback
>   * allowedips: use different macro names so as to avoid confusion
>
>   These incorporate two suggestions from LKML.
>
> This snapshot contains commits from: Jason A. Donenfeld and Jann Horn.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-08-04 04:04:34 +00:00
Jo-Philipp Wich
e44162ffca uclient: update to latest git HEAD
f2573da uclient-fetch: use package name pattern in message for missing SSL library
9fd8070 uclient-fetch: Check for nullpointer returned by uclient_get_url_filename
f41ff60 uclient-http: basic auth: Handle memory allocation failure
a73b23b uclient-http: auth digest: Handle multiple possible memory allocation failures
66fb58d uclient-http: Handle memory allocation failure
2ac991b uclient: Handle memory allocation failure for url
63beea4 uclient-http: Implement error handling for header-sending
eb850df uclient-utils: Handle memory allocation failure for url file name
ae1c656 uclient-http: Close ustream file handle only if allocated

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-03 23:50:29 +02:00
Koen Vandeputte
f960490fc8 kernel: bump 4.14 to 4.14.60
Refreshed all patches

Removed upstreamed patches:
- 500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-03 16:10:38 +02:00
Koen Vandeputte
4ec4dd2a11 kernel: bump 4.9 to 4.9.117
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-03 16:10:38 +02:00
Jo-Philipp Wich
4bb8a678e0 sdk: include arch/arm/ Linux includes along with arch/arm64/ ones
The Linux headers on arm64 architectures contain references to common
arch/arm/ headers which were not bundled by the SDK so far.

Check if we're packing the SDK for an arm64 target and if we do, also
include arch/arm headers as well.

Fixes FS#1725.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-03 13:47:29 +02:00
Kevin Darbyshire-Bryant
13c66f8820 iproute2: cake: make gso/gro splitting configurable
This patch makes sch_cake's gso/gro splitting configurable
from userspace.

To disable breaking apart superpackets in sch_cake:

tc qdisc replace dev whatever root cake no-split-gso

to enable:

tc qdisc replace dev whatever root cake split-gso

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
Signed-off-by: Dave Taht <dave.taht@gmail.com>
[pulled from netdev list - no API/ABI change]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-08-02 22:00:19 +01:00
Kevin Darbyshire-Bryant
4f3c9a63b2 kmod-sched-cake: bump to 20180728 optional gso split
Follow upstream kernel patch that restores always splitting gso packets
by default whilst making the option configurable from (tc) userspace.

No ABI/API change

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-08-02 22:00:19 +01:00
Hannu Nyman
12fb4bb834 busybox: update to 1.29.2
* Update busybox to 1.29.2
* refresh default config
* remove upstreamed patches

Config refreshed with
  cd config/
  ../convert_menuconfig.pl ../../../../build_dir/target-arm_cortex-a9+vfpv3_musl_eabi/busybox-1.29.2
  cd ..
  ./convert_defaults.pl < ../../../build_dir/target-arm_cortex-a9+vfpv3_musl_eabi/busybox-1.29.2/.config > Config-defaults.in

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Tested-by: Hans Dedecker <dedeckeh@gmail.com>
2018-08-02 22:36:00 +02:00
Koen Vandeputte
457e6d5a27 iperf: bump to 2.0.12
Fixes the annoying 'feature' were TTL was set to "1" by default ..
Users had to specify -T manually to test outside the own network.

2.0.12 change set (as of June 25th 2018)

o Change the unicast TTL default value from 1 to the system default (to be compatable with previous versions.) Multicast still defaults to 1.
o adpative formatting bug fix: crash occurs when values exceed 1 Tera. Add support for Tera and Peta and eliminate the potential crash condition
o configure default compile to include isochronous support (use configure --disable-isochronous to remove support)
o replace 2.0.11's --vary-load option with a more general -b option to include <mean>,<stdev>, e.g. -b 100m,40m, which will pull from a log normal distribution every 0.1 seconds
o fixes for windows cross compile (using mingw32)
o compile flags of -fPIE for android
o configure --enable-checkprograms to compile ancillary binaries used to test things such as delay, isoch, pdf generation
o compile tests when trying to use 64b seq numbers on a 32b platform
o Fix GCC ver 8 warnings

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-02 15:03:21 +02:00
Jonas Gorski
2308b87204 brcm63xx: switch to 4.14
Kernel 4.14 support has been present for quite some time, so let's give
it wider testing.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-08-02 08:49:18 +02:00
Jonas Gorski
15cb65dad7 brcm63xx: drop b43 from devices with unsupported wifi
The internal wifi isn't supported, so drop b43 from devices that only
have it.

Fixes FS#1698
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-08-02 08:43:52 +02:00
Jonas Gorski
8cb8d70fea brcm63xx: copy SR102 support patch to 4.14 as well
It seems to have been missed when the patch was accepted.

Fixes: d591260407 ("brcm63xx: initial support for Sky SR102 router")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-08-02 08:43:52 +02:00
Jonas Gorski
bc1c706bb3 brcm63xx: drop bogus SPROM section from SR102
The integrated SoC wifi will likely never be supported, and if,
it will go through DT with the sprom contents there.

Fixes: d591260407 ("brcm63xx: initial support for Sky SR102 router")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-08-02 08:43:52 +02:00
Chen Minqiang
33bce21bb0 base-files: fix HOME_URL replace
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-08-02 07:54:40 +02:00
Andrew Cameron
bae927c551 ar71xx: add support for TP-LINK CPE510 V2.0
Adds Support for the TP-LINK CPE510 V2.0 by TP-Link.
The hardware is almost the same as the CPE510 V1.0
Follow the same processes as for the CPE510 V1.0

Signed-off-by: Andrew Cameron <apcameron@softhome.net>
2018-08-02 07:49:26 +02:00
Jo-Philipp Wich
b9bd3285c7 Revert "ar71xx: ag71xx: Prevent kernel oops for board def"
This reverts commit 7a3e133751.

This change reportedly breaks connectivity on some ar71xx devices, so
revert it for now.

Ref: https://github.com/openwrt/openwrt/pull/1217#issuecomment-409708087
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-01 22:34:22 +02:00
Jo-Philipp Wich
33dbe2c55d Revert "ar71xx: ag71xx: Add connect message: fixed phy"
This reverts commit 0b9f4e8808.

This change reportedly breaks connectivity on some ar71xx devices, so
revert it for now.

Ref: https://github.com/openwrt/openwrt/pull/1217#issuecomment-409708087
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-01 22:31:37 +02:00
Jo-Philipp Wich
9ebf596386 Revert "ar71xx: ag71xx_phy: Fix compilation for debug messages"
This reverts commit 2655fbe8ef.

The patch introduces syntax errors, revert it for now.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-01 22:31:14 +02:00
Koen Vandeputte
a2a225517d gdb: bump to 8.1.1
GDB 8.1.1 brings the following fixes and enhancements over GDB 8.1:

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-01 16:12:53 +02:00
Koen Vandeputte
3df400c87e toolchain/gdb: bump to 8.1.1
GDB 8.1.1 brings the following fixes and enhancements over GDB 8.1:

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

GDB 8.1 includes the following changes and enhancements:

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

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

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

  * Various Python Scripting enhancements;

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

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

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

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

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

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

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

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

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

  * Various completion enhancements;

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

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

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

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

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-01 16:12:53 +02:00
Eneas U de Queiroz
f63f20fb93 adb: added patch for openssl 1.1.0 compatibility
Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-08-01 11:44:30 +02:00
Rosy Song
f30583c41d nftables: allow to build with json support
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-08-01 11:25:04 +02:00
Daniel F. Dickinson
0b7a9688ce ar71xx: cr3000: cleanup board definition
1) Add comments so it's clear why we did things; this may prevent
   someone (e.g. me) from sinking time into fixing things that
   aren't broken and/or were done for reason.

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

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

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-01 11:23:54 +02:00
Daniel F. Dickinson
b6c8bc0981 ar71xx: cr3000: Use correct company name
It's 'PowerCloud Systems' not 'PowerCloud'.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-01 11:23:54 +02:00
Daniel F. Dickinson
e38520cd50 ar71xx: cr3000: Drop support for defunct cloud
The CR3000 stock firmware is now irrelevant as it required a now defunct
cloud service.  Therefore only build images that use the entire flash
(overwriting stock firwmare-specific partitions that no longer matter),
previously called 'nocloud' images.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-01 11:23:54 +02:00
Daniel F. Dickinson
60cf71ede7 ath79: Forward port support for CR3000
The PowerCloud Systems CR3000 was a cloud-managed CPE for a now defunct
NaaS offering.  It was previously supported under the ar71xx branch and
this forward ports that support with some notable differences:

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

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

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

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

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-08-01 11:23:53 +02:00
Koen Vandeputte
fec8fe8069 kernel: bump 4.9 to 4.9.116
Refreshed all patches

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

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

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

Also add ARM64_SSBD symbol to ARM64 targets still running kernel 4.9

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-08-01 09:46:59 +02:00
Jo-Philipp Wich
d0e0b7049f sdk: bundle usbip userspace sources
Bundle the usbip utility sources shipped with the Linux kernel tree in
order to allow the usbip packages from the package feed to build within
the OpenWrt SDK.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-08-01 09:12:17 +02:00
Jo-Philipp Wich
fdd6c556ab iwinfo: update to latest Git HEAD
a514139 build: compile with -ffunction-sections, -fdata-sections and LTO
3c30b17 wl: only invoke nvram executable if it exists
65b8333 Revert "build: compile with -ffunction-sections, -fdata-sections and LTO"

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-31 20:40:33 +02:00
Bjørn Mork
c72f3b5e2b include/feeds.mk: fix distfeeds.conf without per-feed repos
commit 514a4b3e1b ("include/feeds.mk: rework generation of opkg
distfeeds.conf") made the per-feed "base" repo unconditional, making
the default configuration fail when PER_FEED_REPO is disabled:

 root@wrt1900ac-1:~# cat /etc/opkg/distfeeds.conf
 src/gz openwrt_core http://openwrt.mork.no/18.06.0/targets/mvebu/cortexa9/packages
 src/gz openwrt_base http://openwrt.mork.no/18.06.0/packages/arm_cortex-a9_vfpv3/base
 root@wrt1900ac-1:~# opkg update
 Downloading http://openwrt.mork.no/18.06.0/targets/mvebu/cortexa9/packages/Packages.gz
 Updated list of available packages in /var/opkg-lists/openwrt_core
 Downloading http://openwrt.mork.no/18.06.0/targets/mvebu/cortexa9/packages/Packages.sig
 Signature check passed.
 Downloading http://openwrt.mork.no/18.06.0/packages/arm_cortex-a9_vfpv3/base/Packages.gz
 *** Failed to download the package list from http://openwrt.mork.no/18.06.0/packages/arm_cortex-a9_vfpv3/base/Packages.gz

 Collected errors:
  * opkg_download: Failed to download http://openwrt.mork.no/18.06.0/packages/arm_cortex-a9_vfpv3/base/Packages.gz, wget returned 8.

Cc: Matthias Schiffer <mschiffer@universe-factory.net>
Fixes: 514a4b3e1b ("include/feeds.mk: rework generation of opkg distfeeds.conf")
Signed-off-by: Bjørn Mork <bjorn@mork.no>
[whitespace/indentation fix]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-31 14:04:45 +02:00
Stijn Tintel
77e3e706ce kernel: add missing ARM64_SSBD symbol
In 4.14.57, a new symbol for Spectre v4 mitigation was introduced for
ARM64. Add this symbol to all ARM64 targets using kernel 4.14.

This mitigates CVE-2018-3639 on ARM64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-07-31 12:22:11 +03:00
Rafał Miłecki
fecbd91c7c mac80211: brcmfmac: backport patch for per-firmware features
This allows driver to support features that can't be dynamically
discovered.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-31 09:45:03 +02:00
Daniel Golle
7dcdf16222 kernel: remove duplicate #define's in at803x Ethernet PHY driver
AT803X_REG_CHIP_CONFIG and AT803X_BT_BX_REG_SEL have been defined
upstream by commit f62265b53ef3 ("at803x: double check SGMII side autoneg")
An existing local patch then added those exact same defines again which
isn't necessary, so remove them.

Fixes: f791fb4af4 ("kernel: add linux 4.9 support")
Fixes: b3f95490b9 ("kernel: generic: Add kernel 4.14 support")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-07-31 05:28:48 +02:00
Daniel Golle
a497e47762 kernel: re-add patch for AT8032 Ethernet PHY
The patch was wrongly removed by a kernel version bump to 4.9.105 in
the believe that it was merged upstream thow it wasn't. This lead to
unrecoverable link losses on devices which use those PHYs such as
many ubnt single-port CPEs.

Fixes: 7dca1bae82 (kernel: bump to 4.9.105)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-07-31 04:56:58 +02:00
Stijn Tintel
ef025e6417 kernel: add pending e1000e fixes
The previous round of fixes for the 82574 chip cause an issue with
emulated e1000e devices in VMware ESXi 6.5. It also contains changes
that are not strictly necessary. These patches fix the issues introduced
in the previous series, revert the unnecessary changes to avoid
unforeseen fallout, and avoid a case where interrupts can be missed.

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

Patchwork: https://patchwork.ozlabs.org/cover/881776/

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-07-31 05:11:34 +03:00
Stijn Tintel
22b9f99b87 kernel: bump 4.14 to 4.14.59
Drop patch that was superseded upstream:
ramips/0036-mtd-fix-cfi-cmdset-0002-erase-status-check.patch

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

In 4.14.55, a patch was introduced that breaks ext4 images in some
cases. The newly introduced patch
backport-4.14/500-ext4-fix-check-to-prevent-initializing-reserved-inod.patch
addresses this breakage.

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

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

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-07-31 05:11:07 +03:00
Christian Schoenebeck
c89195eb25 ca-caertificates: remove myself as PKG_MAINTAINER
remove myself as PKG_MAINTAINER

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2018-07-31 00:00:20 +02:00
John Crispin
3c4eeb5d21 netifd: update to latest git HEAD
fix a compile error

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-30 23:56:14 +02:00
Matt Merhar
a2eaaaaf4b kernel: switch compatible property for RedBoot DT binding
This changes the DT binding's compatible property to
"ecoscentric,redboot-fis-partitions", removing the existing reference to
Red Hat.

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

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

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
2018-07-30 23:49:49 +02:00
Hans Dedecker
929eac5b82 netifd: update to latest git HEAD (FS#1668)
75ee790 interface-ip: fix eui64 ifaceid generation (FS#1668)
ca97097 netifd: make sure the vlan ifname fits into the buffer
b8c1bca iprule: remove bogus assert calls
a2f952d iprule: fix broken in_dev/out_dev checks
263631a vlan: use alloca to get rid of IFNAMSIZE in vlan_dev_set_name()
291ccbb ubus: display correct prefix size for IPv6 prefix address
908a9f4 CMakeLists.txt: add -Wimplicit-fallthrough to the compiler flags
b06b011 proto-shell.c: add a explicit "fall through" comment to make the compiler happy
60293a7 replace fall throughs in switch/cases where possible with simple code changes

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-30 23:01:55 +02:00
Christian Lamparter
d00913d121 kernel: modules: fix kmod-regmap
This patch fixes the a compile issue that was triggered by
apm821xx/sata when kmod-regmap was selected.

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

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

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 22:37:22 +02:00
Stijn Tintel
50c5fdd54d tcpdump: explicitly disable libcap-ng support
When libcap-ng is detected during build, support for it is enabled. This
will cause a build failure due to a missing dependency. Explicitly
disable libcap-ng support to avoid this.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-07-30 23:27:55 +03:00
John Crispin
5f5d812881 brcm2708: fix w1 patch
this is now part of generic

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-30 20:51:56 +02:00
Sven Eckelmann
e3b8ae2b09 ipq40xx: Limit usable channels for OpenMesh A62 PHYs
The OpenMesh A62 is a tri-band device (1x 2.4GHz, 2x 5GHz) with special
filters in front of the RX+TX paths to the 5GHz PHYs. These filtered
channel can in theory still be used by the hardware but the signal strength
is reduced so much that it makes no sense.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-07-30 20:46:13 +02:00
Sven Eckelmann
ef39d0079b mac80211: ath10k: Limit available channels via DT ieee80211-freq-limit
Tri-band devices (1x 2.4GHz + 2x 5GHz) often incorporate special filters in
the RX and TX path. These filtered channel can in theory still be used by
the hardware but the signal strength is reduced so much that it makes no
sense.

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

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-07-30 20:46:13 +02:00
Matt Merhar
af3b1756f0 ath79: fix irq assignment for pci-ar71xx driver
In the new DT-based pci-ar71xx driver, ar71xx_pci_irq_init() was being
called before populating the PCI controller's device_node struct member.
This led to no IRQ being assigned to connected PCI devices (e.g. ath9k
cards) and caused them to be non-functional aside from simply being
detected.

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

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

Signed-off-by: Matt Merhar <mattmerhar@protonmail.com>
2018-07-30 20:22:44 +02:00
Torbjörn Jansson
af9a96d23e kernel: add kmod-iio-htu21
This adds support for the htu21 humidity and temperature sensor.

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

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

Signed-off-by: Torbjörn Jansson <torbjorn.jansson@mbox200.swipnet.se>
2018-07-30 19:34:43 +02:00
Alexandru Ardelean
20346a63f6 wolfssl: remove myself as maintainer
I no longer have the time, nor the desire to maintain this package.
Remove myself as maintainer.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-07-30 19:34:43 +02:00
Thibaut VARÈNE
c6ee683d64 ar71xx: define switch for rb-952ui-5ac2nd
QCA9533 built-in switch can be configured

Tested-by: Thibaut VARÈNE <hacks@slashdirt.org>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-30 18:14:30 +02:00
Mantas Pucka
3dd692cd6b ipq40xx: fix booting secondary CPU cores
95672e04 broke booting secondary cores by removing 'qcom,saw' property
from L2 cache node. kpssv2_release_secondary() requires it.

Signed-off-by: Mantas Pucka <mantas@8devices.com>
2018-07-30 17:55:04 +02:00
John Crispin
eddf4eae97 ar71xx: fix TL-WR1043N v5 port mapping
fixes 5660c8fb20 ("ar71xx: TL-WR1043N v5: fix mapping of LAN ports to labels on housing.")

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-30 17:47:06 +02:00
John Crispin
5e1b4c57de base-files: drop fwtool_pre_upgrade
this feature has never worked, the fw image name was not passed and the -t
parameter was missing in the tool invocation. drop the feature.

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-30 17:42:39 +02:00
Tim Thorpe
5660c8fb20 ar71xx: TL-WR1043N v5: fix mapping of LAN ports to labels on housing.
Reversed the numbering of the LAN ports in Luci so as to match the port numbers on the housing.

Signed-off-by: Tim Thorpe <tim@tfthorpe.net>
2018-07-30 16:31:18 +02:00
Tim Thorpe
d834ad9ac3 ar71xx: TL-WR1043N v4/v5: add orange WAN LED support
Add missing definitions for the orange WAN LED on the
TL-WR1043N(D) v4 and v5.

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

Signed-off-by: Tim Thorpe <tim@tfthorpe.net>
2018-07-30 16:30:34 +02:00
Lucian Cristian
accb67e582 ath79: add support for tl-wr841n-v9
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-30 16:14:49 +02:00
INAGAKI Hiroshi
ce93445cd6 ramips: add support for ELECOM WRC-2533GST
ELECOM WRC-2533GST is a 2.4/5 GHz band 11ac rotuer, based on
MediaTek MT7621A.

Specification:

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

Flash instruction using factory image:

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

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-07-30 15:55:21 +02:00
Paul Spooren
869b0d11db imagebuilder: add function to show manifest
Tested with 18.06.0-rc2/ar71xx/generic/tl-wdr4300-v1, image & list

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

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

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

[1]: https://github.com/lede-project/source/pull/1591
[2]: https://github.com/aparcar/attendedsysupgrade-server

Signed-off-by: Paul Spooren <mail@aparcar.org>
2018-07-30 15:55:21 +02:00
Kjel Delaey
8492ad0cc1 x86: add support to set GRUB menu entry title
$ make menuconfig

        Target Images -> Title for the menu entry in GRUB

Signed-off-by: Kjel Delaey <kjel_delaey@hotmail.com>
2018-07-30 15:55:21 +02:00
Ademar Arvati Filho
27b2f0fc0f kirkwood: add support for Iomega Storcenter ix2-200
Iomega Storcenter ix2-200 is a dual SATA NAS powered by a Marvell
 Kirkwood SoC clocked at 1GHz. It has 256MB of RAM and 32MB of
 flash memory, 3x USB 2.0 and 1x 1Gbit/s NIC

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

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

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

Signed-off-by: Ademar Arvati Filho <arvati@hotmail.com>
2018-07-30 15:21:00 +02:00
Eneas U de Queiroz
26dbf79f49 libevent2: Don't build tests and samples
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

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

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
2018-07-30 15:19:16 +02:00
Jo-Philipp Wich
3083962dd4 ath10k-ct: fix build with current mac80211 package
Commit 2dcd955aea ("mac80211: backport and update patches for ath10k")
changed the DFS detector API, causing ath10k-ct to fail building due to
a missing add_pulse() argument.

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

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-30 15:03:44 +02:00
Julien Dusser
4dfa6b7a30 build: fix ASLR for LTO packages
Fix building packages with LTO when CONFIG_PKG_ASLR_PIE is enabled.

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

compile-tested: ar71xx, ath79

Fix commits:
6dac92a42e
8c11133c9d
07940acc34
e7397eef69
ef16a394d2
ef96d1e34a
47b42137ce
73fc67b614
154c0c4006
804c51e1e6

Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2018-07-30 14:26:16 +02:00
Jianhui Zhao
84c212da44 samsung/s5pv210: New target
Signed-off-by: Jianhui Zhao <jianhuizhao329@gmail.com>
2018-07-30 14:10:00 +02:00
Keith Maika
4caab80830 ar71xx: add support for TP-Link Archer C59 v2
TP-Link Archer C59v2 is a dual-band AC1350 router based on
Qualcomm/Atheros QCA9561+QCA9886 chips.

Specification:

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

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

Signed-off-by: Keith Maika <keithm@aoeex.com>
2018-07-30 14:04:45 +02:00
Rafał Miłecki
a3d2448fae kernel: add missing include to redboot.c
This fixes:
drivers/mtd/redboot.c:299:34: error: array type has incomplete element type 'struct of_device_id'

Fixes: 5e8b4be531 ("kernel: add DT binding support to the mtd redboot parser")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-30 12:07:06 +02:00
Rafał Miłecki
23197e4580 brcm63xx: update DT RedBoot binding for the Inventel Livebox 1
linux,part-probe should be avoided as its only supported with OpenWrt
downstream patch that is going to be dropped eventually.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-07-30 11:16:42 +02:00
Jo-Philipp Wich
d7d10f2c1e brcm47xx: rework model detection
On brcm47xx boards, the model ID is the combination of the "boardtype" nvram
variable and an optional supplemental "boardnum" variable while the human
readable model name is usually exposed in the "machine" field of the
/proc/cpuinfo file.

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

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

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

Fixes FS#1576
Acked-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-30 11:10:47 +02:00
Lucian Cristian
569b6c8246 omap: disable ubifs
ubifs image are not working, until there is a fix, disable them

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-30 11:03:02 +02:00
Lucian Cristian
ca529e60d2 omap: add support for f2fs/ext4 overlay creation
add kernel support and include the tools for creating an overlay partition (f2fs or ext4)

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-30 11:03:02 +02:00
Lucian Cristian
6a095e8587 omap: add sysupgrade support
add sysupgrade missing script files

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-30 11:03:02 +02:00
Lucian Cristian
40f66f1431 omap: rename image for sysupgrade compatibility
for sysupgrade to work we need to change the image name based on dts target name

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-30 11:03:02 +02:00
Lucian Cristian
f9af9be8ab omap: fix squashfs image boot and creation
fixes FS#1034, squash fs images fails to boot because of missing ARM BCJ filter decoder
also activate squashf image creation

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-30 11:03:02 +02:00
Nick Hainke
abefb4fda3 hostapd: add ht and vht support in handle event function Add ht and vht capabilities. If a device sends a probe request, the capabilities are added.
Signed-off-by: Nick Hainke <vincent@systemli.org>
2018-07-30 11:01:04 +02:00
Nick Hainke
74ac742277 hostapd: add ubus call for ap features
The call "get_features" allows to gather hostapd config options
via ubus. As first infos we add the ht and vht support.
Although nl80211 supports to gather informations about
ht and vht capabilities, the hostapd configuration can disable
vht and ht. However, it is possible that the iw output is not
representing the actual hostapd configuration.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2018-07-30 10:59:25 +02:00
Mathew McBride
ae95a8ad3e uboot-envtools: add configuration for Traverse LS1043 boards.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-07-30 10:53:57 +02:00
Mathew McBride
08714738d2 layerscape: add Traverse LS1043-S support
The Traverse LS1043-S board is a router board based on
NXP/Freescale's LS1043 SoC, with 4x1GBase-T, 1 SFP and 1 SFP+,
as well as miniPCIe and M.2 LTE.

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

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

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

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-07-30 10:53:57 +02:00
Mathew McBride
481f870a02 layerscape: add multiple-configuration generator for FIT images
This is required for the Traverse LS1043 family, we generate a FIT image
that works on all boards across the family. This is done by creating
multiple configurations that select the right DTB for the board.

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

This is based on earlier work by Jason Wu for Zynq:
https://lists.openwrt.org/pipermail/openwrt-devel/2016-March/040460.html

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

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-07-30 10:53:57 +02:00
Mathew McBride
2203815f05 layerscape: add support for fixed-link on RGMII interfaces
This is required on the Traverse LS1043 boards to support SFP
and xDSL plug-ins.

This will not be needed on kernel 4.14.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-07-30 10:53:57 +02:00
Mathew McBride
40120ca670 layerscape: enable QorIQ thermal driver
This provides access to the CPU die temperature sensor and
the thermal throttling integration

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-07-30 10:53:57 +02:00
Mathew McBride
efc1096ef0 layerscape: remove DEVICE_TYPE=developerboard
The Traverse LS1043 series are router boards and need the default router package
selection

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-07-30 10:53:57 +02:00
Luiz Angelo Daros de Luca
f1bef0596f openvpn-easy-rsa: update to 3.0.4
Upstream renamed openssl-1.0.cnf to openssl-easyrsa.cnf.
However, pkg kept using openssl-1.0.cnf.

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

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

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-07-30 10:43:38 +02:00
Daniel Gimpelevich
c762817c92 kernel: package x86-optimized crypto-misc modules
Some of the modules in the crypto-misc package have alternate
implementations optimized for different x86 instruction set extensions,
but only one of these was built for this package until now: twofish-i586.ko

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

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2018-07-30 10:43:38 +02:00
Pawel Dembicki
aa5838adb7 kernel: generic: fix problem with w1-gpio-custom
In boards with fdt is impossible to use kmod-w1-gpio-custom.
w1-gpio-custom create platform structure for w1-gpio module,
but if board use fdt, data is ignored in w1-gpio probe.

This workaround fix the problem.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-07-30 10:43:37 +02:00
Thibaut VARÈNE
3fd4db76b0 ramips: fix RBM11G name
The device name is corrected to match the hardware-stored (in hard config
flash space) device name.

Tested-by: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-30 10:43:37 +02:00
Thibaut VARÈNE
a9494bb425 ramips: fix RBM33G name
The device name is corrected to match the hardware-stored (in hard config
flash space) device name.

Tested-by: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-30 10:43:37 +02:00
Leon M. George
025688794d libevent: update to 2.1.8
Signed-off-by: Leon M. George <leon@georgemail.eu>
2018-07-30 10:43:37 +02:00
LoveSy
974a2b1aa9 ramips: mmc: Add SD card support to HC5661A
Tested on HC5661A and it now fixes the issue that when enabling sd card
in HC5661A, the wan and 3 lan ports will down.

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

Signed-off-by: LoveSy <shana@zju.edu.cn>
2018-07-30 10:43:37 +02:00
LoveSy
3a8efaef00 ramips: mmc: Fix init for MT7628AN
There is another thing about crc to do when initialize SD card on
MT7628.
This commit is to fix this init issue.

Signed-off-by: LoveSy <shana@zju.edu.cn>
2018-07-30 10:43:37 +02:00
Rosy Song
b4d4e4ceb5 include: add netdev family support for nftables
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-07-30 10:43:37 +02:00
Andy Walsh
1639ebcb06 ncurses: install lib on host build
Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
2018-07-30 10:43:37 +02:00
Martin Strobel
7d7323bccd iptables: add ip[6|]tables-compat packages + libxtables-compat depends on IPTABLES_NFTABLES
allows iptables-compat to use nft packet filtering
allows to translate iptables-style to nft-style

Signed-off-by: Martin Strobel <arctus@crza.de>
2018-07-30 10:43:36 +02:00
Paul Schulz
7bbd1855cd config: Change conf.c remove compiler warnings
Compiler is producing the warning:
   warning: format not a string literal and no format arguments
   [-Wformat-security]

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

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

Signed-off-by: Paul Schulz <paul@mawsonlakes.org>
2018-07-30 10:43:36 +02:00
Dmitry Tunin
c128371124 igmpproxy: drop SSDP packets
It is insecure to let this type of packets inside
They can e.g. open ports on some other routers with UPnP, etc

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2018-07-30 10:43:36 +02:00
张鹏
53a4502013 ar71xx:add support for E750G v8
Qxwlan E750G v8 is based on Qualcomm QCA9344.

Specification:

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

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

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

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

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

Signed-off-by: 张鹏 <sd20@qxwlan.com>
2018-07-30 10:43:36 +02:00
张鹏
ac03d51a3f ar71xx:add support for E750A v4
Qxwlan E750A v4 is based on Qualcomm QCA9344.

Specification:

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

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

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

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

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

Signed-off-by: 张鹏 <sd20@qxwlan.com>
2018-07-30 10:43:36 +02:00
张鹏
b74f63f81d ar71xx:add support for E558 v2
Qxwlan E558 v2 is based on Qualcomm QCA9558 + AR8327.

Specification:

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

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

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

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

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

Signed-off-by: 张鹏 <sd20@qxwlan.com>
2018-07-30 10:43:36 +02:00
Daniel Engberg
0aaa650755 include/verbose.mk: Add sc to failure message
Add sc to build error message

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-30 10:43:36 +02:00
Daniel F. Dickinson
7a3e133751 ar71xx: ag71xx: Prevent kernel oops for board def
The driver is written in such a way that with a board defintion that
connects a fixed phy, mdio, and switch in a certain way, a kernel oops could
result because of lack of previously probed mdio bus.

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

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:36 +02:00
Daniel F. Dickinson
0b9f4e8808 ar71xx: ag71xx: Add connect message: fixed phy
It's a little noisier but makes it obvious when the ar7240 switch was
connected to the MDIO bus, and to which phy device (or the failure
to do so).

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:35 +02:00
Daniel F. Dickinson
2655fbe8ef ar71xx: ag71xx_phy: Fix compilation for debug messages
NB: Error only appears with ag71xx debug messages and dynamic printk
enabled.  This is probably why no one has caught it before.

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

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:35 +02:00
Massimo Tum
0a492ee39e ath10k: update QCA4019 firmware
With AVM Fritz!Box 4040 and OpenWrt 18.06 RC1 there are many kernel warnings
kern.warn kernel: [87771.917049] ath10k_ahb a000000.wifi: Invalid VHT mcs 15 peer stats
and there are disconnections when the connected clients are many, at the moment I tried with 16 clients on 2.4 GHz and 8 on 5 GHZ.

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

Signed-off-by: Massimo Tum <masnia@tiscali.it>
2018-07-30 10:43:35 +02:00
Chuanhong Guo
7a07b4cff0 ath79: Add switch reset definition in dts
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:35 +02:00
Chuanhong Guo
f593020a28 ath79: ag71xx: assert a switch reset if defined in dts.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:35 +02:00
Chuanhong Guo
a5fa6b3825 ath79: ar724x: Fix reset definition for gmac0/gmac1
reset bit 8 is for builtin switch and bit 12 is marked 'reserved' on datasheet.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:35 +02:00
Chuanhong Guo
4e5ba50760 ath79: ar7240: Update dts for current ag71xx driver
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:35 +02:00
Chuanhong Guo
f43e8f9004 ath79: ag71xx: Explicitly register mdio bus after ag71xx_hw_init() for ar7240
mdio bus isn't a standalone device on ar7240. (and maybe older SoCs?)
Use simple-mfd for ar7241 and later SoCs to get mdio1 ready before gmac0
For ar7240 and older chips, manually create platform device after
ag71xx_hw_init() in ag71xx_probe()to get mdio0 ready between
ag71xx_hw_init() and ag71xx_phy_connect().

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:35 +02:00
Chuanhong Guo
85189e4c00 ath79: ag71xx: Rework mdio clock settings
Allow specifying desired mdio clock frequency in dts.
Use default frequency around 5MHz for builtin switch and 2MHz for other mdio bus.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
bb7fac4369 ath79: ar7242: Update dts for current ag71xx driver
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
113b4cf90f ath79: ar7241: Update dts for current ag71xx driver
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
b6c8e5deae ath79: Fix support for TP-LINK Archer C7 v2
Remove mdio1 and phy1 handle. AR8327N is controlled through mdio0.
Add gmac-config for Archer C7.
Remove ucidef_set_interfaces_lan_wan. They can be determined by config_generate automatically.

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
18db385eb7 ath79: qca955x: Update dts for current ag71xx driver
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
b7a10772d1 ath79: qca956x: Update dts for current ag71xx driver
enable mdio1 by default because mdio1 node is a subnode of eth1
and eth1 node is a "simple-mfd", which makes mdio1 disabled when
eth1 isn't enabled.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
fc1f55ebf4 ath79: qca953x: Add chosen node and specify console in bootargs
Most qca devices use 115200n8 as it's default uart baudrate.
Add 'chosen' node for qca953x like other SoCs in ath79 target.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
e8245c5b3f ath79: qca953x: Update dts for current ag71xx driver
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Lucian Cristian
e6417390e0 ath79: update qca9533 to new irq driver
Commit c7efc93 renamed controller name
to qca,ar9340-intc and added some functions but qca9533.dtsi was overlooked.
Correct the dtsi and adust it to the new format

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

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>

Remove switch reset definition
Fix gmac compatible string (We only need SW_PHY_SWAP and SW_PHY_ADDR_SWAP on qca953x so use ar9330-gmac instead of ar9340-gmac.)

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:34 +02:00
Chuanhong Guo
c7c807cb8c ath79: ar933x: Update dts for current ag71xx driver
gmac0 is always connected to switch phy4 and mdio1 is always needed.
So add phy handle for eth0 and enable mdio1 by default.
Move fixed-link for gmac1 from device dts to ar9331.dtsi because gmac1 is always connected to builtin switch.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Chuanhong Guo
f6c99241ba ath79: ar934x: Update dts for current ag71xx driver
Enable mdio1 by default because mdio1 is needed when eth1 is enabled.

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

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Chuanhong Guo
7ae9e63719 ath79: ag71xx: Make builtin switch driver a separated module
This patch did several things:
1. Probe the builtin switch as a separated mdio device.
2. Register a separated mdio bus for builtin switch.
3. Use generic mdio read/write function instead of calling ag71xx_mdio_mii_read/write directly.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Chuanhong Guo
83d2dbc599 ath79: ag71xx: Split mdio driver into an independent platform device.
We need to have mdio1 belonging to gmac1 initialized before gmac0.
Split it into a separated mdio device to get both mdios ready before probing gmac.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Chuanhong Guo
24cbe27bb7 ath79: ag71xx: Remove ar7240_set_addr and ag71xx_ar7240_start
The builtin switch has it's initial valid mac address(00:00:01:00:00:00).
Since the builtin switch is an independent device, setting mac address of gmac1 to builtin switch isn't a good idea and this makes it impossilbe to split builtin switch apart as an independent platform device.
Remove these functions and apply default VLAN during initialization as a preparation for further driver splitting.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Chuanhong Guo
2d081addb5 ath79: ag71xx: Split gmac config into separated file and add support for ar934x/qca955x.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Chuanhong Guo
b346c37588 ath79: Fix mac reset and gmac compatible in ar934x.dtsi
Also add phy-mode and fixed-link as gmac1 is always connected
to the builtin switch.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-30 10:43:33 +02:00
Daniel F. Dickinson
098267db4c ar71xx: cap324: Drop support for defunct cloud
Only build images for straight OpenWrt (using all flash; wipes out
partitions that contain information only important for accessing a
now defunct cloud service with the stock firmware) since the stock
firmware is now irrelevant.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:33 +02:00
Daniel F. Dickinson
37ab944ac5 ar71xx: cap324: Use correct company name
It's 'PowerCloud Systems' not just 'PowerCloud'

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
739eaae9ca ar71xx: cap324: Use correct MAC addresses
The wrong MAC addresses (from the point of view of the physical device
label) were being assigned to the wrong interfaces.  Fix that.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
d2f7dba309 ar71xx: cap324: Use standard eth as static lan
While the stock firmware and previous ar71xx versions of openwrt used the
single ethernet port as a DHCP client, for unmodified openwrt usage it
makes more sense to do the standard openwrt thing and make the ethernet
port a static lan with known address so that users can find the device on
the network more easily.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
fedc826c32 ar71xx: cr5000: use correct company name
It's 'PowerCloud Systems' not just 'PowerCloud'

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
50caf9d452 ar71xx: cr5000: Drop support for defunct cloud
The Skydog cloud service no longer exists hence supporting going back
to stock firmware with cloud support is no longer applicable.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
c666851ce7 ar71xx: cr5000: Tweak switch LED settings
This is basically cosmetic and sets the Port 1-4 LEDs to blink on
10/100/1000M.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
ffc71cd2d0 ar71xx: cr5000: Fix the reset button as KEY_RESTART
The reset button was incorrectly returning KEY_WPS_BUTTON as the key
code.  We want KEY_RESTART., so make that fix.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
a208e07790 ar71xx: cr5000: board data: Use better macro name
The PCIe wireless MAC address address is better labelled as WMAC
than MAC to emphasize that it is for a wireless interface.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:32 +02:00
Daniel F. Dickinson
915966d861 ath79: Port PowerCloud Systems CAP324 support
The CAP324 was an AP for a NaaS offering that is now defunct.  While
previously supported in the ar71xx arch, there were some errata (to
be fixed shortly).

Notable differences from ar71xx support:

1) The method of getting the ath9k firmware for the PCIe 2ghz wifi has
changed (due to changes in how the arch handles this), since this device
doesn't use the EEPROM except to get the MAC address of the wifi.

2) /etc/config/wireless will need to be regenerated as the path(s) to
the wireless device(s) have changed.

3) ath79 OpenWrt firmware no longer supports build an image that allows
reverting to stock firmware (as the cloud service no longer exists, the
stock firmware is useless), instead using all of the flash for image and
overlay (less u-boot/env and art).

4) Initial network config treats the ethernet port as a Lan port with
the standard default address (192.168.1.1 unless changed in .config
--e.g. via menuconfig) instead of using DHCP (this was the default for
the stock firmware, however for openwrt use this is rather confusion and
counter-productive as the user has a harder time finding the device on
the network.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:31 +02:00
Daniel F. Dickinson
4b93cbd172 ath79: Port PowerCloud Systems CR5000 support
Add ath79 arch support for PowerCloud Systems CR5000.  Previously
supported under ar71xx (however there are some errors in that support;
to be fixed shortly).

Info:

* This board is based on the Atheros DB120 reference design, but doesn't
  use the on-board switch.  Instead it attachs GMAC0 to an AR8327 switch.
* It only uses GMAC0 and the WAN is simply a VLAN in the stock firmware.
* It has 64MB RAM and 8MB flash.
* In the dts version we get rid of using 'open-drain' for the AR8327
  LED controls.
* As with the platform data version we disable JTAG as this conflicts
  with one of the pair of GPIO's required for the power/status LED
  (GPIO2 and GPIO4 are used for this LED).
* The pcie card wifi has an EEPROM but gets it's MAC address from
  the ART partition.
* The SoC wifi (2.4 GHz) is all from the ART.
* The USB is support comes from the SoC.

NB. This is actually an AR9342 rather than AR9344 but we use the 9344
definitions because there are no relevant differences for this board.

NB: Building only images that don't support reverting to the old
cloud-based firmware as the Skydog cloud service for the CR5000 no
longer exists.

Signed-off-by: Daniel F. Dickinson <cshored@thecshore.com>
2018-07-30 10:43:31 +02:00
Nick Hainke
296ae7ab89 iwinfo: update to version 2018-07-24
Update to new iwinfo version.
Adds support for channel survey.
Adds ubus support.
Etc.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2018-07-30 10:43:31 +02:00
Edi Turn
e9dee19487 grub2: fix packed-not-aligned error on GCC 8
Fix the compile error "packed-not-aligned" when using GCC 8.

Signed-off-by: Edi Turn <yyxstter@gmail.com>
2018-07-30 10:42:47 +02:00
Daniel Engberg
5647cc7bd4 treewide: Bump PKG_RELEASE due to mbedtls update
Bump PKG_RELEASE on packages that depends on (lib)mbedtls to avoid library
mismatch.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-30 10:35:12 +02:00
Daniel Engberg
5b614e3347 mbedtls: Update to 2.12.0
Update mbedtls to 2.12.0
Multiple security fixes
Add support for Chacha20 and Poly1305 cryptographic primitives and their
associated ciphersuites

Difference in size on mips_24kc (ipk):
164kbytes (167882 bytes)
170kbytes (173563 bytes)

https://tls.mbed.org/tech-updates/releases/mbedtls-2.12.0-2.7.5-and-2.1.14-released

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-30 10:35:12 +02:00
Daniel Engberg
a93b6edfec toolchain/binutils: Add binutils 2.31.1
Add binutils 2.31.1 to repo

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-30 10:35:11 +02:00
Thibaut VARÈNE
091e915d99 ar71xx: improve MikroTik wAP R support
81d446b045 introduced incomplete
support for this device.

This patch attempts to correct the situation based on OEM source
code.

LED1-3 are GSM mode on OFW (2G/3G/4G) hence unassigned here.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Tested-by: David Ehrmann <ehrmann@gmail.com>
2018-07-30 10:35:11 +02:00
Thibaut VARÈNE
5c2419b6f8 ar71xx: add missing diag LED support for RB wAP 2nD
3b15eb06c3 did not include diag.sh
edit

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-30 10:35:11 +02:00
Thibaut VARÈNE
e76c048d34 ar71xx: rbspi: mark rb911L user led as active low
The active_low flag was missing for the user LED. This LED is open drain
(confirmed in OEM source) and open drain only makes sense for active low
GPIOs.

The two wireless LEDs mentioned in the comments are also #defined for
future reference.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Tested-by: Ryan Mounce <ryan@mounce.com.au>
2018-07-30 10:35:11 +02:00
Thibaut VARÈNE
e99f760235 ar71xx: rbspi: fix RB wAP AC gpio conflict and LED
e15c63a375 introduced code that was trying
to register GPIO 1 as both an LED and a button. The OEM source makes it
clear that LED1 is not wired to the SoC GPIOs. GPIO 1 is the reset button.

Furthermore the (green) power led default state should also be defined,
(matching OEM source), and it should be used by diag.sh since it's
currently the only software-controllable LED.

This patch fixes these issues and renames the corresponding #defines for
clarity

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-30 10:35:11 +02:00
Thibaut VARÈNE
03562bfcdb ar71xx: rbspi: clarify USB power gpios action
The gpios that control power toggle for USB on the RouterBOARD devices
are active low _off_ switches.

When they are active (low), power is off. When they are inactive
(high), power is on.

Rename GPIO defines, set gpios to GPIOF_ACTIVE_LOW for consistency and
reflect their true action in the display name. This brings openwrt code
in line with OEM.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Tested-by: Ryan Mounce <ryan@mounce.com.au>
2018-07-30 10:35:11 +02:00
Rosen Penev
0394ca26c3 admswconfig: Remove dead URL + HTTPS
Found using uscan.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-07-30 10:35:11 +02:00
Rafał Miłecki
5e8b4be531 kernel: add DT binding support to the mtd redboot parser
It allows using that parser with the "compatible" set in DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-30 08:39:52 +02:00
Christian Lamparter
b70d3557e0 apm821xx: clean up gpio-hogs
convert the usb and both sata port power related gpio-hogs to
what they really are: fixed-regulators.

The ethernet phy-reset gpio-hog is replaced by a proper
upstream (4.15+) reset-gpios property in the mdio-node.
So this will work eventually.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 08:12:32 +02:00
Christian Lamparter
cff6548948 apm821xx: split MBL's rootfs.img.gz into a sysupgrade and factory image
@vahid-dan reported a issue with extracting the rpi images with
Gnome's Archive Manager:
"Ubuntu Archive Manager cannot extract the file and it just
throws a general error message: "An error occurred while
extracting files".
<https://forum.lede-project.org/t/corrupted-pre-built-v18-06-0-rc2-image-for-rpi>

The MBL's rootfs.img.gz image is generated in much the same way.
Hence this patch preemptively splits the rootfs.img.gz image into
a sysupgrade and a factory image.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 08:12:13 +02:00
Christian Lamparter
aed4799d6d apm821xx: build squashfs-rootfs images for the MBL
This patch adds support for squashfs as the root filesystem.

advantages:
 - migrate from a existing -ext4 installation and back
   with the sysupgrade utility
 - existing partition layout will not be lost during switch
 - slightly smaller image size as compared to the -ext4 image.

disadvantages:
 - needs f2fs + tools. This is because fstools rootdisk.c decides based
   on the partition size (currently root partitions > 100 MiB) f2fs is
   used as the rootfs_data filesystem.
 - rootfs_data is placed into the rootfs partition after the squashfs.
   This makes it difficult for tools that expect a /dev/sda${X} device.
   It also makes it difficult for data recovery tools as they might not
   expect to find a embedded partition or will be slightly confused.
   ... or will not support f2fs.

For people with existing build configurations: make sure to include mkf2fs
and f2fsck packages into the image. Otherwise the new -squashfs image will
only boot from the ram-overlay.

Note:
All overlay data (configurations/all installed packages/...) will be
placed in inside the rootfs partition (i.e. /dev/sda2) just after the
squashfs image.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 08:11:56 +02:00
Christian Lamparter
7516a96011 brcm2708: split sdcard.img.gz into a sysupgrade and factory image
@vahid-dan reported a issue with extracting the rpi images with
Gnome's Archive Manager:
"Ubuntu Archive Manager cannot extract the file and it just
throws a general error message: "An error occurred while
extracting files".
<https://forum.lede-project.org/t/corrupted-pre-built-v18-06-0-rc2-image-for-rpi>

@blogic told me to split the single sdcard.img.gz for the RPi
into a sysupgrade and a factory image for all brcm2708 targets.
The factory images will have no metadata attached, this way
these utilities that can't deal with the attached metadata will
not fail for no reason.

Cc: John Crispin <john@phrozen.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 08:11:36 +02:00
Christian Lamparter
df495305f3 ipq-wifi: add a note / reminder about upstreaming new board files
|Please send a mail with your device-specific board files upstream.
|You can find instructions and examples on the linux-wireless wiki:
|<https://wireless.wiki.kernel.org/en/users/drivers/ath10k/boardfiles>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-30 08:11:21 +02:00
Jonas Gorski
7880a6f7fe brcm63xx: drop linux,part-probe usage where possible
It was present as 4.4 compatibility, but since we now use 4.9 or later
with the new upstream solution, we don't need it anymore.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-07-29 15:38:33 +02:00
Jonas Gorski
abb28bec25 brcm63xx: drop own implementation of DT partitions in favour of upstream
The binding works the same, so we can just drop the revert and the patch.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-07-29 15:38:33 +02:00
Rosen Penev
fc89831ae8 thc-ipv6: Update URLs
Development has moved to GitHub. Found using UScan.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-07-29 12:11:31 +02:00
Rosen Penev
31f87ebcb2 libjson-c: Update package URL
Found through UScan.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-07-29 12:05:53 +02:00
Rafał Miłecki
0417b08b06 bcm53xx: revert SPI controller commit breaking flash reads
That upstream commit caused instability in flash reads. It was reported
but there isn't any proper fix as for now.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-29 11:02:57 +02:00
Daniel Engberg
b078229412 tools/cmake: Update to 3.12.0
Update cmake to 3.12.0
Remove 140-curl-fix-libressl.patch as fix is in upstream

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-29 10:08:20 +02:00
Rafał Miłecki
a07730472c bcm53xx: backport BCM5301X/BCM53573 dts commits from 4.19+
This includes Linksys EA9500 support, BCM53573 timer fix and
upstream-ready partitions patch that replaces two downstream hacks.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-28 21:48:10 +02:00
Rafał Miłecki
8a175ea219 bcm53xx: switch USB 3.0 PHY DT description to use MDIO bus
USB 3.0 PHY is attached to the MDIO bus and should be supported
(accessed) as a MDIO device. This wasn't known initially which resulted
in writing driver that was working with MDIO bus (using some magic
values) without knowing it.

This commit updates DT to properly describe MDIO & USB 3.0 PHY and
enables required kernel drivers.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-28 21:46:08 +02:00
Rafał Miłecki
5c8b8a3fd4 bcm53xx: backport DT fix for I2C controller interrupt
Specified interrupt type was incorrect.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-28 21:36:33 +02:00
Dmitry Tunin
7a6b2badfa igmpproxy: add a silent logging option
[0-3](none, minimal[default], more, maximum)

It is not 100% backward compatible, because now 0 disables logging

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2018-07-28 15:20:39 +01:00
Kevin Darbyshire-Bryant
1e93ef8498 dnsmasq: bump to dnsmasq v2.80test3
Refresh patches

Upstream commits since last bump:

3b6eb19 Log DNSSEC trust anchors at startup.
f3e5787 Trivial comment change.
c851c69 Log failure to confirm an address in DHCPv6.
a3bd7e7 Fix missing fatal errors when parsing some command-line/config options.
ab5ceaf Document the --help option in the french manual
1f2f69d Fix recurrent minor spelling mistake in french manual
f361b39 Fix some mistakes in french translation of the manual
eb1fe15 When replacing cache entries, preserve CNAMES which target them.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-28 11:16:41 +01:00
Rafał Miłecki
2a598bbaa3 kernel: backport mtd support for subpartitions in DT
This is a new & warm feature that allows nesting partiitons in DT and
mixing their types (e.g. static vs. dynamic). It's very useful for
boards that have most partitions static but some of them require extra
parsing (e.g. a "firmware" partition).

It's required to successfully backport support for new devices using
that new syntax in their DT files.

Since brcm63xx has a custom alternative patch the upstream one is being
reverted for it. The plan is to make brcm63xx use the upstream
implementation.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-27 22:16:24 +02:00
Rafał Miłecki
4c1aa64b4d brcm47xx: revert upstream commit breaking BCM4718A1
This fixes kernel hang when booting on BCM4718A1 (& probably BCM4717A1).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-27 15:58:51 +02:00
Rafał Miłecki
6bcafea2c0 kernel: backport mtd patches with Broadcom of_match_table-s
Two tiny & trivial patches with no regression risk. One simplifies
bcm53xx downstream patch.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-27 15:55:01 +02:00
Daniel Golle
af4b23dde2 util-linux: package blockdev executable
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-07-27 12:51:03 +02:00
Masashi Honma
d05967baec wwan: Fix teardown for sierra_net driver
The sierra_net driver is using proto_directip_setup for setup. So use
proto_directip_teardown for teardown.

Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
2018-07-27 11:17:20 +02:00
Syrone Wong
7dfd72dfff ead: use new protocol setting API since libpcap 1.9.0
Dropped the protocol API specific symbol: HAS_PROTO_EXTENSION and
switch to the official API

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-07-27 11:17:20 +02:00
Syrone Wong
4d57c696b1 libpcap: update to 1.9.0
001-Fix-compiler_state_t.ai-usage-when-INET6-is-not-defi.patch dropped due to upstream
002-Add-missing-compiler_state_t-parameter.patch dropped due to upstream

202-protocol_api.patch dropped due to implemented upstream by another way
upstream commit: 55c690f6f8
and renamed via: 697b1f7e9b

ead is the only user who use the protocol api, we have to use the new api since libpcap 1.9.0

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-07-27 11:17:20 +02:00
Rafał Miłecki
c0608c6a27 mac80211: brcmfmac: backport 4.19 patches preparing monitor mode support
Monitor mode isn't supported yet with brcmfmac, it's just an early work.
This also prepares brcmfmac to work stable with new firmwares which use
updated struct for passing STA info.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-27 08:04:14 +02:00
Rafał Miłecki
b26214adb5 mac80211: backport brcmfmac fixes & debugging helpers from 4.18
The most important is probably regression fix in handling platform
NVRAM. That bug stopped hardware from being properly calibrated breaking
e.g. 5 GHz for Netgear R8000.

Other than that it triggers memory dumps when experiencing firmware
problems which is important for debugging purposes.

Fixes: 7e8eb7f309 ("mac80211: backport brcmfmac firmware & clm_blob loading rework")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-26 23:21:46 +02:00
Jo-Philipp Wich
7316515891 ubus: update to latest git HEAD
40e0931 libubus: pass an empty UBUS_ATTR_DATA block if msg is NULL on invoke

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-26 16:48:07 +02:00
Jo-Philipp Wich
88c88823d5 odhcpd: update to latest git HEAD
44cce31 ubus: avoid dumping interface state with NULL message

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-26 14:53:05 +02:00
Jo-Philipp Wich
3ee2c76ae0 firewall: update to latest git HEAD
aa8846b ubus: avoid dumping interface state with NULL message

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-26 08:44:53 +02:00
John Crispin
a5c3bbaf56 ubus: update to latest git HEAD
884be45 libubus: check for non-NULL data before running callbacks

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:15:45 +02:00
John Crispin
5dc32620c4 libubox: update to latest git HEAD
c83a84a fix segfault when passed blobmsg attr is NULL

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:13:19 +02:00
John Crispin
ffc40d2eae ipq40xx: move essedma patches into same range
Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:13:19 +02:00
John Crispin
e725d3080c ipq40xx: sync kernel config
Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:13:18 +02:00
John Crispin
95672e0433 ipq40xx: use patches that were sent upstream
Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:13:18 +02:00
John Crispin
e8c58e7ddd ipq40xx: move dts file patches to end of series
Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:00:21 +02:00
John Crispin
c913288844 ipq40xx: cleanup USB support
remove the 2 USB PHY drivers and add a generic PHY driver instead

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:00:21 +02:00
John Crispin
3d456a50f4 ipq40xx: drop no-op cpu_idle symbol patch
Signed-off-by: John Crispin <john@phrozen.org>
2018-07-25 12:00:21 +02:00
David Bauer
5409dcffbd ath79: fix OCEDO Raccoon
The OCEDO Raccoon only has one ethernet port, but currently uci sections
for WAN and LAN are created.

Additionally, newer versions of the devices U-Boot (units with SteelWRT)
set the kernel-cmdline and therefore overwrite the partition-layout.
We fix this by overwriting the cmdline supplied by the bootloader.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-07-25 08:59:33 +02:00
Mathias Kresin
4cbf5601f9 ramips: remove stale get_status_led call
The get_status_led() function was removed due to the convertion to dts
alias based status led.

Since we don't need the boardname any longer, the functions.sh include
isn't required any more.

Fixes: c9c4b2116c ("ramips: Use dts alias based status led")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-25 08:57:17 +02:00
Mathias Kresin
3716b5e4e6 kernel: don't auto attach ubi on read error
With a10a204aab ("kernel: make ubi auto-attach check for a tar file
magic") the check for the magic was added without considering a failing
mtd_read(). If the read fails, no check is done and the mount code is
called straight away.

Failing with an error message for such cases seems to me the cleaner way,
as it would allow to spot hidden/workaround issues.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-24 22:24:21 +02:00
Mathias Kresin
0ac91d82ed kernel: handle bad blocks in ubi auto attach code
The first block(s) of the ubi mtd device might be bad. We need to take
care on our own to skip the bad block(s) and read the next one(s).

Don't treat recoverable read errors as fatal and check for the UBI magic
if the data of a block could be recovered using ECC or similar.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-24 22:24:21 +02:00
Mathias Kresin
fdf6760cda kernel: improve ubi auto attach code readability
Move the put_mtd_device() called on multiple error conditions to a goto
label to use it later for more error conditions.

The early return on failed open of the mtd device and mismatching mtd
type allows to get rid of one level of indentation. By jumping to the
cleanup code, a refcount bug is fixed for the wrong flash type condition.

While at it, make clear that we only check for the UBI magic if the read
from flash was successful.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-24 22:24:21 +02:00
Ted Hess
354de22bad elfutils: Copy missing libraries to staging and packages
Newer shared libraries seem to have the package version as part of their name.
E.g.: libelf-0.173.so

Signed-off-by: Ted Hess <thess@kitschensync.net>
2018-07-24 14:32:27 -04:00
Daniel Engberg
f486f81c64 utils/curl: Disable libpsl
Disabled libpsl to fix build issue reported by buildbots

Package libcurl is missing dependencies for the following libraries:
libpsl.so.5


Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-24 15:35:51 +02:00
Jo-Philipp Wich
991c7a4f69 build: do not override CCACHE_DIR when ccache is disabled
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-24 15:23:05 +02:00
Jo-Philipp Wich
a6f4c7bce8 build: prereq-build.mk: fix gcc/g++ SetupHostCommand invocation
A missing comma caused the first command option to be considered part of
the error message.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-24 13:37:24 +02:00
John Crispin
1e48e56c50 ipq40xx: drop bus driver, its a no-op and only does lots of alloc/free
Signed-off-by: John Crispin <john@phrozen.org>
2018-07-24 10:50:13 +02:00
Aleksandr V. Piskunov
20c4819c7b wireguard-tools: add wireguard_watchdog script
This watchdog script tries to re-resolve hostnames for inactive WireGuard peers.
Use it for peers with a frequently changing dynamic IP.
persistent_keepalive must be set, recommended value is 25 seconds.
Run this script from cron every minute:
echo '* * * * * /usr/bin/wireguard_watchdog' >> /etc/crontabs/root

Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com>
[bump the package release]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-22 21:52:20 +01:00
Ansuel Smith
2dcd955aea mac80211: backport and update patches for ath10k
This commit refreshes and updates the VHT160 ath10k support fix patches
and adds a number of backports from ath-next:

 * 8ed05ed06fca ath10k: handle tdls peer events
 * 229329ff345f ath10k: wmi: modify svc bitmap parsing for wcn3990
 * 14d65775687c ath10k: advertise TDLS wider bandwidth support for 5GHz
 * bc64d05220f3 ath10k: debugfs support to get final TPC stats for 10.4 variants
 * 8b2d93dd2261 ath10k: Fix kernel panic while using worker (ath10k_sta_rc_update_wk)
 * 4b190675ad06 ath10k: fix kernel panic while reading tpc_stats
 * be8cce96f14d ath10k: add support to configure channel dwell time
 * f40105e67478 ath: add support to get the detected radar specifications
 * 6f6eb1bcbeff ath10k: DFS Host Confirmation
 * 260e629bbf44 ath10k: fix memory leak of tpc_stats
 * 38441fb6fcbb ath10k: support use of channel 173
 * 2e9bcd0d7324 ath10k: fix spectral scan for QCA9984 and QCA9888 chipsets

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[move backported patches in the 3xx number space, bring in upstream order,
 replace incomplete patch files with git format-patch ones, rewrite commit
 message, fix subject]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-22 22:25:33 +02:00
Jason A. Donenfeld
57b808ec88 wireguard: bump to 0.0.20180718
80b41cd version: bump snapshot
fe5f0f6 recieve: disable NAPI busy polling
e863f40 device: destroy workqueue before freeing queue
81a2e7e wg-quick: allow link local default gateway
95951af receive: use gro call instead of plain call
d9501f1 receive: account for zero or negative budget
e80799b tools: only error on wg show if all interfaces failk

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
[Added commit log to commit description]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-22 21:01:34 +01:00
Felix Fietkau
f0ac9afe69 hostapd: remove unused struct hostapd_ubus_iface
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-22 17:17:20 +02:00
Syrone Wong
da9d760ea1 rules.mk: replace iremap when using GCC 8
The original -iremap is replaced by -fmacro-prefix-map in GCC 8

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-07-22 17:16:52 +02:00
Syrone Wong
139f99c058 toolchain/gcc: add GCC 8.1.0
Changes compared to GCC 7.x

001-revert_register_mode_search.patch dropped

The underlying issue is described at the end of
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58139

It is fixed by the upstream commit:
3fa2798aa8

020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch dropped due to already upstream

100-PR-rtl-optimization-83496.patch dropped due to already upstream

910-mbsd_multi.patch
modified to fix ambiguous overloaded inform() call error

gcc/input.h
header: define UNKNOWN_LOCATION ((source_location) 0)

-        inform (0, "someone does not honour COPTS correctly, passed %d times",
-         honour_copts);
+        inform (UNKNOWN_LOCATION, "someone does not honour COPTS correctly, passed %d times",
+         honour_copts);

940-no-clobber-stamp-bits.patch dropped due to fixed upstream by another way
upstream commit: 87b2d547f8

950-cpp_file_path_translation.patch dropped, Both -fmacro-prefix-map and -ffile-prefix-map are added
to gcc 8.1.0, if I understand it correctly, we should use -fmacro-prefix-map
usage: -fmacro-prefix-map=@var{old}=@var{new}
upstream commit: 859b51f836

-iremap exists as a flag for a long time, for backward compatibility, I think we should keep the
variable name unchanged but change its value in rules.mk for gcc 8.x and higher.

Compile and run tested on x86_64

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2018-07-22 17:16:47 +02:00
Felix Fietkau
7ad20678e5 kernel: backport a change to 4.9 which disables overly aggressive warnings on gcc 8
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-22 17:16:35 +02:00
Felix Fietkau
c527d0ec18 kernel: backport fixes for GCC 8 errors in syscall definitions
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-22 17:16:30 +02:00
Jo-Philipp Wich
69ea512c62 build: do not alter global default package selection from profiles
This partly reverts ca32373c95 which lets
profiles that suppress packages to alter the package selection for all
devices of the target when building with CONFIG_TARGET_PER_DEVICE_ROOTFS.

In particular, this caused the brcm47xx Edimax PS-1208MFG profile to
disable mtd, dropbear, firewall and other essential packages for all
brcm47xx/generic builds.

To solve this problem, prevent profiles from mangling the global
DEFAULT_PACKAGES selection and restrict the supression of negated
packages to the local PACKAGE variable list only.

Fixes ca32373c95 ("target.mk: let profile remove from DEFAULT_PACKAGES")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-21 20:52:48 +02:00
Kevin Darbyshire-Bryant
03fce62c09 iproute2: tc: backport canonical cake support
iproute2's tc was updated to support the recently upstreamed cake qdisc.
Backport this canonical support from upstream into iproute2 v4.17

There is no kernel kmod/userspace tc ABI change in this release from the
previous package bump, so everyone can breath a sigh of relief.

This is largely a code style change, the exception to prove the rule:
option 'autorate_ingress' has been changed to 'autorate-ingress' to fit
in with upstream option naming expectations.

No openwrt package (e.g. sqm-scripts) has knowledge of
'autorate_ingress' thus only users who made their own scripts or used
it within the 'dangerous configuration' options of sqm-scripts will be
affected.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-21 08:47:40 +01:00
Felix Fietkau
7c306ae640 build: fix compile error when a package includes itself in PROVIDES
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-20 10:40:58 +02:00
Rosen Penev
e22cc57593 ipq806x: dts: Remove device_type = "ethernet-phy"
device_type is deprecated. Upstream doesn't seem to like it either.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-07-19 18:58:24 +02:00
Christian Lamparter
9b47aa93c7 apm821xx: unify My Book Live Single + Duo images
By takimata:
"Come to think of it, an MBL Single board boots up just fine on an
MBL Duo image, and the MBL Single board identifies completely
identical to the MBL Duo
(Board: Apollo-3G - APM82181 Board, 2*SATA, 1*USB).
I wonder if there is any downside to just using the MBL Duo firmware
on a MBL Single. I wonder if the two firmwares could even be unified."

<https://forum.lede-project.org/t/wd-mybook-live-duo-two-disks/16195/9>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-19 18:58:24 +02:00
Thibaut VARÈNE
c4f09fc9f8 ramips: define common MikroTik RouterBOARD image recipe
All these devices share the exact same image format.

The usb3 kmod is added for the rbm11g, as the rbm11g has a mini-pcie
slot like its bigger sibling. The usb kmod is necessary for
usb-over-pcie support, which is mandatory for a lot of LTE modules.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-19 18:58:24 +02:00
Johann Neuhauser
02d53e6a21 lantiq: add support for FritzBox 7312
The FritzBox 7312 is also known as 1&1 WLAN-MODEM. The device is almost
the same as FB7330, but only one ETH-Port and no USB.

Hardware
SoC: Lantiq Xway ARX188 PSB 50812 EL
RAM: 64MB DDR1 (Zentel A4S12D40FTP-G5)
Ethernet: Atheros 8030
Wireless: Atheros AR9227 b/g/n 2x2
DSL: Lantiq ADSL2+
DECT: Dialog SC14441
Buttons: WiFi, DECT
LEDs: Power/DSL, Fon, DECT, WLAN, Info

LEDs
Power: GPIO#44 (active low)
Internet: GPIO#47 (active low)
DECT: GPIO#38 (active low)
WLAN: GPIO#37 (active low)
Info: GPIO#35 (active low)

The Fon LED is labeled as internet in avm gpl sources.

Buttons
WLAN: GPIO#1 (active low)
DECT: GPIO#2 (active low)

Phy
GPIO#03: 25 MHz
GPIO#34: Reset (active low)
GPIO#39: Int
GPIO#42: MII MDIO
GPIO#43: MII MDC

PCIe
GPIO#21: reset (active low)

Installation:

To install OpenWrt via Eva bootloader, within the first seconds after
power on a ftp connection need to be established to the FRITZ!Box at
192.168.178.1 and the the following ftp commands need to be run:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put /path/to/openwrt-lantiq-xway-avm_fritz7312-squashfs-sysupgrade.bin mtd1
  ftp> quote REBOOT

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-07-18 19:17:46 +02:00
Johann Neuhauser
f2f7802148 lantiq: etop: pass devicetree node to phy driver
Use of_mdiobus_register() to pass the ethernet phy node to the phy
drivers. This is needed for the at8030 phy driver which needs to know
the GPIO which is connected to the ar8030 reset pin.

This driver expects a child in gsw/etop node named "mdio-bus", which has
the ethernet phys defined:

&gsw {
	phy-mode = "rmii";
	phy-handle = <&phy0>;
	mtd-mac-address = <&ath9k_cal 0xa91>;
	mtd-mac-address-increment = <(-2)>;

	mdio-bus {
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0>;

		phy0: ethernet-phy@0 {
			reg = <0>;
			reset-gpios = <&gpio 34 GPIO_ACTIVE_LOW>;
		};
	};
};

Fallback to mdiobus_register() if no mdio-bus child node exists. This
way we don't need to touch all xway dts files, for which we don't know
the actual address on the mdio bus.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-07-18 19:17:46 +02:00
Luiz Angelo Daros de Luca
4c42887286 base-files: fix wrong sysctl parameter order
Restarting service sysctl echos multiple errors like:

  sysctl: -e: No such file or directory

After the first filename, all remaining arguments are treated
as files.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-07-18 19:17:46 +02:00
Aleksandr V. Piskunov
290c54473e ath79: fix TP-Link Archer C7 v2 wlan1 MAC address
The mac address for the 2.4 wireless need to be decremented by one.

Correct MAC adress increments for this board are:
wlan0 (5GHz)   : -2
wlan1 (2.4GHz) : -1
eth1  (LAN)    :  0
eth0  (WAN)    :  1

Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com>
2018-07-18 19:17:46 +02:00
Mathias Kresin
3838b16943 hostapd: fix conflicts hell
Add each variant to the matching PROVIDERS variables after evaluating
the respective hostapd*, wpad* and wpa* variant.

Each package providing the same feature will automatically conflict with
all prior packages providing the same feature.

This way we can handle the conflicts automatically without introducing
recursive dependencies.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-18 19:17:46 +02:00
Mathias Kresin
8af8ceb1c8 hostapd: cleanup package definition
Move common variables and/or values to the package (variant) default.
Add additional values in variant packages if necessary. Remove further
duplicates by introducing new templates.

Remove the ANY_[HOSTAPD|SUPPLICANT_PROVIDERS]_PROVIDERS. The are the
same as the variables without the any prefix. No need to maintain both
variables.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-18 19:17:46 +02:00
Kevin Darbyshire-Bryant
9d5a246930 igmpproxy: run in foreground for procd
procd needs processes to stay in foreground to remain under its gaze and
control.  Failure to do so means service stop commands fail to actually
stop the process (procd doesn't think it's running 'cos the process has
exited already as part of its forking routing)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-18 18:00:42 +01:00
Hans Dedecker
1e83f775a3 firewall3: update to latest git HEAD
d2bbeb7 firewall3: make reject types selectable by user

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-17 22:15:03 +02:00
Hans Dedecker
2336b942b3 dnsmasq: don't use network functions at boottime (FS#1542)
As dnsmasq is started earlier than netifd usage of network.sh functions
at boottime will fail; therefore don't call at boottime the functions
which construct the dhcp pool/relay info.
As interface triggers are installed the dhcp pool/relay info will be
constructed when the interface gets reported as up by netifd.
At the same time also register interface triggers based on DHCP relay
config.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-17 21:32:20 +02:00
Jo-Philipp Wich
9019323ec1 ppp: fix building pptp plugin
The pptp.so plugin needs to be built with -fPIC as well in order to be
linkable again.

Fixes 888a15ff83 ("ppp: add missing -fPIC to rp-pppoe.so CFLAGS")
Fixes e7397eef69 ("ppp: compile with LTO enabled")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-17 21:21:44 +02:00
Yousong Zhou
ac10975cd7 scripts/dl_github_archive.py: stringify exception
Closes openwrt/openwrt#1163

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-07-17 17:27:01 +00:00
Jo-Philipp Wich
28d3a1b54b openvpn: increase procd termination timeout to 15s
Increase the termination timeout to 15s to let OpenVPN properly tear down
its connections, especially when weak links or complex down scripts are
involved.

Fixes FS#859.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-17 16:03:56 +02:00
Jo-Philipp Wich
8194f9ef4a mediatek: fix parallel build issues in image build code
Drop the parallel-unsafe custom Build/dtb macro and use the .dtb artifacts
produced by the generic image build code.

Also remove unused .dtb references in the mt7623 subtarget.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-17 14:40:04 +02:00
Jo-Philipp Wich
1bad852ff5 base-files: network.sh: gracefully handle missing network.interface ubus ns
When attempting to use any of the functions in network.sh while netifd is
not started yet, the ubus interface dump query will fail with "Not found",
yielding an empty response.

Subsequently, jsonfilter is invoked with an empty string instead of a valid
JSON document, causing it to emit a second "unexpected end of data" error.

This caused the dnsmasq init script to log the following errors during
early boot on some systems:

    procd: /etc/rc.d/S19dnsmasq: Command failed: Not found.
    procd: /etc/rc.d/S19dnsmasq: Failed to parse json data: unexpected end of data.

Fix the issue by allowing the ubus query to fail with "Not found" but still
logging other failures, and by passing an empty JSON object to jsonfilter
if the interface status cache is empty.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-17 08:10:20 +02:00
Kin Chan
18b87b10a9 ar71xx: Move F9K1115v2 under ar71xx tiny target
F9K1115v2 has a kernel partition size of 1408 kB.

Since kernel 4.9.x+ the kernel image for this device compiled had exceeded
the kernel partition size limit and thus failing size check.

The kernel image generated for this device
under ar71xx tiny target is 1329.67 kB < 1408 kB.

Signed-off-by: Kin Chan <kcchan1@outlook.com>
2018-07-16 15:12:19 +02:00
Peter Wagner
d8d2133c35 librpc: add host build to install h files needed for nfs-kernel-server to get compiled
Signed-off-by: Peter Wagner <tripolar@gmx.at>
2018-07-16 15:12:19 +02:00
Chuanhong Guo
c9c4b2116c ramips: Use dts alias based status led
Also fix several typos in led node name.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-07-16 15:12:18 +02:00
Steffen Förster
1ef65ceeaf kernel: insmod phy-broadcom module during preinit
Some HP Thin clients use the broadcom nextreme chip as integrated NIC.
It is connected via PCI express and will only be found automatically if
phy-broadcom is loaded before tg3. This small change makes the thin
client usable for Freifunk with gluon out of the box.

Signed-off-by: Steffen Förster <steffen@chemnitz.freifunk.net>
2018-07-16 15:12:18 +02:00
Daniel Engberg
09d794ab92 popt: Replace dead upstream site with mirror
We can safely assume by now that rpm5.org is dead and isn't coming back
so just add another mirror instead.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-16 15:12:18 +02:00
Daniel Engberg
0a4cd1a682 package/utils/f2fs-tools: Update to 1.11.0
Update f2fs-tools to 1.11.0

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-16 15:12:18 +02:00
Daniel Engberg
804c51e1e6 package/utils/e2fsprogs: Update to 1.44.3
Update e2fsprogs to 1.44.3
Enable threads
Enable LTO

Numbers on mips_24kc (a few packages):

Old --> New --> LTO and threads
e2fsprogs_*_mips_24kc.ipk: 173 --> 174 --> 154kbyte
libblkid_*_mips_24kc.ipk:  114 --> 114 --> 114kbyte
libext2fs_*_mips_24kc.ipk: 138 --> 139 --> 139kbyte

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-16 15:12:18 +02:00
Thibaut VARÈNE
c2d2647c09 ar71xx: add support for MikroTik RB931-2nD
This patch adds support for the MikroTik RB931-2nD (hAP mini):
https://mikrotik.com/product/RB931-2nD

Specifications:
  * SoC: Qualcomm QCA9533 (650MHz)
  * RAM: 32MiB
  * Storage: 16MiB SPI NOR flash
  * Ethernet: 3x100M
  * Wireless: QCA9533 built-in, dual-chain 802.11b/g/n

Installation:

1. Setup a DHCP/BOOTP Server with the following parameters:
   * DHCP-Option 66 (TFTP server name): pointing to a local TFTP
     server within the same subnet of the DHCP range
   * DHCP-Option 67 (Bootfile-Name): matching the initramfs filename
     of the to be booted image. The usable intramfs files are:
       - openwrt-ar71xx-mikrotik-vmlinux-initramfs.elf
       - openwrt-ar71xx-mikrotik-vmlinux-initramfs-lzma.elf
       - openwrt-ar71xx-mikrotik-rb-nor-flash-16M-initramfs-kernel.bin

2. Press the reset button on the board and keep that pressed.

3. Connect the board to your local network via its Internet port.

4. Release the button after the LEDs on the board are turned off.
   Now the board should load and start the initramfs image from
   the TFTP server.

5. Now connect the board via either of its LAN ports (2 or 3).

6. Upload the sysupgrade image to the board with scp:
     $ scp openwrt-ar71xx-mikrotik-rb-nor-flash-16M-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/fw.bin

7. Log in to the running system listening on 192.168.1.1 via ssh
   as root (without password):
     $ ssh root@192.168.1.1

8. Flash the uploaded firmware file from the ssh session via the
   sysupgrade command:
     root@OpenWrt:~# sysupgrade /tmp/fw.bin

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2018-07-16 15:12:17 +02:00
Lukas Mrtvy
f21bcb4db8 kernel: leds-apu2 remove boardname check
'In different versions of coreboot are different names of apu boardname.
No need to check boardname to load module.'

Signed-off-by: Lukas Mrtvy <lukas.mrtvy@gmail.com>
2018-07-16 15:12:17 +02:00
Andrius Štikonas
d591260407 brcm63xx: initial support for Sky SR102 router
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
SOC: 	    BCM63168 (BMIPS4350 V8.0 @400MHz)
Flash size: 16 MiB
RAM size:   128 MiB

Heavily based on patch for OpenWRT Chaos Chalmer.
Original patch and more info can be found at:
https://openwrt.org/toh/sky/sr102

Known issues:
 - Wireless and ADSL modem are not working.

Signed-off-by: Andrius Štikonas <andrius@stikonas.eu>
2018-07-16 15:12:08 +02:00
Christian Lamparter
c3f9a1ac0e apm821xx: attempt to fix sata access freezes
The original vendor's driver programmed the dma controller's
AHB HPROT values to enable bufferable, privileged mode. This
along with the "same priorty for both channels" could very
well fix the freezes that have been reported on the forum by
@ticerex and @takimata.

<https://forum.lede-project.org/t/wd-mybook-live-duo-two-disks/16195/46>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-16 15:10:21 +02:00
Kevin Darbyshire-Bryant
c729c43b39 kmod-sched-cake: bump to 20180716
Bump to the latest cake recipe.

This backports tc class support to kernel 4.9 and other than conditional
kernel compilation pre-processor macros represents the cake that has
gone upstream into kernel 4.19.  Loud cheer!

Fun may be had by changing cake tin classification for packets on
ingress. e.g.

tc filter add dev ifb4eth0 parent 800b: protocol ip u32 match \
ip dport 6981 0xffff action skbedit priority 800b:1

Where 800b: represents the filter handle for the ifb obtained by 'tc
qdisc' and the 1 from 800b:1 represents the cake tin number.  So the
above example puts all incoming packets destined for port 6981 into the
BULK (lowest priority) tin.

f39ab9a Obey tin_order for tc filter classifiers
1e2473f Clean up after latest backport.
82531d0 Reorder includes to fix out of tree compilation
52cbc00 Code style cleanup
6cdb496 Fix argument order for NL_SET_ERR_MSG_ATTR()
cab17b6 Remove duplicate call to qdisc_watchdog_init()
71c7991 Merge branch 'backport-classful'
32aa7fb Fix compilation on Linux 4.9
9f8fe7a Fix compilation on Linux 4.14
ceab7a3 Rework filter classification
aad5436 Fixed version of class stats
be1c549 Add cake-specific class stats
483399d Use tin_order for class dumps
80dc129 Add class dumping
0c8e6c1 Fix dropping when using filters
c220493 Add the minimum class ops
5ed54d2 Start implementing tc filter/class support

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-16 13:55:58 +01:00
Daniel Engberg
df5f914b83 tools/e2fsprogs: Update to 1.44.3
Update e2fsprogs to 1.44.3

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-16 10:11:35 +02:00
Christian Lamparter
12b80f1cab apm821xx: fix usb-otg on 4.14
Starting with 4.14, the "amcc,dwc-otg" needs to be used
in order to get the usb-otg to work.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-07-16 08:42:21 +02:00
Christian Schoenebeck
1e177844bc dropbear: close all active clients on shutdown
Override the default shutdown action (stop) and close all processes
of dropbear

Since commit 498fe85, the stop action only closes the process
that's listening for new connections, maintaining the ones with
existing clients.
This poses a problem when restarting or shutting-down a device,
because the connections with existing SSH clients, like OpenSSH,
are not properly closed, causing them to hang.

This situation can be avoided by closing all dropbear processes when
shutting-down the system, which closes properly the connections with
current clients.

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
[Luis: Rework commit message]
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-07-16 08:40:51 +02:00
Rafał Miłecki
82498a7f7a mtd: improve check for TRX header being already fixed
First of all lengths should be compared after checking all blocks for
being good/bad. It's because requested length may differ from a final
one if there were some bad blocks.

Secondly it makes sense to also compare crc32 since we already have a
new one calculated.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-15 23:27:09 +02:00
Daniel Engberg
49bdd43da2 curl: Update to 7.61.0
Update curl to 7.61.0

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-15 22:35:22 +02:00
Hans Dedecker
def5b7f285 odhcp6c: add noserverunicast config option for broken DHCPv6 servers
Fix broken DHCPv6 servers which provide the server unicast option but
do not reply on DHCPv6 renew messages directed to the IPv6 address
contained in the server unicast option whihc results in broken IPv6
connectivity.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-15 22:19:10 +02:00
Rafał Miłecki
0f54489f75 mtd: support bad blocks within the mtd_fixtrx()
Reading MTD data with (p)read doesn't return any error when accessing
bad block. As the result, with current code, CRC32 covers "data" stored
in bad blocks.

That behavior doesn't match CFE's one (bootloader simply skips bad
blocks) and may result in:
1) Invalid CRC32
2) CFE refusing to boot firmware with a following error:
Boot program checksum is invalid

Fix that problem by checking every block before reading its content.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-15 16:51:41 +02:00
Matthias Schiffer
b123921a92 include/prereq-build.mk: explicitly check for -f flag when using busybox time
On Debian, busybox does have a time applet, but it does not support the -f
flag. Catch this in prereq check to give users to proper error message.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-07-14 15:46:35 +02:00
Matthias Schiffer
36fa1bbf6f include/kernel-build.mk: fix kernel rebuild on backport patch changes
An incorrect variable name was referenced in KERNEL_FILE_DEPENDS, leading
to the omission of the backport-* patch dirs in the generation of the
prepared stamp name.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-07-14 13:07:34 +02:00
Felix Fietkau
18533ff415 kernel: backport page fragment API changes from 4.10+ to 4.9
mt76 now relies on this API

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-14 11:39:00 +02:00
Felix Fietkau
888a15ff83 ppp: add missing -fPIC to rp-pppoe.so CFLAGS
Fixes build error with LTO

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-14 11:00:23 +02:00
Felix Fietkau
2601e34fad ramips: ethernet: disable fraglist support
The code has some remaining issues that cause ethernet hangs, so
disable it for now until we can get it fixed

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-14 08:32:39 +02:00
Felix Fietkau
154c0c4006 ubus: compile with LTO enabled
Reduces total .ipk size by about 1k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
73fc67b614 procd: compile with LTO enabled
Reduces .ipk size on MIPS from 42k to 39k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
47b42137ce dropbear: compile with LTO enabled
Reduces size of the .ipk on MIPS from 87k to 84k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
ef96d1e34a firewall: compile with LTO enabled
Reduces .ipk size on MIPS from 41.6k to 41.1k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
ef16a394d2 iw: compile with LTO enabled
Reduces .ipk size on MIPS from 34k to 33k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
e7397eef69 ppp: compile with LTO enabled
Reduces .ipk size on MIPS from 98.5k to 98k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
dfbd49bd22 ppp: fix linker flags for the radius plugin
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
07940acc34 netifd: compile with LTO enabled
Reduces .ipk size from 65k to 63k on MIPS

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
8c11133c9d busybox: compile with LTO enabled
In the default configuration on MIPS, it reduces the .ipk size
from 214k to 207k

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 17:22:53 +02:00
Felix Fietkau
4e56af5ab4 mt76: update to the latest version
08719b1 mt76: use a per rx queue page fragment cache
4d2c565 mt76x2: reset HW before probe
f622975 mt76x2: fix CCK protection control frame rate
6780375 mt76x2: add frame protection support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-13 16:36:56 +02:00
Matthias Schiffer
16035a7dd3 include/feeds.mk: rework generation of opkg distfeeds.conf
Allow enabling/commenting/disabling each feed individually by using a
tristate config symbol.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-07-12 21:18:41 +02:00
Matthias Schiffer
6dac434c00 base-files: fix feed list in PKG_CONFIG_DEPENDS
FEEDS_ENABLED and FEEDS_DISABLED are derived from FEEDS_AVAILABLE, not
FEEDS_INSTALLED.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-07-12 21:18:41 +02:00
Matthias Schiffer
9af22f1ac9 include/feeds.mk: always add available feeds to PACKAGE_SUBDIRS
Setting CONFIG_FEED_... symbols combined two different effects: Disabling
a feed in the generated opkg distfeeds.conf, and omitting the feed from
PACKAGE_SUBDIRS.

It does not make sense to omit built feeds from PACKAGE_SUBDIRS, as it will
only lead to packages that can be enabled in .config (and that will
consequently be built) not to be found during rootfs creation, breaking
the build. All feeds that packages are emitted to should simply always be
added to PACKAGE_SUBDIRS instead; the CONFIG_FEED_... only configure the
generated distfeeds.conf like this.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-07-12 21:18:41 +02:00
Matthias Schiffer
6bdd5d8459 scripts/feeds: add src-dummy method
The src-dummy method does not actually obtain any feed, but it can be used
to insert addtional entries into the opkg distfeeds.conf. This is useful to
make package feeds available to users without requiring the corresponding
source feeds to be available during build.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-07-12 21:16:40 +02:00
Felix Fietkau
0c285bd081 ramips: ethernet: use own page_frag_cache
Using the NAPI or netdev frag cache along with other drivers can lead to
32 KiB pages being held for a long time, despite only being used for
very few page fragment.
This can happen if the ethernet driver grabs one or two fragments for rx
ring refill, while other drivers use (and free up) the remaining
fragments. The 32 KiB higher-order page can only be freed once all users
have freed their fragments, which only happens after the rings of all
drivers holding the fragments have wrapped around.

Depending on the traffic patterns, this can waste a lot of memory and
look a lot like a memory leak

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-12 18:43:53 +02:00
Felix Fietkau
01df4a2565 ramips: ethernet: use skb_free_frag to free fragments
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-12 18:43:53 +02:00
Peter Lundkvist
2eeb4b78c6 ramips: TP-Link TL-WR902AC v3: add missing wps button
Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
2018-07-12 18:15:33 +02:00
Peter Lundkvist
33321ebefa ramips: TP-Link TL-WR902AC v3: don't build factory image
The line that produces factory image was accidentally left by me while
testing before inital commit.

I came to the conclusion that flashing from OEM firmware does not work
(seems to share this behavior with other tplinks based on mt7628).

I have not done any further analysis, as I was unable to open the
case and attach a serial port (too much glue). Maybe i will try once
more.

So the way to do initial flashing (or un-bricking) is to use the
tftp-recover image. It is possible to revert to OEM firmware with tftp
recovery; in this case the first 512 bytes the image file need to be
cut off.

Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
[add explaination provided via mail as commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-12 18:15:33 +02:00
Mathias Kresin
a07e1126bc tools: kernel2minor: update to latest version
9fa9190 create reproducible images

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-12 18:15:33 +02:00
Alex Maclean
11d6547455 config: extend small_flash feature
Extend the small_flash feature to disable swap, core dumps, and
kernel debug info, and change the squashfs block size to 1024KiB.

Also change squashfs fragment cache to 2 for small_flash to ease memory
usage.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-07-12 18:15:33 +02:00
Mathias Kresin
cf7154db07 kernel: only optimized for size if small_flash
Add a new config option to allow to select the default compile
optimization level for the kernel.

Select the optimization for size by default if the small_flash feature is
set. Otherwise "Optimize for performance" is set.

Add the small_flash feature flag to all (sub)targets which had the
optimization for size in their default kernel config.

Remove CC_OPTIMIZE_FOR_* symbols from all kernel configs to apply the new
setting.

Exceptions to the above are:

  - lantiq, where the optimization for size is only required for the
    xway_legacy subtarget but was set for the whole target
  - mediatek, ramips/mt7620 & ramips/mt76x8 where boards should have
    plenty of space and an optimization for size doesn't make much sense
  - rb532, which has 128MByte flash

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-12 18:15:32 +02:00
Mathias Kresin
621fa91a82 ar71xx: move boards to tiny subtarget
Move boards to the tiny subtarget which break the build if the kernel is
set to "Optimize for performance".

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-12 18:15:19 +02:00
李国
671999157d verbose.mk: quote SUBMAKE options
build openwrt on centos 6 I should use devtoolset-3 to get gcc 4.9, but
it fail when make menuconfig. so I have to give option HOSTCC='gcc
-Wl,--copy-dt-needed-entries' to make. But it passed to sub make to
HOSTCC=gcc as micro SUBMAKE expand to HOSTCC=gcc
-Wl,--copy-dt-needed-entries. This patch fix this issue.

make -C build menuconfig HOSTCC='gcc -Wl,--copy-dt-needed-entries' V='1'
make: Entering directory `/work/openwrt/openwrt/build'
/opt/rh/devtoolset-3/root/usr/libexec/gcc/x86_64-redhat-linux/4.9.2/ld:
lxdialog/checklist.o: undefined reference to symbol 'acs_map'
//lib64/libtinfo.so.5: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[1]: *** [mconf] Error 1
make -s -C scripts/config all CC=gcc -Wl,--copy-dt-needed-entries: build
failed. Please re-run make with -j1 V=s to see what's going on
make: *** [scripts/config/mconf] Error 1
make: Leaving directory `/work/openwrt/openwrt/build'

Signed-off-by: 李国 <uxgood.org@gmail.com>
2018-07-12 10:24:36 +02:00
Evgeniy Didin
12915b105a arc: Update variables substitutions in u-boot env files
In the latest version of u-boot (2018.05) there was a swith to
Hush shell for ARC AXS10x boards(arc770/archs38):
commit 9249d74781e1 ("ARC: AXS10x: Enable hush shell").
In Hush shell using "$()" to declare envitonment variables is forbidden,
instead of this "${}" need to be used.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
2018-07-12 10:24:31 +02:00
Kristian Evensen
d238c7f995 mediatek: Fix memory node for U7623
The changed applied to BananaPi R2 in upstream commit c0b0d540db1a,
which was backported to 4.14 in 4.14.53, is also required for the U7623.
Without updating the memory node, the board refuses to boot.

Fixes: d0839e020d ("kernel: bump 4.14 to 4.14.53")

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-07-12 08:53:02 +02:00
Lukáš Mrtvý
d3b8e6b2a7 kernel: gpio-nct5104d remove boardname check
'In different versions of coreboot are different names of apu boardname.
No need to check boardname to load module.'

Signed-off-by: Lukáš Mrtvý <lukas.mrtvy@gmail.com>
2018-07-12 08:51:27 +02:00
Hans Dedecker
af70d86d62 netifd: update to latest git HEAD
5cf7975 iprule: rework interface based rules to handle dynamic interfaces
57f87ad Introduce new interface event "create" (IFEV_CREATE)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-11 21:55:23 +02:00
Felix Fietkau
33553a11ab ramips: clean up and fix MT7621 NAND driver issues
- remove misaligned custom buffer allocation in the NAND driver
- remove broken bounce buffer implementation for 16-byte align

Let the MTD core take care of both

Fixes messages like these:
[  102.820541] Data buffer not 16 bytes aligned: 87daf08c

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-11 20:59:44 +02:00
Felix Fietkau
21ee8ce9b5 kernel: replace bridge port isolate hack with upstream patch backport on 4.14
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-11 20:59:05 +02:00
Felix Fietkau
68f9921ed8 netifd: update to the latest version
c1f6a82 system-linux: add autoneg and link-partner output
e9eff34 system-linux: extend link mode speed definitions
d1251e1 system-linux: adjust bridge isolate mode for upstream attribute naming
03785fb system-linux: fix build error on older kernels

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-11 20:59:05 +02:00
Felix Fietkau
41a1c1af4b kernel: adjust bridge port isolate patch to match upstream attribute naming
Newer kernels have a patch that implements compatible functionality
directly. Adjust the attribute of our own patch in preparation for
dropping it later

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-11 20:59:05 +02:00
Felix Fietkau
e07ad61aec procd: update to the latest version, fixes gcc 8 build error
a0372ac procd: increase watchdog fd_buf storage size to fix gcc8 build error

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-11 18:34:59 +02:00
Koen Vandeputte
8b42a260ed mac80211: Expose support for ath9k Dynack
Enables support for Dynack feature.

When a remote station is far away, we need to compensate for the distance
by allowing more time for an ACK to arrive back before issueing a retransmission.
Currently, it needs to be set fixed to indicate the maximum distance the remote
station will ever be.

While this mostly works for static antennae, it introduces 2 issues:
- If the actual distance is less, speed is reduced due to a lot of wates wait-time
- If the distance becomes greater, retries start to occur and comms can get lost.

Allowing to set it dynamically using dynack ensures the best possible tradeoff
between speed vs distance.

This feature is currently only supported in ath9k.
it is also disabled by default.

Enabling it can be done in 2 ways:
- issue cmd:  iw phy0 set distance auto
- sending the NL80211_ATTR_WIPHY_DYN_ACK flag to mac80211 driver using netlink

Disabling it can be done by providing a valid fixed value.

To give an idea of a practical example:

In my usecase, we have mesh wifi device installed on ships/platforms.
Currently, the coverage class is set at 12000m fixed.

When a vessel moved closer (ex. 1500m), the measured link capacity was a lot
lower compared to setting the coverage class fixed to 1500m

Dynack completely solved this, nearly providing double the bandwidth at closer range
compared to the fixed setting of 12000m being used.

Also when a vessel sailed to a distance greater than the fixed setting,
communication was lost as the ACK's never arrived within the max allowed timeframe.

Actual distance: 6010m
iperf 60s run avg

Fixed 12150m:  31 Mbit/s
Dynack:        58 Mbit/s

Fixed 6300m:   51 Mbit/s
Dynack:        59 Mbit/s

Fixed 3000m:   13 Mbit/s  (lots of retries)
Dynack:        58 Mbit/s

Actual distance: 1504m
iperf 60s run avg

Fixed 12150m:  31 Mbit/s
Dynack:        86 Mbit/s

Fixed 6300m:   55 Mbit/s
Dynack:        87 Mbit/s

Fixed 3000m:   67 Mbit/s
Dynack:        87 Mbit/s

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-07-11 16:23:51 +02:00
Koen Vandeputte
ba2b0f0ac6 kernel: bump 4.14 to 4.14.54
Rereshed all patches

Reworked patches to match upstream:
335-v4.16-netfilter-nf_tables-add-single-table-list-for-all-fa.patch

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-07-11 16:02:24 +02:00
Moritz Warning
954faac7bc qos-scripts: fix indentation
Signed-off-by: Moritz Warning <moritzwarning@web.de>
2018-07-11 09:40:40 +02:00
Jason A. Donenfeld
4630159294 wireguard: bump to 0.0.20180708
* device: print daddr not saddr in missing peer error
* receive: style

Debug messages now make sense again.

* wg-quick: android: support excluding applications

Android now supports excluding certain apps (uids) from the tunnel.

* selftest: ratelimiter: improve chance of success via retry
* qemu: bump default kernel version
* qemu: decide debug kernel based on KERNEL_VERSION

Some improvements to our testing infrastructure.

* receive: use NAPI on the receive path

This is a big change that should both improve preemption latency (by not
disabling it unconditionally) and vastly improve rx performance on most
systems by using NAPI. The main purpose of this snapshot is to test out this
technique.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-07-11 09:04:03 +02:00
Hans Dedecker
7e82418372 iproute2: update to 4.17.0
Update to the latest version of iproute2; see https://lwn.net/Articles/756991/
for a full overview of the changes in 4.17.
Remove upstream patch 002-json_print-fix-hidden-64-bit-type-promotion.
Backport upstream patch 001-rdma-sync-some-IP-headers-with-glibc fixing
rdma compile issue.
At the same time re-organize patch numbering so the OpenWRT specific
patches start at 100.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-10 19:30:12 +02:00
Felix Fietkau
6dac92a42e hostapd: build with LTO enabled (using jobserver for parallel build)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-10 14:26:35 +02:00
Felix Fietkau
9b965d3b71 binutils: remove version 2.27
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-10 14:26:35 +02:00
Felix Fietkau
7c3e3eb098 binutils: update to version 2.30, resolves issues with LTO
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-10 14:26:35 +02:00
Felix Fietkau
55055aee50 binutils: backport an upstream fix for a linker bug that triggers with LTO
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-10 14:26:35 +02:00
Rafał Miłecki
7ddba08d87 kernel: bcm47xxpart: fix getting user-space data partition name
Partition name is picked by a parser_trx_data_part_name(). It has to
get correct partition offset (taking care of bad blocks) to work
properly.

This fixes UBI support for devices that have kernel flashed on partition
with a bad block.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-07-10 14:05:02 +02:00
Felix Fietkau
a5188eb258 nasm: disable LTO, remove host specific workarounds
The recent build failures on various platforms were apparently caused by
the fact that LTO build support in the configure script does not check
if it has a suitable version of gcc and simply assumes that gcc-ar is
available and can be used for intermediate files.

Since we really don't need to build nasm with LTO, simply disable it and
keep the whole build more portable

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-10 13:09:57 +02:00
Hans Dedecker
98a6bee09a odhcpd: update to latest git HEAD
345bba0 dhcpv4: improve error checking in handle_dhcpv4()
c0f6390 odhcpd: Check if open the ioctl socket failed

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-09 09:28:55 +02:00
Hauke Mehrtens
e204717ef2 toolchain/nasm: force ar and ranlib only on macOSX
On Debian 9 nasm does not build when we force it to use ranlib, for
macOSX this is needed. Only force this on macOSX and not on any other
OS, this should fix the build of nasm on Linux systems. On my Debian
system the nasm configure script selects  gcc-ranlib and gcc-ar instead.

Fixes: d3a7587eb9 ("toolchain/nasm: fix missing AR/RANLIB variables")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-07-08 14:22:54 +02:00
Kevin Darbyshire-Bryant
79b38047b9 build: README punctuation pendantry
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-08 12:05:16 +01:00
Kevin Darbyshire-Bryant
5781fc6b3f build: Update README & github help
Update README to include Openwrt branding and improve wording.

Point at the Openwrt wiki in .github templates.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-08 09:41:53 +01:00
Kevin Darbyshire-Bryant
edf338f248 basefiles: Reword sysupgrade message
sysupgrade 'upgrade' message more verbose than needs be.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-08 09:41:53 +01:00
David Bauer
6476148034 ath79: add support for OCEDO Raccoon
This commit adds support for the OCEDO Raccoon

SOC:	Atheros AR9344
RAM:    128MB
FLASH:  16MiB
WLAN1:  AR9344 2.4 GHz 802.11bgn 2x2
WLAN2:  AR9382 5 GHz 802.11an 2x2
INPUT:  RESET button
LED:    Power, LAN, WiFi 2.4, WiFi 5
Serial: Header Next to Black metal shield
        Pinout is 3.3V - GND - TX - RX (Arrow Pad is 3.3V)
        The Serial setting is 115200-8-N-1.

	NOTE: The U-Boot won't boot with the serial attached.
	Boot the device without serial attached and attach it
	after 3 seconds.

Tested and working:
 - Ethernet
 - 2.4 GHz WiFi
 - 5 GHz WiFi
 - TFTP boot from ramdisk image
 - Installation via ramdisk image
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

Installation seems to be possible only through booting an OpenWRT
ramdisk image.

Hold down the reset button while powering on the device. It will load a
ramdisk image named 'raccoon-uImage-initramfs-lzma.bin' from 192.168.100.8.

Note: depending on the present software, the device might also try to
pull a file called 'raccoon-uimage-factory'. Only the name differs, it
is still used as a ramdisk image.

Wait for the ramdisk image to boot. OpenWRT can be written to the flash
via sysupgrade or mtd.

Due to the flip-flop bootloader which we not (yet) support, you need to
set the partition the bootloader is selecting. It is possible from the
initramfs image with

 > fw_setenv bootcmd run bootcmd_1

Afterwards you can reboot the device.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-07-08 00:04:27 +02:00
Hauke Mehrtens
da6c09eff4 kernel: move CONFIG_USB_MTU3 to generic config
CONFIG_USB_MTU3 is not visible for the mediatek target by default, but
only when CONFIG_USB_GADGET is set. This will config option will be
remove with when running "make kernel_oldconfig", move this option to
the generic config to prevent this.

This fixes the build of the mt7623 subtarget of the mediatek target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-07-07 23:53:04 +02:00
Hauke Mehrtens
29fa9ac559 kernel: disable some DRM_PANEL config options
The modules should not be build by default.
This fixes the build of the zynq target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-07-07 23:53:04 +02:00
Ted Hess
328ddcf628 toolchain/nasm: Backport GCC8 compatibility fix from upstream repo
Signed-off-by: Ted Hess <thess@kitschensync.net>
2018-07-07 16:15:02 -04:00
Lucian Cristian
2d268c0710 ath79: disable unused drivers for tiny target
Shrink the tiny kernel by moving all switch and ethernet phy drivers to
the generic kernel config instead of the target kernel config.

All boards in the tiny and nand target are either ar7240 or ar9331 based,
which don't support external xMII and therefore no external ethernet phy
can be connected. None of the boards uses a realtek switch either.

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-07 21:07:40 +02:00
Lucian Cristian
80e3a16fda ath79: optimize ath79 tiny target for size
the speed impact on tiny target is minimal and worth the size gained

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-07-07 21:07:40 +02:00
Christoph Krapp
e420b7b5c5 ath79: add support for UniFi AC-Mesh Pro
The Unifi AC-Mesh Pro has identical hardware to the Unifi AC-Pro except
USB support.
Furthermore for setting parameters like antenna gain it is helpful to
know the exact device variant.

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-07-07 21:07:40 +02:00
Ademar Arvati Filho
16d6a63f85 ramips: add support for Blueendless Kimax U35WF
Blueendless Kimax U35WF is a 3,5" HDD Enclosure with Wi-Fi and Ethernet

Patch rewritten from: https://forum.openwrt.org/viewtopic.php?id=66908
Based on: https://github.com/lede-project/source/pull/965

Specification:
- SoC: MediaTek MT7620N
- CPU/Speed: 580 MHz
- Flash-Chip: KH25L12835F Spi Flash
- Flash size: 16 MiB
- RAM: 64 MiB
- LAN: 1x 100 Mbps Ethernet
- WiFi SoC-integrated: 802.11bgn
- 1x USB 2.0
- UART: for serial console

Installation:
1. Download sysupgrade.bin
2. Open vendor web interface
3. Choose to upgrade firmware
3. After reboot connect via ethernet at 192.168.1.1

Signed-off-by: Ademar Arvati Filho <arvati@hotmail.com>
2018-07-07 21:07:40 +02:00
Mathias Kresin
a28d686fb6 ar71xx: factor out safe loader image build code
Add a template for safeloader images and include it instead of
overwriting variables defined in the common tp-link build commands.

Split the existing tp-link templates to proper implement the safeloader
template.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-07 21:07:40 +02:00
Mathias Kresin
b908c82f49 ar71xx: drop unnecessary LOADER_TYPE variables
Drop the LOADER_TYPE variables in case no loader is used at all or move
the variable to devices which are using a loader.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-07 21:07:40 +02:00
Mathias Kresin
a0ec632f8d ar71xx: get rid of copy-file
Use the provided image build variables to point the kernel-bin build
command to the kernel we are interested in.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-07 21:07:40 +02:00
Mathias Kresin
5260c1003c ar71xx: mikrotik: cleanup nand image build code
Use the LOADER_TYPE variable to specify that we need the elf preloader
and append the loader via the corresponding build recipe. It allows to
enable initramfs images again for mikrotik NAND images, which caused a
build error before.

Add the minor header only to the kernel of the sysupgrade images, as it
is only required for the bootloader to find the kernel on flash.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-07 21:07:40 +02:00
INAGAKI Hiroshi
0b83a23560 ramips: add support for I-O DATA WN-AX1167GR
I-O DATA WN-AX1167GR is a 2.4/5 GHz band 11ac router, based on
MediaTek MT7621A.

Specification:

- MT7621A (2-Cores, 4-Threads)
- 64 MB of RAM (DDR2)
- 16 MB of Flash (SPI)
- 2T2R 2.4/5 GHz
- 5x 10/100/1000 Mbps Ethernet
- 2x LEDs, 4x keys (2x buttons, 1x slide switch)
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - baudrate: 115200 bps (U-Boot, OpenWrt)

Stock firmware:

In the stock firmware, WN-AX1167GR has two os images each composed of
Linux kernel and rootfs.
These images are stored in "Kernel" and "app" partition of the
following partitions, respectively.

(excerpt from dmesg):

MX25L12805D(c2 2018c220) (16384 Kbytes)
mtd .name = raspi, .size = 0x01000000 (16M) .erasesize = 0x00010000 (64K) .numeraseregions = 0
Creating 10 MTD partitions on "raspi":
0x000000000000-0x000001000000 : "ALL"
0x000000000000-0x000000030000 : "Bootloader"
0x000000030000-0x000000040000 : "Config "
0x000000040000-0x000000050000 : "Factory"
0x000000050000-0x000000060000 : "iNIC_rf"
0x000000060000-0x0000007e0000 : "Kernel"
0x000000800000-0x000000f80000 : "app"
0x000000f90000-0x000000fa0000 : "Key"
0x000000fa0000-0x000000fb0000 : "backup"
0x000000fb0000-0x000001000000 : "storage"

The flag for boot partition is stored in "Key" partition, and U-Boot
reads this and determines the partition to boot.

If the image that U-Boot first reads according to the flag is
"Bad Magic Number", U-Boot then tries to boot from the other image.
If the second image is correct, change the flag to the number
corresponding to that image and boot from that image.

(example):

## Booting image at bc800000 ...
Bad Magic Number,FFFFFFFF
Boot from KERNEL 1  !!
## Booting image at bc060000 ...
   Image Name:   MIPS OpenWrt Linux-4.14.50
   Image Type:   MIPS Linux kernel Image (lzma compressed)
   Data Size:    1865917 Bytes = 1.8 MB
   Load Address: 80001000
   Entry Point:  80001000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
raspi_erase_write: offs:f90000, count:34
.
.
Done!

Starting kernel ...

Flash instruction using factory image:

1. Connect the computer to the LAN port of WN-AX1167GR
2. Connect power cable to WN-AX1167GR and turn on it
3. Access to "192.168.0.1" on the web browser and open firmware
update page ("ファームウェア")
4. Select the OpenWrt factory image and perform firmware update
5. On the initramfs image, execute "mtd erase firmware" to erase stock
firmware and execute sysupgrade with sysupgrade image for WN-AX1167GR
6. Wait ~180 seconds to complete flasing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-07-07 21:07:40 +02:00
Konstantin Demin
f715d816b7 libnl: bump to 3.4.0
refresh patches

Signed-off-by: Konstantin Demin <rockdrilla@gmail.com>
2018-07-07 18:33:58 +02:00
Vladimir Vid
856cc6d999 uboot-imx: bump to 2018.03 which fixes the build issues with fdt64_t redefinitions
* change mx6qsabresd to mx6qsabres to match defconfig name
* merge wanboard profiles since there is only one defconfig for the target device
* move wanboard options from wandboard.h to defconfig
* remove legacy patches

Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
2018-07-07 18:33:57 +02:00
Sven Eckelmann
87493dac11 mac80211: initialize sinfo in cfg80211_get_station
Most of the implementations behind cfg80211_get_station will not initialize
sinfo to zero before manipulating it. For example, the member "filled",
which indicates the filled in parts of this struct, is often only modified
by enabling certain bits in the bitfield while keeping the remaining bits
in their original state. A caller without a preinitialized sinfo.filled can
then no longer decide which parts of sinfo were filled in by
cfg80211_get_station (or actually the underlying implementations).

cfg80211_get_station must therefore take care that sinfo is initialized to
zero. Otherwise, the caller may tries to read information which was not
filled in and which must therefore also be considered uninitialized. In
batadv_v_elp_get_throughput's case, an invalid "random" expected throughput
may be stored for this neighbor and thus the B.A.T.M.A.N V algorithm may
switch to non-optimal neighbors for certain destinations.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-07-07 18:33:57 +02:00
Sven Eckelmann
1c01e02575 ath10k-ct: search DT for BDF variant info
Board Data File (BDF) is loaded upon driver boot-up procedure. The right
board data file is identified on QCA4019 using bus, bmi-chip-id and
bmi-board-id.

The problem, however, can occur when the (default) board data file cannot
fulfill the vendor requirements and it is necessary to use a different
board data file.

This problem was solved for SMBIOS by adding a special SMBIOS type 0xF8.
Something similar has to be provided for systems without SMBIOS but with
device trees. No solution was specified by QCA and therefore a new one has
to be found for ath10k.

The device tree requires addition strings to define the variant name

    wifi@a000000 {
    	status = "okay";
    	qcom,ath10k-calibration-variant = "RT-AC58U";
    };

    wifi@a800000 {
    	status = "okay";
    	qcom,ath10k-calibration-variant = "RT-AC58U";
    };

This would create the boarddata identifiers for the board-2.bin search

 *  bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=RT-AC58U
 *  bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=RT-AC58U

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-07-07 18:33:57 +02:00
Jeremiah McConnell
206fbbfec2 config: add config option for KERNEL_TASKSTATS
In order for monitoring tools such as atop and htop to track and report
i/o data, kernel support for task statistics and io accounting is
required.

Add a config option to enable building this support in the kernel.

Signed-off-by: Jeremiah McConnell <miah@miah.com>
2018-07-07 18:33:57 +02:00
Hauke Mehrtens
b19622044d mbedtls: Activate deterministic ECDSA
With deterministic ECDSA the value k needed for the ECDSA signature is
not randomly generated any more, but generated from a hash over the
private key and the message to sign. If the value k used in a ECDSA
signature or the relationship between the two values k used in two
different ECDSA signatures over the same content is know to an attacker
he can derive the private key pretty easily. Using deterministic ECDSA
as defined in the RFC6979 removes this problem by deriving the value k
deterministically from the private key and the content which gets
signed.

The resulting signature is still compatible to signatures generated not
deterministic.

This increases the size of the ipk on mips 24Kc by about 2 KByte.
old:
166.240 libmbedtls_2.11.0-1_mips_24kc.ipk
new:
167.811 libmbedtls_2.11.0-1_mips_24kc.ipk

This does not change the ECDSA performance in a measurable way.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-07-07 18:33:53 +02:00
Daniel Engberg
5a078180d0 mbedtls: Disable MBEDTLS_SHA256_SMALLER implementation
Disable MBEDTLS_SHA256_SMALLER implementation, not enabled by default in
upstream and reduces performance by quite a bit.

Source: include/mbedtls/config.h

Enable an implementation of SHA-256 that has lower ROM footprint but also
lower performance.

The default implementation is meant to be a reasonnable compromise between
performance and size. This version optimizes more aggressively for size at
the expense of performance. Eg on Cortex-M4 it reduces the size of
mbedtls_sha256_process() from ~2KB to ~0.5KB for a performance hit of
about 30%.

The size of mbedtls increased a little bit:
ipkg for mips_24kc before:
164.382 Bytes
ipkg for mips_24kc after:
166.240 Bytes

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-07 18:31:13 +02:00
Daniel Engberg
10554cfcc1 mbedtls: Update to 2.11.0
Update mbed TLS to 2.11.0

Disable OFB block mode and XTS block cipher mode, added in 2.11.0.
The soVersion of mbedtls changed, bump PKG_RELEASE for packages that use mbedTLS
This is to avoid having a mismatch between packages when upgrading.

The size of mbedtls increased a little bit:
ipkg for mips_24kc before:
163.846 Bytes
ipkg for mips_24kc after:
164.382 Bytes

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-07 18:29:14 +02:00
Daniel Engberg
f15f3286e3 mbedtls: cleanup config patch
Clean up patch, use "//" consistently.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-07-07 18:19:39 +02:00
Daniel Engberg
3accbc6aac sunxi: Enable SD block devices
USB storage support is however SCSI Disk block device support isn't
meaning that connected devices wont enumerate.
Enable CONFIG_BLK_DEV_SD by default to fix it.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-07-07 18:19:39 +02:00
Alexandru Ardelean
7de50d1917 brcm2708: platform.sh: fix tar directory directive
BusyBox's `tar` command does not support the `--directory` directive, which
is essentially `-C` in short-form option.
BusyBox's `tar` command supports `-C`.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-07-07 18:19:39 +02:00
Enrico Mioso
231b0177fb libconfig: update to version 1.7.2
The previous link did not work here.

Compile-tested on: bcm47xx
Runtime-tested on: bcm47xx

Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
2018-07-07 18:19:39 +02:00
Luis Araneda
8f60c3d571 kernel: remove DEVMEM and DEVKMEM from target's config
These options are handled by generic configuration

Targets that need these options should select KERNEL_DEVMEM
and/or KERNEL_DEVKMEM options on OpenWRT's config

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-07-07 18:19:39 +02:00
Tim Small
e97aaf483c WDR4900v1 remove dt node for absent hw crypto.
The WDR4900v1 uses the P1040 SoC, so the device tree pulls in the
definition for the related P1010 SoC.  However, the P1040 lacks the
CAAM/SEC4 hardware crypto accelerator which the P1010 device tree
defines.  If left defined, this causes the CAAM drivers (if present) to
attempt to use the non-existent device, making various crypto-related
operations (e.g. macsec and ipsec) fail.

This commit overrides the incorrect dt node definition in the included
file.

See also:
 - https://bugs.openwrt.org/index.php?do=details&task_id=1262
 - https://community.nxp.com/thread/338432#comment-474107

Signed-off-by: Tim Small <tim@seoss.co.uk>
2018-07-07 18:19:39 +02:00
Yousong Zhou
191078e83d ca-certificates: ca-bundle: add symlink for openssl default setting
OpenSSL defaults X509_CERT_FILE to /etc/ssl/cert.pem.  This change is
needed for wget-ssl and possibly others to work seamlessly with fresh
ca-bundle installation

Fixes openwrt/packages#6152

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-07-07 18:19:39 +02:00
Antti Seppälä
9f451ec698 kernel: usb: dwc2 DMA alignment fixes
Add two patches submitted for upstream review that significantly improve
the dwc2 driver on openwrt from kernel stability and performance
perspectives.

Fixes: FS#1367

Signed-off-by: Antti Seppälä <a.seppala@gmail.com>
2018-07-07 18:19:39 +02:00
Florian Eckert
c79ef6fbe3 linux: update license tag to use correct SPDX tag
Use SPDX tag.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-07-07 16:12:03 +02:00
Felix Fietkau
d3a7587eb9 toolchain/nasm: fix missing AR/RANLIB variables
Fixes build on macOS

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-07 14:53:26 +02:00
Felix Fietkau
bf136c637c perf: remove linux 4.4 workarounds
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-07 14:53:26 +02:00
Felix Fietkau
c3bdb89e61 kernel: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-07 14:53:26 +02:00
Felix Fietkau
1e6c30690c libubox: update to the latest version
3c1b33b utils: add const_* byteswapping functions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-07 14:53:26 +02:00
Zoltan HERPAI
10e393262c firmware: amd64-microcode: update to 20180524
* New microcode update packages from AMD upstream:
    + New Microcodes:
      sig 0x00800f12, patch id 0x08001227, 2018-02-09
    + Updated Microcodes:
      sig 0x00600f12, patch id 0x0600063e, 2018-02-07
      sig 0x00600f20, patch id 0x06000852, 2018-02-06
  * Adds Spectre v2 (CVE-2017-5715) microcode-based mitigation support,
    plus other unspecified fixes/updates.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-07-07 12:23:00 +02:00
Kevin Darbyshire-Bryant
4bd4ece9ea kmod-sched-cake: bump to latest 20180706
Fixes a potential infinite loop bug when in unlimited (ie not using
built in shaper) mode.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-07 11:10:59 +01:00
Hannu Nyman
7ec931b7f0 tools/ccache: update to 3.4.2
update version and refresh patch

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-07-06 17:50:30 +02:00
Hannu Nyman
55fa8068c4 tools/cmake: update to 3.11.4
Update cmake and refresh patches.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-07-06 17:50:19 +02:00
Ted Hess
0f543883cd toolchain: Replace YASM with NASM
Packages libx264 and ffmpeg are built with ASM options on x86 platforms.
The current libx264 version no longer builds with YASM and requires NASM.
ffmpeg 3.x can be built with either YASM or NASM however, furture 4.x versions
will require NASM.

Signed-off-by: Ted Hess <thess@kitschensync.net>
Acked-by: Rosen Penev <rosenp@gmail.com>
2018-07-05 10:17:06 -04:00
Yousong Zhou
9009efa18b download.mk: enable DownloadMethod/github_archive
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-07-05 01:30:57 +08:00
Yousong Zhou
04b9f85873 scripts/dl_github_archive.py: rename from download.py
- Make the code more GitHub-specific
 - Requires mirror hash to work with .gitattributes
 - Use different API depending on whether PKG_SOURCE_VERSION is a
   complete commit id or other ref types like tags
 - Fix removing symbolic link
 - pre-clean dir_untar for possible leftovers from previous run

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-07-05 01:30:57 +08:00
Yousong Zhou
e48ea13b3b download.mk: add more comments
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-07-05 01:30:57 +08:00
Yousong Zhou
eb6759cc78 fixup-makefile.pl: fixup when PKG_SOURCE is defined elsewhere
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-07-05 01:30:57 +08:00
Luiz Angelo Daros de Luca
b724443f9f elfutils: bump to 0.173
- Removed hacks to use standalone argp as upstream now detects it nicely.
- As we are already installing files, use files from PKG_INSTALL_DIR and
  not PKG_BUILD_DIR
- Only changes Makefile.am as PKG_FIXUP:=autoreconf is in use

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2018-07-04 16:18:08 +02:00
Koen Vandeputte
d0839e020d kernel: bump 4.14 to 4.14.53
Refreshed all patches

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-07-04 14:16:37 +02:00
Koen Vandeputte
01ca20cdfd kernel: bump 4.9 to 4.9.111
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-07-04 14:16:37 +02:00
Christoph Krapp
8722c52b41 ath79: remove bs-partition ro-flag for UniFi AC devices
This removes the read-only flag from the bs (bootselect) partition
on UniFi AC devices. This allows to correct the indicator from which
partition the device is booting its kernel from.

See also:
 - freifunk-gluon/gluon#1301
 - https://bugs.lede-project.org/index.php?do=details&task_id=662

Signed-off-by: Christoph Krapp <achterin@googlemail.com>
2018-07-04 01:20:03 +02:00
Aleksandr V. Piskunov
63c9081c77 ath79: swap TP-Link Archer C7 v2 USB port LED and GPIO names
TP-Link Archer C7 v2 USB port LED and GPIO names are in incorrect order,
i.e. in order to match actual user visible labels, usb1 should be usb2,
and vice versa.
This patch swaps LED and GPIO power control node names.

Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com>
2018-07-04 01:20:03 +02:00
Mathias Kresin
31aa62c5ec ath79: drop mv88e6063 switch driver
Due do a missing KCONFIG isn't selectable nor enabled in the target
kernel config. Drop it for now and enable/add the driver at the time it
is required.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-04 01:20:02 +02:00
Aleksandr V. Piskunov
36fea5a7b9 ipq806x: fix numbering for Netgear R7800 LAN ports
Netgear R7800 switch LAN ports are numbered backwards in LuCI,
i.e. numbering is not corresponding to the actual physical port labels,
patch fixes that.

Signed-off-by: Aleksandr V. Piskunov <aleksandr.v.piskunov@gmail.com>
[merged with existing board using the same config]
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-07-04 01:20:02 +02:00
Romain MARIADASSOU
ce31bdc20c ramips: add support for TL-WA801ND v5
Specification:

- System-On-Chip: MediaTek MT7628NN
- CPU/Speed: 580 MHz
- Flash-Chip: ELM Technology GD25Q64
- Flash size: 8192 KiB
- RAM: 64 MiB
- Wireless No1: SoC-integrated: MT7628N 2.4GHz 802.11bgn

Currently the only method to install openwrt for the first time is via
TFTP recovery. After first install you can use regular updates.

Flash instructions:

1) To flash the recovery image, start a TFTP server with IP address
   192.168.0.66 and serve the recovery image named tp_recovery.bin.
2) Connect your device to the LAN port, then press the WPS and Reset
   button and power it up. Keep pressing the WPS/Reset button for
   10 seconds or until the lock LED is lighting up.
   It will try to download the recovery image and flash it.

It can take up to 2-3 minutes to finish. When it reaches 100%, the
router will reboot itself.

Signed-off-by: Romain MARIADASSOU <roms2000@free.fr>
2018-07-04 01:20:02 +02:00
Maxim Anisimov
7d07bc96b7 ramips: add support for ZyXEL Keenetic Extra II
Specification:
- System-On-Chip: MT7628N/N
- CPU/Speed: 580 MHz
- Flash-Chip: Winbond w25q256
- Flash size: 32768 KiB
- RAM: 128 MiB
- 5x 10/100 Mbps Ethernet
- 4x external, non-detachable antennas
- UART (J1) header on PCB (57600 8n1)
- Wireless No1 (2T2R): SoC-integrated: MT7628N 2.4GHz 802.11bgn
- Wireless No2 (2T2R): On-board chip: MT7612EN 5GHz 802.11ac
- USB: Yes 1 x 2.0
- 4x LED, 3x button

The device supports dual boot mode. So we use only first half of flash.

Flash instruction:

The only way to flash OpenWrt image is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.1.2/24 and tftp server.
2. Rename "openwrt-ramips-mt76x8-zyxel_keenetic-extra-ii-squashfs-factory.bin"
   to "kextra2_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 server, write it to flash and reboot.

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2018-07-04 01:20:02 +02:00
Maxim Anisimov
9e2c28472c ramips: move zyimage define to common Makefile
Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2018-07-04 01:20:02 +02:00
Tobias Schramm
faf64056dd ramips: add support for MikroTik RouterBOARD RBM11g
This commit adds support for the MikroTik RouterBOARD RBM11g.

=Hardware=

The RBM11g is a mt7621 based device featuring one GbE port and one
miniPCIe slot with a sim card socket and USB 2.0.

==Switch==

The single onboard Ethernet port is connected the CPU directly.
The internal switch of the mt7621 SoC is disabled.

==Flash==

The device has one spi nor flash chip. It is a 128 Mbit winbond 25Q128FVS
connected to CS0.

==PCIe==

The board features a single miniPCIe slot. It has a dedicated mini SIM
socket and a USB 2.0 port. Power to the miniPCIe slot is controlled via
GPIO9.

==USB==

There are no external USB ports.

==Power==

The board can accept both, passive PoE and external power via a 2.1 mm
barrel jack (center-positive). The input voltage range is 11-32 V.

==Serial port==

The device does have an onboard UART on an unpopulated header next to the
flash chip:

GND: pin 2
 TX: pin 7
 RX: pin 6

Settings: 115200, 8N1

See below illustration for positioning of the header.

0 = screw hole
* = some pin
T = TX  pin
R = RX  pin
G = GND pin

Pinout:
+---------------
|O
|             __
|            /  \
|            \__/
|
|
|
|               +---+
|               |RAM|
| +--+          |   |
| |**|  <- unpopulated header with UART
| |*T|          +---+
| |R*|        +--------+
| |**|        |        |
| |G*|        |  CPU   |
| +--+        |        |
|    +--+     |        |
|    |  |     +--------+
|    +--+  <- flash chip
|O
|       +-----+
|       |     |
|+--+   |     |
||  |   |     |
+---------------------

=Installation=

To install an OpenWRT image to the device two components must be built:

1. A openwrt initramfs image
2. A openwrt sysupgrade image

===initramfs & sysupgrade image===

Select target devices "Mikrotik RBM11G" in
openwrt menuconfig and build the images. This will create the images
"openwrt-ramips-mt7621-mikrotik_rbm11g-initramfs-kernel.bin" and
"openwrt-ramips-mt7621-mikrotik_rbm11g-squashfs-sysupgrade.bin" in the
output directory.

==Installing==

**Make sure to back up your RouterOS license in case you do ever want to
go back to RouterOS using "/system license output" and back up the
created license file.**

When rebooted the board will try booting via ethernet first. If your
board does not boot via ethernet automatically you will have to attach
to the serial port and set ethernet as boot device within RouterBOOT.

1. Set up a dhcp server that points the bootfile to tftp server serving
   the "openwrt-ramips-mt7621-mikrotik_rbm11g-initramfs-kernel.bin"
   initramfs image
2. Connect to ethernet port on board
3. Power on the board
4. Wait for OpenWrt to boot

Right now OpenWrt will be running with a SSH server listening. Now
OpenWrt must be flashed to the devices flash:

1. Copy "openwrt-ramips-mt7621-mikrotik_rbm11g-squashfs-sysupgrade.bin"
   to the device using scp.
2. Write openwrt to flash using "sysupgrade
   openwrt-ramips-mt7621-mikrotik_rbm11g-squashfs-sysupgrade.bin"

Once the flashing completes the board will reboot. Disconnect from the
devices ethernet port or stop the DHCP/TFTP server to prevent the device
from booting via ethernet again.
The device should now boot straight to OpenWrt.

Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-07-04 01:20:02 +02:00
Michael Kuron
d0b89e48d7 lantiq: enlarge AVM Fritz!Box 3370 flash
Increase the available flash memory size in AVM Fritz!Box 3370 by
incorporating the unused extra partitions located after the ubi partition.

Note that users upgrading from a previous OpenWRT version need to
re-install from the boot loader to pick up the new partition layout.

Available flash space for rootfs+overlay increases from 48MB to 124MB.

Reverting to the OEM firmware is still possible (via the recovery utility
provided by AVM) as the OEM firmware appears to reformat the config and
nand-filesystem partitions upon first boot if necessary. The
reserved-kernel and reserved-filesystem partitions are overwritten by the
OEM firmware when installing an update, so their contents do not matter.

Boot loader and device-specific information (MAC addresses, calibration
data, etc.) are not located in NAND flash and remain unharmed by this
changed.

Tested with OEM firmware 06.54 on device with HWRevision 5 and Micron
flash chip.

Signed-off-by: Michael Kuron <m.kuron@gmx.de>
2018-07-04 01:20:02 +02:00
Mathias Kresin
f72605f70e lantiq: backport stp-xway get callback implementation
To keep the status of a LED connected to the stp during boot, the get
callback is required. If the callback is missing and the LED default
state is set to keep in the devicetree, the gpio led driver errors out
during load.

Fixes: FS#1620

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-04 01:20:01 +02:00
Hyeonsik Song
c2766270ef firmware-utils: tplink-safeloader: add calloc error handling
Signed-off-by: Hyeonsik Song <blogcin@naver.com>
2018-07-04 01:20:01 +02:00
Mathias Kresin
eccde89aa4 kernel: fix AT8032 PHY phy id mask
Don't mask bit 4 of the AT8022 phy id. If bit 4 of the AT8022 phy id
(0x004dd023) is masked, it will match the phy id of the AR8327 switch
(0x004dd033) as well.

It results in applied at803x driver settings/callbacks, which will at
least limit the AR8327 phys to 100MBit operation instead of the possible
1000MBit.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-07-04 01:19:05 +02:00
Kevin Darbyshire-Bryant
89b59994eb build: ASLR hardening use $(FPIC)
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-03 14:19:10 +01:00
Kevin Darbyshire-Bryant
900d86766b toolchain: gdb: enable TUI
The GDB Text User Interface (TUI) is a terminal interface
which uses the curses library to show the source file,
the assembly output, the program registers and GDB
commands in separate text windows.

In other words it's a friendlier interface for idiots like me!

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-03 14:19:10 +01:00
Kevin Darbyshire-Bryant
fbf475403b dnsmasq: bump to latest patches on 2.80rc2
Refresh patches and backport upstream to current HEAD:

a997ca0 Fix sometimes missing DNSSEC RRs when DNSSEC validation not enabled.
51e4eee Fix address-dependent domains for IPv6.
05ff659 Fix stupid infinite loop introduced by preceding commit.
db0f488 Handle some corner cases in RA contructed interfaces with addresses changing interface.
7dcca6c Warn about the impact of cache-size on performance.
090856c Allow zone transfer in authoritative mode whenever auth-peer is specified.
cc5cc8f Sane error message when pcap file header is wrong.
c488b68 Handle standard and contructed dhcp-ranges on the same interface.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-03 13:58:55 +01:00
Kevin Darbyshire-Bryant
abeae38dbb kmod-sched-cake: bump to latest cake
This bumps to the latest & possibly greatest cake, sadly it's still
inedible but from an SQM point of view quite tasty :-)

Main tweaks since previous bump, improved ack_filter, some extra stats,
support for 64bit netlink parameters (higher rates/byte counters)

0520a6c Fix NAT option handling
8da93e1 Make sure we always call qdisc_watchdog_init() in cake_init()
f65daf6 Fix mismatched parenthesis
51d4ab3 Change flag handling to be safe even when mixing with non-eligible ACKs
f2ea091 ack_filter: protect DCTCP with stricter filtering of ECE marks
28b4560 ACK filter: Handle wrapping sequence numbers and DSACKs
73f62d9 Use the right PAD attribute for options
5969c14 Use 32 for tin backlog
e289f31 Move all the u64 netlink attributes together
36180a0 Check ACK seqno before parsing SACKs
91bbc01 Merge branch 'mine' into cobalt
58c55ec Rework SACK check to compare the ranges of two SACKs
9a5d593 ack_filter: Add proper handling of SACKs
eca95d4 ack_filter: short-circuit TCP flag check
d50a246 compat: backport some ktime functions
7b7ad11 compat: define tcpopt_fastopen for pre-4.1 kernels
ca54cdb Fix ktime compare
9d7dcc0 ack filter: Parse TCP options and only drop safe ones
b119882 Return EOPNOTSUPP on NAT option if conntrack is not available
842d7f0 Don't try to pad stats with tin_stats padding
bd46dc2 Use 64-bit divide helper
8e41bf0 Make sure we never drop SACKs when filtering ACKs
66e5d60 Avoid comparing ktime_t to scalar values
7fab017 Actually commit the ktime_t changes
fca6d13 Switch to ktime_t and get rid of cobalt.h
6f7e5af Can't use do_div with 64-bit divisors

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-03 11:40:18 +01:00
Kevin Darbyshire-Bryant
a2165f936e iproute2: tc: update support for cake
Bump iproute2/tc support of cake.

Add support for cake's change to u64 attribute passing for certain
attributes (rate & byte counts)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-03 11:40:18 +01:00
Kevin Darbyshire-Bryant
3698b34a00 kernel: gen_stats: Fix netlink stats dumping in the presence of padding
Backport hot off the press upstream netlink patch.  Fixes stats display
from CAKE qdisc on MIPS allowing us to bump CAKE to latest version.

The gen_stats facility will add a header for the toplevel nlattr of type
TCA_STATS2 that contains all stats added by qdisc callbacks. A reference
to this header is stored in the gnet_dump struct, and when all the
per-qdisc callbacks have finished adding their stats, the length of the
containing header will be adjusted to the right value.

However, on architectures that need padding (i.e., that don't set
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS), the padding nlattr is added
before the stats, which means that the stored pointer will point to the
padding, and so when the header is fixed up, the result is just a very
big padding nlattr. Because most qdiscs also supply the legacy TCA_STATS
struct, this problem has been mostly invisible, but we exposed it with
the netlink attribute-based statistics in CAKE.

Fix the issue by fixing up the stored pointer if it points to a padding
nlattr.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-07-03 11:40:18 +01:00
Felix Fietkau
09b6755946 ramips: limit dictionary size for lzma compression
In some cases, recent builds fail to boot from flash with at least some
MT7621 based devices. The error message is:
"LZMA ERROR 1 - must RESET board to recover"
Booting the same kernel via TFTP works for some reason.

Through testing I figured out that limiting the LZMA dictionary size
seems to prevent these errors

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-03 11:18:39 +02:00
Jo-Philipp Wich
b54bef2058 uhttpd: update to latest Git head
db86175 lua: honour size argument in recv() function
d3b9560 utils: add uh_htmlescape() helper
8109b95 file: escape strings in HTML output
393b59e proc: expose HTTP Origin header in process environment
796d42b client: flush buffered SSL output when tearing down client ustream

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-07-03 06:59:13 +02:00
Hans Dedecker
afac2a2dd6 ebtables: update to latest git 2018-06-27
48cff25 build: drop install -o/-g root
53d7e7a extensions: ebt_string: take action if snprintf discards data

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-02 17:33:55 +02:00
Hans Dedecker
e705342bf8 toolchain/glibc: update to latest 2.26 commit
74d16a57a3 Check length of ifname before copying it into to ifreq structure.
3aaf8bda00 getifaddrs: Don't return ifa entries with NULL names [BZ #21812]
f958b45d52 Use _STRUCT_TIMESPEC as guard in <bits/types/struct_timespec.h> [BZ #23349]
81b994bd83 Fix parameter type in C++ version of iseqsig (bug 23171)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-07-02 14:31:18 +02:00
Felix Fietkau
29b2199eb0 build: fix target metadata scan dependencies
Move SCAN_DEPS to scan.mk to eliminate redundancy with scripts/feeds
Add image/*.mk to SCAN_DEPS for targets to pick up newly added devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-02 14:27:06 +02:00
Felix Fietkau
516d995d6a build: ensure that iwinfo is selected when building for multiple devices
extra_packages needs to be added there, like on profiles and target
packages lists

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-07-02 14:27:04 +02:00
John Crispin
433d71e73e fw3: update to latest git HEAD
72684e5 firewall3: Fix GCC8 warnings by replacing sprintf with snprintf

Signed-off-by: John Crispin <john@phrozen.org>
2018-07-02 07:23:42 +02:00
Luis Araneda
efa112261b zynq: remove config options handled by generic
The options are now handled for all targets by
the generic configuration

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-07-02 07:12:48 +02:00
Rosen Penev
1f2612a4dd samba36: Disable external libtdb and libtevent
This was causing issues recently as samba36 is not API compatible with the
libtdb in the packages repo. It shouldn't be using it anyway. Nor tevent.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-07-02 07:12:41 +02:00
Rosen Penev
f23271f3b4 usbutils: Switch to Fedora usbutils
The Gentoo GitHub mirror went down. One benefit of Fedora's usb.ids file
is that it's versioned.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-07-02 07:12:34 +02:00
Peter Lundkvist
781ad46206 ath79: add support for TP-Link RE450 v2
TP-Link RE450 v2 is a dual band router/range-extender
based on Qualcomm/Atheros QCA9563 + QCA9880.

Specification:

- 775 MHz CPU
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 3T3R 5 GHz
- 1x 10/100/1000 Mbps Ethernet (AR8033 PHY)
- 7x LED, 4x button
- UART header on PCB (needs unmounted R64 & R69 0201 resistors/jumpers)

Flash instruction:
Apply factory image in OEM firmware web-gui.

U-Boot does not seem to have any recovery functions, so
debricking requires connection via UART.

Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
2018-07-02 07:05:33 +02:00
Koen Vandeputte
f4ac88b509 kernel: bump 4.14 to 4.14.52
Refreshed all patches

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-07-02 07:04:48 +02:00
Koen Vandeputte
8e622aae58 kernel: bump 4.9 to 4.9.110
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-07-02 07:04:34 +02:00
Rocco Folino
4ff019722c ath79: port TP-Link TL-WR741ND v4 and TL-WR740ND v4
This patch ports the TP-Link TL-WR741ND v4 and TL-WR740ND v4 to the
ath79 target.

Because the two devices share the same hw layout, this patch adds a common
.dtsi which is included by the two .dts.

Signed-off-by: Rocco Folino <rocco@folino.io>
2018-07-02 07:03:21 +02:00
Rocco Folino
9b575288eb ath79: add pinmux to ar9330
This patch adds the pinmux support to the ar9330 used to disable the
JTAG or to enable switch LEDs

Signed-off-by: Rocco Folino <rocco@folino.io>
2018-07-02 07:00:20 +02:00
Lev
3d6f57f3c6 ramips: fix wizfi630a swapped lan/wan port
The order of the Ethernet ports were mixed up.
This commit fixes the order to be aligned with the physical layout.

Signed-off-by: Lev <leventelist@gmail.com>
2018-07-02 06:59:31 +02:00
Yousong Zhou
e15565a01c download.mk: restore the old dl_method implementation
Seems like the python download.py dl_method call causes serious
performance regression for fresh "make defconfig" as reported in
FS#1621.  GitHub tarball download will also be disabled with this

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-06-29 13:54:17 +08:00
Alexander Couzens
b06c447c5f swconfig: swlib_map_settings(): change return type to void
The return value of the function isn't used anywhere.
Fixes missing return value, CID 1329717.

Found-by: Coverity
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-06-29 05:46:25 +02:00
Alexander Couzens
e37ad4e5ca swconfig: fix un-initialized return value
Fix CID 1330844

Found-by: Coverity
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-06-29 05:45:20 +02:00
Adrian Schmutzler
4456dd4660 ath79: add support for Unifi AC Mesh
The Unifi AC Mesh is equivalent to the Unifi AC Lite. However,
for setting certain parameters with the flashed device it is
helpful that the devices know their variant (e.g. automatically
setting antenna gain for the different antennas in Lite and Mesh).

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2018-06-28 20:31:48 +02:00
Dmytro Smyrnov
40218a2632 ath79: add support for more AR7241 TP-Link boards
Its common AP99(AR7241) platform with following devices:

  TP-Link TL-WR841N/ND v7 (SoC AR7241 / Wifi AR9287 / without USB)
  TP-Link TL-MR3220 v1 (SoC AR7241 / Wifi AR9285 / USB support)
  TP-Link TL-MR3420 v1 (SoC AR7241 / Wifi AR9287 / USB support)

Signed-off-by: Dmytro Smyrnov <dioptimizer@hotmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-28 20:31:47 +02:00
Lucian Cristian
25070f7106 ath79: small wr1043nd-v4 fixes
- fix sysupgrade check
- move usb to v4 dts because v5 doesn't have it
- make wan mac address behave like ar71xx target
- add orange wan led support, it can be userspace activated like:

  on:
  echo default-on > /sys/class/leds/tp-link\:orange\:wan/trigger

  off:
  echo none > /sys/class/leds/tp-link\:orange\:wan/trigger

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-28 20:31:03 +02:00
Lucian Cristian
7dd3d7e1d3 ath79: add support for Ubiquiti UniFi AC-Pro
rework the dts to a common unifi-ac dtsi
pro network is connected via phy0 and has usb ports
lite network is connected via phy4 without usb ports

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-28 18:39:57 +02:00
Adrian Schmutzler
56fddc2577 ath79: sync naming of Ubiquiti devices
Use a Unifi AC Lite board-/image name consistent with other Ubiquiti
devices.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2018-06-28 18:39:57 +02:00
Chuanhong Guo
c463320812 ath79: Remove all memory nodes defined in dts
This target can automatically detect the correct memory size and we've
been using it for long in ar71xx.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-06-28 18:39:57 +02:00
Mathias Kresin
a570933999 treewide: gpio-export: add error handling
Check if the GPIO is valid (or set at all). If no GPIO is set in the
devicetree, a gpiolib related kernel warning + stacktrace is shown during
boot and gpio-export reports GPIOs as exported albeit none really is.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-28 18:39:57 +02:00
Mathias Kresin
750e4b62b1 ipq806x: drop gpio export patch
The hack isn't used by any board.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-28 18:39:57 +02:00
Stefan Lippers-Hollmann
7c7ca66109 ipq806x: switch the NBG6817 wlan LEDs from amber to white
The original device support patch configured the amber wlan LEDs (which
are meant as error indicator by the OEM) controlled by the SOC's GPIO
as wlan traffic indicators, as the correct white wlan LEDs are
connected to GPIOs controlled by the QCA9984/ ath10k wlan cards were
not accessible. The recent addition of GPIO/ LED support to ath10k now
makes it possible to use the correct white LEDs instead - and
"mac80211: ath10k: use tpt LED trigger by default" also enables them by
default. While both LEDs are independent of each other (two separate
LEDs sharing one light tunnel), triggering both on wlan traffic is not
the intended behaviour (bright yellow light).

Tested on the ZyXEL NBG6817.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-06-28 18:39:57 +02:00
Andrey Jr. Melnikov
19c7e950af ramips: move mt7620n i2c_pins definition to right place
Move to i2c pins pinmux node to the pinctrl node.

Fixes: a0685deec4 ("ramips: Add i2c support for mt7620n")

Signed-off-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
[fix commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-28 18:39:57 +02:00
Tony Ambardar
b701d78105 qos-scripts: fix uci callback handling
The previous callback code was fragile, dependent on some UCI callback
bugs and side-effects now fixed in master commit 73d8a6ab.

Update scripts to use callbacks where appropriate and necessary, while
using normal UCI config parsing for all else. This results in smaller,
simpler, more robust code. Use callbacks in generate.sh to only process
'interface' defaults and the varying entries for 'reclassify', 'default'
and 'classify' sections. Also switch qos-stat to use non-callback UCI
handling.

The current changes work independently of 73d8a6ab (i.e. both before and
after), and are consistent with UCI config parsing documentation.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-06-28 16:41:45 +02:00
Hannu Nyman
7b74b40fe9 ipq806x: remove "firmware" partition definition from netgear routers
Remove the "firmware" partition definition from the DTS of R7800
to fix sysupgrade.

Commit 4645a6d3 defined CONFIG_MTD_SPLIT_UIMAGE_FW=y for ipq806x
and that causes mtd to misbehave as additional kernel and ubi
partitions are detected from inside the "firmware" partition.
  [    1.111324] 0x000001480000-0x000001880000 : "kernel"
  [    1.121005] 0x000001880000-0x000007900000 : "ubi"
  [    1.283912] 0x000007900000-0x000008000000 : "reserve"
  [    1.296407] 0x000001480000-0x000007900000 : "firmware"
  [    1.468043] no rootfs found after FIT image in "firmware"
  [    2.426860] 2 uimage-fw partitions found on MTD device firmware
  [    2.426931] 0x000001480000-0x000001880000 : "kernel"
  [    2.440420] 0x000001880000-0x000007900000 : "ubi"

Both kernel and ubi are already defined in DTS, so this duplication
leads into errors in sysupgrade:
  Writing from <stdin> to kernel ...
  ubiattach: error!: strtoul: unable to parse the number '6 mtd10'
  ubiattach: error!: bad MTD device number: "6 mtd10"

The partition is defined to same area as kernel+ubi, and is not
needed for sysupgrade anymore. Remove it to fix things.

Only tested for the R7800 but all of them should behave equal.

Fixes: FS#1617

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
[squashed commits, add "tested on" note]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-27 22:11:06 +02:00
Jo-Philipp Wich
681e825f8f build: include package directory in sha256sums when running on buildbot
In order to be able to better compare files to sync in the future, include
all BIN_DIR subdirectories in the checksum calculation.

To not break existing applications, restrict the recursive checksumming to
CONFIG_BUILDBOT for now.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-27 18:54:09 +02:00
Yousong Zhou
6e3c2d757a scripts/download.py: use a more terse api for fetching git commit date
The previous api [1] includes in its response patch data among other
things, as such the response size can vary and be big.  Use another
api[2] to improve it a bit

 [1] Get a single commit, Repositories, https://developer.github.com/v3/repos/commits/#get-a-single-commit
 [2] Git Commits, Git Data, https://developer.github.com/v3/git/commits/#get-a-commit

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-06-27 15:32:01 +08:00
INAGAKI Hiroshi
0efd0308a0 ramips: add switch port index for I-O DATA WN-GX300GR
WN-GX300GR has 5x RJ45 ports (port 0-4), and these ports are
orderd on the device as follows:
4 3 2 1 0

1-4: lan
0: wan

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-27 08:42:54 +02:00
Alberto Bursi
e13d9cd07f uboot-kirkwood: fix malformed boot configuration
With current uboot default configuration the bootloader will
fail to start the OpenWrt firmware with the following error:
-----
unexpected character 'b' at the end of partition
Error initializing mtdparts!
incorrect device type in ubi
Partition ubi not found!
Error, no UBI device/partition selected!
Wrong Image Format for bootm command
Error occured, error code = 112
-----

If the uboot configuration is examined with printenv
I can see that mdtparts line (on a nsa310) is wrong:
-----
mtdparts=mtdparts=orion_nand:0x0c0000(uboot),
0x80000(uboot_env),0x7ec0000(ubi)bootargs_root=
----

The "bootargs_root=" that was appended to it should not be there.

Fix the issue by adding a \0 line terminator at the end of affected lines,
mimicking what is also done by uboot upstream.

This issue was detected and confirmed on a nsa310, nsa325 and
a pogoplug v4, but it's not hardware-specific, so apply the same fix
to other devices as well.

Note that the issue is with the uboot's integrated boot configuration,
which is not used unless the uboot configuration in flash is unavailable
(erased or corrupted), which happens only on first time installation,
or if the user deletes the uboot configuration when upgrading uboot.
People just upgrading from an older uboot without erasing their previous
uboot configuration stored in flash would not have noticed this issue.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2018-06-27 08:42:54 +02:00
Alberto Bursi
ccd1dc3d20 uboot-kirkwood: fix whitespaces
remove whitespaces from the patches

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2018-06-27 08:42:54 +02:00
Lucian Cristian
4ec9763ee9 firmware-utils: tplink-safeloader: switch tl-wr1043nd-v4 to dynamic partitions
Use the new dynamic partition split in tplink-safeloader so we no longer
have to worry about kernel size increases.

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-27 08:42:54 +02:00
Mathias Kresin
52a9edb1bf base-files: add menuconfig option for HOME_URL
Add a menuconfig option to set the HOME_URL exposed in
/usr/lib/os-release independent from the
LEDE_DEVICE_MANUFACTURER_URL.

Fixes: FS#1123

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-27 08:40:34 +02:00
Yousong Zhou
75ab064d2b build: download code from github using archive API
A new python script scripts/download.py is added to fetch tarballs using
GitHub archive API [1], then repack in a reproducible way same as the
current DownloadMethod/git

GitHub imposes a 60 reqs/hour rate limit on unauthenticated API
access[2].  This affects fetching commit date for feeding tar --mtime=
argument.  However, observation indicates that archive download is NOT
subject to this limit at the moment.  In the rare cases where download
fails because of this, we will falback to using DownloadMethod/git

The missing piece in the GitHub API is that it cannot provide in the
tarball dependent submodules's source code.  In that case, the
implementation will also fallback to using DownloadMethod/git

 [1] Get archive link, https://developer.github.com/v3/repos/contents/#get-archive-link
 [2] Rate limiting, https://developer.github.com/v3/#rate-limiting

v2 <- v1:

 - allow passing multiple urls with --urls argument
 - add commit ts cache.  can be helpful on retry

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-06-27 10:51:27 +08:00
Kevin Darbyshire-Bryant
3ce11588f6 wireguard: bump to 0.0.20180625
dfd9827 version: bump snapshot
88729f0 wg-quick: android: prevent outgoing handshake packets from being dropped
1bb9daf compat: more robust ktime backport
68441fb global: use fast boottime instead of normal boottime
d0bd6dc global: use ktime boottime instead of jiffies
18822b8 tools: fix misspelling of strchrnul in comment
0f8718b manpages: eliminate whitespace at the end of the line
590c410 global: fix a few typos
bb76804 simd: add missing header
7e88174 poly1305: give linker the correct constant data section size
fd8dfd3 main: test poly1305 before chacha20poly1305
c754c59 receive: don't toggle bh

Compile-tested-for: ath79 Archer C7 v2
Run-tested-on: ath79 Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-26 20:10:54 +01:00
John Crispin
d8981133b2 mac80211: make rtl8xxxu buils again
we only wanted to drop rtl8xxxue support

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-26 16:00:33 +02:00
John Crispin
66c5696cdf mac80211: rtl8xxxu: drop support patches
After a very enlightening but unfortunately far too short exchange with Jes
we mutually agreed to drop the patches. They are unfortunately not ready
yet.

Acked-by: Rafał Miłecki <rafal@milecki.pl>
Signed-off-by: John Crispin <john@phrozen.org>
2018-06-26 15:45:30 +02:00
Hans Dedecker
b7ef10cbf0 odhcpd: update to latest git HEAD
81a281e dhcpv6-ia: fix border assignment size setting
a2ffc59 dhcpv6-ia: fix status code for not on link IAs
5b087a6 dhcpv6-ia: improve error checking in assign_pd()
c9114a1 config: fix wrong assignment
bb8470f dhcpv4: delay forced renew transaction start
62a1b09 dhcpv4: fix DHCP address space logic
d5726ff dhcpv4: improve logging when sending DHCP messages
9484351 odhcpd: call handle_error when socket error can be retrieved
c45e2eb dhcpv6: fix out of bounds write in handle_nested_message()
c2ff5af dhcpv6-ia: log renew messages as well
676eb38 router: fix possible segfault in send_router_advert()
392701f odhcpd: fix passing possible negative parameter
029123b treewide: switch to C-code style comments
6b79748 router: improve error checking
12e21bc netlink: fix incorrect sizeof argument
d7aa414 dhcpv6: improve error checking in dhcpv6_setup_interface()
373495a ubus: fix invalid ipv6-prefix json
79d5e6f ndp: improve error checking
d834ae3 dhcpv4: fix error checking in dhcpv4_setup_interface()
f2aa383 dhcpv4: fix out of bound access in dhcpv4_put
4591b36 dhcpv4: improve error checking in dhcpv4_setup_interface()
4983ee5 odhcpd: fix strncpy bounds

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-26 14:48:25 +02:00
Daniel Engberg
1b46bce850 package/utils/e2fsprogs: Update to 1.44.2
Update e2fsprogs to 1.44.2

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-26 10:26:05 +02:00
Christian Lamparter
82618062cf ipq40xx: add support for the ZyXEL NBG6617
This patch adds support for ZyXEL NBG6617

Hardware highlights:

SOC:    IPQ4018 / QCA Dakota
CPU:    Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7
DRAM:   256 MiB DDR3L-1600/1866 Nanya NT5CC128M16IP-DI @ 537 MHz
NOR:    32 MiB Macronix MX25L25635F
ETH:    Qualcomm Atheros QCA8075 Gigabit Switch (4 x LAN, 1 x WAN)
USB:    1 x 3.0 (via Synopsys DesignWare DWC3 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
INPUT:  RESET Button, WIFI/Rfkill Togglebutton, WPS Button
LEDS:   Power, WAN, LAN 1-4, WLAN 2.4GHz, WLAN 5GHz, USB, WPS

Serial:
	WARNING: The serial port needs a TTL/RS-232 3.3v level converter!
	The Serial setting is 115200-8-N-1. The 1x4 .1" header comes
	pre-soldered. Pinout:
	  1. 3v3 (Label printed on the PCB), 2. RX, 3. GND, 4. TX

first install / debricking / restore stock:
 0. Have a PC running a tftp-server @ 192.168.1.99/24
 1. connect the PC to any LAN-Ports
 2. put the openwrt...-factory.bin (or V1.00(ABCT.X).bin for stock) file
    into the tftp-server root directory and rename it to just "ras.bin".
 3. power-cycle the router and hold down the the WPS button (for 30sek)
 4. Wait (for a long time - the serial console provides some progress
    reports. The u-boot says it best: "Please be patient".
 5. Once the power LED starts to flashes slowly and the USB + WPS LEDs
    flashes fast at the same time. You have to reboot the device and
    it should then come right up.

Installation via Web-UI:
 0. Connect a PC to the powered-on router. It will assign your PC a
    IP-address via DHCP
 1. Access the Web-UI at 192.168.1.1 (Default Passwort: 1234)
 2. Go to the "Expert Mode"
 3. Under "Maintenance", select "Firmware-Upgrade"
 4. Upload the OpenWRT factory image
 5. Wait for the Device to finish.
    It will reboot into OpenWRT without any additional actions needed.

To open the ZyXEL NBG6617:
 0. remove the four rubber feet glued on the backside
 1. remove the four philips screws and pry open the top cover
    (by applying force between the plastic top housing from the
    backside/lan-port side)

Access the real u-boot shell:
ZyXEL uses a proprietary loader/shell on top of u-boot: "ZyXEL zloader v2.02"
When the device is starting up, the user can enter the the loader shell
by simply pressing a key within the 3 seconds once the following string
appears on the serial console:

|   Hit any key to stop autoboot:  3

The user is then dropped to a locked shell.

|NBG6617> HELP
|ATEN    x[,y]     set BootExtension Debug Flag (y=password)
|ATSE    x         show the seed of password generator
|ATSH              dump manufacturer related data in ROM
|ATRT    [x,y,z,u] RAM read/write test (x=level, y=start addr, z=end addr, u=iterations)
|ATGO              boot up whole system
|ATUR    x         upgrade RAS image (filename)
|NBG6617>

In order to escape/unlock a password challenge has to be passed.
Note: the value is dynamic! you have to calculate your own!

First use ATSE $MODELNAME (MODELNAME is the hostname in u-boot env)
to get the challange value/seed.

|NBG6617> ATSE NBG6617
|012345678901

This seed/value can be converted to the password with the help of this
bash script (Thanks to http://www.adslayuda.com/Zyxel650-9.html authors):

- tool.sh -
ror32() {
  echo $(( ($1 >> $2) | (($1 << (32 - $2) & (2**32-1)) ) ))
}
v="0x$1"
a="0x${v:2:6}"
b=$(( $a + 0x10F0A563))
c=$(( 0x${v:12:14} & 7 ))
p=$(( $(ror32 $b $c) ^ $a ))
printf "ATEN 1,%X\n" $p
- end of tool.sh -

|# bash ./tool.sh 012345678901
|
|ATEN 1,879C711

copy and paste the result into the shell to unlock zloader.

|NBG6617> ATEN 1,0046B0017430

If the entered code was correct the shell will change to
use the ATGU command to enter the real u-boot shell.

|NBG6617> ATGU
|NBG6617#

Co-authored-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-26 08:57:26 +02:00
Sibren Vasse
ba74b45476 ath79: add support for TP-Link Archer c7 v2
Signed-off-by: Sibren Vasse <github@sibrenvasse.nl>
2018-06-26 08:57:26 +02:00
Lucian Cristian
2a7e03af37 ath79: add tl-wr2543-v1 support
to switch between wlan leds we need a userspace implementation

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-26 08:57:26 +02:00
Philip Prindeville
d375d5fafe iperf3: update to 3.6
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-06-26 08:57:25 +02:00
Alin Nastac
ab07ae2f27 netfilter: add bpf match support
Add xt_bpf modules to {kmod-ipt,iptables-mod}-filter.

Match using Linux Socket Filter. Expects a BPF program in decimal
format. This is the format generated by the nfbpf_compile utility.

Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
2018-06-26 08:57:25 +02:00
Kevin Darbyshire-Bryant
094d49cddf kernel: bump 4.14 to 4.14.51
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Refresh patches.

Remove patch that can be reverse applied:
mvebu/patches-4.14/530-ATA-ahci_mvebu-enable-stop_engine-override.patch
mvebu/patches-4.14/531-ATA-ahci_mvebu-pmp-stop-errata-226.patch

Update patch that no longer applied:
ipq806x/patches-4.14/0035-clk-mux-Split-out-register-accessors-for-reuse.patch

Compiled-tested-for: lantiq, ramips
Run-tested-on: lantiq BT hh5a, ramips MIR3g

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Michael Yartys <michael.yartys@protonmail.com>
Tested-by: Rosen Penev <rosenp@gmail.com>
2018-06-26 08:57:21 +02:00
Zoltan HERPAI
31c26cece3 ath79: add support for ON Networks N150R
This is a rebranded Netgear WNR612v2, specs are the same.

 - Atheros AR7240 (Python) @400MHz
 - flash 4MB
 - ram 32MB
 - ethernet 10/100: 1xwan + 2xlan (only two)
 - radio AR9285

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-06-26 07:05:44 +02:00
Zoltan HERPAI
51dd8ec62f ath79: add Netgear WNR612 v2
Netgear WNR612 v2:
 - cpu Atheros AR7240 (Python) @400MHz
 - flash 4MB
 - ram 32MB
 - ethernet 10/100: 1xwan + 2xlan (only two)
 - radio AR9285

As there is a rebranded WNR612v2 called ON Networks N150R, add
a dtsi which includes all device support, and add a separate dts
for the device only (with a separate one for the subsequent N150R).

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-06-26 07:05:30 +02:00
Alex Maclean
97da92b127 firmware-utils: tplink-safeloader: switch RE350 to dynamic partitions
Use the new dynamic partition split in tplink-safeloader so we no longer
have to worry about kernel size increases.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-26 07:05:00 +02:00
Alex Maclean
2f23a0583a ramips: RE350: add rootfs offset to header
Have mktplinkfw fill in the rootfs offset so the firmware splitter can
find it without aligning to erase blocks.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-26 07:04:43 +02:00
Alex Maclean
408c54b02f firmware-utils: tplink-safeloader: add dynamic partitions
Add support to dynamically split the firmware partition into os-image
and file-system partitions. This is done by replacing those entries in
the partition table with a single unified firmware partition, which is
then split according to actual kernel image size.

The factory image will have the file-system partition aligned to a 64K
erase block, but the sysupgrade image skips this and aligns only the
JFFS2 EOF marker to squeeze out more space.

This should prevent further creeping updates to the kernel partition
size while maximizing space for the overlay filesystem on smaller
devices.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-26 07:04:09 +02:00
Alex Maclean
0a2f21fa71 firmware-utils: mktplinkfw: add rootfs offset for combined images
Add an option (-O) to calculate rootfs offset for combined images.

This is needed for the TP-Link mtdsplit driver to locate the rootfs
when the start is not aligned to an erase block. This will be the
case for sysupgrade images produced by tplink-safeloader with upcoming
dynamic partition splitting.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-26 07:03:57 +02:00
Stijn Tintel
34e22653ac mac80211: enable ath10k LED support by default
Commit 61d57a2f88 adds ath10k LED
support, but doesn't add an option to actually enable it.

After enabling this option, a LED named ath10k-phy0 appears in sysfs,
and a trigger can be assigned to it. Since 60deb3cdef the default set
trigger is the tpt one.

Enable it by default, as most devices using ath10k chips shouldn't be
severely space-constrained. There are likely many devices that can
benefit from having it enabled, like my testing device.

Before:
   text    data     bss     dec     hex filename
 245311    8899      16  254226   3e112 ath10k_core.ko

After:
   text    data     bss     dec     hex filename
 245979    8899      16  254894   3e3ae ath10k_core.ko

Tested on a D-Link DAP-2695-A1 (ar71xx).

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-06-25 22:00:05 +02:00
Mathias Kresin
60deb3cdef mac80211: ath10k: use tpt LED trigger by default
Use the tpt LED trigger for each created phy led. Ths way LEDs attached
to the ath10k GPIO pins are indicating the phy status and blink on
traffic.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-25 20:52:18 +02:00
Franz Flasch
8375623a06 ramips: add support for TP-Link Archer C2
Specification:

- System-On-Chip: MT7620A
- CPU/Speed: 580 MHz
- Flash-Chip: Winbond 25Q64BVSIG
- Flash size: 8192 KiB
- RAM: 64 MiB
- Wireless No1: SoC-integrated: MT7620A 2.4GHz 802.11bgn
- Wireless No2: On-board chip: MT7610EN 5GHz 802.11ac
- Switch: RTL8367RB Gigabit Switch
- USB: Yes 1 x 2.0

Preparing a TFTP recovery image for initial flashing:

Currently the only method to install openwrt for the first time is via
TFTP download in u-boot. After first install you can use regular updates.
WARNING: This method also overwrites the bootloader partition!

Create a TFTP recovery image:

1) Download a stock TP-Link Firmware file here:
     https://www.tp-link.com/en/download/Archer-C2_V1.html#Firmware
2) Extract u-boot from the binary file:
     #> dd if=c2v1_stock_firmware.bin of=c2v1_uboot.bin bs=1 skip=512 count=131072
3) Now merge the sysupgrade image and the u-boot into one binary:
     #> cat c2v1_uboot.bin openwrt-squashfs-sysupgrade.bin > ArcherC2V1_tp_recovery.bin

The resulting image can be flashed via TFTP recovery mode.

Flash instructions:

1) To flash the recovery image, start a TFTP server from IP address
   192.168.0.66 and serve the recovery image named
   ArcherC2V1_tp_recovery.bin.
2) Connect your device to the LAN port, then press the WPS/Reset button
   and power it up. Keep pressing the WPS/Reset button for 10 seconds.
   It will try to download the recovery image and flash it.

It can take up to 20-25 minutes to finish. When it reaches 100%, the
router will reboot itself.

Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Franz Flasch <franz.flasch@gmx.at>
2018-06-25 20:52:18 +02:00
Franz Flasch
abb7524683 ramips: fix ZyXEL Keenetic Viva switch config
The rtl8367b driver never supported a mdio property and it is quite
likely that the switch never worked for the board.

Use the mii-bus property instead to manage the switch via a mdio bus.

Signed-off-by: Franz Flasch <franz.flasch@gmx.at>
2018-06-25 20:52:18 +02:00
Franz Flasch
d4ac26ec49 kernel: rtl8366-smi: add Realtek switch management via mii-bus
Current version of rtl8366-smi module only supports Realtek switch
managment via two gpio lines. This adds Realtek switch
management via mii_bus. Tested on a Tp-link Archer C2 v1 (Mediatek
SoC mt7620a based)

dts-file configuration should look like this:

rtl8367rb {
	compatible = "realtek,rtl8367b";
	realtek,extif1 = <1 0 1 1 1 1 1 1 2>;
	mii-bus = <&mdio0>;
};

&ethernet {
	status = "okay";
	mtd-mac-address = <&rom 0xf100>;
	pinctrl-names = "default";
	pinctrl-0 = <&rgmii1_pins &rgmii2_pins &mdio_pins>;

	port@5 {
		status = "okay";
		mediatek,fixed-link = <1000 1 1 1>;
		phy-mode = "rgmii";
	};

	mdio0: mdio-bus {
		status = "okay";
	};
};

Signed-off-by: Serge Vasilugin <vasilugin@yandex.ru>
Signed-off-by: Franz Flasch <franz.flasch@gmx.at>
2018-06-25 20:52:18 +02:00
Mathias Kresin
f9e7f19334 kernel: rtl8367b: drop redundant compatible
Remove the compatible without vendor prefix. It is formal wrong and not
used in the tree.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-25 20:52:18 +02:00
Yousong Zhou
c4aadbdaf6 dropbear: let opkg manage symlinks of ssh, scp
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-06-25 15:21:24 +08:00
Matthias Schiffer
4b50854a60 musl: sys/socket.h: fix SO_PEERSEC value on MIPS
Differing from all other archs supported by musl, MIPS defines SO_PEERSEC
to 30 instead of 31.

Patch has also been submitted upstream.

Reported-by: Andrey Jr. Mlenikov <temnota.am@gmail.com>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-24 17:24:53 +02:00
Adrian Schmutzler
5c5bf8b865 ar71xx: 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

Notes:
TP-Link does not use bootstrap registers so without this patch reference
clock detects as 40MHz while it is actually 25MHz.
This is due to messed up bootstrap resistor configuration on the PCB.
Provided GPL code just forces 25MHz reference clock.
That causes booting with completely wrong clocks, for example, CPU tries
to boot at 1040MHz while the stock is 650MHz.
So this PR depends on PR #672 to remove 40MHz reference clock.
Thanks to Sven Eckelmann <sven@narfation.org> for properly patching that.

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2018-06-23 16:06:31 +02:00
Adrian Schmutzler
2524febf79 ar71xx: Add TP-Link Pharos v2 board detection
Add support for detecting TP-Link Pharos v2 boards.
They use different format in product-info partition than v1 boards.

Code was written mostly by Alexander Couzens <lynxis@fe80.eu>

Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2018-06-23 16:02:01 +02:00
Axel Neumann
65c05301c2 Re-enable arbitrary IPv6 addresses as outer ip4-in-ip6 tunnel source address
The 666-Add-support-for-MAP-E-FMRs-mesh-mode.patch kernel patches
break the possibility for using an ip4ip6 tunnel interface as a fall
back interface accepting ip4-in-ip6 tunneled packets from any remote
address. This works out of the box with any normal (non-666-patched)
kernel and can be configured by setting up an 'ip -6 tunnel' with type
'any' or 'ip4ip6' and a remote address of '::'.

The misbehavior comes with line 290 the patch which discards all packets
that do not show the expected saddr, even if no single fmr rule was
defined and despite the validity of the saddr was already approved earlier.

Signed-off-by: Axel Neumann <neumann@cgws.de>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-23 09:47:05 +02:00
Jo-Philipp Wich
333e609703 build: change version.mk defaults to OpenWrt
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-06-22 13:45:03 +02:00
John Crispin
ebe1216c7c iptables: set nonshared flag
this makes sure that offloading support is properly included for v4.14 targets.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-22 11:46:21 +02:00
Kristian Evensen
4def81f30f mediatek: Add support for the UniElec U7623-02
This commit adds support for the MT7623A-based UniElec U7623-02 router,
with eMMC storage and 512MB RAM. The router can be delivered with NAND
Flash and more memory, but I only have access to the one configuration.
The DTS is structured in such a way that adding support for
more/different storage/memory should be straight forward.

The device has the following specifications:

* MT7623A (quad-core, 1.3 GHz)
* 512MB RAM (DDR3)
* 8GB storage (eMMC 4.5)
* 2x normal miniPCIe slots
* 1x miniPCIe slot that is connected via an internal USB OTG port
* 5x 1Gbps Ethernet (MT7530 switch)
* 1x UART header
* 1x USB 3.0 port
* 1x SATA 3.0
* 1x 40P*0.5mm FPC for MIPI LCD
* 1x SIM slot
* 12x LEDs (2 GPIO controlled)
* 1x reset button
* 1x DC jack for main power (12V)

The following has been tested and is working:
* Ethernet switch
* miniPCIe slots (tested with Wi-Fi cards)
* USB 3.0 port
* sysupgrade
* reset button

Not working:
* The miniPCIe connected via USB OTG. For the port to work, some MUSB
glue must be added. I am currently in the process of porting the glue
from the vendor SDK.

Not tested:
* SATA 3.0
* MIPI LCD

Installation:

The board ships with u-boot, and the first installation needs to be done
via the bootloader using tftp. Step number one is to update the MBR of
the eMMC, as the one that ships with the device is broken. Since the
device can ship with different storage sizes, I will not provide the
exact steps for creating a valid MBR. However, I have made some
assumptions about the disk layout - there must be one 8MB recovery
partition (FAT32) and a partition for the rootfs (Linux).

The board loads the kernel from block 0xA00 (2560) and I have reserved
32MB for the kernel (65536 blocks). I have aligned the partitions on the
erase block size (4096 byte), so the recovery partition must start on
block 69632 and end on 86016 (16385 sectors). The rootfs is assumed to
start on sector 90112.

In order to install the mbr, you run the following commands from the
u-boot command line:

* tftpboot ${loadaddr} <name of mbr file>
* mmc device 0
* mmc write ${loadaddr} 0x00 1

Run the following commands to install + boot OpenWRT:

* tftpboot ${loadaddr} openwrt-mediatek-mt7623-7623a-unielec-u7623-02-emmc-512m-squashfs-sysupgrade-emmc.bin.gz
* run boot_wr_img
* run boot_rd_img
* bootm

Recovery:

In order to recover the router, you need to follow the installation
steps above (no need to replace MBR).

Notes:

* F2FS is used as the overlay filesystem.

* The device does not ship with any valid MAC address, so a random
address has to be generated. As a work-around, I write the initial
random MAC to a file on the recovery partition. The MAC of the WAN
interface is set to the MAC-address contained in this file on each boot,
and the address of the LAN-interfaces are WAN + 1. The MAC file is kept
across sysupgrade/firstboot.

My approach is slightly different than what the stock image does. The
first fives bytes of the MAC addresses in the stock image are static,
and then the last byte is random. I believe it is better to create fully
random MAC addresses.

* In order to support the miniPCIe-slots, I needed to add missing
pcie-nodes to mt7623.dtsi. The nodes are just c&p from the upstream
dtsi.

* One of the USB3.0 phys (u3phy2) on the board can be used as either USB
or PCI, and one of the wifi-cards is connected to this phy. In order to
support switching the phy from USB to PCI, I needed to patch the
phy-driver. The patch is based on a rejected (at least last time I
checked) PCI-driver submitted to the linux-mediatek mailing list.

* The eMMC is configured to boot from the user area, and according to
the data sheet of the eMMC this value can't be changed.

* I tried to structure the MBR more nicely and use for example a
FAT32-parition for the kernel, so that we don't need to write/read from
some offset. The bootloader does not support reading from
FAT32-paritions. While the command (fatload) is there, it just throws an
error when I try to use it.

* I will submit and hope to get the DTS for the device accepted
upstream. If and when that happens, I will update the patches
accordingly.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-06-22 11:25:52 +02:00
Chen Minqiang
e317bb06fd kernel: cleanup offload hooks on netdev unregister
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-06-22 11:01:42 +02:00
John Crispin
cac1a4be66 mac80211: drop 355-ath9k-limit-retries-for-powersave-response-frames.patch
several people reported this bug to be causing drop out issues

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-22 09:43:56 +02:00
Ansuel Smith
134e832814 mac80211: ath10k fix vht160 firmware crash
When the 160mhz width is selected the ath10k firmware crash. This fix this problem.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-06-22 09:31:32 +02:00
Ansuel Smith
61d57a2f88 mac80211: ath10k add leds support
This adds support for leds handled by the wireless chipset.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-06-22 09:31:32 +02:00
David Thornley
cb262b0939 wwan: Add support for Gemalto Cinterion cellular modules
Includes specific support for PH8(1e2d-0053) / ELS61(1e2d-005b) modules.

Note for ELS61, the serial driver changes from serial option(ttyUSB) to usb-cdc (ttyACM).

Two additional fixes in this commit resolve issues with ttyACM devices: -

* wwan.sh - sys-fs has a subdirectory indirection (*/tty/ttyACMx) which was not handled properly
* wwan.usb - dependent scripts were not included, so this never actually called proto_set_available for example (and relied on inadvertent call for ttyUSB case)

Signed-off-by: David Thornley <david.thornley@touchstargroup.com>
2018-06-22 09:31:32 +02:00
Hans Dedecker
b8bdeace39 busybox: rename udhcpc-remove-code-which-requires-server-ID-to-be-on patch
Move udhcpc-remove-code-which-requires-server-ID-to-be-on patch from 500
to 400

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-21 22:48:23 +02:00
Hans Dedecker
c6e50075f2 busybox: udhcpc: replace udhcpc_no_msg_dontroute patch by upstream fix
Replace 204-udhcpc_no_msg_dontroute patch by the upstream busybox fix
which removes the code which requires the server ID to be on local
network

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-21 22:33:35 +02:00
Mathias Kresin
004fe89620 lantiq: fix arcadyan vg3503j switch port indexing
Both version of the vg3503j have the LAN1 labelled port connected to
switch port 4 and the LAN2 labelled port connected to switch port 2.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-21 22:00:03 +02:00
Chuanhong Guo
ed40173dfc ramips: Add support for Phicomm K2G
Specification:
- SoC: MediaTek MT7620A
- Flash: 8 MB
- RAM: 64 MB
- Ethernet: 4 FE ports and 1 GE port (RTL8211F on port 5)
- Wireless radio: MT7620 for 2.4G and MT7612E for 5G, both equipped with external PA.
- UART: 1 x UART on PCB - 57600 8N1

Flash instruction:
The U-boot is based on Ralink SDK so we can flash the firmware using UART:
1. Configure PC with a static IP address and setup an TFTP server.
2. Put the firmware into the tftp directory.
3. Connect the UART line as described on the PCB.
4. Power up the device and press 2, follow the instruction to
   set device and tftp server IP address and input the firmware
   file name. U-boot will then load the firmware and write it into
   the flash.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-06-21 22:00:02 +02:00
Stijn Tintel
f9a42ae2d7 kernel: define THERMAL_EMERGENCY_POWEROFF_DELAY_MS
Enabling CONFIG_ATH10K_THERMAL on targets that don't have CONFIG_THERMAL
enabled in their kernel config causes build to fail due to missing
symbol THERMAL_EMERGENCY_POWEROFF_DELAY_MS. Add it to kmod-thermal.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-06-21 20:02:22 +03:00
Daniel Golle
a704a2c06f ltq-vdsl-fw: fix ltq-vdsl-vr9-vectoring-fw-installer package install
The package is not being generated otherwise, which is fatal because
it is part of the subtargets default package set...

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-21 12:00:12 +02:00
Felix Fietkau
4fb27cc9d8 mt76: update to the latest version
1d4ca10 mt76x2: track rssi for gain adjustment per station

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-21 11:19:05 +02:00
Tobias Schramm
5684d08741 ramips: Add support for Mikrotik RouterBOARD RBM33g
This commit adds support for the Mikrotik RouterBOARD RBM33g.

=Hardware=

The RBM33g is a mt7621 based device featuring three gigabit ports, 2
miniPCIe slots with sim card sockets, 1 M.2 slot, 1 USB 3.0 port and a male
onboard RS-232 serial port. Additionally there are a lot of accessible
GPIO ports and additional buses like i2c, mdio, spi and uart.

==Switch==

The three Ethernet ports are all connected to the internal switch of the
mt7621 SoC:

port 0: Ethernet Port next to barrel jack with PoE printed on it
port 1: Innermost Ethernet Port on opposite side of RS-232 port
port 2: Outermost Ethernet Port on opposite side of RS-232 port
port 6: CPU

==Flash==

The device has two spi flash chips. The first flash chips is rather small
(512 kB), connected to CS0 by default and contains only the RouterBOOT
bootloader and some factory information (e.g. mac address).
The second chip has a size of 16 MB, is by default connected to CS1 and
contains the firmware image.

==PCIe==

The board features three PCIe-enabled slots. Two of them are miniPCIe
slots (PCIe0, PCIe1) and one is a M.2 (Key M) slot (PCIe2).
Each of the miniPCIe slots is connected to a dedicated mini SIM socket
on the back of the board.

Power to all three PCIe-enabled slots is controlled via GPIOs on the
mt7621 SoC:

PCIe0: GPIO9
PCIe1: GPIO10
PCIe2: GPIO11

==USB==

The board has one external USB 3.0 port at the rear. Additionally PCIe
port 0 has a permanently enabled USB interface. PCIe slot 1 shares its
USB interface with the rear USB port. Thus only either the rear USB port
or the USB interface of PCIe slot 1 can be active at the same time. The
jumper next to the rear USB port controls which one is active:

open: USB on PCIe 1 is active
closed: USB on rear USB port is active

==Power==

The board can accept both, passive PoE and external power via a 2.1 mm
barrel jack. The input voltage range is 11-32 V.

=Installation=

==Prerequisites==

A USB -> RS-232 Adapter and a null modem cable are required for
installation.

To install an OpenWRT image to the device two components must be built:

1. A openwrt initramfs image
2. A openwrt sysupgrade image

===initramfs & sysupgrade image===

Select target devices "Mikrotik RBM33G" in
openwrt menuconfig and build the images. This will create the images
"openwrt-ramips-mt7621-mikrotik_rbm33g-initramfs-kernel.bin" and
"openwrt-ramips-mt7621-mikrotik_rbm33g-squashfs-sysupgrade.bin" in the output
directory.

==Installing==

**Make sure to back up your RouterOS license in case you do ever want to
go back to RouterOS using "/system license output" and back up the created
license file.**

Serial settings: 115200 8N1

The installation is a two-step process. First the
"openwrt-ramips-mt7621-mikrotik_rbm33g-initramfs-kernel.bin" must be booted
via tftp:

1. Set up a dhcp server that points the bootfile to tftp server serving
   the "openwrt-ramips-mt7621-mikrotik_rbm33g-initramfs-kernel.bin"
   initramfs image
2. Connect to WAN port (left side, next to sys-LED and power indicator)
3. Connect to serial port of board
4. Power on board and enter RouterBOOT setup menu
5. Set boot device to "boot over ethernet"
6. Set boot protocol to "dhcp protocol" (can be omitted if DHCP server
   allows dynamic bootp)
6. Save config
7. Wait for board to boot via Ethernet

On the serial port you should now be presented with the OpenWRT boot log.
The next steps will install OpenWRT persistently.

1. Copy "openwrt-ramips-mt7621-mikrotik_rbm33g-squashfs-sysupgrade.bin" to the device
   using scp.
2. Write openwrt to flash using "sysupgrade
   openwrt-ramips-mt7621-mikrotik_rbm33g-squashfs-sysupgrade.bin"

Once the flashing completes reboot the router and let it boot from flash.
It should boot straight to OpenWRT.

Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-06-21 06:54:42 +02:00
Tobias Schramm
c0167abcb0 ramips: Add lzma-loader targets
Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-06-21 06:54:42 +02:00
Tobias Schramm
4fa85a625f ramips: Add support for mt7621 to lzma-loader
Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2018-06-21 06:54:42 +02:00
Deng Qingfang
feb0a0bf22 ramips: fix Newifi D1 mtd partition
Newifi D1 has 32 MiB flash, so the firmware partition size should be 0x1fb0000

Signed-off-by: Deng Qingfang <dengqf6@mail2.sysu.edu.cn>
2018-06-21 06:54:42 +02:00
Kevin Darbyshire-Bryant
3b11b225b3 wireguard: bump to 0.0.20180620
0bc4230 version: bump snapshot
ed04799 poly1305: add missing string.h header
cbd4e34 compat: use stabler lkml links
caa718c ratelimiter: do not allow concurrent init and uninit
894ddae ratelimiter: mitigate reference underflow
0a8a62c receive: drop handshake packets if rng is not initialized
cad9e52 noise: wait for crng before taking locks
83c0690 netlink: maintain static_identity lock over entire private key update
0913f1c noise: take locks for ss precomputation
073f31a qemu: bump default kernel
bec4c48 wg-quick: android: don't forget to free compiled regexes
7ce2ef3 wg-quick: android: disable roaming to v6 networks when v4 is specified
9132be4 dns-hatchet: apply resolv.conf's selinux context to new resolv.conf
41a5747 simd: no need to restore fpu state when no preemption
6d7f0b0 simd: encapsulate fpu amortization into nice functions
f8b57d5 queueing: re-enable preemption periodically to lower latency
b7b193f queueing: remove useless spinlocks on sc
5bb62fe tools: getentropy requires 10.12
4e9f120 chacha20poly1305: use slow crypto on -rt kernels on arm too

Compiled-for: ar71xx, lantiq
Run-tested-on: ar71xx Archer C7 v2 & lantiq HH5a

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-20 22:10:33 +02:00
Christo Nedev
48f311a112 brcm2708: Add wifi driver, firmware and NVRAM for Raspberry Pi 3 b
2708 -> 43430 -> pi0w

2709 -> 43430 -> pi3b
2709 -> 43455 -> pi3bplus

2710 -> 43430 -> pi3b
2710 -> 43455 -> pi3bplus

Signed-off-by: Christo Nedev <christo.nedev@gmail.com>
2018-06-20 21:50:14 +02:00
Hans Dedecker
a9222e0328 odhcp6c: update to latest git HEAD
b99c1f6 odhcp6c: remove len check in option parsing handle

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-20 15:42:22 +02:00
Arvid E. Picciani
bf39d5594b ar71xx: add support for TP-LINK Archer C7 v5
TP-Link Archer C7 v5 is a dual-band AC1750 router, based on Qualcomm/Atheros
QCA9563+QCA9880.

Specification:

- 750/400/250 MHz (CPU/DDR/AHB
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 3T3R 5 GHz
- 5x 10/100/1000 Mbps Ethernet
- 10x LED, 2x button
- UART header on PCB

Flash instruction:
1. Upload lede-ar71xx-generic-archer-c7-v5-squashfs-factory.bin via Web interface

Flash instruction using TFTP recovery:
1. Set PC to fixed ip address 192.168.0.66
2. Download lede-ar71xx-generic-archer-c7-v5-squashfs-factory.bin
and rename it to ArcherC7v5_tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Signed-off-by: Arvid E. Picciani <aep@exys.org>
2018-06-20 15:36:19 +02:00
Daniel Engberg
c6e02b49f6 octeon: Add and set CPU type Octeon+ as default
The lowest CPU type used by supported Octeon platform
is Octeon+ (EdgeRouter Lite) while EdgeRouter Pro/ER-8 uses
Octeon II which is backwards compatible with Octeon+.

Sources:
https://community.ubnt.com/t5/EdgeRouter/EdgeRouter-Pro-CPU/td-p/654599
https://www.cavium.com/octeon-II-CN68XX.html
"OCTEON II family is fully software compatible with the widely-adopted
OCTEON Plus family"

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-20 15:36:02 +02:00
Robert Marko
4bb2532ec1 ethtool: Update to 4.17
Tested on 8devices Jalapeno(ipq40xx)
Introduces following changes
* Fix: In ethtool.8, remove superfluous and incorrect \
* Fix: fix uninitialized return value
* Fix: fix RING_VF assignment
* Fix: remove unused global variable
* Fix: several fixes in do_gregs()
* Fix: correctly free hkey when get_stringset() fails
* Fix: remove unreachable code
* Fix: fix stack clash in do_get_phy_tunable and do_set_phy_tunable
* Feature: Add register dump support for MICROCHIP LAN78xx

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-06-20 15:36:02 +02:00
Daniel Golle
3d20bee2cd ltq-vdsl-fw: add meaningful version information
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-20 14:39:22 +02:00
Hans Dedecker
0e84393ee2 dnsmasq: fix dnsmasq startup issue
Commit ecd954d530 installs specific interface triggers which rewrites the dnsmasq config
file and restarts dnsmasq if the network interface becomes active for which a trigger
has been installed.
In case no dhcp sections are specified or ignore is set to 1 dnsmasq will not be started
at startup which breaks DNS resolving.
Fix this by ditching the BOOT check in start_service and always start dnsmasq at startup.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-20 14:07:19 +02:00
Daniel Golle
969fe206bd brcm2708: Add wifi driver, firmware and NVRAM for RPi1
Apparently there are RPi1 devices with BRCM43430 wifi, such as the
Pi Zero W. Add the necessary packages for that to the image generated
for those boards as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-20 11:19:26 +02:00
Johann Neuhauser
dcc942e666 ath79: ar934x: use irq-ath79-intc driver and enable wmac
Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-06-20 11:12:00 +02:00
Johann Neuhauser
b8562f168b ath79: qca95xx: add new intc2, correct intc3 and add second pcie on qca9557
Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-06-20 11:12:00 +02:00
Johann Neuhauser
c7efc93509 ath79: fix irq-ath79-intc driver and add support for other ath79 SoCs
Add the missing enable and disable function.
Remove dummy mask and unmask function and use the one provided by
irq_dummy_chip.
Allow interrupt status register being defined from dts.
Add ddr_wb_flush for ar934x/qca953x.
Rename controller name to qca,ar9340-intc because this design was
first introduced in AR934x.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-06-20 11:12:00 +02:00
INAGAKI Hiroshi
189815462c ramips: add support for ELECOM WRC-1167GHBK2-S
ELECOM WRC-1167GHBK2-S is a 2.4/5 GHz band 11ac router, based on
MediaTek MT7621A.

Specification:

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

Flash instruction using factory image:

1. Rename the factory image to "wrc-1167ghbk2-s_v0.00.bin"
2. Connect the computer to the LAN port of WRC-1167GHBK2-S
3. Connect power cable to WRC-1167GHBK2-S and turn on it
4. Access to "http://192.168.2.1/details.html" and open firmware
update page ("手動更新(アップデート)")
5. Select the factory image and click apply ("適用") button
6. Wait ~150 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-19 20:46:21 +02:00
INAGAKI Hiroshi
4645a6d318 ipq806x: add support for NEC Aterm WG2600HP
NEC Aterm WG2600HP is a 2.4/5 GHz band 11ac router, based on Qualcomm
IPQ8064.

Specification:

- IPQ8064 (384 - 1,400 MHz)
- 512 MB of RAM
- 32 MB of Flash (SPI)
- 4T4R 2.4/5 GHz
- 5x 10/100/1000 Mbps Ethernet
- 12x LEDs, 4x keys
- 1x USB 3.0 Type-A
- UART header on PCB
  - RX, TX, NC, GND, Vcc from power connector side
  - baudrate: 115200 bps

Flash instruction using initramfs image:
1. Connect serial cable to UART header
2. Connect power cable and turn on the router
3. When the "Press the [f] key and hit [enter] to enter failsafe mode"
message is displayed on the console, press the "f" key and Enter key
sequentially to enter the failsafe mode
4. create fw_env.config file with following contents on failsafe mode:
  /dev/mtd9 0x0 0x10000 0x10000
5. Execute following commands to add and change the environment
variables of U-Boot
  fw_setenv ipaddr "192.168.0.1"
  fw_setenv serverip "192.168.0.2"
  fw_setenv autostart "yes"
  fw_setenv bootcmd "tftpboot 0x44000000 wg2600hp-initramfs.bin;
  bootipq"
6. Set the IP address of the computer to 192.168.0.2, connect to the LAN
port of WG2600HP, and start the TFTP server on the computer
7. Rename OpenWrt initramfs image for WG2600HP to
"wg2600hp-initramfs.bin" and place it in the TFTP directory
8. Remove power cable from WG2600HP, reconnect it and restart WG2600HP
9. WG2600HP downloads initramfs image from TFTP server on the computer,
loads it and boot with initramfs image
10. On the initramfs image, execute "mtd erase firmware" to erase stock
firmware and execute sysupgrade with the sysupgrade image
11. Wait ~180 seconds to complete flashing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-19 20:46:01 +02:00
Mathias Kresin
4bb6ee465e ramips: mt7621: fix wireless package selection
Add wpad-mini if wireless drivers are included. Drop the mt76 package if
both of the provided drivers are included with their own packages.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-19 20:45:29 +02:00
Daniel Golle
512c57e7f3 ltq-vdsl-fw: add nonshared flag
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-19 17:57:06 +02:00
Evgeniy Didin
56f3aee531 arc770: bump kernel to 4.14
Currently arc770 is no more "source-only".
Lets update Linux kernel version from 4.9 to 4.14 for arc770.
config-4.14 was simply regenerated with "make kernel_menuconfig".

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
2018-06-19 14:32:47 +02:00
Kabuli Chana
0845a34666 mwlwifi: update to version 10.3.8.0-20180615
fix mcs rate for HT
support 88W8997
protect rxringdone

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2018-06-19 14:32:47 +02:00
David Ehrmann
81d446b045 ar71x: add support for Mikrotik Routerboard wAP R
This commit adds support for the Mikrotik wAP R (RBwAPR-2nD). The change
is based on 3b15eb0 which added support for the wAP 2nD. This change lacks
LED support.

Specifications:

- SoC: Qualcomm QCA9531 (650 MHz)
- RAM: 64 MB
- Storage: 16 MB NOR SPI flash
- Wireless: built-in QCA9531, 802.11b/g/n 2x2:2
- Ethernet: 1x100Mbps
- Power: 9-30V Passive PoE, 9-30V DC jack, 9-30V automotive jack
- SIM card slot
- Mini-PCIe slot

Installation:

1. Login to the Mikrotik WebUI to backup your licence key
2. Change the following settings in System->Routerboard->Settings:
  - Boot device: try ethernet once then NAND
  - Boot protocol: DHCP
  - Force Backup Booter: checked
3. Setup a DHCP/BOOTP server with:
  - DHCP-Option 66 (TFTP server name) pointing to a local TFTP
    server within the same subnet of the DHCP range
  - DHCP-Option 67 (Bootfile-Name) matching the initramfs filename
    of the to be booted image, e.g.
    openwrt-ar71xx-mikrotik-vmlinux-initramfs.elf
4. Power off the device
5. If this is the second attempt to boot OpenWRT or the boot device isn't
   "try ethernet once then NAND," press and hold the reset button while
   powered off. If this is the first attempt, this step isn't necessary.
6. Power on the device, holding the reset button for 15-20s if already
   pressed from the previous step.

The board should load and start the initramfs image from the TFTP
server. Login as root/without password to the started OpenWRT via SSH
listing on IPv4 address 192.168.1.1. Use sysupgrade to install OpenWRT.

Revert to RouterOS

Use the "rbcfg" package on in OpenWRT:
- rbcfg set boot_protocol bootp
- rbcfg set boot_device ethnand
- rbcfg apply

Open Netinstall and reboot routerboard. Now Netinstall sees RouterBOARD
and you can install RouterOS. If NetInstall gets stuck on Sending offer
just wait for it to timeout and then close and open Netinstall again.

Click on install again.

In order for RouterOS to function properly, you need to restore license
for the device. You can do that by including license in NetInstall.

Signed-off-by: David Ehrmann <ehrmann@gmail.com>
2018-06-19 14:32:47 +02:00
Felix Fietkau
9a4253b81f ramips: improve ethernet driver performance with GRO/TSO
GRO stores packets as fraglist. If they are routed back to the ethernet
device, they need to be re-segmented if the driver does not support
sending fraglists.
Add the missing support for that, along with a missing feature flag that
allows full routed GRO->TSO offload.
Considerably reduces CPU utilization for routing

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-19 09:45:28 +02:00
John Crispin
c49ae68cba ath79: fix qm5p-ac-v2 dts file
Signed-off-by: John Crispin <john@phrozen.org>
2018-06-18 23:23:30 +02:00
David Bauer
b4bf43c667 ar71xx: add support for Fritz!WLAN Repeater 450E
This commit adds support for the AVM Fritz!WLAN Repeater 450E

SOC:    Qualcomm QCA9556 (Scorpion) 560MHz MIPS74Kc
RAM:    64MB Zentel A3R12E40CBF DDR2
FLASH:  16MiB Winbond W25Q128 SPI NOR
WLAN1:  QCA9556 2.4 GHz 802.11b/g/n 3x3
INPUT:  WPS button
LED:    Power, WiFi, LAN, RSSI indicator
Serial: Header Next to Black metal shield
        Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V)
        The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet
 - 2.4GHz WiFi (correct MAC)
 - Installation via EVA bootloader
 - OpenWRT sysupgrade
 - Buttons
 - Most LEDs

Not working:
 - 2 RSSI LEDs
   AVM used for RSSI{0,1} two of the Ethernet PHYs LEDs which they
   control over MDIO. Our driver doesn't expose these LEDs as GPIOs.
   While it is possible to implement this feature, it would require an
   additional kernel patch for a minor functionality.

Installation via EVA:
In the first seconds after Power is connected, the bootloader will
listen for FTP connections on 192.168.178.1. Firmware can be uploaded
like following:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put openwrt-sysupgrade.bin mtd1

Note that this procedure might take up to two minutes.
You need to powercycle the Device afterwards to boot OpenWRT.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-18 23:23:30 +02:00
David Bauer
abb4ab076f ar71xx: fix incorrect speed setting on QCA9556
The QCA9556 only has a SGMII interface. However the speed on the
ethernet link is set for the non-existant xMII interface.

This commit fixes this behavior.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-18 23:23:30 +02:00
Hauke Mehrtens
d661a5d754 kernel/modules: kmod-chaoskey: Add missing dependency
This new package was missing the dependency to kmod-random-core which
caused some build errors.

Fixes: 163ab9135a ("kernel/modules: add chaoskey module, hardware TRNG")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-18 22:51:33 +02:00
Magnus Kroken
ccc728a0e2 busybox: update to 1.28.4
Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-06-18 22:05:30 +02:00
Kevin Darbyshire-Bryant
83f31b7947 ltq_atm: burn ifx_atm_alloc_tx with fire
Drop code that was never used.

Tested on: BT HomeHub 5a

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-18 21:47:05 +02:00
Andy Boyett
591780615b build: add busybox support to time prereq-check
Busybox time supports the GNU time '-f' syntax used by the build time
logging implemented in ff6e62b288, however the prerequisite check added
only works with GNU time installed as `time` or `gtime`.

As busybox is a multicall binary, the name of the symlink setup by
SetupHostCommand also must be changed from `gtime` to `time` to fix the
value of argv[0]. This causes a number of shells (including bash) to use
their builtin impelementation of time, so the sole invocation has been
changed to use `env time` to use the value found on the $PATH.

Signed-off-by: Andy Boyett <agb@agb.io>
2018-06-18 21:27:01 +02:00
Lucian Cristian
b1a173d7c3 ath79: add support for tl-wr1043nd v2/v3
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-18 20:29:38 +02:00
Marty E. Plummer
0e81968ee8 ath79: add initial nand support for gl-ar300m
Signed-off-by: Marty E. Plummer <hanetzer@startmail.com>
2018-06-18 20:29:38 +02:00
Marty E. Plummer
fe3b62bbdc ath79: initial gl-ar300m support
Signed-off-by: Marty E. Plummer <hanetzer@startmail.com>
2018-06-18 20:29:38 +02:00
Krystian Kozak
142477e751 b43-tools: update to latest git HEAD
122ca37 Rename bits in hostflags to match new identifiers for the hostflags
32c2a3c Change order of identifiers to be ascending with the spr numbers
f7016b5 Remove definitions which are not Broadcom specific
b77c0a3 debug: Fix ordering of HF bits
3f46e61 fwcutter: Add firmware 9.10.178.27
27892ef fwcutter/make: Avoid _DEFAULT_SOURCE warning

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-06-18 20:29:38 +02:00
Hannu Nyman
414ce80c07 mvebu: enable CONFIG_HW_RANDOM
Enable the Hardware Random Number Generator Core infrastructure
in kernel.

Needed for hardware random number generator drivers like chaoskey

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-06-18 20:29:38 +02:00
Hannu Nyman
163ab9135a kernel/modules: add chaoskey module, hardware TRNG
Package the driver for Chaoskey, a USB dongle that provides a
True Random Number Generator (TRNG) and feeds entropy to kernel.

Chaoskey driver is included the upstream Linux sources, so
only packaging it is needed.

Run-tested with ipq806x/R7800 and mvebu/WRT3200ACM.

(Requires CONFIG_HW_RANDOM kernel option.)

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-06-18 20:29:38 +02:00
Hannu Nyman
dcfe2a461e include/image-commands.mk: shorter version in Netgear factory header
Shorten the version string in Netgear factory image header in order
to enable u-boot TFTP recovery flash mode to work again.

Strip 'r7210-14cb05909a' into 'r7210' in the Netgear image header
by removing the hash (anything after "-").

background:
Some Netgear routers have recently been unable to flash Openwrt
factory image with the TFTP recovery flash mode provided by Netgear
u-boot. That is due to over-long Openwrt version string overflowing
into the router type string in u-boot code. Modern git versions
produce 10-digit short hashes for the Openwrt main repo, and that
causes the version string to be too long in the image header,
breaking the image ID verification by the TFTP flash routine.

(Other option could be to force a shorter hash in scripts/getver.sh,
but as the problem only concerns Netgear routers, let's patch just
them.)

More detailed explanations in FS#1583

Tested with WNDR3800

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-06-18 20:29:37 +02:00
John Crispin
ee1dbffeed ipq806x: D7800 only has a single sata port
Signed-off-by: John Crispin <john@phrozen.org>
2018-06-18 20:29:37 +02:00
Vincent Wiemann
076d2ea682 mips: fix dynamic ftrace
The kernel patch *-mips_module_reloc.patch breaks dynamic ftrace as
dynamic ftrace depends on -mlong-calls.
See http://patchwork.linux-mips.org/patch/675/
Thus we always set -mlong-calls if the kernel is being
compiled with dynamic ftrace support.

Signed-off-by: Vincent Wiemann <webmaster@codefetch.de>
2018-06-18 20:29:26 +02:00
Daniel Engberg
5297a759ae mbedtls: Cosmetic cleanups
This is more of a cosmetic change and a reminder that the CMake script hardcodes -O2.
Source:
https://github.com/ARMmbed/mbedtls/blob/mbedtls-2.7/CMakeLists.txt#L73
https://github.com/ARMmbed/mbedtls/blob/master/CMakeLists.txt#L97

Remove the release type option as it's already provided by the toolchain.
Source:
https://github.com/openwrt/openwrt/blob/master/include/cmake.mk#L50

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-18 20:28:20 +02:00
Jeremiah McConnell
e820455198 mvebu: backport ahci_mvebu errata patchset
Marvell ahci hardware requires a workaround to prevent eSATA failures
on hotplug/reset when used with multi-bay external enclosures.

Errata Ref#226 - SATA Disk HOT swap issue when connected through Port
Multiplier in FIS-based Switching mode.

These patches backport the workaround from 4.17.

Signed-off-by: Jeremiah McConnell <miah@miah.com>
2018-06-18 20:28:20 +02:00
Daniel Golle
ff0f3522b7 uboot-oxnas: fix typo accidentally committed during oxnas reboot
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-18 18:55:19 +02:00
Lucian Cristian
c8e76cd4ff ath79: fix rx ring buffer stall qca956x
when ported from ar71xx to ath79 the qca9560-eth was omitted

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-18 18:21:20 +02:00
Paul Spooren
cbf69fb2ad cron: add procd listeners for crontabs
Add procd file listeners to check files in `/etc/crontabs/`.

Also unified a bit the function style.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2018-06-18 18:21:20 +02:00
Thomas Nixon
bb71a3f27e ar71xx: add kmod-usb-ehci to fix USB on RB hAP AC
Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
2018-06-18 18:21:20 +02:00
Rosy Song
1ee98fdef3 nftables: bump to version 0.9.0
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-06-18 18:21:20 +02:00
Rosy Song
9d6a0352e7 libnftnl: bump to version 1.1.1
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-06-18 18:21:20 +02:00
Magnus Frühling
4b280ad91a ipq40xx: add support for ZyXEL WRE6606
Specifications:
SOC:	Qualcomm IPQ4018 (DAKOTA) ARM Quad-Core
RAM:	128 MB Nanya NT5CC64M16GP-DI
FLASH:	16 MiB Macronix MX25L12845EMI-12G
ETH:	Qualcomm QCA8072
WLAN1:  Qualcomm Atheros QCA4018 2.4GHz 802.11b/g/n 2x2
WLAN2:  Qualcomm Atheros QCA4018 5GHz 802.11n/ac W2 2x2
INPUT:  WPS, Mode-toggle-switch
LED:	Power, WLAN 2.4GHz, WLAN 5GHz, LAN, WPS
        (LAN not controllable by software)
        (WLAN each green / red)
SERIAL:	Header next to eth-phy.
        VCC, TX, GND, RX (Square hole is VCC)
        The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet (Correct MAC-address)
 - 2.4 GHz WiFi (Correct MAC-address)
 - 5 GHz WiFi (Correct MAC-address)
 - Factory installation from tftp
 - OpenWRT sysupgrade
 - LEDs
 - WPS Button

Not Working:
 - Mode-toggle-switch

Install via TFTP:

Connect to the devices serial. Hit Enter-Key in bootloader to stop
autobooting. Command `tftpboot` will pull an initramfs image named
`C0A86302.img` from a tftp server at `192.168.99.08/24`.
After successfull transfer, boot the image with `bootm`.

To persistently write the firmware, flash an openwrt sysupgrade image
from inside the initramfs, for example transfer
via `scp <sysupgrade> root@192.168.1.1:/tmp` and flash on the device
with `sysupgrade -n /tmp/<sysupgrade>`.

append-cmdline patch taken from chunkeeys work on the NBG6617.

Signed-off-by: Magnus Frühling <skorpy@frankfurt.ccc.de>
Co-authored-by: David Bauer <mail@david-bauer.net>
Co-authored-by: Christian Lamparter <chunkeey@googlemail.com>
2018-06-18 18:21:20 +02:00
Lucian Cristian
71ae0792ba ath79: add tl-wr1043nd-v4 support everything is working
tplink-safeloader: resize kernel partition
kernel 4.14 is much bigger, resize the partition

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-18 18:21:20 +02:00
Lucian Cristian
cad843e1f5 ath79: add ubiquiti unifi ap ac lite/lr
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-18 18:21:19 +02:00
Weijie Gao
52109ce71f ath79: ag71xx: fix pll-data setting for ar7242/ar934x/qca955x/qca956x
ar71xx/ar913x series use the old pll registers and settings.

However started from ar7242, a new pll register is introduced and the
pll setting is much simpler.

This can be observed from dev-eth.c from the ar71xx target.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-06-18 18:21:19 +02:00
Weijie Gao
97c5cbc496 ath79: add support for Phicomm K2T
This patch adds dts for qca956x and also support for Phicomm K2T

The qca965x.dtsi adds nearly all the necessary components.
Both ath9k AHB and PCIe worked well.

The Phicomm K2T uses MTD partition 'config' to store the mac addresses in
JSON format. To extract these fields correctly, a script is introduced:
    /lib/functions/k2t.sh
This script provides a helper function to extract mac addresses, and is used
in three places.

Hardware spec of Phicomm K2T:
CPU: QCA9563
DRAM: 64MB DDR2
Flash: 16MB SPI-NOR
Switch: QCA8337
WiFi 5.8GHz: QCA9886

Flash instruction:
Apply sysupgrade.bin via serial console:

tftp 0x80000000 sysupgrade.bin && erase 0x9f090000 +$filesize && cp.b $fileaddr 0x9f090000 $filesize

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2018-06-18 18:21:16 +02:00
Chen Minqiang
8f804f42d5 ipq40xx: essedma: fixup ip align
This fixup ip align in essedma driver rx path
see cat /proc/cpu/alignment
which reports alignment-fixups without this fix.

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-06-18 15:39:08 +02:00
Mirko Parthey
c84ef1f188 iptables: increment PKG_RELEASE to force update
While support for the FLOWOFFLOAD target is available in the firmware
images, it is still missing in some of the binary packages on
downloads.openwrt.org, e.g. for the mipsel_mips32 architecture.

Increment PKG_RELEASE to force an update of these packages.
Also adjust the package description to include the FLOWOFFLOAD target.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2018-06-18 15:27:57 +02:00
Kevin Darbyshire-Bryant
d600de3ddd kernel: atm: pppoatm fix vc-mux connection failures
Backport a hot off the press upstream kernel ATM fix:

Preserve value of skb->truesize when accounting to vcc

"There's a hack in pskb_expand_head() to avoid adjusting skb->truesize
for certain skbs. Ideally it would cover ATM too. It doesn't. Just
stashing the accounted value and using it in atm_raw_pop() is probably
the easiest way to cope."

The issue was exposed by upstream with:

commit 14afee4b6092fde451ee17604e5f5c89da33e71e
Author: Reshetova, Elena <elena.reshetova@intel.com>
Date:   Fri Jun 30 13:08:00 2017 +0300

    net: convert sock.sk_wmem_alloc from atomic_t to refcount_t

But an earlier commit left the ticking timebomb:

158f323b9868 ("net: adjust skb->truesize in pskb_expand_head()

Sincerest thanks to Mathias Kresin <dev@kresin.me> for debugging
assistance and to David Woodhouse <dwmw2@infradead.org> for further
guidance, cajoling & patience in interpreting the debug I was giving him
and producing a fix!

Fixes FS#1567

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-18 15:27:15 +02:00
Kevin Darbyshire-Bryant
0276e1f760 lantiq: atm: fix ifx_atm driver integration
When upstream kernel introduced commit c55fa3cccbc2c672e7f118be8f7484e53a8e9e77
we incorrectly updated our hack integration patch that updates atm/common.c

+++ b/net/atm/common.c
@@ -62,10 +62,16 @@ static void vcc_remove_socket(struct soc
        write_unlock_irq(&vcc_sklist_lock);
 }

+struct sk_buff* (*ifx_atm_alloc_tx)(struct atm_vcc *, unsigned int) = NULL;
+EXPORT_SYMBOL(ifx_atm_alloc_tx);
+
 static bool vcc_tx_ready(struct atm_vcc *vcc, unsigned int size)
 {
        struct sock *sk = sk_atm(vcc);

+       if (ifx_atm_alloc_tx != NULL)
+               return ifx_atm_alloc_tx(vcc, size)

The correct solution is to drop our ifx_atm_alloc_tx replacement hack
entirely and let the kernel do its thing.

In reality neither pppoatm or BR2684 interfaces actually hit this code,
so the incorrect integration would only be noticed with direct socket
calls which we are unaware of a use-case.

This is not the solution to pppoatm vc-mux failing to work which started
the whole investigation, but let's fix it up anyway.

With sincerest thanks to David Woodhouse <dwmw2@infradead.org> &
Mathias Kresin <dev@kresin.me>.

Tested-on: lantiq, BT HomeHub 5a

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-18 15:26:41 +02:00
Koen Vandeputte
510f2efab6 kernel: bump 4.14 to 4.14.50
Refreshed all patches

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-06-18 15:25:42 +02:00
Koen Vandeputte
db73c71e8d kernel: bump 4.9 to 4.9.109
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-06-18 15:25:28 +02:00
Rafał Miłecki
93cc44c433 bcm53xx: exit if writing kernel during sysupgrade fails
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-18 13:47:08 +02:00
Felix Fietkau
7271eacb72 mt76: update to the latest version
072fdac mt76x2: mac: consider multicast/broadcast frames in ewma rssi estimation
f450659 mt76x2: improve gain adjustment in noisy environments

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-18 12:36:04 +02:00
Rafał Miłecki
c3d9109fad bcm53xx: drop not ready support for Luxul devices
Support for these devices isn't ready yet and it was only accidentally
pushed in the commit 0da9303e5b ("mac80211: backport "brcmfmac:
cleanup and some rework" from 4.17").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-18 08:46:23 +02:00
Rafał Miłecki
c446e38c86 mac80211: backport brcmfmac changes from kernel 4.18
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-18 07:41:40 +02:00
Rafał Miłecki
7e8eb7f309 mac80211: backport brcmfmac firmware & clm_blob loading rework
It backports remaining brcmfmac changes from 4.17.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-18 07:41:40 +02:00
Tomasz Maciej Nowak
f5bce268b0 mvebu: replace espressobin spi patch with upstream one
For easier future kernel bumps replace spi patch with upstream version
slightly modified. The modification removes partition definitions which
has been diffrent for some U-Boot versions.
Also this removes unnecessary i2c definition which was in the old patch.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-06-18 07:10:20 +02:00
Tomasz Maciej Nowak
772258044b mvebu: reduce speed to gen1 for espressobin pcie
Since the beginning there's been an issue with initializing the Atheros
based MiniPCIe wireless cards. Here's an example of kerenel log:

 OF: PCI: host bridge /soc/pcie@d0070000 ranges:
 OF: PCI:   MEM 0xe8000000..0xe8ffffff -> 0xe8000000
 OF: PCI:    IO 0xe9000000..0xe900ffff -> 0xe9000000
 advk-pcie d0070000.pcie: link up
 advk-pcie d0070000.pcie: PCI host bridge to bus 0000:00
 pci_bus 0000:00: root bus resource [bus 00-ff]
 pci_bus 0000:00: root bus resource [mem0xe8000000-0xe8ffffff]
 pci_bus 0000:00: root bus resource [io  0x0000-0xffff](bus address[0xe9000000-0xe900ffff])
 pci 0000:00:00.0: BAR 0: assigned [mem0xe8000000-0xe801ffff 64bit]
 pci 0000:00:00.0: BAR 6: assigned [mem0xe8020000-0xe802ffff pref]
 [...]
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x3c
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x44
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x4
 ath9k 0000:00:00.0: enabling device (0000 -> 0002)
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x3c
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0xc
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x4
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x40
 ath9k 0000:00:00.0: request_irq failed
 advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x4
 ath9k: probe of 0000:00:00.0 failed with error -22

The same happens for ath5k cards, while ath10k card didn't appear at
all (not detected):

 OF: PCI: host bridge /soc/pcie@d0070000 ranges:
 OF: PCI:   MEM 0xe8000000..0xe8ffffff -> 0xe8000000
 OF: PCI:    IO 0xe9000000..0xe900ffff -> 0xe9000000
 advk-pcie d0070000.pcie: link never came up
 advk-pcie d0070000.pcie: PCI host bridge to bus 0000:00
 pci_bus 0000:00: root bus resource [bus 00-ff]
 pci_bus 0000:00: root bus resource [mem0xe8000000-0xe8ffffff]
 pci_bus 0000:00: root bus resource [io  0x0000-0xffff](bus address[0xe9000000-0xe900ffff])
 advk-pcie d0070000.pcie: config read/write timed out

Following the issue on esppressobin.net forum [1] the workaround seems
to be limiting the speed of PCIe bridge to 1st generation. This fixed
the initialisation of all tested Atheros wireless cards.

The change shouldn't affect the performance for wireless cards,
it could reduce the performance of storage controller cards but since
OpenWrt focuses on wireless connectivity, fixing compatibility with
wireless cards should be a priority.

For the record, the iwlwifi and mt76 cards were not affected by this
issue.

1. http://espressobin.net/forums/topic/which-pcie-wlan-cards-are-supported

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-06-18 07:10:20 +02:00
Tomasz Maciej Nowak
4ec8c8c23e mvebu: add fix for armada 37xx cpufreq driver
Backport from stable kernel tree fixing clock leak.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-06-18 07:10:20 +02:00
Hauke Mehrtens
9a26a9e8b9 uboot-sunxi: update Orange Pi R1 and Zero Plus
The device tree files are now matching the kernel 4.17 and this will be
send also for integration into mainline U-Boot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-18 07:10:20 +02:00
Hauke Mehrtens
f2135e7811 uboot-sunxi: update to version 2018.05
This patch 220-add-sunxi50i-nanopi-neo-plus2.patch was merged upstream.
The u-boot-sunxi-with-spl.bin is now also created for the ARM64 sunxi
boards by U-Boot itself, no need to do it manually any more.

This was tested on a H2+ Orange Pi R1 and a H5 Orange Pi Zero Plus.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-18 07:10:20 +02:00
Hauke Mehrtens
7afe1caf70 arm-trusted-firmware-sunxi: update to version from 2018-02-10
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-18 07:10:20 +02:00
Hauke Mehrtens
6745af9a0d mediatek: mt7622: Do not deactivate CONFIG_BLK_DEV
zram.ko needs CONFIG_BLK_DEV activated and it is by default for all
other targets in OpenWrt.

This makes zram.ko compile again.
Compile tested only.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-18 07:10:19 +02:00
Hauke Mehrtens
10ce015c65 mediatek: mt7622: Do not set CPU_SUBTYPE for Cortex A53
Neon and vfpv4 are mandatory extensions in the ARM64 instruction set
now, do not activate them explicitly. GCC will make use of these
extension now by default.

This makes it possible to share the toolchain with other Cortex A53
SoCs.
Compile tested only.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-18 07:10:19 +02:00
Zoltan HERPAI
1e0aeb2b55 ath79: move Netgear build code into a common makefile
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-06-18 07:10:19 +02:00
Koen Vandeputte
2b9885571b kernel: bump 4.14 to 4.14.49
Refreshed all patches

Compile-tested on: cns3xxx, imx6, x86-64
Runtime-tested on: cns3xxx, imx6, x86-64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-06-18 07:10:19 +02:00
Koen Vandeputte
8c1f088521 kernel: bump 4.9 to 4.9.108
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-06-18 07:10:19 +02:00
David Bauer
4fc005197a ipq40xx: add get_status_led to diag.sh
This commit adds the get_status_led method to diag.sh, which sets the
boot-led as status-led for scripts using this method to get a
status-led.

This method is used platform-independent in downstream project gluon to
set the LED used to indicate the config-mode.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-18 07:10:19 +02:00
Sven Roederer
2314c2c6f2 base-files: fix links in banner.failsafe
Update the link to the current section in the documentaion wiki.
This fixes https://github.com/openwrt/packages/issues/6282

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
2018-06-18 07:10:15 +02:00
Rafał Miłecki
5b2e20807d base-files: exit if mtd write command fails during sysupgrade
It avoids confusing situations like:
> Could not get image magic
> Image check failed.
> Upgrade completed
> Rebooting system...

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-18 06:37:28 +02:00
Linus Walleij
1c1e254244 gemini: Cook SQ201 images
This generates the "rd.gz" and "hddapp.tgz" that doesn't contain
anything of the sort but rather the OpenWRT rootfs. It works the
same way as how we generate the same layout for the NAS4220b.
For some reason the ImageInfo file is different for the SQ201.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-06-18 06:35:33 +02:00
Linus Walleij
d8072a3530 gemini: Add appropriate Wireless kernel modules
The D-Link DIR-685 has a RealTek RT2880 mini-PCI card in a
slot. Activate the appropriate kernel module.

The Square One SQ201 has a Ralink RT61-based mini-PCI card.
Activate the appropriate kernel modules. This fixes the
previous error just activating the firmware: the kernel
module will bring in the firmware it needs.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-06-18 06:35:16 +02:00
Linus Walleij
dc7f540ce1 gemini: Cook a WRGG firmware image
This makes the Gemini build a WRGG-type firmware update
image for the DIR-685. This should hopefully install the
kernel from the web firmware upgrade API on the product
switching it permanently to use OpenWRT.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-06-18 06:35:09 +02:00
Rafał Miłecki
3c8bb92655 mac80211: backport brcmfmac data structure rework
It backports brcmfmac commits from kernel 4.17.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-17 22:46:35 +02:00
Rafał Miłecki
0da9303e5b mac80211: backport "brcmfmac: cleanup and some rework" from 4.17
It was described by Arend as:

> This series is intended for 4.17 and includes following:
>
>  * rework bus layer attach code.
>  * remove duplicate variable declaration.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-17 22:46:29 +02:00
Rafał Miłecki
e53d0da775 bcm53xx: fix NAND partitions on D-Link DIR-885L
This fixes missing rootfs on above device:
[    2.652292] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
(...)
[    2.687909] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

Fixes: 05cb6aa69f ("bcm53xx: replace linux,part-probe with a proper partitions subnode")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-06-17 22:41:15 +02:00
Johann Neuhauser
14cb05909a ath79: clean up led config script files for all devices
1. Move all status led definitions out of diag.sh into device dt
   as we use here a generic script hook.

2. Encode "phy0ptp" led trigger in dt of device for all ath79 devices.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-06-16 10:08:51 +02:00
Hannu Nyman
25ea21d765 ath79: fix WNDR3800 support
Fixes for WNDR3800 DTS:
* fix bootcmd
* name art partition to reference it for MACs
* format firmware partition's address similarly as others
* make u-boot-env read-only like in ar71xx
* read wan and lan MACs from art
* fix LED and button gpio values to match ar71xx
  (orange/green powerLED, reset button)
* enable power LED in dts by alias led-status
* define USB LED triggers and connect to USB port
* change wifi button to KEY_RFKILL like in ar71xx

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-06-16 10:08:51 +02:00
Johann Neuhauser
10f8823254 ath79: led-resets: add default-trigger property
Add support for the common led property "linux,default-trigger". It
allows to set a default led trigger via devicetree.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
[add commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-16 10:08:51 +02:00
Lucian Cristian
f7a220b2f6 ath79: fix usb led on wr-1043nd-v1
usb port was not triggered correctly
also remove uneded wifi led trigger from the script

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-16 10:08:51 +02:00
Alex Maclean
ab5b359876 ath79: fixup TL-WR703N/TL-MR10U split
Readd SoC compatible strings and correct model names mangled in
a51078f735, cleanup dts to remove
duplication, rename dtsi for clarity, use correct GPIO for TL-MR10U
USB power.

Tested only on TL-WR703N due to lack of a TL-MR10U.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-16 10:08:51 +02:00
Zoltan HERPAI
3e0489dcd9 tools: build squashfs (v3) for ath79
Certain Netgear and AVM devices use BE squashfs for the kernel image. As
squashfs4 only supports creating LE images, add squashfs (v3) into
the tools to be built for ath79.

Trying to use an LE squashfs (thus trying to use squashfs4 only for
building the image) for the kernel image results in the bootloader
barfing and stopping.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-06-16 10:08:51 +02:00
Maxim Anisimov
8956eb502d ramips: add support for TP-Link TL-WR842N v5
TP-Link TL-WR842N v5 are simple N300 router with 5-port FE switch and
non-detachable antennas. Its very similar to TP-Link TL-MR3420 V5.

Specification:

- MT7628N/N (580 MHz)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH
- 2T2R 2.4 GHz
- 5x 10/100 Mbps Ethernet
- 2x external, non-detachable antennas
- USB 2.0 Port
- UART (J1) header on PCB (115200 8n1)
- 7x LED, 2x button, power input switch

Flash instruction:

The only way to flash OpenWrt image in wr842nv5 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.225/24 and tftp server.
2. Rename "lede-ramips-mt7628-tplink_tl-wr842n-v5-squashfs-tftp-recovery.bin"
   to "tp_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 for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2018-06-16 10:08:51 +02:00
David Bauer
82fa7b9d78 ramips: use phytpt trigger for mt76 wireless
With this change, the LED trigger is independent from the (wireless)
netdev name. The (wireless) netdev name can be easiliy changed in
OpenWrt and would require an update of the netdev trigger settings each
time it is done.

This change is (for now) applied only to MT7628 devices from TP-Link, as
we only had the possibility to test this change against two of those
devices, namely a TL-WR841 v13 and a Archer C50 v3.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-16 10:08:51 +02:00
lbzhung
291e34edff ramips: fix mt7688 watchdog register base addr
I found mt7688 watchdog not working. The watchdog registers are identical
for mt7621 and mt7628/mt7688. The first watchdog related register is at
0x10000100, the last one - a 16bit sized - at 0x10000128.

Set the correct register address and size in the dtsi file to get the
watchdog working.

Signed-off-by: lbzhung <gewalalb@gmail.com>
[add commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-16 10:08:51 +02:00
Mathias Kresin
5da2c68d00 ramips: mt7621: fix mtu setting with kernel 4.14
Since kernel 4.10 commit 61e84623ace3 ("net: centralize net_device
min/max MTU checking"), the range of mtu is [min_mtu, max_mtu], which
is [68, 1500] by default.

It's necessary to set a max_mtu if a mtu > 1500 is supported.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-16 10:08:51 +02:00
Felix Fietkau
2f3c5fe962 mt76: update to the latest version
9090f9c mt76x2: fix threshold for gain adjustment
2cbaa57 mt76x2: fix swapped values for RXO-18 in gain control
a39ab70 mt76x2: adjust AGC control register 26 based on gain for VHT80
4936c0c mt76x2: clear false CCA counters after changing gain settings
1528fe7 mt76x2: fix variable gain adjustment range
f3522e1 mt76x2: add a debugfs file to dump agc calibration information
65e161b mt76x2: fix tracking rssi for dynamic gain adjustment

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-15 20:56:31 +02:00
Daniel Golle
70f4845777 ltq-vdsl-fw: strip legacy dsl_fw logic
We unfortunately dropped support for persistent in-flash DSL firmware.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-15 13:30:47 +02:00
Daniel Golle
c8ac28237d ltq-vdsl-app: use downloaded vectoring firmware
Use vectoring firmware downloaded via vdsl_fw_install.sh from
ltq-vdsl-fw package for annex B and annex J.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-15 13:28:38 +02:00
Daniel Golle
0653e31270 lantiq-vdsl-fw: update to provide recent vectoring firmware
Recent Speedport firmware downloads only work over HTTPS, so the user
either needs to provide the already downloaded file or install
ustream-ssl-* as well as ca-certificates or ca-bundle.

So to get VDSL2 with vectoring on xRX200, simply run
vdsl_fw_install.sh
on the target and either provide the downloaded file as instructed or
make sure the device is connected to the Internet and can download that
HTTPS url itself.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-15 12:45:37 +02:00
Daniel Golle
8e2f8b0c83 Revert "lantiq: get rid of ltq-vdsl-fw"
This reverts commit 0938233fcd.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-15 12:45:37 +02:00
Daniel Golle
f47d7df6a8 ucert: fix build
set PKG_BUILD_DIR before including package.mk to avoid problems as
seen on buildbot.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-15 08:57:44 +02:00
Daniel Golle
5e9470a93b libjson-c: fix host-build
Add -Wno-implicit-fallthrough to HOST_CFLAGS.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 22:53:58 +02:00
Daniel Engberg
8428156f48 package/libs/libnfnetlink: Remove dead mirror
Remove mirrors.evolva.ro as it's no longer available

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-14 21:48:38 +02:00
Daniel Golle
56e3a19ad6 libubox: make sure blobmsg-json is included in host-build
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 20:30:47 +02:00
Daniel Golle
6fc8e06078 libjson-c: add host build (for libblobmsg-json)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 20:09:29 +02:00
Daniel Golle
1b8f3d9c2e ucert: add package
ucert is a wrapper around usign to allow delegation and revocation of
public keys for future use in sysupgrade.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This work was sponsored by WIO (wiowireless.com)
2018-06-14 19:39:25 +02:00
Daniel Golle
037ef13a16 brcm2708: move wifi calibration EEPROMs out of base-files
Ship EEPROM blobs for specific supported board only and don't have them
lurking around in our source tree but rather download them from
@github/RPi-Distro/firmware-nonfree upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 18:15:33 +02:00
Daniel Golle
a2f17214cd brcm2708: add brcmfmac-firmware-43455-sdio to DEFAULT_PACKAGES
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 13:54:17 +02:00
Daniel Golle
3a40a7d5a5 brcm2708: add RPi3+ wifi calibration data
Add files from
https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43455-sdio.txt
https://github.com/RPi-Distro/firmware-nonfree/raw/master/brcm/brcmfmac43455-sdio.clm_blob

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 13:54:17 +02:00
Daniel Golle
2826471254 linux-firmware: add firmware for BCM43455 SDIO wlan found on RPi3B+
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-14 13:54:17 +02:00
Felix Fietkau
5101515375 kernel: fix conntrack fixup of offloaded flows on timeout
Fixes excessively long conntrack timeout of short lived connections

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-14 11:25:24 +02:00
Felix Fietkau
68ab89854f kernel: fix conntrack leak for flow_offload connections
This was caused by a race condition between offload teardown and
conntrack gc bumping the timeout of offloaded connections

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-13 12:54:45 +02:00
Felix Fietkau
e820734f79 kernel: allow hardware NAT offload drivers to keep a priv pointer
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-13 12:54:25 +02:00
Felix Fietkau
ec502cd3fe ramips: rename ethernet driver folder to the same one that upstream uses
Preparation for sharing offload code with the mediatek target through
generic files/

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-13 12:54:25 +02:00
Felix Fietkau
b560c1748a kernel: avoid flow offload for connections with xfrm on the dst entry (should fix IPSec)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-13 12:54:25 +02:00
Daniel Engberg
df02e7a3c7 tools/bison: Update to 3.0.5
Update bison to 3.0.5
Bugfix release
Remove 001-fix-macos-vasnprintf.patch as it is fixed upstream

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-13 12:15:47 +02:00
Daniel Engberg
79bab45772 popt: Add backup site
Add Gentoo's distfiles repo as backup site.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-13 12:15:38 +02:00
Daniel Engberg
651a62353b tools/e2fsprogs: Update to 1.44.2
Update e2fsprogs to 1.44.2

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-06-13 12:15:30 +02:00
Matthias Schiffer
3b6f865b01 base-files: sysupgrade: fix handing get_image unpack commands
On bcm53xx and brcm47xx, commands are passed to default_do_upgrade that
expect the image to be passed on stdin, rather than as an argument.

Fixes: 30f61a34b4 ("base-files: always use staged sysupgrade")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-11 19:25:40 +02:00
Hans Dedecker
c22117a791 toolchain/glibc: update to latest 2.26 commit
7b52c8ae05 libio: Avoid _allocate_buffer, _free_buffer function pointers [BZ #23236]

Refresh patches

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-11 18:07:47 +02:00
Hans Dedecker
31f35be016 odhcp6c: user string option support
ca8822b odhcp6c: add support for user string options

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-11 15:48:32 +02:00
Hans Dedecker
8d60f6ee40 dnsmasq: fix confdir option processing (FS#1572)
Fix condir option processing allowing to use the format
"<directory>[,<file-extension>......]," as documented on the dnsmasq man
page which previously resulted into bogus dir being created.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-11 11:41:26 +02:00
Hauke Mehrtens
83483ba787 kernel/modules: fix kmod-mdio-gpio module dependencies
On some targets this module depends on kmod-of-mdio.

This is similar to the fixes done in:
dc629d9cf5 ("kernel: fix kmod-switch-rtl8366-smi dependency")
56bd23cf52 ("kernel: let kmod-rtl8366-smi conditionally depend on kmod-of-mdio")

Fixes: 32f32398af ("kernel/modules: add kmod-mdio-gpio module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-06-10 22:04:27 +02:00
Kevin Darbyshire-Bryant
f60301db74 kernel: bump 4.9 to 4.9.107
Refresh patches.

Compile-tested for: ar71xx
Run-tested on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-09 22:39:17 +02:00
Martin Schiller
5609bbabf1 kernel/modules: add kmod-switch-rtl8306 module
Add kernel module for kmod-switch-rtl8306.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-06-09 22:39:17 +02:00
Martin Schiller
32f32398af kernel/modules: add kmod-mdio-gpio module
Add kernel module package for kmod-mdio-gpio.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-06-09 22:39:17 +02:00
Florian Eckert
2f46f43754 kernel/modules: add kmod-adcxx module
Add kernel module package for kmod-adcxx.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-06-09 22:39:17 +02:00
Martin Schiller
503ac967c5 kernel/modules: add kmod-random-tpm module
Add kernel module package for kmod-random-tpm.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-06-09 22:39:17 +02:00
Jeremiah McConnell
390c4df2c0 mvebu: enable SATA port multiplier support
Some of the Marvell targets have functional SATA port multiplier
support, which is required for multi-bay eSATA enclosures.  Enable
kernel support by setting CONFIG_SATA_PMP.

Closes: FS#1232 and FS#547

Signed-off-by: Jeremiah McConnell <miah@miah.com>
2018-06-09 16:32:39 +02:00
Sven Eckelmann
4270847a2c mac80211: ath10k: Allow to enable the thermal code of ath10k
Some ath10k firmware versions allow to access the chip internal a
temperature sensor and allow to reduce the amount of the time when the card
is allowed to send. The latter is required on devices which tend to
overheat.

An userspace service has to read
/sys/class/ieee80211/phy*/device/hwmon/hwmon*/temp1_input regularly and
then decide how much the device has to be throttled. This can be done by
writing to /sys/class/ieee80211/phy*/device/cooling_device/cur_state. By
default it is not throttled (0) but it can be throttled up to 100(%).

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-06-09 16:32:39 +02:00
Martin Schiller
eee8ab59dc ltq-vdsl-mei: reset g_tx_link_rate on showtime exit
Without this change, ifx_mei_atm_showtime_check() will always return
"showtime" after one call of MEI_InternalXtmSwhowtimeEntrySignal()
was done, even if MEI_InternalXtmSwhowtimeExitSignal() was called
in the meantime.

The ifx_mei_atm_showtime_check() function is used by the ltq-atm and
ltq-ptm driver.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-06-09 16:32:39 +02:00
Matthias Badaire
6ea0807f18 ramips: fix network config for ravpower wd03
This device has only one ethernet port.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
[add the existing eth0 as lan block, shorten commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-06-09 13:45:29 +02:00
David Bauer
daeab36c1b ar71xx: use Power-LED as Diag-LED on FRITZBox 4020
This commit makes use of the Power-LED as Diag-LED, allowing the LED to
work as a status indicator.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-09 13:45:29 +02:00
David Bauer
9ec117c5be ar71xx: fix AVM package selection
The AVM package selection partially broke with the addition of the
FRITZ!Box 4020. This commit restores the intended behavior.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-09 13:45:29 +02:00
Lucian Cristian
c8677ca89e ath79: add tl-mr3020-v1 support
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-08 12:19:49 +02:00
Karl Palsson
8c15fb5240 ath79: wr1043: fix DTC warnings
Use the "correct" unit name to avoid DTC warnings.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:29 +02:00
Karl Palsson
5e69dce0e7 ath79: glinet ar150: fix DTC warnings
Supply a unit name to match other .dts files and avoid DTC warnings.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:28 +02:00
Karl Palsson
9dad82c5d6 ath79: ubnt: fix DTC warnings
Use explicit labels instead of units with no reg's to avoid DTC
warnings.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:28 +02:00
Karl Palsson
93ff973c97 ath79: wdr4300: avoid DTC warnings
Use direct button labels to avoid dtc warnings

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:28 +02:00
Karl Palsson
29b2804c6b ath79: buffalo_wzr-hp-g450h: fix dtc warnings
Just name buttons directly, rather than abstract and then also a label.
Likewise for leds.  Avoids DTC warnings about unit address with no reg
parameter.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:28 +02:00
Karl Palsson
97326e5131 ath79: avm_fritz300e: avoid dtc warnings
Use number formats preferred by the device tree compiler

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:28 +02:00
Karl Palsson
d25d847e78 ath79: mdio: add address-cells and size-cells defaults
Eliminates warnings about relying on defaults from the device tree
compiler.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:27 +02:00
Karl Palsson
35aae0735c ath79: ar9330.dtsi: fix typo in USB unit name
Make the unitname match the reg address.  This fixes a DTC warning.

Tested that USB is still functional on an ar9331 device including this
dtsi.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:27 +02:00
Karl Palsson
1588114cf2 ath79: add etactica-eg200 support
Based on original ar71xx eg200 board files

Tested working:
* usb hub, storage and serial port
* ethernet
* wifi
* leds
* button

sysupgrade from self->self passes validity checks.
sysupgrade from old ar71xx->ath79 passes. (however this doesn't migrate
wireless driver configs)

Only unknown issue is the existance of a /sys/class/leds/ath9k-phy0,
which doesn't "exist"

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-06-08 09:56:27 +02:00
INAGAKI Hiroshi
a32c06f44d ramips: add support for I-O DATA WN-GX300GR
I-O DATA WN-GX300GR is a 2.4 GHz band 11n router, based on MediaTek
MT7621S.

Specification:

- MT7621S (1-Core, 2-Threads)
- 64 MB of RAM
- 8 MB of Flash (SPI)
- 2T2R 2.4 GHz
- 5x 10/100/1000 Mbps Ethernet
- 2x LEDs, 4x keys (2x buttons, 1x slide switch)
- UART header on PCB
  - Vcc, GND, TX, RX from ethernet port side
  - baudrate: 115200 bps (U-Boot, OpenWrt)

Flash instruction using initramfs image:

1. Connect serial cable to UART header
2. Rename OpenWrt initramfs image for WN-GX300GR to "uImageWN-GX300GR"
and place it in the TFTP directory
3. Set the IP address of the computer to 192.168.99.8, connect to the
LAN port of WN-GX300GR, and start the TFTP server on the computer
4. Connect power cable to WN-GX300GR and turn on the router
5. Press "1" key on the serial console to interrupt boot process on
U-Boot, press Enter key 3 times and start firmware download via TFTP
6. WN-GX300GR downloads initramfs image and boot with it
7. On the initramfs image, execute "mtd erase firmware" to erase stock
firmware and execute sysupgrade with sysupgrade image for WN-GX300GR
8. Wait ~150 seconds to complete flasing

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-06-08 09:56:27 +02:00
Krystian Kozak
0e9927d157 sparse: updated to version 0.5.2
Updated to latest stable release

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-06-08 09:56:26 +02:00
Adoal Xu
a51078f735 ath79: add TP-Link TL-MR10U port
Signed-off-by: Adoal Xu <adoalxu@gmail.com>
2018-06-08 09:56:15 +02:00
Sven Eckelmann
4f6320704f ar71xx: Fix offset to WMAC address for 8devices Lima
The ART partition of the Lima board stores exactly three mac addresses:

* 0x0: eth0
* 0x6: eth1
* 0x1002: wmac

The first two are correctly assigned in the mach file but the latter points
to 0x800. But this position is set to ff:ff:ff:ff:ff:ff. Luckily, the
driver falls back in ath9k_hw_init_macaddr to the EEPROM mac address when
it doesn't find a valid mac address in the platform_data.

Remove this bogus offset to the ART partition to directly load the wmac via
the EEPROM data in the ART partition.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-06-08 09:39:14 +02:00
Christian Lamparter
daf19649db mtd-utils: revert faulty upstream patch for now
Some of the ubi-tools in the upstream mtd-utils have been
broken by a bad patch upstream. It causes major breakage
during sysupgrade when the kernel, rootfs, ... volumes
are deleted in the wrong order.

This patch therefore reverts the faulty upstream commit which
fixes the bug.

linux-mtd mailing-list thread:
<http://lists.infradead.org/pipermail/linux-mtd/2018-June/081562.html>

Cc: John Crispin <john@phrozen.org>
Reported-by: L. Wayne Leach <LLeachii@aol.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-06-08 09:31:37 +02:00
Rosen Penev
289b2f5e85 ramips: mt7621: Fix some cosmetic DTC warnings
Node /cpus/cpu@0 has a unit name, but no reg property
Node /cpus/cpu@1 has a unit name, but no reg property
Node /cpuintc@0 has a unit name, but no reg property
Node /cpuclock@0 has a unit name, but no reg property
Node /sysclock@0 has a unit name, but no reg property
Node /pcie@1e140000/pcie0 missing ranges for PCI bridge (or not a bridge)
Node /pcie@1e140000/pcie0 missing bus-range for PCI bridge
Node /pcie@1e140000/pcie1 missing ranges for PCI bridge (or not a bridge)
Node /pcie@1e140000/pcie1 missing bus-range for PCI bridge
Node /pcie@1e140000/pcie2 missing ranges for PCI bridge (or not a bridge)
Node /pcie@1e140000/pcie2 missing bus-range for PCI bridge

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-06-08 09:31:37 +02:00
Rosen Penev
66cc6dd6c4 ramips: mmc: Add back some non-mt7621 code that staging removed
This reverts commit 8a570921b5.

This seems to have been accidentally reverted. This fixes mt7620 and
mt7628.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Acked-by: Daniel Golle <daniel@makrotopia.org>
2018-06-08 09:31:36 +02:00
Kevin Darbyshire-Bryant
8110bf18f4 ramips: mir3g dts define usb port Vcc volt regulator GPIO
Define USB port power on/off GPO as voltage regulator type instead of
exposing as a normal GPIO.

The GPO is now controlled by the USB driver via the voltage regulator
definition.  The regulator is of fixed output type (5V for USB) hence the
GPO switches power on/off to USB pin 1 (Vcc)

USB port power is enabled on driver load and disabled on driver unload.

Enable kernel support for fixed voltage regulator types on mt7621.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-08 09:31:36 +02:00
Christian Lamparter
4363b5362f ipq40xx: flesh out MR33's pcie dts definitions
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-06-08 09:31:36 +02:00
Christian Lamparter
146fbeb81c ipq40xx: fix OpenMesh A62 dtc warnings
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0 missing ranges for PCI bridge (or not a bridge)
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0 missing bus-range for PCI bridge
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0/ath10k@0,0 node name is not "pci" or "pcie"
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0/ath10k@0,0 missing ranges for PCI bridge (or not a bridge)
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0/ath10k@0,0 incorrect #address-cells for PCI bridge
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0/ath10k@0,0 incorrect #size-cells for PCI bridge
Warning (pci_bridge): Node /soc/pci@40000000/pcie@0/ath10k@0,0 missing bus-range for PCI bridge
Warning (unit_address_format): Failed prerequisite 'pci_bridge'
Warning (pci_device_reg): Failed prerequisite 'pci_bridge'
Warning (pci_device_bus_num): Failed prerequisite 'pci_bridge'

Cc: Sven Eckelmann <sven.eckelmann@openmesh.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Tested-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-06-08 09:31:36 +02:00
Christian Lamparter
2f1fa04587 ipq40xx: fix dtc warning about /soc/ad-hoc-bus missing a unit name
This patch fixes a dtc warning that shows up for every device
Warning (unit_address_vs_reg): Node /soc/ad-hoc-bus has a reg or ranges property, but no unit name

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-06-08 09:31:35 +02:00
Christian Lamparter
b22e37528b ipq40xx: set #size-cells to 0 to fix warning
qcom-ipq4018-ex6100v2.dtb: Warning (reg_format): "reg" property in
	/led_spi/led_gpio@0 has invalid length (4 bytes)
qcom-ipq4018-ex6100v2.dtb: Warning (avoid_default_addr_size):
	Relying on default #size-cells value for /led_spi/led_gpio@0

Cc: Thomas Hebb <tommyhebb@gmail.com>
Cc: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-06-08 09:31:35 +02:00
Koen Vandeputte
55b4b1eba0 ar71xx: fix USB switch to mPCIE for Mikrotik rb91x boards
Some devices like the Mikrotik RB912 only have 1 USB port
which is shared between an USB A type port, and the mini PCIe socket.

Toggling a gpio selects the output to which USB is connected.

Since kernel 4.9, gpio base is rounded up to a value of 32.

Commit 65da6f9ca1 ("ar71xx: fix secondary gpio controller base values") accounts correctly for that.
In this commit, rb912 sees it's value changed from AR934X_GPIO_COUNT (23) to 32
This means that the USB toggle gpio number actually also changes from 52 to 61.

But ..
Some of these GPIO numbers are also used in other locations, like the boardfile.
The author forgot to also change them over there.

Switching the USB port to mPCIe now shows my modem is correctly discovered again:

[ 2863.864471] usb 1-1: new high-speed USB device number 4 using ehci-platform
[ 2864.055303] usb 1-1: config 1 has an invalid interface number: 8 but max is 3
[ 2864.062728] usb 1-1: config 1 has no interface number 1
[ 2864.074567] qcserial 1-1:1.0: Qualcomm USB modem converter detected
[ 2864.081474] usb 1-1: Qualcomm USB modem converter now attached to ttyUSB0
[ 2864.111960] qcserial 1-1:1.2: Qualcomm USB modem converter detected
[ 2864.118976] usb 1-1: Qualcomm USB modem converter now attached to ttyUSB1
[ 2864.139808] qcserial 1-1:1.3: Qualcomm USB modem converter detected
[ 2864.146777] usb 1-1: Qualcomm USB modem converter now attached to ttyUSB2
[ 2864.165276] qmi_wwan 1-1:1.8: cdc-wdm0: USB WDM device
[ 2864.171879] qmi_wwan 1-1:1.8 wwan0: register 'qmi_wwan' at usb-ehci-platform-1, WWAN/QMI device, 02:00:44:ed:3b:11

Fixes: 65da6f9ca1 ("ar71xx: fix secondary gpio controller base values")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Cc: Robin Leblon <robin.leblon@ncentric.com>
Cc: Felix Fietkau <nbd@nbd.name>
2018-06-08 09:31:35 +02:00
Krystian Kozak
c844d6a8e4 imx-uuc: updated to latest git HEAD
8e29d86 linuxrc: remove superfluous shebang line
12d2045 gitignore: remove Windows stuff
57d8969 Add travis hint
8edf4cc sdimage: use fsync before closing the device (fixes #1)
d395b31 uuc: fix some compiler warnings

Signed-off-by: Krystian Kozak <krystian.kozak20@gmail.com>
2018-06-08 09:30:57 +02:00
Adi Shammout
e4259bed3f busybox: udhcpc: no MSG_DONTROUTE when sending packet
This reverts a change made in Sep 2017 [1] which introduced
MSG_DONTROUTE flag to prevent udhcpc from reaching out to servers on a
different subnet. That change violates RFC2131 by forcing fully
configured clients, who got their configurations through an offer
relayed by a DHCP relay, from renewing through a unicast request
directly to the DHCP server, resulting in the client resorting to
boradcasting lease extension requests instead of unicasting them,
further breaking RFC2131.

The problem with MSG_DONTROUTE appears when talking to a properly
configured DHCP server that rejects non-compliant requests. Such server
will reject lease extension attempts sent via broadcast rather than
unicast, as is the case with Finnish ISPs Telia and DNA as well as
Estonian ISP Starman. Once the lease expires without renewal, udhcpc
enters init mode, taking down the interfaces with it, and thus causing
interruption on every lease expiry. On some ISPs (such as the ones
mentioned above) that can be once every 10-20 minutes. The interruptions
appear in the logs as such:
----
udhcpc: sending renew to x.x.x.x
udhcpc: send: Network unreachable
udhcpc: sending renew to 0.0.0.0
udhcpc: sending renew to 0.0.0.0
...
udhcpc: lease lost, entering init state
Interface 'wan' has lost the connection
Interface 'wan' is now down
Network alias 'eth0' link is down
udhcpc: sending select for y.y.y.y
udhcpc: lease of y.y.y.y obtained, lease time 1200
Network alias 'eth0' link is up
Interface 'wan' is now up
----

During lease extension, a fully configured client should be able to
reach out to the server from which it recieved the lease for extension,
regardless in which network it is; that's up to the gateway to find. [2]
This patch ensures that.

[1]
http://lists.busybox.net/pipermail/busybox-cvs/2017-September/037402.html
[2]
https://www.netmanias.com/en/post/techdocs/6000/dhcp-network-protocol/
understanding-dhcp-relay-agents

Signed-off-by: Adi Shammout <adi.shammout@outlook.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2018-06-07 21:44:04 +02:00
Karl Palsson
987e10af07 logd: create log directory for log_file
If log_file is specified, make sure its directory exists.

Signed-off-by: Karl Palsson <karlp@etactica.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2018-06-07 17:19:42 +02:00
Lucian Cristian
a0a616e1b8 ath79: fix qca956x SoC boot
based on old ar71xx irq.c driver

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-06-07 09:38:52 +02:00
David Bauer
e36f8b3f39 ar71xx: add support for OCEDO Koala
This commit adds support for the OCEDO Koala

SOC:	Qualcomm QCA9558 (Scorpion)
RAM:    128MB
FLASH:  16MiB
WLAN1:  QCA9558 2.4 GHz 802.11bgn 3x3
WLAN2:  QCA9880 5 GHz 802.11nac 3x3
INPUT:  RESET button
LED:    Power, LAN, WiFi 2.4, WiFi 5, SYS
Serial: Header Next to Black metal shield
        Pinout is 3.3V - GND - TX - RX (Arrow Pad is 3.3V)
        The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet
 - 2.4 GHz WiFi
 - 5 GHz WiFi
 - TFTP boot from ramdisk image
 - Installation via ramdisk image
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

Installation seems to be possible only through booting an OpenWRT
ramdisk image.

Hold down the reset button while powering on the device. It will load a
ramdisk image named 'koala-uImage-initramfs-lzma.bin' from 192.168.100.8.

Note: depending on the present software, the device might also try to
pull a file called 'koala-uimage-factory'. Only the name differs, it
is still used as a ramdisk image.

Wait for the ramdisk image to boot. OpenWRT can be written to the flash
via sysupgrade or mtd.

Due to the flip-flop bootloader which we not (yet) support, you need to
set the partition the bootloader is selecting. It is possible from the
initramfs image with

 > fw_setenv bootcmd run bootcmd_1

Afterwards you can reboot the device.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-06-07 09:31:58 +02:00
Denton Gentry
a84962ea35 hostapd: make cli treat UNKNOWN COMMAND as failing
Avoid infinite loop at 100% CPU when running hostapd_cli
if CONFIG_CTRL_IFACE_MIB is not defined.

  _newselect(4, [3], NULL, NULL, ...)
  recvfrom(3, "UNKNOWN COMMAND\n", 4095, 0, NULL, NULL) = 16
  sendto(3, "STA-NEXT UNKNOWN COMMAND", 24, 0, NULL, 0) = 24

Signed-off-by: Denton Gentry <denny@geekhold.com>
2018-06-07 09:27:50 +02:00
Hannu Nyman
fb8a578aa7 ipq806x: Enlarge R7800 flash - use netgear partition
Increase the available flash memory size in Netgear R7800
by taking into the use the unused "netgear" partition
that is located after the firmware partition.

Available flash space for kernel+rootfs+overlay increases
by 68 MB from 32 MB to 100 MB.

In a typical build, overlay space increases from 15 to 85,
increasing the package installation possibilities greatly.

Reverting to the OEM firmware is still possible, as the OEM
firmware contains logic to initialise the "netgear" partition
if its contents do not match expectations. In OEM firmware,
"netgear" contains 6 UBI sub-partitions that are defined in
/etc/netgear.cfg and initialisation is done by /etc/preinit

Tested with Openwrt master r7093-4fdc6ca31b and OEM V1.0.2.52

Reference to forum discussion in Netgear R7800 exploration thread:
https://forum.lede-project.org/t/netgear-r7800-exploration-ipq8065-qca9984/285/1118
(messages 1118-1158)

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-06-07 09:19:39 +02:00
Rosen Penev
fff65dbe24 ipq806x: Limit NR_CPUS to 2
ipq806x is all dual core processors. ipq807x is quad core. Removes this
from dmesg:

RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-06-07 09:06:19 +02:00
Rosen Penev
2737cea0bb ethtool: Update to 4.16
Tested on Turris Omnia (mvebu).

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-06-07 09:06:04 +02:00
Rosen Penev
802afaaf5e iperf: Update to 2.0.11
Tested on Turris Omnia (mvebu).

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-06-07 09:05:48 +02:00
Rosen Penev
525b8f0650 gdb: Update to 8.1
Tested on Turris Omnia (mvebu).

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-06-07 09:05:32 +02:00
Rosen Penev
d12d81f8d4 strace: Update to 4.22
SourceForge is deprecated according to upstream, so switch to main site
for downloads.

Tested on Turris Omnia (mvebu).

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-06-07 09:05:12 +02:00
Koen Vandeputte
2792ef55ab kernel: bump 4.9 to 4.9.106
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-06-07 09:04:46 +02:00
Catrinel Catrinescu
dc1268cb11 ath79: add WLAN, Ethernet-Switch with LAN/WAN and Status LED to Dorin
Signed-off-by: Catrinel Catrinescu <cc@80211.de>
2018-06-07 09:02:04 +02:00
Luis Araneda
32ab2e16b1 zynq: remove support for kernel 4.4
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
88f7e2386a zynq: switch to kernel 4.14
Also, remove the source-only qualifier

Run-tested: ZedBoard

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
19c3dc60e4 zynq: refresh kernel 4.14 configuration
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
74dffd592b zynq: copy config to kernel 4.14
The file will be used as a base configuration
for kernel 4.14

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
8c8499f0ea uboot-zynq: update to 2017.03
Compile-tested: ZedBoard

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
61b977fa2c zynq: fix detection of the zybo board
The board_name was being tested for "xlnx,zynq-zybo",
but the .dts compatible string is "digilent,zynq-zybo"

Also, sorted the boards alphabetically, and added an
error message for unsupported boards

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
7967e6c067 zynq: remove hard-coded network configuration
This is no longer necessary since commit 57776e6
(base-files: remove default /etc/config/network,
generate it via board.d instead)

Run-tested: ZedBoard

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Luis Araneda
dfac3ffd07 zynq: reworked image creation process
After commit a1248da (zynq: convert to new image build code),
all boards, became unbootable, entering into a boot loop.

Replace the compressed kernel zImage by an uncompressed Image,
which is compressed after with gzip. Also, enable the creation
of an initramfs image by default.

Change images' filename to match the compatible string from the
respective .dts file (<vendor>_<model>). Also, use the shared
mkits.sh script and remove the target specific one.

Fixes: FS#1204

Run-tested: ZedBoard

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-06-07 09:00:49 +02:00
Christo Nedev
c335649629 brcm2708: Update brcm2708-gpu-fw package
Problem - rapsberry pi 3 b/b+ does not boot with bcm2710 images!

How Raspberry Pi boots Actualy?

When Raspberry is switched on GPU is activated.
1. GPU execute First stage bootloader from ROM.
First stage bootloader mount the FAT boot partition on the SD card
and execute second stage bootloader (bootcode.bin).
2. Second stage bootloader (bootcode.bin) activate SDRAM.
Load the GPU firmware (start.elf).
3. GPU firmware (start.elf)
  a) display Rainbow splash.
  b) read firmware configuration file config.txt and
     split the RAM using fixup.dat.
  c) loads a cmdline.txt
  d) enables the CPU.
  e) loads the kernel image configurable via config.txt

In your target/linux/brcm2708/image/config.txt
 493 ## kernel (string)
 494 ##     Alternative name to use when loading kernel.
 495 ##
 496 #kernel=""
it is not configured!

But in your target/linux/brcm2708/image/Makefile
  75   KERNEL_IMG := kernel8.img
  76   DEVICE_TITLE := Raspberry Pi 3B/3B+
you have kernel8.img

GPU Firmware search order by default for a PI 3 is:
kernel8.img if found boot in 64 bit mode
kernel8-32.img if found boot in 32 bit mode
kernel7.img if found boot in 32 bit mode
kernel.img if found boot in 32 bit mode

But a PI 2 will start the search from kernel7.img and
a PI 1 only looks for kernel.img.

Оbviously the kernel has been found.
But something goes wrong and the device is restarted.

In your package/kernel/brcm2708-gpu-fw/Makefile
  11 PKG_NAME:=brcm2708-gpu-fw
  12 PKG_VERSION:=2017-08-08
  13 PKG_RELEASE:=e7ba7ab135f5a68b2c00a919ea9ac8d5528a5d5b
boot loader is 10 monts old.

In conclusion, the best way to solve the problem is
to update the boot loader!

Fixup_cd.dat and start_cd.elf files are not necessary.
These are used when GPU memory is set to 16 MB, which disables
some GPU features.
I did not remove them just in case!

cheers

Signed-off-by: Christo Nedev <christo.nedev@gmail.com>
2018-06-07 09:00:13 +02:00
Daniel Golle
8796680277 ramips: fix reboot with W25Q256 with 4-address-mode enabled
Some board vendors actually changed the loader to expect the chip
to come up in 4-address-mode and flipped the ADP bit in the flash
chip's configuration register which makes it come up in 4-address-mode.
Hence it doesn't make sense to avoid switching to 4-address-mode on
those boards but the opposite as otherwise reboot hangs eg. on the
WrtNode2 boards. Fix this by checking the ADP register and only using
SPI_NOR_4B_READ_OP on chips which have ADP==0 (come up in 3-byte mode).

See also datasheet section 7.1.11 Power Up Address Mode (ADP)

Fixes: 22d982ea0 ("ramips: add support for switching between 3-byte and 4-byte addressing on w25q256 flash")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-07 02:34:13 +02:00
Hans Dedecker
1bbe813db0 ebtables: update to latest git 2018-06-06
5699354 extensions: fix build failure on fc28
e6359ee build: update ebtables.h from kernel and drop local unused copy

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-06 22:34:41 +02:00
Matthias Schiffer
0c0bb62999 ar71xx: switch CPE/WBS 210/510 to okli-loader
We recently increased the kernel partition size of the CPE/WBS 210/510.
This works fine for new installations of the factory image, but on
sysupgrades, the partition table read by the bootloader is not adjusted.
This limits the maximum size of the kernel loaded by the bootloader to the
old partition size.

While adjusting the partition table would be a cleanest solution, such a
migration would have to happen before an upgrade to a new version with a
newer kernel. This is error-prone and would require a two-step upgrade, as
we mark the partition table partition read-only.

Instead, switch from the lzma-loader with embedded kernel to the
okli-loader, so only the tiny lzma-loader is loaded by the bootloader as
"kernel", and the lzma-loader will then load the rest of the kernel by
itself.

Fixes: e39847ea2f ("ar71xx: increase kernel partition size for CPE/WBS 210/510")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-06 22:25:53 +02:00
Matthias Schiffer
c57e182b56 ath79: lzma-loader: sync with ar71xx target
Import all improvements made in the lzma-loader since development on the
ath79 target started.

This also reverts fe594bf90d ("ath79: fix loader-okli, lzma-loader"), as
is obsoleted by 2ad60168b6af ("ar71xx: lzma-loader: move padding workaround
to gzip step").

Likely, many of the changes should be ported to the ramips lzma-loader as
well, but I don't have a device to test this.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-06 22:25:53 +02:00
Matthias Schiffer
108a6f6792 ar71xx: make loader-okli build step more generic
Add support for different loader types.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-06 22:25:53 +02:00
Matthias Schiffer
9968dcedb4 ar71xx: lzma-loader: constify kernel argv array
By making the kernel argv array const, the .data section can always be
omitted from the laoder binary.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-06 22:25:52 +02:00
Matthias Schiffer
8d851a95b7 ar71xx: lzma-loader: set page size to 4KB
The text section in the ELF loader is aligned to the maximum page size,
which defaults to 64KB. Reduce it to the actual page size to avoid wasting
flash space for this alignment.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-06 22:25:52 +02:00
Matthias Schiffer
a28e46b7cc ar71xx: lzma-loader: move padding workaround to gzip step
Some devices (TP-Link TL-WR1043ND v1) don't boot reliably when the
uncompressed loader is too small. This was workarounded in the loader by
adding 512KB of padding to the .data section of the loader binary.

This approach had two issues:

- The padding was only working when .data was non-empty (otherwise the
  section would become NOBITS, omitting it in the binary). .data was only
  empty when no CMDLINE was set, leading to further workarounds like
  fe594bf90d ("ath79: fix loader-okli, lzma-loader"), and this
  workaround was only effective because a missing "const" led to the kernel
  argv being stored in .data instead of .rodata
- The padding was not only added to the compressed .gz loader, but also
  uncompressed .bin and .elf loaders. The prevented embedding the kernel
  cmdline in the loader for non-gz loader types.

To fix both issues, move the creation of the padding from the linker script
to the gzip step.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-06-06 22:25:52 +02:00
Tony Ambardar
73d8a6ab76 base-files: fix UCI config parsing and callback handling
There are several long-standing issues present in the UCI shell API as
documented in https://wiki.openwrt.org/doc/devel/config-scripting. They
relate both to high-level, user-defined callback functions used to
process UCI config files, and also to low-level functions used within
scripts generally.

The related problems have been encountered now and in the past, e.g.
https://forum.openwrt.org/viewtopic.php?id=54295, and include:

a) UCI parsing option() function and user-defined option_cb() callbacks
being erroneously called during processing of "list" config file entries;

b) normal usage of the low-level config_set() unexpectedy calling any
defined option_cb() if present; and

c) handling of the list_cb() not respecting the NO_CALLBACK variable.

Root causes include a function stack "inversion", where the low-level
config_set() function incorrectly calls the high-level option() function,
intended only for processing the "option" keyword of UCI config files.

This change addresses the inversion and other issues, making the option
handling code more consistent and smaller, and simplifying developers'
usage of UCI callbacks.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2018-06-06 15:00:08 +02:00
Stijn Tintel
e52f3e9b13 kernel: bump 4.14 to 4.14.48
Remove upstreamed patches:
generic/pending/101-clocksource-mips-gic-timer-fix-clocksource-counter-w.patch
generic/pending/103-MIPS-c-r4k-fix-data-corruption-related-to-cache-coherence.patch
generic/pending/182-net-qmi_wwan-add-BroadMobi-BM806U-2020-2033.patch
lantiq/0025-MIPS-lantiq-gphy-Remove-reboot-remove-reset-asserts.patch
Update patches that no longer apply:
generic/pending/811-pci_disable_usb_common_quirks.patch
ath79/0009-MIPS-ath79-add-lots-of-missing-registers.patch

Fixes CVE-2018-6412.

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

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-06-05 22:54:00 +03:00
Ted Hess
7590c3c58f scripts: Replace obsolete POSIX tmpnam in slugimage.pl with File::Temp function
Signed-off-by: Ted Hess <thess@kitschensync.net>
2018-06-05 10:07:42 -04:00
Daniel Golle
987900f2de hostapd: properly build hostapd-only SSL variants
Make sure hostapd-openssl is actually build against OpenSSL, same
for wolfSSL.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-05 15:33:35 +02:00
Daniel Golle
187da94808 kernel: modules: package module for Exar 8250 UARTs
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-05 15:27:36 +02:00
Felix Fietkau
2f3b1dddea kernel: backport patch to fix dst handling for offloaded connections
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-05 10:18:58 +02:00
Felix Fietkau
7d8681ccb9 hostapd: expose device taxonomy signature via ubus
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-05 09:28:04 +02:00
Felix Fietkau
23c1827e34 hostapd: add support for client taxonomy in the full config
This can be used to fingerprint clients to try to identify the exact
model

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-05 09:28:00 +02:00
Felix Fietkau
29e2f9ea5b gcc: remove support for version 6.3.0
It is obsoleted by gcc 7

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-05 09:27:33 +02:00
Felix Fietkau
09ef028e58 mt76: update to the latest version
20c0766 mt7603: adjust rx hang watchdog for MT7628
664e321 mt7603: add extra PSE hang check signature for MT7628
f24b56f update MT7628 firmware to the latest version
d87e4b0 mt7603: clear PSE reset bit if PSE reset fails
0ef26ef mt76: only stop tx queues on offchannel, not during the entire scan
f399da3 mt76: prevent tx scheduling during channel change
21c1e1e mt76: move ieee80211_hw allocation to common core
730c292 mt76: wait for pending tx to complete before switching channel
fcbb49e mt76x2: use udelay instead of usleep_range in mt76x2_mac_stop
792dbe0 mt7603: do not hold dev->mutex while flushing dev->mac_work

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-06-05 08:52:33 +02:00
Hans Dedecker
e4577d2e68 map: make tunnel encapsulation limit support configurable (FS#1501)
Be compatible with ISPs which don't support the destination option header containing
the tunnel encapsulation limit as reported in FS#1501.
Setting the uci parameter encaplimit to ignore; allows to disable the insertion
of the destination option header in the map-e packets.
Otherwise the tunnel encapsulation limit value can be set to a value from 0 till 255
by setting the encaplimit uci parameter accordingly.
If no encaplimit value is specified the default value is 4 as before.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-04 17:07:29 +02:00
Hans Dedecker
082cd951bb netifd: update to latest git HEAD (FS#1501)
a580028 system-linux: make encaplimit configurable for ip6 tunnels (FS#1501)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-04 17:07:15 +02:00
Hans Dedecker
327c711da4 odhcp6c: make ds-lite/map tunnel encapsulation limit support configurable (FS#1501)
Be compatible with ISPs which don't support the destination option header containing
the tunnel encapsulation limit as reported in FS#1501 for dynamic created ds-lite/map
interfaces.
Setting the uci parameter encaplimit_dslite/map to ignore; allows to disable the insertion
of the destination option header for the dynamic created ds-lite/map interface.
Otherwise the tunnel encapsulation limit value can be set to a value from 0 till 255
by setting the encaplimit_dslite/map uci parameter accordingly.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-04 17:05:28 +02:00
Hans Dedecker
a3372953e9 ds-lite: make tunnel encapsulation limit support configurable (FS#1501)
Be compatible with ISPs which don't support the destination option header containing
the tunnel encapsulation limit as reported in FS#1501.
Setting the uci parameter encaplimit to ignore; allows to disable the insertion
of the destination option header in the ds-lite packets.
Otherwise the tunnel encapsulation limit value can be set to a value from 0 till 255
by setting the encaplimit uci parameter accordingly.
If no encaplimit value is specified the default value is 4 as before.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-04 17:04:45 +02:00
Michael Gray
4fdc6ca31b mvebu: fix broken console on WRT32X (venom)
The console bootarg is being corrupted on boot, causing various issues
including broken sysupgrade.
Utilising the bootargs mangle patch from other targets, hardcode the console
arguments and fetch the rootfs from the bootloader.

Kernel command line: console=ttyS0,115200 root=/dev/mtdblock8

Bootloader command line (ignored): console= root=/dev/mtdblock8

Please cherry pick to 18.06 too

Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
2018-06-01 21:01:03 +02:00
Daniel Golle
dcc34574ef oxnas: bring in new oxnas target
Reboot the oxnas target based on Linux 4.14 by rebasing our support on
top of the now-existing upstream kernel support.
This commit brings oxnas support to the level of v4.17 having upstream
drivers for Ethernet, Serial and NAND flash.
Botch up OpenWrt's local drivers for EHCI, SATA and PCIe based on the
new platform code and device-tree.
Re-introduce base-files from old oxnas target which works for now but
needs further clean-up towards generic board support.

Functional issues:
 * PCIe won't come up (hence no USB3 on Shuttle KD20)
 * I2C bus of Akitio myCloud device is likely not to work (missing
   debounce support in new pinctrl driver)

Code-style issues:
 * plla/pllb needs further cleanup -- currently their users or writing
   into the syscon regmap after acquireling the clk instead of using
   defined clk_*_*() functions to setup multipliers and dividors.
 * PCIe phy needs its own little driver.
 * SATA driver is a monster and should be split into an mfd having
   a raidctrl regmap, sata controller, sata ports and sata phy.

Tested on MitraStar STG-212 aka. Medion Akoya MD86xxx and Shuttle KD20.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-01 15:45:06 +02:00
Daniel Golle
d44b7b7d31 uboot-oxnas: fix build with newer GCC
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-01 15:45:06 +02:00
Daniel Golle
17511a7ea8 oxnas: kill old oxnas target
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-01 15:45:06 +02:00
Ivan Shapovalov
91b5b2e20d netifd: drop conflicting 'device' interface property
Do not set device runtime property on interfaces in the hotplug handler
and in fixup_interfaces(). This property conflicts with device option
in several proto handlers (mainly QMI and other WWAN/3G protos) and does
not seem to be used anywhere.

Signed-off-by: Ivan Shapovalov <intelfx@intelfx.name>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2018-06-01 15:02:41 +02:00
Hans Dedecker
0777a3e773 kernel: re-add export ipv6_push_frag_opts for tunneling now patch
The patch got removed by commit 7dca1bae82 (kernel: bump to 4.9.105)
but is still required as ipv6_push_frag_opts needs to be exported.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-06-01 14:08:42 +02:00
John Crispin
7197744cd6 Revert "ramips: Move PCI driver to files directory"
This reverts commit a098a78a33.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:20 +02:00
John Crispin
69929dac89 Revert "ramips: Remove redundant owner assignment"
This reverts commit 2ad4daf579.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:14 +02:00
John Crispin
64878a5616 Revert "ramips: improve interrupt mapping"
This reverts commit 5f7396ebef.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:11 +02:00
John Crispin
7577f32c8a Revert "ramips: remove conditional compilation."
This reverts commit 1f78625714.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:09 +02:00
John Crispin
b8569427eb Revert "ramips: remove unnecessary resource details."
This reverts commit edea934799.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:07 +02:00
John Crispin
784943e3f2 Revert "ramips: pci: sync with staging driver"
This reverts commit e07baec9fa.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:05 +02:00
John Crispin
8a570921b5 Revert "ramips: Add back some non-mt7621 code that staging removed"
This reverts commit 048e41f649.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:42:03 +02:00
John Crispin
1d3c286381 Revert "ramips: Fix WiFi after 5f7396ebef09b224edf08b0bda113613a42f0928"
This reverts commit 02f815d190.

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 11:41:51 +02:00
Kevin Darbyshire-Bryant
1ee5051f20 nettle: bump to 3.4
3.4 is mainly a bug fix/maintenance release.

3KB increase in ipk lib size on mips.

Compile tested for: ar71xx, ramips
Run tested on: ar71xx Archer C7 v2, ramips mir3g

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-01 08:39:59 +02:00
Mirko Parthey
46d7ced9d1 mtd: mark as nonshared to fix FS#484
The mtd tool is built with different configurations depending on the
target. For example, brcm47xx adds the fixtrx subcommand, without which
an image fails when booting the second time.

Mark the mtd package as nonshared to really fix FS#484.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2018-06-01 08:29:11 +02:00
Kevin Darbyshire-Bryant
7dca1bae82 kernel: bump to 4.9.105
Refresh patches.

Drop patches that have been upstreamed:
target/linux/ar71xx/patches-4.9/106-01-MIPS-ath79-fix-AR724X_PLL_REG_PCIE_CONFIG-offset.patch
target/linux/generic/backport-4.9/095-v4.12-ipv6-Need-to-export-ipv6_push_frag_opts-for-tunnelin.patch
target/linux/generic/pending-4.9/180-net-phy-at803x-add-support-for-AT8032.patch
target/linux/generic/pending-4.9/181-net-usb-add-lte-modem-wistron-neweb-d18q1.patch
target/linux/generic/pending-4.9/182-net-qmi_wwan-add-BroadMobi-BM806U-2020-2033.patch

Compile & run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-06-01 08:25:14 +02:00
Alex Maclean
5b0c899bfd ath79: correct wmac names in dts
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-01 08:23:47 +02:00
Alex Maclean
ba5b6c619b ath79: add TP-Link TL-WR703N port
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-01 08:23:28 +02:00
Alex Maclean
d215d0f9ae ath79: add TP-Link TL-WR740N/ND v2 port
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-01 08:23:14 +02:00
Alex Maclean
fab3254b32 ath79: add pinmux node to ar724x.dtsi
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-01 08:23:02 +02:00
Alex Maclean
34f874b872 ath79: add AR7240 dtsi
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-01 08:22:50 +02:00
Alex Maclean
fc8360aa16 ath79: add tiny subtarget
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-06-01 08:22:38 +02:00
Koen Vandeputte
e5ff84d1f0 ath10k-ct: Update driver to latest
127f98189ee5 ath10k:  Fix bad return w/out unlock, compile w/out debugfs
b8f48f3c138f Fix survey-dump for 4.7, 4.9 and 4.13 kernels.
fa8259ad5d6d ath10k-ct:  Support survey dump in 10.1 firmware.
2853e1337ecf ath10k-ct:  Add 4.16 ath10k-ct driver to package.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
CC: Ben Greear <greearb@candelatech.com>
2018-06-01 08:22:26 +02:00
John Crispin
c57c3f2c22 ath79: fix glinet ar150 lan/wan ordering
LAN and WAN were swapped

Signed-off-by: John Crispin <john@phrozen.org>
2018-06-01 08:21:47 +02:00
Daniel Golle
2087df1c6d Revert "kernel: backport export ipv6_push_frag_opts for tunneling now"
This reverts commit daa73b63d5.
The fix has already been imported by
commit b7735d8113 ("kernel: import follow-up fix for previous backport").
The patch won't apply twice.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-06-01 01:37:51 +02:00
Hans Dedecker
daa73b63d5 kernel: backport export ipv6_push_frag_opts for tunneling now
Patch is required on top of commit 6c81c27efa as ipv6_push_frag_opts needs to
be exported for usage in ip6_tunnel.c

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-31 18:29:42 +02:00
Jason A. Donenfeld
060e1ecefa wireguard: bump to 0.0.20180531 to fix flow offloading
This version bump was made upstream mostly for OpenWRT, and should fix
an issue with a null dst when on the flow offloading path.

While we're at it, Kevin and I are the only people actually taking care
of this package, so trim the maintainer list a bit.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-05-31 07:40:15 +02:00
Daniel Golle
b7735d8113 kernel: import follow-up fix for previous backport
Buildbots complaining made me wonder what's going on...
ERROR: "ipv6_push_frag_opts" [net/ipv6/ip6_tunnel.ko] undefined!

Fixes: 6c81c27efa ("kernel: backport fix for missing tunnel encapsulation limit option")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-31 02:25:59 +02:00
Daniel Golle
78f1974bc5 hostapd: update packaging and patches
Clean up conflicts/provides/depends hell and add PROVIDES for
eapol-test variants while at it.
Update mesh-DFS patchset from Peter Oh to v5 (with local fixes) which
allows to drop two revert-patches for upstream commits which previously
were necessary to un-break mesh-DFS support.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-31 00:38:16 +02:00
Daniel Golle
dad39249fb wolfssl: change defaults to cover wpa_supplicant needs
Implicetely selecting the required options via Kconfig snippet from
hostapd worked fine in local builds when using menuconfig but confused
the buildbots which (in phase1) may build wpad-mini and hence already
come with CONFIG_WPA_WOLFSSL being defined as unset which then won't
trigger changing the defaults of wolfssl.

Work around by explicitely reflecting wpa_supplicant's needs in
wolfssl's default settings to make buildbots happy.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-31 00:38:16 +02:00
Hans Dedecker
a70a0a529f toolchain/glibc: update to latest 2.26 commit
4df8479e6b Add NEWS entry for CVE-2018-11236
a5bc5ec967 Add references to CVE-2018-11236, CVE-2017-18269
58ad5f8a64 Add a test case for [BZ #23196]
6b4362f2cb Don't write beyond destination in __mempcpy_avx512_no_vzeroupper (bug 23196)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-30 20:39:29 +02:00
Hans Dedecker
6c81c27efa kernel: backport fix for missing tunnel encapsulation limit option
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-30 12:16:24 +02:00
Rosen Penev
7a20c7a05d curl: Add ca-bundle dependency
While building, curl complains that the path specified is missing.
Also, without ca-bundle, something like 'curl https://www.google.com'
does not work due to a certificate verify error.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-30 06:38:19 +02:00
Rosen Penev
f97946c496 curl: Use ca-bundle for all TLS libraries.
It simplifies the Makefile a bit. In addition, using ca-bundle
saves some space as well.

It also fixes an issue with at least transmission, which has a dependency
on ca-bundle, but currently libcurl with OpenSSL or GnuTLS cause it not
to work.

This has been tested on mt7621 with OpenSSL and GnuTLS just by running
'curl https://www.google.com' and seeing if there's a verify error.
The rest are already using ca-bundle and therefore work fine.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-30 06:38:06 +02:00
Rosen Penev
9685f39787 ramips: Use generic board detect for GnuBee devices
This is a port of an old commit from mkresin's tree:

09260cdf3e9332978c2a474a58e93a6f2b55f4a8

This has the potential to break sysupgrade but it should be fine as
there is no stable release of LEDE or OpenWrt that support these devices.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-30 06:36:02 +02:00
Rosen Penev
976c27f2dd ramips: Fix a few other GnuBee DTS differences
I was carrying a local commit that added the sdhci stuff and missed it
as a result.

Also fix the rgmii3 thing in the PC2 DTS file as that's bogus and causes
a dmesg warning that it's bogus.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-30 06:35:24 +02:00
Rosen Penev
02f815d190 ramips: Fix WiFi after 5f7396ebef
That commit exposed a bug in the DTS files used by mt7621 where the wrong
reg value for pcie1 (and potentially pcie2) was being used. This was
causing WiFi failures for interfaces in pcie1.

eg. 2.4GHz working but not 5GHz.

As all of these dts entries are already specified in mt7621.dtsi, remove
them.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-30 06:33:56 +02:00
Rosen Penev
e191c7ee79 ath10k-firmware: Fix two more typos
Actually tested with a local build instead of with scp'ing the firmware.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-30 06:33:19 +02:00
Stijn Tintel
64b53247c4 kernel: bump 4.14 to 4.14.44
Refresh patches.

Remove upstreamed patch:
generic/pending/181-net-usb-add-lte-modem-wistron-neweb-d18q1.patch
Update patches that no longer applies:
generic/hack/901-debloat_sock_diag.patch

Compile-tested on: x86/64.
Runtime-tested on: x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-05-29 00:53:15 +03:00
Daniel Golle
f4a639a3d7 mac80211: rt2x00: no longer use TXOP_BACKOFF for probe frames
Import a revert-commit from Stanislaw Gruszka which significantly
improves WiFi performance on rt2x00 based hardware.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-28 15:49:41 +02:00
John Crispin
55f3731002 mediatek: add missing symbols for mt7622
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-28 08:12:28 +02:00
Rosen Penev
d0fbe1956b ath10k-firmware: Fix typo in last commit
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-27 19:44:43 +02:00
John Crispin
9c409cb4e2 kernel: add missing softdog symbol
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-27 09:26:13 +02:00
John Crispin
de6162e832 mediatek: add missing symbols
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-27 09:26:13 +02:00
Luo chongjun
312d7a4a5a ar71xx: add support for GL.iNet GL-AR750S
This patch adds supports for GL-AR750S.

Specification:
- SOC: QCA9563 (775MHz)
- Flash: 16 MiB (W25Q128FVSG)
- RAM: 128 MiB DDR2
- Ethernet: 2x 1Gbps LAN + 1x 1Gbps WAN
- Wireless: 2.4GHz (bgn) and 5GHz (ac)
- USB: 1x USB 2.0 port
- Button: 1x switch button, 1x reset button
- LED: 3x LEDS (green)

Flash instruction:
Apply factory image via web-gui.

Signed-off-by: Luo chongjun <luochongjun@gl-inet.com>
2018-05-27 09:26:09 +02:00
Rosen Penev
27eab4fa57 ath10k-firmware: Fix QCA6174 support
Currently when installing the firmware, a bunch of files and directories
that the ath10k driver does not look for are created.

The package now installs firmware for both hw 2.1 and 3.0 devices.
2.1 is abandonware but may be useful to keep.

3.0 firmware was tested on a Killer 1535 to be relatively stable with
802.11w disabled. 802.11w causes multiple firmware crashes but that's true
of other ath10k firmwares as well.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-27 08:16:45 +02:00
Daniel Golle
5857088c5e wolfssl: add PKG_CONFIG_DEPENDS symbols
This change will trigger rebuild on buildbots in case of changed config
symbols, like in the case of hostapd selecting some wolfssl symbols
lately.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-25 20:36:46 +02:00
Daniel Golle
c8fdd0e9c8 hostapd: convert ssl provider build options to variants
Instead of selecting the SSL provider at compile time, build package
variants for each option so users can select the binary package without
having to build it themselves.
Most likely not all variants have actually ever been user by anyone.
We should reduce the selection to the reasonable and most used
combinations at some point in future. For now, build them all.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-25 16:01:59 +02:00
Hans Dedecker
a3f2451fba firewall: update to latest git HEAD
30463d0 zones: add interface/subnet bound LOG rules
0e77bf2 options: treat time strings as UTC times

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-25 14:33:59 +02:00
Hans Dedecker
5df2597c59 fstools: update to latest git HEAD
dd02dad fstools: allow the mounting with full access time accounting
242248c fstools: allow to compress the filesystem

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-25 09:52:50 +02:00
Jo-Philipp Wich
3b749d4acc ar71xx: fix bad "proto" references in default network configuration
This change was originally meant to go along with the ucidef_set_interface()
fixup.

Fixes: 7e664b7c2d ("base-files: fix ucidef_set_interface() protocol selection")
Fixes: 85048a9c1f ("base-files: rework _ucidef_set_interface to be more generic")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-25 09:46:55 +02:00
Jo-Philipp Wich
7e664b7c2d base-files: fix ucidef_set_interface() protocol selection
The previous refactoring of ucidef_set_interface() removed the protocol
selection heuristic which breaks the networking defaults for the majority
of boards.

Re-add the protocol selection and rename two bad "proto" references to
the expected "protocol" value.

Fixes: 85048a9c1f ("base-files: rework _ucidef_set_interface to be more generic")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-25 07:48:25 +02:00
Daniel Golle
69f544937f hostapd: update to git HEAD of 2018-05-21, allow build against wolfssl
Support for building wpa_supplicant/hostapd against wolfssl has been
added upstream recently, add build option to allow users using it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-24 22:21:10 +02:00
John Crispin
51740777fb mediatek: add mt7622 subtarget
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 22:14:03 +02:00
John Crispin
050da2107a mediatek: backport upstream mediatek patches
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 22:11:55 +02:00
Daniel Golle
4f67c1522d wolfssl: update to version 3.14.4
Use download from github archive corresponding to v3.14.4 tag because
the project's website apparently only offers 3.14.0-stable release
downloads.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-24 21:46:35 +02:00
Daniel Golle
4f442f5f38 ustream-ssl: fix build against wolfSSL
commit 39a6ce205d (ustream-ssl: Enable ECDHE with OpenSSL.) broke
build against wolfSSL because wolfSSL doesn't (yet) support
SSL_CTX_set_ecdh_auto() of the OpenSSL API.

Fix this in ustream-ssl:

 189cd38b41 don't use SSL_CTX_set_ecdh_auto with wolfSSL

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-24 18:55:34 +02:00
Jo-Philipp Wich
4da832e201 tools: zlib: do not hardcode the install prefix in zlib.pc
Our pkg-config wrapper relies on the ability to redefine the $prefix and
$exec_prefix variables in order to construct proper search paths relative
to the build environment.

Patch the .pc file template to construct libdir, sharedlibdir and includedir
relative to the ${prefix} variable so that it can be overridden as needed.

This also fixes the libxml2/host build issue raised at
https://github.com/openwrt/packages/issues/6073 - it was caused by libxml2's
configure picking up a wrong host search path through zlib.pc, letting it
include the wrong endian.h, causing spurious member redeclaration errors in
system headers.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-24 17:07:10 +02:00
Pierre Lebleu
e6b8ce4c08 fstools: Add the new options available in the menuconfig
Mounting using the zlib compression and mounting with
full access accounting are now available in the
menuconfig.

Signed-off-by: Pierre Lebleu <pme.lebleu@gmail.com>
2018-05-24 16:05:07 +02:00
Lucian Cristian
253095131d ath79: initial tl-wr1043nd v1 support
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 15:43:39 +02:00
John Crispin
f7aa08595d kernel: add reset control support to rtl8366 driver
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 15:43:39 +02:00
John Crispin
5a6a32ad9b ath79: fix adjust_link callback for ar9130
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 15:43:39 +02:00
John Crispin
83fb9ec5e0 ath79: make ahb wifi work
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 15:43:39 +02:00
Hans Dedecker
bcf20e0583 Revert "dnsmasq: use "hostsdir" instead of "addn-hosts""
This reverts commit a03035dad1
as it has several issues:
-Host file is located in a directory which is not unique per dnsmasq instance
-odhcpd writes host info into the same directory but still sends a SIGHUP to dnsmasq

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-24 10:20:45 +02:00
Roman Yeryomin
85048a9c1f base-files: rework _ucidef_set_interface to be more generic
This is a rework of previously submitted patch reworking
ucidef_set_interface_raw [1]. Here, keep the idea but instead
make _ucidef_set_interface more generic and use it instead of
ucidef_set_interface_raw.
Also change the users like ucidef_set_interface_lan and others.

[1] https://patchwork.ozlabs.org/patch/844961/

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-24 09:39:47 +02:00
Koen Vandeputte
467b07e00c kernel: bump 4.14 to 4.14.43
Refreshed all patches

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Michael Yartys <michael.yartys@protonmail.com>
2018-05-24 08:58:17 +02:00
Koen Vandeputte
82cf3c7c61 kernel: bump 4.9 to 4.9.102
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-05-24 08:58:03 +02:00
Rosen Penev
8c818fa1f0 ramips: Fix up GnuBee PC1 DTS file a little
There's nothing connected to i2c on this board, so remove it.

Also edited the gpio group to match the PC2 as they're the same.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-24 08:57:33 +02:00
Rosen Penev
048e41f649 ramips: Add back some non-mt7621 code that staging removed
Staging is meant only for mt7621 but for OpenWrt more is needed.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-24 08:57:17 +02:00
Mirko Parthey
7ac238fc98 brcm47xx: add switch port mapping to Asus WL-500W
Switch ports 0..3 are connected to external ports LAN{1..4} in sequence,
switch port 4 is not used, and switch port 5 is connected to the CPU.
The WAN port is attached to the CPU's second network interface; it has no
connection to the internal switch.

Reuse the "Dell TrueMobile 2300" entry, which describes the same mapping.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2018-05-24 08:57:00 +02:00
John Crispin
f6a067a699 kernel: mark all v3.18 and v4.4 kernels are source-only
These will be removed if not updated to v4.4

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-24 08:55:52 +02:00
Christian Schoenebeck
a03035dad1 dnsmasq: use "hostsdir" instead of "addn-hosts"
1.) "addn-hosts" per default point to a file (but it supports directory)
2.) "hostsdir" only support directory with the additional benefit: New or changed files are read automatically.

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2018-05-23 22:13:26 +02:00
Hans Dedecker
43d70a7a9d toolchain/glibc: update to latest 2.26 commit
af7519f7b3 Fix path length overflow in realpath [BZ #22786]
365722ace6 Fix stack overflow with huge PT_NOTE segment [BZ #20419]
be056fae3b Fix blocking pthread_join. [BZ #23137]
02f0dd83a4 Fix signed integer overflow in random_r (bug 17343).
3241353ab2 i386: Fix i386 sigaction sa_restorer initialization (BZ#21269)
677e6d13e0 [BZ #22342] Fix netgroup cache keys.
71d339cb86 Fix i386 memmove issue (bug 22644).
31e2d15b80 Fix crash in resolver on memory allocation failure (bug 23005)
1f7c4748d6 getlogin_r: return early when linux sentinel value is set
7e7a5f0bcd resolv: Fully initialize struct mmsghdr in send_dg [BZ #23037]

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-23 15:40:16 +02:00
Jo-Philipp Wich
1289e00fff uboot-zynq: fix build on hosts lacking pkg-config
The uboot-mvebu package incorrectly used the host pkg-config for the tool
build parts, which broke the build on systems lacking pkg-config and only
worked by accident on those that have it installed.

Export the host-build specific environment variables for the uboot build
to redirect pkg-config invocations to our staged host build pkg-config in
buildroot.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-23 09:32:25 +02:00
Jo-Philipp Wich
208b984dda uboot-mxs: fix build on hosts lacking pkg-config
The uboot-mvebu package incorrectly used the host pkg-config for the tool
build parts, which broke the build on systems lacking pkg-config and only
worked by accident on those that have it installed.

Export the host-build specific environment variables for the uboot build
to redirect pkg-config invocations to our staged host build pkg-config in
buildroot.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-23 09:15:52 +02:00
Jo-Philipp Wich
01c2ce3c7d uboot-mvebu: fix build on hosts lacking pkg-config
The uboot-mvebu package incorrectly used the host pkg-config for the tool
build parts, which broke the build on systems lacking pkg-config and only
worked by accident on those that have it installed.

Export the host-build specific environment variables for the uboot build
to redirect pkg-config invocations to our staged host build pkg-config in
buildroot.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-23 09:05:55 +02:00
Matthias Badaire
52809db544 ramips: fix to mt7620a and add support for i2c on WD03
There was an error on initial commit, the proper soc is mt7620n (which is
more limited than mt7620a). Moreover, there is a battery management
controller connected to the i2c port of the mt7620n. I have a small piece
of i2c code to get battery level coming.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
2018-05-22 21:02:01 +02:00
Johann Neuhauser
a7e1e919af ath79: preliminary support for TP-Link WDR3600 / WDR4300 (AR9344)
working:
 - leds
 - buttons
 - lan / wan
 - usb (hub port 1 + 2)
 - wifi 5g
 - sysupgrade
 - ...

not working:
 - wifi 2g

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-05-22 20:53:15 +02:00
Koen Vandeputte
faf0a460c4 kernel: bump 4.14 to 4.14.42
Refreshed all patches

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

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-05-22 20:49:08 +02:00
Koen Vandeputte
6c5f2d73e9 kernel: bump 4.9 to 4.9.101
Refreshed all patches

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-05-22 20:48:43 +02:00
John Crispin
346d4c75ea ustream-ssl: update to latest git HEAD
5322f9d mbedtls: Fix setting allowed cipher suites
e8a1469 mbedtls: Add support for a session cache

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-22 20:47:21 +02:00
Hauke Mehrtens
2ea8f9c244 mbedtls: Deactivate platform abstraction
This makes mbedtls use the POSIX API directly and not use the own
abstraction layer.
The size of the ipkg decreased by about 100 bytes.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-05-22 20:47:21 +02:00
Hauke Mehrtens
f2c8f6dc32 mbedtls: Activate the session cache
This make sit possible to store informations about a session and reuse
it later. When used by a server it increases the time to create a new
TLS session from about 1 second to less than 0.1 seconds.

The size of the ipkg file increased by about 800 Bytes.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-05-22 20:47:20 +02:00
Hauke Mehrtens
cb11b23d60 mbedtls: update to version 2.9.0
The soversion was changed in this version again and is now aligned with
the 2.7.2 version.
The size of the ipkg file stayed mostly the same.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-05-22 20:47:20 +02:00
Rodolfo Giometti
2437e0f670 package sysfsutils: add support for sysfs settings at boot
This patch is based on sysfsutils package's behaviour on Debian OS.

Signed-off-by: Rodolfo Giometti <giometti@linux.it>
2018-05-22 20:47:20 +02:00
Stefan Lippers-Hollmann
a436ef992d ipq806x: drop "mtd: nand: add Winbond manufacturer and chip"
The W25N01GV NAND is currently not used in any ipq806x device.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:47:20 +02:00
Stefan Lippers-Hollmann
2819732219 ipq806x: drop linux 4.9 support
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
18e9ed2482 ipq806x: switch to linux 4.14
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
8c1c1c4874 ipq806x: remove spi-nor from r7800 dts
There's no spi-nor in R7800, so disable unequipped interfaces.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
96cd31655d ipq806x: remove rpm pinctrl from board dts
These pins seem to be used by hw exclusively, so claiming it in
kernel causes an error in syslog in k4.14+.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
7f694ef3d9 ipq806x: fix EA8500 switch control
EA8500 has pcie2 slot unequipped.
By EA8500 hw design default pcie2 reset gpio (gpio63) is used to
reset the switch. That's why enabling pcie2 brings the switch into
a working state.

So let's just control the gpio63 without enabling the pcie2 slot.

We have to remove the pcie2_pins node so the gpio63 is not defined
twice. Because pcie2 node has a reference to pcie2_pins we have to
remove it as well.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
7a4f9c5993 ipq806x: move mmc specific nodes into v1.0 dtsi
These nodes are common for all revisions so put it into SoC v1.0
dtsi file.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
fbedc2213c ipq806x: fix pcie tx termination offset
According to GPL tarballs and QSDK related branch tx termination
offset for ipq8064 SoC version >= 2.0 should be equal to 0 and
not 7.

https://github.com/paul-chambers/netgear-r7800/blob/master/git_home/linux.git/sourcecode/arch/arm/mach-msm/board-ipq806x.c#L1682-L1685

Fix this.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
d4b98c38c6 ipq806x: apply updated USB PHY settings to v2.0 SoC
USB PHY power settings introduced for ipq8065 SoC with commit
644a0d5 "ipq8065: adjust SS USB PHY power settings"

According to that commit msg and in correspondence to GPL tarballs
and related QSDK branch those settings are applied to ipq8064
SoCs of version >= 2.0.

https://github.com/paul-chambers/netgear-r7800/blob/master/git_home/linux.git/sourcecode/arch/arm/mach-msm/board-ipq806x.c#L2507-L2514

Now as we have clarified that mass market boards are of SoC v2.0
move those USB PHY settings from ipq8065 (v3.0 SoC) dtsi to
ipq8064 v2.0 dtsi.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
e16f9abf6b ipq806x: reference ipq8065 as ipq8064 v3.0
ipq8065 is ipq8064 v3.0
> socinfo_init: v6, id=280, ver=3.0, raw_id=17, raw_ver=17, hw_plat=0,  hw_plat_ver=65536

Include dtsi accordingly and remove the unneeded qcom-ipq8065-v1.0.dtsi

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
067036e875 ipq806x: move mass market ipq8064 to v2 dtsi
According to OEM bootlog entry mass market devices are ipq8064 SoC
v2.0:
> socinfo_init: v6, id=202, ver=2.0, raw_id=2064, raw_ver=2064, hw_plat=0,  hw_plat_ver=65536

I've checked C2600, EA8500 and VR2600v but couldn't find other
boards bootlog. I think it's safe to assume that other boards are
also v2.0. R7500 may be an exception because it was the first
device to hit the market.

So switch to v2.0 dtsi.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Pavel Kubelun
adbdf78049 ipq806x: introduce ipq8064 SoC v2 dtsi
According to QCA internal numbering there are 3 versions of
ipq8064/5 SoC:
ipq8064 v1.0 - probably ipq8064 evaluation boards only
ipq8064 v2.0 - probably ipq8064 mass market boards only
ipq8064 v3.0 - aka ipq8065, boards based on ipq8065.

Each next revision includes configuration differences from
previous revision and adds something new.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Marc Benoit
e40db2907e kernel: iqp806x low latency kernel does not boot
It keeps failing (R7800) with the stack trace below

BUG: scheduling while atomic: kworker/0:1/26/0x00000002

(unwind_backtrace) from [<c02121d0>] (show_stack+0x10/0x14)
(show_stack) from [<c03932e4>] (dump_stack+0x7c/0x9c)
(dump_stack) from [<c0239b90>] (__schedule_bug+0x5c/0x80)
(__schedule_bug) from [<c05b7260>] (__schedule+0x50/0x3f4)
(__schedule) from [<c05b76a8>] (schedule+0xa4/0xd4)
(schedule) from [<c05ba430>] (schedule_hrtimeout_range_clock+0xc8/0x100)
(schedule_hrtimeout_range_clock) from [<c05ba480>]
       (schedule_hrtimeout_range+0x18/0x20)
(schedule_hrtimeout_range) from [<c05b9f78>] (usleep_range+0x48/0x50)
(usleep_range) from [<c03f333c>] (__clk_hfpll_enable+0x44/0xd0)
(__clk_hfpll_enable) from [<c03f3474>] (clk_hfpll_set_rate+0xac/0xc4)
(clk_hfpll_set_rate) from [<c03ec390>] (clk_change_rate+0xf4/0x1fc)
(clk_change_rate) from [<c03ec510>] (clk_core_set_rate_nolock+0x78/0x94)
(clk_core_set_rate_nolock) from [<c03ec54c>] (clk_set_rate+0x20/0x30)
(clk_set_rate) from [<c0424168>] (dev_pm_opp_set_rate+0x190/0x26c)
(dev_pm_opp_set_rate) from [<c04a8548>] (set_target+0x40/0x108)
(set_target) from [<c04a4.140>] (__cpufreq_driver_target+0x3f4/0x488)
(__cpufreq_driver_target) from [<c04a7494>] (od_dbs_timer+0xcc/0x154)
(od_dbs_timer) from [<c04a7998>] (dbs_work_handler+0x2c/0x54)
(dbs_work_handler) from [<c02309e8>] (process_one_work+0x1c0/0x2f0)
(process_one_work) from [<c02319a8>] (worker_thread+0x2a4/0x404)
(worker_thread) from [<c0235944>] (kthread+0xd8/0xe8)
(kthread) from [<c020eef0>] (ret_from_fork+0x14/0x24)

Signed-off-by: Marc Benoit <marcb62185@gmail.com>
[slh: rebase for kernel v4.14 as well]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
05f53eecca ipq806x: define KERNEL_SIZE in KB instead of byte for the image generation
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
c3af761e47 ipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500v2
Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 R7500v2.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
c228bbe616 ipq806x: increase kernel partition size for the Netgear Nighthawk X4 R7500
Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 R7500

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Jonas Gorski <jonas.gorski@gmail.com>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
45b8a7c1a6 ipq806x: increase kernel partition size for the Netgear Nighthawk X4 D7800
Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This change follows the functional example of the Netgear r7800, but
has not been runtime tested on a Netgear Nighthawk X4 D7800.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Tathagata Das <tathagata@alumnux.com>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
0c967d92b3 ipq806x: increase kernel partition size for the TP-Link Archer VR2600v
The default image does not fit 2 MB anymore, expand kernel partition
to 3 MB.

Upgrading should work transparently via sysupgrade in both directions.
Another option would be to merge "kernel" and "rootfs" into a single
"firmware" partition using MTD_SPLIT_TPLINK_FW, but just changing the
sizes of the existing partitioning has been deemed safer in the absence
of an actual runtime test on an affected device; the maximum for rootfs
changes from 10.4 MB to 9.4 MB.

This change follows the example for the TP-Link Archer C2600, but has
not been runtime tested on a TP-Link Archer VR2600v.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: Sebastian Quilitz <zeraphim@x-pantion.de>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
b72b36653a ipq806x: increase kernel partition size for the TP-Link Archer C2600
The default image does not fit 2 MB anymore, expand os-image partition
to 4 MB.

Upgrading works transparently via sysupgrade in both directions.
Another option would have been to merge "os-image" and "rootfs" into a
single "firmware" partition using MTD_SPLIT_TPLINK_FW, but just
changing the sizes of the existing partitioning has been deemed safer
and actually tested on an affected device; the maximum for rootfs
changes from 27 MB to 25 MB.

Run-tested on TP-Link Archer C2600.

Signed-off-by: Joris de Vries <joris@apptrician.nl>
[slh: extend comments and commit message, rename rootfs]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Stefan Lippers-Hollmann
dc50694bd1 ipq806x: increase kernel partition size for the Netgear r7800
Starting with kernel 4.14 and gcc 7, the kernel doesn't fit into the
2 MB reserved for the kernel partition by the OEM firmware anymore.

This patch increases the kernel partition from 2 MB to 4 MB, at the
expense of the rootfs, for all supported kernels.

WARNING: This breaks sysupgrade! Flashing a firmware containing this
changed partitioning from an older image with 2 MB reserved for the
kernel partion requires the tftp recovery procedure, thereby losing
all settings.

This patch is based on a corresponding change by Pavel Kubelun
<be.dissent@gmail.com> and has been tested by Michael Yartys
<michael.yartys@protonmail.com>

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Ram Chandra Jangir
7ac6697fe2 ipq806x: cleanup kernel config
Disable MSM8960, MSM8974 and APQ8084
 - since these are different SoC's than IPQ806x
Removed unrequired serial configs
 - since ipq806x uses SERIAL_MSM only

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
Ram Chandra Jangir
93dd2f7211 ipq806x: add kernel 4.14 support
- Rebased the patches for 4.14
 - Dropped spi-qup and 0027, 0028, 0029
   clk patches since it's already included
   in upstream.

 Tested on IPQ AP148 Board:
  1) NOR boot and NAND boot
  2) Tested USB and PCIe interfaces
  3) WDOG test
  4) cpu frequency scaling
  5) ethernet, 2G and 5G WiFi
  6) ubi sysupgrade

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-05-22 20:34:14 +02:00
David Bauer
70e6ea319d ipq40xx: add eva-image for FRITZ!Box 4040
This commit adds an EVA flashable image for the FRITZ!Box 4040.

The image contains the U-Boot with OpenWRT appended to it. This way we
remove the need to use UART for initial flashing.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-22 20:34:14 +02:00
David Bauer
399495a952 build: add apend-uboot command
This commit adds an append-uboot command to append U-Boot from the
bin-directory.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-22 20:34:14 +02:00
David Bauer
ce91c85e01 ramips: change wifi led trigger for Archer C50v3
This commit alters the TP-Link Archer C50v3 LED settings to use the phy
trigger instead of the netdev one. This way the WiFi status is displayed
even if the wifi interface name is altered.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-22 20:34:14 +02:00
David Bauer
35d00d9a41 ramips: fix Archer C50v3 LED mapping
This commit fixes the wrong LED mapping of the Archer C50 v3.
Commit was tested with an EU device.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-22 20:34:14 +02:00
Lucian Cristian
71cec0b194 ath79: enable rtl8366rb phy
is needed for at least tplink wr1043nd-v1

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-05-22 20:34:14 +02:00
Lucian Cristian
fe594bf90d ath79: fix loader-okli, lzma-loader
booting will hang most of the times on tl-wr1043nd-v1 without a KERNEL_CMDLINE value
add anything as a placeholder as kernel command line is taken from DTS

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-05-22 20:34:14 +02:00
Jo-Philipp Wich
b287c82bed build: prevent spurious package rebuilds under CONFIG_AUTOREMOVE
When CONFIG_AUTOREMOVE is enabled, the build system touches an additional
".autoremove" stamp file in the cleaned build directory.

Since the autoremove stamp file is touched after the compile process
completed, it ends up being the most recent file of the package build
directory, causing the timestamp.pl check of depends.mk to erroneously
declare the ".built" and ".prepared" stamp files as stale, triggering
a forced clean-build submake process.

Fix the problem by using the ".built" stamp file as modification time
reference when touching the ".autoremove" stamp file.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-22 09:27:38 +02:00
Chuanhong Guo
a789c0f491 ar71xx: Add support for PISEN TS-D084
PISEN TS-D084 is an wireless router with a battery and integrated power supply based on Atheros AR9331.

Specification:

- 400/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 1x 10/100 Mbps Ethernet
- 1T1R 2.4 GHz (AR9331)
- 1x USB 2.0

Flash instruction:
The manufacturer are using exactly the same firmware header as TP-LINK TL-WR703N (including device ID!). Simply upload the factory firmware into WebUI and flashing is done.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-05-22 07:58:16 +02:00
Sergey Ryazanov
67a3cdcbb0 kernel: enable THIN_ARCHIVES by default
THIN_ARCHIVES option is enabled by default in the kernel configuration
and no one target config disables it. So enable it by default and remove
this symbol from target specific configs to keep them light.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:55:20 +02:00
Sergey Ryazanov
bdc2b58c4b kernel: enable FUTEX_PI by default
New FUTEX_PI configuration symbol enabled if FUTEX and RT_MUTEX symbols
are enabled. Both of these symbols are enabled by default in the
generic config, so enable FUTEX_PI by default too to keep platform
specific configs minimal.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:55:12 +02:00
Sergey Ryazanov
a08b0d0c31 kernel: enable EXPORTFS by default
OVERLAY_FS config symbol selects EXPORTFS since 4.12 kernel, we have
OVERLAY_FS enabled by default, so enable EXPORTFS in the generic config
of 4.14 and remove this option from platform specific configs.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:55:05 +02:00
Sergey Ryazanov
978543a246 kernel: disable DRM_LIB_RANDOM by default
DRM_LIB_RANDOM config symbol selected only by DRM_DEBUG_MM_SELFTEST
which is disable by default, so disable DRM_LIB_RANDOM by default too.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:54:57 +02:00
Sergey Ryazanov
ead26e9db6 kernel: disable DMA_{NOOP|VIRT}_OPS by default
These options do not used by any supported arch, so disable them by
default to make arch configs a bit more clean.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:54:49 +02:00
Sergey Ryazanov
f928c338ad kernel: disable ARCH_WANTS_THP_SWAP by default
Only one arch (x86_64) enables this option. So disable
ARCH_WANTS_THP_SWAP by default and remove referencies to it from all
configs (except x86_64) to make them clean.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:54:42 +02:00
Evgeniy Didin
a2418dba02 arc770: remove source-only
In commit 8b9cdebc9c ("arc770: mark as source-only") arc770 was marked
as source-only because of iproute2 compile issues.
With uClibc-ng version 1.0.30 issues with iproute2 were fixed.
Lets remove "source-only" for arc770 as soon as uClibc-ng version
will be updated to 1.0.30. Patch for uClibc-ng is here:
https://patchwork.ozlabs.org/patch/917547/

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
2018-05-22 07:20:26 +02:00
Evgeniy Didin
83e9262703 uClibc-ng: update to 1.0.30
uClibc-ng 1.0.28 does not provide PF_VSOCK/AF_VSOCK definitions,
which causes iproute2 v4.16.0 compile errors.
In commit 57f2f80383b5 ("bits/socket.h: add missing defines")
necessary defines were included and iproute2 builds fine.
This commit now is part of uClibc-ng 1.0.30.
Lets update uClibc-ng to latest 1.0.30 version.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
2018-05-22 07:20:26 +02:00
Hauke Mehrtens
ae8ff1c65c ar71xx: Fix build for dap-1330-a1 board
Using a version number of 16 character causes a buffer overflow in the
version number overwriting the first bit of the signature in the
mkdapimg2 tool.
I am not sure if the version number should be null terminated or not.
This patch reduces the size of the version number by removing the number
of private commits from it.

This was the original version number which caused problems:
OpenWrt-r6727+10
Now it uses this version number:
OpenWrt-r6727

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-05-22 07:20:26 +02:00
Sergey Ryazanov
06116473cc ath25: drop 4.9 kernel support
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 07:20:13 +02:00
Sergey Ryazanov
5191ea5621 ath25: switch to 4.14 kernel
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 06:42:14 +02:00
Sergey Ryazanov
3d69857ac1 ath25: add kernel 4.14 support
Copy and refresh patches and config from 4.9, no more work is need.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2018-05-22 06:41:57 +02:00
Tomasz Maciej Nowak
9c0ddafd46 kernel: merge kmod-fbcon with kmod-fb
As of commit in kernel:
6104c37094 fbcon: Make fbcon a built-time depency for fbdev
framebuffer console is build in into framebuffer module and there's no
standalone fbcon module. Therefore drop the kmod-fbcon and enable
console in kmod-fb. The only targets which use these modules are imx6
and geode, both are on kernel 4.14 so no fallback for other kernels is
introduced.
Being at that this commit also fixes autoload of fbdev for x86.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-05-21 18:07:48 +02:00
Mathew McBride
fba168f574 build: use busybox gzip compatible force option
commit 138c763 ("build: add --force option to gzip in Build/gzip")
added the --force flag to the gzip invocation.

Under environments with busybox gzip (e.g Alpine Linux), this fails
as busybox only recognizes "-f".

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2018-05-21 18:07:48 +02:00
Rosy Song
39e87e0ffc nftables: bump to 0.8.5 version
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-05-21 18:07:47 +02:00
Rosy Song
c7e9d72f05 libnftnl: bump to 1.1.0
Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-05-21 18:07:47 +02:00
Damir Samardzic
5b7b0c68c7 mvebu: initial support for Marvell Armada 7k and 8k DB boards
Add initial support for cortex-a72 based Armada DB-88F8040-Modular and
DB-88F7040-Modular development boards.

DB-88F8040-Modular specifications:
- Quad-core ARMv8 Cortex A72 CPU (up to 2 GHz)
- DDR4 DIMM - 64 bits + ECC
- 2 x 128 Mb SPI NOR flash memory
- 2 x 1G Ethernet port via RGMII (RJ45)
- 2 x SD card ports (4 bit port on CP, 8 bit port on AP)
- 2 SERDES modules with the following interfaces each:
  - 2 x SATA Rev 3.0 port (Port1 via SERDES module CON4 (active port), Port0
    via SERDES Module CON2 or CON1 (optional port))
  - 3 x PCI Express (PCIe) Gen 3.0 (Port2 via SERDES module CON5 (active port),
    Port1 via SERDES module CON7 (optional port), Port0 via SERDES module CON6
    (optional port))
  - 2 x USB3 (USB 2.0 backward compatible) host (via SERDES module CON9 and
    CON10)
  - 1 x 10G port over SFP+ connector (via SERDES module CON8)
- 1 x MCI interface by two over USB Type C connector
- 4 x serial COM port driven by the 88F8040 UART interface and converted to
  USB via FTDI IC
- I2C Master Interface
  - CP I2C 2x EEPROM @ Address 0x50 and 0x57
  - 1 x I/O Expander @ Address 0x21
  - Sample at Reset (SatR) memory device @ Address 0x4C and 0x4E
- I2C Slave Interface (via SERDES module) - Connection to each device on the
  board via an I2C multiplexer
- JTAG interface for CPU emulator
- Board dimensions: 270 mm x 240 mm (main + SERDES module)
- SERDES Module Dimensions: 70 mm x 105 mm

DB-88F7040-Modular specifications:
- Quad-core ARMv8 Cortex A72 CPU
  - CPU core operating speed of up to 1.6 GHz for Dual Core, 1.4 GHz for Quad
    Core
- DDR4 - 32 bit + ECC on Module - SLM1366-V1 (DB-DDR4-40B-MODULE) 4 GByte
  32-bit
- 1 x 128Mb SPI NOR flash memory
- 2 x 1G Ethernet port: 1 over RGMII (RJ45) and 1 over SGMII
- SD card 4 bits port on AP
- eMMc Module on CP
- 1 SERDES Modules with the following interfaces each:
  - 1 x SATA Rev 3.0 port (via SERDES module CON4)
  - 1 x PCI Express (PCIe) Gen 3.0 (via SERDES module CON5)
  - 2 x USB 3.0 (USB 2.0 backward compatible) host (via SERDES module CON9 and
    CON10)
  - 1 x 10G port over SFP+ connector (via SERDES module CON8)
- 2 x MCi interface by one over USB Type C connector
- 4 x Serial COM port driven by the 88F7040 UA
- RT interface and converted to USB via FTDI IC
- I2C Master Interface
  - 2 x EEPROM at address 0x57 and 0x50 in AP and 2 x EEPROM at address 0x57
    and 0x50 in CP
  - 1 x I/O Expander at address 0x21
  - Sample at Reset (SatR) memory device at address 0x4C and 0x4E
- I2C Slave Interface (via SERDES module) - Connection to each device on the
  board via an I2C multiplexer
- JTAG interface for CPU emulator
- Board dimensions - 270 mm x 240 mm (main + SERDES module)
- SERDES Module Dimensions - 70 mm x 105 mm

Booting from USB flash drive (dd sdcard image to the flash drive):
 1. reset U-Boot environment:
      env default -a
      saveenv

 2. prepare U-Boot manually (make sure to set correct dtb file name):
      setenv bootargs_root 'root=/dev/sda2 rw rootdelay=2 ip=dhcp'
      setenv fdtfile armada-7040-db.dtb
      setenv image_name Image
      setenv bootcmd 'usb start; ext4load usb 0:1 $kernel_addr $image_name; ext4load usb 0:1 $fdt_addr $fdtfile; setenv bootargs $console $mtdparts $bootargs_root; booti $kernel_addr - $fdt_addr'
      saveenv
      boot

Signed-off-by: Damir Samardzic <damir.samardzic@sartura.hr>
2018-05-21 18:07:47 +02:00
Damir Samardzic
322a02f666 mvebu: initial support for Marvell Armada 3720 DB board
Add initial support for Marvell Armada cortex-a53 based
DB-88F3720-DDR3-Modular development board.

Specifications:
- Dual core ARMv8 Cortex-A53 CPU (up to 1.0 GHz)
- 4Gb 16-bit DDR3/3L DRAM memory
- 128Mb SPI NOR flash memory
- 8Gb eMMC NAND flash memory
- 1 x SATA Rev 3.0 port
- 1 x PCI Express (PCIe) Gen 2.0 or 1 x mini PCI Express (PCIe) Gen 2.0
- 1 x 1G Ethernet port via RGMII (RJ45)
- 1 x SD card port
- 1 x USB3 (USB2 backward) host\device port via type C connector
- 1 x USB2 host port via type A connector
- 1 x serial COM port driven by the 88F3720 UART interface and converted to
  USB via FTDI IC (option to connect the UART DB9 adapter)
- I2C Master Interface:
  - 1 x EEPROM @ address 0x57
  - 1 x I/O Expanders @ address 0x22
  - Sample at Reset (SatR) memory device @ address 0x4C
  - RTC clock generator PT7C4337AWE @ address 0x68
  - USB3 switch PI5USB30213XEA @ address 0x0D
  - ID component of PHY module @ address 0x24
- 1 x JTAG interface for CPU emulator
- 1 x SETM and JTAG debug interface
- 1 x power connector for HDD supply
- 1 x 12V DC jack power connector
- Board dimensions: 150 mm x 179 mm
- LED interface for system status

Booting from SD card:
 1. reset U-Boot environment:
      env default -a
      saveenv

 2. prepare U-Boot with boot script:
      setenv bootcmd "load mmc 0:1 0x4d00000 boot.scr; source 0x4d00000"
      saveenv

    or manually:
      setenv fdt_name armada-3720-db.dtb
      setenv image_name Image
      setenv bootcmd 'mmc dev 0; ext4load mmc 0:1 $kernel_addr $image_name;ext4load mmc 0:1 $fdt_addr $fdt_name;setenv bootargs $console root=/dev/mmcblk1p2 rw rootwait; booti $kernel_addr - $fdt_addr'
      saveenv

Signed-off-by: Damir Samardzic <damir.samardzic@sartura.hr>
2018-05-21 18:07:47 +02:00
YuheiOKAWA
13684ba63f kernel: Add support spi-nor, Eon EN25QH32
Support Add spi-nor chip EN25QH32. JEDEC is 1c7016.

Can't boot issue, new revision hardware is EN25QH32 flash chip.
example, MZK-DP150N (ramips).
https://bugs.openwrt.org/index.php?do=details&task_id=1534

Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
2018-05-21 18:07:47 +02:00
Harvey Phillips
eee59fa306 kernel: Add configfs support for USB HID gadget
Added a rule to usb.mk to build usb_f_hid.ko for configfs support
Tested on a Raspberry Pi Zero W

Signed-off-by: Harvey Phillips <xcellerator@gmx.com>
2018-05-21 18:07:47 +02:00
Hauke Mehrtens
56a03e4343 ath10k-firmware: Fix mirror hash sum
This now matches what was generated locally on my PC and the file on the
mirror server.

Fixes: 349fe46103 ("ath10k-firmware: Update QCA988X firmware to the latest version")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-05-21 13:53:59 +02:00
Jo-Philipp Wich
6d108c4a1a openwrt-keyring: bundle latest usign certificates
Includes the public usign certificates used by the 18.06.* release builds.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-20 19:39:12 +02:00
Jo-Philipp Wich
01329877bc base-files: depend on openwrt-keyring
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-20 19:39:12 +02:00
Jo-Philipp Wich
fd72e67ffe openwrt-keyring: rename from lede-keyring
Also let the new openwrt-keyring package provide lede-keyring for backwards
compatibility.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-20 19:39:12 +02:00
Jason A. Donenfeld
aa30eb5b07 wireguard: bump to 20180519
* chacha20poly1305: add mips32 implementation

"The OpenWRT Commit" - this significantly speeds up performance on cheap
plastic MIPS routers, and presumably the remaining MIPS32r2 super computers
out there.

* timers: reinitialize state on init
* timers: round up instead of down in slack_time
* timers: remove slack_time
* timers: clear send_keepalive timer on sending handshake response
* timers: no need to clear keepalive in persistent keepalive

Andrew He and I have helped simplify the timers and remove some old warts,
making the whole system a bit easier to analyze.

* tools: fix errno propagation and messages

Error messages are now more coherent.

* device: remove allowedips before individual peers

This avoids an O(n^2) traversal in favor of an O(n) one. Before systems with
many peers would grind when deleting the interface.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2018-05-19 09:02:33 +02:00
Felix Fietkau
5399de754d mt76: update to the latest version
73edb22 mt76: discard early received packets if not running yet
0b8d1dd mt76: fix beacon timer drift

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-18 18:14:32 +02:00
John Crispin
22c16c5d82 kernel: whitespace fixes
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-18 11:19:00 +02:00
Alif M. Ahmad
b0a51dab8c x86: disable CONFIG_EFI_VARS
Disable CONFIG_EFI_VARS, since it suffers from sysfs limitation (no
support for variable longer than 1024 bytes).

kmod-fs-efivarfs is the replacement of this, which enables mounting
efivarfs file system and doesn't suffer from 1024 bytes limitation.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2018-05-18 11:19:00 +02:00
Gospod Nassa
3cc56a5534 hostapd: fix IEEE 802.11r (fast roaming) defaults
Use ft_psk_generate_local=1 by default, as it makes everything else fairly
trivial. All of the r0kh/r1kh and key management stuff goes away and hostapd
fairly much does it all	for us.

We do need to provide nas_identifier, which can	be derived from	the BSSID,
and we need to generate	a mobility_domain, for which we	default	to the first
four chars of the md5sum of the	SSID.

The complex manual setup should also still work, but the defaults also
now work easily out of the box. Verified by manually running hostapd
(with the autogenerated config) and watching the debug output:

wlan2: STA ac:37:43:a0:a6:ae WPA: FT authentication already completed - do not start 4-way handshake

 This was previous submitted to LEDE in
 https://github.com/lede-project/source/pull/1382

[dwmw2: Rewrote commit message]
Signed-off-by: Gospod Nassa <devianca@gmail.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2018-05-18 11:19:00 +02:00
John Crispin
20b76c0a5b iwinfo: bump to latest git HEAD
e59f925 hardware: add device ids for QCA9984, 88W8887 and 88W8964 radios
2a82f87 nl80211: back out early when receiving FAIL-BUSY reply
77c32f0 nl80211: fix code calculating average signal and rate

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-18 11:19:00 +02:00
Kevin Darbyshire-Bryant
f06def4221 wireguard: no longer need portability patch
Drop package/network/services/wireguard/patches/100-portability.patch

Instead pass 'PLATFORM=linux' to make since we are always building FOR
linux.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-18 11:19:00 +02:00
YuheiOKAWA
d91953cb53 ramips: add support for YUKAI Engineering Inc. BOCCO
BOCCO is a communication robot provided by YUKAI Engineering Inc.

SoC: MT7620A
MEM: 256MB
Flash: 8MB
NAND: 512MB (non support)
Include Sound DAC and AMP.
No Wired Ethernet.

Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>
2018-05-18 11:19:00 +02:00
Michal Cieslakiewicz
45dc530334 ar71xx: WNDR3700: enable RFKILL function for Wifi button
Wifi button for WNDR3700 dual band routers has been renamed to "rfkill"
and its emitted keycode changed to KEY_RFKILL. This allows OpenWrt/LEDE
to support it 'out of the box' without additional tweaking.

Until this patch, button had been sending BTN_2 keycode which was
ignored by default (no action script present). To get expected behaviour
of switching radios on and off, user had to manually rename/link
'rfkill' script to name 'BTN_2' in /etc/rc.button directory.

This patch follows similar changes for other Netgear ar71xx routers,
for example WNR2000v3. It applies cleanly to both latest trunk and 17.01
branch. Tested on WNDR3700v1.

Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
2018-05-18 11:18:53 +02:00
Christian Lamparter
707b6c815b brcm2708: add squashfs rootfs image
This patch adds a image with squashfs as the root filesystem.
A rootfs_data partition will be generated on the first boot
and placed inside the rootfs partition (just after the squashfs
image).

advantages:
 - it is possible to migrate from an existing -ext4
   installation and back via sysupgrade.
 - existing partition layout will not be lost.
 - slightly smaller image size.
 - support for attendedsysupgrade

disadvantages:
 - needs f2fs + tools as well. This is because fs-tools decides on the
   blocksize of the sdcard. So either f2fs or ext4 can get choosen as
   the rootfs_data filesystem (depends on the size of the root partition).
 - rootfs_data is placed into the rootfs partition. This makes
   it difficult for tools that expect a /dev/mmc0pX device.
   It also makes it difficult for data recovery tools since they
   might not expect to find a embedded partition or will be
   confused.

For people with existing build configurations: make sure to include mkf2fs
and f2fsck package into the image... Otherwise the new -squashfs image will
boot of a ram-overlay and won't keep the configurations after a reboot.

Cc: Álvaro Fernández Rojas <noltari@gmail.com>
Cc: Paul Spooren <spooren@informatik.uni-leipzig.de>
Cc: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Acked-by: Daniel Golle <daniel@makrotopia.org>
2018-05-18 09:17:49 +02:00
Kristian Evensen
8f9baf5e1a x86: Add APU3 reference to x86 board.d
There is a new APU-model available, APU3. The device is configured in
the same way as the APU1 and APU2, so the same LED/network setup can be
used.

I considered changing the case to pc-engines-apu*, but I chose to follow
the existing pattern and add the full board name.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-05-18 09:17:24 +02:00
Christian Lamparter
16e39624b7 apm821xx: backport and reassign crypto4xx patches
This patch backports several patches that went upstream into
Herbert Xu's cryptodev-2.6 tree:

crypto: Use zeroing memory allocator instead of allocator/memset
crypto: crypto4xx - performance optimizations
crypto: crypto4xx - convert to skcipher
crypto: crypto4xx - avoid VLA use
crypto: crypto4xx - add aes-ctr support
crypto: crypto4xx - properly set IV after de- and encrypt
crypto: crypto4xx - extend aead fallback checks
crypto: crypto4xx - put temporary dst sg into request ctx

The older, outstanding patches from 120-wxyz series have been
upstreamed as well and therefore they have been reassigned to
fit into the series.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-05-18 09:14:09 +02:00
Christian Lamparter
e6e51ce87f apm821xx: don't select swconfig for the MR24
The swconfig package is part of the DEFAULT_PACKAGES list in
the apm821xx's nand subtarget. It's enabled by default because
the MX60(W) and WNDR4700 need it for their initramfs. However
the package is not necessary for the MR24's sysupgrade image, as
the MR24 does not have a switch.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-05-18 09:13:19 +02:00
Roman Yeryomin
1f42deec8e ipq40xx: fix ethernet on ap-dk01.1
Not sure how it worked before but ethernet is disabled
by default in ipq4019 dtsi.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-18 09:12:53 +02:00
Koen Vandeputte
e2aa0c3f8b kernel: bump 4.14 to 4.14.41
Refreshed all patches

Dropped upstreamed patches:
522-PCI-aardvark-fix-logic-in-PCI-configuration-read-write-functions.patch
523-PCI-aardvark-set-PIO_ADDR_LS-correctly-in-advk_pcie_rd_conf.patch
525-PCI-aardvark-use-isr1-instead-of-isr0-interrupt-in-legacy-irq-mode.patch
527-PCI-aardvark-fix-PCIe-max-read-request-size-setting.patch

updated patches:
524-PCI-aardvark-set-host-and-device-to-the-same-MAX-payload-size.patch
030-USB-serial-option-fix-dwm-158-3g-modem-interface.patch

Added new ARM64 symbol: CONFIG_ARM64_ERRATUM_1024718

Compile-tested on: cns3xxx, imx6, mvebu (arm64), x86_64
Runtime-tested on: cns3xxx, imx6, x86_64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-05-18 09:10:46 +02:00
Koen Vandeputte
12f44b83a8 kernel: bump 4.9 to 4.9.100
Refreshed all patches

Added new ARM64 symbol: ARM64_ERRATUM_1024718

Compile-tested on: ar71xx
Runtime-tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-05-18 09:10:21 +02:00
Robert Marko
6390f27c2e ath3k: Add firmware support for QCA Rome
Add needed firmware for newer QCA Rome Bluetooth family.
This enables use of bluetooth with ath3k driver on QCA9377/9378 devices.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-05-18 08:58:08 +02:00
Daniel Gonzalez Cabanelas
fbbb977772 brcm63xx: Tune the network configuration for several routers
- DGND3700v1: fix port numbers, they're in reverse order
- FaST2704n: there is no WAN port identified as such, only 4 LAN
- AD1018: configure the "FIBRE" port as WAN

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2018-05-18 08:55:37 +02:00
Rosen Penev
fec205f654 ramips: mmc: Sync with staging driver
Mostly whitespace cleanups. Some unneeded code was removed.

MMC init was also moved to the probe function as in
6069bdd

The cleanup commits are over 100, making it hard to do them individually.

Tested on GnuBee PC1 with an SD card being used as swap.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
v2: Fixed compile issue with mt7620
2018-05-18 08:49:52 +02:00
Timo Sigurdsson
349fe46103 ath10k-firmware: Update QCA988X firmware to the latest version
This patch updates the QCA988X firmware to the latest revision
  firmware-5.bin_10.2.4-1.0-00037
found in the ath10k-firmware and linux-firmware repositories.

Tested on TP-Link Archer C7 v2 (ar71xx).

Signed-off-by: Timo Sigurdsson <public_timo.s@silentcreek.de>
2018-05-18 08:49:15 +02:00
Matthias Schiffer
a5b77c9d9d ath79: remove unused copy-file build step
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-05-17 22:11:56 +02:00
Matthias Schiffer
aea146736c ath79: fix TP-Link TL-WR1043ND v1 image build
Both initramfs and flashed images are built and boot. No Ethernet, no WLAN,
probably further issues, so the image is not added to TARGET_DEVICES for
now.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-05-17 22:11:56 +02:00
Kevin Darbyshire-Bryant
4ff23afdcc wireguard: bump to 20180514
52be69b version: bump snapshot
4884b45 ncat-client-server: add wg-quick variant
a333551 wg-quick: add darwin implementation
f5bf84d compat: backport for OpenSUSE 15
fe1ae1b wg-quick: add wg symlink
ecc1c5f wg-quick: add android implementation
3e6bb79 tools: reorganize for multiplatform wg-quick
b289d12 allowedips: Fix graphviz output after endianness patch

Refresh cross compile compatibility patch

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-17 09:47:20 +02:00
Felix Fietkau
e9cb1b720d netfilter: fix hardware offload regression (FS#1551)
The relevant code needs to be enabled even if flow table support is only
compiled as module

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-17 08:21:54 +02:00
Mathias Kresin
75ed56a08a ath79: add AVM FRITZ!WLAN Repeater 300E
No known issues, everything works fine.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
bc04cf780e ath79: ar724x: fix pll settings
Add the syscon compatible, otherwise used functions like
syscon_regmap_lookup_by_phandle() will return an error and setting the
ethernet pll data wont work at all.

Fix the pll register width. Writing to registers out of the range via
syscon isn't possible and returns an error. On ar7242 the last pll
register - Current Audio Modulation Logic Output - is at 0x1805003c.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
f7ec385c13 ath79: add and enforce image metadata
Add metadata to images and make the metdata mandatory.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
f77db1a590 ath79: cleanup image build code
Remove recipes for not yet migrated boards. Drop variables which aren't
required due to the switch to devicetree like boardname.

Drop the legacy image build code. Boards added to this target shouldn't
use the legacy image build code anyway.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
cfe442c503 ath79: sysupgrade: drop unused variables
None of the variables are used at the moment.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
3e9d9f6225 ath79: sysupgrade: drop unused platform checks
None of these checks are used at the moment and most of them aren't
required if the image metadata validation is used.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
377197fdb3 ath79: sysupgrade: remove obsolete sysupgrade watchdog kill
The watchdog kill command was meant for busybox watchdog. Busybox watchdog
was replaced by the procd watchdog mid 2013 with commit df7ce9301a
("busybox: disable the watchdog utility by default"), which makes the kill
command obsolete since quite some time.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
0ff5785c5d ath79: fix dts files
Add the SoC compatible to the individual dts files. Rename the dts files
to match the common pattern.

Remove dts files wich aren't used and no image in ar71xx exists.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
8f7e28a783 ath79: enable wireless
PCI attached wireless works fine. So enable the wireless config symbols.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
bf781bd2ef ath79: cleanup kernel config
Remove outdated or not required kernel config settings.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
b2cef5d045 ath79: drop platform data patches
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
a181781bf8 octeontx: make board.d files executable
Add the executable permission to the files to ensure they run on
firstboot.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
d136192396 ath79: make board.d files executable
Add the executable permission to the files to ensure they run on
firstboot.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
d8b475212b lantiq: kernel 4.14: use vbus-supply devicetree property
It isn't a phy supply, as the phy is still up if the GPIO is low. It
rather is the supply for the vbus. A correct setting/definition will be
relevant as soon as USB peripheral mode is supported.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
0e9e8d8323 kernel: dwc2: add support for host mode external vbus supply
Backport patch adding support for the vbus-supply devicetree property,
which allows to specific GPIOs (via fixed regulators) to enable
vbus/usb power.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
0b62fe5ed8 lantiq: complete AVM FRITZ!Box 3370 support
Rename the image and use a compatible string which indicates that only
hardware revision 2 and higher is supported.

It allows to use the wireless LED, as HWRev 1 uses GPIO#39 for the
wireless LED and starting with HWRev 2 GPIO#35 is used for the wireless
LED and GPIO#39 for IFX_GPIO_MODULE_EXTPHY_MDIO.

The HWREV can be checked by connecting to the fritzbox right after power
on via ftp:

  ftp> quote GETENV HWSubRevision

Within the same HW revision 5 of the Fritz!Box 3370 different NAND flash
chips are used. Usually it isn't a big deal but depending on the used
NAND flash chip, the ECC calculation is done different (and incompatible
of course).

Boards with a Micron MT29F1G08ABADA NAND flash chip are using the NAND
chip to calculate the ECC (on-die). Boards with a Hynix HY27UF081G2M NAND
flash chip are doing the ECC calculation in software.

Supporting both with a single DTS isn't possible. It might be possible
to add a patch selecting the ECC mode dynamicaly based on the found NAND
flash chip. But such a patch has no chance to get accepted upstream and
most likely need to be touched with every kernel update.

Instead two images are created. One for Micron NAND flash chip and one
for Hynix NAND flash chip. So far no pattern is known to identify the
used flash chip without opening the box.

Add the power off GPIO. At least EVA version 2186 sets/keeps the GPIO as
input, which will cause a reboot 30sec after power on. For boards with
EVA version 2186 the installation is tricky as it has to be finished
within the 30sec time frame.

The EVA version can be checked by connecting to the fritzbox right after
power on via ftp:

  ftp> quote GETENV urlader-version

The ath9k eeprom/caldata is at a different and offset and stored in
reverse order (from the last byte to the beginning) on the flash.
Reverse the bits to bring the data into the format expected by the
ath9k driver.

Since the ath9k eeprom is stored in reverse order on flash, we can not
use the mac address from the on flash eeprom. Get the MAC address from
the tffs instead.

Within the same HW revision 5 of the Fritz!Box 3370 both version of the
vr9 SoC are used. During preparation of kernel 4.14 support, all
devicetree source files were changed to load the vr9 v1.1 and vr9 v1.2
gphy firmware, which fixed the embedded phys for boards using the
version 1.2 of the vr9 SoC.

While at it, add a trigger to make use of the LAN LED. Setup the
build-in switch and add a hint for LuCI two show the ports in order
matching the labels on the case

Add support for the second USB port and provide the volatage GPIOs. Use
GPIO#21 as PCIe reset pin. The lan led is connected to GPIO#38.

Name the rootfs partition ubi and remove the mtd/rootfs related kernel
bootargs to use the OpenWrt autoprobing based on the partition name.

Enable sysupgrade support to allow an upgrade from a running system.
Since sysupgrade wasn't supported till now, drop image build code which
was added to allow a sysupgrade from earlier OpenWrt versions.

Build images that allow an (initial) installation via EVA bootloader.

To install OpenWrt via Eva bootloader, within the first seconds after
power on a ftp connection need to be established to the FRITZ!Box at
192.168.178.1 and the the following ftp commands need to be run:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote SETENV linux_fs_start 0
  ftp> quote MEDIA FLSH
  ftp> put /path/to/openwrt-lantiq-xrx200-FRITZ3370-eva-kernel.bin mtd1
  ftp> put /path/to/openwrt-lantiq-xrx200-FRITZ3370-eva-filesystem.bin mtd0

Signed-off-by: Andrea Merello <andrea.merello@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
d7b7483343 lantiq: switch to kernel 4.14
Use kernel 4.14 by default.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Mathias Kresin
0678cc850c ltq-xdsl-app: start after led script
During handshake we are highjack and reset a LED to the configured trigger
afterwards. ltq-xdsl-app need to start after the LED init script, to
ensure that the LED init script doesn't re-highjack the LED we are
currently using for handshake indication.

Drop the comment about the atm dependency. The dependency was fixed quite
some time ago by using hotplug scripts for br2684ctl.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-17 07:40:19 +02:00
Hans Dedecker
0ed9281fda curl: bump to 7.60.0
Refresh patches; remove 320-mbedtls_dont_use_deprecated_sha256_function
patch as upstream fixed

For changes in version 2.60 see https://curl.haxx.se/changes.html#7_60_0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-16 14:36:22 +02:00
Kevin Darbyshire-Bryant
afbb3d20f2 kmod-sched-cake: bump to latest 20180515
Following changes as part of the kernel
upstreaming attempts.  And fix a slight fsck up
when calculating overheads for GSO packets.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-16 08:40:55 +02:00
Hans Dedecker
ac70ac3532 ebtables: update to latest git 2018-05-15
66a9701 ebtables: Fix build errors and warnings
9fff3d5 include: Fix musl libc compatibility
b1cdae8 extensions: Add string filter to ebtables

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-15 14:31:11 +02:00
Felix Fietkau
14ff1278ee mt76: update to the latest version
b2ecc52 mt76x2: fix avg_rssi estimation
fd58b28 mt76x2: add a polling delay in mt76x2_mac_stop routine
a78673d mt76: fix sending encrypted broadcast packets for secondary interfaces
e87f925 mt76x2: apply coverage class on slot time too

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-15 13:19:45 +02:00
John Crispin
7e15e21766 Revert "ramips: mmc: Sync with staging drivers"
This reverts commit 2d401925b9.

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-15 12:42:40 +02:00
Wei Yongjun
87c254c87e staging: mt7621-eth: fix return value check in mt7621_gsw_probe()
In case of error, the function devm_ioremap_resource() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check should
be replaced with IS_ERR().

Fixes: f079b6406348 ("staging: mt7621-eth: add gigabit switch driver (GSW)")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-15 06:46:08 +02:00
Wei Yongjun
edec251870 staging: mt7621-eth: fix return value check in mtk_connect_phy_node()
In case of error, the function of_phy_connect() returns NULL pointer not
ERR_PTR(). The IS_ERR() test in the return value check should be
replaced with NULL test.

Fixes: e3cbf478f846 ("staging: mt7621-eth: add the drivers core files")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-15 06:45:53 +02:00
Wei Yongjun
c4ae54dfab staging: mt7621-eth: fix return value check in mtk_probe()
In case of error, the function devm_ioremap_resource() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check should
be replaced with IS_ERR().

Fixes: e3cbf478f846 ("staging: mt7621-eth: add the drivers core files")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-15 06:45:34 +02:00
Rosen Penev
e07baec9fa ramips: pci: sync with staging driver
This is an amagalmation of two upstream commits dealing with whitespace
and dead code removal. I'm synching instead of having two separate commits
as they go out of order compared to previous commits here.

Tested on GnuBee PC1.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-15 06:45:07 +02:00
Rosen Penev
2d401925b9 ramips: mmc: Sync with staging drivers
Mostly whitespace cleanups. Some unneeded code was removed.

MMC init was also moved to the probe function as in
6069bdd087

The cleanup commits are over 100, making it hard to do them individually.

Tested on GnuBee PC1 with an SD card being used as swap.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-15 06:44:48 +02:00
Toke Høiland-Jørgensen
50913b77e4 wireguard: Add support for ip6prefix config option
This makes it easier to distribute prefixes over a wireguard tunnel
interface, by simply setting the ip6prefix option in uci (just like with
other protocols).

Obviously, routing etc needs to be setup properly for things to work; this
just adds the config option so the prefix can be assigned to other
interfaces.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2018-05-15 06:41:38 +02:00
David Woodhouse
4424a9ff20 linux-firmware: Add firmware for usb-serial-ti-usb
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2018-05-15 06:39:46 +02:00
Matthias Badaire
a0685deec4 ramips: Add i2c support for mt7620n
I2c is supported on mt7620n like on mt7620a when checking the datasheet

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
2018-05-15 06:39:46 +02:00
Alberto Bursi
e09d4c850d kirkwood: support for buttons in Audi and Viper
Both these devices have a wps and a reset button on
GPIO pins, which need kmod-gpio-button-hotplug
package to work.

Add this package to their default package config.

Troubleshooted and tested on a Viper.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2018-05-15 06:39:37 +02:00
Johann Neuhauser
c15dfbeea0 ath79: fix gmac compatible in ar9330.dtsi and ag71xx_setup_gmac_933x
1. compatible property in node gmac was wrong

2. ag71xx_setup_gmac_933x should use np of gmac-config and
   not the pointer to gmac. gmac is only used for the reg address.

Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
2018-05-15 06:38:07 +02:00
Daniel Golle
96f4792fdb mac80211: refactor non-{sae,dfs} mesh initialization
Refactor mesh initialization into a separate function, do some cleaning
on the way to make the code more readable.
Changes:
 * Move iw mesh setup to new mac80211_setup_mesh()
 * fallback on 'ssid' parameter in case 'mesh_id' isn't set
 * move setting of freq variable to shared code as it is needed for
   both, the wpa_supplicant and the iw based setup.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-15 02:05:56 +02:00
Sven Eckelmann
ba5ec6b77c hostapd: fix VHT80 for encrypted mesh channel settings
The max_oper_chwidth settings was parsed incorrectly for big endian system.
This prevented the system to switch to VHT80 (or VHT160). Instead they were
mapped to:

* HT20:   20MHz
* VHT20:  20MHz
* HT40:   40MHz
* VHT40:  40MHz
* VHT80:  40MHz
* VHT160: 40MHz

This happened because each max_oper_chwidth setting in the config file was
parsed as "0" instead of the actual value.

Fixes: a4322eba2b ("hostapd: fix encrypted mesh channel settings")
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-05-14 19:07:37 +02:00
Sven Eckelmann
547042398a mac80211: Re-enable encrypted 11s meshpoint
The commit 574e4377fa ("mac80211: properly setup mesh interface") uses
the variable $wpa to decide whether encrypted meshpoint is requested by the
user or not. But the variable $wpa will only be set correctly after the
function wireless_vif_parse_encryption is called.

Fixes: 574e4377fa ("mac80211: properly setup mesh interface")
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-05-14 18:37:44 +02:00
Michael Gray
bfbdeeb3de mvebu: add support for WRT32X (venom)
Linksys WRT32X (Venom) is identical in hardware to the WRT3200ACM
with a different flash layout and boots zImage rather than uImage.

Specification:
- Marvell Armada 385 88F6820 (2x 1.8GHz)
- 256MB of Flash
- 512MB of RAM
- 2.4GHz (bgn) and 5GHz (an+ac wave 2)
- 4x 1Gbps LAN + 1x 1Gbps WAN
- 1x USB 3.0 and 1x USB 2.0/eSATA (combo port)

Flash instruction:
Apply factory image via web-gui.

Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
2018-05-14 17:20:10 +02:00
John Crispin
e1a9485b0e firewall3: update to latest git HEAD
b45e162 helpers: fix the set_helper in the rule structure
f742ba7 helpers.conf: support also tcp in the CT sip helper
08b2c61 helpers: make the proto field as a list rather than one option

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-14 16:24:10 +02:00
Linus Walleij
1f56417e6b gemini: Augment DIR-685 device tree for RTL8366RB
This makes the ethernet and RTL8366RB come up on the
D-Link DIR-685.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-05-14 16:24:10 +02:00
Linus Walleij
3b48111df9 gemini: create zImage for DIR-685
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-05-14 16:24:09 +02:00
NeilBrown
edea934799 ramips: remove unnecessary resource details.
These resources are extracted from devicetree, so they aren't
needed here.

Signed-off-by: NeilBrown <neil@brown.name>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-14 16:24:07 +02:00
NeilBrown
1f78625714 ramips: remove conditional compilation.
Code currently defines:

and then compiles code only if they are defined.
We might want to disable some of these via devicetree one
day, but for now just remove the #defines and the
conditions - all the code for different ports is
easy to identify.

Signed-off-by: NeilBrown <neil@brown.name>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-14 16:24:04 +02:00
NeilBrown
5f7396ebef ramips: improve interrupt mapping
As the Interrupts for the PCI adapters are listed in
devicetree we shouldn't need to have them explicit in the code.

The simplest way to do this is to use of_irq_parse_and_map_pci()
and specify an interrupt-map which identifies the different
PCI hosts by bus/slot numbers.
This has the advantage that the hwirq number are mapped to virq
numbers for us, so the ugly hack can go.

Signed-off-by: NeilBrown <neil@brown.name>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-14 16:23:59 +02:00
Christian Lütke-Stetzkamp
2ad4daf579 ramips: Remove redundant owner assignment
Remove the owner assignment form the platform driver as
platform_driver_register() already initializes the owner.
Found using coccinelle.

Signed-off-by: Christian Lütke-Stetzkamp <christian@lkamp.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-05-14 16:23:36 +02:00
Rosen Penev
a098a78a33 ramips: Move PCI driver to files directory
This will make it easier to port upstream code.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-14 15:55:17 +02:00
Daniel Golle
574e4377fa mac80211: properly setup mesh interface
Setup wpa_supplicant for encrypted mesh or when using DFS channels and
adjust interface setup to pass fixed frequency for mesh mode.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-14 09:48:58 +02:00
Daniel Golle
6e0fa4a76d hostapd: fix mesh+AP
Fix encrypted (or DFS) AP+MESH interface combination in a way similar
to how it's done for AP+STA and fix netifd shell script.
Refresh patches while at it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-14 09:48:58 +02:00
Jo-Philipp Wich
6aaeec666d rpcd: update to lastest HEAD
8206219 uci: fix memory leak in rpc_uci_replace_savedir()
10f7878 exec: close stdout and stderr streams on child signal
92d0d75 uci: use correct sort index when reordering sections

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-14 07:16:47 +02:00
Kevin Darbyshire-Bryant
89c5e32c3e wireguard: bump to 0.0.20180513
6b4a340 version: bump snapshot
faa2103 compat: don't clear header bits on RHEL
4014532 compat: handle RHEL 7.5's recent backports
66589bc queueing: preserve pfmemalloc header bit
37f114a chacha20poly1305: make gcc 8.1 happy
926caae socket: use skb_put_data
724d979 wg-quick: preliminary support for go implementation
c454c26 allowedips: simplify arithmetic
71d44be allowedips: produce better assembly with unsigned arithmetic
5e3532e allowedips: use native endian on lookup
856f105 allowedips: add selftest for allowedips_walk_by_peer
41df6d2 embeddable-wg-library: zero attribute padding
9a1bea6 keygen-html: add zip file example
f182b1a qemu: retry on 404 in wget for kernel.org race

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-14 10:41:21 +08:00
Jo-Philipp Wich
aadca035bc at91: sama5d4: fix bad mkubifs options
Drop the "-x lzo" compression type override from MKUBIFS_OPTS since we
do not support it in mkfs.ubifs. Attempting to use LZO compression results
in "Error: bad compressor name".

The build system also appends an explicit "--compr=zlib" to the mkfs command
line, turning the "-x" flag into a no-op anyway.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-13 18:33:47 +02:00
Jo-Philipp Wich
56bd23cf52 kernel: let kmod-rtl8366-smi conditionally depend on kmod-of-mdio
We cannot depend on CONFIG_OF in the module definition context as this symbol
is not defined for OpenWrt menuconfig. Depend on the targets that appear to
need the kmod-of-mdio module instead.

The target dependency list may not be complete, it is based on the build
failures encountered by the build bots.

Fixes: dc629d9cf5 ("kernel: fix kmod-switch-rtl8366-smi dependency")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-13 18:24:38 +02:00
Rafał Miłecki
404508001e kernel: use accepted version of bcm47xxpart fix commit
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-05-12 23:53:44 +02:00
Rafał Miłecki
070693477a kernel: backport mtd patch for minor partitioning cleanup
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-05-12 23:14:07 +02:00
Felix Fietkau
a3096b4b33 kernel: fix build error in flow offload code with CONFIG_NETFILTER=n
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-12 22:28:00 +02:00
Kevin Darbyshire-Bryant
066c85321e dnsmasq: bump to 2.80test2
Refresh patches and backport upstream to current HEAD:

1f1873a Log warning on very large cachesize config, instead of truncating it.
0a496f0 Do unsolicited RAs for interfaces which appear after dnsmasq startup.
e27825b Fix logging in previous.
1f60a18 Retry SERVFAIL DNSSEC queries to a different server, if possible.
a0088e8 Handle query retry on REFUSED or SERVFAIL for DNSSEC-generated queries.
34e26e1 Retry query to other servers on receipt of SERVFAIL rcode.
6b17335 Add packet-dump debugging facility.
07ed585 Add logging for DNS error returns from upstream and local configuration.
0669ee7 Fix DHCP broken-ness when --no-ping AND --dhcp-sequential-ip are set.
f84e674 Be persistent with broken-upstream-DNSSEC warnings.

Compile & run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-12 22:05:07 +02:00
Rafał Miłecki
02225f5763 bcm53xx: backport the first bunch of 4.18 BCM5301X patches
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-05-12 15:38:55 +02:00
Jo-Philipp Wich
cf7a88cf5a at91: cleanup kernel configurations
The subtarget configurations contained a lot of reduntant symbols, arbitrary
overrides and symbols set to =m.

Remove most of these redundant settings to shrink the subtarget configurations
to a manageable size.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-11 18:24:00 +02:00
Jo-Philipp Wich
f23326eb76 at91: sama5d2: remove CONFIG_XZ_DEC override
Fixes the following error spotted by the buildbot:

    Package kmod-fs-squashfs is missing dependencies for the following libraries:
    xz_dec.ko

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-11 16:40:34 +02:00
Jo-Philipp Wich
0167f53b9d at91: add missing config symbols
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-11 16:01:26 +02:00
Jo-Philipp Wich
d8c7cd9cb1 kernel: rtl8366_smi: guard of_mdiobus_register() call
Make the call to of_mdiobus_register() dependant on CONFIG_OF to avoid
pulling in an unwanted dependency on of_mdio.ko.

Fixes: 3dc523f232 kernel: add OF support to rtl8355 driver
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-05-11 15:07:56 +02:00
hux
ecd954d530 dnsmasq: add specific interface procd triggers
Right now interface.update events are sent out by netifd upon interface state,
route, address (lifetime), prefix lifetime changes.
Dnsmasq is only interested in interface state changes and currently adds an
interface trigger for all the "interface.*" events.
In combination with commit 23bba9cb33, which triggers a SIGHUP signal to dnsmasq,
IPv6 address/prefix lifetime changes on the wan will trigger dnsmasq reloads which
can become frequent in case of shorter lifetimes.

To avoid frequent dnsmasq reload, this patch adds specific interface triggers.
During dnsmasq init it loops dhcp uci section; if the value of the ignore option
is set to 0, then the corresponding interface trigger is not installed.
Otherwise, if the ignore option value is 1, then procd_add_interface_trigger is
called which adds the interface trigger.

Signed-off-by: hux <xinxing.huchn@gmail.com>
2018-05-11 13:49:03 +02:00
John Crispin
dc629d9cf5 kernel: fix kmod-switch-rtl8366-smi dependency
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-10 10:22:19 +02:00
Piotr Dymacz
ce4d2fb5cc ar71xx: fix and improve ALFA Network Tube2H support
Fix ART offset (make it universal for 8/16 MB versions of the board) and
while at it, include also GPIO setup for h/w watchdog (EM6324QYSP5B).

Fixes: FS#1532

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-05-09 20:32:47 +02:00
John Crispin
a564cfcd83 kernel: fix chipidea2 dependencies
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-09 19:55:10 +02:00
Hans Dedecker
419238fdb3 nghttp2: bump to 1.32.0
572735e4 Update manual pages
e8d693c3 Bump up version number to 1.32.0, LT revision to 30:2:16
f44dfcd9 Update AUTHORS
1f1b0d93 Update manual pages
ce8c749b Merge pull request #1173 from nghttp2/asio-client-sni
3e4f257b asio: Support client side SNI
86fab997 Upgrade neverbleed to the latest master
c3ecd445 Merge pull request #1171 from nghttp2/h2load-rate-and-duration
c65ca20a h2load: -r and --duration are mutually exclusive
a5c408c5 Ignore all input after calling session_terminate_session
06379b28 Fix treatment of padding
e04de48e Merge pull request #1162 from nghttp2/libressl
00964642 Use LIBRESSL_IN_USE instead of defined(LIBRESSL_VERSION_NUMBER)
8d0b4544 libressl 2.7 has X509_VERIFY_PARAM_*
d8a34131 libressl 2.7 has SSL_CTX_get0_certificate
5db17d0a Compile with libressl 2.7.2
1bf69b56 Define LIBRESSL_LEGACY_API and LIBRESSL_2_7_API
3febaef1 Bump up LT revision to 30:1:16 due to v1.31.1 release
b1bd6035 Fix frame handling
b48bcb21 examples: Use C style comment in .c files
6f3ce2c7 examples: Remove unused lambda capture
2f9121cf Merge branch 'Sp1l-Sp1l/allow-no-npn'
e65e7711 Add comment on #endif
636ef51b Fix compile error with -Wunused-function
400934e5 [PATCH] Allow building without NPN
4c3a3acf Merge pull request #1146 from vszakats/cmakestaticlib
9aa6002c Merge pull request #1144 from hellojaewon/master
f342260b cmake: add ENABLE_STATIC_LIB option to build static lib
a6dd4970 Fix typo
842509da Don't allow 101 HTTP status code because HTTP/2 removes HTTP Upgrade
4add618a Bump up version number to 1.32.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-09 11:26:45 +02:00
Matthias Schiffer
db34cdf6c5 ath79: Ubiquiti Airmax M: add relocate-kernel to invalidate cache
Apply ar71xx fix for broken Ubiquiti bootloader to ath79 as well.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-05-08 21:14:24 +02:00
Felix Fietkau
6069bdd087 ramips: move mtk-mmc init to probe function to avoid breaking NAND flash
The driver messes with the pin control settings - MMC and NAND are
mutually exclusive

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-08 17:56:04 +02:00
Felix Fietkau
f95a4aa565 ramips: clean up the mt7621 nand flash driver hacks, add support for the xiaomi mir3g flash chip
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-08 17:56:04 +02:00
Kevin Darbyshire-Bryant
e7f24f35b3 kmod-sched-cake: bump to latest cake 2018-05-07
No functional change.  Code tidy ups.

735eaf2 Make sure we don't reallocate q->tins (we didn't anyway but his
really makes sure)
6c5ad6e Get rid of __GFP_NOWARN flag for memory allocation
2a37333 Don't need the wrapper for kvfree, and no need to check before calling it
2b1c631 Whitespace fix
7fe6e28 compat tidyup (for older kernel versions <4.4)
93b805c pedant tidy up superfluous semicolons on switch statements

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-08 14:16:35 +02:00
Rafał Miłecki
97f3c0f041 brcm47xx: switch to the kernel 4.14
The biggest (and the only?) disadventage of this is obviously an
increased image size.

For mips74k the size of vmlinux goes up from 4186684 B to 4701436 B.
Most devices use LZMA compressed kernel so probably more important is
vmlinux.lzma size which goes up from 1342945 B to the 1508498 B.

Still this isn't something that should stop target kernel bump. There
are various adventages of kernel 4.14. If kernel / image size is a
serious concern for anyone, it's perfectly possible to use previous
release which is pretty solid for the brcm47xx.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Cc: Paul Wassi <p.wassi@gmx.at>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
2018-05-08 09:55:10 +02:00
Rafał Miłecki
f9dcdc7fef kernel: mark source kernel for netfilter backports
This helps keeping track on patches & adding new kernels in the future.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-05-08 09:42:07 +02:00
Davide Ammirata
004cc22e4e ramips: add support for mqmaker witi 512mb version
Splitted out the dts file and create the new dts for the 256 MByte RAM and
the 512 MB RAM version.

Migrate both versions to the common board detection.

The install the 512 MByte Version on a board running the 256 MByte image,
a forceful sysupgrade with the -F flag is required.

Signed-off-by: Davide Ammirata <list@davidea.it>
2018-05-07 18:54:23 +02:00
Matthias Badaire
5ef79af4f8 ramips: add support for Ravpower WD03
The RavPower WD03 is a battery powered SD card reader and a USB port.

Specifications:
SOC:     MediaTek MT7620N
BATTERY: 6000mah
WLAN:    802.11bgn
LAN:     1x 10/100 Mbps Ethernet
USB:     1x USB 2.0 (Type-A)
RAM:     PM Tech PMD708416CTR-5CN 32 MB
FLASH:   Holtek HT66F40 - 8 MB Flash
LED:     Power button and 4 leds to indicate power level of the
         battery (could not get control of that)
INPUT:   Power, reset button
OTHER:   USB SD-Card reader with card detect on GPIO#42

Tested and working:
 - Ethernet
 - 2.4 GHz WiFi (Correct MAC-address)
 - installation from tftp
 - OpenWRT sysupgrade (Preserving and non-preserving)
 - LEDs
 - Buttons

Installation:
 - Download the sysupgrade image
 - Place it in the root of a clean TFTP server running on your computer.
 - Rename the image to "kernel" — be sure there is no file extension.
 - Plug the WD03 into your computer via ethernet.
 - Set your computer to use 10.10.10.254 as its IP address.
 - With your WD03 shut down, hold down the power button until the first
   white LED lights up.
 - Push and hold the reset button and release the power button. Continue
   holding the reset button for 30 seconds or until it begins searching
   for files on your TFTP server, whichever comes first.
 - The WD03 (10.10.10.128) will look for your computer at 10.10.10.254
   and install the kernel file. Once it has finished installation of the
   kernel file, it will search for a (nonexistent) rootfs file — when it
   begins searching for this file, shut down the WD03 by holding the
   power button normally.
 - Start up your WD03 normally.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
2018-05-07 18:54:23 +02:00
Mathias Kresin
ef19747b6c lantiq: kernel 4.14: Remove reboot/remove reset asserts
Backport patch accepted upstream which removes the reset asserts of the
xrx200 gphy driver on reboot/remove.

While doing a global software reset, these bits are not cleared and let
some bootloader fail to initialise the GPHYs. The bootloader don't expect
these bits to be set, as they aren't during power on.

The asserts were a workaround for a wrong syscon-reboot mask. With a mask
set which includes the GPHY resets of the first reset register, the
resets of the second reset register arn't required any more.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-05-07 18:53:08 +02:00
John Crispin
99f10b193e ath79: drop dts/Makefile
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-07 15:01:12 +02:00
Russell Senior
4aacd6388a ath79: u-boot partitions should be read-only in dts
Some of the new ath79 device trees were missing read-only tags on the
u-boot partitions.  This adds the tags where previously missing.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-05-07 13:07:00 +02:00
Rafał Miłecki
4edd4cb2b3 ath79: use the new DT fixed partitions syntax
This new syntax is slightly better designed & uses "compatible" string.
For details see Documentation/devicetree/bindings/mtd/partition.txt .

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-05-07 12:57:47 +02:00
John Crispin
7fe77a5962 ath79: revert license change on upstream DTS files
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-07 12:52:03 +02:00
Kevin Darbyshire-Bryant
247055cbfb igmpproxy: bump to 0.2.1
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Point at github which is new, maintained location for igmpproxy.
Remove all patches as all have been upstreamed.

Closes FS#1456

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-07 11:01:39 +02:00
Jaap Buurman
0b04926433 igmpproxy: fix creation of firewall rules
The init sccript for igmpproxy uses the option 'network' both as an interface name for fetching the l3_device name and for creating the firewall rules. This only works if the name of the network and firewall zone are identical.

This commit introduces a new option 'zone' for configuring the upstream and downstream firewall zones in order for the init script to create the required firewall rules automatically. When no such options are given, the init script falls back to not creating the firewall rules and the user can opt to create these manually.

Signed-off-by: Jaap Buurman <jaapbuurman@gmail.com>
2018-05-07 11:01:04 +02:00
Nick Hainke
0a7657c300 hostapd: add channel utilization as config option
Add the channel utilization as hostapd configuration option.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2018-05-07 10:44:09 +02:00
David Bauer
b6a4c67468 ar71xx: add support for Fritz!Box 4020
This commit adds support for the AVM Fritz!Box 4020 WiFi-router.

SoC:   Qualcomm Atheros QCA9561 (Dragonfly) 750MHz
RAM:   Winbond W971GG6KB-25
FLASH: Macronix MX25L12835F
WiFi:  QCA9561 b/g/n 3x3 450Mbit/s
USB:   1x USB 2.0
IN:    WPS button, WiFi button
OUT:   Power LED green, Internet LED green, WLAN LED green,
       LAN LED green, INFO LED green, INFO LED red
UART:  Header Next to Black metal shield
       Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V)
       The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet (LAN + WAN)
 - WiFi (correct MAC)
 - Installation via EVA bootloader
 - OpenWRT sysupgrade
 - Buttons
 - LEDs

Not working:
 - USB port

Installation via EVA:
In the first seconds after Power is connected, the bootloader will
listen for FTP connections on 169.254.157.1 (Might also be 192.168.178.1). Firmware can be uploaded
like following:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put openwrt-sysupgrade.bin mtd1

Note that this procedure might take up to two minutes. After transfer is
complete you need to powercycle the device to boot OpenWRT.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-07 10:42:26 +02:00
Rafał Miłecki
66c8afd115 ath79: relicense DTS files to the GPL 2.0+ / MIT
Some maintainers prefer DTS files licensed under permissive license like
MIT / BSD. As all DT bindings should be OS independent and DTS files are
pretty separated from Linux code it probably makes sense to share them
across projects.

The safest solution is to use dual licensing: that way it stays clear
these files can be used in GPL projects without depending on current
belief of licenses compatibility.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
2018-05-07 10:31:35 +02:00
Sandeep Sheriker Mallikarjun
441c26da6a kernel: fix build error for external kernel.
fixed build error when external kernel is selected from menuconfig.
The patches present in target/linux/generic does not gets applied
to external kernel and build fails while compiling mac82011 &
regmap-core kernel modules. as a fix added check in Makefile for
CONFIG_EXTERNAL_KERNEL_TREE present or not.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-07 10:31:35 +02:00
Etienne Champetier
ff6e62b288 build: log time taken by each packages/steps
The idea is to easily get the list of packages taking the most time to build,
and see if we can improve them

v1: Use SetupHostCommand as recommended by John
v2: add space after 'time:', remove useless /usr/bin/time from SetupHostCommand

Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
2018-05-07 10:31:35 +02:00
Yousong Zhou
f87dff8f72 flock: enable alternatives support
Fixes FS#1510

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-05-07 15:50:18 +08:00
Yousong Zhou
46a2c0d9c5 busybox: order alternatives in alphabetical order
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-05-07 15:50:18 +08:00
Kevin Darbyshire-Bryant
c451434b96 cake: bump to 20180504 bake
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Cake is bearing fruits of kernel upstreaming efforts.

diffserv-llt dropped. DSCP mapping paper died and no one using it.

ack-filter re-written & simplified

tc userspace & cake kmod netlink interface usage changed in non
backwards compatible way, thus this once requires tc & cake to be
in-step.  Change due to upstream requirements.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-07 08:09:18 +02:00
Kevin Darbyshire-Bryant
080fb7a3fb iproute2: import latest cake
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Bearing fruits of the latest upstreaming efforts on cake.

Changes: diffserv-llt dropped.  The paper describing this DSCP
allocation has gone stale and doesn't appear used.

The userspace to kernel netlink messages for cake have been reworked in
a backwards incompatible way, so tc & cake must be bumped together this
once.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-07 08:09:12 +02:00
Kevin Darbyshire-Bryant
ad5af37ca7 iproute2: backport json_print-fix-hidden-64-bit-type-promotion
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
print_uint() will silently promote its variable type to uint64_t, but there
is nothing that ensures that the format string specifier passed along with
it fits (and the function name suggest to pass "%u").

Fix this by changing print_uint() to use a native 'unsigned int' type, and
introduce a separate print_u64() function for printing 64-bit values. All
call sites that were actually printing 64-bit values using print_uint() are
converted to use print_u64() instead.

Since print_int() was already using native int types, just add a
print_s64() to match, but don't convert any call sites.

Fixes wonkyness in some stats from some qdiscs under tc

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-05-07 08:09:05 +02:00
John Crispin
53c474abbd ath79: add new OF only target for QCA MIPS silicon
This target aims to replace ar71xx mid-term. The big part that is still
missing is making the MMIO/AHB wifi work using OF. NAND and mikrotik
subtargets will follow.

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-07 08:06:51 +02:00
John Crispin
3dc523f232 kernel: add OF support to rtl8355 driver
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-07 08:06:51 +02:00
Rafał Miłecki
ed00387dc5 bcm53xx: switch to the new/alternative SPI controller driver
This switches bcm53xx from spi-bcm53xx to the spi-bcm-qspi driver. The
later one was developed by Broadcom and is more advanced one. It
supports more modes, setting a speed, setting bits per word and uses
IRQs instead of polling.

This increases kernel size from 1808120 B to the 1811160 B (by 3040 B).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-05-07 07:56:38 +02:00
Yousong Zhou
f172456edc toolchain: gccgo: fix building gccgo compiler
Fixes FS#1498.  "gccgo -static" can fail for missing linker flag
-lgcc_eh caused by patch 850-use_shared_libgcc.patch

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-05-07 13:33:44 +08:00
Philip Prindeville
e495a05069 env: only use color diffs on terminals
When sending script/env diff's output to a file or pipeline, you
don't want escape characters for ANSI color sequences fouling the
byte stream.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-05-05 09:44:43 +02:00
Jianhui Zhao
1e90ba8958 krnel: The dm9000 module does not need to depend on pci
Signed-off-by: Jianhui Zhao <jianhuizhao329@gmail.com>
2018-05-05 09:37:36 +02:00
Christian Schoenebeck
80cb5c5703 ca-certificates: Update to Version 20180409
ca-certificates: Update to Version 20180409

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2018-05-05 09:32:04 +02:00
Chuanhong Guo
b05b16f09b kernel: Remove AutoLoad for legacy usb gadget modules
These modules usually require some special arguments to customize the
emulated device and they should be loaded manually by users.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-05-05 08:47:51 +02:00
John Crispin
6e0ae87a98 ramips: disable spi full duplex on mt7621
Signed-off-by: John Crispin <john@phrozen.org>
2018-05-05 08:25:18 +02:00
Daniel Engberg
bc5283381c tools/cmake: Update to 3.11.1
Update cmake to 3.11.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-05-05 07:53:44 +02:00
Daniel Engberg
93959bd86d tools/xz: Update to 5.2.4
Update to 5.2.4
Remove FreeBSD fix as it's not needed
Disable docs

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-05-05 07:13:53 +02:00
Daniel Engberg
0f5e01b691 tools/mm-macros: Update to 0.9.12
Update mm-macros to 0.9.12

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-05-05 07:13:48 +02:00
Daniel Engberg
2d913fc48d tools/sed: Update to 4.5
Update sed to 4.5

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-05-05 07:13:41 +02:00
Linus Walleij
6cd2e1f947 gemini: Add ethernet to DNS-313 and Wiliboard
This adds an interrim patch for v4.14 based on an
upstream commit to get ethernet working on D-Link DNS-313
(probably also on the Wiliboards)

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
ce93b05bf1 gemini: fix hard disk boot on D-Link devices
Since the D-Link devices boot from hard disk we need to
add the following changes to Gemini:

- Supply a bootarg in the device tree so we can boot from
  the right partition (/dev/sda4 on DNS-313)
- Disable forced command line in config so the kernel picks
  up the right bootargs from the device tree
- Enable EXT4 in the config as this is used for rootfs else
  we get nowhere, we cannot load this as a module because,
  well, it is supposed to be loaded from the root partition
  (chicken and egg problem).
- Enable jbd2 and mbcache (needed by ext4)

Also clean out the premature attempts to dynamically
modify the command line in the Image makefile: we should
pass this with the device tree bootargs instead, it works
much better.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
2c35bcffd0 gemini: add rtl8366rb to dir-685 board
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
af069fbd24 gemini: cleanup kernel config
Disable video and input drivers - they are needed only for one
board and can be enabled via modules if/when UI will be available.
Use LED drivers from packages.
Cleanup other things unnecessarily overriding defaults.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
91930c0f99 gemini: remove 4.4 support
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
6409b159e8 gemini: switch to 4.14
This introduces Device/ infrastructure and images
for all boards available upstream.

Changes from Linus submitted version:
- fix Raidsonic image generation
- remove redundant (old) image generation
- remove redundant header tool for dns313 board

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Linus Walleij
20d0dace40 firmware-utils: add DNS-313 image header tool
This tool is used to create headers on images for the
D-Link DNS-313 in gemini target.
Will be used after switching gemini to 4.14 kernel.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
4f74957584 gemini: add 4.14 support
This adds the patches to get fairly complete Gemini support
using kernel v4.14. It is mainly a backport of patches from
kernel v4.16 with omissions of things like graphics that require
substantial changes and will be better handled once we move
to the v4.16 kernel proper.
On top of this are some WIP patches for USB support.

Tested on Raidsonic NAS4220B and D-link DNS-313.

ChangeLog v4->v5:
- Fix ethernet single gmac usecase
- Fix USB reset (patch from Hans)
- Fix Raidsonic ethernet skew delay
- Fix kernel config (bridge, squashfs, jffs2, usb)
- Disable second usb port on Raidsonic board until fotg210_hcd is fixed

ChangeLog v3->v4:
- Make sure to use tabs rather than spaces in base-files.
- Use the dns313 image tool from the firmware-utils.
- Break out the addition of the v4.14 patches and the removal
  of the v4.4 patches to separate (big) patches.

ChangeLog v2->v3:
- Update the kernel config as indicated by Hauke Martens:
- Regenerate again after rebasing using kernel_oldconfig
  dropping a few optimization settings that are now generic
- Drop CFG80211 stuff (module)
- Drop CIFS stuff (module)
- Drop MAC80211 (module)
- Drop wireless drivers (module)
- Enabled OverlayFS
- Added proper DNS-313 boot image generation with the special
  file header tool.
- Disable CMA in the kernel
- Enable LZMA compression of the kernel
- Consequently name the nas4220b images nas4220b
- Update preinit MAC detection script to handle also DNS-313
- Add board.d/03_hdparm to set the disk to spin down after
  1 minute by default, if we have the hdparm tool installed

ChangeLog v1->v2:
- Processed config through kernel_oldconfig
- Processed patches through make target/linux/{clean,refresh} V=99

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Roman Yeryomin
55c9aa27be gemini: rename files directory (preparation for 4.14)
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-05-05 06:57:00 +02:00
Sandeep Sheriker Mallikarjun
610770dc5b at91: refreshing kernel configurations.
refreshing kernel configurations for sama5 and legacy subtarget.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:22 +02:00
Sandeep Sheriker Mallikarjun
27ca6cdc7b at91: Add SAMA5D2 PTC EK board
Add target device as at91-sama5d2_ptc_ek in SAMA5D2 subtarget and
build images for SAMA5D2 PTC Ek board.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:22 +02:00
Sandeep Sheriker Mallikarjun
60750ab505 at91: reorganize at91 subtargets
reorganizing at91 subtargets based on sama5 soc features and this fix
below problems.
  1. able to set neon flags to sama5d2 & sama5d4 subtargets.
  2. fix the make clean which removes all the subtargets in bin folder.
  3. able to configure kernel specific to subtarget.
  4. able to set vfpu4 flags to samad3 subtargets.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:22 +02:00
Sandeep Sheriker Mallikarjun
f34b495a2e uboot-at91: fix DTC command not found.
fixed DTC command not found error while compling uboot-at91. The fix
is to set DTC PATH in uboot-at91 MAKE command.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:22 +02:00
Sandeep Sheriker Mallikarjun
581f5e2392 at91: sdcard image with ext4 rootfs
creating sdcard image with ext4 rootfs only and ignoring creating
other filesystem in sdcard image.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:21 +02:00
Sandeep Sheriker Mallikarjun
22c398d257 at91: Add SAMA5D27 SOM1 EK board
Add support for SAMA5D27 SOM1 with target device as at91-sama5d27_som1_ek
in SAMA5 subtarget and build images for SAMA5D27 SOM1 Ek board.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:21 +02:00
Sandeep Sheriker Mallikarjun
790b20b6f4 uboot-at91: fetch uboot src from u-boot-at91 github
fetching uboot src from linux4sam/u-boot-at91 github for all at91
target.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:01 +02:00
Sandeep Sheriker Mallikarjun
130224cc47 at91: fix sdcard create image
copying at91bootstrap and uboot binaries to sdcard image is done
based on device name instead of dts name and this avoids creating
multiple u-boot and at91bootstrap binaries.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:01 +02:00
Sandeep Sheriker Mallikarjun
87f87e45c0 at91bootstrap:update to v3.8.10
updating to new version v3.8.10 and copying at91bootstrap.bin to bin folder.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-05-05 06:55:01 +02:00
Felix Fietkau
3a456683e5 hostapd: fix a mesh mode crash with CONFIG_TAXONOMY enabled
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-03 12:38:33 +02:00
Felix Fietkau
58f7b5b96c kernel: add missing in6_dev_put_clear call to an ipv6 network patch
Fixes "unregister_netdevice: waiting for lo to become free. Usage count = 1" messages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-05-02 15:32:07 +02:00
Rosy Song
fd569e5e9d samba36: add hotplug support
Add hotplug handle script for storage devices,
  this will add corresponding option in the
  /etc/config/samba file automatically.

Signed-off-by: Rosy Song <rosysong@rosinson.com>
2018-05-02 09:18:27 +02:00
Rosen Penev
2c4294f786 libusb: Add SourceForge mirror.
SourceForge is still getting updated so might as well have it here.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-02 09:18:26 +02:00
Hans Dedecker
2f1e329d7a iproute2: update to 4.16
Update to latest version of iproute2, refresh patches.
See https://lkml.org/lkml/2018/4/2/349 for a full overview of the
changes in 4.16.
Build and tested on AR7xxx against musl

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-05-02 09:18:26 +02:00
Rosen Penev
3aa28f4833 uboot-envtools: Change download to git.
Currently, the build system uses an openwrt mirror which does not currently
work and FTP can be unreliable under several circumstances. This change
implicitly allows using all the mirrors to download.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-02 09:18:26 +02:00
Daniel Golle
c67a9bed20 wolfssl: fix options and add support for wpa_supplicant features
Some options' default values have been changed upstream, others were
accidentally inverted (CONFIG_WOLFSSL_HAS_DES3). Also add options
needed to build hostapd/wpa_supplicant against wolfssl.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-05-02 09:18:26 +02:00
Rosen Penev
20e5fefb0c sysctl: Protect hard/symlinks by default.
There is no usecase for not protecting symlinks that I know of in OpenWrt.
Not even on desktop systems where you have multiple users with a shell.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-01 11:19:03 +02:00
John Crispin
52ba5760b7 ustream-ssl: update to latest git HEAD
527e700 ustream-ssl: Remove RC4 from ciphersuite in server mode.
39a6ce2 ustream-ssl: Enable ECDHE with OpenSSL.
45ac930 remove polarssl support

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-01 11:12:15 +02:00
John Crispin
90e65763a4 iptables: fix per object LDFLAGS for aggragate object builds
Without this patch the extra LDFLAGS of objects were selected based on the
name of the extension being built, which breaks for aggregate so builds.

Signed-off-by: John Crispin <john@phrozen.org>
2018-05-01 11:12:15 +02:00
Rosen Penev
1ce846580a download.pl: Change OpenWrt mirrors to HTTPS.
These have supported HTTPS for quite a while. I have not seen any obvious breakage.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-01 11:12:15 +02:00
Rosen Penev
9ea90209f9 download.pl: Change SourceForge address to HTTPS.
SourceForge has supported HTTPS for its downloads for a long time now.

I have not been able to see any failures resulting from this change.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-05-01 11:12:15 +02:00
Felix Fietkau
56ae9f9b0b mtd-utils: add back macOS compatibility code that was dropped during the update
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-30 10:12:55 +02:00
Rosen Penev
45219c1c0f kernel: Restrict dmesg output to root.
In typical OpenWrt setups, there are no other users that have a shell spawned for them by default.

This can be overriden by the kernel.dmesg_output syssctl.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-04-30 09:01:33 +02:00
Hauke Mehrtens
3088c2a63d libnl: Disable debug support
This dereses the size of the libnl pakcage a little bit
old:
   857 bin/packages/mips_24kc/base/libnl_3.4.0-1_mips_24kc.ipk
 41195 bin/packages/mips_24kc/base/libnl-core_3.4.0-1_mips_24kc.ipk
  7818 bin/packages/mips_24kc/base/libnl-genl_3.4.0-1_mips_24kc.ipk
 24322 bin/packages/mips_24kc/base/libnl-nf_3.4.0-1_mips_24kc.ipk
136075 bin/packages/mips_24kc/base/libnl-route_3.4.0-1_mips_24kc.ipk

new:
   852 bin/packages/mips_24kc/base/libnl_3.4.0-1_mips_24kc.ipk
 35020 bin/packages/mips_24kc/base/libnl-core_3.4.0-1_mips_24kc.ipk
  7615 bin/packages/mips_24kc/base/libnl-genl_3.4.0-1_mips_24kc.ipk
 24114 bin/packages/mips_24kc/base/libnl-nf_3.4.0-1_mips_24kc.ipk
131134 bin/packages/mips_24kc/base/libnl-route_3.4.0-1_mips_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-30 09:01:28 +02:00
Sandeep Sheriker Mallikarjun
2391d6a29e at91: sama5: remove neon and VFPv4 support
sama5d2 & samad4 have neon feature and sama5d3 does not have neon
feature due to which sama5d3 boot fails with error message Kernel
panic - not syncing: Attempted to kill init! exitcode=0x00000004.
removing neon & VFPv4 support to fix this

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-04-30 09:01:12 +02:00
Sandeep Sheriker Mallikarjun
80fe9bd71c at91: fix build error for wb50n.
when external kernel is selected from menuconfig, device wb50n is not
avaliable and build fails. As a fix adding checks for external kernel.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-04-30 09:01:12 +02:00
Rosen Penev
c0574d08da libusb: Update to 1.0.22
Switched download from SourceForge to GitHub. It seems the author migrated to that.

Also fixed the website URL as the SourceForge link is dead.

Compile tested on ar71xx and mvebu. Small size decrease on ar71xx: 30444 vs. 30099 bytes.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-04-30 09:01:12 +02:00
Simon Paterson
264feab1e7 ar71xx: Add userspace support for Mikrotik rb-2011iLS
Kernel support already present.
Patch adds userspace for the 'iLS' suffix model of the RB2011 family.
Enables correct initial switch settings, sysupgrade, etc.

https://mikrotik.com/product/RB2011iLS-IN

Signed-off-by: Simon Paterson <simon.paterson.nz@gmail.com>
2018-04-30 09:01:12 +02:00
Koen Vandeputte
3435dbdc1c kernel: bump 4.14 to 4.14.37
Refreshed all patches

Compile-tested on: cns3xxx, imx6, octeon, ramips/mt7621, x86/64
Runtime-tested on: cns3xxx, imx6, octeon, ramips/mt7621, x86/64

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Stijn Segers <foss@volatilesystems.org>
[add extra tested targets to commit msg]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-04-30 09:07:53 +03:00
Hans Dedecker
7ff31bed98 odhcp6c: update to latest git HEAD
5316d7f ra: always trigger update in case of RA parameter change
327f73d dhcpv6: fix strncpy bounds

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-29 23:12:31 +02:00
Daniel Engberg
097f3aadec toolchain/binutils: Use xz tarballs where possible
Switch to xz for 2.29.1 and 2.30
These tarballs are about 10Mbyte smaller than bz2.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-04-29 18:58:20 +02:00
Johann Neuhauser
0370293cf3 glibc: switch from git to https
This is needed for working behind a http proxy.

Signed-off-by: Johann Neuhauser <jneuhauser@dh-electronics.de>
2018-04-29 10:30:59 +02:00
Hauke Mehrtens
9bfca30826 uboot-mvebu: Fix build with libressl 2.7.2
When libressl was linked the libpthread was missing, add it in addition.

Fixes: 2c192b6916 ("tools/libressl: update to version 2.7.2")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-29 10:13:14 +02:00
Hauke Mehrtens
c21a4c7246 uboot-mxs: Fix build with libressl 2.7.2
When libressl was linked the libpthread was missing, add it in addition.
Also make the mxsimage tool to use the OpenSSL 1.1 API for the recent
libressl version.

Fixes: 2c192b6916 ("tools/libressl: update to version 2.7.2")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-29 00:57:36 +02:00
Hauke Mehrtens
5ca159ab3b uboot-zynq: Fix build with libressl 2.7.2
When libressl was linked the libpthread was missing, add it in addition.

Fixes: 2c192b6916 ("tools/libressl: update to version 2.7.2")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-29 00:57:35 +02:00
Hauke Mehrtens
60427a940f tools/make-ext4fs: Fix build on MacOSX
MacOSX does not support "-Wl,-Bstatic" so do not force the static
linking.
We only copy the static libz library into the staging libraries
directories, the linker will anyway only find the static version and
link against that on all systems.

Fixes: 8dcd941d8b ("tools/zlib: move zlib build to tools")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-29 00:57:07 +02:00
Hauke Mehrtens
2c192b6916 tools/libressl: update to version 2.7.2
Libressl version 2.7.0 and later implement more of the OpenSSL 1.1 API
and this needs some modifications of the code using it.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-28 15:29:28 +02:00
Hauke Mehrtens
3e93df0707 mtd-utils: activate --gc-sections
This reduces the size of the binary a bit:

old:
 37556 bin/targets/lantiq/xrx200/packages/nand-utils_2.0.1-1_mips_24kc.ipk
 81697 bin/targets/lantiq/xrx200/packages/ubi-utils_2.0.1-1_mips_24kc.ipk

new:
 27450 bin/targets/lantiq/xrx200/packages/nand-utils_2.0.1-1_mips_24kc.ipk
 71796 bin/targets/lantiq/xrx200/packages/ubi-utils_2.0.1-1_mips_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-28 15:29:22 +02:00
Syrone Wong
f37f63f38c mtd-utils: update to 2.0.2
010-fix-rpmatch.patch is upstream, removed from our patchset
The file structure is changed, modify patch accordingly
use CONFIGURE_ARGS to disable tests, xattr and lzo

Compile and run tested on mvebu and x86_64

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-28 15:29:17 +02:00
Hauke Mehrtens
c7cd166479 tools/mtd-utils: update to version 2.0.2
This version now uses autotools to configure the build system. They are
also using the newly added zlib package.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-28 15:29:13 +02:00
Hauke Mehrtens
bf167f8a9a tools/mtd-utils: Mark some lzma functions as static
These functions are not declared in any header file and only used in
same compile unit, mark them as static to remove one gcc warning and
make it easier for the compiler to optimize them out.

This also fixes some style problems to make this patch match the version
in the packages folder.

This is copied from this commit to the mtd-utils we pack into the image:
56d0dd56e9 ("mtd-utils: Mark some lzma functions as static")

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-28 15:29:08 +02:00
Hauke Mehrtens
8dcd941d8b tools/zlib: move zlib build to tools
This allows us to link the other tools against our libz and we do not
need the system zlib any more.

Only the static linked library is copied to the staging directory so we
have a statically linked library on all systems and not only on Linux.
This also adds the new dependencies of the packages which are depending
on zlib.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-28 15:28:59 +02:00
Hans Dedecker
afdca53ace netifd: update to latest git HEAD (Coverity fixes)
56ceced interface-ip: remove superfluous iface check in interface_ip_set_enabled()
4f4a8c0 system-linux: fix strncpy bounds

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-27 21:39:57 +02:00
Mathias Kresin
3877550114 arm64: enable harden branch predictor
Enable the harden branch predictor for arm64 as it is recommend.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-27 21:34:18 +02:00
Mathias Kresin
25f47c7bf9 kernel: add missing config symbols
The harden branch predictor was backported for arm64 with 4.9.92-96.

Fixes: 9aa196e0f2 ("kernel: bump 4.9 to bump 4.9.96")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-27 21:34:00 +02:00
Felix Fietkau
6fa88be486 build: add support for git submodules with CONFIG_SRC_TREE_OVERRIDE
Also work around an issue where git would store the modified workdir in
the submodule git config files

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-27 15:19:19 +02:00
Felix Fietkau
41ab276fe4 scripts/feeds: add support for git feeds with submodules
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-27 15:19:19 +02:00
Felix Fietkau
67aec988c4 brcm47xx: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-27 15:19:19 +02:00
Felix Fietkau
771f1ca3ff brcm63xx: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-27 15:19:19 +02:00
Felix Fietkau
1de74df8b9 bcm53xx: drop linux 4.4 and 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-27 15:19:19 +02:00
Christo Nedev
50b0919628 brcm2708: Add support for raspberry pi 3 b+.
Signed-off-by: Christo Nedev <christo.nedev@me.com>
2018-04-27 09:59:33 +02:00
Rosen Penev
7912677086 kernel: Fix data corruption on some mips devices.
This is mainly a bug fix for multi-core MIPS systems where L1 caches besides the primary do not get flushed.

The most obvious problem is data corruption on SATA and USB devices where read requests are typically larger than the cacheline size.

This may also fix ar71xx systems that suffer from similar data corruption but I have not tested if it does.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-04-27 09:59:33 +02:00
Kevin Darbyshire-Bryant
78f4305933 iftop: bump to latest
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
Choose first running interface, rather than first "up" interface (Redhat #1403025)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-27 09:59:28 +02:00
Matthias Schiffer
d168c2cf81 ar71xx: Ubiquiti Airmax M: add relocate-kernel to invalidate cache
Some Ubiquiti U-boot versions, in particular the "U-Boot 1.1.4.2-s956
(Jun 10 2015 - 10:54:50)" found with AirOS 5.6, do not correctly flush the
caches for the whole kernel address range after decompressing the kernel
image, leading to hard to debug boot failures, depending on kernel version
and configuration.

As a workaround, prepend the relocate-kernels loader, which will invalidate
the caches after moving the kernel to the correct load address.

Reported-by: Andreas Ziegler <dev@andreas-ziegler.de>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-26 20:40:07 +02:00
Jo-Philipp Wich
746c590882 scripts: bundle-libraries: fix build on OS X (FS#1493)
This allegedly fixes compilation of the library bundler preload library on
Apple OS X. The resulting executables have not been runtime tested due to a
lack of suitable test hardware.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-26 16:06:55 +02:00
Daniel Engberg
044e84fa8a toolchain/binutils: Remove old patches
Remove patches for arc-2016.09
Commit 8647f4f018
made these patches obsolete

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-04-26 13:20:31 +02:00
Hans Dedecker
ddb70e7298 toolchain/binutils: completely remove 2.28 support
Commit 15e9639159 removed support for
binutils version 2.28 but did not remove it as selectable item
from Binutils Version; let's remove this leftover as well.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-26 10:42:09 +02:00
Koen Vandeputte
6cd41b419c kernel: bump 4.14 to 4.14.36
Refreshed all patches.

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

Fixes for CVEs:
CVE-2018-1108
CVE-2018-1092
CVE-2018-1094
CVE-2018-1095

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Stijn Segers <foss@volatilesystems.org>
2018-04-26 08:54:01 +02:00
Kevin Darbyshire-Bryant
9aa196e0f2 kernel: bump 4.9 to 4.9.96
Refresh patches, following required reworking:

ar71xx/patches-4.9/930-chipidea-pullup.patch
layerscape/patches-4.9/302-dts-support-layercape.patch
sunxi/patches-4.9/0052-stmmac-form-4-12.patch

Fixes for CVEs:
CVE-2018-1108
CVE-2018-1092

Tested on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Tested-by: Arjen de Korte <build+openwrt@de-korte.org>
2018-04-26 08:53:54 +02:00
Damir Samardzic
bdb0de1bbc uboot-envtools: add support for ESPRESSObin and MACCHIATObin
Added for convenience. These boards can be used as dev boards running
various operating systems from different media, and this simplifies work
with U-Boot environment.

Signed-off-by: Damir Samardzic <damir.samardzic@sartura.hr>
2018-04-25 20:37:28 +02:00
Damir Samardzic
6f4faf833d mvebu: cortexa72: enable Marvell 10G PHY by default
This one enables 10 GbE ports on MACCHIATObin.

Signed-off-by: Damir Samardzic <damir.samardzic@sartura.hr>
2018-04-25 20:37:22 +02:00
Mathias Kresin
91e11bec74 ramips: fix mt7628 eval board pinmux
There is no pinmux group "jtag" for mt7628 and the pinmux driver fails
to load due to the use of the not existing group.

Fixes: FS#1515

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-25 20:33:27 +02:00
Mathias Kresin
d089a5d773 ramips: create image for mt7628 evb board
The image for the EVB board got lost with the merge of the mt7628 and
mt7688 subtargets.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-23 22:07:22 +02:00
Alex Maclean
a31107a97a firmware-utils: tplink-safeloader: increase RE350 kernel size
4.14 increased kernel size, so grow the kernel partition by 128K to compensate.

Fixes FS#1479.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2018-04-23 22:07:22 +02:00
Tobias Wolf
3d800f14a9 ramips: use patch-dtb for F5D8235 V1
The old DTB method (OWRTDTB) is not recognized by the boot process
anymore with 4.9/4.14.

This patch reuses KERNEL_DTB to get a valid DTB applied to the kernel
image.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
2018-04-23 22:07:22 +02:00
Giuseppe Lippolis
78666c7ba0 kernel: fix usb interface on 3G dwm-158 modem
The current option driver binds to the usb interface 2,3,4,5.
But the interface 4 and 5 doesn't answer to the AT commands.
On the new openwrt configuration the wwan script select the 5th
interface as control interface, failing to establish the
3G connection.

Backport the fix for the problem.

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2018-04-23 22:07:22 +02:00
Sven Eckelmann
0b20490207 ipq40xx: add support for OpenMesh A62
* QCA IPQ4019
* 256 MB of RAM
* 32 MB of SPI NOR flash (s25fl256s1)
  - 2x 15 MB available; but one of the 15 MB regions is the recovery image
* 2T2R 2.4 GHz
  - QCA4019 hw1.0 (SoC)
  - requires special BDF in QCA4019/hw1.0/board-2.bin with
    bus=ahb,bmi-chip-id=0,bmi-board-id=20,variant=OM-A62
* 2T2R 5 GHz (channel 36-64)
  - QCA9888 hw2.0 (PCI)
  - requires special BDF in QCA9888/hw2.0/board-2.bin
    bus=pci,bmi-chip-id=0,bmi-board-id=16,variant=OM-A62
* 2T2R 5 GHz (channel 100-165)
  - QCA4019 hw1.0 (SoC)
  - requires special BDF in QCA4019/hw1.0/board-2.bin with
    bus=ahb,bmi-chip-id=0,bmi-board-id=21,variant=OM-A62
* multi-color LED (controlled via red/green/blue GPIOs)
* 1x button (reset; kmod-input-gpio-keys compatible)
* external watchdog
  - triggered GPIO
* 1x USB (xHCI)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x gigabit ethernet
  - phy@mdio3:
    + Label: Ethernet 1
    + gmac0 (ethaddr) in original firmware
    + 802.3at POE+
  - phy@mdio4:
    + Label: Ethernet 2
    + gmac1 (eth1addr) in original firmware
    + 18-24V passive POE (mode B)
* powered only via POE

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the factory image to the u-boot when the device boots up.

The initramfs image can be started using

  setenv bootargs 'loglevel=8 earlycon=msm_serial_dm,0x78af000 console=ttyMSM0,115200 mtdparts=spi0.0:256k(0:SBL1),128k(0:MIBIB),384k(0:QSEE),64k(0:CDT),64k(0:DDRPARAMS),64k(0:APPSBLENV),512k(0:APPSBL),64k(0:ART),64k(0:custom),64k(0:KEYS),15552k(inactive),15552k(inactive2)'
  tftpboot 0x84000000 openwrt-ipq40xx-openmesh_a62-initramfs-fit-uImage.itb
  set fdt_high 0x85000000
  bootm 0x84000000

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-04-23 22:07:22 +02:00
Sven Eckelmann
c6aac196b8 ipq40xx: fix gpio-hog related boot issues
The pinctrl initialization fails with the MSM pinctrl code and gpio-hogs
because either the gpio ranges are not yet initialized (missing gpio-range
in DT) or that the msm driver unconditionally tries to re-initializes the
ranges (gpio-range in DT).

To allow gpio-hogs and similar early-boot gpio code, the gpio-ranges must
be in the device tree and the pinctrl-msm code must check whether the range
was already initialized by the DT.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
[drop changes to unrelated dtsi files, refresh patches]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-23 22:07:22 +02:00
Sven Eckelmann
e6bd568051 ipq-wifi: drop custom board-2.bins
The BDFs for all boards were upstreamed to the ath10k-firmware
repository and are now part of ath10k-firmware 2018-04-19.

We switched to the upstream board-2.bin, hence the files can be removed
here.

Keep the ipq-wifi package in case new boards are added. It might take
some time till board-2.bins send upstream are merged.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-04-23 22:07:22 +02:00
Sven Eckelmann
856f0d5d0d ipq40xx: use upstream board-2.bin
The BDFs for all boards were upstreamed to the ath10k-firmware
repository and are now part of ath10k-firmware 2018-04-19.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-04-23 22:07:22 +02:00
Sven Eckelmann
23894524a5 firmware: ath10k-firmware: update to 2018-04-19
* introduces the BDFs in /lib/firmware/ath10k/QCA4019/hw1.0/board-2.bin
  for:
  - 8devices Jalapeno
  - Asus RT-AC58U
  - AVM FRITZ!Box 4040
  - GL.iNet GL-B1300
  - Meraki MR33
  - Netgear EX6100v2
  - Netgear EX6150v2
  - OpenMesh A62
* introduces the BDFs in /lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
  - OpenMesh A62
* adds new firmware for QCA6174 hw3.0
  - firmware-6.bin_RM.4.4.1.c1-00038-QCARMSWP-1
  - firmware-6.bin_RM.4.4.1.c1-00041-QCARMSWP-1
* various undocumented BDF updates to:
  - QCA4019 hw1.0:
    + bus=ahb,bmi-chip-id=0,bmi-board-id=16
    + bus=ahb,bmi-chip-id=0,bmi-board-id=17
    + bus=ahb,bmi-chip-id=0,bmi-board-id=19
    + bus=ahb,bmi-chip-id=0,bmi-board-id=20
    + bus=ahb,bmi-chip-id=0,bmi-board-id=21
    + bus=ahb,bmi-chip-id=0,bmi-board-id=29
    + bus=ahb,bmi-chip-id=0,bmi-board-id=30
  - QCA9888 hw2.0:
    + bus=pci,bmi-chip-id=0,bmi-board-id=16
    + bus=pci,bmi-chip-id=0,bmi-board-id=17
    + bus=pci,bmi-chip-id=0,bmi-board-id=18
    + bus=pci,bmi-chip-id=0,bmi-board-id=23
    + bus=pci,bmi-chip-id=0,bmi-board-id=24
    + bus=pci,bmi-chip-id=0,bmi-board-id=25
  - QCA9984 hw1.0:
    + bus=pci,bmi-chip-id=0,bmi-board-id=1
    + bus=pci,bmi-chip-id=0,bmi-board-id=3
    + bus=pci,bmi-chip-id=0,bmi-board-id=5
    + bus=pci,bmi-chip-id=0,bmi-board-id=6
    + bus=pci,bmi-chip-id=0,bmi-board-id=7
    + bus=pci,bmi-chip-id=0,bmi-board-id=8

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-04-23 22:07:22 +02:00
Hans Dedecker
99815690a2 odhcpd: update to latest git HEAD
4136529 dhcpv6-ia: keep tentative assignments alive for a short time
200cc8f dhcpv6-ia: make assignment lookup more strict

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-23 21:47:23 +02:00
Rafał Miłecki
b1f5dd34ed brcm47xx: backport upstream patches for Netgear WNR1000 V3
This includes fix for reading NVRAM content.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-04-23 13:33:09 +02:00
Thomas Hebb
751746c736 mac80211: update patch to read ath10k variant from DT
This patch was revised upstream before being merged, and OpenWrt's copy
was never updated to reflect the revision.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
[refreshed patches]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-20 21:08:52 +02:00
Thomas Hebb
16b25ad829 ipq40xx: ex61x0v2: Disable unused GMACs
These devices have only one ethernet port. It doesn't make sense to
expose the unused GMACs as separate network devices.

Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2018-04-20 20:58:52 +02:00
Sven Eckelmann
c4c2a8f00c ipq40xx: Move reserved-memory DT to qcom-ipq4019.dtsi
The tz and smem reserved-memory information handled in the upstream Linux
sources by the SoC specific dtsi and not by the the boards dts. Using the
same approach in OpenWrt avoids unneccessary duplication.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-04-20 20:58:52 +02:00
Sven Eckelmann
0d62432834 ipq40xx: Remove unused reserved-memory nodes
The reserved-memory regions are mostly undocumented by QCA and are named
very unspecific in the QSDK device trees. It was tried to clean them up by
commit 71ed9f10a3 ("ipq40xx: Use detailed reserved memory for A42") and
similar changes.

The features which require these regions were mostly unknown but
Senthilkumar N L <snlakshm@qti.qualcomm.com> and Sricharan Ramabadhran
<srichara@qti.qualcomm.com> provided some more insight in some of them:

* crash dump feature
  - a couple of regions used when 'qca,scm_restart_reason' dt node has the
    value 'dload_status' not set to 1
    + apps_bl <0x87000000 0x400000>
    + sbl <0x87400000 0x100000>
    + cnss_debug <0x87400000 0x100000>
    + cpu_context_dump <0x87b00000 0x080000>
  - required driver not available in Linux
  - safe to remove
* QSEE app execution
  - region tz_apps <0x87b80000 0x280000>
  - required driver not available in Linux
  - safe to remove
* communication with TZ/QSEE
  - region smem <0x87b80000 0x280000>
  - driver changes not yet upstreamed
  - must not be removed because any access can crash kernel/program
* trustzone (QSEE) private memory
  - region tz <0x87e80000 0x180000>
  - must not be removed because any access can crash kernel/program

Removing the unnecessary regions saves some kilobyte of reserved-memory and
cleans up the device tree:

* 2560 KiB
  - 8devices Jalapeno
  - AVM FRITZ!Box 4040
  - Compex WPJ428
  - Meraki MR33 Access Point
  - OpenMesh A42
* 14336 KiB
  - GL.iNet GL-B1300
  - Qualcomm Technologies, Inc. IPQ40xx/AP-DK01.1-C1

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-04-20 20:58:52 +02:00
Mathias Kresin
74a0d8cd92 build: consolidate fake uImage header build commands
Merge the two existing functions and use a parameter for the type
header field.

It updates the syntax of the former mpc85xx fake ramdisk header
command to be compatible with mkimage from u-boot 2018.03 and fixes the
build error spotted by the build bot.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-20 20:58:52 +02:00
Kevin Darbyshire-Bryant
5950ab067b wireguard: bump to 20180420
7cc2668 version: bump snapshot
860c7c7 poly1305: do not place constants in different sections
5f1e4ca compat: remove unused dev_recursion_level backport
7e4b991 blake2s: remove unused helper
13225fc send: simplify skb_padding with nice macro
a1525bf send: account for route-based MTU
bbb2fde wg-quick: account for specified fwmark in auto routing mode
c452105 qemu: bump default version
dbe5223 version: bump snapshot
1d3ef31 chacha20poly1305: put magic constant behind macro
cdc164c chacha20poly1305: add self tests from wycheproof
1060e54 curve25519: add self tests from wycheproof
0e1e127 wg-quick.8: fix typo
2b06b8e curve25519: precomp const correctness
8102664 curve25519: memzero in batches
1f54c43 curve25519: use cmov instead of xor for cswap
fa5326f curve25519: use precomp implementation instead of sandy2x
9b19328 compat: support OpenSUSE 15
3102d28 compat: silence warning on frankenkernels
8f64c61 compat: stable kernels are now receiving b87b619
62127f9 wg-quick: hide errors on save

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-04-20 18:59:46 +02:00
Daniel Golle
a4322eba2b hostapd: fix encrypted mesh channel settings
Import two patches from Peter Oh to allow setting channel
bandwidth in the way it already works for managed interfaces.
This fixes mesh interfaces on 802.11ac devices always coming up in
VHT80 mode.

Add a patch to allow HT40 also on 2.4GHz if noscan option is set, which
also skips secondary channel scan just like noscan works in AP mode.

This time also make sure to add all files to the patch before
committing it...

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-20 16:00:01 +02:00
Jo-Philipp Wich
99d9c98748 rpcd: update to latest HEAD
6994c87 uci: fix session delta isolation
f0f6f81 session: remove redundant key attribute to rpc_session_set()
3d400c7 session: support reclaiming pending apply session
eb09f3a session: ignore non-string username attribute upon restore
edd37f8 uci: add rpc_uci_replace_savedir() helper
2423162 uci: switch to proper save directory on apply/rollback
66a9bad uci: fix memory leak in rpc_uci_apply_timeout()

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-20 14:05:48 +02:00
Felix Fietkau
a1c65b41cb build: pass HOSTCXX to host builds as CXX
Fixes cmake build on some systems that also have an older clang++

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-20 13:20:25 +02:00
Felix Fietkau
1a89547957 Revert "hostapd: fix encrypted mesh channel settings"
This reverts commit 7f52919a2f, which is
currently breaking the builds and needs to be reworked

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-20 10:36:42 +02:00
Felix Fietkau
d92ec071b2 mtd: fix erase handling with partition offset on write
When a partition offset is given, it is used in an lseek call, which
affects write, but not erase. Add it to the offset for erase calls as
well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-20 10:03:38 +02:00
Felix Fietkau
bc43f75def uboot-envtools: remove makefile duplication for supported targets
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-20 10:03:38 +02:00
Felix Fietkau
d89448fe43 mediatek: disable ubifs
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-20 10:03:38 +02:00
Felix Fietkau
2fe0aaed7f mediatek: remove 4.9 kernel config
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-20 10:03:38 +02:00
Daniel Golle
7f52919a2f hostapd: fix encrypted mesh channel settings
Import two patches from Peter Oh to allow setting channel
bandwidth in the way it already works for managed interfaces.
This fixes mesh interfaces on 802.11ac devices always coming up in
VHT80 mode.

Add a patch to allow HT40 also on 2.4GHz if noscan option is set, which
also skips secondary channel scan just like noscan works in AP mode.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-20 07:52:19 +02:00
Daniel Golle
465d4bc538 mac80211: pass down noscan to wpa_supplicant
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-20 07:52:19 +02:00
Daniel Golle
2ec96787c3 netifd: update to latest git HEAD
b3dca7b wireless: include noscan option in common wdev vars

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-20 07:52:19 +02:00
Mathias Kresin
38bd4e4eb5 build: fix uImage fake header command
Use a syntax compatible with mkimage from u-boot 2018.03 to fix the
build errors spotted by the build bot.

The images are binary identical to the ones generated with mkimage from
u-boot 2014.10.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-19 19:15:00 +02:00
Hans Dedecker
fdf2e1fe1e odhcpd: update to latest git HEAD (FS#1457)
dcfc06a router: fix managed address configuration setting

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-19 15:51:13 +02:00
Leon M. George
3a6c3c9c1c mac80211: join 5GHz checks
Before this commit, devices supporting both 2.4GHz and 5GHz would be
configured for 2.4GHz by default - unless they have VHT capabilities.

With this commit, channel 36 is only set when the frequency is supported.
VHT isn't checked unless that is the case.

Signed-off-by: Leon M. George <leon@georgemail.eu>
2018-04-19 14:40:26 +02:00
Hyeonsik Song
594dbaa262 toolchain/glibc: unset LD_LIBRARY_PATH
Fix build error when use glibc

Signed-off-by: Hyeonsik Song <blogcin@naver.com>
2018-04-19 14:39:41 +02:00
Florian Eckert
4a243f7a09 network/uqmi: pipe the output off qmi_wds_stop to /dev/null
Pipe uqmi output from qmi_wds_stop function into /dev/null.
This will supress the following output in proto teardown.

netifd: wwan (x): "No effect"
netifd: wwan (x): Command failed: Permission denied

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-04-19 14:39:38 +02:00
Felix Fietkau
9ce5127a49 orion: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-19 14:38:57 +02:00
Felix Fietkau
decbecb0ad omap: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-19 14:38:53 +02:00
Felix Fietkau
57a7595a28 mvebu: drop linux 4.4 and 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-19 14:38:36 +02:00
Jo-Philipp Wich
a656ea0bdb tools: mkimage: provide dtc path during build
The new mkimage version requires a CONFIG_MKIMAGE_DTC_PATH variable to be
provided during build, in order to hardcode a path to a suitable DT
compiler executable.

Failure to do so will result in stray "sh: 1: -I: not found" errors when
invoking mkimage for FIT image generation.

Fix the issue by supplying "dtc" as CONFIG_MKIMAGE_DTC_PATH value during
build. As we intend our host utilities to be relocatable and since we're
already overriding PATH when invoking mkimage, an absolute path is not
required.

Fixes: b13e981d72 ("tools/mkimage: update to version 2018.03")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-19 08:34:34 +02:00
Paul Wassi
3c79bb5606 package/utils/lua: cleanup source mirrors
Remove inactive mirrors from the sources list.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-04-18 23:59:32 +02:00
Hauke Mehrtens
b13e981d72 tools/mkimage: update to version 2018.03
This activates support for fit images and some other new mkimage
features. Some of the patches were applied upstream and could be
removed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-18 23:59:32 +02:00
Luis Araneda
68150d3125 uboot-envtools: update to 2018.03
Several changes has been made:

+ AES support has been removed by
  upstream commit c6831c7 (2017-11-14)
  [remove patch "200-fw_env_no_aes.patch"]

+ Support for UBI volumes has beed added by
  upstream commit 34255b9 (2017-11-15)
  [remove patch "300-support-env-in-ubivol-chardev.patch"]

+ A command line argument has beed added ("-c") to manually indicate
  the location of the environment configuration file

Also, patch "400-u-boot-2015.10-stdint.patch" is no longer
necessary, and the config option to enable UBI support has
been removed.

Size comparisons:

fw_printenv size:
Target    Before         After
ar71xx    15,189 bytes   18,133 bytes (+2,944 bytes)
ipq40xx   20,873 bytes   20,987 bytes (+114 bytes)
mvebu     20,881 bytes   20,991 bytes (+110 bytes)
ramips    15,128 bytes   18,072 bytes (+2,944 bytes)

OPKG package size:
Target    Before         After
ar71xx    11,309 bytes   12,875 bytes (+1,566 bytes)
ipq40xx   11,772 bytes   13,299 bytes (+1,527 bytes)
mvebu     11,609 bytes   13,114 bytes (+1,505 bytes)
ramips    10,975 bytes   12,503 bytes (+1,528 bytes)

Compile tested: ipq40xx (musl, glibc, gcc5-musl), ar71xx, mvebu, ramips
Run tested: ipq40xx (ASUS RT-AC58U)

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-04-18 23:59:32 +02:00
Hauke Mehrtens
7b758f7f4f ustream-ssl: px5g: Rebuild package
mbedtls changed in version 2.7.0 the soversion of the libmbedcrypto.so
library, all applications using this shared library have to be
recompiled to be able to load the new library.

Some binaries got rebuild to for the 2.7.0 release and are now using
libmbedcrypto.so.1, the older ones are still using libmbedcrypto.so.0.

Fixes: 75c5ab4ca ("mbedtls: update to version 2.7.0")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-18 23:57:25 +02:00
Kabuli Chana
a6f24c9a78 mwlwifi: update to version 10.3.4.0-2018-03-30
Upgrade 88W8964 firmware to 9.3.2.6

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2018-04-18 23:57:25 +02:00
Stefan Lippers-Hollmann
8267a0b234 mac80211: ipw2200-fw: fix download mirror(s)
bughost.org hasn't existed for 6-8 years, add a couple of current
mirrors to avoid the fallback to http://mirror2.openwrt.org/sources/.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-04-18 23:57:20 +02:00
Stefan Lippers-Hollmann
18fe577530 mac80211: ipw2100-fw: fix download mirror(s)
bughost.org hasn't existed for 6-8 years, add a couple of current
mirrors to avoid the fallback to http://mirror2.openwrt.org/sources/.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-04-18 23:57:13 +02:00
Hauke Mehrtens
97a3e69f61 ath10k-ct: make it depend on PCI support again
The missing dependency causes build problems on systems without PCI
support.
The ath10k_pci kernel module depends on PCI support so this dependency
should be added. ath10k now also supported the ahb interface on the
IPQ4019 SoC, but this SoC also has PCI support so this extra dependency
is not as problem.

Fixes: d0f3dd5b9f ("ath10k-ct: update to latest version, enable AHB.")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-18 23:57:12 +02:00
Stefan Lippers-Hollmann
a330ecebf5 mac80211: ath10k: Suppress "Unknown eventid: 36925" warnings
Merge upstream patch from Sathishkumar Muruganandam
<murugana@codeaurora.org> for OpenWrt's backports package:
https://lkml.kernel.org/r/<1522049641-19521-1-git-send-email-murugana@codeaurora.org>
Commit-ID: 606204bb863fa3b0bb54929d79b4dc46338f9180

* FW has Smart Logging feature enabled by default for detecting failures
* and processing FATAL_CONDITION_EVENTID (36925 - 0x903D) back to host.
*
* Since ath10k doesn't implement the Smart Logging and FATAL CONDITION
* EVENT processing yet, suppressing the unknown event ID warning by moving
* this under ATH10K_DBG_WMI.
*
* Simulated the same issue by having associated STA powered off when
* ping flood was running from AP backbone. This triggerd STA KICKOUT
* in AP followed by FATAL CONDITION event 36925.
*
* Issue was reproduced and verified in below DUT
* ------------------------------------------------
* AP mode of OpenWRT QCA9984 running 6.0.8 with FW ver 10.4-3.5.3-00053
*
* Signed-off-by: Sathishkumar Muruganandam <murugana@codeaurora.org>

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-04-18 23:57:03 +02:00
Hauke Mehrtens
51e4868fc9 mac80211: Fix loading of rsi_sdio module
When CONFIG_PM was not set rsi_sdio_reinit_device() was not compiled
into the driver but referenced.
This is a backport form the mainline Linux kernel.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-18 23:57:03 +02:00
Evgeniy Didin
36314c12c0 mac80211: add RedPine RS9113 module support
RedPine RS9113 wireless module requires rsi91x driver to be built
and linux-firmware/rsi/rs9113_wlan_qspi.rps to be installed.
Also we add patch for successful compilation of rsi91x driver.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Cc: John Crispin <john@phrozen.org>
2018-04-18 23:56:55 +02:00
Daniel Golle
ff8df2b3f9 hostapd: mesh: make forwarding configurable
For unencrypted mesh networks our scripts take care of setting
the various mesh_param values. wpa_supplicant changes somes of them
when being used for SAE encrypted mesh and previously didn't allow
configuring any of them. Add support for setting mesh_fwding (which
has to be set to 0 when using other routing protocols on top of
802.11s) and update our script to pass the value to wpa_supplicant.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-18 22:12:18 +02:00
Daniel Golle
e633b21c14 Revert "mac80211: pass hostapd control socket to mesh-mode supplicant"
This reverts commit 1356a66f94.
The change breaks wpa_supplicant.conf generation, more work is needed
to fix mesh+AP.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-18 17:55:23 +02:00
Felix Fietkau
a18d88e863 mt76: update to the latest version
ec8435e mt76: initialize rx lock earlier
e08d5da mt76x2: fix is_mt7612 routine
e2eedc9 mt7603: retry PSE reset calls

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-18 12:19:57 +02:00
Felix Fietkau
ca54bd1005 kernel: fix an issue with infinite stack traces on MIPS
Reproduced by enabling lockdep on MT7621

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-18 12:17:28 +02:00
Matthias Schiffer
bb46520159 kernel: disable accept_ra by default
Our commands setting accept_ra to 0 on all interfaces got lost in the
transition to procd. This remained unnoticed for a long time, as we also
enable forwarding on all interfaces, which prevents RA handling by default.

Restore the commands, while also fixing a possible race condition in the
old version.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-17 22:08:12 +02:00
Felix Fietkau
030a23001b mt76: update to the latest version
ea6dd6f mt7603: add missing spin lock init
2d08440 mt76: add rcu locking around tx scheduling
8c92c91 mt7603: turn vif wcid entry back into a full mt7603_sta
ca5cc9a mt76: fix concurrent rx calls on A-MPDU release

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-17 15:02:41 +02:00
Felix Fietkau
78d33056ab mediatek: enable ramdisk support by default
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-17 13:47:54 +02:00
Felix Fietkau
00dcccc74c mediatek: fix target FPU settings
This reverts commit 5555545494.
The target supports both NEON and VFPv4, but for this to work properly,
a few more changes are needed:
- enable NEON support in the kernel config
- add the fpu feature flag to the makefile

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-17 13:46:18 +02:00
Matthias Schiffer
14c78a7dfc base-files: /lib/functions.sh: remove unused insert_modules
insert_modules has been unused since r5279.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-17 11:32:56 +02:00
Felix Fietkau
173d93ea23 ramips: fix locking issues in the ethernet driver
The stats update needs to protect against being interrupted by a tasklet
The u64 stats seqlock needs to be initialized

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-17 11:29:31 +02:00
Mathias Kresin
e988b0fe0d ramips: mt7620: fix double use of pins
The pins are used as (LED) GPIOs and can't be used at the same time as
hardware controlled ephy (LED) pins.

Fixes: FS#1500

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-17 08:40:56 +02:00
Daniel Engberg
ed4ac0ed65 curl: Deprecate idn(1) support and switch to xz tarball
libidn(1) is deprecated, add libidn2 support
Switch to xz tarball (smaller size)

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-04-16 22:01:09 +02:00
Rafał Miłecki
e8f8d6cde4 fstools: update to latest master branch
e243683 libfstools: move mount points when switching to JFFS2
3782b59 libfstools: add "const" to char pointer arguments in mount_move()
79721f0 libfstools: fix foreachdir() to pass dir with a trailing slash

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-04-16 19:47:44 +02:00
Hans Dedecker
20d3c118ae netifd: update to latest git HEAD (coverity fixes)
513eb27 system-linux: check ioctl return value in system_vlan()
df1625d system-linux: check ioctl return value in system_if_flags()
209c508 system-linux: fix segfault on alloc failure in system_if_check()
4a8e20e system-linux: fix segfault on error in system_add_ip6_tunnel()
36e4700 handler: fix resource leak on error in netifd_init_script_handlers()
86a0e7c system-linux: remove unnecessary open call in system_if_dump_info()
1e2cf67 system-linux: fix memory leak on error in system_add_vxlan()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-16 13:12:48 +02:00
Stijn Tintel
ec1d7b9461 kernel: bump 4.14 to 4.14.34
Refresh patches.
Update patches that no longer apply:
- backport/313-netfilter-remove-defensive-check-on-malformed-packet.patch
- pending/642-net-8021q-support-hardware-flow-table-offload.patch

Compile-tested: x86/64.
Runtime-tested: x86/64.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-04-16 00:22:57 +03:00
Stijn Tintel
03774d28e1 lldpd: bump to 1.0.1
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-04-15 21:41:36 +03:00
Hans Dedecker
d78dd1f306 nghttp2: bump to 1.31.1
1e22b36c Update manual pages
0f818baf Bump up version number to 1.31.1
c411d169 Fix frame handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-15 20:24:44 +02:00
Felix Fietkau
cd7878e69d mt76: update to the latest version
1d23142 mt76: add led active low to debugfs
549f43b mt7603: ensure that the ACK flag is set for A-MPDUs with any acked subframe
df9f9f6 mt7603: always try tx rate1 first
9c52f36 mt7603: pull the final rate index from the status descriptor
f36f308 mt7603: improve validation of rx frames
9a23989 mt7603: remove warning on rx with invalid channel info
7a31731 mt76: check for pending reset before attempting to schedule tx
873a7c9 mt7603: call mt76_txq_schedule_all as a barrier to prevent tx during reset
d9e5da3 mt76: add rcu locking in tid reorder function
a8e8921 mt7603: add more checks to avoid dereferencing invalid pointers in wcid lookup

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-15 10:21:54 +02:00
Felix Fietkau
31a6ee0219 ramips: remove broken and bogus spinlock in the SPI driver
Based on patch by Neil Brown

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-14 20:12:32 +02:00
Felix Fietkau
ceff5d8c82 ramips: add missing unlock in fe_phy_link_adjust
Based on patch by Neil Brown

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-14 20:12:32 +02:00
Matthias Schiffer
d13c7acd9e base-files: remove /etc/sysctl.d/ from conffiles
Let's use /etc/sysctl.d for package-provided snippets and leave
/etc/sysctl.conf to the admin. Don't backup /etc/sysctl.d on upgrades, so
old defaults get replaced properly.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-13 14:36:43 +02:00
Felix Fietkau
07b4e49abb ramips: fix usb phy compatible string (should fix FS#1489)
In the new USB phy driver, it checks the compatible string before
attempting to iomap its mem resource and do the extra PHY init

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-13 13:13:53 +02:00
Matthias Schiffer
445682c07d base-files: move netfilter sysctl defaults to specific kmod packages
Avoid warnings when applying settings for uninstalled kmods. See also
FS#1073.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-13 10:16:45 +02:00
Matthias Schiffer
bee696d66c base-files: move sysctl defaults to /etc/sysctl.d/10-default.conf
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-13 10:16:45 +02:00
Matthias Schiffer
dbeb780ba4 base-files: evaluate /etc/sysctl.d/* before /etc/sysctl.conf
We can use /etc/sysctl.d/* for package-supplied sysctl snippets, giving
admins the option to use /etc/sysctl.conf to override settings.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-13 10:16:45 +02:00
Matthias Schiffer
6c7307f133 base-files: remove /etc/uci-defaults/11_migrate-sysctl
11_migrate-sysctl has not been updated with new file hashes since 2012.
Let's get rid of it.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-13 10:16:45 +02:00
Christian Lamparter
c61c709f4e apm821xx: Force Ethernet PHYID on MX60/MX60W
The MX60's uboot disables all the PHYs before starting linux.
This causes the PHY/switch detection code to malfunction
almost all of the time. To get around this, set a compatible
flag to force PHYID.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2018-04-13 07:51:43 +02:00
Ben Greear
b2bbef7eb4 ath10k-ct: Update firmware
This firmware has only small changes from the last commit, but
it does have an important fix for at least some PTK rekey logic.

The old firmware would have issues if the driver managed to set
a clear key while encryption was 'enabled'.  This new firmware for
both wave-1 and wave-2 should not be susceptible to this type of
bug any more.

And remove mesh-bcast IE flag from wave-2, still need more work before
we can enable that flag in ath10k-ct firmware it seems.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-04-13 07:48:19 +02:00
Mathias Kresin
fb528b1674 ipq40xx: unbundle firmware and board file
Don't select the firmware with the board file, it prevents an easy use
of the -ct ath10k firmware. Select the firmware within the default
packages instead.

Remove the per device selection of the firmware now that it the
firmware is selected by default.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-13 07:48:19 +02:00
David Bauer
970f1914be ipq40xx: add support for Netgear EX6100v2/EX6150v2
Specifications:
SOC:	Qualcomm IPQ4018 (DAKOTA) ARM Quad-Core
RAM:	256 MB Winbond W632GU6KB12J
FLASH:	16 MiB Macronix MX25L12805D
ETH:	Qualcomm QCA8072
WLAN1:  Qualcomm Atheros QCA4018 2.4GHz 802.11b/g/n/ac 2x2
WLAN2:  Qualcomm Atheros QCA4018 5GHz 802.11n/ac
	1x1 (EX6100)
	2x2 (EX6150)
INPUT:  Power, WPS, reset button
	AP / Range-extender toggle
LED:	Power, Router, Extender (dual), WPS, Left-/Right-arrow
SERIAL:	Header next to QCA8072 chip.
	VCC, TX, RX, GND (Square hole is VCC)
	WARNING: The serial port needs a TTL/RS-232 v3.3 level converter!
        The Serial setting is 115200-8-N-1.

Tested and working:
 - Ethernet
 - 2.4 GHz WiFi (Correct MAC-address)
 - 5 GHz WiFi (Correct MAC-address)
 - Factory installation from WebIF
 - Factory installation from tftp
 - OpenWRT sysupgrade (Preserving and non-preserving)
 - LEDs
 - Buttons

Not Working:
 - AP/Extender toggle-switch

Untested:
 - Support on EX6100v2. They share the same GPL-Code and vendor-images.
   The 6100v2 seems to lack one 5GHz stream and differs in the 5GHz
   board-blob. I only own a EX6150v2, therefore i am only able to verify
   functionality on this device.

Install via Web-Interface:
Upload the factory image to the device to the Netgear Web-Interface.
The device might asks you to confirm the update a second time due to
detecting the OpenWRT firmware as older. The device will automatically
reboot after the image is written to flash.

Install via TFTP:
Connect to the devices serial. Hit Enter-Key in bootloader to stop
autobooting. Command "fw_recovery" will start a tftp server, waiting for
a DNI image to be pushed.
Assign your computer the IP-address 192.168.1.10/24. Push image with
tftp -4 -v -m binary 192.168.1.1 -c put <OPENWRT_FACTORY>
Device will erase factory-partition first, then writes the pushed image
to flash and reboots.

Parts of this commit are based on Thomas Hebb's work on the
openwrt-devel mailinglist.

See https://lists.openwrt.org/pipermail/openwrt-devel/2018-January/043418.html

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-04-13 07:48:19 +02:00
Robert Marko
be6e28b516 ipq-wifi: Add 8devices Jalapeno
Add custom board-2.bin for 8devices Jalapeno.
Upstreaming is in progress.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-04-13 07:48:19 +02:00
Robert Marko
1e341bb5ef ipq40xx: add support for 8devices Jalapeno
This patch adds support for 8devices Jalapeno.

Specification:
QCA IPQ4018, Quad core ARM v7 Cortex A7 717MHz
256 MB of DDR3 RAM
8 MB of SPI NOR flash
128 MB of Winbond SPI NAND flash
WLAN1: Qualcomm Atheros QCA4018 2.4GHz 802.11bgn 2:2x2
requires special BDF in QCA4019/hw1.0/board-2.bin with:
bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=8devices-Jalapeno
WLAN2: Qualcomm Atheros QCA4018 5GHz 802.11a/n/ac 2:2x2
requires special BDF in QCA4019/hw1.0/board-2.bin with:
bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=8devices-Jalapeno
ETH: Qualcomm Atheros QCA8072 Gigabit Switch (1 x LAN, 1 x WAN)
phy@mdio3:
Label: eth0
gmac0
phy@mdio4:
Label: eth1
gmac1

Installation instructions:
Since boards ship with old version of LEDE installation is simple.
Just use sysupgrade -n -F sysupgrade.bin

Syuspgrade needs to be forced since OpenWRT uses DT detection in recent
releases.

If you get error that FIT configuration is not found during boot it is
due to older U-boot used on your board.
That is because 8devices used custom FIT configuration partition name
as they internally had v1 and v2 boards.
Only v2 boards are sold so now they are shipping boards with never
U-boot using generic config@1 FIT partition name.

Also for old uboot it is possible to force loading config@1 by changing
uboot environment:

setenv boot5 'bootm 0x84000000#config@1’
saveenv

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-04-13 07:48:19 +02:00
Daniel Golle
c52ef396f9 hostapd: fix compile of -mini variants
Fixes commit d88934aa5a (hostapd: update to git snapshot of 2018-04-09)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-13 06:01:16 +02:00
Daniel Golle
1356a66f94 mac80211: pass hostapd control socket to mesh-mode supplicant
Unlike when operating in Ad-Hoc mode, we apparently need to pass the
hostapd control socket interface to wpa_supplicant when using 802.11s
mesh mode.

There also seems to still be something wrong with the logic setting
channel and (v)htmode parameters...

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-13 03:27:01 +02:00
Daniel Golle
d88934aa5a hostapd: update to git snapshot of 2018-04-09
And import patchset to allow 802.11s mesh on DFS channels, see also
http://lists.infradead.org/pipermail/hostap/2018-April/038418.html
Fix sae_password for encryption mesh (sent upstream as well).
Also refreshed existing patches and fixed 463-add-mcast_rate-to-11s.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-04-13 03:27:01 +02:00
Hans Dedecker
b28e995fc7 libubox: update to latest git HEAD
6eff829 utils: fix build error with g++

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-12 14:02:07 +02:00
Rafał Miłecki
f5195e72c0 kernel: mtd: bcm47xxpart: improve handling TRX partition size
This is important fix for flash parsing in some corner cases. In case
of TRX subpartition with rootfs being aligned to the flash block size it
was incorrectly registered twice. Detecting & registering it as a
standalone partition was resulting in an incorrect "firmware" partition
size and possibly broken sysupgrade.

It wasn't noticed before because "rootfs" alignment depends on a kernel
size. It can happen though - depending on the configuration and the
kernel size.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-04-12 08:25:17 +02:00
Matthias Schiffer
85a35c644e ebtables: update to latest git 2018-04-11
2e783b227766 ebt_ip: add support for matching IGMP type
b5fbb8d786c9 ebt_ip: add support for matching ICMP type and code
c5e5b784fd1a Move ICMP type handling functions from ebt_ip6 to useful_functions.c
11da52177196 include: sync linux/netfilter_bridge/ebt_ip.h with kernel

Note: the new features require at least kernel 4.17 or backported patches.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-12 07:34:57 +02:00
Matthias Schiffer
d3756a9a13 include/kernel.mk: build kmod packages with empty FILES
kmod packages without FILES did not have an install step defined, leading
to no package being built. This affected netfilter/iptables packages, which
filter out builtin modules from FILES.

Not building a package that it is selected in .config is problematic, as
the generated empty package may be necessary to satisfy dependencies.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-12 05:47:10 +02:00
Daniel Engberg
85282ae69c tools/mpfr: Update to 4.0.1
Update mpfr to 4.0.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-04-11 21:02:50 +02:00
Daniel Engberg
a8c315192b tools/cmake: Update to 3.11.0
Update cmake to 3.11.0
Remove 110-alpine_musl-compat.patch as it's integrated upstream
Rename and refresh patches

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-04-11 21:02:29 +02:00
Alexander Couzens
f6e6eadc99 packages/uboot-omap: bugfix: serial using ns16550 fifo not enabled
The serial was working before, but not when doing copy&pasting longer
commands in a short time.

Fixes: a4def18f29 ("uboot-omap: Update to u-boot v2017.01")
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-04-11 03:43:38 +02:00
Lucian Cristian
f93f29bccc omap: kernel update and switch to 4.14
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-04-11 02:46:47 +02:00
Matthias Schiffer
e39847ea2f ar71xx: increase kernel partition size for CPE/WBS 210/510
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-10 18:29:19 +02:00
Matthias Schiffer
373dc11b51 firmware-utils: tplink-safeloader: move CPE/WBS 210/510 version metainfo to the end
Having the metainfo between kernel and rootfs prevents us from resizing
the kernel partition as necessary.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-10 18:29:19 +02:00
Matthias Schiffer
5bfb344106 ar71xx: sysupgrade: improve CPE/WBS 210/510 validation, add new metadata offset
Previously, tplink_pharos_check_image() would accept any image with ELF
magic and only non-printable data in the support-list, as in this case the
while-read loop would not run at all. Add the new support-list offset and
ensure an image is only accepted when the model string is actually found.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-10 18:29:19 +02:00
Matthias Schiffer
d3f96fedec ar71xx: increase kernel partition size for UniFi AP Pro and Outdoor+, enable devices again
Tested on UAP Outdoor+.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-10 15:27:39 +02:00
Matthias Schiffer
f8f6fa11c0 ar71xx: limit Ethernet speed of UBNT Airmax M (XM) devices to 100Mbit/s
Some Airmax devices can establish a Gigabit link even though the MAC only
supports 10/100 MBit/s, leading to broken connectivity. Prevent this from
happening by limiting the speed to 100MBit/s.

Fixes: FS#296
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-10 15:27:39 +02:00
Matthias Schiffer
177fa14340 iptables: split physdev match out as a separate package
Split physdev match out of ipt-extra to allow installing ipt-extra without
pulling in br-netfilter.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-09 19:41:48 +02:00
Matthias Schiffer
ff9a2ab830 kernel: kmod-ebtables: do not depend on kmod-br-netfilter
While ebtables can be combined with br-netfilter, there is no good reason
to make it a dependency.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-09 19:01:56 +02:00
Matthias Schiffer
f640ed73f9 kernel: unhide kmod-br-netfilter
kmod-br-netfilter is not only a support module, but can be useful on its
own, using the net.bridge.bridge-nf-call-* sysctls.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-09 18:56:53 +02:00
Matthias Schiffer
24749ee88f kernel: change dependency of kmod-ebtables-* on kmod-ebtables to selecting
Non-selecting dependencies easily lead to Kconfig failures due to recursive
dependencies. We hit such an issue in Gluon; the easiest fix is to make
the dependency selecting.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-04-09 18:51:57 +02:00
Hans Dedecker
3612d90351 dnsmasq: remove example domains from rfc6761.conf (FS#1447)
RFC6771 does not exclude the forwarding of the example domain as it
states : "Caching DNS servers SHOULD NOT recognize example names as
special and SHOULD resolve them normally."
Example domains cannot be assigned to any user or person by DNS
registrars as they're registered in perpetuity to IANA meaning
they can be resolved; therefore let's remove the example domains
from the rfc6761.conf file.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-09 17:35:17 +02:00
Hans Dedecker
9356a6bfc7 odhcpd: update to latest git HEAD
31f217f router: improve RFC7084 compliancy

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-09 17:17:24 +02:00
Felix Fietkau
c0bbb9703f mt76: update to the latest version
c66094e mt76x2: fix possible NULL pointer dereferencing in mt76x2_tx()
249fa2d mt76x2: fix warning in ieee80211_get_key_rx_seq()
54d6710 mt76: use mt76_poll_msec routine in mt76pci_load_firmware()
eb359f1 mt76x2: remove unnecessary len variable in mt76x2_eeprom_load()
7e6e00b mt76: initialize available_antennas_{tx,rx} info
6469dca mt76: add mt76_init_stream_cap routine
ced433d mt76x2: add mac80211 {set,get}_antenna callbacks
238f3f1 mt76x2: remove warnings in mt76x2_mac_write_txwi()
880611b mt7603: main: fix warning in ieee80211_get_key_rx_seq()
bc35af8 mt76x2: fix tssi initialization for 5GHz band
700ed20 mt76x2: make mt76x2_mac_reset routine static
6e7d5ce mt76x2: remove unnecessary MT_TX_ALC_CFG_4 configuration
5153ece mt76x2: set default values in TX_ALC_CFG_{1,2} for tempetaure compensation
a3e7740 mt76x2: fix tx_alc_enabled check

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-09 10:43:45 +02:00
Rafał Miłecki
31aaa670d4 ipq806x: replace linux,part-probe with a proper partitions subnode
This solution is more upstream compatible as it only requires specifying
of_match_table in the parser code and doesn't depend on linux,part-probe
which is solution made generic by a LEDE downstream patch that can't be
upstreamed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Acked-by: John Crispin <john@phrozen.org>
2018-04-09 07:45:34 +02:00
Rafał Miłecki
cdcd5c93d7 kernel: use accepted mtd patchset adding support for "compatible" string
These patches were finally accepted and are already present in the
Linus's tree. This should be good enough to make is "backport" material.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-04-09 07:16:48 +02:00
Mathias Kresin
dda5d9b786 ramips: rename pwm kernel module
With kernel 4.14 the OpenWrt specific module name collides with the
upstream added module for Mediatek ARM Socs.

During addition of preliminary support for kernel 4.14, the config
symbol used by the out of tree driver was already renamed but the ramips
kernel package wasn't updated.

Fix the build error by updating the config and kernel module name for
the kernel package.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-08 12:35:33 +02:00
Vianney le Clément de Saint-Marcq
bcf2125142 ramips: add support for Zorlik ZL5900V2
The Zorlik ZL5900V2 is an unbranded clone of HAME MPR-A1/2.  It is
marketed as "3G Wi-Fi Router".  Only the PCB has the model name
"ZL5900V2" printed on it.

Specifications:
- Ralink RT5350F (360 MHz)
- 32 MB RAM
- 8 MB Flash
- 802.11bgn 1T1R
- 1x 10/100 Mbps Ethernet
- 1x USB 2.0 (Type-A)
- 5200 mAh battery

The ramdisk image (not the squashfs sysupgrade image) can be flashed
through the web interface (named "GoAhead") of the factory firmware.
However, as the factory firmware does not cleanly unmount the rootfs
before flashing, the device may hang instead of rebooting after
successful write.  Power cycling the device gets you in OpenWrt where
the squashfs image may be flashed through normal sysupgrade procedure.

Signed-off-by: Vianney le Clément de Saint-Marcq <code@quartic.eu>
2018-04-08 09:53:50 +02:00
Zheng Qian
80a94aacaf ramips: add support for the YouHua WR1200JS
YouHua tech WR1200JS is an AC1200 router with 5 1Gb ports (4 Lan, 1 Wan)
and 1 USB 2.0 port.

Devices is base on MediaTek MT7621AT + MT7603E + MT7612E.

Specification:

- MT7612AT (880 MHz)
- 128 MB of RAM
- 16 MB of FLASH (SPI NOR)
- 5x 10/100/1000 Mbps Ethernet
- 2T2R 2.4 GHz (MT7603E)
- 2T2R 5 GHz (MT7612E)
- 1x USB 2.0
- 10x LED (Power 2G 5G WPS Internet LAN4-1 USB)
- 3x button (reset wifi wps)
- DC jack for main power input (12V)

Installation:

1.) Press reset key 5 sec and restore the factory default
2.) Login webUI and change username to root and set a
    new password
3.) Visit http://192.168.2.254/adm/telnetd.shtml and
    turn on the telnet service
4.) Copy openwrt-ramips-mt7621-youhua_wr1200js-initramfs-kernel.bin
    to a usb pan
5.) Plug the usb pan to the router, telnet to the router
    and login by root
6.) cd /media/sda1 and check the initramfs file is there
7.) exec command:
    mtd_write write openwrt-ramips-mt7621-youhua_wr1200js-initramfs-kernel.bin Kernel
8.) reboot and visit 192.168.1.1

Signed-off-by: Zheng Qian <sotux82@gmail.com>
2018-04-08 09:52:48 +02:00
Giuseppe Lippolis
1680ae7eae ramips: add dwr-512 jboot firmware configuration
The previous fw version require the replacement of the stock bootloader
with u-boot. This prevent an easy stock restore of the original fw.

Now a proper fw util has been developed to manage the stock jboot
bootloader. Therefore make sense have a fw image for the stock
bootloader.

The old fw configuration (u-boot) is not compatible with the new one
and will not be supported anymore.

So at the end 2 image can be generated:

1) factory image with jboot bootloader
     openwrt-ramips-rt305x-dwr-512-b-squashfs-factory.bin
2) sysupgrade image with jboot bootloader
     openwrt-ramips-rt305x-dwr-512-b-squashfs-sysupgrade.bin

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2018-04-08 09:51:06 +02:00
Felix Fietkau
cb7ac151cd ar8216: reduce latency even further for ar8327 chips
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-08 09:27:14 +02:00
Felix Fietkau
17a955d4d7 ar8216: reduce latency by inserting scheduling points into code hogging the CPU
Should reduce network related latency caused by accessing MIB counters

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-08 09:14:23 +02:00
Vianney le Clément de Saint-Marcq
eda27d7557 ramips: fix usbphy DT nodes on linux 4.14
The Ralink USB PHY driver merged into mainline has a slightly different
device tree binding than the patch that was used with linux 4.9.
The new driver requires a `ralink,sysctl` node pointing to the `syscon`
node.

This patch also sets `#phy-cells` to 0, as recommended by the mainline
documentation [1].

[1] Documentation/devicetree/bindings/phy/ralink-usb-phy.txt

Signed-off-by: Vianney le Clément de Saint-Marcq <code@quartic.eu>
2018-04-07 17:53:34 +02:00
Felix Fietkau
08ccfdea78 libubox: update to the latest version
42a8ecd jshn: fix format string for int64 type
92009b7 utils: ensure that byte-order conversion functions evaluate the argument only once
ace6489 switch from typeof to the more portable __typeof__

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-07 15:26:11 +02:00
Felix Fietkau
1566dbd57d Revert "libubox: update to the latest version"
This reverts commit def82714d9.
Needs further fixes

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-07 15:06:14 +02:00
Felix Fietkau
def82714d9 libubox: update to the latest version
42a8ecd jshn: fix format string for int64 type
92009b7 utils: ensure that byte-order conversion functions evaluate the argument only once

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-07 14:47:56 +02:00
Henryk Heisig
c0742307a1 ar71xx: add support for TP-Link Archer C60 v2
TP-Link Archer C60 v2 is a dual-band AC1350 router, based on
Qualcomm/Atheros QCA9561 + QCA9886.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction (web):

Download lede-ar71xx-generic-archer-c60-v2-squashfs-factory.bin and use
OEM System Tools - Firmware Upgrade site.

Flash instruction (recovery):

1. Set PC to fixed IP address 192.168.0.66
2. Download lede-ar71xx-generic-archer-c60-v2-squashfs-factory.bin and
   rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root
   directory
4. Turn off the router
5. Press and hold reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time the firmware should
   be transferred from the tftp server
8. Wait ~30 second to complete recovery

Flash instruction (under U-Boot, using UART):

tftp 0x81000000 lede-ar71xx-...-sysupgrade.bin
erase 0x9f030000 +$filesize
cp.b $fileaddr 0x9f030000 $filesize
reset

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-04-07 00:09:05 +02:00
Robert Marko
b834487203 ar71xx: add support for TP-Link TL-WR940N v6
Add support for TL-WR940N v6 board. It is pretty much the same as v5
except they only left WAN LED and removed other ones.

Installation: flash factory image through WEB UI or use TFTP.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2018-04-06 23:11:00 +02:00
Piotr Dymacz
6148c46556 ar71xx: drop kernel 4.4 support
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-04-06 23:11:00 +02:00
Peng Zhang
bbc2e1d919 ar71xx: change brand name WHQX to Qxwlan
Signed-off-by: Peng Zhang <sd20@qxwlan.com>
2018-04-06 23:11:00 +02:00
Piotr Dymacz
57c641ba6e ar71xx: rework chipidea controller support, add QCA9531
Rework (again) platform support for dual-role chipidea USB controller:

- include support for QCA9531
- use correct EHCI block size
- drop ar933x_usb_setup_ctrl_config() function
- simplify code after previous "register chipidea only in device mode"
  change (fa22714181)

Reworked patch was tested on devices with below QCA WiSOCs (signal/GPIO
name with required bootstrap state for USB bus 0 in device mode):

- AR9331  (GPIO13 pull-down)
- AR9342  (RGMII_TXD1/ETXD1 pull-up)
- AR9344  (GPIO20 pull-up)
- QCA9531 (GPIO13 pull-up)
- QCA9558 (GPIO13 pull-up)

The only way to select device mode for bus 0 is to change SOC bootstrap
configuration which is sampled only once, at hard reset. Likely, other
models, like QCA9556 or AR9341, should also support dual-role USB mode
but they were not tested.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-04-06 23:11:00 +02:00
Piotr Dymacz
10ea53f900 ramips: add U-Boot env support for ALFA Network AC1200RM
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-04-06 23:11:00 +02:00
Piotr Dymacz
3fc8f50f56 uboot-envtools: fix ALFA Network AWUSFREE1 support
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-04-06 23:11:00 +02:00
Piotr Dymacz
68dcec7e16 ramips: image: drop redundant SUPPORTED_DEVICES
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-04-06 23:11:00 +02:00
John Crispin
bfed382540 ramips: fix build error caused by missing ifdef guard in hwnat code
Signed-off-by: John Crispin <john@phrozen.org>
2018-04-06 21:33:35 +02:00
John Crispin
424a9ae128 ramips: implement hardware NAT offload for MT7621
Supports IPv4 flow offloading on MT7621 for Routing, SNAT and DNAT

Supported are regular ethernet->ethernet connections, including one
802.1q VLAN and/or PPPoE encapsulation

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-06 19:37:53 +02:00
Felix Fietkau
dea9922acd ramips: drop linux 4.9 support
4.14 has been tested a lot by a number of users, and we want to use it
for the release.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-06 18:21:45 +02:00
Felix Fietkau
804952e7ef ramips: switch to linux 4.14
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-06 18:07:43 +02:00
Hannu Nyman
c089671339 busybox: update to 1.28.3
Bug fix release. 1.28.3 has fixes for
* ash and hush (do not leave stray open file destriptors in children),
* cpio (fix for symlink extraction),
* grep ("grep -Fw a" was matching "aa").

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-04-05 22:15:58 +02:00
Hans Dedecker
f890821fe7 odhcp6c: update to latest git HEAD
74b5a3 script: fix possible negative delay
473f248 dhcpv6: always trigger script update in case of IA updates
ea18935 ra: rework route information option handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-05 21:52:15 +02:00
NeilBrown
f27336e115 ramips: mtk-mmc: don't advertise highmem support.
of_dma_configure() sets a default ->dma_mask of
DMA_BIT_MASK(32), claiming devices can DMA from
the full 32bit address space.
The mtk-mmc driver does not support access to
highmem pages, so it is really limited to the
bottom 512M (actually 448M due to 64M of IO space).
Setting ->dma_mask to NULL causes mmc_setup_queue()
to fall-back to using BLK_BOUNCE_HIGH to tell the
block layer to use a bounce-buffer for any highmem
pages requiring IO.

Signed-off-by: NeilBrown <neil@brown.name>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 19:48:47 +02:00
Felix Fietkau
1c37cbbbec kernel: fix xtables flow offload issues
- avoid using garbage stack values as dst pointer if lookup fails
- provide the source address for ipv6 dst lookup

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 19:23:46 +02:00
Felix Fietkau
6a621f4bd9 ramips: fix BUG_ON on mtk-mmc driver probe
Our .dts files only have one device defined and this is unlikely to
change, so statically initialize host->id to 0.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 18:12:30 +02:00
Felix Fietkau
f9b2d369a6 ramips: move mtk-mmc driver code out of patches-*/ and into files-*/
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 18:12:30 +02:00
Felix Fietkau
adc3f31b2c firewall: update to the latest version, adds hw flow offload support
35b3e74 defaults: add support for setting --hw on the xt_FLOWOFFLOAD rule

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 18:12:30 +02:00
Felix Fietkau
d073f650cd kernel: add support for enabling hardware flow offload via iptables
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 18:12:30 +02:00
Felix Fietkau
11a3d27043 kernel: add hardware offload patch for flow tables support
Supports offloading through VLAN, bridge and PPPoE devices as well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-04-05 18:12:30 +02:00
David Bauer
f8dbafb234 ar71xx: add model detection for UBNT AC-Mesh
This commit adds correct model detection for UniFi
AC-Mesh. Previously said device was incorrectly detected
as UniFi AC-Lite.

The Information about the device is stored at 0xC in the EEPROM
partition. It corresponds to the sysid in /etc/board.info of the
Ubiquiti stock firmware.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-04-05 15:28:56 +02:00
Nicolò Veronese
d265a8f2ca ar71xx: Add support for D-Link DAP-1330 a1
D-Link DAP-1330 rev. A1 is a wall-plug N300 Wi-Fi range extender,
based on Qualcomm/Atheros QCA9533 v2.

Short specification:

- 650/393/216 MHz (CPU/DDR/AHB)
- 1x 10/100 Mbps Ethernet
- 64 MB of RAM (DDR1)
- 8 MB of FLASH
- 2T2R 2.4 GHz
- 2x external antennas
- 6x LED (2 are bi-color), 2x button
- 4 pin on pcb (looking from eth port and from left to right tx,rx,gnd,vcc)

Flash instruction: use "factory" image directly in vendor GUI.

This device has a recovery system that assign the ip addr of env
variable "serverip" via dhcp to a pc, and the "ipaddr" value to itself.
The recovery it's triggered by a not bootable firmware,
or pressing the reset button during the bootloader startup (first 30 seconds).
The recovery uses a http page to restore the firmware, and it's checking
the firmware image header, so use the "factory" image to
restore or the original firmware.

You can access vendor firmware over serial using:
- login: root
- password: linuxrocks

Image was tested only in EU version of the device, but should work
also with the same device version sold in other countries.

Signed-off-by: Nicolò Veronese <nicveronese@gmail.com>
2018-04-05 15:28:56 +02:00
Nicolò Veronese
0d8a0a6a17 firmware-utils: image generator for D-Link DAP-1330
Signed-off-by: Nicolò Veronese <nicveronese@gmail.com>
2018-04-05 15:28:56 +02:00
Jo-Philipp Wich
e9eb9393f4 include: extend SetupHostCommand macro to accept more arguments
Commit d6d3db0543 added more gcc version probes, exceeding the argument
limit of the SetupHostCommand macro, leading to failing GCC/LLVM tests
on OS X.

Extend the handled number of arguments to restore proper functionality.

Fixes FS#1470
Fixes d6d3db0543 ("build: Improve GCC version detection")

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-05 13:58:15 +02:00
Alexander Couzens
2b84f95f38 base-files: change /var link from /tmp to tmp
Some packages are already using $(1)/var on package install.
On multiuser systems this breaks the build when multiple
users build OpenWrt.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-04-05 11:48:34 +02:00
Jo-Philipp Wich
1ef0be3e5b Revert "ncurses: Remove obsolete compile fixes"
This reverts commit 4fb684a755.

The compile fixes are still required for host systems using GCC 5.x,
such as Ubuntu 16.04 LTS.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-04-04 17:08:10 +02:00
Reto Schneider
58fe527931 ar71xx: Fix typo in wan LED color of gl-mifi
It was wrong from the beginning and the trigger for the wan led was
never set due to the typo.

Signed-off-by: Reto Schneider <code@reto-schneider.ch>
[add commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-04 09:27:18 +02:00
Mathias Kresin
3a4bf25fd6 base-files: get_dt_led: don't warn about missing led
It's intentional that some boards within a target don't have all LEDs
which are tried to be setup in a common script. Don't show a warning in
such cases.

Fixes: 4f4fc993db ("base-files: add more name source to get_dt_led helper function")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-04 09:12:39 +02:00
Mathias Kresin
0c26264dee lantiq: kernel 4.14: fix vr9 reboot mask
We need to reset the GPHYs on reboot as well. Otherwise the bootloader
might have issues to reset/find the GPHYs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-04-04 09:09:51 +02:00
Pawel Dembicki
8db84cc0ee ramips: add support for DLINK DWR-921-C3
The DWR-921-C3 Wireless Routers with LTE embedded modem is based on the
MT7620N SoC.

Specification:

  * MediaTek MT7620N (580 Mhz)
  * 64 MB of RAM
  * 16 MB of FLASH
  * 802.11bgn radio
  * 5x 10/100 Mbps Ethernet (1 WAN and 4 LAN)
  * 2x external, detachable (LTE) antennas
  * UART header on PCB (57600 8n1)
  * 6x LED (GPIO-controlled)
  * 1x bi-color Signal Strength LED (GPIO-controlled)
  * 2x button
  * JBOOT bootloader

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

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

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-04-04 08:42:46 +02:00
Giuseppe Lippolis
6525bffc0a ramips: add support for DLINK DWR-921-C1
The DWR-921-C1 Wireless Routers with LTE embedded modem is based on the
MT7620N SoC.

Specification:

  * MediaTek MT7620N (580 Mhz)
  * 64 MB of RAM
  * 16 MB of FLASH
  * 802.11bgn radio
  * 5x 10/100 Mbps Ethernet (1 WAN and 4 LAN)
  * 2x external, detachable (LTE) antennas
  * UART header on PCB (57600 8n1)
  * 6x LED (GPIO-controlled)
  * 1x bi-color Signal Strength LED (GPIO-controlled)
  * 2x button
  * JBOOT bootloader

The status led has been assigned to the dwr-921-c1:green:sigstrength (lte
signal strength) led. At the end of the boot it is switched off and is
available for lte operation. Work correctly also during sysupgrade
operation.

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

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

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2018-04-04 08:42:35 +02:00
Pawel Dembicki
e9d5f8ebb2 ramips: add BroadMobi BM806U lte-modem support
Backport patch which adds suport for the BroadMobi BM806U 3G/4G modem,
which is used in D-Link DWR-921 C3.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-04-04 08:29:17 +02:00
Giuseppe Lippolis
be554242e5 ramips: add wistron neweb d18q1 lte-modem support
Backport patch which adds suport for the Wistron NeWeb d18q1 LTE modem
which is used in D-Link DWR-921 C1.

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2018-04-04 08:29:17 +02:00
André Draszik
cd75d6f7b3 ramips: mt7620: eMMC: fix compiler warnings in non-debug mode
drivers/mmc/host/mtk-mmc/dbg.c:51:13: warning: 'cmd_buf' defined but not used [-Wunused-variable]
 static char cmd_buf[256];
             ^~~~~~~

In addition, msdc_reg[] is completely unused, even in debug
mode.

Signed-off-by: André Draszik <git@andred.net>
2018-04-04 08:29:17 +02:00
André Draszik
584b2a26f5 ramips: mt7620: eMMC: remove unused variable
msdc_6575_host[] is unused, just remove it. Also, it
was the source of memory corruption up until the
previous fix to this driver.

Signed-off-by: André Draszik <git@andred.net>
2018-04-04 08:29:17 +02:00
André Draszik
ace1686200 ramips: mt7620: eMMC: stop invalid memory access if only one device is defined
pdev->id is -1 when only one device exists, and is used:
* as an index into drv_mode[] to determine whether to use
  PIO or DMA mode (via host->id)
* as an index into msdc_6575_host[], to store the
  mmc_priv() data.

Obviously, -1 is not a valid index in either case, causing
us to read invalid memory, and memory corruption,
respectively.

The invalid memory read is causing non-deterministic
behaviour, in particular in the v4.4 kernel it still
picked DMA mode, but in the v4.9 it now always picks
PIO mode.
Also, PIO mode doesn't work, causing the following:

/ # echo 3 > /proc/sys/vm/drop_caches
[ 3845.249237] sh (128): drop_caches: 3

/ # /root/usr/lib/libc.so
[ 3846.096070] do_page_fault(): sending SIGSEGV to libc.so for invalid read access from 7f9cb5a0
[ 3846.104758] epc = 779b0ea4 in libc.so[7792f000+c3000]
[ 3846.109907] ra  = 779a8004 in libc.so[7792f000+c3000]
Segmentation fault

/ # /root/usr/lib/libc.so
musl libc (mipsel-sf)
Version 1.1.16-git-40-g54807d47
Dynamic Program Loader
Usage: /root/usr/lib/libc.so [options] [--] pathname [args]

(i.e. initial page-in of any binary causes a segfault,
subsequent access works.)

While this change doesn't fix PIO mode, it at least makes
us deterministically use DMA (which works), and it also
stops us from corrupting memory.

Signed-off-by: André Draszik <git@andred.net>
2018-04-04 08:29:17 +02:00
André Draszik
dcbf6284e5 ramips: mt7620: eMMC: fix MODULE_DEVICE_TABLE
This was referencing an undefined symbol, probably
due to copy/paste error.

Signed-off-by: André Draszik <git@andred.net>
2018-04-04 08:29:16 +02:00
André Draszik
7d44b36c98 ramips: mt7620: eMMC: fix compiler warning (misleading indentation)
drivers/mmc/host/mtk-mmc/sd.c:2782:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
     if ((hw->flags & MSDC_SDIO_IRQ) || (hw->flags & MSDC_EXT_SDIO_IRQ))
     ^~
drivers/mmc/host/mtk-mmc/sd.c:2785:2: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if'
  cd_active_low = !of_property_read_bool(pdev->dev.of_node, "mediatek,cd-high");
  ^~~~~~~~~~~~~

Signed-off-by: André Draszik <git@andred.net>
2018-04-04 08:29:16 +02:00
André Draszik
bbbd71e3ea ramips: mt7620: eMMC: clear owner field
a) This is not needed in recent kernels anymore (> 3.x ??)
b) this allows driver unloading now

Signed-off-by: André Draszik <git@andred.net>
2018-04-04 08:29:16 +02:00
Sebastian Fleer
7e42cbaf2a leds-apu2: add newer board names
In recent firmware releases the board names changed from "apuX" to "PC Engines apuX"

Signed-off-by: Sebastian Fleer <pubalias@posteo.net>
2018-04-03 23:26:45 +02:00
Daniel Engberg
fe8350e92e package/utils/f2fs-tools: Update to 1.10.0
Update f2fs-tools to 1.10.0

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-04-03 23:26:45 +02:00
Rosen Penev
4fb684a755 ncurses: Remove obsolete compile fixes
It seems both issues (GCC5 and Musl) were fixed at some point. Thus, they can be dropped.

Did not bump version as there is no change in functionality or size.

Compile-tested on ar71xx and mvebu, both with musl.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-04-03 23:26:45 +02:00
Adrià Llaudet
482bc646a5 nand-utils: add flash_erase utility
flash_erase utility allows to erase MTD partitions on NAND flash.
Useful when you want to clean or write an MTD partition from scratch.

e.g., before using kobs-ng to flashing SPL images it's recommended
to erase the MTD partition to ensure it's empty.

Signed-off-by: Adrià Llaudet <adria.llaudet@gmail.com>
2018-04-03 23:26:45 +02:00
Hannu Nyman
d674422a81 busybox: update to 1.28.2
Update busybox to 1.28.2, refresh patches and default config.

* modify 230-add_nslookup_lede.patch as opt_complementary was removed
    Also move nslookup_longopts variable declaration to be inside
    the same conditional as the function itself.
* modify 250-date-k-flag.patch to match upstream (opt_complementary)
* remove 600-cve-2017-16544.patch that is upstreamed

Notes about config changes:
* Some applet-specific LONG_OPTIONS config options were removed
* Config help text indentation changed, caused lots of
  text formatting changes for convert_menuconfig.pl
* convert_defaults.pl moved lots of defaults around, summary of
  actual changes below

New applets/features:
---------------------
ARCH
HEXEDIT
MINIPS
NETCAT
NUKE
RESUME
RUN_INIT
SETFATTR

New options:
------------
FEATURE_CATN
FEATURE_CROND_SPECIAL_TIMES
FEATURE_LIBBUSYBOX_STATIC
FEATURE_SETPRIV_CAPABILITIES
FEATURE_SETPRIV_CAPABILITY_NAMES
FEATURE_SETPRIV_DUMP
FEATURE_SH_READ_FRAC
FEATURE_SWAPONOFF_LABEL
FEATURE_VOLUMEID_MINIX
FEATURE_XARGS_SUPPORT_ARGS_FILE
FEATURE_XARGS_SUPPORT_PARALLEL
HUSH_GETOPTS
HUSH_READONLY
HUSH_TIMES

Removed:
--------
FEATURE_HAVE_RPC
MSH

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-04-03 23:26:45 +02:00
Hauke Mehrtens
a74fd570a2 kernel: update kernel 4.14 to 4.14.32
The following patches are now included upstream:
* 0052-MIPS-lantiq-fix-usb-clocks.patch
* 0053-MIPS-lantiq-enable-AHB-Bus-for-USB.patch
* 0060-lantiq-ase-enable-MFD-SYSCON.patch

Closes: FS#1466

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Stijn Segers <foss@volatilesystems.org>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-04-03 23:26:45 +02:00
Hauke Mehrtens
9aaa23ec8b samba36: fix some security problems
This Adds fixes for the following security problems based on debians patches:
CVE-2016-2125: Unconditional privilege delegation to Kerberos servers in trusted realms
CVE-2017-12163: Server memory information leak over SMB1
CVE-2017-12150: SMB1/2/3 connections may not require signing where they should
CVE-2018-1050: Denial of Service Attack on external print server.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-03 23:26:45 +02:00
Hauke Mehrtens
d6d3db0543 build: Improve GCC version detection
This now makes sure that the beginning of the version number gets checked
and "4.4.5" will not match was a supported version.
GCC 8 and GCC 9 are now marked as supported, but we probably have to fix
some problems for them.

Closes: FS#1433
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-03 23:26:45 +02:00
Hauke Mehrtens
ece815508a kernel: Add support for XM25QH64A and XM25QH128A SPI NOR flash
These devices are produced by Wuhan Xinxin Semiconductor Manufacturing
Corp. (XMC) and found on some routers from Chinese manufactures.

The data sheets can be found here:
http://www.xmcwh.com/Uploads/2018-03-01/5a9799e4cb355.pdf
http://www.xmcwh.com/Uploads/2018-02-05/5a77e6dbe968b.pdf

Closes: FS#1460
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-03 23:26:45 +02:00
Hauke Mehrtens
56d0dd56e9 mtd-utils: Mark some lzma functions as static
These functions are not declared in any header file and only used in
same compile unit, mark them as static to remove one gcc warning and
make it easier for the compiler to optimize them out.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-04-03 23:26:45 +02:00
Paul Wassi
de79f4ab88 brcm47xx: add kernel 4.14 support
Add patches for 4.14, drop patch 030 since it's already included
upstream.

Tested on:
1) WRT54GL (with RAM upgraded to 32 MiB)
2) WL500gPv2 (with RAM upgraded to 64 MiB)
3) BCM47186B0 SoC board
4) BCM4706 SoC board

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-04-03 22:57:10 +02:00
Hans Dedecker
986f80595b netifd: update to latest git HEAD
3dc8c91 interface-ip: fix memory leak in interface_ip_add_target_route()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-04-03 21:28:53 +02:00
Rafał Miłecki
16efb0c1c6 brcm47xx: add Luxul XAP-1500 and XWR-1750 WiFi LEDs
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-04-03 15:32:42 +02:00
Hans Dedecker
ac593d895a odhcp6c: update to latest git HEAD
5cbd305 odhcp6c: improve code readibility
eb83b7e treewide: improve error handling
b7b11cb dhcpv6: initialize ifreq struct
f0469e2 ra: handle socket fail creation
d573461 odhcp6c: fix file pointer leakage

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-31 19:31:42 +02:00
Hauke Mehrtens
aed03d5d0f kernel: update kernel 4.9 to version 4.9.91
* Refreshed patches.
 * Deleted 210-Revert-led-core-Fix-brightness-setting-when-setting-.patch (was accepted upstream)
 * Deleted 812-pci-dwc-fix-enumeration.patch (was accepted upstream)

Compile and run tested on lantiq

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-31 16:31:26 +02:00
Paul Wassi
ef6939b0af package/libs/mbedtls: add package with some mbedtls binaries.
Add some basic binaries required for private key and CSR generation.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-31 16:31:26 +02:00
Hauke Mehrtens
2e75914bee mbedtls: update to version 2.8.0
This fixes some minor security problems.

Old size:
162262 bin/packages/mips_24kc/base/libmbedtls_2.7.0-1_mips_24kc.ipk

New size:
163162 bin/packages/mips_24kc/base/libmbedtls_2.8.0-1_mips_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-31 16:30:30 +02:00
Jan Pavlinec
8c2b8d862b xfsprogs: add xfs-admin util
Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
2018-03-31 16:30:30 +02:00
Paul Wassi
8262179f4a tools/e2fsprogs: update to 1.44.1
Update e2fsprogs to upstream 1.44.1 (feature and bugfix release)

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-31 16:30:30 +02:00
Paul Wassi
198172c048 package/utils/e2fsprogs: update to 1.44.1
Update e2fsprogs to upstream 1.44.1 (feature and bugfix release)

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-31 16:30:27 +02:00
Paul Wassi
960b90f435 packages/util/util-linux: Update to 2.32
- Update to upstream 2.32
- License file 'getopt/COPYING' not present (any more)
- Disable 'chown root:root'-commands during 'make install'
- Add new dependency to wipefs
- Refresh patch 003

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-31 16:30:17 +02:00
Rosen Penev
af35ce1065 ncurses: Update to 6.1.
Compile tested on ar71xx.

Old size:
  6527 bin/packages/mips_24kc/base/terminfo_6.0-1_mips_24kc.ipk
141465 bin/packages/mips_24kc/base/libncurses_6.0-1_mips_24kc.ipk

New size:
  6873 bin/packages/mips_24kc/base/terminfo_6.1-1_mips_24kc.ipk
146950 bin/packages/mips_24kc/base/libncurses_6.1-1_mips_24kc.ipk

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-31 16:28:36 +02:00
Rosen Penev
2a82db7ed5 libtool: Update to 2.4.6
Compile tested on mvebu.

old size:
12947 bin/packages/mips_24kc/base/libltdl_2.4-2_mips_24kc.ipk

new size:
13002 bin/packages/mips_24kc/base/libltdl_2.4.6-1_mips_24kc.ipk

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-31 16:27:24 +02:00
Matti Laakso
76f267ef6c pistachio: remove kernel 4.9 support
Signed-off-by: Matti Laakso <matti.laakso@outlook.com>
2018-03-31 16:13:19 +02:00
Matti Laakso
0394edbba0 pistachio: Switch to kernel 4.14
Signed-off-by: Matti Laakso <matti.laakso@outlook.com>
2018-03-31 16:13:19 +02:00
Matti Laakso
cae808946a pistachio: add kernel 4.14 support
Add patches and config for 4.14, refreshed from 4.9.

Signed-off-by: Matti Laakso <matti.laakso@outlook.com>
2018-03-31 16:13:19 +02:00
Damir Samardzic
2534141322 mvebu: add support for MACCHIATObin (cortex-a72)
Add initial support for Marvell MACCHIATObin, cortex-a72 based Marvell
ARMADA 8040 Community board. Comes in two forms: Single Shot and Double
Shot.

Specifications:
- Quad core Cortex-A72 (up to 2GHz)
- DDR4 DIMM slot with optional ECC and single/dual chip select support
- Dual 10GbE (1/2.5/10GbE) via copper or SFP
  2.5GbE (1/2.5GbE) via SFP
  1GbE via copper
- SPI Flash
- 3 X SATA 3.0 connectors
- MicroSD connector
- eMMC
- PCI x4 3.0 slot
- USB 2.0 Headers (Internal)
- USB 3.0 connector
- Console port (UART) over microUSB connector
- 20-pin Connector for CPU JTAG debugger
- 2 X UART Headers
- 12V input via DC Jack
- ATX type power connector
- Form Factor: Mini-ITX (170 mm x 170 mm)

More details at http://macchiatobin.net

Booting from micro SD card:
 1. reset U-Boot environment:
      env default -a
      saveenv

 2. prepare U-Boot with boot script:
      setenv bootcmd "load mmc 1:1 0x4d00000 boot.scr; source 0x4d00000"
      saveenv

   or manually:
      setenv fdt_name armada-8040-mcbin.dtb
      setenv image_name Image
      setenv bootcmd 'mmc dev 1; ext4load mmc 1:1 $kernel_addr $image_name;ext4load mmc 1:1 $fdt_addr $fdt_name;setenv   bootargs $console root=/dev/mmcblk1p2 rw rootwait; booti $kernel_addr - $fdt_addr'
      saveenv

Signed-off-by: Damir Samardzic <damir.samardzic@sartura.hr>
2018-03-31 16:13:19 +02:00
Josua Mayer
dff904a955 u-boot-mvebu: update to 2018.03
This release brings various improvements to clearfog support, such as distro-boot.
Obsoletes:
0002-clearfog-reset-usom-onboard-1512-phy.patch
0003-clearfog-enable-distro-boot-code.patch

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2018-03-31 16:12:40 +02:00
Josua Mayer
093e6c69fb mvebu: clearfog-pro: set new DTB name in boot-script
The DTB for Clearfog Pro has been renamed in mainline. However U-Boot
hasn't picked up that change yet :(, so we need to hardcode it for now.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2018-03-31 16:12:40 +02:00
Josua Mayer
0a3e07b2f5 u-boot-mvebu: set configuration options in Makefile
CONFIG_* variables can easily be set by overriding Build/Configure.
so set NET_RANDOM_ETHADDR=y and CMD_SETEXPR=y here.

This replaces the following patches:
0001-clearfog-generate-random-MAC-address.patch
0004-clearfog-enable-setexpr-command-by-default.patch

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2018-03-31 16:12:39 +02:00
Imre Kaloz
4b486e32fb mvebu: Add support for WRT3200ACM with new NAND flash
Newer Linksys boards might come with a Winbond W29N02GV which can be
configured in different ways. Make sure we configure it the same way as
the older chips so everything keeps working.

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
2018-03-31 16:12:39 +02:00
Rosen Penev
e1fe4a93de mvebu: Get rid of RTC hack for Turris Omnia.
As Solidrun's RTC patch got merged, this hack is no longer needed.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-31 16:12:39 +02:00
Ben Greear
d6939baac2 ath10k-ct: Update firmware to latest.
Wave-1 firmware has a fix for 'addba' not finding the peer.  Thanks to Hauke
for finding and reporting this.

Wave-2 firmware has a fix for leaking a peer multicast key when a monitor device
is created.

And I re-ordered the '4019' firmware images in the Makefile to match the order
of the others.  No functional change for that reorder.

Signed-off-by: Ben Greear <greearb@candelatech.com>
Tested-by: Rosen Penev <rosenp@gmail.com>
2018-03-31 16:12:33 +02:00
Paul Wassi
db893ec7f0 openssl: update to 1.0.2o
Fixes CVE-2018-0739

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-31 10:20:20 +02:00
Kevin Darbyshire-Bryant
a64fae8354 Revert "iproute2: fix hidden uint to uin64_t promotion in json_print"
This reverts commit 745d0e7f4b.

It looks like upstream don't want the patch so let's revert it here too.

I hope a fix from upstream is forthcoming.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-03-31 09:18:31 +02:00
Felix Fietkau
fd588dbf6b build: filter out kmod-ipt-offload from the default selection on targets that do not support it
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-30 00:34:25 -07:00
Hauke Mehrtens
605b6a0993 kernel: add missing config option
CONFIG_NVMEM_BCM_OCOTP was added in kernel 4.10 and it is possible to
activate it on the bcm53xx target. Deactivate it by default to fix the
build of the bcm53xx target.
This was found by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-30 01:06:29 +02:00
Christian Lamparter
c555b524c7 apm821xx: increase WNDR4700's dtb+kernel partition to 3.5 MiB
This patch cleans and reworks the WNDR4700 dts to increase the
now combined dtb+kernel partition to 3.5 MiB. This has become
necessary due to the switch to GCC 7.3 and the ever increasing
kernel binary size.

The dtb+kernel partition was combined in order to finally
fix the problem with out-of-sync device-trees. From now
on, the kernel and device-tree will always be updated together.

Upgrade Note:
Existing installations will have to use the TFTP firmware
recovery option in order to install the update. Affected users
are advised to make a backup of their existing configuration
prior to running sysupgrade:
<https://openwrt.org/docs/guide-user/installation/generic.backup#backup_openwrt_configuration>
Due to the repartitioning of the NAND, the generated backup
should be placed on either the internal HDD, an attached
USB-Stick or on another PC (externally).

To manually trigger the firmware recovery, the reset button has
to be pressed (and hold) during boot. U-boot will enter the "Upgrade
Mode" and starts a tftpserver listening on 192.168.1.1 for a
tftp client from one of the four LAN/Ethernet ports to connect and
upload the new system: (enable tftp binary mode!).
openwrt-apm821xx-nand-netgear_wndr4700-squashfs-factory.img

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-30 00:30:52 +02:00
Christian Lamparter
e2b35f91b3 apm821xx: switch MR24's initramfs to multi-image method
The recent change to switch to gcc 7.3 broke the image
generation code, as the kernel would no longer fit into
KERNEL_SIZE.

This patch fixes the issue by reworking the initramfs
creation and packaging, which will get rid of the
KERNEL_SIZE check in the process.

This new initramfs can be loaded through the MR24 U-boot
in the following way:

=> setenv ipaddr 192.168.1.1
=> setenv bootargs console=ttyS0,$baudrate
=> tftpboot c00000 192.168.1.2:meraki_mr24-initramfs-kernel.bin
[...]
Load address: 0xc00000
Loading: ################################################ [...]
done
    Bytes transferred = 5952544 (5ad420 hex)
    => bootm $fileaddr
    \## Booting kernel from Legacy Image at 00c00000 ...
    ...

For more information and the latest flashing guide:
please visit the OpenWrt Wiki Page for the MR24:
<https://openwrt.org/toh/meraki/mr24#flashing>

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2018-03-30 00:30:41 +02:00
Hans Dedecker
479aaf6375 map: fix psidlen becoming negative (FS#1430)
Fix psidlen becomes negative in case embedded address bit lenght is smaller than
IPv4 suffix length.
While at it improve parameter checking making the code more logical and
easier to read.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-29 22:19:18 +02:00
Rafał Miłecki
d9da0387f4 bcm53xx: switch to kernel 4.14
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-29 15:31:29 +02:00
Rafał Miłecki
2c140c4a3e bcm53xx: update kernel 4.14 config
There are few symbol changes but only 3 symbols were possible to set:
THERMAL_EMERGENCY_POWEROFF_DELAY_MS
CLK_BCM_SR
PHY_NS2_USB_DRD

Both new drivers don't seem to apply to Northstar so they are disabled.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-29 15:30:50 +02:00
Rafał Miłecki
707d119716 bcm53xx: fix earlycon regression in kernel 4.14
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-29 15:10:19 +02:00
Felix Fietkau
4bcf6acb14 Revert "ppp: make ppp-multilink provide ppp"
opkg currently has some issues with Provides and this change makes the
image builder fail because of that. Revert the change for now until opkg
is fixed

This reverts commit 092d75aa3e.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-29 11:57:40 +02:00
Felix Fietkau
d7ca4c6d3e ar71xx: fix ar934x usb controller resource conflict
Use the right size for the EHCI block

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-28 23:08:37 +02:00
Yousong Zhou
01b835970a procd: update to the latest version
Changes since last version

    dfb68f8 service: initialize supplementary group ids
    3db4e6d service: add func for string config change check
    c3faabe procd: get rid of putenv usage.

The supplementary group id change fixes FS#988

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-03-28 17:42:40 +08:00
Daniel Golle
eba3b028e4 hostapd: update to git snapshot of 2018-03-26
The following patches were merged upstream:
000-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
 replaced by commit 0e3bd7ac6
001-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
 replaced by commit cb5132bb3
002-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
 replaced by commit 87e2db16b
003-Prevent-installation-of-an-all-zero-TK.patch
 replaced by commit 53bb18cc8
004-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch
 replaced by commit 0adc9b28b
005-TDLS-Reject-TPK-TK-reconfiguration.patch
 replaced by commit ff89af96e
006-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch
 replaced by commit adae51f8b
007-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
 replaced by commit 2a9c5217b
008-WPA-Extra-defense-against-PTK-reinstalls-in-4-way-ha.patch
 replaced by commit a00e946c1
009-Clear-PMK-length-and-check-for-this-when-deriving-PT.patch
 replaced by commit b488a1294
010-Optional-AP-side-workaround-for-key-reinstallation-a.patch
 replaced by commit 6f234c1e2
011-Additional-consistentcy-checks-for-PTK-component-len.patch
 replaced by commit a6ea66530
012-Clear-BSSID-information-in-supplicant-state-machine-.patch
 replaced by commit c0fe5f125
013-WNM-Ignore-WNM-Sleep-Mode-Request-in-wnm_sleep_mode-.patch
 replaced by commit 114f2830d

Some patches had to be modified to work with changed upstream source:
380-disable_ctrl_iface_mib.patch (adding more ifdef'ery)
plus some minor knits needed for other patches to apply which are not
worth being explicitely listed here.

For SAE key management in mesh mode, use the newly introduce
sae_password parameter instead of the psk parameter to also support
SAE keys which would fail the checks applied on the psk field (ie.
length and such). This fixes compatibility issues for users migrating
from authsae.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-03-27 19:25:32 +02:00
Hans Dedecker
9b92afa3aa uci: update to latest git HEAD
5d2bf09 uci: fix a potential use-after-free in uci_set()
3b3d63e list: only record ordering deltas if element position changed
4c4d343 cmake: Fix cli shared linking against ubox

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-27 13:49:49 +02:00
Felix Fietkau
d290024c42 netifd: update to the latest version (fixes FS#1452)
9c8d781 netifd: return the interface for locally addressable host dependencies

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-27 11:33:51 +02:00
Felix Fietkau
905a3f249a build: include kmod-ipt-offload in default images
Netfilter flow offload has now started to become useful and suitable for
a wider testing audience. Configuring it via UCI is also integrated in
firewall3 by adding 'option flow_offloading 1' to the 'defaults'
section in /etc/config/firewall

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-27 08:26:41 +02:00
Felix Fietkau
83e1fce17a kernel: add kmod-sound-ens1371
This audio chip is provided as a virtual audio device by VMware

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-25 21:18:35 +02:00
Hans Dedecker
287f5ebd2f dnsmasq: improve init script portability (FS#1446)
Improve portability of init script by declaring resolvfile as local
in dnsmasq_stop function.
Fixes resolvfile being set for older busybox versions in dnsmasq_start
in a multi dnsmasq instance config when doing restart; this happens when
the last instance has a resolvfile configured while the first instance
being started has noresolv set to 1.

Base on a patch by "Phil"

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-24 18:50:45 +01:00
Fan Fan
8e1065d681 sunxi: add build for sopine
This will generate image for Pine64 Sopine board.

Signed-off-by: Fan Fan <fkpwolf@gmail.com>
2018-03-23 23:53:20 +01:00
Rosen Penev
43788a91fb ethtool: Update to 4.15.
Contains kernel 4.14 updates. Compile tested on mvebu.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-23 23:49:55 +01:00
Stijn Segers
41a881a8d9 Kernel: bump 4.14 to 4.14.29
Right patch version this time, sorry!

* Patch 180-usb-xhci-add-support-for-performing-fake-doorbell.patch had to be adjusted slightly because of upstream adapted code.
* Refreshed patches.

Compile-tested: ramips/mt7621, x86/64
Run-tested: ramips/mt7621, x86/64
Signed-off-by: Stijn Segers <foss@volatilesystems.org>
Tested-by: Rosen Penev <rosenp@gmail.com>
2018-03-23 23:49:55 +01:00
Kevin Darbyshire-Bryant
4a788fcf63 iproute2: cake: support new overhead reporting & stats structures
Cake in kernel space now splits stats structure handling across netlink
messages to reduce stack usage issue flagged by upstream kernel checks.
Update user space (tc) qdisc handling to understand this new regime.

Cake also reports packet overheads & compensation in a different way so
add display code for this. e.g.

'tc -s qdisc show dev eth0' reports this extra detail:

 min/max transport layer size:         28 /    1500
 min/max overhead-adjusted size:       65 /    1550
 average transport hdr offset:         14

Cake also supports output in JSON format.

Patch is bulkier than before because a (slightly out of date - see above
stats) man page is included for reference. Better than nothing!

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-03-23 22:08:22 +01:00
Kevin Darbyshire-Bryant
c9154c270a kmod-sched-cake: split stats structures, add overhead stats
Relevant changes:

0afc1be Fixes for kernel 4.16
d2d6780 Reinitialise overhead compensation stats when reconfiguring.
a3bab9d Export overhead compensation stats to userspace.
9cd2fa8 Split tin stats to its own structure to decrease size of tc_cake_xstats
71c7b44 Gather more statistics about packet length transformations.
0517357 Rework overhead compensation to use dynamic transport header offset instead of (inaccurate) static one.
c1a0c8e Refactor length handling code to better centralise overhead calculations

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-03-23 22:08:22 +01:00
Hauke Mehrtens
dd8bf0cf64 ath10k-ct: fix module depends
PKG_EXTMOD_SUBDIRS should be set to the sub directory where the kernel
module gets build in, for the ath10k-ct driver this changed in commit
3888e77c1c from ath10k to ath10k-4.13. Without this fix the depends
line of the ath10*.ko modules is empty and the kernel module load system
will not automatically load the depended modules like mac80211.

Fixes: 3888e77c1c ("ath10k-ct driver: use dma_alloc_coherent, 4.13 based driver")
Fixes: 23a388fe41 ("ath10k-ct: Force loading mac80211 and ath modules.")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-23 22:08:22 +01:00
Ben Greear
d15b09aab8 ath10k-ct: Add htt-mgt variants of ath10k-ct firmware.
The HTT-MGT variants transport management frames over the
normal HTT tx path, just like data frames.  This saves
limitted WMI buffers which can become depleted if lots of
management frames become stuck in TX queues due to peer
that went away.

In addition, at least for the wave-1 firmware, htt-mgt is
required in order for 802.11r (fast roaming) authentication
to function properly.

The htt-mgt firmware requires the use of the ath10k-ct
driver.  Normal non-htt-mgt ath10k-ct firmware should work
with stock drivers.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-03-23 22:08:22 +01:00
Ben Greear
545a561785 ath10k-ct: Update wave-1 and wave-2 firmware to latest.
This updates to latest ath10k-ct firmware.  Hopefully we are
at the end of the development cycle for this firmware release,
so these should be stable.

wave-1 changes since last release:

Release 20

  *  Allow flushing peer when deleting.  Hopefully this will allow the
     peer delete command to happen in a reasonable amount of time even
     if the RF environment is busy (or peer has died).
     To enable this, set the high flag in the mac-addr second word in the
     ath10k driver near end of the ath10k_wmi_op_gen_peer_delete method:

     cmd->peer_macaddr.word1 |= __cpu_to_le32(0x80000000);

  *  Attempt to fix crash seen in resmgr-ocs, appearantly due to list corruption.
     Use a temporary list instead of trying to rely on for-each-safe.

  *  Add flag to tx-descriptor to allow driver to request no-ack on data
     frames.  This is bit 15 on the flag1 field (previously un-used).

  *  Add option to support specifying the tx-rate-code and retry count on
     a per-packet basis.  Only a single series is supported at this time.
     Useful mainly for radiotap monitor-tx type testing at this point.

  *  Fix crash on startup when chip is at -40 deg C and calibration fails.  Instead
     of asserting, just keep retrying calibration, which appears to start working
     after a few minutes (when the chip warms up).

  *  Allow reporting per-chain rssi for management frames.  We pack the values into
     empty space in the mgt-frame wmi header.  This will only be enabled if the driver
     requests it, since otherwise the driver is assumed to not understand the new API.
     ath10k-ct drivers that support this feature will automatically enable it.

  *  A customer reports a case that appears to be the hardware not properly detecting
     end of AMPDU, so frames were being mis-delivered to the wrong peer.  Attempt to
     work around this, and in doing so, clean up a bunch of void* abuse in the block-ack
     reordering code (could not ever confirm there was a problem in this area).

  *  Re-work the rx-mem logic to be less complicated and to use less memory.

  *  Attempt to fix crash that appearanty happens because the driver can sometimes
     delete a vdev in 'up' state.

  *  Attempt to fix hung scan state machine issues.

  *  Fix crash in tx path due to un-initialized memory.

wave-2 changes since last release:

Release 10

  *  Fix an assert related to tx scheduling.  This hopefully fixes
     what appears to be a regression that I added some time back.

  *  Enable CSI reporting for 9984, and maybe 9888/9886.  Only in
     non-trimmed builds.

  *  Other stability improvements, including regression fixes from
     some tricky bugs introduced in earlier releases.

  *  Allow compiling for IPQ4019 chipset.

  *  Firmware will now send txbf frames to the host (driver) if the
     TXBF (0xF00000001) set-special feature is enabled, or when the radio
     is in monitor mode.  But, if the frame is consumed by the txbf_cv
     logic, then the pkt cannot be delivered to the host in this manner.  Instead,
     a WMI event will be sent and host can find the txbf_cv data in shared
     memory.  See ath10k_wmi_event_txbf_cv_mesg() in ath10k-ct driver.

  *  Support rx-all-mgt option.  When enabled, the firmware will deliver all
     management frames that it can to the host.  No RX filters are changed
     when this option is enabled.

  *  Fix at least some problems with sending tx-beamforming frames to SU-MIMO
     peers.  Looks like this was a regression in my code.

  *  Fix a crash in rate-ctrl due to nss mismatch.  This was something I introduced
     while trying to fix other bugs in rate-ctrl some time back.

  *  Attempt to fix a sw-peer-key object leak in IBSS mode.  The peer key code
     is very complex, and shares some pointers as union members.  I think I fixed
     at least some of the issues, but would not be surprised if more exist.

  *  Improve ath10k user guide to document CT firmware features:
     https://www.candelatech.com/ath10k-ug.php

  *  Add ct-special option to configure the txbf sounding time.  See ath10k-ug.php

  *  Fix and allow the driver to tell the firmware to send sounding frames.  See ath10k-ug.php
     In further testing, this seems to fail much of the time, and I am not sure why.
     Disabling this in diet (trimmed) builds.

  *  Fix crashes related to deleting peers while they are in power-save mode.  Reported
     by LEDE user on r7800 with 9984 NIC.
  *  Make rate-ctrl txbf probe work better.  If enabled, the rate-ctrl logic will periodically
     send out probes at an NSS that can to txbf.  Previously, txbf probes would not reliably happen
     if both AP and peer had the same nss (ie, 2x2 talking to 2x2).  To enable this feature, you
     need to enable the fwtest-cmdid number 20.

  *  Report rx-timeout error counters.  These were previously un-reported, though the
     field existed in the wmi struct already.

  *  txbf:  Ignore frames not destined for us.  If NIC is in promisc mode, it
     could acquire and process NDPA frames that were not destined for it.  Check
     the dest-MAC and ignore frames not for us (pass them up the stack for monitor
     mode instead of save them in the peer's rate-ctrl logic.)

  *  Port ping-pong crash handling and othe related features to IPQ4019 target.  It should
     now act similar to 9984 in this regard.

  *  Fix a few asserts related to txbf and tx-seq logic.

  *  Add custom-stats support, for rx-reorder-stats.  Similar to what I did for wave-1.

  *  Disable AMSDU for IBSS.  This now matches what I did for peregrine.  It seems to
     work better this way, though I did not debug it in detail.

  *  Enable the set-special command to re-enable AMSDU for IBSS if user wants to experiment.

  *  Fix bug where dbglog did not disable IRQs, so if you made dbglog messages from the IRQ
     handler, it could cause corruption that could crash the firmware and/or corrupt the log
     message buffers.

  *  Don't assert if there are no buffer descriptors for RX of non-data frame.

  *  Retry any stuck block-ack sessions every 20 seconds instead of just disabling BA for
     ever when we get too many failures.

  *  Fix SGI flag when reporting tx-rate info.  The flag moved since wave-1 days, and
     I did not notice that when I ported my changes forward to wave-2.

  *  Allow disabling special CCA handling for IBSS txqs.  Earlier testing indicated this
     might improve throughput in some testing on 9984 chips in IBSS mode, but subsequent
     testing looks about the same without it.  Since I do not really understand what this
     setting exists for, leave it at upstream defaults.  A new set-special API command (0x12)
     can be used to enable this hack for testing.  Setting 0x1 bit disables special CCA handling
     for non-beacon IBSS txqs, setting 0x2 bit disables it for beacon queues as well.

  *  Add MCAST-BCAST feature flag.  This tells driver we do not need a monitor interface
     to do MESH.

  *  When calculating the rx-address filter (affects ACK & BLOCK-ACK, among other things),
     to not add in monitor interfaces if other interfaces are up.  There is no need for
     a monitor device to ACK frames.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-03-23 22:08:22 +01:00
Ben Greear
5eb2b99b15 ath10k-ct: Update driver to latest.
Among other things, this will check for an htt-mgt variant of
ath10k-ct firmware before loading 'normal' firmware, and it disables
verbose printing of firmware DBGLOG messages by default.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-03-23 22:08:22 +01:00
Ben Greear
375be15429 ath10k-ct: Update DEPENDS and PROVIDES
Update DEPENDS and PROVIDES so that ath10k-ct firmware
and drivers can be used to replace stock firmware
and drivers.  The -htt firmware variant, which requires
ath10k-ct driver now selects ath10k-ct driver when the
firmware is selected.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-03-23 22:08:22 +01:00
Felix Fietkau
5f7d134454 libubox: update to the latest version
3aad294 libubox: Plug a small memory leak.
eebe3fc utils: use constant byte-order conversion

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 20:56:34 +01:00
Felix Fietkau
a276002079 ramips: remove dead (and potentially crashy) code in mt7621 gsw init
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 20:56:34 +01:00
Felix Fietkau
147b679891 ramips: rename ethernet priv->device field to dev to match upstream
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 20:56:34 +01:00
Felix Fietkau
c89e338fe6 kernel: netfilter: fix dst entries in flowtable offload
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 20:56:34 +01:00
Felix Fietkau
db108cdf14 kernel: fix crash in flow offload when removing net devices
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 20:56:34 +01:00
Felix Fietkau
2c7b0e9f31 kernel: flow-offload: only offload connections that have been fully established
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 20:56:34 +01:00
Mathias Kresin
af3a9566fe lantiq: intel-xway: add vr9 v1.1 phy support
During upstreaming the intel phy driver, support for the vr9 v1.1
embedded phys got lost. Backport the upstream send patch adding support
for the vr9 v1.1 embbeded phys to the driver.

Signed-off-by: Mathias Kresin <dev@kresin.me>

cosmetic fixes

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-23 20:31:49 +01:00
INAGAKI Hiroshi
e3bf92edf5 ramips: fix switch and MAC address for WHR-G300N
WHR-G300N has 5 ethernet ports (lan: 4, wan: 1), but there was no
correct configuration in 02_network script and 6 ports was configured
on the switch.
Also, since the MAC address was not acquired from factory partition,
incorrect values was set to LAN and WAN interfaces.

This commit fixes these issues.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
7004f681cd ipq40xx: Add reserved memory for WPJ428
The APPSBL and anything after that it not allowed to touch some of the
memory regions which are used by other components. Still trying to write to
the memory can lead to sudden device restarts

  (IPQ40xx) # mw 87e80000 0
  data abort
  pc : [<873149f8>]          lr : [<87308578>]
  sp : 86edfc28  ip : 86ef4412     fp : 00000000
  r10: 00000000  r9 : 00000000     r8 : 86edff68
  r7 : 00000003  r6 : 8737e624     r5 : 86ef4420  r4 : 8736c154
  r3 : 00000000  r2 : 00000010     r1 : 00000000  r0 : 00000000
  Flags: nZCv  IRQs off  FIQs off  Mode SVC_32
  Resetting CPU ...

The device manufacturer only provided a very rough list of regions:

* rsvd1:     0x87000000 0x500000
* wifi_dump: 0x87500000 0x600000
* rsvd2:     0x87b00000 0x500000

A more detailed list for devices using the AP.DK reference design memory
maps was provided by Roman Yeryomin <roman@advem.lv> in commit 56f2df879fd
("ipq806x: ipq4019: add ap-dk01.1-c1 board support"):

* apps_bl:          0x87000000 0x400000
* sbl:              0x87400000 0x100000
* cnss_debug:       0x87500000 0x600000
* cpu_context_dump: 0x87b00000 0x080000
* tz_apps:          0x87b80000 0x280000
* smem:             0x87e00000 0x080000
* tz:               0x87e80000 0x180000

The u-boot function ipq_fdt_mem_rsvd_fixup seems to suggest that only the
rsvd2 (tz_apps, smem, tz) should be protected. All other regions would have
been removed by it when CONFIG_QCA_APPSBL_DLOAD is not enabled. This allows
to reduce the 16MB reserved memory region to only 4.5MB.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
71ed9f10a3 ipq40xx: Use detailed reserved memory for A42
The APPSBL and anything after that it not allowed to touch some of the
memory regions which are used by other components. Still trying to write to
the memory can lead to sudden device restarts

  (IPQ40xx) # mw 87e80000 0
  data abort
  pc : [<873149f8>]          lr : [<87308578>]
  sp : 86edfc28  ip : 86ef4412     fp : 00000000
  r10: 00000000  r9 : 00000000     r8 : 86edff68
  r7 : 00000003  r6 : 8737e624     r5 : 86ef4420  r4 : 8736c154
  r3 : 00000000  r2 : 00000010     r1 : 00000000  r0 : 00000000
  Flags: nZCv  IRQs off  FIQs off  Mode SVC_32
  Resetting CPU ...

The device manufacturer only provided a very rough list of regions:

* rsvd1:     0x87000000 0x500000
* wifi_dump: 0x87500000 0x600000
* rsvd2:     0x87b00000 0x500000

A more detailed list for devices using the AP.DK reference design memory
maps was provided by Roman Yeryomin <roman@advem.lv> in commit 56f2df879fd
("ipq806x: ipq4019: add ap-dk01.1-c1 board support"):

* apps_bl:          0x87000000 0x400000
* sbl:              0x87400000 0x100000
* cnss_debug:       0x87500000 0x600000
* cpu_context_dump: 0x87b00000 0x080000
* tz_apps:          0x87b80000 0x280000
* smem:             0x87e00000 0x080000
* tz:               0x87e80000 0x180000

The u-boot function ipq_fdt_mem_rsvd_fixup seems to suggest that only the
rsvd2 (tz_apps, smem, tz) should be protected. All other regions would have
been removed by it when CONFIG_QCA_APPSBL_DLOAD is not enabled. This allows
to reduce the 16MB reserved memory region to only 4.5MB.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
1fcd625c0a ipq40xx: Remove phy reset gpio from Cisco Meraki MR33
There is currently no code to read the phy reset gpios for the ethernet
PHY. It would also have been better to use the more common name
"phy-reset-gpios" for this property.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
7a8017b0ae ipq40xx: Adjust SoC name of AVM Fritz!Box 4040
The AVM Fritz!Box 4040 uses an IPQ4018 as SoC and not an IPQ4019. The DTS
must be adjusted to reflect this.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
9ca81646b9 ipq40xx: Use constant to set gpio active low/high
The GPIO configuration in the DTS have as third parameter the active
low/high configuration. This parameter is not easy to parse by humans when
it is only set to 0/1. It is better to use the predefined constants
GPIO_ACTIVE_HIGH and GPIO_ACTIVE_LOW.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
688ae1c4c0 ipq40xx: Fix DTS status parameter values
The "Devicetree Specification, Release v0.2 - 2.3.4 status" [1] only allows
the "okay" value for an operational device. The "ok" value will be accepted
by the kernel but should be avoided.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
6b456d1014 ipq40xx: Provide prefered DTS config name for A42
The OpenMesh A42 will use the default config entry in the FIT when no other
on is found but prefers the config@om.a42. This only becomes relevant when
a Multi-FIT image is prepared for this device.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-03-23 20:31:49 +01:00
Sven Eckelmann
8bc373f8f4 ipq40xx: Remove SUPPORTED_DEVICES for A42
The SUPPORTED_DEVICES will be defined automatically via Device/Default in
ipq40xx.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-03-23 20:31:49 +01:00
Felix Fietkau
99d511dcd3 kernel: fix offloading connections with SNAT + DNAT
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 19:16:23 +01:00
Felix Fietkau
48d17551b6 kernel: fix flow offload UDP handling issue
Only run the TCP state check for TCP connections

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-23 19:16:12 +01:00
Hans Dedecker
02fba1a181 busybox: drop providing virtual package ip
Drop providing the virtual package ip by busybox which was added in commit
1cec4d4ef0.

Letting busybox provide the virtual package ip is not optimal for the
following reasons :

	- Applications depending on ip expect either the ip-full or
	  ip-tiny package to be enabled.
	- Busybox ip applet cannot be added or removed at runtime

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-22 21:54:20 +01:00
Hans Dedecker
0f30f56e38 firewall: update to latest git HEAD
5cdf15e helpers.conf: add CT rtsp helper
d5923f1 Reword rule comments
c1a295a defaults: add support for xt_FLOWOFFLOAD rule
41c2ab5 ipsets: add support for specifying entries

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-22 13:29:22 +01:00
Ben Greear
8bb9f8dd47 ath10k-firmware: Support CT IPQ4019 firmware.
Initial beta release of the CT IPQ4019 firmware.  Features are
similar to the CT 9984 firmware

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-03-22 09:09:55 +01:00
Ben Greear
23a388fe41 ath10k-ct: Force loading mac80211 and ath modules.
They are not automatically loaded on IPQ4019 (at least) machines
for some reason.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2018-03-22 09:09:54 +01:00
Ben Greear
d0f3dd5b9f ath10k-ct: update to latest version, enable AHB.
The driver updates include:

ath10k driver backport to fix WPA 'pn' related security bugs
(4.13 based driver only currently),
a fix for off-channel TX for CT wave-1 firmware, a likely
fix for napi related crashes, and a backport of the firmware fetch
patch.

AHB is needed for the IPQ4019 platform radios.

Signed-off-by: Ben Greear <greearb@candelatech.com>
[use common subject format]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-22 09:09:54 +01:00
Zoltan HERPAI
3db9d6e57d intel-microcode: update to 20180312
- Update microcode for 24 CPU types
- Implements IBRS/IBPB/STIPB support, Spectre-v2 mitigation for:
  Sandybridge, Ivy Bridge, Haswell, Broadwell, Skylake, Kaby Lake,
  Coffee Lake
- Missing production updates:
   - Broadwell-E/EX Xeons (sig 0x406f1)
   - Anniedale/Morefield, Apollo Lake, Avoton, Cherry Trail, Braswell,
     Gemini Lake, Denverton
- New Microcodes:
   - sig 0x00050653, pf_mask 0x97, 2018-01-29, rev 0x1000140
   - sig 0x00050665, pf_mask 0x10, 2018-01-22, rev 0xe000009

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-03-21 23:24:09 +01:00
Zoltan HERPAI
ed369e0481 uboot-sunxi: refresh patches
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-03-21 17:08:35 +01:00
Hauke Mehrtens
367ee3274d uboot-sunxi: fix build by adding comparabilities for old dtc
We use the dtc from the kernel and that does not have all the options
which u-boot would like to use now. make these parameters optional.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
[wigyori@uid0.hu: renamed to 221-compatible-old-dtc.patch from 220-]
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-03-21 17:08:19 +01:00
Zoltan HERPAI
7e1e29de75 uboot-sunxi: bump again to 2017.11
Runtime-tested on:
 - Pine64 (A64)
 - Orange Pi 2 (H3)
 - Bananapro (A20)
 - Olimex A20-Micro (A20)
 - Pcduino v3 (A20)
 - Pcduino v2 (A10)

Compile-tested on:
 - all A8/A7/A53 boards

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-03-21 17:07:06 +01:00
Rafał Miłecki
bfc6514e94 kernel: b53: fix compilation on BCM47XX
This fixes:
drivers/net/phy/b53/b53_priv.h:325:2: error: enumeration value '<board>' not handled in switch [-Werror=switch]
errors.

Fixes: 0de2213eea ("kernel: b53: look for NVRAM's "robo_reset" entry on every platform")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-21 10:54:14 +01:00
Rafał Miłecki
0f1a1489a6 mac80211: backport brcmfmac fixes from 4.16
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-21 08:36:14 +01:00
Rafał Miłecki
0de2213eea kernel: b53: look for NVRAM's "robo_reset" entry on every platform
Since kernel 4.1 bcm47xx_nvram_gpio_pin() is now defined in a global
header and can be safely called even on non-Broadcom platforms.

This change makes b53 look for "robo_reset" on ARCH_BCM_5301X and
slightly simplifies the code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-21 06:56:43 +01:00
Paul Wassi
6fe9277d0c kirkwood: fix initramfs boot warning on iconnect
The chosen dts configuration linux,initrd-* gives an error message
on bootup of kirkwood-iconnect. Since initramfs/initrd is not used
remove these options from the dts.

Reported-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-20 21:45:27 +01:00
Paul Wassi
e0d4ad7127 kirkwood: switch to kernel 4.14
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-20 21:45:27 +01:00
Paul Wassi
1447784a8c kirkwood: add kernel 4.14 support
Add patches for 4.14, undoing upstream changes for Linksys devices
regarding DSA. Instead, the switchdev driver marvell,88e6171 is used.

Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Tested-by: Alberto Bursi <alberto.bursi@outlook.it>
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-20 21:45:27 +01:00
Paul Wassi
f21cd96400 uboot-kirkwood: update to 2018.03
U-Boot now requires GCC > 5

Catch up with upstream and move some configuration options from
the header files to the corresponding defconfig files.
Also move some options of patch 010 affecting the whole platform
to 010's device only.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2018-03-20 21:45:27 +01:00
Hans Dedecker
89b8ba96b4 openvpn: remove deprecated config options
Remove deprecated config options in 2.5 as described in [0]

[0] https://community.openvpn.net/openvpn/wiki/DeprecatedOptions

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-20 21:15:27 +01:00
Felix Fietkau
5faa9556b1 mvebu: disable cpu idle on WRT1900ACv1
A regression seriously affecting the Linksys WRT1900ACv1 (Mamba) was
introduced some time between the OpenWrt/LEDE v4.4 and v4.9 kernels.
The root cause has not yet been identified, despite many attempts for
more than a year. Disabling the SoC specific CPU idle support should
mitigate this issue.

The symptoms on an affected system are unwanted reboots at a variable
frequency. In many cases almost immediately after boot, causing a
bootloop.  This effectively disables support for Mamba on OpenWrt
with kernels > v4.4.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-19 23:28:49 +01:00
Felix Fietkau
e062bd8563 mac80211: avoid changing skb truesize in A-MSDU aggregation
Should fix recently reported data corruption issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-19 21:35:00 +01:00
Kevin Darbyshire-Bryant
745d0e7f4b iproute2: fix hidden uint to uin64_t promotion in json_print
print_int used 'int' type internally, whereas print_uint used 'uint64_t'

These helper functions eventually call vfprintf(fp, fmt, args) which is
a variable argument list function and is dependent upon 'fmt' containing
correct information about the length of the passed arguments.

Unfortunately print_int v print_uint offered no clue to the programmer
that internally passed ints to print_uint were being promoted to 64bits,
thus the format passed in 'fmt' string vs the actual passed integer
could be different lengths.  This is even more interesting on big endian
architectures where 'vfprintf' would be looking in the middle of an
int64 type.  Symptoms of this included tc qdisc showing bizarre values
for a variety of fields across a variety of qdiscs (e.g. refcnt, flows,
quantum)

print_u/int now stick with native int size.

A similar patch has been sent upstream.

Fixes FS#1425

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-03-19 11:40:01 +01:00
Kevin Darbyshire-Bryant
b0b5d0aebb dnsmasq: bump to 2.79 release
94b6878 Tidy crypto.c of old library compat. Now need libnettle 3.
8b96552 Fix compiler warning.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-03-19 11:39:13 +01:00
Rosen Penev
f4ea74abb6 curl: Update to 7.59
Compile tested on ar71xx.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-19 11:39:13 +01:00
Mathias Kresin
9fc916a40c firmware-utils: mkdlinkfw: compile as gnu99
Compile as gnu99 to fix the build.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-19 08:10:14 +01:00
Thomas Nixon
8c88e23b99 lantiq: fix DM200 boot with fake uImage headers
The latest bootloader versions load the firmware into memory and call
`chk_dniimg` (defined in Netgear GPL release), which expects to find
three consecutive block-aligned uImages. Add two fake uImage headers
after the kernel to fool this check.

This wastes up to 128k of space for alignment. The alternative would be
to put the rootfs in a second uImage, but this would limit the firmware
size to 0x710000 (the number of bytes loaded and verified by the
bootloader) instead of 0x7b0000 (the size of the firmware partition).

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
2018-03-18 22:22:39 +01:00
Valentin Spreckels
ac1c31c259 lantiq: fix AVM initramfs image
Create an initramfs that can be used with the EVA bootloader.

Signed-off-by: Valentin Spreckels <Valentin.Spreckels@Informatik.Uni-Oldenburg.DE>
2018-03-18 22:22:38 +01:00
Mathias Kresin
26a9f01fc6 ar71xx: fix Fritz 300e initramfs image
Create an initramfs that can be used with the EVA bootloader.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-18 22:22:38 +01:00
Valentin Spreckels
7a303fe5d1 scripts: add EVA ramboot script
Use the EVA bootloader to load a small linux system into the ram and boot
it from there:

  ./scripts/flashing/eva_ramboot.py 192.168.178.1 path/to/initramfs-kernel.bin

Signed-off-by: Valentin Spreckels <Valentin.Spreckels@Informatik.Uni-Oldenburg.DE>
Acked-by: John Crispin <john@phrozen.org>
[reworded commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-18 22:22:38 +01:00
Peter Lundkvist
d13b05741a ramips: add support for TP-Link TL-WR902AC v3
TP-Link TL-WR902AC v3 is a pocket-size dual-band (AC750) router
based on MediaTek MT7628N + MT7650E.

Specification:
- MediaTek MT7628N/N (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 1x 10/100 Mbps Ethernet

* MT7650 ac chip isn't not supported by LEDE/OpenWrt at the moment.
  Therefore 5Ghz won' work.

Flash instruction:

The only way to flash LEDE image in TL-WR902AC v3 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "openwrt-ramips-mt76x8-tplink_tl-wr902ac-v3-squashfs-tftp-recovery.bin"
   to "tp_recovery.bin" and place it in tftp server directory.
3. Connect PC with the LAN port, press the reset button, power up
   the router and keep button pressed for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Peter Lundkvist <peter.lundkvist@gmail.com>
[drop p2led_an pinmux, this pin isn't used as gpio, fix whitespace issues]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-18 22:22:38 +01:00
Pawel Dembicki
a5bd8de0bd ramips: add support for D-Link DWR-116-A1/2
The DWR-116-A1/2 Wireless Router is based on the MT7620N SoC.

Specification:

  MediaTek MT7620N (580 Mhz)
  32 MB of RAM
  8 MB of FLASH
  802.11bgn radio
  5x 10/100 Mbps Ethernet (1 WAN and 4 LAN)
  2x external, non-detachable antennas
  UART (J1 in A1, JP1 in A2) header on PCB (57600 8n1)
  6x LED (GPIO-controlled), 2x button
  JBOOT bootloader

Known issues:
WAN LED is drived by uartl tx pin. I decide to use this pin as
uartlite tx pin.

Installation:
Apply factory image via http web-gui.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-03-18 22:22:38 +01:00
Pawel Dembicki
5323477184 firmware: add JBOOT based devices config extractor
Adds tool to extract MAC and pre-calibration data required for JBOOT
based D-Link routers.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-03-18 22:22:38 +01:00
Pawel Dembicki
84c1b786b9 firmware-utils: add JBOOT bootloader image support
Tested on D-Link DWR-116.
Based on mktplinkfw.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-03-18 22:22:38 +01:00
Hauke Mehrtens
d11aa1d4af ltq-vdsl-mei: Fix section mismatch
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-18 14:06:00 +01:00
Hauke Mehrtens
5587b8f451 ltq-deu: Fix section mismatches
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-18 14:06:00 +01:00
Jo-Philipp Wich
becf58e080 e2fsprogs: fix InstallDev recipe
Create the correct bin directory before staging the host utilities.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-18 14:05:28 +01:00
Hauke Mehrtens
e273860351 mtd: fix compile warnings
This callback should have one parameter less, this parameter is not used
so this was not a so big problem.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-18 00:59:18 +01:00
Hauke Mehrtens
5d3fbd5996 uboot-mxs: fix compile problems related to OpenSSL
Use the UBOOT_MAKE_FLAGS defined in include/u-boot.mk and do not
overwrite them to compile the host tools against the shipped LibreSSL.
In addition add a patch to fix a compile problem when compiling the
tools against LibreSSL caused by differences in the API between OpenSSL
1.1 and LibreSSL.

This should fix the compile problems seen in build bot from time to time
by not depending on the host libssl-dev package any more but using the
LibreSSL version from OpenWrt.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-17 23:22:40 +01:00
Hauke Mehrtens
8cc22fad6a uboot-mxs: refresh patches
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-17 23:21:58 +01:00
Hauke Mehrtens
8605ac87f8 mvebu: Disable internal RTC on Linksys devices
The internal RTC does not work correctly on these Linksys boards based
on Marvell SoCs. It is off by 3 minutes in 10 minutes running, this
was reported by multiple users. On the Linksys Mamba device the device
tree comment says that no crystal is connected to the internal RTC, this
is probably also true for the other devices.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-17 22:59:29 +01:00
Rosen Penev
dfe4de0287 mvebu: Add Solidrun RTC init patch.
Some boards like the Turris Omnia have an RTC chip that does not get
initialized. Initializing the RTC at the driver level helps get rid of
bootloader hacks that write special register values.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-17 22:59:29 +01:00
Rosen Penev
31717ec0ff mvebu: Backport RTC trimming support.
This enables a higher precision mode for the RTC.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-03-17 22:59:29 +01:00
Hauke Mehrtens
14006efcf3 sunxi: update Xunlong Orange Pi Zero Plus dts file
This updates the DTS file to the version send upstream

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-17 22:15:38 +01:00
Stijn Segers
9899ffcfd3 kernel: bump 4.14 to 4.14.27
* Refreshed patches.
* Deleted 812-pci-dwc-fix-enumeration.patch (was accepted upstream)

Compile-tested: ramips/mt7621, x86/64
Run-tested: ramips/mt7621, x86/64

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2018-03-17 22:15:38 +01:00
Koen Vandeputte
895ea64a76 kernel: bump 4.4 to 4.4.121
- Refreshed all patches
- Only compile-tested

Compile tested on: Gemini

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-03-17 22:15:38 +01:00
Koen Vandeputte
fa8e99c51d kernel: bump 4.9 to 4.9.87
- Refreshed all patches

Compile tested on: ar71xx
Runtime tested on: ar71xx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-03-17 22:15:38 +01:00
Gabe Rodriguez
12d3d87a91 mwlwifi: Updated to upstream stable release
mwlwifi was updated to a new stable. Included in this stable release are the
followin benefits:
- Fixed compiling for kernel 4.14
- Fixed crash on 88W8864 binary

Compiled and tested on: WRT3200ACM and WRT1900AC

Signed-off-by: Gabe Rodriguez <lifehacksback@gmail.com>
2018-03-17 22:15:38 +01:00
Matthias Schiffer
96288dc139 generic: revert broken LED core patch
The patch breaks LED operation and has already been reverted in 4.4.121.
4.9.87 is still affected; revert it locally until the issue is sorted out
upstream.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-17 17:01:01 +01:00
Christian Bayer
49f3286bde openvpn: add config param verify_client_cert
Option --client-cert-not-required DEPRECATED is deprecated in v2.4 and removed in OpenVPN 2.5.
Replaced by param --verify-client-cert none|optional|require in v2.4 see
https://community.openvpn.net/openvpn/wiki/ DeprecatedOptions#a--client-cert-not-required

Signed-off-by: Christian Bayer <cave@cavebeat.org>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_	RELEASE increase]
2018-03-17 14:56:39 +01:00
Mathias Kresin
403260dbf7 ipq40xx: fix GL.iNet GL-B1300
The deletion of the mdio node childs was meant for testing and were
committed accidentally. Without the mdio nodes the network isn't
initialised.

While at it, remove the orphaned qcom-ipq4019-gl-b1300.dts as well.

Fixes: FS#1439
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-17 08:56:02 +01:00
Sven Eckelmann
2796ab85ed ipq40xx: add support for Compex WPJ428
* QCA IPQ4028
* 256 MB of RAM
* 32 MB of SPI NOR flash (mx25l25635e)
* 128 MB of SPI NAND flash (gd5f1gq4ucy1g)
* 2T2R 2.4 GHz
  - QCA4019 hw1.0 (SoC)
  - uses AP-DK03 BDF from QCA4019/hw1.0/board-2.bin
* 2T2R 5 GHz
  - QCA4019 hw1.0 (SoC)
  - uses AP-DK03 BDF from QCA4019/hw1.0/board-2.bin
* 2 fully software controllable GPIO-LEDs
* 2 additional GPIO-LEDs which also affect the SIM card detection
* 1x button (reset)
* 1x GPIO buzzer
* 1x USB (xHCI)
* 1x NGFF (USB-only with Dual-SIM support, untested)
* TTL pins are on board (R124 is next to GND, then follows: RX, TX, VCC)
* 2x gigabit ethernet
  - phy@mdio4:
    + Manual: Ethernet port 0
    + gmac0 (ethaddr) in original firmware
    + 802.3af POE (HV version)
    + 24v passive POE (LV version)
  - phy@mdio3:
    + Manual: Ethernet port 1
    + gmac1 (eth1addr) in original firmware
* DC Jack connector
  + 24-56V (HV version)
  + 12-24V (LV version)

The SPI NAND flash isn't supported at the moment.

The bootloader has to be updated before OpenWrt is installed to fix a
reboot problem. The nor-ipq40xx-single.img from
https://downloads.compex.com.sg/?dir=uploads/QSDK/QCA-Reference/WPJ428/b170123-IPQ40xx-Reference-Firmware
has to be downloaded and the transfered in u-boot via TFTP

  set ipaddr 192.168.1.11
  set serverip 192.168.1.10
  ping ${serverip}
  tftpboot 0x84000000 nor-ipq40xx-single.img
  imgaddr=0x84000000 && source $imgaddr:script

The sysupgrade image can be installed directly on flash using u-boot:

  sf probe
  tftpboot 0x84000000 openwrt-ipq40xx-compex_wpj428-squashfs-sysupgrade.bin
  sf erase 0x00180000 +$filesize
  sf write 0x84000000 0x00180000 $filesize
  bootipq

The initramfs image can be started using

  tftpboot 0x82000000 openwrt-ipq40xx-compex_wpj428-initramfs-fit-uImage.itb
  set fdt_high 0x83000000
  bootm 0x82000000

The used SIM card slot can be changed using

  # slot 1 (also enables orange LED)
  echo 1 > /sys/class/gpio/gpio3/value
  # slot 2
  echo 0 > /sys/class/gpio/gpio3/value

It can be checked whether a SIM card is inserted in the current slot and
the red LED is subsequently on via:

  echo 2 > /sys/class/gpio/export
  cat /sys/class/gpio/gpio2/value

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-03-17 08:09:04 +01:00
Sven Eckelmann
1b773a46c2 build: Allow to change the FIT config section name
Some devices only boot when a special config is found in the image and
completely ignore the default entry during the selection. These devices can
now use the variable DEVICE_DTS_CONFIG in their device image definition.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-03-17 08:09:04 +01:00
INAGAKI Hiroshi
dbdc26ba33 ramips: fix switch for Nexx devices
There are 2 ethernet ports on Nexx WT1520 and WT3020. These ethernet
ports are assigned as follows, and other ports cannot be used.

- WT1520:
  - port0 -> lan
  - port4 -> wan

- WT3020:
  - port0 -> wan
  - port4 -> lan

I dropped ports that cannot be used.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-03-17 08:09:04 +01:00
Christian Lamparter
5862f01ef7 build: revert "make image target wait for initramfs"
This reverts commit 43be5087a9.

The change is incompatible with the image builder code.
Luckily the RT-AC58U is no longer depending on the initramfs
being available for the target's image generation rules.

Reported-by: Venitex Aveon <aveon@aenote.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-15 22:27:37 +01:00
Mathias Kresin
35e01cf68a ipq-wifi: add board-2.bin for ASUS RT-AC58U
The existing file is 0 byte. Replace the ASUS RT-AC58U board-2.bin with
the correct file.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-15 21:00:39 +01:00
Arne Zachlod
d0988235dd ar71xx: add support for Ubiquiti Litebeam M5
Specification:
- SoC: Atheros AR9342
- Flash: 8 MiB
- RAM: 64 MiB
- UART: 1x UART on PCB - 115200 8N1
- Ethernet: 1 x 100 Mbit with passive PoE (24V/0.2A)

Doesn't work:
* Flash via TFTP with Ubiquiti Uboot

Installation via vendor firmware:
- upload factory image via webinterface

Signed-off-by: Arne Zachlod <arne@nerdkeller.org>
2018-03-15 19:11:39 +01:00
Alexander Couzens
3137622efb firmware-utils: tplink-safeloader: compile as gnu99
Also fix minor coding style issue and one redeclaration.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-03-15 18:22:36 +01:00
Jo-Philipp Wich
677d8df9b8 firmware-utils: fix erroneous variable redeclaration
Fixes: 638e2193fe ("tplink-safeloader: add support to split & extract firmwares")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-15 18:17:37 +01:00
Alexander Couzens
068ba612db tplink-safeloader: add support to convert factory into sysupgrade
Those converted factory images can be used to regain the original
tp-link firmware.
Be aware of firmware upgrade which additional require changes of
other partition than os-image (kernel) & file-system (rootfs).
OEM factory images from tplink can change nearly all partitions.
However using those images, OpenWrt's sysupgrade will only
modify the partitions os-image and file-system.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-03-15 17:52:23 +01:00
Alexander Couzens
638e2193fe tplink-safeloader: add support to split & extract firmwares
Split the oem firmware upgrade images into seperate files.
Useful when analysing oem firmware files.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-03-15 17:48:13 +01:00
Christian Mehlis
0c7e78930b ipq806x: add support for Compex WPQ864
Hardware highlights:
- SoC: Qualcomm Atheros IPQ8064/5 ARM Dual Core CPU
- RAM: (512MB or 1GB) DDR3 System Memory
- Storage: 32MB NOR (Cypress S25FL256S1)
           256MB NAND (Micron MT29F2G08ABBEAH4)
- Ethernet: 5 x 1G via QCA8337N
- USB: 1 x USB 2.0/3.0 + 1 x USB 2.0 on mini PCIe3 socket
- PCIe: 3x mini PCIe (third mini PCIE3 is PCIe/USB shared)
- SIM Card Slot: 2 x Slot
- Buttons: Reset Button
- LEDs: 18x, 8x GPIO controllable
- Buzzer

The correct amount of RAM will be passed by the bootloader.

In contrast to the documentation provided by Compex, the third PCIe
doesn't use GPIO16 for PERST. Instead, GPIO3 is shared and used as PERST
for PCIe0 and PCIe2.

So far, no one was able to get USB 3.0 working with the 1GB RAM version,
while it works fine for my 512MB version. Since USB 3.0 doesn't work with
the Compex firmware for the 1G variant either, it could be a hardware
issue with these boards.

OpenWrt will be installed to the NAND flash. Make sure to have a full
working image on the NOR flash. It will be the backup in case anything
goes wrong.

It has been observed that an image loaded via tftpboot might have
bitflips. Hence the extra step to create a crc32 checksum to allow to
compare the checksum with the one from the source file prior to flashing.

In all cases it is necessary to set the following u-boot parameter to an
empty (whitespace) value, to ensure that the chosen bootargs of the dts
isn't overwritten or set to bogus - not working - values:

  (IPQ) # set bootargs " "
  (IPQ) # set fsbootargs " "
  (IPQ) # saveenv

The sysupgrade image can be installed directly on flash using u-boot (put
jumper in JP13 (leave JP9 open) to boot from nand):

  (IPQ) # set serverip 192.168.1.20
  (IPQ) # set ipaddr 192.168.1.1

  (IPQ) # tftpboot 0x42000000 openwrt-ipq806x-compex_wpq864-squashfs-nand-factory.bin
  (IPQ) # crc32 0x42000000 $filesize

  (IPQ) # nand erase 0x1340000 0x4000000
  (IPQ) # nand write 0x42000000 0x1340000 $filesize

The initramfs image can be started using:

  (IPQ) # set fdt_high 0x48000000
  (IPQ) # tftpboot 0x44000000 openwrt-ipq806x-compex_wpq864-initramfs-fit-uImage.itb
  (IPQ) # bootm 0x44000000

Signed-off-by: Christian Mehlis <christian@m3hlis.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-15 08:17:10 +01:00
Mathias Kresin
2d67ef8638 mvebu: unset uboot build by default
Initialise the UBOOT variable by default. Otherwise it will be
unintended inherit to following images if set and causes an uboot build
where not required.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-15 07:50:41 +01:00
Hauke Mehrtens
bf4aa52dbf kernel: make mtd patches apply again
This makes some of the mtd patches apply again after some generic
patches were changed.
These problems where found by build bot.

Fixes: ac9bcefa3b ("kernel: use V10 of mtd patchset adding support for "compatible" string")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-15 00:42:41 +01:00
Chris Blake
4943afd781 ipq40xx: add Cisco Meraki MR33 Support
This patch adds support for Cisco Meraki MR33

hardware highlights:

SOC:	IPQ4029 Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7
DRAM:	256 MiB DDR3L-1600 @ 627 MHz Micron MT41K128M16JT-125IT
NAND:	128 MiB SLC NAND Spansion S34ML01G200TFV00 (106 MiB usable)
ETH:	Qualcomm Atheros AR8035 Gigabit PHY (1 x LAN/WAN) + PoE
WLAN1:	QCA9887 (168c:0050) PCIe 1x1:1 802.11abgn ac Dualband VHT80
WLAN2:	Qualcomm Atheros QCA4029 2.4GHz 802.11bgn 2:2x2
WLAN3:	Qualcomm Atheros QCA4029 5GHz 802.11a/n/ac 2:2x2 VHT80
LEDS:	1 x Programmable RGB+White Status LED (driven by Ti LP5562 on i2c-1)
	1 x Orange LED Fault Indicator (shared with LP5562)
	2 x LAN Activity / Speed LEDs (On the RJ45 Port)
BUTTON:	one Reset button
MISC:	Bluetooth LE Ti cc2650 PG2.3 4x4mm - BL_CONFIG at 0x0001FFD8
	AT24C64 8KiB EEPROM
	Kensington Lock

Serial:
	WARNING: The serial port needs a TTL/RS-232 3V3 level converter!
	The Serial setting is 115200-8-N-1. The board has a populated
	1x4 0.1" header with half-height/low profile pins.
	The pinout is: VCC (little white arrow), RX, TX, GND.

Flashing needs a serial adaptor, as well as patched ubootwrite utility
(needs Little-Endian support). And a modified u-boot (enabled Ethernet).
Meraki's original u-boot source can be found in:
<https://github.com/riptidewave93/meraki-uboot/tree/mr33-20170427>

Add images to do an installation via bootloader:
 0. open up the MR33 and connect the serial console.

 1. start the 2nd stage bootloader transfer from client pc:

  # ubootwrite.py --write=mr33-uboot.bin
  (The ubootwrite tool will interrupt the boot-process and hence
   it needs to listen for cues. If the connection is bad (due to
   the low-profile pins), the tool can fail multiple times and in
   weird ways. If you are not sure, just use a terminal program
   and see what the device is doing there.

 2. power on the MR33 (with ethernet + serial cables attached)
    Warning: Make sure you do this in a private LAN that has
    no connection to the internet.

 - let it upload the u-boot this can take 250-300 seconds -

 3. use a tftp client (in binary mode!) on your PC to upload the sysupgrade.bin
    (the u-boot is listening on 192.168.1.1)
    # tftp 192.168.1.1
    binary
    put openwrt-ipq40xx-meraki_mr33-squashfs-sysupgrade.bin

 4. wait for it to reboot

 5. connect to your MR33 via ssh on 192.168.1.1

For more detailed instructions, please take a look at the:
"Flashing Instructions for the MR33" PDF. This can be found
on the wiki: <https://openwrt.org/toh/meraki/mr33>
(A link to the mr33-uboot.bin + the modified ubootwrite is
also there)

Thanks to Jerome C. for sending an MR33 to Chris.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:52 +01:00
Mathias Kresin
4f4fc993db base-files: add more name source to get_dt_led helper function
Not all LED driver are using the label devicetree property for the led
name. Add support for the TI/National Semiconductor LP55xx Led Drivers,
which are using the chan-name property for the led name, as fallback.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-14 19:04:52 +01:00
Mathias Kresin
64fef8f901 base-files: add function to get binary mac from file
Add a fucntion to get the a binary mac address from file. Use the new
function for mtd_get_mac_binary() to limit duplicate code.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-14 19:04:52 +01:00
Christian Lamparter
87c42101cf ipq40xx: add support for ASUS RT-AC58U/RT-ACRH13
This patch adds support for ASUS RT-AC58U/RT-ACRH13.

hardware highlights:

SOC:	IPQ4018 / QCA Dakota
CPU:	Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7
DRAM:	128 MiB DDR3L-1066 @ 537 MHz (1074?) NT5CC64M16GP-DI
NOR:	2 MiB Macronix MX25L1606E (for boot, QSEE)
NAND:   128 MiB Winbond W25NO1GVZE1G (cal + kernel + root, UBI)
ETH:    Qualcomm Atheros QCA8075 Gigabit Switch (4 x LAN, 1 x WAN)
USB:    1 x 3.0 (via Synopsys DesignWare DWC3 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
INPUT:	one Reset and one WPS button
LEDS:	Status, WAN, WIFI1/2, USB and LAN (one blue LED for each)
Serial:
	WARNING: The serial port needs a TTL/RS-232 3V3 level converter!
	The Serial setting is 115200-8-N-1. The board has an unpopulated
	1x4 0.1" header. The pinout (VDD, RX, GND, TX) is printed on the
	PCB right next to the connector.

U-Boot Note: The ethernet driver isn't always reliable and can sometime
time out... Don't worry, just retry.

Access via the serial console is required. As well as a working
TFTP-server setup and the initramfs image. (If not provided, it
has to be built from the OpenWrt source. Make sure to enable
LZMA as the compression for the INITRAMFS!)

To install the image permanently, you have to do the following
steps in the listed order.

1. Open up the router.
   There are four phillips screws hiding behind the four plastic
   feets on the underside.

2. Connect the serial cable (See notes above)

3. Connect your router via one of the four LAN-ports (yellow)
   to a PC which can set the IP-Address and ssh and scp from.

   If possible set your PC's IPv4 Address to 192.168.1.70
   (As this is the IP-Address the Router's bootloader expects
   for the tftp server)

4. power up the router and enter the u-boot
   choose option 1 to upload the initramfs image. And follow
   through the ipv4 setup.

Wait for your router's status LED to stop blinking rapidly and
glow just blue. (The LAN LED should also be glowing blue).

3. Connect to the OpenWrt running in RAM

   The default IPv4-Address of your router will be 192.168.1.1.

   1. Copy over the openwrt-sysupgrade.bin image to your router's
      temporary directory

   # scp openwrt-sysupgrade.bin root@192.168.1.1:/tmp

   2. ssh from your PC into your router as root.

   # ssh root@192.168.1.1

   The default OpenWrt-Image won't ask for a password. Simply hit the Enter-Key.

   Once connected...: run the following commands on your temporary installation

   3. delete the "jffs2" ubi partition to make room for your new root partition

   # ubirmvol /dev/ubi0 --name=jffs2

   4. install OpenWrt on the NAND Flash.

   # sysupgrade -v /tmp/openwrt-sysupgrade.bin

   - This will will automatically reboot the router -

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:51 +01:00
Christian Lamparter
43be5087a9 build: make image target wait for initramfs
The image production rules does not have the initramfs-image
as a dependency. So, from make’s perspective initramfs
creation can run independently/in parallel with the image
generation code in the target's Makefile.

This is a problem for devices that have to use the initramfs
for the image creation and can lead to broken images.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:51 +01:00
Christian Lamparter
e713b5ba6f mac80211: ath10k: search all IEs for variant before falling back
This patch adds the patch that was posted to ath10k-devel ML:
<https://patchwork.kernel.org/patch/10233491/>
|From: Thomas Hebb <tommyhebb@gmail.com>
|Subject: [PATCH] ath10k: search all IEs for variant before falling back
|Date: Wed, 21 Feb 2018 11:43:39 -0500
|[...]
|This patch fixes the issue by first searching the entire file for the ID
|with variant, and searching for the fallback ID only if that search
|fails. It also includes some code cleanup in the area, as
|ath10k_core_fetch_board_data_api_n() no longer does its own string
|mangling to remove the variant from an ID, instead leaving that job to a
|new flag passed to ath10k_core_create_board_name().
|
|I've tested this patch on a QCA4019 and verified that the driver behaves
|correctly for 1) both fallback and variant BDFs present, 2) only fallback
|BDF present, and 3) no matching BDFs present.
|
|Fixes: 1657b8f84ed9 ("ath10k: search SMBIOS for OEM board file extension")
|Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>

Note: 937-ath10k-calibration-variant.patch has been reassigned a new 081
number, as it now ships with upstream.... But also because this patch
requires the change in ath10k_core_create_board_name().

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:51 +01:00
Mathias Kresin
249a9b35e0 ipq40xx: fix GL.iNet GL-B1300 support
Rename the dts file to match the used SoC type and drop the unnecessary
KERNEL_INSTALL from the image build code.

Remove the fixed rootfs and kernel partitions and create an image with
rootfs appended after kernel.

Setup a switch portmap matching the hardware and a default network/switch
configuration to make make the second lan port working. Use eth0 as lan
to have it consistent accross the target.

Use the power LED to indicate the boot status.

Sort the SoC entries within the dts by address and use dtc labels
whenever possible.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-03-14 19:04:51 +01:00
David Bauer
9f437b2cf3 ipq40xx: remove block- and pagesize from FB4040
This removes the block- and pagesize from the FritzBox 4040
image description, fixing incorrectly working sysupgrade.

With this commit, the default values for block- and pagesize are
used.

Signed-off-by: David Bauer <mail@david-bauer.net>
[chunkeey@gmail.com: removed 105-mtd-nor-add-mx25l25635f.patch as well]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:51 +01:00
Christian Lamparter
d0e9621404 ipq40xx: OpenMesh A42 overhaul
Sort the soc entries in the dts by address and use dtc labels whenever
possible.

Adjust the DTS files, the OpenMesh A42 is actually an IPQ4018 and not an
IPQ4019.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:51 +01:00
Christian Lamparter
a44d435c1d ipq40xx: fix apss cpu overclocking spam
There's an interaction issue between the clk changes:"
clk: qcom: ipq4019: Add the apss cpu pll divider clock node
clk: qcom: ipq4019: remove fixed clocks and add pll clocks
" and the cpufreq-dt.

cpufreq-dt is now spamming the kernel-log with the following:

[ 1099.190658] cpu cpu0: dev_pm_opp_set_rate: failed to find current OPP
for freq 761142857 (-34)

This only happens on certain devices like the Compex WPJ428
and AVM FritzBox!4040. However, other devices like the Asus
RT-AC58U and Meraki MR33 work just fine.

The issue stem from the fact that all higher CPU-Clocks
are achieved by switching the clock-parent to the P_DDRPLLAPSS
(ddrpllapss). Which is set by Qualcomm's proprietary bootcode
as part of the DDR calibration.

For example, the FB4040 uses 256 MiB Nanya NT5CC128M16IP clocked
at round 533 MHz (ddrpllsdcc = 190285714 Hz).

whereas the 128 MiB Nanya NT5CC64M16GP-DI in the ASUS RT-AC58U is
clocked at a slightly higher 537 MHz ( ddrpllsdcc = 192000000 Hz).

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-03-14 19:04:51 +01:00
Mathias Kresin
1b906723eb ipq40xx/ipq806x: move qcom-dwc3 usb driver to generic
If the a kernel package exists within multiple targets an error/warning
is shown.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-14 19:04:51 +01:00
John Crispin
54b275c8ed ipq40xx: add target
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: John Crispin <john@phrozen.org>
2018-03-14 19:04:50 +01:00
John Crispin
b7f115f22a ipq806x: drop ipq40xx support
Signed-off-by: John Crispin <john@phrozen.org>
2018-03-14 19:04:50 +01:00
Andy Walsh
20d63ebc94 e2fsprogs: break out libcomerr/libss, FS#1310
libext2fs breaks krb5 by always installing its own copies of libcom_err.so
and libss.so.

Move the libraries into separate libcomerr and libss packages respectively
and add a host build recipe to stage the required compile_et and mk_cmds
utilities for use by other packages.

This allows the krb5 package to be fixed to use the system wide libcomerr
and libss libraries.

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
[rename libcom_err to libcomerr, make compile_et and mk_cmds relocatable,
 cleanup makefile, add dependency on host build, reword commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-14 18:49:24 +01:00
Jo-Philipp Wich
093b75e106 jsonfilter: update to latest git HEAD
c7e938d implement POSIX regexp support
cd6629f lexer: fix encoding 7 bit escape sequences
8614470 main: implement array mode

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-14 18:48:23 +01:00
Rafał Miłecki
ac9bcefa3b kernel: use V10 of mtd patchset adding support for "compatible" string
In the commit bde5e7a632 ("kernel: backport mtd implementation for
"compatible" in "partitions" subnode") patches that got accepted into
l2-mtd.git were backported to the kernels 4.9 and 4.14. Unfortunately
there was a regression report, patches were dropped and never reached
4.16.

This commit replaces these pseudo-backports with the latest version
that includes regression fix and futher changes that were requested.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-14 15:13:39 +01:00
Hans Dedecker
d88e928a44 dnsmasq: bump to 2.79rc2
ae29065 Fix debian/changelog syntax.
6b2b564 Enhance --synth-domain to allow names with sequential integers.
4f7bb57 Fix deletion of dhcp-options from inotify dynamic files.
56f0623 Allow trailing dot in CNAME.
f3223fb Fix nettle_hash() function to avoid ABI incompatibilities.
4c4f4c2 Debian dependency tweaking for new dnsmasq-base-lua package.
773af30 Man page typo fix.
4cc944b Merge branch 'master' of ssh://thekelleys.org.uk/var/local/git/dnsmasq
87e00fe Compiler warning fixes.
e7a4af8 Compiler warning fixes.
2d69d61 Add liblua-dev to Debian build-depends.
30e4a94 Debian package: add dnsmasq-base-lua binary package.
232a8f3 Merge messages for release.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-13 22:39:24 +01:00
Hauke Mehrtens
43f35ce971 uboot-imx6: fix build with GCC 7
Backport the compiler support patches from upstream u-boot to this older
version to make it compile with GCC 7.
This was found by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-13 22:28:59 +01:00
Mathias Kresin
d482356322 ramips: mt7620n: add mdio node and disable port4 by default
Revert the changes I applied to aa5014dd1a ("ramips: mt7620n: enable
port 4 as EPHY by default").

The driver expects a node mdio-bus to be present, regardless of the
actual node status. If the node is missing the driver fails to load  with

  mtk_soc_eth 10100000.ethernet: no mdio-bus child node found

Disable port4 by default again. If the port is enabled but not present, a
"invalid port id 4" warning is shown during boot.

Fixes: FS#1428

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-13 20:18:15 +01:00
Jo-Philipp Wich
e83bc5e3c7 6in4: support multiple additional user prefixes
Support configuration in the form...

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

... to allow specifying multiple routed IPv6 prefixes.

Implements feature request FS#1361.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-13 18:27:41 +01:00
Hans Dedecker
50433f313f glibc: update glibc to 2.26+ and switch to download from git
Switch glibc to 2.26+ [0] and download the sources from git which will it
make easier to update glibc in the future.

For an overview of the fixed bugs and CVE related fixes in 2.26+ see the
NEWS file [1]

[0] https://sourceware.org/git/?p=glibc.git;a=commit;h=d300041c533a3d837c9f37a099bcc95466860e98
[1] https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=410f0d163145c1549fb73fdd96568f585b5bf62f;hb=refs/heads/release/2.26/master

Signed-off-by: Xinxing Hu <xinxing.huchn@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-13 18:26:40 +01:00
Hans Dedecker
3dee117a8a glibc: fix applying of patches
Commit f4d9d7a removed support for version specific patches; but it also
broke applying of patches in the patches glibc dir.
Fix the issue by setting PATCH_DIR to $(PATH_PREFIX)/patches similar as
musl/common.mk.

Signed-off-by: Xinxing Hu <xinxing.huchn@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-13 18:26:36 +01:00
Felix Fietkau
1cd76e2d85 netifd: update to the latest version (fixes FS#1358)
1f5a29c ip: do not add local routes for host dependencies
c06f842 device: add support for setting the isolate options for bridge ports
69aeaab interface-ip: fix route selection for host dependencies

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-13 13:35:05 +01:00
John Crispin
d57ca53ff9 Revert "ramips: gpio: fix compilation if CONFIG_GPIO_SYSFS=n"
This reverts commit cff2dedebc.

This patch causes build issues

Signed-off-by: John Crispin <john@phrozen.org>
2018-03-13 13:10:21 +01:00
Rafał Miłecki
9004fc3c76 kernel: b53: drop support for old location of bcm47xx_nvram.h
In kernels 4.0 and older that header file was located in some subdir of
arch/mips/include. Target brcm47xx supports kernels 4.4 and 4.9 only so
that code isn't needed anymore.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-13 12:01:36 +01:00
André Draszik
cff2dedebc ramips: gpio: fix compilation if CONFIG_GPIO_SYSFS=n
If CONFIG_GPIO_SYSFS=n, compilation fails with
  drivers/built-in.o: In function `gpio_export_with_name':
  include/asm-generic/gpio.h:128: undefined reference to `__gpiod_export'

This is because the stub in that case has the wrong name,
_gpiod_export() - note the missing underscore (_) at the
start.

Fix the stub, and add the correct prototype for the real
implementation.

Signed-off-by: André Draszik <git@andred.net>
2018-03-13 08:34:58 +01:00
Felix Fietkau
4fd8722056 toolchain/binutils: exclude .rej files when unpacking the tarball
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 21:29:24 +01:00
Felix Fietkau
15e9639159 toolchain/binutils: remove version 2.28
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 20:06:09 +01:00
Hauke Mehrtens
c7ced2f4a4 binutils: Use version 2.29.1 by default
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-12 20:04:45 +01:00
Felix Fietkau
092d75aa3e ppp: make ppp-multilink provide ppp
Fixes dependencies on ppp from other packages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 20:02:29 +01:00
Felix Fietkau
e28551b103 toolchain/binutils: add support for version 2.30
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 20:01:07 +01:00
Felix Fietkau
d85a7f1eb2 uboot-fritz4040: fix build with gcc7
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 19:31:50 +01:00
Felix Fietkau
ed3860c3e3 swconfig: convert swdevs_lock from spinlock to mutex
Should fix some sleep-while-atomic issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 12:50:46 +01:00
Matthias Schiffer
b8d9a064f0 busybox: remove i386-specific build flags
busybox tries to be smart and passes a number of additional flags to the
compiler. Unfortunately, the i386-specific flags break ABI compatiblity
with libc.

Fixes busybox crashes observed on x86-generic with GCC 7.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-12 12:49:03 +01:00
Felix Fietkau
61eee1adfb toolchain/gcc: switch to version 7 by default
Newer GCC versions are reported to improve code size on various ARM
devices, which is why newer u-boot versions require them now.
There have also been user reports of data corruption issues fixed on
MIPS by updating from GCC 5 to GCC 7.

This update was previously held up by these two MIPS compile issues,
which have since been fixed:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83496
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84790

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 12:19:23 +01:00
Felix Fietkau
16cec7ae67 toolchain/gcc: merge pending fix for miscompiled MIPS16 code issue (GCC PR 84790)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 12:19:07 +01:00
Felix Fietkau
fe98f2679c toolchain/gcc: fix a build failure on 7.3.0 with macOS
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-12 12:19:03 +01:00
Hauke Mehrtens
87606e25af musl: update to version 1.1.19
This updates musl from a commit between 1.1.18 and 1.1.19 to the final
release of the version 1.1.19.
This mostly fixes bugs in musl.

The size of the uncompressed binary is increased by about 4 KB.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-11 23:42:38 +01:00
Felix Fietkau
9306bdf31c kernel: merge a pending fix for HFSC warnings/slowdowns (fixes FS#1136)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-11 08:58:53 +01:00
Felix Fietkau
4e8f1e9f4c kernel: unroll MIPS r4k cache blast function
Optimize the compiler output for larger cache blast cases that are
common for DMA-based networking.

On ar71xx, I measured a routing throughput increase of ~8%

Signed-off-by: Ben Menchaca <ben.menchaca@qca.qualcomm.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-10 11:58:19 +01:00
Felix Fietkau
916277a033 mac80211: minstrel: make short preamble CCK available when not used at connect time
The BSS short preamble state can change without rate control
update notification.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-10 11:57:42 +01:00
Felix Fietkau
6011f7bcf0 mac80211: fix a tx queue memory accounting error
Fixes rare hard to trigger tx hangs after some time

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-10 10:20:45 +01:00
Hauke Mehrtens
b7b14fd64e sunxi: Fix B53 swconfig driver for Lamobo R1
This reverts the changes needed for the upstream b53 DSA switch driver
to use the OpenWrt b43 swconfig switch driver instead.

Tested-by: TheWerthFam <thewerthfam@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-10 01:15:22 +01:00
Antony Antony
d6634edfc1 sunxi: NanoPi NEO Plus2 backport Gigabit Ethernet DT node
Kernel 4.16 commit 27d7f9297027

Signed-off-by: Antony Antony <antony@phenome.org>
2018-03-10 01:15:22 +01:00
Tomasz Maciej Nowak
584d7c53bd mvebu: new subtarget cortex A53
This commit introduces new subtarget for Marvell EBU Armada Cortex A53
processor based devices.

The first device is Globalscale ESPRESSObin. Some hardware specs:

SoC: Marvell Armada 3700LP (88F3720) dual core ARM Cortex A53
     processor up to 1.2GHz
RAM: 512MB, 1GB or 2GB DDR3
Storage: SATA interface
         µSD card slot with footprint for an optional 4GB EMMC
         4MB SPI NOR flash for bootloader
Ethernet: Topaz Networking Switch (88E6341) with 3x GbE ports
Connectors: USB 3.0
            USB 2.0
            µUSB port connected to PL2303SA (USB to serial bridge
            controller) for UART access
Expansion: 2x 46-pin GPIO headers for accessories and shields with
           I2C, GPIOs, PWM, UART, SPI, MMC, etc
           MiniPCIe slot
Misc: Reset button, JTAG interface

Currently booting only from µSD card is supported.
The boards depending on date of dispatch can come with various U-Boot
versions. For the newest version 2017.03-armada-17.10 no manual
intervention should be needed to boot OpenWrt image. For the older ones
it's necessary to modify default U-Boot environment:

 1. Interrupt boot process to run U-Boot command line,

 2. Run following commands:
    (for version 2017.03-armada-17.06 and 2017.03-armada-17.08)
     setenv bootcmd "load mmc 0:1 0x4d00000 boot.scr; source 0x4d00000"
     saveenv

    (for version 2015.01-armada-17.02 and 2015.01-armada-17.04)
     setenv bootargs "console=ttyMV0,115200 root=/dev/mmcblk0p2 rw rootwait"
     setenv bootcmd "ext4load mmc 0:1 ${fdt_addr} armada-3720-espressobin.dtb; ext4load mmc 0:1 ${kernel_addr} Image; booti ${kernel_addr} - ${fdt_addr}"
     saveenv

 3. Poweroff, insert SD card with OpenWrt image, boot and enjoy.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-10 01:15:22 +01:00
Hauke Mehrtens
be3da900cd mvebu: Add subtarget for Cortex A9 build
This is in preparation for adding a subtarget for the Cortex A53 later.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-10 01:15:21 +01:00
Ryan Mounce
9f3f61a0d9 mvebu: add support for Turris Omnia
Adds support for the Turris Omnia and builds an eMMC sysupgrade image in
the same format as the SolidRun ClearFog.

An initramfs image in the simple yet Omnia-specific 'medkit' image format
is also built in order to ease the initial flashing process.

Notable hardware support omissions are support for switching between SFP
cage and copper PHY, and RGB LED control.

Due to a current limitation of DSA, only 1/2 CPU switch uplinks are used.

Specifications:
- Marvell Armada 385 1.6GHz dual-core ARMv7 CPU
- 1GB DDR3 RAM
- 8GB eMMC Flash
- 5x Gigabit LAN via Marvell 88E6176 Switch (2x RGMII CPU ports)
- 1x switchable RJ45 (88E1514 PHY) / SFP SGMII WAN
- 2x USB 3.0
- 12x dimmable RGB LEDs controlled by independent MCU
- 3x Mini PCIe slots
- Optional Compex WLE200N2 Mini PCIe AR9287 2x2 802.11b/g/n (2.4GHz)
- Optional Compex WLE900VX Mini PCIe QCA9880 3x3 802.11ac (2.4 / 5GHz)
- Optional Quectel EC20 Mini PCIe LTE modem

Flash instructions:
If the U-Boot environment has been modified previously (likely manually via
serial console), first use serial to reset the default environment.
=> env default -a
=> saveenv

Method 1 - USB 'medkit' image w/o serial
- Copy openwrt-mvebu-turris-omnia-sysupgrade.img.gz and
omnia-medkit-openwrt-mvebu-turris-omnia-initramfs.tar.gz to the root of a
USB flash drive formatted with FAT32 / ext2/3/4 / btrfs / XFS.
Note that the medkit MUST be named omnia-medkit*.tar.gz
- Disconnect other USB devices from the Omnia and connect the flash drive
to either USB port.
- Power on the Omnia and hold down the rear reset button until 4 LEDs are
illuminated, then release.
- Wait approximately 2 minutes for the Turris Omnia to flash itself with
the temporary image, during which LEDs will change multiple times.
- Connect a computer to a LAN port of the Turris Omnia with a DHCP client
- (if necessary) ssh-keygen -R 192.168.1.1
- ssh root@192.168.1.1
$ mount /dev/sda1 /mnt
$ sysupgrade /mnt/openwrt-mvebu-turris-omnia-sysupgrade.img.gz
- Wait another minute for the final OpenWrt image to be flashed. The Turris
Omnia will reboot itself and you can remove the flash drive.

Method 2 - TFTP w/ serial
- Extract omnia-medkit-openwrt-mvebu-turris-omnia-initramfs.tar.gz and copy
dtb + zImage to your TFTP server (rename if desired)
- Connect Turris Omnia WAN port to DHCP-enabled network with TFTP server
- Connect serial console and interrupt U-Boot
=> dhcp
=> setenv serverip <tftp_server_ip_here>
=> tftpboot 0x01000000 zImage
=> tftpboot 0x02000000 dtb
=> bootz 0x01000000 - 0x02000000
- OpenWrt will now boot from ramdisk
- Download openwrt-mvebu-turris-omnia-sysupgrade.img.gz to /tmp/
$ sysupgrade /tmp/openwrt-mvebu-turris-omnia-sysupgrade.img.gz
- Wait another minute for the final OpenWrt image to be flashed. The Turris
Omnia will reboot itself.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2018-03-10 01:15:21 +01:00
Ryan Mounce
657ce9231d mvebu: generate ramdisk image by default
ramdisk images must be used in the installation process for upcoming
Turris Omnia support.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2018-03-09 22:19:11 +01:00
Ryan Mounce
7b33f6c1bb mvebu: disable DSA DT nodes for boards using mvsw61xx
As at this commit, DSA is not enabled in the kernel config for mvebu, so these
nodes have been ignored. In preparation for the first mvebu board using DSA,
disable these nodes for existing boards to avoid issues.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2018-03-09 22:19:07 +01:00
Henryk Heisig
21486911ac firmware: ath10k-firmware: update QCA9984 firmware to 10.4-3.5.3-00053
This patch updates ath10k-firmware to use the
firmware-5.bin_10.4-3.5.3-00053 firmware for the QCA9984.

The update fixes "ath10k_pci 0001:01:00.0: Invalid VHT mcs 15 peer
stats" spamming the kernel ring buffer at very high frequencies, but
introduces the new "ath10k_pci 0001:01:00.0: Unknown eventid: 36925".
This new warning doesn't appear to cause problems in practice and is
only emitted relatively rarely, not causing dmesg to overflow within
minutes.

Tested on the ZyXEL NBG6817; early feedback also suggests this firmware
to work well (with the same fixes and caveats) on the Netgear r7800 as
well.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-03-09 22:15:02 +01:00
Henryk Heisig
11b476f925 firmware: ath10k-firmware: update to 2018-02-09
This patch updates ath10k-firmware to last commit and use the
firmware-5.bin_10.4-3.5.3-00053 firmware for the QCA9888.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-03-09 22:15:01 +01:00
Toni Uhlig
57468c7142 util-linux: added unshare and nsenter executables
Signed-off-by: Toni Uhlig <matzeton@googlemail.com>
2018-03-09 22:15:01 +01:00
Philip Prindeville
61e0af06d9 iperf3: update to 3.5
Get rid of patches which are already upstream.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-03-09 22:13:22 +01:00
Ansuel Smith
a9c00578b5 e2fsprogs: bump to 1.44.0
Fix compilation error

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-03-09 22:13:21 +01:00
Magnus Kroken
ffbe51b294 openvpn: update to 2.4.5
Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-03-09 22:13:21 +01:00
Stijn Segers
dc7f2fdd52 linux-firmware: bump firmware for Intel Wireless 8260AC to version 31
Bump the firmware for 8260AC and related hardware to version 31.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2018-03-09 22:13:21 +01:00
Koen Vandeputte
cfc5867bce kernel: bump 4.9 to 4.9.86
- Refreshed all patches
- Removed 1 patch which got upstreamed

Compile tested on: ar71xx (Rocket M5, Mikrotik RB2011)
Runtime tested on: ar71xx (Rocket M5, Mikrotik RB2011)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-03-09 22:13:19 +01:00
Kabuli Chana
7c1dae6e26 kernel: bump to version 4.14.25
compile/test target mvebu/rango

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2018-03-09 22:12:48 +01:00
Felix Fietkau
fa22714181 ar71xx: fix double registration of usb host mode devices, add usb client support for qca955x
Only register the chipidea usb device if the strapping option indicates
device mode. If not, use the regular ehci platform driver.

Add qca955x device mode support, tested on 8devices Rambutan.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-09 18:25:57 +01:00
Matthias Schiffer
643850f568 inclue/image.mk: fix package installation for per-device rootfs
Fixes FS#1421.

Fixes: 2fbf669730 ("imagebuilder: reuse rootfs preparation from rootfs.mk")
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-09 08:18:54 +01:00
Hans Dedecker
332b736a3e ebtables: update to latest git 2018-01-17
068ba95 Fix locking if LOCKDIR does not exist

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-08 21:16:24 +01:00
Florian Fainelli
30d42f85ae uml: Remove 4.4 patches
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2018-03-08 11:44:26 -08:00
Stijn Tintel
7cc9914aae firewall: bump to git HEAD
392811a ubus: let fw3_ubus_address() return the number of resolved addresses
359adcf options: emit an empty address item when resolving networks fails
503db4a zones: disable masq when resolving of all masq_src or masq_dest items failed
f50a524 helpers: implement explicit CT helper assignment support
a3ef503 zones: allow per-table log control
8ef12cb iptables: fix possible NULL pointer access on constructing rule masks

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-03-08 02:40:30 +02:00
Matthias Schiffer
057369ae1f base-files: tune fragment queue thresholds for available system memory
The default fragment low/high thresholds are 3 and 4 MB. On devices with
only 32MB RAM, these settings may lead to OOM when many fragments that
cannot be reassembled are received. Decrease fragment low/high thresholds
to 384 and 512 kB on devices with less than 64 MB RAM.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 19:14:22 +01:00
Rafał Miłecki
6c194078db bcm53xx: include patch adding WZR-900DHP LEDs support
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-07 17:01:07 +01:00
Matthias Schiffer
359273d7f6 include/package-defaults.mk: fix default Build/Prepare with empty ./src
Copying ./src/* would fail when src exists, but is empty or only contains
hidden files.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 09:59:08 +01:00
Matthias Schiffer
f505fb07f3 include/image.mk: base package-list manifest on unprepared rootfs
With CONFIG_CLEAN_IPKG, the prepared rootfs does not have a full opkg
status file.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 09:59:08 +01:00
Matthias Schiffer
a02a69d5f8 imagebuilder: remove split patch dirs from imagebuilder archive
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 09:59:08 +01:00
Matthias Schiffer
2fbf669730 imagebuilder: reuse rootfs preparation from rootfs.mk
In addition to removing redundant code, this fixes various issues in
IB-generated images that have been fixed in prepare_rootfs before,
including better handling of CONFIG_CLEAN_IPKG and enabling of initscripts
from FILES.

We also reuse the opkg macro and remove --force-... flags that have been
removed from rootfs.mk as well.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 09:59:08 +01:00
Matthias Schiffer
cf1c7c0f17 include/rootfs.mk: pass additional files dir to prepare_rootfs as an argument
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 09:59:07 +01:00
Matthias Schiffer
6ab50bb10d include/rootfs.mk: retain list of conffiles with CONFIG_CLEAN_IPKG
/usr/lib/opkg/status must not be removed completely, otherwise the
packages' conffile lists will be missing. Replace it with a reduced version
only containing the conffile entries.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 09:58:50 +01:00
Matthias Schiffer
d2daaf8f40 include/rootfs.mk: do not remove opkg prerm scripts during rootfs preparation
When a user removes a preinstalled opkg package, the package's prerm script
(and in particular our default_prerm) should run.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 08:49:45 +01:00
Matthias Schiffer
6ed389da85 base-files: sysupgrade: do not rely on opkg to list changed conffiles
Many packages use the opkg conffiles field to list configuration files that
are to be retained on upgrades. Make this work on systems without opkg.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-03-07 08:49:39 +01:00
Martin Schiller
d84ac78d6a lantiq/xrx200: add usif support to dts files
The Lantiq XRX200 aka VR9 doesn't have an asc0. Instead,
there is an USIF module which can either be an UART or a
SPI Controller.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-03-06 19:49:06 +01:00
Mathias Kresin
cde4f9008a lantiq: ltq-adsl: deactivate ASLR support
The package still leaks some user space linker options into the kernel
space. This breaks the build when ASLR is activated, deactivate it for
now.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-06 19:49:06 +01:00
Giuseppe Lippolis
aa5014dd1a ramips: mt7620n: enable port 4 as EPHY by default
According to the datasheet the mt7620n have a fixed switch configuration
with 5 ephy (10/100) port. No RGMII configuration is possible.

Drop the mdio node as well. Without RGMII, the mdio node doesn't make any
sense

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
[drop mdio node, enable port4 by default]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-06 19:49:06 +01:00
Pawel Dembicki
39b5218434 ramips: mt7620: power up ephy port 4
In some boards port 4 of mt7620 switch is powered down in bootloader
configuration as lan/wan package leak mitigation.

Reset ephy port 4 to default settings to power up the port.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
[clarify issue in commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-03-06 19:49:05 +01:00
Jason A. Donenfeld
b562c0c91b wireguard: bump to 20180304
7c0d711 version: bump snapshot
b6a5cc0 contrib: add extract-handshakes kprobe example
37dc953 wg-quick: if resolvconf/run/iface exists, use it
1f9be19 wg-quick: if resolvconf/interface-order exists, use it
4d2d395 noise: align static_identity keys
14395d2 compat: use correct -include path
38c6d8f noise: fix function prototype
302d0c0 global: in gnu code, use un-underscored asm
ff4e06b messages: MESSAGE_TOTAL is unused
ea81962 crypto: read only after init
e35f409 Kconfig: require DST_CACHE explicitly
9d5baf7 Revert "contrib: keygen-html: rewrite in pure javascript"
6e09a46 contrib: keygen-html: rewrite in pure javascript
e0af0f4 compat: workaround netlink refcount bug
ec65415 contrib: embedded-wg-library: add key generation functions
06099b8 allowedips: fix comment style
ce04251 contrib: embedded-wg-library: add ability to add and del interfaces
7403191 queueing: skb_reset: mark as xnet

Changes:

* queueing: skb_reset: mark as xnet

This allows cgroups to classify packets.

* contrib: embedded-wg-library: add ability to add and del interfaces
* contrib: embedded-wg-library: add key generation functions

The embeddable library gains a few extra tricks, for people implementing
plugins for various network managers.

* crypto: read only after init
* allowedips: fix comment style
* messages: MESSAGE_TOTAL is unused
* global: in gnu code, use un-underscored asm
* noise: fix function prototype

Small cleanups.

* compat: workaround netlink refcount bug

An upstream refcounting bug meant that in certain situations it became
impossible to unload the module. So, we work around it in the compat code. The
problem has been fixed in 4.16.

* contrib: keygen-html: rewrite in pure javascript
* Revert "contrib: keygen-html: rewrite in pure javascript"

We nearly moved away from emscripten'ing the fiat32 code, but the resultant
floating point javascript was just too terrifying.

* Kconfig: require DST_CACHE explicitly

Required for certain frankenkernels.

* compat: use correct -include path

Fixes certain out-of-tree build systems.

* noise: align static_identity keys

Gives us better alignment of private keys.

* wg-quick: if resolvconf/interface-order exists, use it
* wg-quick: if resolvconf/run/iface exists, use it

Better compatibility with Debian's resolvconf.

* contrib: add extract-handshakes kprobe example

Small utility for extracting ephemeral key data from the kernel's memory.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> (git log --oneline description)
2018-03-06 08:52:13 +01:00
Hans Dedecker
5cbd22bb0f nghttp2: bump to 1.31.0
6e744662 Update bash_completion
478eac09 Update manual pages
88e2029e Bump up version number to 1.31.0, LT revision to 30:0:16
45d76cf5 nghttpx: Close listening socket on graceful shutdown
54573f28 Merge pull request #1137 from nghttp2/session-set-user-data
17793e99 Add nghttp2_session_set_user_data() public API function
5eac3c90 Update manual pages
e70195ae nghttpx: Update doc
fe51e7fa Merge pull request #1130 from nghttp2/avoid-inet_pton-macro
eb951c2c src: Define nghttp2_inet_pton wrapper to avoid inet_pton macro
39f0ce7c Merge pull request #1126 from nghttp2/nghttpx-expired-client-cert
65157811 Merge pull request #1123 from nghttp2/mruby-client-cert-not-before-after
e8af7afc nghttpx: Add an option to accept expired client certificate
38abfd18 nghttpx: Add mruby tls_client_not_before, and tls_client_not_after
ff3edc09 nghttpx: Fix potential memory leak
0bb15406 Bump up version number to 1.31.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-05 10:44:20 +01:00
Felix Fietkau
606cea8f1b mt76: update to the latest version
cda627f mt76: add missing VHT maximum A-MPDU length capability
ffa2069 mt76: fix potential sleep in atomic context

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-04 19:40:29 +01:00
Felix Fietkau
97c624631a kernel: remove an old kernel compatibility line from module packaging
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-04 19:37:22 +01:00
Felix Fietkau
83ddc3bfc2 ar71xx: fix mii bus irq assignment
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-04 19:37:20 +01:00
Felix Fietkau
f62d2b9549 ar71xx: remove pdata->fifo_cfg*
The values are the same for all chipsets that use it

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-04 19:37:20 +01:00
Felix Fietkau
11d70f0600 mac80211: avoid sampling rates that are too slow, improves throughput
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-03 18:51:53 +01:00
Stijn Segers
e72b2464b1 kernel: bump 4.4 to 4.4.119
This bumps the 4.4. kernel in master to 4.4.119.
Includes more Meltdown & Spectre mitigation.

* Refresh patches.
* Refresh x86/config for RETPOLINE.
* Deleted 8049-PCI-layerscape-Add-fsl-ls2085a-pcie-compatible-ID.patch (accepted upstream)
* Deleted 8050-PCI-layerscape-Fix-MSG-TLP-drop-setting.patch (accepted upstream)
* Deleted 650-pppoe_header_pad.patch (does not apply anymore (code was replaced)).

Bumps from 4.4.112 to 4.4.115 were handled by Kevin Darbyshire-Bryant.

Compile-tested on: ar71xx & oxnas.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
Tested-by: Rosen Penev <rosenp@gmail.com>
2018-03-03 12:58:56 +01:00
Magnus Kroken
5af85dab22 kernel: bump 4.9 to 4.9.85
Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-03-03 12:58:55 +01:00
Hauke Mehrtens
45ae5c2de3 lantiq: Deactivate ASLR support for some applications
The lantiq components still leak some user space linker options into the
kernel space. This breaks with build when ASLR is activated, deactivate
it for now on these packages.

Fixes: FS#1391
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 12:58:55 +01:00
Hauke Mehrtens
d67b3d0df8 lantiq: ltq-vmmc: Do not leak user space CFLAGS into kernel space
Do not leak the user space CFLAGS into the kernel space any more, this
allows us to activate the MIPS16 build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 12:58:55 +01:00
Hauke Mehrtens
58ad312755 lantiq: ltq-tapi: Do not leak user space CFLAGS into kernel space
Do not leak the user space CFLAGS into the kernel space any more, this
allows us to activate the MIPS16 build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 12:58:55 +01:00
Hauke Mehrtens
4d90887496 lantiq: ltq-adsl: Do not leak user space CFLAGS into kernel space
Do not leak the user space CFLAGS into the kernel space any more, this
allows us to activate the MIPS16 build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 12:58:55 +01:00
Hauke Mehrtens
b5c5f7d203 lantiq: ltq-vdsl: Do not leak user space CFLAGS into kernel space
Do not leak the user space CFLAGS into the kernel space any more, this
allows us to activate the MIPS16 build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 12:58:55 +01:00
Hauke Mehrtens
13639e76dd lantiq: ltq-vdsl-mei: Do not leak user space CFLAGS into kernel space
Do not leak the user space CFLAGS into the kernel space any more, this
allows us to activate the MIPS16 build.

This decreases the size of the ipk file from 87589 bytes to 81267 bytes.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 00:53:35 +01:00
Hauke Mehrtens
c8abbf1e22 lantiq: ltq-ifxos: Do not force O3 build any more
Do not force to build with O3 optimization any more, but take what was
selected by the OpenWrt build system.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 00:53:35 +01:00
Hauke Mehrtens
c6162fdc50 lantiq: ltq-ifxos: activate build with mips16
The build process does not leak the user space cflags into the kernel
build process any more, this allows to activate MIPS16 builds.
This was fixed with some update of ifxos.

This decreases size of the  libifxos.a and the ltq-vdsl-app
old:
78320 libifxos.a
44383 ltq-vdsl-app_4.17.18.6-2_mips_24kc.ipk

new:
66852 libifxos.a
43506 ltq-vdsl-app_4.17.18.6-2_mips_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-03 00:35:26 +01:00
Hauke Mehrtens
45fdb12258 kernel: generic: Add kernel configuration options
These options are needed for the mvebu arm64 target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-02 23:15:28 +01:00
Stijn Segers
b5469b38cd kernel: bump 4.14 to 4.14.23
This patch bumps the 4.14 kernel to .23.
- Refreshed patches.
- Deleted bcm53xx/patches-4.14/089-PCI-iproc-Fix-NULL-pointer-dereference-for-BCMA.patch. Has been accepted upstream.
- Deleted generic/pending-4.14/821-usb-Remove-annoying-warning-about-bogus-URB.patch. The upstream URB code was changed,
  the patch no longer applies. I discussed this with the patch author and removed it for now, we'll see how it goes.

Compile-tested on: ramips/mt7621, x86/64
Run-tested on: ramips/mt7621, x86/64

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
2018-03-02 21:33:08 +01:00
Tomasz Maciej Nowak
844bdf94e4 mvebu: base-files: moving on from net-tools
Remove dependency on net-tools, replacing calls to ifconfig with iproute
equivalent, in functions changing interface MAC addresses.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:08 +01:00
Tomasz Maciej Nowak
d29a2814b7 mvebu: rename clearfog sysupgrade script and functions
Cosmetic name change of ClearFog sysupgrade script and its functions to
more generic sdcard. This way it won't be confusing for other future
device additions.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:08 +01:00
Tomasz Maciej Nowak
b1317a10f7 mvebu: remove fs declaration in mount commands
Allows to have other file system for boot partition without breaking
sysupgrade.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:08 +01:00
Tomasz Maciej Nowak
0ef28ea387 mvebu: unify boot.scr creation
Unify boot.scr generation so Makefile for device image generation won't
grow without a reason. Also make boot-scr step optional.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:08 +01:00
Tomasz Maciej Nowak
e4fa22397f mvebu: make sdcard bootloader option configurable
Remove the necessity for boot loader from SD card image creation process
and make it configurable.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:07 +01:00
Tomasz Maciej Nowak
e10ea566cc mvebu: fix partition type and signature for sdcard
Previously the partition signature was assigned from provided type. Now
both are corrected wherein signature is always generated from
SOURCE_DATE_EPOCH. With that the root file system can be identified
by PARTUUID string, without relying on static declaration of device node.
This commit also does some cosmetics, removing trailing whitespace and
replacing spaces with tab.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:07 +01:00
Tomasz Maciej Nowak
652a13e920 mvebu: remove redefinition of image name for clearfog
The IMAGE_NAME redefinition causes overwriting of generated SD card
image when multiple root file system types are selected. In result only
single SD card image is generated. This commit fixes this behaviour.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:07 +01:00
Josua Mayer
9a82076592 mvebu: clearfog: use partition uuid for root= bootarg
U-Boot already knows where it found the boot.scr, and
figuring out the partition UUID becomes trivial at this point.
This change allows booting OpenWrt from whatever storage it has been
flashed to: SD card, eMMC, USB disk or SATA disk.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
[replace lede with openwrt, redact commit message]
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2018-03-02 21:33:07 +01:00
Hauke Mehrtens
98aa44ce79 mvebu: Use kernel 4.14 by default
I am not aware of any regressions in kernel 4.14 compared to kernel 4.9.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-02 21:33:07 +01:00
Hauke Mehrtens
e54f937f51 mvebu: activate more workarounds for ARM erratas
The Armada XP uses a Marvell PJ4Bv7 Processor for which already one
workaround for an errata is activated.
The Armada 285 uses a Cortex A9 r4p1 for which the Linux kernel provides
a workaround for ERRATA_764369, activate this.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-02 21:33:07 +01:00
Kabuli Chana
0a3df09cd1 mwlwifi: Update to version 10.3.4.0-20180226
move to latest version, address vfs_write issue

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2018-03-02 21:33:07 +01:00
Hauke Mehrtens
6734ffb851 kernel: generic: Move config option to generic
This is deactivated in all targets using the DSA switch driver with
kernel 4.14.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-03-02 21:32:19 +01:00
Hans Dedecker
694f0bb5af gre: squash grev4 and grev6 packages into gre (FS#1399)
The split-up into packages gre, grev4 and grev6 causes confusion for the
users as reported in FS#1399.
As IPv4 and IPv6 are considered now as bundled; squash the grev4 and grev6
packages into the gre package and let gre provide both grev4 and grev6.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-02 15:58:09 +01:00
Hans Dedecker
175b262328 netifd: add udhcpc link check to dhcp shell handler script
Fixes the assumption the busybox udhcpc applet is always enabled; in case
the symbolic link check fails the DHCP shell handler script will exit and
as result the DHCP protocol handler will not be registered in netifd.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-03-02 09:48:41 +01:00
Rafał Miłecki
9046e921af mac80211: brcmfmac: better logging of firmware api errors
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 18:45:20 +01:00
Rafał Miłecki
9543fb1ecd mac80211: brcmfmac: backport remaining changes from 4.16
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 18:36:04 +01:00
Rafał Miłecki
8d78cccc6e mac80211: brcmfmac: enlarge caps buffer & final sdio restructuring
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 18:26:12 +01:00
Rafał Miłecki
66bdf62a2a mac80211: brcmfmac: restructuring sdio access functions - take 2
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 18:15:51 +01:00
Rafał Miłecki
bb04b7ced7 mac80211: brcmfmac: restructuring sdio access functions
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 18:07:09 +01:00
Rafał Miłecki
e52e8480ad mac80211: brcmfmac: backport remaining changes from 4.15
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 15:17:03 +01:00
Rafał Miłecki
c29a2a4283 mac80211: brcmfmac: firmware halt and scan cleanup
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 15:17:02 +01:00
Rafał Miłecki
81542331cb mac80211: reorder patches putting backports first
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 15:14:11 +01:00
Felix Fietkau
1f427bd616 mac80211: add a missing check to the last minstrel fix
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-01 14:45:11 +01:00
Rafał Miłecki
a186c2ab70 mac80211: rename patches accepted upstream
This is to simplify maintenance. It's easy to say now which patches need
some extra work and/or sending upstream. Updating to newer backports
should be also simpler with this.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 13:54:42 +01:00
Felix Fietkau
2389ebbd48 Revert "ath: do not apply broken power limits with ATH_USER_REGD"
This reverts commit 79a768a90f.
Some devices can go over their power limits with this commit, so this
needs to be handled on a case by case basis instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-01 13:35:30 +01:00
Felix Fietkau
cc19aa3e71 mac80211: update the A-MSDU fast-rx patch to the latest version
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-01 13:35:29 +01:00
Felix Fietkau
d59c6b53f4 mac80211: add more minstrel fixes
Improves 2.4 GHz throughput

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-01 13:35:11 +01:00
Felix Fietkau
55bd80f6d8 mac80211: fix regression introduced by the recent minstrel changes
The cck rates array needs to be initialized for both the minstrel and
the minstrel_ht variant

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-03-01 12:03:10 +01:00
Rafał Miłecki
2995d9dfee base-files: fix off-by-one in counting seconds for factory reset
There was a mismatch between indicating factory reset and code actually
starting it. After 5 seconds status LED started blinking rapidly letting
user know it's ready to release reset button. In practice button had to
stay pressed for another second in order to relly start the process.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-03-01 08:04:51 +01:00
Felix Fietkau
36fb0697e2 ar71xx: fix build with ag71xx debugfs support enabled
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-28 13:57:58 +01:00
Felix Fietkau
13224f8b73 iw: update to version 4.14
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-28 12:46:02 +01:00
Felix Fietkau
c4c64f5305 mac80211: add an optimization for fast-rx support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-28 12:46:02 +01:00
Felix Fietkau
916e33fa1e netifd: update to the latest version, rewrite RPS/XPS handling
Remove RPS/XPS support from netifd core, move the logic to a hotplug
script that uses a different policy which provides better performance
and more fairness across flows

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-28 12:46:02 +01:00
Rosen Penev
810659a22c ag71xx: Move timestamp struct member outside of struct.
With this change, the timestamp variable is only used in ag71xx_check_dma_stuck. Small tx speedup.

Based on a Qualcomm commit. ag->timestamp = jiffies was not replaced with netif_trans_update(dev) because of this quote:

It should be noted that after this series several instances
of netif_trans_update() are useless (if they occur in
.ndo_start_xmit and driver doesn't set LLTX flag -- stack already
did an update).

From: http://lists.openwall.net/netdev/2016/05/03/87

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-02-28 12:46:02 +01:00
Yousong Zhou
83d8df1ea2 kernel: kmod-geneve: kmod for Geneve tunneling
This will be required for Open vSwitch geneve tunneling support

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-02-28 12:56:51 +08:00
Felix Fietkau
d8655868ca ramips: fix spurious IRQ7 events when using perf on 4.14
Upstream handling of MIPS CPU IRQs is rather hackish and the interrupts
are being enabled unconditionally in various places because of legacy
code.
Performance counter events are routed both through the GIC and through
legacy CPU IRQ7 events, causing spurious interrupts.

Fix this by disabling IRQ7 when trying to access the performance counter
IRQ.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-27 17:30:33 +01:00
Rafał Miłecki
86e5a6d985 bcm53xx: fix fallback code for picking status LED
Looking for a wrong LED file name was stopping this code from find any
LED. This affects devices with only a red/amber power LED.

Fixes: 3aaee1ba02 ("bcm53xx: failsafe support")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-02-27 16:52:25 +01:00
Hans Dedecker
3bd2e195ec netifd: support DHCP sendopts as list options
Support config in the form of ....
	add_list sendopts=router:10.10.10.2
	add_list sendopts=nissrv:20.20.20.2
	add_list sendopts=0x7D:abba

This allows to configure sendopts having white spaces as option value

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-27 13:36:46 +01:00
Felix Fietkau
e9b58b22c1 Revert "ramips: improve NAPI polling to increase GRO batch size" (fixes FS#1333)
This reverts commit 968b861612.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-27 09:42:18 +01:00
Felix Fietkau
1198204a6f toolchain: fix selecting older gcc versions for x86
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-27 09:01:01 +01:00
Felix Fietkau
a49f6565b3 kernel: m25p80: allow fallback from spi_flash_read to regular SPI transfer
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-26 19:20:06 +01:00
Felix Fietkau
25aaff9100 gcc: merge upstream fix for PR 83496 (fixes FS#814)
This bug was causing miscompiled code related to branch delay slots

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-26 19:13:55 +01:00
Felix Fietkau
38dc678166 gcc: refresh patches for version 7.3.0
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-26 19:13:55 +01:00
Hauke Mehrtens
fc54256bc8 iptables: fix compile with kernel 3.18
This fixes a compile bug found by build bot with kernel 3.18

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-26 17:52:15 +01:00
Hans Dedecker
664733de8c kernel: generic: add 4.14 config option
When CGROUPS is enabled the new option CONFIG_CGROUP_NET_CLASSID is
selectable and not handled.
Add this option to the 4.14 kernel configuration.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-26 16:34:41 +01:00
Alif M. Ahmad
f5b4f5f8e3 kernel: package efivarfs module
With this, `mount -t efivarfs` is available and tools such as efitools
and efibootmgr will be usable.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
[daniel@makrotopia.org: some whitespace fixes, match From: with SoB]
2018-02-26 13:54:11 +01:00
Vitalij Alshevsky
70130268a8 sunxi: Add support for Xunlong Orange Pi PC
CPU: H3 Quad-core Cortex-A7 H.265/HEVC 4K @ 1.3 Ghz
GPU: Mali400MP2 GPU @ 600MHz (supports OpenGL ES 2.0)
Memory: 1GB DDR3 (shared with GPU)
Onboard: Storage TF card (Max. 64GB) / MMC card slot
Onboard: Network 10/100M Ethernet RJ45
Onboard header pinout: SPI, I2C, 1-WIRE
USB 2.0: Three USB 2.0 HOST, One USB 2.0 OTG
Buttons: Power Button(SW4)
Debug TTL UART: ..DC-IN.. >[GND][RX][TX] ..HDMI..

Signed-off-by: Vitalij Alshevsky <v_alshevsky@tut.by>
2018-02-26 11:24:04 +01:00
Vitalij Alshevsky
8584fee310 uboot-sunxi: add Xunlong Orange Pi PC
Signed-off-by: Vitalij Alshevsky <v_alshevsky@tut.by>
2018-02-26 11:23:55 +01:00
Johnny S. Lee
c8e62f830d mwlwifi: add and use individual firmware packages
As each mvebu device only uses one of the firmwares provided by mwlwifi
package, it makes sense to put them in separate packages and only install
the one that is needed.

Current mwlwifi version's firmware sizes and usages by devices:
88W8864.bin  118776  caiman, mamba, cobra, shelby
88W8897.bin  489932  (none)
88W8964.bin  449420  rango

Changes by this commit:
 * indicate in title that mwlwifi also is driver for 88W8897 and 88W8964
 * remove mwlwifi package's firmware installation rules
 * add 3 new individual firmware packages (all depends on kmod-mwlwifi):
    - mwlwifi-firmware-88w8864
    - mwlwifi-firmware-88w8897
    - mwlwifi-firmware-88w8964
 * add firmware package to mvebu devices' DEVICE_PACKAGES accordingly

Signed-off-by: Johnny S. Lee <_@jsl.io>
[Add the used FW files to the PACKAGES of default image]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-26 11:23:40 +01:00
Matthias Schiffer
884c9575e1 scripts/metadata.pm: allow group-only Require-User specs
/lib/functions.sh can deal with Require-User specifications that only
contain a group, but no user. Adjust metadata.pm to allow such
specifications as well.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-02-26 07:19:46 +01:00
Jonas Gorski
c5b06da56c mvebu: add missing patch for reprobing SFP phys for 4.14
Add the patch for reprobing phys also for 4.14, as it is still needed.

Fixes: 4ccad92229 ("mvebu: Add support for kernel 4.14")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-25 22:58:40 +01:00
Jonas Gorski
39f8751cdc mvebu: fix SFP insert detection GPIO name on 4.14
When SFP support was accepted upstream, the expected GPIO names were
slightly changed, breaking SFP insert detection. Update the DTS file to
the expected name to make SFP work again.

Fixes: 4ccad92229 ("mvebu: Add support for kernel 4.14")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-25 22:58:35 +01:00
Felix Fietkau
a5aee46fb7 kernel: more fixes for flow offload
- fix TCP connection state
- fix checksum error on DNAT

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-25 18:32:02 +01:00
Matthias Schiffer
9bf440fcd9 perf: restrict libunwind dependency to archs that actually support libunwind
Allow building perf on uncommon targets again.

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

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-02-25 17:03:42 +01:00
Matthias Schiffer
05dba65569 libunwind: fix build with musl on PPC
Works around two incompatiblities between glibc and (POSIX-compliant) musl:

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

Compile tested on mpc85xx.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-02-25 16:58:10 +01:00
Felix Fietkau
1ac14d312f kernel: fix crash in flow offload code when cleaning up unregistered hooks
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-25 16:24:23 +01:00
Felix Fietkau
28a74f3076 kernel: remove nf_flow_table hardware offload patch (it is not ready yet)
It also does not have any users yet. It will be addde back when the core
API issues have been sorted out

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-25 16:24:02 +01:00
Felix Fietkau
a86e6b5a9f kernel: add minimal TCP state tracking to flow offload support
Fixes issues with connections hanging after >30 seconds idle time

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-25 16:14:23 +01:00
Felix Fietkau
8f24653184 hostapd: do not register ubus objects for mesh interfaces
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-24 21:33:22 +01:00
Hans Dedecker
1a5863d6d7 odhcp6c: rework sendopts handling
Bring logic of sendopts handling in line with ip6prefix handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-24 21:04:06 +01:00
Jo-Philipp Wich
66222dd92b odhcp6c: support multiple additional user prefixes
Support configuration in the form...

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

... to allow specifying multiple additional IPv6 prefixes.

Implements feature request FS#1361.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-24 21:03:31 +01:00
Felix Fietkau
0f54d96d24 ethtool: import from packages, add myself as maintainer
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-24 16:12:57 +01:00
Roman Yeryomin
f5984e0a0c ramips: mt7621: add Mediatek AP-MT7621A-V60 EVB support
This board has:
- mt7621 SoC
- 8MB SPI flash
- 128MB RAM
- 5x ethernet ports from internal (SoC) switch
- 1x ethernet port sitting on gmac2 and IC+ phy (not yet supported)
- 3x PCIe slots
- 1x USB 2.0 and 1x USB 3.0
- sound based on wm8960
- SDXC card slot (full size)

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

Tested both with 4.9 and 4.14

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-02-24 16:05:28 +01:00
Felix Fietkau
bcf4a5f474 ramips: remove chunked-io patch and set spi->max_transfer_size instead
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-24 16:05:28 +01:00
Felix Fietkau
46c49d8381 kernel: optimize for performance by default starting with 4.14
Keep size optimizations for smaller targets that already switched

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-24 16:05:28 +01:00
Hauke Mehrtens
ae27cbf98b kernel: generic: Fix skip GRO for foreign MAC address patches
Somewhere in the kernel 4.9 migration process it looks like this patch
was broken. The update should be done when a device is added to the
bridge and when it gets removed, currently it is only done on the remove
path twice which does not make any sense.
I do not have a setup to test this now so this is only compile tested.

Fixes: f791fb4af4 ("kernel: add linux 4.9 support")
Fixes: b3f95490b9 ("kernel: generic: Add kernel 4.14 support")
Reported-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-24 16:05:28 +01:00
Tomasz Moń
9a0cc49089 util-linux: add lscpu package
lscpu is used by lxc-debian template.

Signed-off-by: Tomasz Moń <desowin@gmail.com>
2018-02-24 11:24:20 +01:00
Jakub Tymejczyk
316eb26a3a samba36: fix build (issue #5574)
As indicated in #5574 samba fails to build with linker error due to lack
of talloc_* functions when the packet libtalloc also gets build.

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

Signed-off-by: Jakub Tymejczyk <jakub@tymejczyk.pl>
2018-02-24 11:23:46 +01:00
Hauke Mehrtens
92419ab4c7 iproute2: Add support for ports in xfrm on SCTP
Remove this old patch which prevents showing the xfrm ports for SCTP

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

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-24 10:29:25 +01:00
Felix Fietkau
608c84b96e mt76: update to the latest version, improves performance and fixes tx power issues
62d52e9 mt76: set RX_FLAG_DUP_VALIDATED for A-MPDU reordered packets
5ba5995 mt76x2: rework tx power handling

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

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2018-02-23 19:15:54 +01:00
Felix Fietkau
fb1be20d63 mac80211: sync fast-rx patch with updated version
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-23 13:58:36 +01:00
Felix Fietkau
393661640b mac80211: fix various issues with fast-rx mode
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-23 10:15:23 +01:00
Mathias Kresin
50641a0f9a octeontx: use the generic board detection
Use the generic board detection based on the device tree compatible
string instead of a target specific one.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-23 08:21:50 +01:00
Benjamin Valentin
2d8eeca842 ramips: enable power LED and second uart on GL-MT300N-V2
The device has a second uart accessible via pin headers, so enable it.

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

Signed-off-by: Benjamin Valentin <benjamin.valentin@volatiles.de>
2018-02-23 07:54:29 +01:00
Mathias Kresin
a464d2b960 mediatek: disable missing kernel symbol
This caused v4.14.20 based builds so fail on mediatek.

Fixes: 6112abf186 ("kernel: enable CONFIG_USB_PCI for PCI usb modules").
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-23 07:54:29 +01:00
Mathias Kresin
9e0d808700 apm821xx: nand remove obsolete kernel config symbol
The missing CONFIG_USB_XHCI_PCI dependency on CONFIG_USB_PCI of the
µPD720201 xhci-pci(e) usb 3.0 chip used by the WNDR4700 was fixed with
6112abf186 ("kernel: enable CONFIG_USB_PCI for PCI usb modules").

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

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

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

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-23 07:54:29 +01:00
Piotr Dymacz
f01b394266 uboot-envtools: add support for ALFA Network AWUSFREE1
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 23:40:16 +01:00
Piotr Dymacz
f1c193c27e ramips: add support for ALFA Network AWUSFREE1
ALFA Network AWUSFREE1 is an USB Wi-Fi N300 adapter based on MT7628.

Specification:

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

Flash instruction:

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

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 23:40:11 +01:00
Piotr Dymacz
8c64824576 ar71xx: add support for GainStrong Oolite V5.2
GainStrong Oolite V5.2 is a small (39.5 x 78 mm), dual-band system on
module, based on Qualcomm QCA9531 + QCA9887. All QCA9531 SOC GPIOs are
available on castellated pins.

Specification:

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

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

Flash instruction:

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
907d674910 ar71xx: rework GainStrong devices support
- combine support for Oolite/MiniBox V1.0 in single mach-*.c file
- fix model/board names
- include correct/full vendor name
- drop redundant package and factory image

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
12c7b22e4e ar71xx: base-files: cosmetic cleanups in 04_led_migration
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
338a9fe8ad ar71xx: base-files: drop comment from 02_network
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Sebastian Kinne
950b278c81 ar71xx: add support for AR9331 based Hak5 devices
This adds support for AR9331 based Hak5 penetration testing tools:

- WiFi Pineapple NANO
- LAN Turtle
- Packet Squirrel

WiFi Pineapple NANO specifications:

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

LAN Turtle specifications:

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

Packet Squirrel specifications:

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

Flash instructions for all 3 devices:

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

Signed-off-by: Sebastian Kinne <contact@sebkinne.com>
[squashed commits, combined and reworked mach files, aligned board
naming with general convention, fixed minor issues, tested on real
hardware, reworded commit subject and description]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Matti Laakso
2ea98fc39b ar71xx: fix 5 GHz Wi-Fi on NBG6716
Some NBG6716 do not have ath10k calibration data in flash, only in chip
OTP. To determine if flash has a valid calibration data, the first two
bytes telling the length of the calibration data are checked against the
requested length. If the lengths match, calibration data is valid and
read from flash.

Signed-off-by: Matti Laakso <matti.laakso@outlook.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
22ae9b742b ar71xx: YunCore AP90Q image supports also AP80Q
Vendor released new model (AP80Q) which is identical from hardware point
of view with already supported AP90Q. Include AP80Q in machine name.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
3b8a858d5c uboot-envtools: add support for YunCore T830
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
d6f187f938 ar71xx: add support for YunCore T830
YunCore T830 is a simple N300 router with 5-port FE switch, detachable
antennas and USB 2.0 port.

Specification:

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

Flash instruction:

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

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

2. Then, install OpenWrt:

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
f487133322 uboot-envtools: add support for Samsung WAM250
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
e58e49bdbe ar71xx: add support for Samsung WAM250
Samsung WAM250 is a dual-band (selectable, not simultaneous) wireless
hub, dedicated for Samsung Shape Wireless Audio System. The device is
based on Atheros AR9344. FCC ID: A3LWAM250.

Specification:

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

Flash instruction:

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

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

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

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

Revert to vendor firmware instruction:

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

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
1b0e7a1453 ar71xx: fix COMFAST CF-E375AC support
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
650a5e993b ar71xx: add support for COMFAST CF-E385AC
COMFAST CF-E385AC is an AC2200 ceiling mount AP with PoE support, based
on Qualcomm/Atheros QCA9558 + QCA9984 + QCA8337N.

Specification:

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

Flash instruction:

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

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
29d7c29046 ar71xx: remove unnecessary packages from COMFAST devices
swconfig and uboot-envtools packages are not required by any of the
supported COMFAST devices.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
106a56238f ar71xx: rename COMFAST CF-E355AC to CF-E355AC v1
There are now supported two versions of the CF-E355AC board which differ
in 802.11ac radio chip. Include version number in board, model, image
filename, etc., also for the v1.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
54b1be5f91 ar71xx: image: simplify Embedded Wireless definitions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
a679a45f0e ar71xx: image: generic: use simply expanded variables
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
3bc017fa3c ar71xx: image: generic: clean up trailing whitespace
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Ding Tengfei
e07014e70b ar71xx: add support for COMFAST CF-E355AC v2
COMFAST CF-E355AC v2 is a ceiling mount AP with PoE support, based on
Qualcomm/Atheros QCA9531 + QCA9886.

Short specification:

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

Flash instruction:

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

Signed-off-by: Ding Tengfei <dtf@comfast.cn>
[updated kernel config for both boards]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Sven Eckelmann
b1d57dadb2 ar71xx: disable 40Mhz refclk for QCA953x
The "QCA9531 v2.0 802.11n 2x2 2.4 GHz Premium SOC for WLAN Platforms"
datasheet (80-Y7991-1 Rev. C - October 2014) doesn't specify support for a
40 Mhz reference clock. The register description for "Bootstrap Options"
(page 31) defines following states for the bit 4 (REF_CLK):

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

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

Signed-off-by: Sven Eckelmann <sven@narfation.org>
[refreshed patches]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
c6bd0b4894 uboot-envtools: add support for WHQX E1700AC/E600G/E600GAC v2
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Peng Zhang
d8e6c3f6d9 ar71xx: add support for WHQX E1700AC/E600G/E600GAC v2
WHQX E1700AC v2 is based on Qualcomm QCA9563 + QCA9880 + QCA8334.

Specification:

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

WHQX E600G is based on Qualcomm QCA9531.

Specification:

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

WHQX E600GAC is based on Qualcomm QCA9531 + QCA9887.

Specification:

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

Important notice:

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

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

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

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

1. Configure PC with static IP 192.168.1.xxx(2-254)/24.
2. Connect PC with one of RJ45 ports, press the reset button, power up
   the board and keep button pressed for around 6-7 seconds, until LEDs
   start flashing.
3. Open your browser and enter 192.168.1.1, select "sysupgrade" image
   and click the upgrade button.

Signed-off-by: Peng Zhang <sd20@qxwlan.com>
[reworked: image generation code, mach-* files, commit description,
fixed minor code style issues, rebased on master]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Piotr Dymacz
fc43e7a6e0 ar71xx: fix typos and indentation in Kconfig.openwrt
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-02-22 18:53:22 +01:00
Kyson Lok
bb1df2d75b ar71xx: include vendor name for GL iNet products
This patch include GL.iNet vendor name in the
machine name for GL.iNet vendor products.

Signed-off-by: Kyson Lok <kysonlok@gmail.com>
2018-02-22 18:53:22 +01:00
Kyson Lok
9dbfd8e9df ar71xx: uniform GL iNet products mach name
The mach name of GL AR150 and GL AR300 is inconsistent
with other products.

Signed-off-by: Kyson Lok <kysonlok@gmail.com>
2018-02-22 18:53:21 +01:00
Roman Yeryomin
6b6dc2b3e3 ramips: mt7621: fix usb init
In 4.14 reg-names is required to identify resources.
Otherwise init fails with:

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

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-02-22 17:25:38 +01:00
Felix Fietkau
848a4abf27 ath9k: merge a RCU fix for station tx cleanup
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-22 15:37:59 +01:00
Felix Fietkau
94a3af88f3 octeontx: remove lots of bogus kernel config overrides
Some of them break when building with all modules enabled

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-22 13:12:17 +01:00
Tim Harvey
9f2c769a59 kernel: add missing symbol
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Tim Harvey
d83ce3ff50 octeontx: remove undefs of CONFIG_NET_VENDOR_*
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Tim Harvey
b63b18dffc octeontx: remove unnecessary CONFIG_DEBUG_INFO
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Tim Harvey
ef627cb0f5 octeontx: add fpu support
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Tim Harvey
10280d9e22 octeontx: remove CFLAGS
You should not define CFLAGS for the toolchain as this will also leak
into other targets if they share the same toolchain.

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Tim Harvey
c0470e7917 octeontx: add FAT FS support to kernel
The CN80XX Boot firmware uses an embedded FAT12 filesystem. For some reason
busybox can't mount this unless its enabled static in the kernel.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Tim Harvey
4294b79e0a octeontx: add USB_PCI support
The CN80XX XHCI is supported through PCI

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-22 13:12:06 +01:00
Koen Vandeputte
efb362cd93 imx6: disable dma on uart
When this target got updated to 4.14, this patch got removed to
re-evaluate if it was still needed.

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

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

Boot log:

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

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

Compile/Run-tested on imx6/GW5200

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-22 12:46:49 +01:00
Koen Vandeputte
aad1f11efe kernel: refresh patches
Some fuzz was introduced due to the netfilter-offload series

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-22 12:46:25 +01:00
Felix Fietkau
14a01311f5 kernel: remove kmod-appletalk
This has been obsolete for many years now and has been implicated in a
recent build failure

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-22 12:08:38 +01:00
Felix Fietkau
ecd810d0f5 kernel: fix kernel module packaging errors on imx6
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-22 11:58:00 +01:00
Felix Fietkau
1b13cbc15b grub2: disable building platform code for target utility
It is not used and it was causing a build error with GCC 7.3

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-22 09:30:22 +01:00
Felix Fietkau
7a97588bc6 toolchain/gcc: use version 7.x for x86 by default
This is needed for retpoline support, which mitigates the spectre
attacks.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:57:30 +01:00
Felix Fietkau
65ae02d602 toolchain/gcc: remove unused config symbol
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:57:24 +01:00
Felix Fietkau
9d2a23780e kernel: avoid stripping retpoline flag with CONFIG_MODULE_STRIPPED
Fixes kernel warning when loading modules

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:55:52 +01:00
Felix Fietkau
820f030998 netfilter: add a xt_FLOWOFFLOAD target for NAT/routing offload support
This makes it possible to add an iptables rule that offloads routing/NAT
packet processing to a software fast path. This fast path is much
quicker than running packets through the regular tables/chains.

Requires Linux 4.14

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:12:42 +01:00
Felix Fietkau
1033356442 kernel: backport netfilter NAT offload support to 4.14
This only works with nftables for now, iptables support will be added
later. Includes a number of related upstream nftables improvements to
simplify backporting follow-up changes

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:12:42 +01:00
Felix Fietkau
b7265c59ab kernel: backport a series of netfilter cleanup patches to 4.14
Preparation for backporting upstream NAT offload support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:12:42 +01:00
Felix Fietkau
bc3e0f6052 nftables: update to 0.8.2, backport flowtable support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:12:41 +01:00
Felix Fietkau
8cdc71fc92 libnftnl: backport flowtable support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 20:12:41 +01:00
Felix Fietkau
c8d07575e5 mac80211: add minstrel improvements/fixes
- Simplify debugfs code
- Reduce size
- Fix handling of CCK rates

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 19:29:33 +01:00
Felix Fietkau
981cca12b6 hostapd: add support for sending 802.11v disassoc imminent notifications to clients via ubus
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 19:29:09 +01:00
Felix Fietkau
01b2c0fc49 hostapd: add support for issuing 802.11k beacon measurement requests via ubus
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 19:29:04 +01:00
Felix Fietkau
21bb42fb8a hostapd: expose client 802.11k capabilities via ubus
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 19:28:59 +01:00
Nick Hainke
e2681eb06a hostapd: return with 80211 codes in handle event function
If the auth or assoc request was denied the reason
was always WLAN_STATUS_UNSPECIFIED_FAILURE.
That's why for example the wpa supplicant was always
trying to reconnect to the AP.
Now it's possible to give reasoncodes why the auth
or assoc was denied.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2018-02-21 19:28:56 +01:00
Lorenzo Santina
83b4fa9b3b hostapd: add IEEE 802.11v support
Add Wireless Network Management (IEEE 802.11v)
support to:
- hostapd-full
- wpa_supplicant-full

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

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

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
2018-02-21 19:28:50 +01:00
Felix Fietkau
6b1816f8a3 hostapd: add support for turning on 802.11k/v features via ubus
Neighbor reports are enabled implicitly on use, beacon reports and BSS
transition management need to be enabled explicitly

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 19:28:43 +01:00
Felix Fietkau
526921f20e mac80211: round up tx status headroom
Fixes unaligned access exceptions in mt76 when transmitting beacons

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 19:28:36 +01:00
Felix Fietkau
8a59f9590e ramips: fix MT7621 switch driver IRQ storm on init with linux 4.14
The hardware emits some interrupts while initializing and handling them
can mess up the state or cause infinite loops.
Fix this by disabling IRQs during init and re-enabling them afterwards

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 14:46:45 +01:00
Felix Fietkau
0405205140 kernel: fix MIPS GIC clock source counter width (affects MT7621)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 14:46:45 +01:00
Felix Fietkau
79f9cadd00 ramips: fix MT7621 PCI driver on 4.14
The .map_irq hook can now be called after init.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-21 14:46:45 +01:00
Felix Fietkau
9595a9e8d3 kernel: fix return value of usb_xhci_needs_pci_reset
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-20 22:29:32 +01:00
Felix Fietkau
c38fb58576 kernel: fix disabling common usb quirks on 4.14
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-20 22:19:41 +01:00
John Crispin
3cb38368e2 ubox: fix PKG_MIRROR_HASH
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-20 21:35:14 +01:00
INAGAKI Hiroshi
e1d4aa36b0 ramips: add support for Tama W06
Tama Electric Axing W06 is a 2.4 GHz band 11n router, based on Mediatek
MT7688AN.

Specification:

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

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

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-02-20 19:25:17 +01:00
Mathias Kresin
cb741654e5 ramips: improve GnuBee Personal Cloud Two support
Use the generic board detection for the GnuBee Personal Cloud Two
instead of the target specific one as all recent additions are doing.

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

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

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

Fixes: c60a21532b ("ramips: Add support for the GnuBee Personal Cloud Two")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
c330408ea9 ramips: use generic board detection for D-Link DAP-1522 A1
Use the generic board detection for the D-Link DAP-1522 A1 instead of the
target specific one as all recent additions are doing.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Hauke Mehrtens
6eaf8b3d89 lantiq: kernel 4.14: update dts files
Updated the devicetree source files to make use of the following
upstreamed drivers:

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

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

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

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
f519fea4c6 lantiq: kernel 4.14: cleanup dts files
Move common used parts to dtsi. Add labels to nodes and reference nodes
via labels in dts files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
82ae68be70 lantiq: kernel 4.14: fix usb
On danube the USB0 registers are at 1e101000 similar to all other lantiq
SoCs.

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

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
2368f7cb78 lantiq: kernel 4.14: autoselect matching vr9 rev firmware
Add a custom xrx200 ethernet phy compatible to load the firmware matching
the vr9 revision without specifing an expected revision.

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

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
a48b4ae38b lantiq: kernel 4.14: don't use CPU interrupt controller IPI IRQ domain support
This reverts kernel commit 1eed40043579 ("MIPS: smp-mt: Use CPU interrupt
controller IPI IRQ domain support"). With the patch applied, the kernel
hangs during boot if SMP is active.

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

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

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
cf53f2180c lantiq: kernel 4.14: select MFD SYSCON for ase
Enable syscon to use it for the RCU MFD on Amazon SE as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Hauke Mehrtens
f1d84023cb lantiq: kernel 4.14: update patches and config
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Hauke Mehrtens
5eeaba31b8 lantiq: kernel 4.14: copy patches, config and dts files
This just copies the patches, configuration and dts files into the
directories hich are used for kernel 4.14.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-20 19:25:17 +01:00
Hauke Mehrtens
73ba5e11f7 lantiq: fix lantiq applications kernel 4.14 compatiblity
This is fixing multiple compile problems with kernel 4.14 and updates the
code to take care of changes introduced between kernel 4.9 and 4.14.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
f8a6987cd1 lantiq: make dts files and kernel config kernel version specific
Move the devicetree source files to a kernel specific directory in
preparation of adding kernel 4.14 support.

Rename the subtarget kernel config files to match a specific kernel
version.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
627a28eb09 lantiq: rename gphy firmware
Rename the gphy firmware to match the name requested by kernel 4.14 and
update the devicetree source files to use the new name.

Update the u-boot lantiq Makefile to be compatible with the new names as
well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
6112abf186 kernel: enable CONFIG_USB_PCI for PCI usb modules
With upstream commit 2c93e790e825 ("usb: add CONFIG_USB_PCI for system
have both PCI HW and non-PCI based USB HW") the CONFIG_USB_PCI was
introduced.

The option is disabled by default in our generic kernel 4.14 config, hence
we need to set the option for all related kernel modules.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Mathias Kresin
04cb1e0fd2 ppp: fix build with kernel 4.14.9+
With a9772285a724 ("linux/compiler.h: Split into compiler.h and
compiler_types.h") compiler.h was refactored and most its content was
moved to compiler_types.h. Both files are required to build ppp-mod-pppoa.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-20 19:25:17 +01:00
Hans Dedecker
97c27f01be odhcpd: fix interop with wide DHCPv6 client (FS#1377)
96033e9 dhcpv6-ia: don't always send reconf accept option (FS#1377)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-20 16:30:15 +01:00
Zoltan HERPAI
d2ac070552 modules: iio-mxs-lradc: build on mxs only
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-20 15:03:12 +01:00
Zoltan HERPAI
5360441d8f modules: gpio-mcp23s08: fully depend on i2c-core
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-20 14:13:20 +01:00
Michael Heimpold
240e1e3fe4 mxs: drop support for 4.9
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-02-20 13:25:00 +01:00
Michael Heimpold
42845f4550 kernel: add kmod-iio-mxs-lradc
This adds support for the Freescale i.MX23/28 SoC's Low-Resolution ADC.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-02-20 13:24:57 +01:00
Michael Heimpold
4812a3d1b5 mxs: enable LRADC driver
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-02-20 13:24:52 +01:00
Zoltan HERPAI
0a2494545e mxs: bump to use 4.14 by default
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-20 13:24:46 +01:00
Zoltan HERPAI
1bbd66c4fc mxs: add support for 4.14
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-20 13:24:43 +01:00
John Crispin
ba5f700d7f kernel: ar83xx: remove stray leading space
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-20 10:33:47 +01:00
Tan Hong Hui
1263d07b89 kernel: ar83xx: add support to configure per port VLAN priority
Add support to allow for per switch port VLAN priority (PCP) bits
for the ar8327/8337 chip using the swconfig utility.

Tested on Netgear R7800

Signed-off-by: Tan Hong Hui <hhtan72@yahoo.com>
2018-02-20 10:33:34 +01:00
Koen Vandeputte
e16cc7a8c8 uqmi: ensure CID is a numeric value before proceeding
The current implementation only checked if uqmi itself executed
correctly which is also the case when the returned value is actually
an error.

Rework this, checking that CID is a numeric value, which can only
be true if uqmi itself also executed correctly.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-20 08:33:07 +01:00
Koen Vandeputte
2f85985da2 kernel: backport pcie enumeration fix to kernel 4.9
This issue is also present in kernel 4.9 starting from 4.9.71
Adapted the patch, as the fixed function is in another location here.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-20 08:32:33 +01:00
Stijn Tintel
138c76332b build: add --force option to gzip in Build/gzip
When using pigz, a parallel gzip implementation, the gzip step in the
image build for some targets fails, because the image filename already
has the .gz extension. This results in an emtpy image file. Fix this by
adding the --force option to gzip in the Build/gzip macro.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Tested-by: Martin Schleier <drahemmaps@gmx.net>
2018-02-19 23:54:38 +01:00
Stijn Tintel
858ff4f3e1 Revert "brcm2708: fix sdcard image"
This reverts commit 6c2e1ff80f.

GNU gzip does not fail when the image filename already contains the .gz
extension, this is a problem specific to pigz. Revert the commit, as we
now gzip the image twice.

Reported-by: Martin Schleier <drahemmaps@gmx.net>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-19 23:52:45 +01:00
Rafał Miłecki
8651f1149d kernel: backport patches simplifying mtd_device_parse_register code
These 2 patches were recently queued for 4.17.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-02-19 16:01:44 +01:00
Rafał Miłecki
eefe02b23f kernel: order mtd backported patches by kernel release
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-02-19 15:28:47 +01:00
Tim Harvey
1188f35a98 imx6: remove support for 4.9
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-19 09:32:43 +01:00
Tim Harvey
8f9668f46c imx6: switch to Linux 4.14
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-19 09:32:43 +01:00
Tim Harvey
3b2708f09c imx6: add support for Linux 4.14
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-19 09:32:43 +01:00
Tim Harvey
3282e7189f kernel: backport dwc pci enumeration fix
Backport of:  http://patchwork.ozlabs.org/patch/860701/

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-19 09:32:43 +01:00
John Crispin
cc8921162f kernel: add missing symbols for v4.14
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-19 09:32:43 +01:00
Kevin Darbyshire-Bryant
16245a5d8e dnsmasq: bump to 2.79rc1
1721453 Remove special handling of A-for-A queries.
499d8dd Fix boundary for test introduced in 3e3f1029c9ec6c63e430ff51063a6301d4b2262
6f1cbfd Fix debian/readme typo.
55ecde7 Inotify: Ignore backup files created by editors
6b54d69 Make failure to chown() pidfile a warning.
246a31c Change ownership of pid file, to keep systemd happy.
83e4b73 Remove confusion between --user and --script-user.
6340ca7 Tweak heuristic for initial DNSSEC memory allocation.
baf553d Default min-port to 1024 to avoid reserved ports.
486bcd5 Simplify and correct bindtodevice().
be9a74d Close Debian bug for CVE-2017-15107.
ffcbc0f Example config typo fixes.
a969ba6 Special case NSEC processing for root DS record, to avoid spurious BOGUS.
f178172 Add homepage to Debian control file.
cd7df61 Fix DNSSEC validation errors introduced in 4fe6744a220eddd3f1749b40cac3dfc510787de6
c1a4e25 Try to be a little more clever at falling back to smaller DNS packet sizes.
4fe6744 DNSSEC fix for wildcard NSEC records. CVE-2017-15107 applies.
3bd4c47 Remove limit on length of command-line options.
98196c4 Typo fix.
22cd860  Allow more than one --bridge-interface option to refer to an interface.
3c973ad Use SIGINT (instead of overloading SIGHUP) to turn on DNSSEC time validation.
faaf306 Spelling fixes.
c7e6aea Change references to gPXE to iPXE. Development of EtherBoot gPXE was always development of iPXE core developer Michael Brown.
e541245 Handle duplicate RRs in DNSSEC validation.
84a01be Bump year in Debian copyright notice.
d1ced3a Update copyrights to 2018.
a6cee69 Fix exit code from dhcp_release6.
0039920 Severely fix code formating of contrib/lease-tools/dhcp_release6.c
39d8550 Run Debian startup regex in "C" locale.
ef3d137 Fix infinite retries in strict-order mode.
8c707e1 Make 373e91738929a3d416e6292e65824184ba8428a6 compile without DNSSEC.
373e917 Fix a6004d7f17687ac2455f724d0b57098c413f128d to cope with >256 RRs in answer section.
74f0f9a Commment language tweaks.
ed6bdb0 Man page typos.
c88af04 Modify doc.html to mention git-over-http is now available.
ae0187d Fix trust-anchor regexp in Debian init script.
0c50e3d Bump version in Debian package.
075366a Open inotify socket only when used.
8e8b2d6 Release notes update.
087eb76 Always return a SERVFAIL response to DNS queries with RD=0.
ebedcba Typo in printf format string added in 22dee512f3738f87539a79aeb52b9e670b3bd104
0954a97 Remove RSA/MD5 DNSSEC algorithm.
b77efc1 Tidy DNSSEC algorithm table use.
3b0cb34 Fix manpage which said ZSK but meant KSK.
aa6f832 Add a few DNS RRs to the table.
ad9c6f0 Add support for Ed25519 DNSSEC signature algorithm.
a6004d7 Fix caching logic for validated answers.
c366717 Tidy up add_resource_record() buffer size checks.
22dee51 Log DNS server max packet size reduction.
6fd5d79 Fix logic on EDNS0 headers.
9d6918d Use IP[V6]_UNICAST_IF socket option instead of SO_BINDTODEVICE for DNS.
a49c5c2 Fix search_servers() segfault with DNSSEC.
30858e3 Spaces in CNAME options break parsing.

Refresh patches.
Remove upstreamed patches:
	250-Fix-infinite-retries-in-strict-order-mode.patch
	260-dnssec-SIGINT.patch
	270-dnssec-wildcards.patch

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-02-18 22:10:17 +01:00
Hauke Mehrtens
47c5415023 brcm2708: Fix compile after adding kernel 4.9.82
Fixes: f621b53951 ("kernel: bump 4.9 to 4.9.82")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-18 19:52:06 +01:00
Hauke Mehrtens
b377a908bf x86: Use kernel 4.14 by default
Support for kernel 4.14 was added 2 months ago, make it now the default
kernel to use for the x86 target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Stijn Segers <francesco.borromini@inventati.org>
2018-02-18 19:51:58 +01:00
Stijn Tintel
ae42e7c01b kernel: add missing config symbols
They were introduced for arm64 in 4.14.20.

Fixes: 88ba41453d ("kernel: bump 4.14 to 4.14.20")

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-18 14:34:00 +01:00
John Crispin
761d45eb87 kernel: add missing symbol
this caused v4.14.20 based builds so fail on aarch64

Signed-off-by: John Crispin <john@phrozen.org>
2018-02-18 09:21:12 +01:00
Stijn Tintel
f621b53951 kernel: bump 4.9 to 4.9.82
Refresh patches.
Remove upstreamed patches:
- ar7/002-MIPS-AR7-ensure-the-port-type-s-FCR-value-is-used.patch
- backport/040-crypto-fix-typo-in-KPP-dependency-of-CRYPTO_ECDH.patch
Remove layerscape/819-Revert-dmaengine-dmatest-move-callback-wait-queue-to.patch,
it is superseded by upstream commit 297c7cc4b5651b174a62925b6c961085f04979fd.
Remove pending/650-pppoe_header_pad.patch, it is superseded by
upstream commit 1bd21b158e07e0b8c5a2ce832305a0ebfe42c480.
Update patches that no longer apply:
- ar71xx/004-register_gpio_driver_earlier.patch
- hack/204-module_strip.patch
- pending/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch

Fixes CVE-2017-8824.

Compile-tested: ar71xx.
Runtime-tested: ar71xx.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-18 02:59:57 +01:00
Stijn Tintel
1c308bbbf5 dropbear: add option to set receive window size
The default receive window size in dropbear is hardcoded to 24576 byte
to limit memory usage. This value was chosen for 100Mbps networks, and
limits the throughput of scp on faster networks. It also severely limits
scp throughput on high-latency links.

Add an option to set the receive window size so that people can improve
performance without having to recompile dropbear.

Setting the window size to the highest value supported by dropbear
improves throughput from my build machine to an APU2 on the same LAN
from 7MB/s to 7.9MB/s, and to an APU2 over a link with ~65ms latency
from 320KB/s to 7.5MB/s.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-18 02:59:57 +01:00
Stijn Tintel
88ba41453d kernel: bump 4.14 to 4.14.20
Refresh patches.
Remove upstreamed patches:
- backport/080-v4.15-0001-arch-define-weak-abort.patch
- backport/081-v4.15-0002-kernel-exit.c-export-abort-to-modules.patch
Update patch that no longer applies:
pending/493-ubi-set-ROOT_DEV-to-ubiblock-rootfs-if-unset.patch

Fixes CVE-2017-8824.

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

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-18 02:59:48 +01:00
Stijn Tintel
6c2e1ff80f brcm2708: fix sdcard image
The gzip step in the sdcard image build fails because the image filename
already has the gzip extension. This results in an empty image file, to
which the metadata is finally appended.

Remove the .gz extension from the image filename to fix this.

Fixes: e79b096ee1 ("brcm2708: convert to metadata")

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-17 21:00:49 +01:00
Philip Prindeville
81ccf24c09 iperf3: update to 3.4
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-17 13:48:02 +01:00
Evgeniy Didin
4cedd1ddb3 archs38: add HSDK board to network configure scripts
In the initial patch which adds HSDK board there were no update
of network configuration scripts. Without it by default static IP
is set for br-lan and there is no access to internet.
This patch fixes the issue.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
CC: Alexey Brodkin <abrodkin@synopsys.com>
CC: Hauke Mehrtens <hauke@hauke-m.de>
CC: John Crispin <john@phrozen.org>
2018-02-17 12:29:55 +01:00
Russell Senior
42b94a74e9 openvpn: fix interface with mbedtls_sha256
Between mbedtls 2.6.0 and 2.7.0, the void returning mbedtls_MODULE* functions
were deprecated in favor of functions returning an int error code.  Use
the new function mbedtls_sha256_ret().

Signed-off-by: Russell Senior <russell@personaltelco.net>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-17 12:29:33 +01:00
Russell Senior
e05a6018fc curl: fix interface with mbedtls_sha256
Between mbedtls 2.6.0 and 2.7.0, the void returning mbedtls_MODULE* functions
were deprecated in favor of functions returning an int error code.  Use
the new function mbedtls_sha256_ret().

Signed-off-by: Russell Senior <russell@personaltelco.net>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-17 12:29:23 +01:00
Hauke Mehrtens
6be73c07db sunxi: Add Xunlong Orange Pi Zero Plus
This is based on a patch from armbian:
https://github.com/armbian/build/blob/master/patch/kernel/sunxi-next/sunxi-add-orangepi-zero-plus.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-17 01:15:25 +01:00
Hauke Mehrtens
718e5cd1cf uboot-sunxi: Add Xunlong Orange Pi Zero Plus
This is based on a patch from armbian:
https://github.com/armbian/build/blob/master/patch/u-boot/u-boot-sunxi/add-orangepi-zeroplus.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-17 01:15:25 +01:00
Hauke Mehrtens
ef73ebbfe2 sunxi: Add Realtek PHY driver or ARM64 devices
The Orange Pi Zero Plus uses a RTL8211E, add the driver for this PHY.
This is probably used on more boards with a Allwinner SoC.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-17 01:15:24 +01:00
Antony Antony
3c24a1d423 sunxi: add support for NanoPi NEO Plus2 board
arm64: allwinner: h5: NanoPi NEO Plus2 DT support
Add initial DT for NanoPi NEO Plus2 by FriendlyARM
    - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU
    - 1 GB DDR3 RAM
    - 8GB eMMC flash (Samsung KLM8G1WEPD-B031)
    - micro SD card slot
    - Gigabit Ethernet (external RTL8211E-VB-CG chip)
    - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module)
    - 2x USB 2.0 host ports & 2x USB via headers

Signed-off-by: Antony Antony <antony@phenome.org>
2018-02-17 01:15:24 +01:00
Antony Antony
b7a1aa4df2 sunxi: add kernel DT for NanoPi NEO Plus2 board
Linux Kernel upstream commit d73413058

Signed-off-by: Antony Antony <antony@phenome.org>
2018-02-17 01:15:24 +01:00
Antony Antony
6247929d66 uboot-sunxi: add u-boot DT for NanoPi NEO Plus2 board
u-boot upstream commit 6130b1f6bc23

Signed-off-by: Antony Antony <antony@phenome.org>
2018-02-17 01:15:24 +01:00
Hauke Mehrtens
c971b4eeea uboot-sunxi: dts: Update orange Pi R1 integration
This syncs the Orange Pi R1 device tree files with the one from the
upstream kernel and also uses the default configuration from the Orange
Pi Zero.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-17 01:15:24 +01:00
Mathias Kresin
7a6de6d77a ar71xx: fix sysupgrade syntax error
Fix syntax error introduced with 188328111b ("treewide: move
nand_do_upgrade call to platform_do_upgrade").

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-16 22:56:56 +01:00
Hauke Mehrtens
9f5a4f8a42 mbedtls: activate deprecated functions
Some functions used by a lot of other software was renamed and is only
active when deprecated functions are allowed, deactivate the removal of
deprecated functions for now.

Fixes: 75c5ab4caf ("mbedtls: update to version 2.7.0")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-16 20:09:34 +01:00
Jasper Scholte
7da6480700 gpio-nct5104d: Add support for new chip ID
The PC Engines APU3b has a new nct5104b version with chip ID 0xc453.
This adds support for that version.

Signed-off-by: Jasper Scholte <NightNL@outlook.com>
2018-02-16 14:46:03 +01:00
Mathias Kresin
188328111b treewide: move nand_do_upgrade call to platform_do_upgrade
Calling nand_do_upgrade() from platform_pre_upgrade() was deprecated
with 30f61a34b4 ("base-files: always use staged sysupgrade").

Update the platform upgrade code to use platform_do_upgrade() for NAND
images as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-16 14:44:02 +01:00
Mathias Kresin
c4ac02ffca treewide: remove obsolete sysupgrade watchdog kill
The watchdog kill command was meant for busybox watchdog. Busybox watchdog
was replaced by the procd watchdog mid 2013 with commit df7ce9301a
("busybox: disable the watchdog utility by default"), which makes the kill
command obsolete since quite some time.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-02-16 14:44:02 +01:00
Zoltan HERPAI
eae6003174 sunxi: switch to kernel 4.14
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-16 12:20:39 +01:00
Zoltan HERPAI
94ef87f49d Revert "uboot-sunxi: bump to 2017.11"
This reverts commit 805f756d6e.

Move back to 2017.07 until we move sunxi to GCC7.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-16 12:17:15 +01:00
Zoltan HERPAI
4bc1ebbd88 Revert "uboot-sunxi: refresh patches"
This reverts commit f142de5f44.

Revert until we can move to 2017.11

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-16 11:40:01 +01:00
Zoltan HERPAI
616f883a20 Revert "uboot-sunxi: fix build by adding comparabilities for old dtc"
This reverts commit ef0416666f.

Revert until we can move to 2017.11

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-16 11:39:13 +01:00
John Crispin
6873cf4f63 kernel: add missing symbols
These cause mediatek arm to fail full builds

Signed-off-by: John Crispin <john@phrozen.org>
2018-02-16 10:02:08 +01:00
Hauke Mehrtens
95745516a2 nftables: update to version 0.8.2
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-15 23:31:23 +01:00
Hauke Mehrtens
e7c179326a iproute2: update to version 4.15.0
The musl compatibility patches are now included in the upstream version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-15 23:31:23 +01:00
Hauke Mehrtens
75c5ab4caf mbedtls: update to version 2.7.0
This fixes the following security problems:
* CVE-2018-0488: Risk of remote code execution when truncated HMAC is enabled
* CVE-2018-0487: Risk of remote code execution when verifying RSASSA-PSS signatures

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-15 21:58:47 +01:00
Roman Yeryomin
f4e5880d0f ramips: preliminary support for 4.14
- removed upstreamed patches
- 0901-spansion_nand_id_fix.patch is disabled, not clear if it's needed

Signed-off-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-15 10:46:39 +01:00
Daniel Golle
a3b9cbafc3 iwinfo: update to latest git HEAD
223e09b add support for expected throughput

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-02-15 04:57:38 +01:00
Jo-Philipp Wich
dc7a1e8555 ramips: fix reporting effective VLAN ID on MT7621 switches
On MT7621, the REG_ESW_VLAN_VTIM reads are undefined, causing swconfig
to always report `vid: 0` in swconfig show output.

Since a 4K VLAN table is used on this platform, the VLAN ID always
correponds to the actual VLAN table index so provide a specific MT7621
implementation of the get_vid callback which returns the table index
as VLAN ID.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-14 16:43:30 +01:00
Jo-Philipp Wich
341b1427fc ramips: properly map pvid for vlans with remapped vid on mt7530/762x switches
Currently, untagged port primary vlan IDs are set to the VLAN table index,
and not the actual VLAN ID, breaking configurations with IDs deviating from
the VLAN index.

Fix the issue by resolving the per-port pvid property to the target VLAN ID
value before committing to the hardware.

Fixes FS#991, FS#1147, FS#1341

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-14 16:43:30 +01:00
Jo-Philipp Wich
bb4002c79d ramips: don't clobber vlans with remapped vid on mt7530/762x switches
Avoid overwriting vlan entries with remapped vid in later iterations of
the vlan enumeration loop of mt7530_apply_config().

Fix the problem by refactoring the code to first reset the entire table,
then reprogram only vlans with members to prevent overwriting configured
vlans with unconfigured ones.

Fixes FS#1147, FS#1341

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-14 16:43:29 +01:00
Jo-Philipp Wich
b9aca834e8 at91: fix image building with CONFIG_TARGET_MULTI_PROFILE
The current image build code has a number of race conditions and interface
contract violations in the custom image build steps:

 - Build/install-zImage, solely used by at91, relies on $(PROFILE_SANITIZED)
   which is not available when building with CONFIG_TARGET_MULTI_PROFILE

 - Build/at91-sdcard, which may run concurrently, creates scratch files at
   fixed locations and manipulates target files directly which can lead
   to file corruption and other unexpected failures

Rename the install-zImage macro to at91-install-zImage and move it to the
at91 image Makefile since this target is the sole user. Also utilize "$@"
as output file name and switch the usage of $(PROFILE_SANITIZED) to
$(DEVICE_NAME) in order to fix naming under multi profile builds.

Fix the at91-sdcard macro to construct scratch file paths relative to "$@",
which is guaranteed to be unique and store the final artifact output in "$@"
as well, instead of inside $(BIN_DIR). The generic image build code takes
care of moving a build steps "$@" output to the final destination in a
concurrency-safe manner.

Finally remove the broken install-zImage from the generic image-commands
Makefile.

Fixes: d7a679a036 ("at91: Install zImage.")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-14 15:47:16 +01:00
John Crispin
7762c07c88 mediatek: bump to v4.14
This drops support for all the !emmc EVB and adds banannaPi-R2
Also drop mtkhnat until the nftables offoad driver is ready

Signed-off-by: John Crispin <john@phrozen.org>
2018-02-14 11:27:50 +01:00
Dongming Han
04d3308b62 ipq806x: add support for GL.iNet GL-B1300
This patch adds support for GL.iNet GL-B1300

Specification:
- SOC:        IPQ4028 / QCA Dakota
- RAM:        256 MiB
- FLASH:      32 MiB
- ETH:        Qualcomm Atheros QCA8075 Gigabit Switch (2 x LAN, 1 x WAN)
- USB:        1 x 3.0 (via Synopsys DesignWare DWC3 controller in the SoC)
- WLAN1:      Qualcomm Atheros QCA4028 2.4GHz 802.11bgn 2:2x2
- WLAN2:      Qualcomm Atheros QCA4028 5GHz 802.11a/n/ac 2:2x2
- INPUT:      one reset and one WPS button
- LEDS:       3 leds: Power, WIFI(only for 2.4G currently), and one reserved
- UART:       1 x UART on PCB (3.3V, TX, RX, GND) - 115200 8N1

Installation:
Method 1:
- use serial port to stop uboot
- uboot command: run lf
Method 2:
- push down reset button and power on
- wait until three leds constantly on then release
- upgrade by uboot web at http://192.168.1.1
Note:
- the sysupgrade image need to be renamed to lede-gl-b1300.bin in both method.
- the sysupgrade image can be automatically downloaded if tftp server at
  192.168.1.2 have that file.
- the wifi led will be flashing when writing image.

Signed-off-by: Dongming Han <handongming@gl-inet.com>
2018-02-14 09:40:32 +01:00
John Crispin
88a41074e8 ubox: update to latest git HEAD
128bc35 logread: fix reconnect logd logic
66347ec logread: move the code setting up the request blob out of the main loop
975a258 logread: move output connection setup code out of main loop
b81bea7 logread: cleanup pid file handling
d73e7d2 ubox: Replace strerror(errno) with %m format.

Signed-off-by: John Crispin <john@phrozen.org>
2018-02-14 09:30:07 +01:00
Evgeniy Didin
d55a05fc9e archs38: add HSDK board
Synopsys DesignWare HSDK (which stands for ARC HS
Development Kit) is the latest and greatest development
platform that sports quad-core ARC HS38 in real silicon.

Most noticeable features of the board are:
 * Quad-core ARC HS38 CPU running at 1GHz
 * 4Gb of DDR
 * Built-in Vivante GPU (well supported via open source
   Etnaviv drivers)
 * Built-in Wi-Fi/Bluetooth module (RedPine RS-9113)

And as usual we have:
 * [micro] SD-card slot
 * 2 USB 2.0 ports
 * 1Gbit Ethernet port
 * Built-in Digilent JTAG probe
 * Serial port accessible via micro-USB port

For more information about HSDK board visit:
https://www.synopsys.com/dw/ipdir.php?ds=arc-hs-development-kit

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
CC: Alexey Brodkin <abrodkin@synopsys.com>
CC: Hauke Mehrtens <hauke@hauke-m.de>
CC: John Crispin <john@phrozen.org>
2018-02-14 07:54:24 +01:00
Evgeniy Didin
0a1a672e95 archs38: switch to kmod-usb2
We have managed to get USB 2.0 working good enough
on all archs38 platforms so we're ready to switch
to much faster USB 2.0.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
CC: Alexey Brodkin <abrodkin@synopsys.com>
CC: Hauke Mehrtens <hauke@hauke-m.de>
CC: John Crispin <john@phrozen.org>
2018-02-14 07:54:24 +01:00
Kevin Darbyshire-Bryant
0b4e3b1bed generic: swconfig: reduce lock duration on sysfs files
sysfs attributes 'port_mask' & 'speed_mask' held locks whilst doing
mundane tasks such as sprintf.  Refactor code to reduce length of time
locks are held unnecessarily.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-02-14 07:54:24 +01:00
Kevin Darbyshire-Bryant
eb8fbc4318 generic: swconfig: add mode led attribute
Add sysfs 'mode' attribute to swconfig controlled LEDs.

swconfig 'link state' LEDs blink in the presence of port traffic.  This
behaviour becomes more obvious as switches start to support
get_port_stats() e.g. commits 0369e35891,
3056d09b40,
4ddbc43cc1,
4d8a66d934.

This blinking can be confusing/distracting if the switch has other LEDs
used to indicate traffic.  Provide a 'mode' sysfs attribute that
controls the blink on traffic behaviour.

mode - either "none" (LED is off) or a space separated list of one or more:

link: LED's normal state reflects whether the link is up (has carrier) or not
tx:   LED blinks on transmitted data
rx:   LED blinks on receive data

Note that 'link' considers any port speed mask that may be applicable.
e.g. if an LED is configured to indicate 1Gbit link speed and mode is
set to 'link rx tx' but the port is connected at 100Mbit then the LED
will not light or blink. A mode of 'tx rx' will blink in the presence of
traffic only if the port matches the rate (if configured)
This maintains compatibility with existing behaviour.

Attribute is 'link tx rx' by default for backwards compatible behaviour.

Many thanks to Thibaut Varene for providing a more sensible led_event
routine after I had mangled the original, and other coding style hints.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Acked-by: Thibaut VARENE <hacks@slashdirt.org>
2018-02-14 07:54:24 +01:00
Hauke Mehrtens
0b8629c0e3 mwlwifi: downgrade to version 10.3.4.0-20180118
Some people reported problems with the current development version, so
go back to the latests more or less release.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 23:21:12 +01:00
Hauke Mehrtens
de0d0c68c4 mwlwifi: fix compile problem with kernel 4.14
vfs_write() is not exported on kernel 4.14 any more and kernel_write()
should be used instead.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:31:00 +01:00
Hauke Mehrtens
8db89c4485 mwlwifi: use PKG_SOURCE_DATE instead of version
Using PKG_SOURCE_DATE instead of PKG_VERSION will make the build system
generate the version based on the date and the git hash. This way the
tar file name changes when the git hash changes and this avoids problems
when someone forgets to change the version, but changes the git hash.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:31:00 +01:00
Chris Breuer
eab378ef17 mwlwifi: Update to latest commit 20180208
Changes since last merge into OpenWrt since 2017-12-14:
 - Added debugfs file tx_hist.
 - Added debugfs file fixed_rate.
 - Added debugfs file ba_hist.
 - Modified the way to establish BA stream.
 - Added code to control BF type.
 - Added functions to check/dump dhcp packet.
 - Upgrade 88W8964 firmware to 9.3.2.4.
 - Added debugfs file coredump.
 - Corrected the way to transmit multicast packets.
 - Change driver version to 10.3.4.0-20180118.
 - Corrected the way to get qos control.
 - Assigned broadcast dhcpoffer to another queue.
 - Separated broadcast and multicast packets. Bump to latest commit 20180206

Signed-off-by: Chris Breuer <github@chrisbreuer.de>
2018-02-13 22:31:00 +01:00
Hauke Mehrtens
0bd5aa89fc mvebu: Migrate uci config to new PCIe path
The name of the PCIe controller node in device tree changed between
kernel 4.9 and kernel 4.14. Migrate the configuration when an update
from kernel 4.9 to 4.14 or back is done to the new name to make
the existing wifi configuration compatible with the new names.

This replaces the "pcie-controller" part with "pcie" on all nodes if the
file exists in sys fs.

This is not done in the uci-defualts, because they are getting executed
to late in the boot process. The kernel module gets loaded before the
uci-defaults scripts are executed. When the mwlwifi driver gets loaded
it will trigger an event via hotplug to detect new devices and as the
paths are not in the uci configuration they will be added again.
When the migration is done before the script will detect that they are
already there.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:30:59 +01:00
Hauke Mehrtens
4ccad92229 mvebu: Add support for kernel 4.14
Add support for kernel 4.14 to the mvebu target.

This also replaces the old sfp and phylink patches with new versions
from Russell's clearfog-4.13 branch
http://git.arm.linux.org.uk/cgit/linux-arm.git/log/?h=clearfog-4.13

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:29:56 +01:00
Hauke Mehrtens
47106f55e0 mvebu: move files to files-4.9 and files-4.4 folder
This is needed to prevent copying it into kernel 4.14.
These device tree files are already integrated into kernel 4.14 and we
would like to use the upstream versions only.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:24:56 +01:00
Hauke Mehrtens
80771af83d mac80211: move wifi detect hotplug script to later
Make it easily possible to add a custom script in front of this hotplug
script which adds new devices. This is needed for the mvebu target in
which we want to migrate the old configuration before new devices are
getting detected.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:24:56 +01:00
Hauke Mehrtens
87b35c16ad kernel: ubifs: create use file system format 4 by default
Instead of creating an ubifs file system with format version 5 by
default on empty UBI volumes use the older format 4 by default. This
will make it possible to mount these file systems also on older kernel
versions.

When a user wants to do a sysupgrade from kernel 4.14 to kernel 4.9 the
old kernel has to read the file system created by the more recent kernel
which currently does not work for ubifs.

This fixes the problem by creating file systems which are compatible
with older kernel versions by default.
Kernel 4.14 will still be able to read and write UBI FS file system
version 5, it will just not be used when a ubifs partition is created
implicitly on an empty UBI volume.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:24:56 +01:00
Hauke Mehrtens
970cbfc307 kernel: Add missing config options
These were found when compiling the new octeontx target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-13 22:24:02 +01:00
Jonas Gorski
0f063f8ac7 brcm63xx: drop root parameter from cmdline
The root= parameter overrides the automatic rootfs detection by partition
name, so drop it. Fixes boot from flash after renumeration changes of
partitions due to parser changes.

Fixes FS#1350.

Fixes: a27d59bb42 ("brcm63xx: switch to new partition layout specification")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-13 13:17:26 +01:00
Philip Prindeville
ca32373c95 target.mk: let profile remove from DEFAULT_PACKAGES
In a profile, specifying -pkg in the list of PACKAGES will suppress
it even if it appears in the target's DEFAULT_PACKAGES list.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-13 13:02:03 +01:00
Stefan Lippers-Hollmann
4baffa02ce ipq806x: switch to full dual-boot for the nbg6817 sysupgrade support
Instead of writing to the currently booted partition set, this
implements full dual-boot support for sysupgrade by always writing to
the other, currently inactive, partition set and toggling the dualflag
after a successful flash.

The currently active/ booted partition set is determined by parsing
/proc/cmdline for its rootfs parameter (supplied by the DTS), instead
of reading from the 0:DUAL_FLAG mtd, in order to prevent (potentially)
bricking both partition sets.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-02-13 12:45:00 +01:00
Stefan Lippers-Hollmann
42fe7b3bbe ipq806x: request the first free loop device dynamically for the nbg6817 sysupgrade
Instead of hardcoding /dev/loop0, it's safer to query for the first
free loop device and assign that dynamically. While /dev/loop0 is a
reasonable assumption immediately following "losetup --detach-all",
detaching the mounted overlay is no longer strictly necessary once
dual-boot support has been added for the nbg6817.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-02-13 12:45:00 +01:00
Stefan Lippers-Hollmann
b36cf0be30 ipq806x: use absolute the device path in $kernel for the nbg6817 sysupgrade
Harmonize the variable usage for $kernel and $rootfs to always contain
the full device path, instead of just its basename.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2018-02-13 12:45:00 +01:00
Luis Araneda
887925b098 ipq806x: support new location of USB PHY kernel module
PHY drivers were grouped into vendor specific directories
by upstream commit 0b56e9a7e8358e59b21d8a425e463072bfae523c

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-02-13 11:56:40 +01:00
Lucian Cristian
7f61924dcb i2c.mk: sort kernel modules
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-02-13 11:55:21 +01:00
Lucian Cristian
f646188f77 hwmon.mk: sort kernel modules
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-02-13 11:54:42 +01:00
Lucian Cristian
0b004ccec3 can.mk: sort modules
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-02-13 11:53:49 +01:00
Lucian Cristian
d1aae1a054 crypto.mk: sort kernel modules
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-02-13 11:51:46 +01:00
Lucian Cristian
de62386b2d fs.mk: sort kernel modules
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-02-13 11:49:26 +01:00
Lucian Cristian
c2d3047f25 firewire.mk: sort kernel modules
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2018-02-13 11:48:49 +01:00
Alif M. Ahmad
02a1a8af95 build: cleanup leftover qconf files
``make xconfig`` toplevel target will invoke ``make qconf`` inside
./scripts/config directory, which results a ``qconf`` executable.

This commit removes leftover ``qconf`` executable during ``make
config-clean``.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2018-02-13 11:35:35 +01:00
Julien Dusser
8dd455e3c4 ar71xx: add more registers to ar71x_regs.h
Add more registers and flags to ar71x_regs.h for QCA955x and QCA956x
SoCs. Values come from Qualcomm Atheros u-boot code.

Patches can be merged into
622-MIPS-ath79-add-more-register-defines-for-QCA956x-SoC.patch

Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2018-02-13 11:20:58 +01:00
George Hopkins
13f9e40602 ramips: add support for D-Link DAP-1522 A1
D-Link DAP-1522 is a wireless bridge/access point with 4 LAN
ports and a dual-band wireless chipset.

Specifications:
- Ralink RT2880
- 32 MB of RAM
- 4 MB of Flash
- 4x 10/100/1000 Mbps Ethernet (RTL8366SR)
- 802.11abgn (RT2850)

Flash Instructions:
1. Download lede-ramips-rt288x-dap-1522-a1-squashfs-factory.bin
2. Open the web interface and upload the image

Signed-off-by: George Hopkins <george-hopkins@null.net>
2018-02-13 11:18:07 +01:00
George Hopkins
5203355062 mtd: add fixwrg command
Add a command to fix WRG headers, based on wrgg.c.

Signed-off-by: George Hopkins <george-hopkins@null.net>
2018-02-13 11:16:49 +01:00
George Hopkins
5c7a58764e kernel: mtdsplit: split by WRG header
Support splitting WRG images, which can be found in older
D-Link devices.

Signed-off-by: George Hopkins <george-hopkins@null.net>
2018-02-13 11:16:49 +01:00
John Crispin
6e7357097f kernel: add missing symbol
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-13 10:55:46 +01:00
Koen Vandeputte
f21f8376e9 uqmi: bump package release
fixes: da8990e717 ("uqmi: use built-in command for data-link verification")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-13 10:25:30 +01:00
Karl Palsson
b2a5f7683b ar71xx: Add eTactica EG-200 support
EG-200 is a DIN rail mountable device with one ethernet port, wifi,
an RS-485 port, and an internal USB attached uSD card reader.

Two leds, "modbus" and "etactica" are managed by userspace applications
in factory firmware.

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

Signed-off-by: Karl Palsson <karlp@etactica.com>
2018-02-13 10:01:53 +01:00
Koen Vandeputte
da8990e717 uqmi: use built-in command for data-link verification
uqmi contains a command for directly querying the modem if there
is a valid data connection, so let's use it.

This avoids the cases were all previous tests are succesful, but the
actual data link is not up for some reasons, leading to states were we
thought the link was up when it actually wasn't ..

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-13 10:01:53 +01:00
Koen Vandeputte
3508f8abb4 uqmi: use correct value for connection checking
Originally, the implementation only checked if uqmi command
execution succeeded properly without actually checking it's returned data.

This lead to a pass, even when the returned data was indicating an error.

Rework the verification to actually check the returned data,
which can only be correct if the uqmi command itself also executed correctly.

On command execution success, value "pdh_" is a pure numeric value.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-13 10:01:53 +01:00
Koen Vandeputte
3c5471032b uqmi: use general method for state cleaning
Debugging shows that using the general method properly cleans on each
run, while the method specifying the client-ID shows "No effect"
even while in connected state.

Fixes several connectivity issues seen on specific modems.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-13 10:01:53 +01:00
INAGAKI Hiroshi
192b5a7710 ramips: use new image build code for WHR-G300N
The tftp.bin image for Buffalo WHR-G300N was not built, so I was fixed
it after rewriting to new image build code. And the code for
factory-EU.bin was broken, so I deleted it.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
2018-02-13 10:01:53 +01:00
John Crispin
5555545494 mediatek: remove the CPU_SUBTYPE
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-13 10:01:53 +01:00
Koen Vandeputte
5adf16b492 cns3xxx: remove linux 4.9 support
- Remove kernel 4.9 support
- Apply specific 4.14 changes directly to source
- Refreshed all

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-02-13 10:01:53 +01:00
Rosen Penev
bef3f85742 target: Remove nomips16 option.
There is no target with a CPU subtype of nomips16.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-02-13 10:01:53 +01:00
Evgeniy Didin
063fa4cfa2 tools/mkimage: copy mkenvimage to bin directory
For some boards u-boot binary environment file is required,
which is generated by mkenvimage utility. But in OpenWrt there
is no separate support for mkenvimage, which is a part of u-boot tools.
mkenvimage gets built in u-boot/tools as well as mkimage anyways.

So lets just copy mkenvimage to the $(STAGING_DIR_HOST)/bin/ directory.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
CC: Alexey Brodkin <abrodkin@synopsys.com>
CC: Hauke Mehrtens <hauke@hauke-m.de>
CC: John Crispin <john@phrozen.org>
2018-02-13 10:01:52 +01:00
John Crispin
1fe888554c kernel: add missing symbol for v4.14
Signed-off-by: John Crispin <john@phrozen.org>
2018-02-13 10:01:52 +01:00
Tim Harvey
fc03b3aa16 octeontx: add support for OCTEON TX target
The Cavium OCTEON TX is an ARM 64-bit SoC leveraging CPU cores and
periperhals from the Cavium ThunderX SoC.

This initial support provides a 4.14 kernel and kernel+initramfs that is
bootable on the Gateworks Newport GW630x as well as the Cavium sff8104
reference board.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-02-13 10:01:52 +01:00
Michael Heimpold
123dbb77aa packages: uboot-mxs: override instead of appending u-boot make flags
This prevents passing down the HOSTCC stuff set in u-boot.mk
which results in linking errors against openssl:

tools/mxsimage.o: In function `sb_aes_reinit':
mxsimage.c:(.text+0x202): undefined reference to `EVP_CIPHER_CTX_reset'
tools/mxsimage.o: In function `mxsimage_generate':
mxsimage.c:(.text+0x110d): undefined reference to `EVP_MD_CTX_new'
mxsimage.c:(.text+0x114f): undefined reference to `EVP_MD_CTX_free'
mxsimage.c:(.text+0x11c3): undefined reference to `EVP_MD_CTX_new'
mxsimage.c:(.text+0x1323): undefined reference to `EVP_MD_CTX_free'
mxsimage.c:(.text+0x134a): undefined reference to `EVP_CIPHER_CTX_reset'
tools/mxsimage.o: In function `mxsimage_verify_print_header':
mxsimage.c:(.text+0x23ce): undefined reference to `EVP_MD_CTX_new'
mxsimage.c:(.text+0x242c): undefined reference to `EVP_MD_CTX_new'
mxsimage.c:(.text+0x246b): undefined reference to `EVP_MD_CTX_free'
mxsimage.c:(.text+0x24ef): undefined reference to `EVP_CIPHER_CTX_reset'
mxsimage.c:(.text+0x2e52): undefined reference to `EVP_MD_CTX_free'
collect2: error: ld returned 1 exit status

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-02-13 10:01:52 +01:00
Michael Heimpold
dc263cd125 packages: uboot-mxs: bump to 2017.11
Also update the U-Boot BSP patch for I2SE Duckbill devices.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-02-13 10:01:52 +01:00
Michael Heimpold
f34b118b35 mxs: rename files to files-4.9
The Device Tree file for I2SE Duckbill boards was updated upstream.
Let's use the upstream version for upcoming kernel 4.14 by keeping
our current version for v4.9 still around.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-02-13 10:01:52 +01:00
Rosen Penev
c60a21532b ramips: Add support for the GnuBee Personal Cloud Two
The GnuBee Personal Cloud Two crowdfunded on https://www.crowdsupply.com
It is a low-cost, low-power, network-attached storage device.

Specifications:

- SoC: MediaTek MT7621AT
- RAM: DDR3 512 MB
- Flash: 32 MB
- Six SATA ports for 3.5" Drives
- One SDcard
- One USB 3.0
- Two USB 2.0
- Gigabit Ethernet: Three Ports
- UART 3.5mm Audio Jack or 3 pin header - 57600 8N1
- Three GPIOs available on a pin header

Flash instructions:

The GnuBee Personal Cloud Two ships with libreCMC installed.
libreCMC is a Free Software Foundation approved fork of LEDE/OpenWrt.
As such one can upgrade using the webinterface or sysupgrade.

Das U-Boot has multiple options for recovery or updates including :

- USB
- http
- tftp

Errata:
- While there are three ethernet ports, the third requires support for
  the second GMAC. This will come in kernel 4.14.
- The first hard drive slot has a clearance issue with the two fan
  headers. Workaround is to pull the headers out and connect the pins to
  jumper wires.
- Using this device as a NAS is problematic with the 4.9 kernel as many
  /dev/sdX reads throw silent errors. The current theory behind this is
  some kind of unhandled DMA mapping error in the kernel. This is not an
  issue with kernel 4.4.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-02-13 10:01:52 +01:00
Kristian Evensen
2d27ebbb93 iptables: Support building connlabel module
It is currently possible to enable connlabel-support in iptables.
However, in order for connlabel to work properly, the kernel module must
also be present. This patch adds support for building the
connlabel-module, and selects it by default when connlabel-support is
enabled.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2018-02-13 10:01:52 +01:00
Yangbo Lu
f226e652f6 layerscape: fix call trace of pfe module removing
Updated pfe kernel patch to clean up iounmap(pfe->ddr_baseaddr).
pfe->ddr_baseaddr was got through phys_to_virt() not ioremap(),
so iounmap() for pfe->ddr_baseaddr should be removed.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
35a61fef56 layerscape: fix DPAA2 QDMA issue
This patch is to reverse a upstream dmatest patch for now
which is causing DPAA2 QDMA test issue.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
f78168be62 layerscape: add a make menuconfig known issue in README
This patch is to add a known issue of make menuconfig
in README file. This is also a common issue for OpenWrt.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
7b93a18b10 layerscape: fix type for kernel 4.9 dpaa2_mac_get_stats() function
This patch changes the declarations of ndo_get_stats64 handlers
to the previous struct rtnl_link_stats64 * return type instead of
the mainline void return.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
94698fa6ab layerscape: update README
Tis patch is to fix up some descriptions in README.
Per-device rootfs had been supported, and a known issue
had been found. These also should be updated accordingly.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
e547bd36bd layerscape: support ubifs rootfs in u-boot env
ls1012ardb/ls1012afrdm/ls1046ardb/ls1088ardb firmwares now use ubifs
rootfs. So u-boot env should be set accordingly.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
1079a03886 layerscape: support ubifs rootfs
Some layerscape devices (ls1012ardb/ls1012afrdm/ls1046ardb/ls1088ardb)
were using ext4 rootfs because there were issues using squashfs.
This patch is to drop using ext4 rootfs and use ubifs rootfs instead
which is more proper for SPI-NOR flash.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
d6fd44cebf layerscape: update u-boot to LSDK1712
This patch is to update layerscape u-boot to
NXP LSDK1712 release.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
0f7c83bb26 layerscape: update ppfe firmware to LSDK1712
Updated ppfe firmware to NXP LSDK1712 release. Used
ppfe firmware git tree on NXP github since it was
migrated here from qoriq-open-source github.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:51 +01:00
Yangbo Lu
13b2735a46 layerscape: add ls-rcw-bin package
NXP LSDK1712 release used two rcw git trees. The
original rcw git tree was still source code but
dropping ls1012a/ls1088a/ls2088a boards in LSDK1712.
Instead another new rcw git tree was used to just
provided rcw binaries for these boards dropped. So
this patch is to update ls-rcw to LSDK1712 release
and add a new ls-rcw-bin package.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:50 +01:00
Yangbo Lu
0a4d12b769 layerscape: update PPA firmware to LSDK1712
This patch is to update PPA firmware to NXP LSDK1712
release.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:50 +01:00
Yangbo Lu
4e85171e85 layerscape: migrate fman-ucode to NXP github
fman-ucode had been migrated from qoriq-open-source
github to NXP github. So the Makefile should be fixed
accordingly.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:50 +01:00
Yangbo Lu
f613743687 layerscape: update MC firmware to LSDK1712
Updated MC firmware to NXP LSDK1712 release. Used
MC firmware git tree on NXP github since it was
migrated here from qoriq-open-source github.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:50 +01:00
Yangbo Lu
841ad46b90 layerscape: remove USB configs for 64-bit
Removed USB configs for 64-bit device since they're
already in kmod package.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:50 +01:00
Yangbo Lu
6e9a5f4db4 layerscape: remove USB and TI specific configs for 32-bit
This patch is to remove USB configs for 32-bit device since
they're already in kmod package. Also removed TI platform
specific configs.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:50 +01:00
Yangbo Lu
1a28100e68 layerscape: update patches-4.9 to LSDK1712
Patches changes
- Updated patches-4.9 to NXP LSDK1712 linux-4.9.
- Merged changes of patch 303 into integrated patch 201.
- Split changes of patch 706 into dpaa part and dpaa2
  part, and merged these changes into integrated patches
  701 and 705.
- Removed patch 819 since ehci-fsl driver could be compiled now.
- Refreshed these patches.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:49 +01:00
Yangbo Lu
3a0fa1e7b8 layerscape: update restool to 2017-12-03
Updated restool to 2017-12-03 and removed patches
since the new version had involved them.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:49 +01:00
Yangbo Lu
5f36f3193f layerscape: update build guide in README
Added package feeds updating and installing in build guide
of README.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2018-02-13 10:01:49 +01:00
Henryk Heisig
a338491a30 ar71xx: add support for TP-Link RE355
This device is identical as TP-Link RE450
RE355 is a dual-band AC1200 router, based on Qualcomm/Atheros
QCA9558+QCA9880.

Specification:

720/600/200 MHz (CPU/DDR/AHB)
64/128 MB of RAM (DDR2)
8 MB of FLASH (SPI NOR)
3T3R 2.4 GHz
3T3R 5 GHz
1x 10/100/1000 Mbps Ethernet
7x LED, 3x button
UART header on PCB

Flash instruction:
Web:
Download lede-ar71xx-generic-archer-c60-v2-squashfs-factory.bin
and use OEM System Tools - Firmware Upgrade site.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-02-13 09:21:20 +01:00
Philip Prindeville
78f5af626c kmod-sched: add sch_multiq to extra schedulers
For hardware that supports multiple h/w output queues, add
a compatible scheduler (NET_SCH_MULTIQ).

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-13 09:21:20 +01:00
Daniel Golle
267873ac9b base-files: don't evaluate block-device uevent
Current code and also before commit da52dd0c83 was vulnerable to shell
injection using volume lables in the GPT partition table of block
devices. Given that partition names can be freely defined in GPT tables
we really shouldn't evaluate a string which is potentially crafted with
evil intentions. Hence rather use `export -n` to absorb the uevent's
variables into the environment.

Fixes commit da52dd0c83 (base-files: quote values when evaluating uevent)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[mschiffer@universe-factory.net: suggested export -n usage]
2018-02-13 00:01:44 +01:00
Daniel Gimpelevich
49d3c5f057 kernel: add IEEE-1284 parallel port support
The kmod-lp package included both lp.ko and ppdev.ko, but ECP device
drivers may or may not require lp NOT to be loaded, needing only ppdev.
Additionally, There were no packages for any parport interface modules,
such as uss720 or parport_pc, provided here. It has not been otherwise
possible to use PC-style parport hardware for kmod-lp.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2018-02-12 15:21:43 +01:00
Jonas Gorski
8fdfba3d1a brcm63xx: switch to kernel 4.9
Now that we have support for it, let's switch to kernel 4.9.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-12 11:45:33 +01:00
Jonas Gorski
cf90313ab2 ar7: switch to kernel 4.9
With generic run tested and ac49x compile tested, and no complaints so
far, let's switch to 4.9.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-12 11:45:33 +01:00
Jonas Gorski
09bc44454f ar7: fix ac49x compilation with 4.9
This will introduce a warning on 3.18, but fixes an error when
compiling for 4.9.

Fixes: cf9e0a59aa ("ar7: add kernel 4.9 support")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-12 11:45:33 +01:00
John Crispin
a464fba7eb Revert "mediatek: activate fpu feature flag"
This reverts commit 3594447a7d.

This causes the userland to not come up properly

Signed-off-by: John Crispin <john@phrozen.org>
2018-02-12 11:36:24 +01:00
Russell Senior
89a0fed2a2 tools: update patch to v2.7.6
Removes a redundant patch with a fix already upstream.  Build tested on
apm821xx (PPC).

Signed-off-by: Russell Senior <russell@personaltelco.net>
2018-02-12 16:27:56 +08:00
Jonas Gorski
e2ec3f7550 mvebu: fix sysupgrade from 17.04 for clearfog pro
When clearfog was renamed to clearfog pro, it broke sysupgrade from
17.04 as the new images now get rejected as incompatible. Fix this by
adding the legacy boardname to the compatible devices.

Fixes: ec4a8c6dee ("mvebu: ClearFog renamed upstream to ClearFog Pro")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
1ba38f6100 brcm63xx: add kernel 4.14 support
Add support for kernel 4.14. Increases compressed kernel size by ~64k
compared to 4.9.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
592472f60f broadcom-wl: fix compilation with 4.14
The last_rx field was removed from net_device. Since the field wasn't
used by the generic subsystem, and the driver only writes to it, just
remove the usage.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
b0c5e8b927 brcm63xx: add kernel 4.9 support
Add support for kernel 4.9 based on the more upstream comformant
partition defintions. Increases compressed kernel size by ~95k
compared to 4.4.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
a27d59bb42 brcm63xx: switch to new partition layout specification
Now that we support parsing the expected upstream definition, update
the dts files to it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
85f31afa88 brcm63xx: enhance dt partitions support to match upstream more closely
Partitions are supposed to be enclosed in an extra partitions node. Allow
the bcm63xxpart parser to cope with that.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
a41ad1b6f6 brcm63xx: backport latest bcm63xx_enet changes from upstream
No functional changes, just simple cleanups.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:15:05 +01:00
Jonas Gorski
457e7a160a brcm63xx: fix ephy reset gpio lookup
The lookup needs to be called just "reset" for the common code.

Fixes: 054c0d4e31 ("brcm63xx: backport mdio-bus reset gpio support")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2018-02-11 23:14:56 +01:00
Matthias Schiffer
355009ebe7 ar71xx: add missing config symbol ATH79_MACH_CF_E375AC
Fixes: bf66bb8c96 "ar71xx:add support for COMFAST CF-E375AC"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-02-11 18:41:25 +01:00
Felix Fietkau
c991dab993 wrt55agv2-spidevs: remove obsolete package
It hasn't compiled in a long time and needs to be updated before it can
be restored anyway.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-11 18:06:10 +01:00
Hauke Mehrtens
3594447a7d mediatek: activate fpu feature flag
The arm CPUs uses in the supported Mediatket SoCs have a FPU accordingly
to the datasheet, activate it also. The CPU subtype "neon-vfpv4" is
selected, but the toolcahin generated for this SoC will still be
compiled with soft float and not with the hard float ABI as we haven't
the fpu feature flag set. If this toolchain is reused by other targets
this will even affect other targets.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-11 16:42:28 +01:00
Daniel Golle
da52dd0c83 base-files: quote values when evaluating uevent
When sourcing /sys/class/block/*/uevent values have to be quoted as
they may contain spaces (e.g. in PARTNAME).
Fix this by pre-processing with sed before sourcing.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-02-11 16:42:01 +01:00
Sven Eckelmann
25a72f5a01 ipq-wifi: drop OpenMesh A42 board-2.bin
The BDFs for OpenMesh A42 were upstreamed [1] to the ath10k-firmware
repository and are now part of ath10k-firmware 2018-01-26. The
ipq-wifi-openmesh_a42 package can now be dropped because OpenWrt already
ships the QCA4019 board-2.bin from this version.

[1] https://wireless.wiki.kernel.org/en/users/drivers/ath10k/boardfiles

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-02-11 16:33:00 +01:00
Sven Eckelmann
80b54b85ad firmware: ath10k-firmware: update to 2018-01-26
* introduces the BDFs for the OpenMesh A42 in
  /lib/firmware/ath10k/QCA4019/hw1.0/board-2.bin.
* adds new firmware firmware-6.bin_RM.4.4.1.c1-00037-QCARMSWP-1 for
  QCA6174 hw3.0

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-02-11 16:33:00 +01:00
Ding Tengfei
bf66bb8c96 ar71xx:add support for COMFAST CF-E375AC
COMFAST CF-E375AC is a ceiling mount AP with PoE support, based on
Qualcomm/Atheros QCA9563 + QCA9886 + QCA8337.

Short specification:

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

Flash instruction:

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

Signed-off-by: Ding Tengfei <dtf@comfast.cn>
2018-02-11 16:20:24 +01:00
David Bauer
f17173f5a3 ar71xx: remove bs-partition ro-flag for UniFi AC
This removes the read-only flag from the bs (bootselect) partition
on UniFi AC devices. This allows to correct the indicator from which
partition the device is booting its kernel from.

See also:
 - https://github.com/freifunk-gluon/gluon/issues/1301
 - https://bugs.lede-project.org/index.php?do=details&task_id=662

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-02-11 16:16:03 +01:00
Philip Prindeville
83d99924fa kexec-tools: bump version to 2.0.16
All patches have been integrated upstream.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-11 16:10:51 +01:00
Philip Prindeville
d59cc79e00 kexec-tools: issue warning when dd'ing vmcore
With no warning, it just looks like the box has hung during boot.

We don't want users resetting it without having captured a crashdump.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-11 16:05:48 +01:00
Henryk Heisig
14951e8f8e ramips: add support for TP-Link Archer C50 v3
TP-Link Archer C50 v3 is a router with 5-port FE switch and
non-detachable antennas. It's based on MediaTek MT7628N+MT7612E.

Specification:
- MediaTek MT7628N/N (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 4x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- 7x LED (GPIO-controlled*), 2x button, power switch

* WAN LED in this devices is a dual-color, dual-leads type which isn't
  (fully) supported by gpio-leds driver. This type of LED requires both
  GPIOs state change at the same time to select color or turn it off.
  For now, we support/use only the green part of the LED.

Flash instruction:

The only way to flash LEDE image in ArcherC50v3 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "openwrt-ramips-mt7628-ArcherC50v3-squashfs-tftp-recovery.bin"
   to "tp_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 for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-02-11 16:04:16 +01:00
Henryk Heisig
e39a240ba2 ramips: ArcherC20v4: use common TP-Link dtsi file
and remove common part from dts file.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-02-11 16:04:16 +01:00
Henryk Heisig
368a7f4cec ramips: change the TP-Link dtsi filename
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2018-02-11 16:04:16 +01:00
Pawel Dembicki
680e867d7f kernel: mtdsplit: Add support for D-link JBOOT
The D-Link devices with JBOOT bootloader use their own kernel
image header (stag + sch2 headers).

This driver find jImage header and set rootfs start after kernel file.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2018-02-11 16:02:52 +01:00
David Bauer
1113fcdc80 ipq806x: mark AVM FB4040 switchport as untagged
This commit marks the CPUs switchport explicit as untagged.
Otherwise, an eth0.1 interface is created and the devices
LAN-ports are not working.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-02-11 16:02:52 +01:00
Zoltan HERPAI
1ba6d59f2b x86: add preinit hook to reload microcode
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-11 14:39:24 +01:00
Zoltan HERPAI
01020bc74d firmware: add microcode package for Intel
Compiling the Intel microcode package results in a
microcode.bin and a microcode-64.bin. As we can
decide based on the subtarget which should be used,
we'll only split the required .bin file with
iucode-tool.

x64 will get the intel-microcode-64.bin
All other variants will get intel-microcode.bin

The microcodes will be updated from preinit via a common
script - that's the earliest place where we can do it.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-11 14:39:21 +01:00
Zoltan HERPAI
8fb3476345 firmware: add microcode package for AMD
Use the Debian repository for sourcing the ucode files.

Current (20171205) includes support for fam17h CPUs already.

The microcodes will be updated from preinit via a common
script - that's the earliest place where we can do it.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-11 14:39:18 +01:00
Zoltan HERPAI
d3da2fcb8b tools: add iucode-tool
Add tool to "compile" Intel microcode files. The tool will be
compiled for host (to split the microcode.dat) and for target
(to forcibly reload the microcode if required).

Instead of using the large microcode.bin/microcode-64.bin, the
splitted ucode files (separate for CPU families) will be
installed.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-11 14:39:16 +01:00
Zoltan HERPAI
72d949e7ba x86: enable microcode loading for Intel and AMD
Enable for 4.9 and 4.14.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-11 14:39:12 +01:00
John Crispin
d3ddced0c7 fstools: update to latest git HEAD
3d23981 strip trailing spaces from vfat labels
c4a3c97 fix vfat volume label
5010710 block: support /dev/nvme* nodes

Signed-off-by: John Crispin <john@phrozen.org>
2018-02-11 14:32:37 +01:00
Hauke Mehrtens
13e8d54917 uboot-fritz4040: Fix build with HOSTCFLAGS
When we provide the HOSTCFLAGS to the U-Boot build it will fail because
it can not find the u-boot provided header files any more.
Just overwrite and not append the package specific configuration on top
of the configuration provided by u-boot.mk.
uboot-fritz4040 is based on U-Boot 2012.07 and this problem is probably
similar to the problem seen with the lantiq and ar71xx u-boot build.

Fixes: df9781a420 ("u-boot,at91bootstrap: fix incorrect HOSTCPPFLAGS variable")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-11 00:56:50 +01:00
Arne Zachlod
186aebf90a ar71xx: Orders the names of the devices alphabetically.
Signed-off-by: Arne Zachlod <arne@nerdkeller.org>
2018-02-11 00:08:25 +01:00
Adrià Llaudet
90ceb0aeb1 imx6: use DTS_DIR at image build code
Use "$(DTS_DIR)", defined at include/image.mk, instead of
"$(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/dts" in order to generalize and
allow a better Device/* device-tree parameterization (i.e. DEVICE_DTS_DIR
and DTS_DIR).

Signed-off-by: Adrià Llaudet <adria.llaudet@gmail.com>
2018-02-10 21:02:53 +01:00
Evgeniy Didin
2fca8aa73e archs38: bump kernel to 4.14.
Update Linux kernel version from 4.9 to 4.14 for archs38.
config-4.14 was simply regenerated with "make kernel_menuconfig".

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
2018-02-10 20:59:52 +01:00
Evgeniy Didin
b38758d4d4 kernel: backport fix undefined abort
While building mpi.ko module with stable Linux v4.14.14 an error occured:
>ERROR: "abort" [lib/mpi/mpi.ko] undefined!
In upstream Linux 4.15 this issue is fixed:
Commit 7c2c11b208be ("arch: define weak abort()")
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7c2c11b208be09c156573fc0076b7b3646e05219

Commit dc8635b78cd8 ("kernel/exit.c: export abort() to modules")
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dc8635b78cd8669c37e230058d18c33af7451ab1

So lets add backport patches until these fixes
are not applied in stable version.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
CC: John Crispin <john@phrozen.org>
CC: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 20:58:39 +01:00
Filip Moc
7c5960ddc4 kernel: add kmod-fou
Once installed fou kernel module allows you to use FOU (Foo over UDP)
and GUE (Generic UDP encapsulation) tunnel protocols.

To get ip fou command working you also need to install ip-full.

Signed-off-by: Filip Moc <lede@moc6.cz>
2018-02-10 20:58:18 +01:00
Alexandru Ardelean
a6f79f5e5e uboot-mvebu: fix build ; use the build's tools/libressl
Since I have no openssl-dev on my machine, I first
get this error:

```
tools/kwbimage.c:21:10: fatal error: openssl/bn.h: No such file or directory
 #include <openssl/bn.h>
```

After removing the UBOOT_MAKE_FLAGS the next error is:
```
tools/kwbimage.c:40:6: error: conflicting types for ‘EVP_MD_CTX_cleanup’
 void EVP_MD_CTX_cleanup(EVP_MD_CTX *ctx)
```

After removing the OpenSSL patches the next error is:
```
  HOSTLD  tools/dumpimage
/usr/bin/ld: cannot find -lssl
/usr/bin/ld: cannot find -lcrypto
collect2: error: ld returned 1 exit status
scripts/Makefile.host:108: recipe for target 'tools/dumpimage' failed
make[5]: *** [tools/dumpimage] Error 1

```

So, the final part is to add the build system's
HOST_LDFLAGS to the UBOOT_MAKE_FLAGS.
(which was done in the previous commit)

Then the image builds.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-02-10 20:52:31 +01:00
Alexandru Ardelean
c72e6582c0 u-boot.mk: add HOST_LDFLAGS to UBOOT_MAKE_FLAGS
This will make sure that the build system's
paths for linking are available.
This is needed mostly for linking with tools/libressl.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-02-10 20:52:31 +01:00
Alexandru Ardelean
df9781a420 u-boot,at91bootstrap: fix incorrect HOSTCPPFLAGS variable
This would should up as `$$(HOSTCPPFLAGS)` in the host CFLAGS.
```
make --jobserver-fds=3,4 -j -C <openwrt>/build_dir/target-arm_cortex-a8+vfpv3_musl_eabi/u-boot-A10-OLinuXino-Lime/u-boot-2017.07 CROSS_COMPILE=arm-openwrt-linux-muslgnueabi- DTC="<openwrt>/build_dir/target-arm_cortex-a8+vfpv3_musl_eabi/linux-sunxi_cortexa8/linux-4.9.76/scripts/dtc/dtc" HOSTCC="gcc" HOSTCFLAGS='-O2 -I<openwrt>/staging_dir/host/include -I<openwrt>/staging_dir/host/usr/include -I<openwrt>/staging_dir/hostpkg/include -I<openwrt>/staging_dir/target-arm_cortex-a8+vfpv3_musl_eabi/host/include $$(HOSTCPPFLAGS)' HOSTLDFLAGS="" BL31=<openwrt>/staging_dir/target-arm_cortex-a8+vfpv3_musl_eabi/image/bl31.bin
```

And then it would complain with:
```
 /bin/sh: 1: HOSTCPPFLAGS: not found
```

Also, HOSTCPPFLAGS does not exist.
The correct var is HOST_CPPFLAGS.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-02-10 20:52:31 +01:00
Hauke Mehrtens
d0d37e89af valgrind: Fix compile on ARM64
Activate the support for 64 bit on all 64 bit CPUs and not only x86_64.
ARM64 does not provide an xml file, so do not pack any.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 20:17:43 +01:00
Hauke Mehrtens
b6d6e3fdf1 bunwind: build for ARM64
ARM64 is supported by libunwind since some versions, allow building it
for aarch64.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 20:17:21 +01:00
Hauke Mehrtens
fc166931fa config: fix ARM64 dependency check
The ARM64 CPUs use aarch64 config symbol, fix the depends lines.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 20:16:39 +01:00
Hauke Mehrtens
e387a1b4e4 toolchain: gdb: activate on ARM64
gdb supports ARM64 since quite some time now, activate it there like on
other CPU architectures.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 20:15:52 +01:00
Hauke Mehrtens
3a2a54c055 kernel: rename CONFIG_TRACE_ENUM_MAP_FILE to CONFIG_TRACE_EVAL_MAP_FILE
This config option was renamed in upstream Linux commit 681bec0367
("tracing: Rename update the enum_map file")

Reported-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 15:39:00 +01:00
Hauke Mehrtens
ef0416666f uboot-sunxi: fix build by adding comparabilities for old dtc
We use the dtc from the kernel and that does not have all the options
which u-boot would like to use now. make these parameters optional.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 15:39:00 +01:00
Hauke Mehrtens
f142de5f44 uboot-sunxi: refresh patches
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-02-10 15:39:00 +01:00
Felix Fietkau
175538ffdb mt76: update to the latest version, fixes mt7603 stability issues
3413961 mt7603: avoid reordering qos-null data packets
c60e6db mt76: toggle driver station powersave bit before notifying mac80211
246d548 mt76: stop tx queues from the driver callback instead of common code

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-09 16:05:02 +01:00
Felix Fietkau
02191389d5 kernel: remove kmod-spi-gpio-old
It is unused and has been deprecated for a long time

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-09 10:29:07 +01:00
Felix Fietkau
f997a6ab26 wrt55agv2-spidevs: mark as broken
The target it was meant for was updated to a version that this does not
compile with. It probably also hasn't been used in years

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-09 10:29:07 +01:00
Felix Fietkau
634673b215 ixp4xx: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-09 10:29:07 +01:00
Stijn Tintel
9a08c104e2 octeon: switch to kernel 4.14
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-08 19:04:38 +01:00
Stijn Tintel
3072908d0d kernel: bump 4.14 to 4.14.18
Refresh patches.

Remove upstreamed patches:
- apm821xx/010-crypto-gcm-add-GCM-IV-size-constant.patch
- backport/040-crypto-fix-typo-in-KPP-dependency-of-CRYPTO_ECDH.patch
Remove pending-4.14/650-pppoe_header_pad.patch, it is superseded by
upstream commit d32e5740001972c1bb193dd60af02721d047a17e.
Update patch that no longer applies: hack/204-module_strip.patch

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

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-08 18:43:13 +01:00
Hans Dedecker
787326b43e odhcp6c: fix appending of emtpy sendopt value (FS#1336)
Don't append an empty sendopts value as odhcp6c bails out
immediately on an empty -x option triggering an infinite start
loop of odhcp6c

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-08 18:29:37 +01:00
Hans Dedecker
30d34358a9 libubox: bump to git HEAD version
b0c830 sh/jshn.sh: add json_for_each_item()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-08 13:14:36 +01:00
Hans Dedecker
d8acbb86a1 odhcp6c: change sendopts option into list
Commit a26045049b added support for sendopts as a string; since multiple
sendopts values can be specified it makes more sense to model it as a
list of strings.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-08 12:19:48 +01:00
Hans Dedecker
112f0469c4 netifd: update to latest git HEAD
1be329c netifd-proto: add proto_config_add_array wrapper

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-07 12:03:56 +01:00
Hannu Nyman
64858a0e25 tools/ccache: update to 3.3.6
Update ccache to 3.3.6

Release notes:
https://ccache.samba.org/releasenotes.html#_ccache_3_3_6

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-02-07 12:03:45 +01:00
Zoltan HERPAI
805f756d6e uboot-sunxi: bump to 2017.11
Runtime-tested on:
 - Pine64 (A64)
 - Orange Pi 2 (H3)
 - Bananapro (A20)
 - Olimex A20-Micro (A20)
 - Pcduino v3 (A20)
 - Pcduino v2 (A10)

Compile-tested on:
 - all A8/A7/A53 boards

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-06 12:52:00 +01:00
Daniel Golle
32f120b783 ramips: various fixes for zbt-we1226
Convert userspace code to use generic device-tree compatible board
detection method.  Users of the existing code will have to use
sysupgrade -F once to switch to the new generic board naming.
Properly setup pinctrl fixing the switch port LEDs.

Fixes commit 9c4fe103cb (ramips: add support for ZBT-WE1226)
Reported-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-02-06 03:00:33 +01:00
Martin Schiller
a8b023272d ltq-atm: cleanup unused variables and functions
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2018-02-05 17:45:54 +01:00
Alexander Couzens
17eb826a70 ltq-atm: rewrite tx path to use IRQs
The ATM subsystem is different from the generic ethernet NICs. The ATM
subsystem requires a callback when a packet has been sent. It means a
tx skb_buff need to be used after it has sent. While the generic NIC
can fill up the TX ring and free skb_buffs if it encounter a ring buffer slot
with an already sent skbuff.
The ATM drivers need call the pop() function after it has send a
single ATM package. The ATM subsystem controls via this ways the queuing.

The ppe engine use DMA channels for read and write. Every atm_vcc has it's
own TX DMA channel and each TX DMA channel has it's own ring buffer.

The old driver had multiple issues:
- Call the subsystem callback at the beginning of tx function (ppe_send).
  Didn't allowed the ATM subsystem to control the enqueued package
  amount.
- Filled up the TX ring until full and fail futher
- copy or decouple the skb from all other subsystem before giving it
  over to TX ring

The new tx path uses interupts.
- call the subsystem callback _after_ it was sent by hardware
- no need to copy our decouple the skb any more
- gives back control to the atm subsystem over the enqueued packages
- use an interupt for every sent atm package

Using interupts shouldn't be a problem because of the slow uplink bandwidth of
ADSL.
The speed _through_ the DSL router was always as high as it should
be, only traffic generated on the router itself were affected.

After changing to new tx path, the speed of iperf's run on the
router itself reached the same speed. The master/trunk wasn't as much
affected because of TCP optimisations (reboot-5022-gb2ea46fe236a).
The following results are taken on the remote server, which receives
the stream over the internet and the DSL line.

The sync moves between every sync a litte bit, but is so far stable
Latency / Interleave Delay:               Down: Fast (0.25 ms) / Up: Fast (0.50 ms)
Data Rate:                                Down: 13.287 Mb/s / Up: 1.151 Mb/s

reboot-5521-g9f8d28285d without patch
[ ID] Interval           Transfer     Bandwidth       Retr
[  5]   0.00-10.04  sec   947 KBytes   773 Kbits/sec    0             sender
[  5]   0.00-10.04  sec   928 KBytes   757 Kbits/sec                  receiver

reboot-5521-g9f8d28285d with patch
[  5]   0.00-10.06  sec  1.16 MBytes   970 Kbits/sec    0             sender
[  5]   0.00-10.06  sec  1.15 MBytes   959 Kbits/sec                  receiver

v17.01.4-239-g55c23e44f4 without patch
[ ID] Interval           Transfer     Bandwidth       Retr
[  5]   0.00-10.04  sec  87.4 KBytes  71.3 Kbits/sec    0             sender
[  5]   0.00-10.04  sec  59.6 KBytes  48.7 Kbits/sec                  receiver

v17.01.4-239-g55c23e44f4 with patch
[ ID] Interval           Transfer     Bandwidth       Retr
[  5]   0.00-10.05  sec  1.18 MBytes   983 Kbits/sec    1             sender
[  5]   0.00-10.05  sec  1.15 MBytes   959 Kbits/sec                  receiver

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2018-02-05 16:36:26 +01:00
Zoltan HERPAI
e7469d5192 arm-trusted-firmware-sunxi: use release build and bump version
- use release build instead of debug to reduce size
 - bump to use latest commit in allwinner tree

Tested on Pine64/1G.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2018-02-05 12:58:27 +01:00
Felix Fietkau
fe1244e04d mt76: update to the latest version
2b7fae4 mt76: fix returnvar.cocci warnings
939e3e0 mt76x2: dfs: avoid tasklet scheduling during mt76x2_dfs_init_params()
cf59170 mt76x2: dfs: add set_domain handler
5e4d60e mt76x2: dfs: take into account dfs region in mt76x2_dfs_init_params()
f76e25f mt76x2: fix WMM parameter configuration
34d612d mt76: retry rx polling as long as there is budget left
0f8327a mt76x2: fix TSF value in probe responses
ad3f8e9 mt76: add an intermediate struct for rx status information
58a41f1 mt76: get station pointer by wcid and pass it to mac80211
b0508d3 mt76: implement A-MPDU rx reordering in the driver code
cf3cfc4 mt76: split mt76_rx_complete
461cdf9 mt76: pass the per-vif wcid to the core for multicast rx
9b2c778 mt76: validate rx CCMP PN
302af90 mt76x2: init: disable all pending tasklets during device removal
9f685fe mt7603: init: disable tbtt tasklet during device removal
c6f8cac mt76: let mac80211 validate CCMP PN for fragmented frames
3968dae mt7603: fix 40 mhz channel bandwidth reporting
9c2e03d mt7603: fix rx LDPC reporting
f515dfc mt76: implement AP_LINK_PS
974142c mt76: implement processing of BlockAckReq frames
c5209db mt76: avoid re-queueing A-MPDU rx reorder work if no frames are pending
e67e7a5 mt76x2: do not set status->aggr for NULL data frames
8693864 mt76: check qos ack policy before reordering packets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:31:44 +01:00
Daniel Danzberger
653af8ffd3 kernel: fix forwarding locally generated packages in bridge isolation patch
Locally generated packets weren't forwarded to the isolated interfaces in a
bridge. Isolation should only prevent the flooding of incomming packets to
other interfaces in the bridge.

Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:16:26 +01:00
Felix Fietkau
d3ea5fc9f3 ramips: use napi_alloc_frag and skb_free_frag
Slightly improves rx performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:16:26 +01:00
Felix Fietkau
968b861612 ramips: improve NAPI polling to increase GRO batch size
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:16:26 +01:00
Felix Fietkau
798497c66e ar71xx: use global timestamp for hang check
Shrink the size of struct ag71xx_buf to 8 bytes, which improves cache
footprint

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:16:25 +01:00
Felix Fietkau
31e6016d2e ar71xx: only access device stats in tx handler if packets were processed
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:16:25 +01:00
Felix Fietkau
890e7458b0 ar71xx: allocate rx/tx descriptor/buffers in one chunk
Reduces false sharing due to cache aliases

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:16:25 +01:00
Rosen Penev
4e03a742e0 ag71xx: Reorder ag71xx struct members for better cache performance
Qualcomm claims this improves the D-cache footprint. Origina commit message below:

From: Ben Menchaca <ben.menchaca@qca.qualcomm.com>
Date: Fri, 7 Jun 2013 10:57:28 -0500
Subject: [ag71xx] cluster/align structs for cache perf

Cluster the frequently used, per-packet structures in ag71xx near
to each other, and cacheline-align them.  Some other re-ordering
occurred to move "warmer" structures near the per-packet structures.

Signed-off-by: Ben Menchaca <ben.menchaca@qca.qualcomm.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-02-05 10:16:25 +01:00
Felix Fietkau
cde71a543c build: replace uses of OpenWrt with $(VERSION_DIST)
This makes the distribution name more configurable.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-02-05 10:15:53 +01:00
Hans Dedecker
ecc347dd6e nghttp2: bump to 1.30.0
f0836c7e Update manual pages
25db178b Bump up version number to 1.30.0, LT revision to 29:2:15
1b6713e6 Update AUTHORS
c1a496cf nghttpx: Fix bug that h1 backend idle timeout expires sooner
e098a211 mruby: Fix bug that response header is unexpectedly overwritten
0ba4bf51 Merge pull request #1120 from dylanplecki/issue-1119-mruby-header-overwrite
6deee203 Fix #1119: Stop overwrite of first header on mruby call to env.req.set_header(..)
6761a933 Merge pull request #1105 from nghttp2/nghttpx-upgrade-scheme
5cc3d159 nghttpx: Add upgrade-scheme parameter to backend option
652f57e7 Merge pull request #1104 from nghttp2/allow-ping-after-goaway
acd6b40e Allow PING frame to be sent after GOAWAY
0fbb46ed Merge pull request #1101 from nghttp2/remember-pushed-links
6ad629de Merge pull request #1102 from nghttp2/fix-missing-alpn-validation
74754982 nghttpx: Fix missing ALPN validation (--npn-list)
a31a2e3b nghttpx: Remember which resource is pushed
a776b0db Merge pull request #1092 from nghttp2/define-103
cfd926f0 src: Define 103 status code
72f52716 Bump up version number to 1.30.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-04 21:19:51 +01:00
Kevin Darbyshire-Bryant
256477f7af wireguard: bump to 20180202
Bump to latest wireguard release snapshot:

2675814 version: bump snapshot
381d703 qemu: update base versions
c3fbd9d curve25519: break more things with more test cases
93fa0d9 curve25519: replace fiat64 with faster hacl64
6177bdd curve25519: replace hacl64 with fiat64
b9bf37d curve25519: verify that specialized basepoint implementations are correct
bd3f0d8 tools: dedup secret normalization
1f87434 chacha20poly1305: better buffer alignment
78959ed chacha20poly1305: use existing rol32 function
494cdea tools: fread doesn't change errno
ab89bdc device: let udev know what kind of device we are
62e8720 qemu: disable AVX-512 in userland
6342bf7 qemu: disable PIE for compilation
e23e451 contrib: keygen-html: share curve25519 implementation with kernel
6b28fa6 tools: share curve25519 implementations with kernel
c80cbfa poly1305: add poly-specific self-tests
10a2edf curve25519-fiat32: uninline certain functions

No patch refresh required.

Compile-tested-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-02-03 14:29:57 +01:00
Matthias Schiffer
0c719bfcaf ar71xx: /lib/ar71xx.sh: add model detection for TP-Link TL-WR810N
Properly report the revision in /tmp/sysinfo/model.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-02-03 14:13:26 +01:00
Jo-Philipp Wich
fd30187c87 imagebuilder: fix reference to removed VERSION_SED variable
Fixes: ff8e9a4ecb ("treewide: combine VERSION_SED and VERSION_SED_SCRIPT")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-02 14:41:35 +01:00
Matthias Schiffer
1cb06d8907 firewall: depend on kmod-nf-conntrack6
Firewall rules don't work as intended without conntrack support. The recent
cleanup removed the kmod-nf-conntrack6 dependency from the iptables
modules; add it to the firewall package instead.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-02-02 14:00:04 +01:00
Philip Prindeville
ff8e9a4ecb treewide: combine VERSION_SED and VERSION_SED_SCRIPT
We don't need two versions of this.  The escaping quotes
is so that the sed commands aren't misinterpreted by shell;
it has nothing to do with the contents of the file, thus
one version is adequate.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-02 13:59:34 +01:00
Philip Prindeville
abbb07a661 version.mk: escape values used in VERSION_SED macro
In addition to backslash and ampersand needing to be escaped for
simple sed RHS strings, we also need to escape comma since we're
using that as our s/// delimiter.

Pass everything through a macro filter to sanitize it.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-02-02 13:59:34 +01:00
Jo-Philipp Wich
a9a43f3d79 build: bundle-libraries.sh: patch bundled ld.so
Remove references to /etc/, /lib/ and /usr/ from the bundled ld.so
interpreter using simple binary patching.

This is needed to prevent loading host system libraries such as
libnss_compat.so.2 on foreign systems, which may result in ld.so
inconsistency assertions.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-02-02 13:59:34 +01:00
Hans Dedecker
ab44f8fc0d leds: correct ledtrig-heartbeat Kconfig description
Fix ledtrig-heartbeat Kconfig description

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-02 12:08:19 +01:00
Hans Dedecker
60e07ffec5 netifd: add defaultreqopts config option
By default udhcpc asks for a default list of options; the config option
defaultreqopts allows to tweak this behavior.
When set to 0 udhcpc will not ask for any options except for the options
specified in the reqopts config option.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-01 21:44:12 +01:00
Hans Dedecker
cc7a005c1a odhcp6c: add defaultreqopts config option
By default odhcp6c asks for a default list of options; the config option
defaultreqopts allows to tweak this behavior.
When set to 0 odhcp6c will not ask for any options except for the options
specified in the reqopts config option.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-02-01 15:19:30 +01:00
Matthias Schiffer
3f7908d697 ar71xx-generic: enable ATH79_MACH_TL_WR841N_V8 machine
This machfile also contains the code for the TL-WR842N/ND v2, which is in
ar71xx-generic and not in ar71xx-tiny.

Fixes: 0cd5e85e7a "ar71xx: create new ar71xx/tiny subtarget for 4MB flash
devices"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-31 21:18:16 +01:00
Matthias Schiffer
33e8f7ee49 netfilter: add missing dependency to kmod-ipt-tproxy
Fixes: e7e025426a "netfilter: clean up dependencies of kernel modules"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-31 14:43:12 +01:00
Matthias Schiffer
bf1032d71f mac80211: replace revert for 11s compatiblity with upstream fix
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-31 13:42:23 +01:00
Matthias Schiffer
352c74fcb4 netfilter: add packages for arp and bridge tables of nftables
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-31 13:32:40 +01:00
Matthias Schiffer
bbef76f1b1 nftables: remove dependency on kmod-nf-nat
For minimal firewall setups, NAT support may be unnecessary.

It would be possible to further reduce the minimum number of installed
modules, e.g. by separating IPv4 and IPv6 support or moving conntrack
support into a separate kmod package. We go with a more complete
kmod-nft-core for now, until a concrete usecase for smaller packages
arises.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-31 13:32:40 +01:00
Matthias Schiffer
e7e025426a netfilter: clean up dependencies of kernel modules
The nf_reject_ipv4 and nf_reject_ipv6 modules are moved into separate
packages, as they are a common dependency of ip(6)tables and nftables. This
avoids a dependency of nftables on kmod-nf-ipt(6). Also, fewer iptables
modules depend on nf-conntrack(6) now.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-31 13:32:40 +01:00
Yousong Zhou
aa66aa0c9a scripts/qemustart: more portable array operation
The following commands output 1,2,1,1

    cmd0='a=("${a[@]}" 'a'); echo "${#a}"'
    cmd1='a+=('a'); echo "${#a}"'
    bash -c "$cmd0"; zsh -c "$cmd0"
    bash -c "$cmd1"; zsh -c "$cmd1"

The following outputs 0,1,0,0

    cmd2='f() { echo "$#"; }; f "${a[@]}"'
    cmd3="a=(); $cmd2"
    bash -c "$cmd2"; zsh -c "$cmd2"
    bash -c "$cmd3"; zsh -c "$cmd3"

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-31 16:54:57 +08:00
Yousong Zhou
c9c2e4d78d openssl: remove call to now absent clean-staging make target
It's not needed now since commit a621b8c ("include: clean package
staging dir files before configure")

Fixes FS#1309

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-30 14:36:44 +08:00
Hans Dedecker
f65591f113 kernel: add test MTD driver package
Allows to test MTD driver using RAM

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-29 21:12:46 +01:00
Hauke Mehrtens
a9c65c22a1 netdevices.mk: add missing dependency to kmod-hwmon-core
The IGB and IXGBE drivers depend on kmod-hwmon core now.

Fixes: af707a178f ("netdevices.mk: add hwmon to IGB and IXGBE drivers")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-29 12:16:15 +01:00
Philip Prindeville
b81b18b5a4 netdevices.mk: add hwmon to IGB and IXGBE drivers
Off-chip NICs can run hotter than the CPU, so they're definitely
worth instrumenting.

Adding hardware monitoring increases by ~3744 and ~2672 bytes,
respectively, the sizes of the igb.ko and ixgbe.ko drivers.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-01-29 12:15:41 +01:00
Yousong Zhou
d76ad1dc79 lantiq: ase: turn off fpu emulator in default build
It was only enabled when the target was added back in commit 9b321bc
("lantiq: add Amazon-SE subtarget")

Leave pistachio alone as devices of this target are not likely have
small_flash or low_mem constraint

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-29 17:34:48 +08:00
Yousong Zhou
82ceb2ad2a build: add config option KERNEL_MIPS_FPU_EMULATOR
To make it more accessible for nodejs users to configure and run a build
on mips target lacking hardware fpu

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-29 15:06:53 +08:00
Hans Dedecker
1d9296dcdb curl: bump to 7.58.0
a0b5e8944 progress-bar: get screen width on windows
65ceb20df test1454: --connect-to with IPv6 address w/o IPv6 support!
eb6e3c4f6 CONNECT_TO: fail attempt to set an IPv6 numerical without IPv6 support
96186de1f docs: fix man page syntax to make test 1140 OK again
af32cd385 http: prevent custom Authorization headers in redirects
993dd5651 curl: progress bar refresh, get width using ioctl()
9d82cde7b RELEASE-NOTES: synced with bb0ffcc36
bb0ffcc36 libcurl-env.3: first take
ec122c4c8 TODO: two possible name resolver improvements
a5e6d6ebc http2: don't close connection when single transfer is stopped
87ddeee59 test558: fix for multissl builds
da07dbb86 examples/url2file.c: add missing curl_global_cleanup() call
ddafd45af SSH: Fix state machine for ssh-agent authentication
9e4ad1e2a openssl: fix potential memory leak in SSLKEYLOGFILE logic
ca9c93e3e openssl: fix the libressl build again
2c0c4dff0 unit1307: test many wildcards too
2a1b2b4ef curl_fnmatch: only allow 5 '*' sections in a single pattern
cb5accab9 ftp-wildcard: fix matching an empty string with "*[^a]"
25c40c9af SMB: fix numeric constant suffix and variable types
945df7410 CURLOPT_TCP_NODELAY.3: fix typo
8dd4edeb9 smtp/pop3/imap_get_message: decrease the data length too...
84fcaa2e7 openssl: enable SSLKEYLOGFILE support by default
e44ddfd47 mime: clone mime tree upon easy handle duplication.
2c821bba8 docs: comment about CURLE_READ_ERROR returned by curl_mime_filedata
a06311be2 test395: HTTP with overflow Content-Length value
67595e7d2 test394: verify abort of rubbish in Content-Length: value
ac17d7947 test393: verify --max-filesize with excessive Content-Length
f68e67271 HTTP: bail out on negative Content-Length: values
0616dfa1e configure.ac: append extra linker flags instead of prepending them.
650b9c1d6 RELEASE-NOTES: synced with 6fa10c8fa
6fa10c8fa setopt: fix SSLVERSION to allow CURL_SSLVERSION_MAX_ values
3b548ffde setopt: reintroduce non-static Curl_vsetopt() for OS400 support
fa3dbb9a1 http2: fix incorrect trailer buffer size
2a6dbb815 easy: fix connection ownership in curl_easy_pause
89f680473 system.h: Additionally check __LONG_MAX__ for defining curl_off_t
14d07be37 COPYING: it's 2018!
a8ce5efba progress: calculate transfer speed on milliseconds if possible
d4e40f069 scripts: allow all perl scripts to be run directly
e4f86025d mail-rcpt.d: fix short-text description
908a9a674 build: remove HAVE_LIMITS_H check
129390a51 openssl: fix memory leak of SSLKEYLOGFILE filename
272613df0 Revert "curl/system.h: fix compilation with gcc on AIX PPC and IA64 HP-UX"
481539e90 test1554: improve the error handling
593dcc553 test1554: add global initialization and cleanup
dc831260b curl_version_info.3: call the argument 'age'
58d7cd28a brotli: data at the end of content can be lost
a0f3eaf25 examples/cacertinmem: ignore cert-already-exists error
859ac3602 tool_getparam: Support size modifiers for --max-filesize
b399b0490 build: Fixed incorrect script termination from commit ad1dc10e61
a9b774a77 Makefile.vc: Added our standard copyright header
22fddb85a winbuild: Added support for VC15
ad1dc10e6 build: Added Visual Studio 2017 project files
d409640d6 build-wolfssl.bat: Added support for VC15
a4e88317d build-openssl.bat: Added support for VC15
c97648b55 curl/system.h: fix compilation with gcc on AIX PPC and IA64 HP-UX
b43755789 examples/rtsp: fix error handling macros
f009bbe1f curl_easy_reset: release mime-related data.
4acc9d3d1 content_encoding: rework zlib_inflate
e639d4ca4 brotli: allow compiling with version 0.6.0.
9c6a6be88 CURLOPT_READFUNCTION.3: refer to argument with correct name
02f207a76 rand: add a clang-analyzer work-around
13ce373a5 krb5: fix a potential access of uninitialized memory
41982b6ac conncache: fix a return code [regression]
5d0ba70e1 curl: support >256 bytes warning messsages
188a43a8f libssh: fix a syntax error in configure.ac
7ef0c2d86 examples/smtp-mail.c: use separate defines for options and mail
621b24505 THANKS: added missing names
cc0cca1ba mailmap: added/clarified several names
9d7a59c8f setopt: less *or equal* than INT_MAX/1000 should be fine
2437dbbf1 vtls: replaced getenv() with curl_getenv()
ef5633d4b RELEASE-NOTES: synced with 3b9ea70ee
3b9ea70ee TODO: Expose tried IP addresses that failed
48c184a60 curl.1: mention http:// and https:// as valid proxy prefixes
76db03dd9 curl.1: documented two missing valid exit codes
63e58b8b4 CURLOPT_DNS_LOCAL_IP4.3: fixed the seel also to not self-reference
671f0b506 Revert "curl: don't set CURLOPT_INTERLEAVEDATA"
4b6f3cff7 tests: mark data files as non-executable in git
98c572ed3 tests: update .gitignore for libtests
e959f16c5 multi_done: prune DNS cache
06a0a26fb mailmap: fixup two old git Author "aliases"
7ab4e7adb openssl: Disable file buffering for Win32 SSLKEYLOGFILE
b1b94305d RESOLVE: output verbose text when trying to set a duplicate name
bbea75ad6 CURLOPT_DNS_CACHE_TIMEOUT.3: see also CURLOPT_RESOLVE
a4a56ec93 sftp: allow quoted commands to use relative paths
9fb5a943f CURLOPT_PRIVATE.3: fix grammar
179ee78e8 curl: remove __EMX__ #ifdefs
9dfb19483 openssl: improve data-pending check for https proxy
9ffad8eb1 curl: don't set CURLOPT_INTERLEAVEDATA
912324024 curl.h: remove incorrect comment about ERRORBUFFER
ebaab4d17 configure: add AX_CODE_COVERAGE only if using gcc
b5881d1fb curl: limit -# update frequency for unknown total size
546e7db78 BINDINGS: another PostgreSQL client
55e609890 CONNECT: keep close connection flag in http_connect_state struct
c103cac3c include: get netinet/in.h before linux/tcp.h
00cda0f9b openldap: fix checksrc nits
ff07f07cc openldap: add commented out debug possibilities
bb0ca2d44 examples: move threaded-shared-conn.c to the "complicated" ones
4fb85b87b RELEASE-NOTES: synced with b261c44e8
b261c44e8 URL: tolerate backslash after drive letter for FILE:
24dcd7466 tests: added netinet/in6.h includes in test servers
76ebd5417 configure: check for netinet/in6.h
0c65678e7 curl-config: add --ssl-backends
ea3a5d07d conncache: only allow multiplexing within same multi handle
415b8dff8 threaded-shared-conn.c: fixed typo in commenta
5254d8bf2 threaded-shared-conn.c: new example
07cb27c98 conncache: fix several lock issues
85f0133ea libssh: remove dead code in sftp_qoute
615edc1f7 sasl_getmesssage: make sure we have a long enough string to pass
440140946 libssh2: remove dead code from SSH_SFTP_QUOTE
6401ddad4 ssh-libssh.c: please checksrc
918530752 libssh: fixed dereference in statvfs access
8dad32bcf RESOURCES: update spec names
a08f5a77c libssh: corrected use of sftp_statvfs() in SSH_SFTP_QUOTE_STATVFS
8843c0939 libssh: no need to call sftp_get_error as ssh_get_error is sufficient
3cef6f22e libssh: fix minor static code analyzer nits
10bb0b471 openssl: pkcs12 is supported by boringssl
8eff32f0b travis: use pip2 instead of pip
b7f534597 lib582: do not verify host for SFTP
a2f396680 libssh: added SFTP support
c75c9d4fb symbols-in-versions: added new symbols with 7.56.3 version
05675ab5a .travis.yml: added build --with-libssh
38aef6dc4 libssh2: return CURLE_UPLOAD_FAILED on failure to upload
75427291e libssh2: send the correct CURLE error code on scp file not found
c92d2e14c Added support for libssh SSH SCP back-end
3973ee6a6 RELEASE-NOTES: synced with af8cc7a69
af8cc7a69 curlver: towards 7.57.1
4b4142491 lib: don't export all symbols, just everything curl_*
9194a9959 SSL: Avoid magic allocation of SSL backend specific data
744ee5838 examples/xmlstream.c: don't switch off CURL_GLOBAL_SSL
270494e1a travis: add boringssl build

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-28 21:03:46 +01:00
John Crispin
74beb6f710 Revert "netdevices.mk: add hwmon to IGB and IXGBE drivers"
This reverts commit af707a178f.

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-28 08:53:50 +01:00
John Crispin
d4f539030b Revert "netdevices.mk: add missing dependency to kmod-hwmon-core"
This reverts commit 53f62bc5e5.

commit made the builders fail with
"Package kmod-igb is missing dependencies for the following libraries: hwmon.ko"

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-28 08:51:11 +01:00
Yousong Zhou
60ad837bea procd: fix procd_lock() when prepare_roofs
This fixes the following errors when doing "make package/install"

    /home/yousong/git-repo/lede-project/lede/build_dir/target-mips_24kc_musl/root-malta/lib/functions/procd.sh: line 47: /home/yousong/git-repo/l
    ede-project/lede/build_dir/target-mips_24kc_musl/root-malta/var/lock/procd_urandom_seed.lock: No such file or directory
    flock: 1000: Bad file descriptor

Fixes FS#1260

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-28 09:51:06 +08:00
Hauke Mehrtens
53f62bc5e5 netdevices.mk: add missing dependency to kmod-hwmon-core
The IGB and IXGBE drivers depend on kmod-hwmon core now.

Fixes: af707a178f ("netdevices.mk: add hwmon to IGB and IXGBE drivers")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-28 00:26:50 +01:00
Hauke Mehrtens
bcd17ce9a3 binutils: assertion failure bfd/elfxx-mips.c:3860
With forced PIE and SSP support I ran into this assertion failure.
backport two patches to fix this problem from the binutils 2.28 branch.
This fix is already included in binutils 2.28.1 and 2.29.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-27 22:51:59 +01:00
Hauke Mehrtens
1a8523c835 toolchain: gcc: update 7.x to 7.3.0
This version still generates broken code in our setup for MIPS.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-27 19:54:52 +01:00
Julien Dusser
241e6dd3e9 build: cleanup SSP_SUPPORT configure option
Configure variable SSP_SUPPORT is ambiguous for packages (tor, openssh,
avahi, freeswitch). It means 'toolchain supporting SSP', but for toolchain
and depends it means 'build gcc with libssp'.

Musl no longer uses libssp (1877bc9d8f), it has internal support, so
SSP_SUPPORT was disabled leading some package to not use SSP.

No information why Glibc and uClibc use libssp, but they may also provide
their own SSP support. uClibc used it own with commit 933b588e25 but it was
reverted in f3cacb9e84 without details.

Create an new configure GCC_LIBSSP and automatically enable SSP_SUPPORT
if either USE_MUSL or GCC_LIBSSP.

Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2018-01-27 19:02:48 +01:00
Julien Dusser
55779569eb toolchain: add gcc configure default PIE and SSP
GCC supports starting version 5 --enable-default-ssp and starting version 6
--enable-default-pie.

It produces hardened binaries by default without dealing with package
compilation flags.

Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2018-01-27 19:02:47 +01:00
Julien Dusser
df0bd42fde build: add hardened builds with PIE (ASLR) support
Introduce a configuration option to build a "hardened" OpenWrt with
ASLR PIE support.

Add new option PKG_ASLR_PIE to enable Address Space Layout Randomization (ASLR)
by building Position Independent Executables (PIE). This new option protects
against "return-to-text" attacks.

Busybox need a special care, link is done with ld, not gcc, leading to
unknown flags. Set BUSYBOX_DEFAULT_PIE instead and disable PKG_ASLR_PIE.

If other failing packages were found, PKG_ASLR_PIE:=0 should be added to
their Makefiles.

Original Work by: Yongkui Han <yonhan@cisco.com>
Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2018-01-27 16:46:45 +01:00
Alexandru Ardelean
ca7e8627db kernel-headers: adjust PKG_ variables when using git clone method
When using an external git clone for the kernel repo,
the build would fail because the build won't download
[via git] the kernel tarball.

This is because the `toolchain/kernel-headers` assumes
that the kernel would get downloaded via normal HTTP.
The reason for this is the `HostBuild` rule, which
calls the `Download/default` rule.

To use the `Download/default` we just need to conditionally
adjust some PKG_ vars.

We can safely use `LINUX_VERSION` as it was already adjusted
in the `kernel-version.mk` to avoid collisions with other tarballs.

Fixes:
 https://bugs.openwrt.org/index.php?do=details&task_id=503

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-01-27 16:46:45 +01:00
Alexandru Ardelean
953bf6b43d kernel.mk: update LINUX_VERSION filename for cloned repo
In case there is an external git repo specified,
it could overwrite the kernel tarball that was
downloaded from kernel.org.

The only identifier for such a file is the
KERNEL_GIT_CLONE_URI & KERNEL_GIT_REF symbols,
so if we have to download it we'll use that
information [after some sanitization]
to create a different filename for the kernel tarball.

If KERNEL_GIT_REF symbol is empty, HEAD will be used
as mentioned in the description of KERNEL_GIT_REF.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-01-27 16:46:45 +01:00
Alexandru Ardelean
ab6a96f3f5 Config-devel.in: rename symbol KERNEL_GIT_BRANCH -> KERNEL_GIT_REF
The Download/git rule will do a `git checkout <git-ref>`.
So, we can use any ref we want.

No need to limit just to branches.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-01-27 16:46:45 +01:00
Stephan Brunner
285791934b hostapd: add support for hostapd's radius_client_addr
Add support for hostapd's radius_client_addr in order to
force hostapd to send RADIUS packets from the correct source
interface rather than letting linux select the most appropriate.

Signed-off-by: Stephan Brunner <s.brunner@stephan-brunner.net>
2018-01-27 16:46:45 +01:00
Maxim Gorbachyov
006a8a063c perf: use libunwind
Without libunwind perf does not show userspace stack frames.
Tested on mvebu.

Signed-off-by: Maxim Gorbachyov <maxim.gorbachyov@gmail.com>
2018-01-27 16:46:45 +01:00
Maxim Gorbachyov
8590a5c06d libunwind: enable build for arm
Tested with perf on mvebu.

Signed-off-by: Maxim Gorbachyov <maxim.gorbachyov@gmail.com>
2018-01-27 16:46:45 +01:00
Philip Prindeville
af707a178f netdevices.mk: add hwmon to IGB and IXGBE drivers
Off-chip NICs can run hotter than the CPU, so they're definitely
worth instrumenting.

Adding hardware monitoring increases by ~3744 and ~2672 bytes,
respectively, the sizes of the igb.ko and ixgbe.ko drivers.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-01-27 16:46:45 +01:00
Tim Harvey
a5199379c0 kernel/modules/other: disable Nokia BT UART
disable the Nokia BT UART present on Nikia N9, N900 & N950 added in 4.12.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2018-01-27 16:46:44 +01:00
Evgeniy Didin
e47fe3284f toolchain/arc: update to the most recent release arc-2017.09
This commit finally bumps ARC tools to the most recent arc-2017.09 release version.

ARC GNU tools of version arc-2017.09 bring some quite significant changes like:
 * Binutils v2.29 with additional ARC patches
 * GCC 7.1.1 with additional ARC patches

More information on this release could be found here:
  https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2017.09-release

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
CC: Alexey Brodkin <abrodkin@synopsys.com>
CC: John Crispin <john@phrozen.org>
2018-01-27 16:46:44 +01:00
Evgeniy Didin
53021ce7f2 uClibc-ng: update to 1.0.28
Lets update uClibc-ng to 1.0.28 version for compatibility with gcc 7.x.

Since 1.0.22 there were significant patches for compatibility with gcc 7.x:
 https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=5b0f49037e8ea8500b05c8f31ee88529ccac4cee
 https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=cee0b058fa0b4501b289a2da365182d60314d746

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
CC: Alexey Brodkin <abrodkin@synopsys.com>
CC: John Crispin <john@phrozen.org>
2018-01-27 16:46:44 +01:00
Matthias Schiffer
d58c8f4029 mac80211: revert "wireless: set correct mandatory rate flags"
Revert upstream commit 1bd773c077de "wireless: set correct mandatory rate
flags", as it breaks 11s interoperability: nodes can only associate when
neither or both have this patch. As this is a regression from released
versions, revert to the old code for now.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-26 23:30:23 +01:00
Alexandru Ardelean
cfdfa6d04e rules.mk: drop include_mk build rule
The only users of this were the python packages
from the `packages` feed.
The 2 python interpreters would export some mk
files (e.g. python-package.mk) and then other
python packages would include it via this rule.

But there's a few things wrong with this approach,
most of them drawing from the fact that python host
needs to be built first, to export these mk files.

By now all uses of include_mk have been corrected
in the feeds and this can be removed.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-01-26 12:55:14 +01:00
Yousong Zhou
2c50af0cea openssl: tell the build system that we are doing CROSS_COMPILE
So that it will not try to run c_rehash with the just built binaries on
certs/demo.

Fixes openwrt/packages#5432

Reported-by: Val Kulkov <val.kulkov@gmail.com>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-26 18:19:00 +08:00
Yousong Zhou
e6de92cdcc iptables: make kmod-ipt-debug part of default ALL build
The iptables TRACE target is only available in raw table that's why the
dependency was moved from iptables-mod-trace into kmod-ipt-debug

Fixes FS#1219

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-26 15:29:02 +08:00
Yousong Zhou
dc555d003c build: disable BUILD_PATENTED by default
This is mainly for legal considerations and not promoting the usage of
and no redistribution of binaries of patented technologies seems to be
also the established practice in other linux distros.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2018-01-26 09:45:08 +08:00
Kevin Darbyshire-Bryant
03a00eeab3 wireguard: bump to 20180118
Bump to latest wireguard release snapshot:

9a93a3d version: bump snapshot
7bc0579 contrib: keygen-html: update curve25519 implementation
ffc13a3 tools: import new curve25519 implementations
0ae7356 curve25519: wire up new impls and remove donna
f90e36b curve25519: resolve symbol clash between fe types
505bc05 curve25519: import 64-bit hacl-star implementation
8c02050 curve25519: import 32-bit fiat-crypto implementation
96157fd curve25519: modularize implementation
4830fc7 poly1305: remove indirect calls
bfd1a5e tools: plug memleak in config error path
09bf49b external-tests: add python implementation
b4d5801 wg-quick: ifnames have max len of 15
6fcd86c socket: check for null socket before fishing out sport
ddb8270 global: year bump
399d766 receive: treat packet checking as irrelevant for timers

No patch refresh required.

Compile-tested-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-25 22:40:06 +01:00
Felix Fietkau
6271539fc5 Revert "mt76: update to the latest version"
This reverts commit 99eb128aca.
Connectivity issues reported by users, needs rework

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-25 21:19:13 +01:00
Felix Fietkau
99eb128aca mt76: update to the latest version
2b7fae4 mt76: fix returnvar.cocci warnings
939e3e0 mt76x2: dfs: avoid tasklet scheduling during mt76x2_dfs_init_params()
cf59170 mt76x2: dfs: add set_domain handler
5e4d60e mt76x2: dfs: take into account dfs region in mt76x2_dfs_init_params()
f76e25f mt76x2: fix WMM parameter configuration
34d612d mt76: retry rx polling as long as there is budget left
0f8327a mt76x2: fix TSF value in probe responses
ad3f8e9 mt76: add an intermediate struct for rx status information
58a41f1 mt76: get station pointer by wcid and pass it to mac80211
b0508d3 mt76: implement A-MPDU rx reordering in the driver code
cf3cfc4 mt76: split mt76_rx_complete
461cdf9 mt76: pass the per-vif wcid to the core for multicast rx
9b2c778 mt76: validate rx CCMP PN
302af90 mt76x2: init: disable all pending tasklets during device removal
9f685fe mt7603: init: disable tbtt tasklet during device removal
c6f8cac mt76: let mac80211 validate CCMP PN for fragmented frames
3968dae mt7603: fix 40 mhz channel bandwidth reporting
9c2e03d mt7603: fix rx LDPC reporting

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-25 16:50:10 +01:00
Catrinel Catrinescu
4ba2dd130a ar71xx: add ew-balin platform from Embedded Wireless
Add the Embedded Wireless "Balin" platform
 SoC: QCA AR9344 or AR9350
 RAM: DDR2-RAM 64MBytes
 Flash: SPI-NOR 16MBytes
 WLAN: 2 x 2 MIMO 2.4 & 5 GHz IEEE802.11 a/b/g/n
 Ethernet: 3 x 10/100 Mb/s
 USB: 1 x USB2.0 Host/Device bootstrap-pin at power-up
 PCI-Express: 1 x lane PCIe 1.2
 UART: 1 x Normal, 1 x High-Speed
 JTAG: 1 x EJTAG
 GPIO: 10 x Input/Output multiplexed

The module comes already with the current vanilla OpenWrt firmware.
To update, use "sysupgrade" image directly in vendor firmware.

Signed-off-by: Catrinel Catrinescu <cc@80211.de>
2018-01-25 16:50:08 +01:00
Matthias Schiffer
ad4232e3e9 ar71xx: add unaligned access hacks for VXLAN
Gives a ~5% performance gain.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-25 11:00:48 +01:00
Felix Fietkau
074fa8dfe4 musl: move BUILD_DIR_TOOLCHAIN/musl symlink to configure step
Avoids Build/Prepare quilt related hacks

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-25 10:54:14 +01:00
Felix Fietkau
13a5cb9d2b musl: allow autorebuild
Autorebuild is disabled for the toolchain to avoid build-order issues.
However, rebuilding musl is safe, so exclude it from that restriction.
Avoids the need for manual cleaning on kernel header <-> libc API
changes like the ones introduced recently

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-25 10:54:14 +01:00
Felix Fietkau
166741240a mac80211: mesh: drop frames appearing to be from us
Upstream backport to fix issues arising from devices with duplicate MAC
addresses

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-25 10:54:14 +01:00
Jackson Ming Hu
21d3643828 ramips: add support for Widora Neo 32MB flash revision
Widora has updated their Widora Neo board recently.

The new model uses 32MB WSON-8 factor SPI flash
instead of the original 16MB SOP-8 factor SPI flash.

All the other hardware components are the same as
the first revision.

Detailed hardware specs listed below:

CPU: MTK MT7688AN
RAM: 128MB DDR2
ROM: 32MB WSON-8 factor SPI Flash (Winbond)
WiFi: Built-in 802.11n 150Mbps?
Ethernet: 10/100Mbps x1
Audio codec: WM8960
Other IO: USB OTG;
	  USB Power+Serial (CP2104);
	  3x LEDs (Power, LAN, WiFi);
	  2x Keys (WPS, CPU Reset)
	  1x Audio In/Out
	  1x IPEX antenna port
	  1x Micro SD slot

Signed-off-by: Jackson Ming Hu <huming2207@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-23 23:31:09 +01:00
Mathias Kresin
a411881a40 ramips: add flash size postfix to Widora neo
Rename the Widora neo by adding a flash size prefix. Move the common parts
into a dtsi to be prepare everything for upcomming support of the 32MB
version.

Migrate the Widora neo to the generic board detection as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-23 23:31:09 +01:00
Hans Dedecker
6f425a28a4 kernel: generic: add 4.9 config option
When CGROUPS is enabled the new option CONFIG_CGROUP_NET_CLASSID is
selectable and not handled.
Add this option to the 4.9 kernel configuration.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-24 17:05:15 +01:00
Matthias Schiffer
95ab18e012 vxlan: add options to enable and disable UDP checksums
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-24 13:53:34 +01:00
Matthias Schiffer
4d001af7c5 netifd: update to latest git HEAD
af3cadb system-linux: VXLAN: add options to enable and disable UDP checksums

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-24 13:50:50 +01:00
Rosen Penev
c25d9cbde8 ramips: Fix GB-PC1 cpuclock again
The intended frequency is 900 MHz, not 90.

Fixes: 7059ab48a6 ("ramips: fix cpuclock for the GB-PC1")
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-01-24 07:33:42 +01:00
Daniel Golle
059b2f5481 ar71xx: fix MikroTik rb-nor-flash-16M-ac image
commit e15c63a375
ar71xx: add support for MikroTik RouterBOARD wAP G-5HacT2HnD (wAP AC)

changed the existing rb-nor-flash-16M-ac image in a way that it would
now only support the rb-wapg-5hact2hnd.
The board show however rather be added to the existing boards in the
rb-nor-flash-16M image template.

Reported-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-01-24 01:24:39 +01:00
Hans Dedecker
a9ffe9fd75 procd: update to latest git HEAD
653629f trace: check asprintf() return value
67eb7e6 trace: add missing limits.h include

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-23 11:46:45 +01:00
Daniel Golle
9c4fe103cb ramips: add support for ZBT-WE1226
MT7628NN (580MHz), 8MB SPI NOR, 64MB DDR2 RAM

Everything except for the switch LEDs works great.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2018-01-23 02:56:57 +01:00
Hauke Mehrtens
b33c3e1b7c sunxi: Orange Pi R1: configure USB Ethernet controller.
Now the USB port is the WAN port.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-22 22:59:38 +01:00
Hauke Mehrtens
40db7a9dec sunxi: Orange Pi R1: Fix USB Ethernet and activate SPI
The USB Ethernet is not working with the patches proposed for upstream,
fix this and activate the SPI node as this board always has a SPI flash.

Both patches are also targeted for upstream kernel 4.16 and 4.17.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-22 22:59:38 +01:00
Hauke Mehrtens
75f7c1c9ac sunxi: use upstream patch for Orange Pi R1
Instead of using our own device tree definitions use the one provided in
the upstream kernel for 4.16.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-22 22:54:17 +01:00
Hauke Mehrtens
b1c82cbd51 sunxi: backport stmmac network patches
Ethernet support was initial added in kernel 4.13, but deactivated
before the final release. This is backports the changes which are
activating it again from kernel 4.15.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-22 22:54:17 +01:00
Hauke Mehrtens
ad2b3bf310 sunxi: Add support for kernel 4.14
This is based on the code for kernel 4.9, but a lot of 4.9 patches are
backports from more recent kernel version and can be removed now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-22 22:51:02 +01:00
Hauke Mehrtens
dda475ca30 sunxi: refresh kernel configuration
Just refresh the sunxi kernel configuration.
This also moves the CONFIG_CRYPTO_DEV_SUN4I_SS_PRNG option to the
config-4.9 file.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-22 22:49:59 +01:00
Jo-Philipp Wich
eaf79d06b7 Revert "kernel: add IEEE-1284 parallel port support"
This reverts commit 666e9cf222.

The change has not been build-tested on non-x86 targets and leads to
stalled kernel builds due to unset configuration symbols there.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-22 13:41:20 +01:00
John Crispin
24b0424ecb procd: update to latest git HEAD
846e20c procd: add timing to start/stop logging

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-22 12:53:34 +01:00
Gabor Juhos
eb9e3651dd ar71xx: add support for the MikroTik RB911-2Hn/5Hn boards
The patch adds support for the MikroTik RB911-2Hn (911 Lite2)
and the RB911-5Hn (911 Lite5) boards:

  https://mikrotik.com/product/RB911-2Hn
  https://mikrotik.com/product/RB911-5Hn

The two boards are using the same hardware design, the only difference
between the two is the supported wireless band.

Specifications:
  * SoC: Atheros AR9344 (600MHz)
  * RAM: 64MiB
  * Storage: 16 MiB SPI NOR flash
  * Ethernet: 1x100M (Passive PoE in)
  * Wireless: AR9344 built-in wireless MAC, single chain
              802.11b/g/n (911-2Hn) or 802.11a/g/n (911-5Hn)

Notes:
  * Older versions of these boards might be equipped with a NAND
    flash chip instead of the SPI NOR device. Those boards are not
    supported (yet).
  * The MikroTik RB911-5HnD (911 Lite5 Dual) board also uses the
    same hardware. Support for that can be added later with little
    effort probably.

Installation:

1. Setup a DHCP/BOOTP Server with the following parameters:
   * DHCP-Option 66 (TFTP server name): pointing to a local TFTP
     server within the same subnet of the DHCP range
   * DHCP-Option 67 (Bootfile-Name): matching the initramfs filename
     of the to be booted image. The usable intramfs files are:
       - openwrt-ar71xx-mikrotik-vmlinux-initramfs.elf
       - openwrt-ar71xx-mikrotik-vmlinux-initramfs-lzma.elf
       - openwrt-ar71xx-mikrotik-rb-nor-flash-16M-initramfs-kernel.bin

2. Press the reset button on the board and keep that pressed.

3. Connect the board to your local network via its ethernet port.

4. Release the button after the LEDs on the board are turned off.
   Now the board should load and start the initramfs image from
   the TFTP server.

5. Upload the sysupgrade image to the board with scp:
     $ scp openwrt-ar71xx-mikrotik-rb-nor-flash-16M-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/fw.bin

5. Log in to the running system listening on 192.168.1.1 via ssh
   as root (without password):
     $ ssh root@192.168.1.1

7. Flash the uploaded firmware file from the ssh session via the
   sysupgrade command:
     root@OpenWrt:~# sysupgrade /tmp/fw.bin

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-22 10:53:45 +01:00
Gabor Juhos
a4320b3332 ar71xx: make leds-gpio usable with single-ended GPIOs
Add patches for the leds-gpio driver to make it usable with
open-drain and open-source kind of GPIO lines.

This type of functionality is required by various MikroTik boards.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-22 10:53:32 +01:00
Gabor Juhos
e379e60b17 ar71xx: mach-rbspi: return rb_info from rbspi_platform_setup
Modify the rbspi_platform_setup() function to return the pointer of the
rb_info structure. This allows board specific setup routines to access
the various fields of the information. It is useful for investigating
the hardware option bits for example.

Also update the board setup codes, to ensure that those handle the new
return value correctly.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-22 10:53:16 +01:00
Gabor Juhos
c7371cd1ee ar71xx: add definitions for RouterBOARD hardware option bits
Add bit definitions for the 'hardware options' tag which is used in
the MikroTik devices' hardware configurations. These values can be
used in board setup codes, to do different initialization sequences.
The values were obtained from the RouterOS 6.41-rc38 patches.

Additionally, introduce two helper functions what make the processing
of the hardware options easy.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-22 10:53:00 +01:00
Koen Vandeputte
5bdbc10b1b uqmi: silence error on pin verification
If a device only supports the 2nd verification method (uim),
the first method will fail as expected reporting an error:

"Command not supported"

Silence both separate methods and only report an error regarding
pin verification if both fail.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-22 08:46:46 +01:00
Daniel Gimpelevich
666e9cf222 kernel: add IEEE-1284 parallel port support
The kmod-lp package included both lp.ko and ppdev.ko, but ECP device
drivers may or may not require lp NOT to be loaded, needing only ppdev.
Additionally, There were no packages for any parport interface modules,
such as uss720 or parport_pc, provided here. It has not been otherwise
possible to use PC-style parport hardware for kmod-lp.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2018-01-22 07:17:11 +01:00
Hauke Mehrtens
36f1978a70 pistachio: make patches apply again
Support for Winbond NAND flash detection was added into the generic
patches and this conflicted with this patch adding Gigadevice support.

Fixes: 02050f7e7d ("kernel/4.{4, 9}: add manufacturer ID for Winbond NANDs")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-20 23:36:05 +01:00
Hauke Mehrtens
4d649ba949 ipq806x: make patches apply again
Some part of this patch was added to the generic patches as it was
needed also for some other target. Do not add it here any more.

Fixes: 02050f7e7d ("kernel/4.{4, 9}: add manufacturer ID for Winbond NANDs")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-20 23:24:02 +01:00
Hauke Mehrtens
e390756eff x86: Add CONFIG_RETPOLINE to fix build
This adds support for the new configuration option CONFIG_RETPOLINE and
refreshes the configuration.

Fixes: d8565a06dc ("kernel: bump 4.9 to 4.9.77")
Fixes: 9ddfac8015 ("kernel: bump 4.14 to 4.14.14")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-20 22:46:34 +01:00
Hauke Mehrtens
4336efe14b kernel: use upstream patches for musl
This replaces the current patches used to make the kernel headers
compatible with musl with the version which was accepted upstream. This
is included in upstream kernel 4.15.
This was compile tested with iproute2 build on all supported kernel
versions with musl and one one with glibc.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-20 22:11:33 +01:00
Hauke Mehrtens
e3c43ade0b ubus: fix PKG_MIRROR_HASH
Fixes: dd975d15a7 ("ubus: fix wrong PKG_SOURCE_DATE")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-20 20:22:01 +01:00
Philip Prindeville
a30791242b nftables: update to 0.8.1
Note this requires libnftnl-1.0.8 or higher, so that update needs
to be merged first.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-01-20 20:22:01 +01:00
Philip Prindeville
3d8040e04f libnftnl: update to 1.0.9
Also, drop unsupported configure options.

Don't use git retrieve but released tarball instead.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-01-20 20:22:01 +01:00
Hauke Mehrtens
f9aca01a53 kernel: backport fix for nftables on big Endian
nftables 0.8.1 generates some new commands which will not work without
this on big endian systems. This patch is included in Linux 4.11 and
later.

My rule matching a TCP port was not working:
nft add rule ip foo bar ct state new tcp dport 22 accept

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-20 20:22:01 +01:00
Hannu Nyman
e787ad5c96 tools/tar: update to 1.30
update GNU tar to 1.30

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-20 20:22:01 +01:00
Kevin Darbyshire-Bryant
a30370bbf1 kernel: bump 4.4 to 4.4.112
Refresh patches.
Remove upstreamed patches:

target/linux/generic/patches-4.4/030-2-smsc75xx-use-skb_cow_head-to-deal-with-cloned-skbs.patch
target/linux/generic/patches-4.4/030-3-cx82310_eth-use-skb_cow_head-to-deal-with-cloned-skb.patch
target/linux/generic/patches-4.4/030-4-sr9700-use-skb_cow_head-to-deal-with-cloned-skbs.patch
target/linux/generic/patches-4.4/030-5-lan78xx-use-skb_cow_head-to-deal-with-cloned-skbs.patch

CVEs completely or partially addressed:

CVE-2017-5715
CVE-2017-5753
CVE-2017-17741
CVE-2017-1000410

Compile-tested: ar71xx Archer C7 v2
Run-tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-20 20:22:01 +01:00
Kevin Darbyshire-Bryant
d8565a06dc kernel: bump 4.9 to 4.9.77
Refresh patches.
Remove upstreamed patches:

target/linux/generic/backport-4.9/023-2-smsc75xx-use-skb_cow_head-to-deal-with-cloned-skbs.patch
target/linux/generic/backport-4.9/023-3-cx82310_eth-use-skb_cow_head-to-deal-with-cloned-skb.patch
target/linux/generic/backport-4.9/023-4-sr9700-use-skb_cow_head-to-deal-with-cloned-skbs.patch
target/linux/generic/backport-4.9/023-5-lan78xx-use-skb_cow_head-to-deal-with-cloned-skbs.patch

CVEs completely or partially addressed:

CVE-2017-5715
CVE-2017-5753
CVE-2017-17741
CVE-2017-1000410

Compile-tested: ar71xx Archer C7 v2
Run-tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-20 20:22:01 +01:00
Kevin Darbyshire-Bryant
9ddfac8015 kernel: bump 4.14 to 4.14.14
Refresh patches.

CVEs completely or partially addressed:

CVE-2017-5715
CVE-2017-5753
CVE-2017-17741
CVE-2017-1000410

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-20 20:22:00 +01:00
Gabor Juhos
02050f7e7d kernel/4.{4, 9}: add manufacturer ID for Winbond NANDs
Some MikroTik devices are using a Winbond NAND flash. Linux treats
it as an unknown NAND before version 4.11:

  nand: device found, Manufacturer ID: 0xef, Chip ID: 0xf1
  nand: Unknown NAND 128MiB 3,3V 8-bit
  nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64

Backport a patch from 4.11 to show the manufacturer correctly:

  nand: device found, Manufacturer ID: 0xef, Chip ID: 0xf1
  nand: Winbond NAND 128MiB 3,3V 8-bit
  nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64

Tested on a MikroTik R951Ui-2HnD board.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-20 20:22:00 +01:00
Kevin Darbyshire-Bryant
adaf1cbcc8 dnsmasq: backport validation fix in dnssec security fix
A DNSSEC validation error was introduced in the fix for CVE-2017-15107

Backport the upstream fix to the fix (a simple typo)

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-20 14:22:39 +01:00
Kevin Darbyshire-Bryant
a3198061f8 dnsmasq: backport dnssec security fix
CVE-2017-15107

An interesting problem has turned up in DNSSEC validation. It turns out
that NSEC records expanded from wildcards are allowed, so a domain can
include an NSEC record for *.example.org and an actual query reply could
expand that to anything in example.org  and still have it signed by the
signature for the wildcard. So, for example

!.example.org NSEC zz.example.org

is fine.

The problem is that most implementers (your author included, but also
the Google public DNS people, powerdns and Unbound) then took that
record to prove the nothing exists between !.example.org and
zz.example.org, whereas in fact it only provides that proof between
*.example.org and zz.example.org.

This gives an attacker a way to prove that anything between
!.example.org and *.example.org doesn't exists, when it may well do so.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-19 22:11:16 +01:00
Christian Lamparter
9c2ac19b03 ipq806x: remove merged ipq4019 patch
The patch 0022-dts-ipq4019-support-ARMv7-PMU.patch
was merged into 4.8-rc1.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[refresh patches]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-18 21:21:11 +01:00
Christian Lamparter
5988364cf3 ipq806x: remove dependency on non-existent kmod
During the integration of the ipq40xx target,
the phy drivers were included into the ipq806x's
target kernel config.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
51dd8f3875 ipq-wifi: align AVM FRITZ!Box 4040's board-2.bin package
This patch renames the AVM FRITZ!Box 4040's board-2.bin
file and package to match the 'vendor_product' format.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
42b47f1b40 ipq806x: overhaul AVM FRITZ!box 4040 device-tree file
This patch aligns the device-tree file with the latest
guidelines.
 - No longer include qcom-ipq4019-ap.dk01.1.dtsi. This
   file is only partially upstream and therefore subjected
   to changes that might not be compatible with the board.

   As a result, the definitions from the file have been
   copied into this dts.

 - exclusively use decimal GPIO addresses.

 - reorganize the reserved-memory layout to waste less
   memory. There's no point in keeping the u-boot loader
   around. This should also make it possible    to create
   an image that will boot with the original EVA/ADAM2 loader
   without needing to install the modified u-boot loader.
   And finally mark the "tz-apps" as reusable.
   There isn't a way to  upload apps to the trust-zone in OpenWrt
   yet. But it might see some use in the future as a "secure"
   key-store/TPM.

 - sort the first-level nodes alphabetically.
 - sort nodes with an address by the address.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
8d755ef052 firmware: ath10k-firmware: update QCA988x firmware to 10.2.4-1.0-00033
This patch updates ath10k-firmware to use the
firmware-5.bin_10.2.4-1.0-00033 firmware for the QCA988x.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
f6a8505de0 firmware: ath10k-firmware: update QCA9887 firmware to 10.2.4-1.0-00033
This patch updates ath10k-firmware to use the
firmware-5.bin_10.2.4-1.0-00033 firmware for the QCA9887.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
2d3a73afc4 firmware: ath10k-firmware: update QCA9888 firmware to 10.4-3.4-00104
This patch updates ath10k-firmware to use the
firmware-5.bin_10.4-3.4-00104 firmware for the QCA9888.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
da5312d06e firmware: ath10k-firmware: update QCA9984 firmware to 10.4-3.4-00104
This patch updates ath10k-firmware to use the
firmware-5.bin_10.4-3.4-00104 firmware for the QCA9984.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
e0184fd0d5 firmware: ath10k-firmware: update QCA4019 firmware to 10.4-3.4-00104
This patch updates ath10k-firmware to use the
firmware-5.bin_10.4-3.4-00104 firmware for the QCA4019.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Christian Lamparter
280a7d3948 firmware: ath10k-firmware: update to 2017-12-20
This update automatically includes a new firmware for the QCA6174:
firmware-6.bin_WLAN.RM.4.4.1-00079-QCARMSWPZ-1

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-18 21:21:11 +01:00
Hans Dedecker
26045049ba odhcp6c: add sendopts config support and update to latest git HEAD
Add sendopts config support allowing to add options in sent DHCPv6 packets.

Options can be configured as follows :
	uci set network.wan6.sendopts="sntpservers:3001:3001::1,3001:3001::2 11:00000000000000000000006674692F 0x3e8:ABCDEF"

Based on a patch by Frank Andrieu <fandrieu@gmail.com>

See https://git.openwrt.org/?p=project/odhcp6c.git;a=commit;h=510aaf6d528210c5e8a6159f9b80b32615e88c5f
for a more detailed description.

Latest git changes :
	1f93bd4 dhcpv6: rework option passthrough logic
	a477e95 odhcp6c: rework userclass and vendorclass command handling
	510aaf6 odhcp6c: add -x opt:val support
	ab75be1 treewide: update copyrights to 2018
	f3a4609 odhcp6c: let odhcp6c_add_state return a success/failure indication

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-18 11:39:42 +01:00
Serg Studzinskii
eb58b14d27 ramips: tl-wr840n-v5: increase firmware partition for 4Mmtk layot
According to console log during TP-Link TL-WR840N v5 OEM firmware update
procedure 0x3e0000-0x3f0000 64kB "config" partition, which is used to store
router's configuration settings, is erased and recreated again during every
OEM firmware update procedure, thus does not contain any valuable factory data.
So it is conviniant to use this extra 64kB erase block for jffs overlay due
limited flash size on this device like it used on TP-Link's ar71xx boards.

Signed-off-by: Serg Studzinskii <serguzhg@gmail.com>
2018-01-18 08:04:18 +01:00
Hannu Nyman
4343ac5515 tools/mpfr: update to 4.0.0
Update mpfr to 4.0.0

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-18 08:04:18 +01:00
Hannu Nyman
d0610332dc tools/mpc: Update to 1.1.0
Update mpc to 1.1.0

(note: adds compatibility with mpfr 4.0.0)

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-18 08:04:18 +01:00
Dirk Brenken
ef8cd6be1e util-linux: add fstrim support
This PR adds optional fstrim support

Signed-off-by: Dirk Brenken <dev@brenken.org>
2018-01-18 08:04:18 +01:00
尤晓杰
a7e62b4be1 kirkwood: fix sysupgrade
The platform_check_image() stub need to return 0 for success, otherwise
the sysupgrade will fail with:

  Image check 'platform_check_image' failed.

Fixes: aa6f5f1787 ("kirkwood: use image metadata")
Signed-off-by: 尤晓杰 <yxj790222@163.com>
[reworded commit message}
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-18 07:26:28 +01:00
Mathias Kresin
b6868e2f47 ipq806x: fix ZyXEL NBG6817 sysupgrade
Use the first found directory in the tar archive instead of relying on
a directory named according to the userspace boardname.

It allows to change the boardname without adding another compatibility
layer to the zyxel sysupgrade.

Fixes: 33f09cf151 ("ipq806x: convert to dt-based board-detection")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-18 07:22:37 +01:00
Mathias Kresin
acafbac4b3 base-files: gpio switch: check if direction can be set
Obviously not all GPIO controller allow to change the direction. The issue
is around since the beginning of the script but only due to the recent
changes error messages are more visible.

Add a check if a change of the direction is supported by the GPIO
controller and fallback to setting only the value if not.

Fixes: FS#1271
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-18 07:22:37 +01:00
Mathias Kresin
f476c9a745 base-files: gpio switch: fix inverted logic
GPIOs are exported as active high to the sysfs, hence the logic need to be
inverted.

Fixes: e66c47fb14 ("base-files: gpio switch: set output value with
       direction")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-18 07:22:36 +01:00
Hans Dedecker
1ca4f8ca1c ubox: update to latest git HEAD
e7a63fb ubox: Remove unnecessary memset calls

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-17 22:00:43 +01:00
Hans Dedecker
dd975d15a7 ubus: fix wrong PKG_SOURCE_DATE
Fix wrong PKG_SOURCE_DATE introduced in e14cac0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-17 14:09:59 +01:00
Hans Dedecker
e14cac0ebf ubus: update to latest git HEAD
5bae22e ubus/lua: pass notification name to callback
212ceb1 valgrind complained about these
d57907c fix invalid close() call

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-17 13:47:14 +01:00
Felix Fietkau
e2c0e904c0 ath9k: discard undersized packets
Sometimes the hardware will push small packets that trigger a WARN_ON
in mac80211. Discard them early to avoid this issue.

Reported-by: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-17 12:32:48 +01:00
Felix Fietkau
bdc412941a build: remove use of STAGING_DIR_HOST/usr (fixes cmake build error on macOS)
This directory is never created, nor is it used anywhere. Using it in
HOST_LDFLAGS causes a linker warning to be emitted on macOS, which
messes with cmake configure tests.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-17 12:16:27 +01:00
Catrinel Catrinescu
ddd7cdc54b .gitignore: add .project & .cproject for eclipse users
For eclipse users, .project is always created inside the project.
For users of CDT within Eclipse, add also .cproject, thanks Dirk
Feytons.

Signed-off-by: Catrinel Catrinescu <cc@80211.de>
2018-01-17 11:07:17 +01:00
Gabor Juhos
ec4e9a88ff ar71xx: drop mdio-gpio.h include from mach-om5pacv2.c
The setup code of the OpenMesh OM5P ACv2 device uses nothing
from the mdio-gpio.h header, so remove the inclusion of that.

Also remove the kernel version check which is needed only
because the mdio-gpio.h header exists in a different path
in older kernels.

Compile tested only.

Cc: Sven Eckelmann <sven.eckelmann@openmesh.com>
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
d3afd2a400 cns3xxx: switch to kernel 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
9e7d53c3fe cns3xxx: refresh patches
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
7f93624d5f cns3xxx: remove deprecated uart flags
Flag UPF_NO_TXEN_TEST is deprecated.

Remove it.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
f3dec44520 cns3xxx: fix ethernet IRQ imbalance in 4.14
Kernel 4.14 contains more warnings regarding NAPI usage, which showed
following warning:

[ 4016.420000] ------------[ cut here ]------------
[ 4016.430000] WARNING: CPU: 1 PID: 14 at kernel/irq/manage.c:525
__enable_irq+0x3c/0x78
[ 4016.440000] Unbalanced enable for IRQ 51
[ 4016.440000] Modules linked in: ath9k ath9k_common pppoe ppp_async
ath9k_hw ath pppox ppp_generic nf_conntrack_ipv6 mac80211 iptable_nat
ipt_REJECT ipt_MASQUERADE cfg80211 xt_time xt_tcpudp xt_state xt_nat
xt_multiport xt_mark xt_mac xt_limit xt_conntrack xt_comment xt_TCPMSS
xt_REDIRECT xt_LOG slhc nf_reject_ipv4 nf_nat_redirs
[ 4016.500000] CPU: 1 PID: 14 Comm: ksoftirqd/1 Tainted: G        W
       4.14.11 #0
[ 4016.500000] Hardware name: Gateworks Corporation Laguna Platform
[ 4016.510000] Backtrace:
[ 4016.510000] [<c010a28c>] (dump_backtrace) from [<c010a56c>]
(show_stack+0x18/0x1c)
[ 4016.520000]  r7:c059df4b r6:00000000 r5:60000093 r4:00000000
[ 4016.530000] [<c010a554>] (show_stack) from [<c048b04c>]
(dump_stack+0x94/0xb4)
[ 4016.530000] [<c048afb8>] (dump_stack) from [<c011760c>]
(__warn+0xc8/0xf8)
[ 4016.540000]  r7:c059df4b r6:c015144c r5:00000000 r4:cf863e08
[ 4016.550000] [<c0117544>] (__warn) from [<c011767c>]
(warn_slowpath_fmt+0x40/0x48)
[ 4016.550000]  r9:cf863eb0 r8:00000036 r7:00000000 r6:c0636360
r5:00000033 r4:cf80a500
[ 4016.560000] [<c0117640>] (warn_slowpath_fmt) from [<c015144c>]
(__enable_irq+0x3c/0x78)
[ 4016.570000]  r3:00000033 r2:c059e0c5
[ 4016.570000] [<c0151410>] (__enable_irq) from [<c01514ec>]
(enable_irq+0x64/0x7c)
[ 4016.580000] [<c0151488>] (enable_irq) from [<c0335c14>]
(eth_poll+0x28c/0x558)
[ 4016.590000]  r5:d08926c0 r4:cf894488
[ 4016.590000] [<c0335988>] (eth_poll) from [<c03b1718>]
(net_rx_action+0xfc/0x2e8)
[ 4016.600000]  r10:cf863eb8 r9:cf863eb0 r8:00000001 r7:0f7b5000
r6:c0636360 r5:cfdeb360
[ 4016.610000]  r4:cf894488
[ 4016.610000] [<c03b161c>] (net_rx_action) from [<c0101510>]
(__do_softirq+0xe0/0x228)
[ 4016.620000]  r10:00000100 r9:c070204c r8:c0702040 r7:00000003
r6:00000008 r5:40000003
[ 4016.620000]  r4:cf862000
[ 4016.630000] [<c0101430>] (__do_softirq) from [<c011ae28>]
(run_ksoftirqd+0x34/0x58)
[ 4016.630000]  r10:c0133964 r9:00000000 r8:00000001 r7:00000000
r6:c070b44c r5:cf862000
[ 4016.640000]  r4:cf8037e0
[ 4016.640000] [<c011adf4>] (run_ksoftirqd) from [<c0133adc>]
(smpboot_thread_fn+0x178/0x190)
[ 4016.650000] [<c0133964>] (smpboot_thread_fn) from [<c013099c>]
(kthread+0x11c/0x138)
[ 4016.660000]  r9:cf8037e0 r8:cf802cdc r7:cf839df8 r6:cf803800
r5:00000000 r4:cf802cc0
[ 4016.670000] [<c0130880>] (kthread) from [<c0107218>]
(ret_from_fork+0x14/0x3c)
[ 4016.680000]  r10:00000000 r9:00000000 r8:00000000 r7:00000000
r6:00000000 r5:c0130880
[ 4016.680000]  r4:cf803800 r3:cf862000
[ 4016.690000] ---[ end trace 51114df08f429115 ]---

This is triggered by calling eth_schedule_poll(sw) after the IRQ has
been re-enabled.

Rework the network code to only enable IRQ's again if NAPI agrees it's
safe to do so.

Also only re-enable IRQ *after* cleaning up the RX ring and re-enabling
DMA, which otherwise resulted in ugly warnings regarding dirty page
fragments.
These popped up nearly immediately when building the kernel with O2 iso
Os.

--> Note that this change fixes stability issues, at the cost of ~8%
throughput performance.

While at it, also change the iface name being used in warning prints,
making it more obvious: "switch%d" --> "cns3xxx_eth"

The changes have been tested on 4 boards, each moving ~30TB of data

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
9f54aaff70 cns3xxx: update patches for 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
2543e7f08c cns3xxx: refresh kernel 4.14 config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
0ef702c7e3 cns3xxx: copy patches for kernel 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
809a265e35 cns3xxx: copy config for kernel 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
d29e47f191 config: don't define the same symbol twice
In commit fce35bce0f ("config: support new symbol intro'd in kernel
4.12")
I forgot to remove the initial debug test line.

This clearly is wrong as the same symbol is defined conditionally in the
line below as it should be.

I looked over it as I just checked if the symbol was present now upon
testing it.

Fixes: fce35bce0f ("config: support new symbol intro'd in kernel
4.12")

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Gabor Juhos
fbd33c2b6c ar71xx: fix format of the 701-MIPS-ath79-add-routerboard-detection patches
Commit e15c63a375 ("ar71xx: add support for MikroTik RouterBOARD wAP
G-5HacT2HnD (wAP AC") broke the format of the patches. In unified diff
format, the unchanged, contextual lines must be preceded by a space
character.

Refresh the patches with quilt to fix them.

Fixes: e15c63a375 ("ar71xx: add support for MikroTik RouterBOARD wAPG-5HacT2HnD (wAP AC")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-17 11:07:17 +01:00
Gabor Juhos
508999d366 ar71xx: fix format of the 741-MIPS-ath79-add-PCI-for-QCA9556-SoC patches
The patches introduced in commit 20e68f6d39 ("ar71xx: kernel: enable
PCI on QCA9556 SoC") have non standard format. In unified diff format,
the unchanged, contextual lines must be preceded by a space character.

Refresh the patches with quilt to fix them.

Fixes: 20e68f6d39 ("ar71xx: kernel: enable PCI on QCA9556 SoC")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-17 11:07:17 +01:00
Gabor Juhos
bc178f6b15 ar71xx: mach-rbspi: simplify reset button registration
The setup code defines four individual structures for the
Reset buttons of the supported boards. The only difference
between the definitions is the GPIO number used for the
button.

Replace the different structures with one generic variant,
and add a helper function to simplify the button registration.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-17 11:07:17 +01:00
Koen Vandeputte
8954bc31ed imx6: add support for the intel gbit driver on GW5520
The Gateworks GW5520 board uses 2x intel gigabit mac's, instead of the
internal i.MX6 FEC.

Add support for these.

Signed-off-by: Scott V. Kamp <outbackdingo@gmail.com>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-17 11:07:17 +01:00
Felix Fietkau
765599cb0e mac80211: remove support code for authsae
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-17 11:05:11 +01:00
Felix Fietkau
8061c62f5d authsae: remove package
It is no longer actively maintained and does not work well in many
configurations. Fully replaced by wpad-mesh

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2018-01-17 11:05:11 +01:00
Pavel Kubelun
644a0d5403 ipq8065: adjust SS USB PHY power settings
According to QSDK ipq8065 has different SS USB PHY power settings.

Adjust it according to QSDK settings.

It also corresponds to oem Netgear R7800 tarball for soc ver >= 2.
eeac2e1019/git_home/linux.git/sourcecode/arch/arm/mach-msm/board-ipq806x.c (L2494)

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:05:11 +01:00
Pavel Kubelun
e93a16ed3f ipq806x: usb: add phy 1 master reset control
In current state only phy 0 master reset is controlled.
Add the phy 1 reset.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:04:57 +01:00
Pavel Kubelun
de748a121e ipq806x: usb: Control USB master reset
Picking commit from QSDK
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=eggplant&id=a86bda9f8a7965f0cedd347a9c04800eb9f41ea3

Commit message:
"During removal of the glue layer(dwc3-of-simple), USB master reset is set to active and during insertion it is de-activated."

Change-Id: I537dc810f6cb2a46664ee674840145066432b957
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
(cherry picked from commit 4611e13580a216812f85f0801b95442d02eeb836)"

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:06 +01:00
Pavel Kubelun
6617f3c6ab ipq806x: dwc3: Fix power_on and power_off sequence
Picking commit from QSDK
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/drivers/phy/phy-qcom-dwc3.c?h=eggplant&id=d316437c9cdb70023a760342678f32e27241725a

The commit fixes:
- dwc3 phy module unloading
- possibly fixes FS#177 when some devices were improperly enumerated as HS while being SS thus stucking the driver during boot.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:06 +01:00
Pavel Kubelun
c263e18a53 ipq806x: Update HSIO recommended usb phy settings
Picking commit from QSDK
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/drivers/phy/phy-qcom-dwc3.c?h=eggplant&id=cf82fdf4bdd081cd81bb081f7815b915bc8bb851

The comit adjusts USB dwc3 phy default values as per QSDK recomendation and allows to set it through DT.

Commit message:
"SoC version based values will be recovered from the device node.
If device node does not have such values, defaults are applied.

Change-Id: Ia77b5b7fe95ce1a433885df1761091bced98d989
Signed-off-by: Gokul Sriram Palanisamy <gpalan@codeaurora.org>"

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:06 +01:00
Pavel Kubelun
a4c1767897 Revert "ipq8064: Fix dwc3 module unloading"
Preparing for proper fixes thus reverting commits:
- 8db079a9ff "ipq8064: Fix dwc3 module unloading"
- c75f059b0c "ipq8064: Fix dwc3 module unloading"

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:05 +01:00
Pavel Kubelun
7903a9219c ipq806x: update clk and cpufreq drivers
A newer clk and cpufreq drivers for ipq806x platform had been sent upstream.

A change that i have noticed is that now it's possible to set min, cur and max frequencies from sysfs (previously it was bugged and caused nothing).

Following patches are removed:
 - 0036-clk-Avoid-sending-high-rates-to-downstream-clocks-du.patch - seems it was dropped from the patchset by current committer.
 - 0044-clk-qcom-krait-Remove-CLK_IS_ROOT.patch - already applied to the driver itself in the corresponding patch.
 - 0057-clk-qcom-Add-regmap-mux-div-clocks-support.patch - seem to be irrelevant to ipq806x.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:05 +01:00
Pavel Kubelun
83499bef73 ipq806x: force 2nd pci slot into gen1 mode
According to QSDK and OEM tarballs (checked c2600, r7500v2, r7800) 2nd pci slot (pci1, 2,4 GHz card)) on ap148 based boards should operate in gen1 mode.
EA8500 is an exception and according to GPL pcie0 should operate in gen1 mode.

In previous commit we've added the support for this option, so enable it in DT for affected devices.

QSDK ref:
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=f3b07fe309027c52fc163149500cedddd707c506

While at it move the phy transmit termination offset value into dtsi file as it's platform specific.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:05 +01:00
Pavel Kubelun
36a96a4493 ipq806x: fix wireless regression
In current state there's huge regression on ipq806x target that causes the device to transmit broken/malformed frames that are not corrected/detected by error control mechanisms and other less severe issues.
https://bugs.lede-project.org/index.php?do=details&task_id=1197

This finally had been narrowed down to patch 0071-pcie-qcom-fixes.patch

Meanwhile QSDK contains a handful of commits that add support for ipq806x to upstream qcom pcie driver
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/log/drivers/pci/host/pcie-qcom.c?h=eggplant
Unfortunately qca developers do not bother to push it upstream.

Using those commits instead of lede 0071 patch fixes mentioned issue and probably many others as it seems that corrupted data has been originating within pcie misconfiguration.

Fixes: FS#1197 and probably others
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2018-01-17 11:02:05 +01:00
Hannu Nyman
3c4df661c0 tools/cmake: update to 3.10.1
Update cmake to 3.10.1
Refresh patches

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-17 08:52:54 +01:00
Hannu Nyman
b0d513ec91 tools/scons: update to 3.0.1
Update scons to 3.0.1

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-17 08:52:54 +01:00
Hannu Nyman
b4a46f0764 tools/libressl: update to 2.6.4
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2018-01-17 08:52:54 +01:00
Jo-Philipp Wich
5bbcd80e3f xtables-addons: remove from base
The package has been moved to the package feed repository to allow for
non-base dependencies such as Perl.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-16 19:40:29 +01:00
Jo-Philipp Wich
5c0b288815 netfilter: enable CONFIG_NF_CONNTRACK_MARK from kmod-nf-conntrack
Unconditionally enable connmark support and tie it to the conntrack core
module to allow removing this kernel configuration dependency from the
xtables-addons package.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-16 19:39:08 +01:00
Jo-Philipp Wich
0a410df234 feeds: switch git.lede-project.org URLs to git.openwrt.org
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-16 16:59:22 +01:00
Jo-Philipp Wich
190c1c3cc8 iwinfo: update to latest git HEAD
5a5e21b nl80211: skip event notifications in wpa_supplicant scan result reply

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-16 14:10:52 +01:00
Kevin Darbyshire-Bryant
aba3b1c6a3 dnsmasq: use SIGINT for dnssec time valid
Dnsmasq used SIGHUP to do too many things: 1) set dnssec time validation
enabled, 2) bump SOA zone serial, 3) clear dns cache, 4) reload hosts
files, 5) reload resolvers/servers files.

Many subsystems within LEDE can send SIGHUP to dnsmasq: 1) ntpd hotplug
(to indicate time is valid for dnssec) 2) odhcpd (to indicate a
new/removed host - typically DHCPv6 leases) 3) procd on interface state
changes 4) procd on system config state changes, 5) service reload.

If dnssec time validation is enabled before the system clock has been
set to a sensible time, name resolution will fail.  Because name
resolution fails, ntpd is unable to resolve time server names to
addresses, so is unable to set time.  Classic chicken/egg.

Since commits 23bba9cb33 (service reload) &
4f02285d8b (system config)  make it more
likely a SIGHUP will be sent for events other than 'ntpd has set time'
it is more likely that an errant 'name resolution is failing for
everything' situation will be encountered.

Fortunately the upstream dnsmasq people agree and have moved 'check
dnssec timestamp enable' from SIGHUP handler to SIGINT.

Backport the upstream patch to use SIGINT.
ntpd hotplug script updated to use SIGINT.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-15 22:34:51 +01:00
Daniel Gimpelevich
e4442ca2d8 ramips: use blue status LED for Xiaomi Router 3G
The blue LED is what other firmwares use for this device, and it's a lot
easier on the eyes than its shade of yellow, which implies an error
condition.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[merge into existing $boardname:blue:status block]
Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: Piotr Dymacz <pepe2k@gmail.com>
Acked-by: Cezary Jackiewicz <cezary@eko.one.pl>
2018-01-15 21:45:43 +01:00
Maxim Anisimov
5bdd238b63 ramips: add support for TP-Link Archer C20 v4
TP-Link Archer C20 v4 is a router with 5-port FE switch and
non-detachable antennas. It's based on MediaTek MT7628N+MT7610EN.

Specification:
- MediaTek MT7628N/N (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 5x 10/100 Mbps Ethernet
- 3x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- 7x LED (GPIO-controlled*), 2x button, power input switch

* WAN LED in this devices is a dual-color, dual-leads type which isn't
  (fully) supported by gpio-leds driver. This type of LED requires both
  GPIOs state change at the same time to select color or turn it off.
  For now, we support/use only the green part of the LED.
* MT7610EN ac chip isn't not supported by LEDE. Therefore 5Ghz won't
  work.

Flash instruction:

The only way to flash LEDE image in ArcherC20v4 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "openwrt-ramips-mt7628-ArcherC20v4-squashfs-tftp-recovery.bin"
   to "tp_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 for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2018-01-15 21:45:43 +01:00
Maxim Anisimov
ff1e895530 ramips: rename TP-Link Archer C20 to TP-Link Archer C20 v1
This changes device name from "TP-Link Archer C20" to "TP-Link Archer C20 v1"
because of TPLINK released new TP-Link Archer C20 v4. Additionally
migration to the generic board detection has been made.

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2018-01-15 21:45:43 +01:00
David Bauer
6c56e968c1 ar71xx: fix TP-Link Archer C7 v4 switch LEDs
Match mapping of the switch LEDs according to the TP-Link
firmware behavior. LAN port 1 triggers the most right LAN LED,
LAN port 2 the second LAN LED from the right and so on.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-01-15 21:45:43 +01:00
Chen Minqiang
a8054d83dc ramips: add image checks
As long as we can't enforce image metadata, we need to use (platform)
image checks to have at least soem kind of validation.

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2018-01-15 21:45:43 +01:00
Mathias Kresin
16f2befc3c ipq806x: drop ubifs support
Ubifs is disabled for all boards except the evaluation boards and the
Fritz!Box 4040 anyway. According the author, the ubifs support for the
Fritz!Box 4040 wasn't enabled on purpose.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-15 21:45:43 +01:00
Mathias Kresin
0af5e9bdc4 ipq806x: drop legacy image leftovers
Remove leftover code used for legacy images. There are no relevant
binary differences for the images after removing the legacy leftovers.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-15 21:45:43 +01:00
Mathias Kresin
52e7df3f49 ipq806x: unset filesystem specific build command by default
Initialise the filesystem specific build command. Otherwise it will be
unintended inherit to following images and will cause a wrong image
format.

The issue is around for ages but was only recently triggered due to the
added support for the Openmesh a42.

Fixes: FS#1276

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-15 21:45:43 +01:00
Mathias Kresin
f319c5c254 ipq806x: remove unnecessary filesystem specific build
The Openmesh factory image doesn't need a squashfs specific build command.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-15 21:45:43 +01:00
Mathias Kresin
f2a8e02134 ipq806x: use bin file extension for sysupgrade-tar images
Use the file extension bin for sysupgrade-tar images to unify the file
extension across the target/tree.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-15 21:45:43 +01:00
Koen Vandeputte
7488be7010 uqmi: fix raw-ip mode for newer lte modems
Some newer LTE modems, like the MC7455 or EC25-E do not support
"802.3" mode, and will stay in "raw-ip" regardless of the mode being
set.

In this case, the driver must be informed that it should handle all
packets in raw mode. [1]

This commit fixes connectivity issues for these devices.

Before:

[ Node 5 ] udhcpc -i wwan0
udhcpc: started, v1.27.2
udhcpc: sending discover
udhcpc: sending discover
udhcpc: sending discover

After:

[ Node 5 ] udhcpc -i wwan0
udhcpc: started, v1.27.2
udhcpc: sending discover
udhcpc: sending select for 100.66.245.226
udhcpc: lease of 100.66.245.226 obtained, lease time 7200
udhcpc: ifconfig wwan0 100.66.245.226 netmask 255.255.255.252 broadcast
+
udhcpc: setting default routers: 100.66.245.225

[1] https://lists.freedesktop.org/archives/libqmi-
devel/2017-January/002064.html

Tested on cns3xxx using a Sierra Wireless MC7455 LTE-A

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[bumped PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-15 15:30:53 +01:00
Piotr Dymacz
030176e0e7 ar71xx: image: rework EnGenius ENS202EXT factory image
Current EnGenius ENS202EXT factory image recipe version causes factory
images of the following devices to be corrupted. This issue wasn't
visible until recent changes of image Makefile snippets order.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 13:39:54 +01:00
Jo-Philipp Wich
ebd15471ea tools: make-ext4fs: remove LEDE_GIT references
Change the make-ext4fs Makefile to use the common PROJECT_GIT
variable instead.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-15 13:14:12 +01:00
Jo-Philipp Wich
497f028da1 omap24xx: remove referece to not existing kmod-usb-musb-tusb6010
Remove leftover reference to a not existing kmod-usb-musb-tusb6010 from
the omap24xx target, the corresponding module is built into the kernel.

Fixes: 96815fe0a2 ("kernel: remove omap24xx specific kernel module packages")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-15 13:13:34 +01:00
Hans Dedecker
4e48230954 6rd: pass ipcalc as argument to eval
Instead of grepping for NETWORK after calling ipcalc.sh; pass ipcalc.sh as
argument to eval allowing to use $NETWORK to retrieve the IPv4 prefix
(ip4prefix).

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-15 09:49:26 +01:00
Roger Pueyo Centelles
e15c63a375 ar71xx: add support for MikroTik RouterBOARD wAP G-5HacT2HnD (wAP AC)
This patch adds support for the MikroTik RouterBOARD wAP G-5HacT2HnD (wAP
AC), a small weatherproof dual band, dual-radio 802.11ac wireless AP with
integrated omnidirectional anntennae and one 10/100/1000 Mbps Ethernet
ports.

See https://mikrotik.com/product/RBwAPG-5HacT2HnD for more info.

Specifications:
 - SoC: Qualcomm Atheros QCA9556
 - RAM: 64 MB
 - Storage: 16 MB NOR
 - Wireless:
   · Atheros AR9550 (SoC) 802.11b/g/n 2x2:2, 2 dBi antennae
   · Qualcomm QCA9880 802.11a/n/ac 3x3:3, 2 dBi antennae
 - Ethernet: Atheros AG71xx (SoC, AR8033), 1x 1000/100/10 port, passive
   PoE in

Working:
 - Board/system detection
 - Sysupgrade
 - Serial console
 - Ethernet
 - 2.4 GHz radio
 - 5 GHz radio
 - Reset button

Not working:
 - LEDs (added according to Mikrotik's GPL sources but not functional)

 Unsupported:
 - ZT2046Q SPI temperature and voltage sensor

Contributors: Giuseppe Tipaldi (@Ciusss89)
              Ricky (@rickydee)

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: whitespace fix, use PHYADDR instead of PHYMASK]
2018-01-15 04:14:18 +01:00
Roger Pueyo Centelles
20e68f6d39 ar71xx: kernel: enable PCI on QCA9556 SoC
This patch enables the PCI bus on the QCA9556 SoC, the same way it is
done on the same family SoC QCA9558.

Tested on a MikroTik RouterBoard wAPG-5HacT2HnD (wAP AC).

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2018-01-15 04:14:18 +01:00
Piotr Dymacz
5352669c2c ramips: add support for ALFA Network AC1200RM
ALFA Network AC1200RM is an AC1200 router, with 5-port FE switch and
USB 2.0 port. Device is based on MediaTek MT7620A + MT7612EN.

Specification:

- MT7620A (580 MHz)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 5x 10/100 Mbps Ethernet with passive PoE output in WAN and LAN4
- 2T2R 2.4 GHz (MT7620A)
- 2T2R 5 GHz (MT7612EN)
- 1x USB 2.0
- 9x LED (8 driven by GPIO)
- 1x button (reset)
- DC jack for main power input (12-24 V)
- 2x UART, I2C, I2S and LED headers

Flash instruction (do it under U-Boot, using UART and TFTP server):

Select option "2: Load system code then write to Flash via TFTP" and
use "sysupgrade" image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Piotr Dymacz
53e3df2e71 uboot-envtools: add support for GL.iNet GL-AR750
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Piotr Dymacz
2e5252d346 ar71xx: add support for GL.iNet GL-AR750
GL.iNet GL-AR750 is a small size, dual-band (AC750) router, based on
Qualcomm/Atheros QCA9531 v2 + QCA9887. FCC ID: 2AFIW-AR750.

Specification:

- 650/597/216 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3x 10/100 Mbps Ethernet
- 2T2R 2.4 GHz (QCA9531)
- 1T1R 5 GHz (QCA9887)
- 1x USB 2.0 (power controlled by GPIO)
- 1x microSD (GL857L)
- 3x LED (all driven by GPIO)
- 1x button (reset)
- 1x 2-pos switch
- header for optional PoE module
- 1x micro USB for main power input
- UART + I2C header on PCB

Flash instruction:

Vendor firmware is based on OpenWrt/LEDE. GUI or sysupgrade can be used
to flash OpenWrt/LEDE firmware.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Piotr Dymacz
6cf682e214 ar71xx: image: move Sitecom WLR-8100 from legacy to generic
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Davide Fioravanti
a85db951db ar71xx: fix Sitecom WLR-8100 support
This patch fixes Sitecom WLR-8100:

- mtd layout
- LAN and WAN MAC address setup
- 2.4 GHz Wi-Fi MAC address setup
- 5 GHz Wi-Fi support (calibration data, MAC address setup, missing
  ath10k-* packages)

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
[squashed commits, fixed whitespace issues, reworded commit message]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Piotr Dymacz
ec141c1f3d uboot-envtools: add support for ALFA Network R36A
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Piotr Dymacz
af8f0629df ar71xx: add support for ALFA Network R36A
ALFA Network R36A is a successor of the previous model, the R36 (Ralink
RT3050F based). New version is based on Qualcomm/Atheros QCA9531 v2.

Specification:

- 650/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 2T2R (QCA9531) 2.4 GHz, 2x u.fl connectors on PCB
- 1x USB 2.0 (power controlled by GPIO)
- 6x LED (5 of them are driven by GPIO)
- 2x button (reset, wifi/wps)
- external h/w watchdog (EM6324QYSP5B, disabled and not used)
- DC jack for main power input (12 V)
- UART header on PCB

Flash instruction:

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

1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with one of RJ45 ports, press the reset button, power up
   device, wait for first blink of all LEDs (indicates network setup),
   then keep button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:12:13 +01:00
Piotr Dymacz
1f06144cde ar71xx: add support for Teltonika RUT900
Teltonika RUT900 is an industrial 3G router based on Atheros AR9344.

There are available 3 other models in RUT9xx series: RUT905, RUT950 and
RUT955, which differ in availability of additional I/O ports, built-in
GSM modem type, GPS antenna and other features. FCC ID of the RUT950
model (LTE module built-in): 2AET4-RUT950.

This patch adds support for the RUT900 model only but can be easily
extended to cover whole series. Also, as there are several different
3/4G modules (Huawei, Quectel, Telit) used in whole series, packages
required for WWAN support are not included by default. It is up to the
user to install required software for built-in modem.

Specification:

- 550/400/200 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1
- 2T2R 2,4 GHz (AR9344), with ext. PA (MGA-22103) and LNA
- built-in 3G module (example: Telit HE910-D)
- 2x miniSIM slot
- 2x RP-SMA/F (Wi-Fi), 2x SMA/F (3G)
- PCA9539 16-bit GPIO I2C expander
- 12x LED (4 are driven by AR9344, 7 by PCA9539)
- 1x button (reset)
- DC jack for main power input (9-30 V)
- UART available on PCB edge connector

Serial console pinout:

- RX: pin1 (square) on top side of the main PCB (AR9344 is on top)
- TX: pin1 (square) on bottom side

Flash instruction:

Vendor firmware is based on OpenWrt CC release. Use the "factory" image
directly in GUI (make sure to uncheck "keep settings") or in U-Boot web
based recovery. To avoid any problems, make sure to first update vendor
firmware to latest version - "factory" image was successfully tested on
device running "RUT9XX_R_00.03.960" firmware and U-Boot "3.0.1".

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-15 00:09:43 +01:00
Piotr Dymacz
b38ff7847b uboot-envtools: add support for ALFA Network N5Q
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 21:30:22 +01:00
Piotr Dymacz
4b0eebe9df ar71xx: add support for ALFA Network N5Q
ALFA Network N5Q is a successor of previous model, the N5 (outdoor
CPE/AP, based on Atheros AR7240 + AR9280). New version is based on
Atheros AR9344.

Specification:

- 550/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 2T2R 5 GHz (AR9344), with ext. PA (RFPA5542) and LNA, up to 27 dBm
- 8x LED (7 are driven by GPIO)
- 1x button (reset)
- external h/w watchdog (EM6324QYSP5B, disabled and not used)
- header for optional 802.3at/af PoE module
- DC jack for main power input (optional, not installed by default)
- UART header on PCB

Flash instruction:

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

1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with one of RJ45 ports, press the reset button, power up
   device, wait for first blink of all LEDs (indicates network setup),
   then keep button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 21:30:16 +01:00
Piotr Dymacz
62610129b2 uboot-envtools: add support for ALFA Network AP91-5G
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 20:33:18 +01:00
Piotr Dymacz
7f9f42d42e ar71xx: add support for ALFA Network AP91-5G
ALFA Network AP91-5G is a 5 GHz outdoor AP/CPE board, based on Atheros
AR7240 + AR9280.

Specification:

- 400/400/200 MHz (CPU/DDR/AHB)
- 32 MB of RAM (DDR1)
- 8 MB of FLASH (SPI NOR)
- 1x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 1T1R 5 GHz (AR9280), with ext. PA (SE5004L) and LNA, up to 27 dBm
- 6x LED (5 are driven by GPIO)
- 1x button (reset)
- external h/w watchdog (EM6324QYSP5B, disabled and not used)
- header for optional 802.3at/af PoE module
- DC jack for main power input (optional, not installed by default)
- UART and LEDs headers on PCB

Flash instruction:

Use "factory" image in vendor GUI (in case of problems, make sure your
board has up to date firmware). Alternatively, TFTP in U-Boot can be
used: select option "2. Load system code then write to Flash via TFTP"
during early boot and use "sysupgrade" image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 20:33:18 +01:00
Piotr Dymacz
ce6c7691ec ar71xx: base-files: cosmetic cleanups in preinit scripts
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 20:33:18 +01:00
Piotr Dymacz
9a867fcddf ar71xx: base-files: drop LED control from 05_set_iface_mac_ar71xx
There is no "dir-615-c1:green:wancpu" LED defined in mach-dir-615-c1.c

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 20:33:18 +01:00
Piotr Dymacz
71489bfa48 ar71xx: base-files: fix boards order in 05_set_preinit_iface_ar71xx
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2018-01-14 20:33:18 +01:00
Stijn Tintel
d6679090b4 kernel: add missing config symbol
The KEXEC_FILE symbol exists for X86 since kernel 3.17, and since 4.10
for PPC64. Add it to x86/config-4.9 and to generic/config-4.14.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-14 21:27:33 +02:00
Stijn Tintel
0c12830d4a kernel: add missing DRM symbols to generic config
Several new DRM symbols that were introduced after 4.9 are missing in
the generic config for 4.14, so add them.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-14 21:27:26 +02:00
Stijn Tintel
6577244b6f kernel: sort generic configs
Use kconfig.pl to sort the generic kernel configs.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-14 20:31:02 +02:00
Stijn Tintel
34e319dd30 kernel: move DRM_DEBUG_* symbols to generic config
While working on a new target (meson), the kernel build failed due to
missing DRM_DEBUG_MM_SELFTEST symbol. This can potentially happen on all
targets that enable DRM drivers in the kernel config or via kmod
packages, so add it to the generic config and remove it from x86
subtarget configs, together with DRM_DEBUG_MM.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-14 20:15:01 +02:00
Jo-Philipp Wich
a405a93fa6 metadata: do not emit broken kconfig dependency statements
Prevent emitting broken dependency statements when resolving references
to non existing packages to an empty provider list.

Fixes: 47d6b05ad3 ("metadata: always resolve dependencies through provides list")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-14 19:00:06 +01:00
Matthias Schiffer
06d51dbb9e scripts/feeds: fix install of packages with different source/binary names
The logic for choice between source and binary packages was reversed.

Fixes: 52719c2b67 "metadata: scripts/feeds: distinguish between source
and binary packages, resolve virtual dependencies"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-14 17:07:58 +01:00
Matthias Schiffer
0cd5e85e7a ar71xx: create new ar71xx/tiny subtarget for 4MB flash devices
This new subtarget sets the small_flash flag and removes unused kernel
configuration.

small_flash removes KERNEL_KALLSYMS, which saves ~107KB in the default
configuration; removing unneeded hardware support from ar71xx/tiny saves
another ~18KB (both after LZMA).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
29d126b5c1 ar71xx/generic: add generic- prefix to vendor-specific image Makefile snippets
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
3d365831b0 ar71xx: reorganize kernel configuration
Rather than including all machines for the generic subtarget in the base
configuration, leave the base configuration without specific machines and
create a proper subtarget config for ar71xx/generic. The configuration
diffs of the mikrotik and nand subtargets get significantly shorter, as
will the configurations of future subtargets.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
d04056e5ea ar71xx: disable devicetree support
While we'd like to convert ar71xx to DT-based configuration
eventually, we aren't quite there yet, and shipping half-baked DT support
that is not used at all wastes precious space.

Saves ~120KB before LZMA, ~33KB after LZMA.

Run-tested on TP-Link CPE510 and TL-WR841 v7.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
e9fa0b9f3a ath9k, ath10k(-ct): move spectral scan support under a separate config symbol
Backport patches that separate spectral scan support from general debugfs
support of ath9k/ath10k; this allows to remove the dependency on
KERNEL_RELAY from these driver packages even with debugfs enabled and
avoids the memory footprint of the relay buffers allocated by ath9k/ath10k
even when they aren't used at all.

The KERNEL_RELAY dependency is moved to a new config symbol that enables
spectral scan support in these drivers.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
de0ccd3532 metadata: improve code readability by using (s)printf instead of string interpolation
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
1e2570dd04 include/package-dumpinfo.mk: don't duplicate source package information for every binary package
Eventually the BUILDONLY package flag could be replaced by simply creating
a package Makefile without any BuildPackage calls. This will fail for now,
as BuildPackage also causes the Makefile's compile target etc. to do
something useful at all.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
4bb54ed15e build: remove obsolete "package feature" feature
Package "features" seem to be unused for some time. In any case, custom
Config.in snippets and package PROVIDES are a much more flexible way to
express similar options.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
52719c2b67 metadata: scripts/feeds: distinguish between source and binary packages, resolve virtual dependencies
Properly resolve build depends to source packages and runtime depends to
binary packages. Dependencies on virtual packages are resolved to the first
provider now.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:45 +01:00
Matthias Schiffer
47d6b05ad3 metadata: always resolve dependencies through provides list
Instead of adding virtual packages to the normal package list, keep a
separate list for provides, make each package provide itself, and resolve
all dependencies through this list. This allows to use PROVIDES to replace
existing packages.

Fixes FS#837.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
565de8b8a8 metadata: simplify generation of build depends from runtime depends
Runtime depends cannot have a buildtype suffix, and they never refer to
source package names. In addition, this adds warnings about unsatisfiable
dependencies.

Furthermore, this change fixes the generation of conditional build
dependencies for virtual packages provided by different source packages.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
5b479f7dcf metadata: handle target build depends together with host build depends
Target build depends are similar to host build depends in that they refer
to source packages rather than binary packages. Therefore, it makes sense
to handle them together, rather than putting them in a list together with
runtime depends and trying to figure out if the entries refer to source or
to binary packages afterwards.

This does lead to PKG_BUILD_DEPENDS entries referring to binary package
names not working anymore, which requires some fixes in the package
repositories.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
37cf77d946 treewide: fix build depends to refer to source package names
Build depends must refer to source packages rather than binary package
names.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
3abf663c22 build: remove package preconfig feature
This feature has been unused for years, and its scope is too limited to be
actually useful.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
423ec18116 metadata: remove redundant fields from package hash
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
f0c702f124 metadata: replace %subdir hash with a path field in source packages
Every single reference to subdir was concatenated with the source package
name, so it makes sense to store the concatenated value instead.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
504cb913eb metadata: change pkg->{src} field to hold a reference
We often want to access fields of a source packages through pkg->{src}.
Allow accessing them directly instead of resolving the source hash through
srcpackages.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
47f292ff78 metadata: interate over source packages when generating Makefile
All build dependencies are between source packages. Interating over source
rather than binary packages simplifies parts of the code and prepares
further improvement.

As a side effect, this changes the implicit default variant of a few
packages (the first defined is used now instead of the lexicographically
first).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:44 +01:00
Matthias Schiffer
b2ab9c9d33 metadata: move 'builddepends' from binary to source packages
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:43 +01:00
Matthias Schiffer
39be6e7f19 metadata: move 'buildtypes' from binary to source packages
Build types are a property of source rather than binary packages. This is a
preparation for followup cleanup.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:43 +01:00
Matthias Schiffer
19577582e4 metadata: make srcpackage extensible
Turn the srcpackage values into hashes to allow storing more information
than just binary package names.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:43 +01:00
Matthias Schiffer
1a2b5eb7ac metadata: remove 'base-files' special case
Nothing explicitly depends on base-files, and even if it would, it would
not cause any problems. Remove the unused special case.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-13 19:54:43 +01:00
John Crispin
69a36cbab2 fstools: update to latest git HEAD
18090d9 overlay: fix compilation with glibc
2a9a6ea libfstools: optimize building directory string for glob
de6b026 libfstools: support file paths longer than 255 chars

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-13 16:40:07 +01:00
Koen Vandeputte
fce35bce0f config: support new symbol intro'd in kernel 4.12
Symbol CONFIG_INITRAMFS_FORCE allows to ignore the value passed by the
bootloader.

By default, all symbols containing INITRAMFS are wiped from the final
config and then re-added conditionally.

Add support for this symbol, as the build will stop otherwise
questioning the user about this option:

* Restart config...
*
*
* General setup
*
Cross-compiler tool prefix (CROSS_COMPILE) []
Compile also drivers which will not load (COMPILE_TEST) [N/y/?] n

...

Initial RAM filesystem and RAM disk (initramfs/initrd) support
(BLK_DEV_INITRD) [Y/n/?] y
Initramfs source file(s) (INITRAMFS_SOURCE) []
Ignore the initramfs passed by the bootloader (INITRAMFS_FORCE)
[N/y/?] (NEW)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-13 16:27:45 +01:00
Jo-Philipp Wich
7e99a6ba69 target: disable CONFIG_PROC_PAGE_MONITOR on most targets
Disable CONFIG_PROC_PAGE_MONITOR in most places and only keep it enabled
for virtual targets such as malta or potent ones like x86.

This saves up to 4KB of uncompressed kernel size and significantly
decreases CPU load under certain workloads.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-13 15:04:15 +01:00
Sven Eckelmann
86e18f6706 ipq806x: add support for OpenMesh A42
* QCA IPQ401x
* 256 MB of RAM
* 32 MB of SPI NOR flash (s25fl256s1)
  - 2x 15 MB available; but one of the 15 MB regions is the recovery image
* 2T2R 2.4 GHz
  - QCA4019 hw1.0 (SoC)
  - requires special BDF in QCA4019/hw1.0/board-2.bin with
    bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=OM-A42
* 2T2R 5 GHz
  - QCA4019 hw1.0 (SoC)
  - requires special BDF in QCA4019/hw1.0/board-2.bin with
    bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=OM-A42
* multi-color LED (controlled via red/green/blue GPIOs)
* 1x button (reset; kmod-input-gpio-keys compatible)
* external watchdog
  - triggered GPIO
* 1x USB (xHCI)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x gigabit ethernet
* powered only via POE
  - 802.3af POE on Ethernet 1
  - 18-24v passive POE (mode B) on Ethernet 2

The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the factory image to the u-boot when the device boots up.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 08:00:14 +01:00
Sven Eckelmann
c242643d1a ipq806x: enable gpio watchdog support
The kernel driver gpio-wdt or the userspace tool om-watchdog can be used to
trigger external gpio watchdog chips. The gpio-wdt driver has the benefit
that it can be configured together with the rest of the device in the DTS
and better integrates in the OpenWrt via procd.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
2018-01-13 08:00:07 +01:00
Sven Eckelmann
b02fa3336b om-fwupgradecfg-gen.sh: add support for the A42
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 07:58:49 +01:00
Sven Eckelmann
a28bf67c26 build: add image command for CE images
Combined Extended Images V1 can be created easily via the new image
commands using

    IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | combined-ext-image

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 07:58:47 +01:00
Sven Eckelmann
1a384ac0b5 combined-ext-image.sh: generate image in temp dir
The new build commands operate on the input image and use it again as
output image. This conflicts with the way combined-ext-image.sh was
operating. It required that input and output files are different files and
and that it can write freely to the output file.

This can be avoided when all intermediate build steps by
combined-ext-image.sh are done in a temporary directory. The output file is
then only overwritten in the last step.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 07:58:46 +01:00
Sven Eckelmann
9514cde2b9 uboot-envtools: add OpenMesh A42 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 07:58:44 +01:00
Sven Eckelmann
28b2a8cb82 ipq-wifi: add board-2.bin for OpenMesh A42
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 07:58:39 +01:00
Sven Eckelmann
f39fc67c8e mac80211: ath10k: search DT for BDF variant info
Board Data File (BDF) is loaded upon driver boot-up procedure. The right
board data file is identified on QCA4019 using bus, bmi-chip-id and
bmi-board-id.

The problem, however, can occur when the (default) board data file cannot
fulfill the vendor requirements and it is necessary to use a different
board data file.

This problem was solved for SMBIOS by adding a special SMBIOS type 0xF8.
Something similar has to be provided for systems without SMBIOS but with
device trees. No solution was specified by QCA and therefore a new one has
to be found for ath10k.

The device tree requires addition strings to define the variant name

    wifi@a000000 {
    	status = "okay";
    	qcom,ath10k-calibration-variant = "RT-AC58U";
    };

    wifi@a800000 {
    	status = "okay";
    	qcom,ath10k-calibration-variant = "RT-AC58U";
    };

This would create the boarddata identifiers for the board-2.bin search

 *  bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=RT-AC58U
 *  bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=RT-AC58U

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2018-01-13 07:58:19 +01:00
Luis Araneda
7293499f71 ipq806x: Sort occurrences of boardame alphabetically
This restores the alphabetical sort that was present
before the renaming of boardname.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-01-13 07:33:03 +01:00
Luis Araneda
33f09cf151 ipq806x: convert to dt-based board-detection
Use the generic board detection method:
- Board name: First compatible string from the device tree
- Board model: Model property from the device tree

Change occurrences of board name in userspace by the compatible
string, and removed target specific board detection script

Replace the definition of SUPPORTED_DEVICES in Device/Default
to extract the dt compatible string from each device definition.
Additionally, for devices supported by lede-17.01, append
the value of BOARD_NAME to SUPPORTED_DEVICES in the device
definition.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-01-13 07:33:03 +01:00
Luis Araneda
3cbdae2421 ipq806x: sync image filename with dt compatible string
Use <manufacturer>_<modelname> as image name for board using the
devicetree compat string as boardname.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-01-13 07:33:02 +01:00
Luis Araneda
09e13bd341 ipq806x: add a helper variable with the vendor name stripped
This will allow to maintain the current syntax for LEDs config
when switching to a device tree compatible string boardname.

None of the current boards use a comma in the boardname, so they
will be unaffected.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-01-13 07:33:02 +01:00
Luis Araneda
8ed5dfedc6 ipq806x: add missing dt compatible string to ap-dk04 board
Compatible string is mandatory to dts files

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2018-01-13 07:33:02 +01:00
Mathias Kresin
c3d9fe96dc ipq806x: drop partitial supported boards
There are only artifacts for these boards in our tree and not even
partial support.

Drop teh stale files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-13 07:33:02 +01:00
Florian Fainelli
0cf7c54023 armvirt: Resync kernel configuration
The 4.14 kernel configuration defaulted to a v4/v5 multiplatform while
4.9 was using a v6/v7 default configuration. Resync 4.14 against 4.9 so
they are nearly identical.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2018-01-12 15:14:27 -08:00
Florian Fainelli
d8a12a7d9f kernel: Add a bunch of missing symbols
Add a bunch of missing configuration symbols found while building
armvirt for 4.14 after re-synchronization of the configuration between
4.9 and 4.14.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2018-01-12 15:14:27 -08:00
Rafał Miłecki
3618dcbff8 bcm53xx: rename SPI driver fix to use 0xx prefix as it was accepted
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-01-12 23:29:48 +01:00
Rafał Miłecki
8cd3370cce bcm53xx: use upstream fix for PCI iproc driver regression
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-01-12 23:27:43 +01:00
Kevin Darbyshire-Bryant
89233a8c49 base-files: sysupgrade: correct command help text
Commit 30f61a34b4 claimed to drop -d & -p
options. In reality only -d was dropped.  Update command help text to
reflect that -d is no longer a supported option.

Fixes FS#1187

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-12 16:06:04 +01:00
Rosen Penev
7059ab48a6 ramips: fix cpuclock for the GB-PC1
The GnuBee PC1 stock bootloader runs at 900Mhz. This fixes bad clock drift when running the platform.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-01-12 08:02:51 +01:00
Christian Lamparter
3c94691620 apm821xx: remove kernel 4.9 support
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-12 08:00:05 +01:00
Christian Lamparter
e97f92bbf9 apm821xx: switch to 4.14.x kernel
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-12 08:00:05 +01:00
Christian Lamparter
780477d17c apm821xx: backport crypto4xx patches from 4.15
This patch backports changes to crypto4xx in order
to get the crypto4xx operational.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-12 08:00:04 +01:00
Christian Lamparter
e4371779d2 apm821xx: convert MR24 to use DT PHY defintion
Convert the MR24 to use the DT phy probing and at803x PHY driver.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-12 08:00:04 +01:00
Christian Lamparter
15faf389ad apm821xx: add linux 4.14 apm821xx patches
This patch updates the apm821xx target to use the 4.14 kernel.

4.14 finally ships with a driver for the WNDR4700's tc654 fan
controller. The custom driver is deprecated in favor of the
upstream driver and the thermal cooling definitions in the DTS
are updated.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2018-01-12 08:00:04 +01:00
Kevin Darbyshire-Bryant
9a9c7fb4cf kmod-sched-cake: bump to latest cake bake
More important bug fix:

402f05c Use full-rate mtu_time in all tins.  Fixes an issue where some
cake tins experienced excessive latency since 49776da (dynamically
adjust target)

Minor bug fixes:

31277c2 Avoid unsigned comparison against zero.  Fix compiler warning,
no known impact.
8cf5278 ack_filter: fix TCP flag check. A very contrived case may have
lead to dropping a SYN packet that should not be dropped.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-11 20:36:16 +01:00
Hauke Mehrtens
31fca075c7 at91: create device specific sdcard images
Without this patch one sdcard image with the following name is created
for all devices:
openwrt-at91-sama5--sdcard.img.gz
This makes the build system create device specific versions like:
openwrt-at91-sama5-at91-sama5d2_xplained-sdcard.img.gz

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-11 20:35:33 +01:00
Kevin Darbyshire-Bryant
7c7586b6d0 kernel: bump 4.14 to 4.14.13
Refresh patches

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-11 20:34:33 +01:00
Kevin Darbyshire-Bryant
eceff9ea8f kernel: bump 4.4 to 4.4.111
Refresh patches

Tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-11 20:33:40 +01:00
Kevin Darbyshire-Bryant
2228dbf4e6 kernel: bump 4.9 to 4.9.76
Refresh patches

Tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2018-01-11 20:32:36 +01:00
Jo-Philipp Wich
ab1785b1b2 build: fix restoring /etc/opkg with PER_DEVICE_ROOTFS
When generating per-device rootfs directories, the ./etc/opkg/ directory
is moved away prior to calling opkg install, opkg remove and rootfs_prepare.
After the opkg invocations and the rootfs_prepare macro call, the saved opkg
config directory is supposed to be moved back to its previous ./etc/opkg
location.

The mv command however can fail to properly restore the directory under
certain circumstances, e.g. when the prior opkg or files/ overlay copy
operations caused a new ./etc/opkg/ directory to be created.

In this case, the backed up directory (named target-dir-$hash.opkg) will be
moved into the preexisting ./etc/opkg/ directory instead, causing the opkg
configuration to be located in a wrong path on the final rootfs, e.g. in
/etc/opkg/target-dir-$hash.opkg/distfeeds.conf instead of
/etc/opkg/distfeeds.conf.

Solve this problem by replacing the naive "mv" command with a recursive
"cp -T" invocation which causes the backed up directory tree to get merged
with the destination directory in case it already exists.

Also perform the rootfs_prepare macro call after restoring the opkg
configuration, to allow users to override it again by using the files/
overlay mechanism.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-11 18:20:39 +01:00
Jo-Philipp Wich
17b194aeac sdk: change base feed fallback to git.openwrt.org
Change the hardcoded lede-project.org base feed fallback to
$(PROJECT_GIT)/openwrt/openwrt.git instead.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-11 18:20:07 +01:00
Rafał Miłecki
05cb6aa69f bcm53xx: replace linux,part-probe with a proper partitions subnode
This solution is more upstream compatible as it only requires specifying
of_match_table in the parser code and doesn't depend on linux,part-probe
which is solution made generic by a LEDE downstream patch that can't be
upstreamed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-01-11 14:05:10 +01:00
Rafał Miłecki
bde5e7a632 kernel: backport mtd implementation for "compatible" in "partitions" subnode
This backports upstream support for "compatible" DT property set for the
"partitions" subnode of flash node. It allows specifying how partitions
should be created/parsed. Right now only "fixed-partitions" is
supported.

It should eventually replace our downstream "linux,part-probe" solution.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2018-01-11 12:07:49 +01:00
Matthias Schiffer
ef27f15330 kernel: allow disabling multicast routing support
Multicast routing support is not needed in most setups, and increases the
size of the kernel considerably (>10K after LZMA). Add a config switch to
allow disabling it.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-11 11:51:24 +01:00
Matthias Schiffer
1abb5c6db1 generic: unlock Winbond flash on boot
The underlying issue breaking Spansion flash has been fixed with "mtd: spi-nor:
wait until lock/unlock operations are ready" and "mtd: spi-nor: wait for SR_WIP
to clear on initial unlock", so we can support unlocking for Winbond flash
again.

This is necessary to have writable flash on certain UBNT devices with some
bootloader versions.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-11 11:51:07 +01:00
Matthias Schiffer
f73f1aee76 ebtables: update to latest git 2017-10-24
6a82659 Use flock() for --concurrent option
73c2371 ebtables: extensions: Constify option struct

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-11 11:50:50 +01:00
Jo-Philipp Wich
f66fe0080a sunxi: enable missing config symbol
Enable CONFIG_MFD_AXP20X_I2C after the switch to Kernel 4.9, this symbol
is reportedly required to get USB working on the Banana Pi.

Ref: https://forum.lede-project.org/t/sunxi-kernel-4-9-usb-not-working/10513
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-11 03:14:07 +01:00
Hans Dedecker
377c4a68fe omcproxy: silence fw3 warnings
Silence fw3 warnings in omcproxy init script in case fw3 is not enabled

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-10 21:38:55 +01:00
Jo-Philipp Wich
fe920d01bb treewide: replace LEDE_GIT with PROJECT_GIT
Remove LEDE_GIT references in favor to the new name-agnostic
PROJECT_GIT variable.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-10 21:27:32 +01:00
Jo-Philipp Wich
4700544e40 downloads.mk: introduce name-agnostic PROJECT_GIT variable
Introduce a name-agnostic PROJECT_GIT variable poiting to
https://git.openwrt.org/ and declare LEDE_GIT and OPENWRT_GIT
as aliases to it.

After some transition time we can drop this alias variables.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-10 21:27:31 +01:00
Mogula Pranay
012d20eebe netifd: update dhcp.script to handle dynamic routing
Certain DHCP servers push a gateway outside of the assigned interface subnet,
to support those situations, install a host route towards the gateway.

If Gateway and IP are served in same network, openwrt quagga cannot learn
routes (rip routes are not getting added, showing inactive) whereas
working fine when Gateway and IP are in different network.

Signed-off-by: Mogula Pranay <mogula.pranay@nxp.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-10 09:19:08 +01:00
Mathias Kresin
18f49449b0 ltq-xdsl-app: drop script for renaming the netdev
Our netdevs are named dsl by default now, the rename via scripts isn't
required anymore.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-10 08:08:53 +01:00
Mathias Kresin
d3fd38637f lantiq: create ATM/PTM interfaces with dsl as netdev name
Renaming an atm etherbride using 'ip link' (via hotplug) is racy since the
original netdev might disappear before br2684ctl has finished appling it's
setting:

 local2.notice br2684ctl[1667]: Interface "nas0" created sucessfully
 local2.notice br2684ctl[1667]: Communicating over ATM 0.8.35, encapsulation: LLC
 kern.info kernel: dsl0: renamed from nas0
 kern.err kernel: br2684:br2684_regvcc: tried to attach to non-existent device
 local2.err br2684ctl[1667]: Could not configure interface:No such device or address

By passing the final used netdev name to br2684ctl_wrap another race
condition workaround will be enabled again.

Change the lantiq ptm driver to create a netdev with the name dsl as well.
Albeit the rename via 'ip link' works fine so far, using a different
approach for ptm then atm could be confusing.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-10 08:08:53 +01:00
Mathias Kresin
e4936a957d ltq-xdsl-app: drop manual br2684ctl reload
br2684ctl starts automatically, set up reload triggers, which fire as soon
as a atm driver is loaded. No need to do the reload via the script.

The reload is only required as soon as we can reliable switch between atm
and ptm driver and need to be implemented in a race free way.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-10 08:08:53 +01:00
Martin Schiller
1b1388f640 linux-atm: add br2684ctl option to specify the netdev name
Add the uci option nameprefix to specifc a target netdev name. Patch the
br2684ctl code to accept and set a netdev name via commandline parameters.

It allows to use the same netdev name for ATM and PTM lines on lantiq
xdsl hardware.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Signed-off-by: Mathis Kresin <dev@kresin.me>
2018-01-10 08:08:53 +01:00
Jo-Philipp Wich
57157618d4 armvirt: re-enable VFP support
Enable CONFIG_VFP again which was disabled during the 4.9 -> 4.14 bump.

Boot tested both 32 and 64 bit subtargets using initramfs images with the
qemu-system-arm and qemu-system-aarch64 emulators.

Fixes: aa100b66f2 ("armvirt: bump to v4.14")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-10 00:44:08 +01:00
Jo-Philipp Wich
7226c7850b armvirt: 64: add missing kernel config symbols
Fixes: aa100b66f2 ("armvirt: bump to v4.14")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-10 00:44:08 +01:00
Kevin Darbyshire-Bryant
efb375b579 kernel: bump 4.4 to 4.4.110
Refresh patches

Fixes:  CVE-2017-5754 aka Meltdown

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
[fix typo in commit msg, conflict after 4.14 bump]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-10 00:11:39 +02:00
Kevin Darbyshire-Bryant
1d2590f838 kernel: bump 4.9 to 4.9.75
Refresh patches

Fixes:  CVE-2017-5754 aka Meltdown

Tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[fix conflict after 4.14 bump]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-10 00:11:39 +02:00
Hauke Mehrtens
e1b653944d uboot-at91: make packages hidden
These packages are needed to generate the image, better mark them hidden
so we will activate them based on which boards gets build and they will
be activated always when the board which needs then gets build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-09 22:58:49 +01:00
Hauke Mehrtens
5147e0d476 at91bootstrap: make packages hidden
These packages are needed to generate the image, better mark them hidden
so we will activate them based on which boards gets build and they will
be activated always when the board which needs then gets build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-09 22:58:49 +01:00
Hauke Mehrtens
6fc8a44282 at91bootstrap: remove redundant definition of BUILD_SUBTARGET
It is sufficient to define this in AT91Bootstrap/Default as this is not
used for all.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-09 22:58:49 +01:00
Sandeep Sheriker Mallikarjun
21d8fce797 at91bootstrap: at91bootstrap default selection
The fixes following problems
1. changing prefix at91bootstrap to AT91bootstrap will fix the default
   selection of at91bootstrap for the selected sama5 subtarget.
2. fixed missing default selection of sama5d4 nand flash for the
   selected sama5d4 subtarget.
3. corrected at91bootstrap Title name.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-01-09 22:58:49 +01:00
Sandeep Sheriker Mallikarjun
c5292989ed uboot-at91: fix build after fpu activation
neon and VFPv4 support is added to this target and uboot-at91 build
fails due to TARGET_CFLAGS -mfloat-abi set to hard. as a fix, setting
uboot-at91 CFLAGS -mfloat-abi=soft.

Fixes: 01cc6bd495 ("at91: sama5: activate fpu")
Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2018-01-09 22:58:49 +01:00
Jo-Philipp Wich
5aabc2cd3d kernel: kmod-w1 depends on kmod-hwmon-core since Linux 4.14
Fixes the following dependency error encountered by the buildbots:

    Package kmod-w1 is missing dependencies for the following libraries:
    hwmon.ko

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-09 22:56:55 +01:00
Mathias Kresin
0674a99f7e kirkwood: sort occurrences of boardame alphabetically
This restores the alphabetical sort that was present
before the renaming of boardname.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:55 +01:00
Alberto Bursi
0e94df65ca uboot-envtools: add pogoplug v4
add pogoplug v4 envs support in uboot-envtools

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2018-01-09 22:06:55 +01:00
Alberto Bursi
c19f811c4d kirkwood: add pogoplug v4
also known as
POGO-V4-A3-02
or
POGO-V4-A3-01

SoC: Marvell 88F6192 800Mhz
SDRAM memory: 128MB
Gigabit ethernet: 1 Marvell 88E1310
Flash memory: 128MB
2 status LEDs (one green one red)
1 "Eject" button on the back (used as "Reset" button)
1 USB 2.0 port (on upper side)
1 sata slot (power + data) for 2.5'' drives (upper side)
2 USB 3.0 ports from a controller on PCIe x1 of the SoC
1 full-size SDcard slot (fits a whole SD card into it)

This device supports the (linux-only) kwboot tool to send
a new uboot over serial console, so it is easy to unbrick
in case the uboot is erased and the device won't boot.

-----
Install instructions:
-----
Since it's not possible to get ssh access to these
devices, the only way to take control is to
solder pins to get TTL serial access.

Case can be opened by removing screws beneath two rubber
feet at back of device, then lifting while prying the
sides of the upper part out to unhook a latch on each
side about 2/3rds of the way toward the front.

Serial connection pins are those labeled "J11", left
of SD as you face SD opening.
Pins are (from left to right, i.e. the first in the list
is the nearest to the SD slot) GND, Rx, Tx.
Do not connect +V pin if you use a USB (self-powered)
TTL-to-USB dongle. Any USB TTL-to-USB converter will work.
Baud rate is 115200, parity "none", databits "8",
flow control "none".

Stock uboot is unable to read ubi partitions (nor usb)
so we will replace it first with our uboot.

Start a TFTP server at IP address 169.254.254.254, and
place the uboot.kwb file in the folder of the server.

Start the serial session and then power up the device.

As soon as you see text on the serial start pressing random
letter keys to stop the boot process.

If you see something like the following line you can proceed:

CE>>

Otherwise if text is still scrolling by you missed the
opportunity, pull the plug and try again.

write

printenv ethaddr

The uboot will write something like this:

ethaddr=00:50:43:00:02:02

This is the device's MAC address, also present in the sticker
under the device.

Write this down as we will need to add it in the
new uboot configuration.

Use the following commands to load the new uboot:

tftp 0x20000 u-boot.kwb

If the uboot confirms that the transfer was successful,
then you can write it to flash with the following commands:

nand erase 0 0x200000
nand write 0x20000 0 0x1c0000

if after the last command the uboot wrote
"xxxx bytes written: OK"
then it was written correctly and we can proceed.

If it did not go well, try again or ask assistence in forums.
Shutting down or rebooting at this time will brick
the device, to unbrick it you will need to use the kwboot
tool from a Linux PC or Virtual Machine.

Now write:

reset

and press enter, the device will reboot and you should see
again text scrolling by.
Press a random key to stop it, and now you should see

pogoplugv4>

We now add the MAC address back, write:

setenv ethaddr '00:50:43:00:02:02'

Confirm that the uboot has understood by writing

printenv ethaddr

If all looks ok, save the setting with

saveenv

At this point the uboot is configured, and we only need to load
the firmware in the flash memory.

Follow the steps below in "Firmware recovery procedure".

----
Firmware recovery procedure
----
The new uboot allows easy recovery from a bad firmware upgrade
where you can't access the device anymore over ssh or luci.

Take a USB flash drive formatted as FAT32, and copy the
initramfs image file in it (it will have "initramfs" in the
file name), then rename it as "initramfs.bin".

Insert the USB drive in the USB 2.0 port of the pogoplug
(the port at the top).

Power up the device, and wait for it to finish booting.

The uboot should find and load the "initramfs.bin"
from usb and if you are connected with serial you should
see the linux kernel boot log (text scrolling by).
Once it is done, press Enter and you will be greeted by
the OpenWRT banner.

If you were not connected with serial just wait a bit and,
you will be able to access it with ssh or luci web interface
(once you find its IP).

The recovery "initramfs" images are run from RAM, so you will
have to do a normal sysupgrade (firmware upgrade) to write
a firmware image to flash memory.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2018-01-09 22:06:55 +01:00
Alberto Bursi
f5d267df63 uboot-kirkwood: add uboot for pogoplug v4
add an uboot able to boot a kernel in an ubi partition

This uboot also has a "recovery" feature, before
booting from flash it will try to boot a initramfs
image called "initramfs.bin" from a FAT32-formatted
USB drive connected to the USB 2.0 port.
(u-boot lacks drivers for usb 3.0 controllers)

Just rename the initramfs image and place it on
the usb drive, the uboot will load it.

In case there is no USB drive or no such file
is found, the uboot will boot from internal flash.

The whole check takes less than a second, boot times
are not impacted.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2018-01-09 22:06:55 +01:00
Mathias Kresin
f5df635ccf kirkwood: sync image filename with boardname
Use <manufacturer>_<modelname> as image name.

Use the BOARD_NAME variable to ensure that the former used boardname is
still used as the subdirectory name for the sysupgrade-tar image, to
not break sysupgrade from earlier versions.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:55 +01:00
Mathias Kresin
c9e2c35f46 kirkwood: use the generic board detect
Drop the target specific detection function in favour of the generic
one provided by base-files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:55 +01:00
Mathias Kresin
aa6f5f1787 kirkwood: use image metadata
Append and enforce image metadata. Remove the device specific image
checks, they are replaced by image metadata.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:55 +01:00
Mathias Kresin
2f757f6035 uboot-kirkwood: fix default u-boot selection
Build the Seagate GoFlexHome u-boot for the Seagate GoFlexNet as well. The
name clearly indicates that the u-boot can be used for both boards

Build the Zyxel NSA310 u-boot if the NSA310B image is selected.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:55 +01:00
Mathias Kresin
a10ab9d843 kirkwood: fix nsa310b compatible strings
Use a destinct compatible string fro the nsa310b.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:54 +01:00
Mathias Kresin
18ea058258 kirkwood: fix compatible string in ib62x0 dts
There is no point in being that specifc in a generic dts covering a range
of boards. Keep only the the generic compat string to use it for a
devicetree based boardname.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:54 +01:00
Mathias Kresin
0ebdf0c1d3 kirkwood: drop support for orphaned boards
No image build code for the Guruplug, Sheevaplug and NSA310S exists. Drop
support for the boards for now.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:54 +01:00
Mathias Kresin
d2e18dae28 kirkwood: cleanup image build code
Drop NAND_BLOCKSIZE, UBI_OPTS and UBIFS_OPTS. They are either used by
not supported filesystems or by the legacy image build code.

Add common used options/images to the default build code and override
the options where necessary.

Don't export the kernel image, it isn't required by any board.

While at it, change the file extension for the sysupgrade images to bin.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:54 +01:00
Mathias Kresin
f0227af5d6 ipq806x: drop kernel 4.4 leftovers
Remove the kernel 4.4 specific devicetree source files.

Fixes: 3a3564ead5 ("ipq806x: remove v4.4 support")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:06:37 +01:00
David Bauer
daae09f1e5 ar71xx: fix Archer C7v4 5GHz MAC-address
The TP-Link firmware uses (primary_mac-1) as MAC-address
for the 5GHz WiFi. This applies the same behaviour to LEDE.

Currently, the MAC-address is retrieved from eth1, which
does not exist on the Archer C7 v4. As a result from this,
every C7 v4 with LEDE carries the same MAC-Address on the 5GHz WiFi.

Signed-off-by: David Bauer <mail@david-bauer.net>
2018-01-09 22:05:46 +01:00
Chuanhong Guo
a657978fe7 ramips: fix lenovo newifi-y1 switch and LED config
There are 3 ethernet ports on Y1. LAN1 on port1, LAN2 on port0 and WAN on
port4.

Use a standalone switch configuration to match this and use the switch
trigger so that LAN LED could indicate the connetction status for both
lan ports correctly.

This patch also drop the internet led configuration, because there is a
WAN led for port4 and eth0.2 isn't always used as WAN.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2018-01-09 22:05:46 +01:00
Mathias Kresin
6912e55e71 ramips: add missing soc compatibles to dts
Add SoC compatibles where missing.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:05:46 +01:00
Mathias Kresin
3326e36fa7 ramips: firewrt: indicate boot status via LED
Add the Firefly FireWRT gree power LED to diag.sh to indicate the boot
status via the power LED.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:05:46 +01:00
Mathias Kresin
e66c47fb14 base-files: gpio switch: set output value with direction
Use the "low" and "high" values to configure the GPIO as an output with
that initial value. It ensures that the gpio doesn't have a unwanted value
during the time the direction is set to ouput and the actual value is
applied.

We don't need to take care of the GPIO polarity for now, since our
exported GPIOs are always active low.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:05:46 +01:00
Mathias Kresin
ff874b656b base-files: gpio_switch: start before boot state done is set
Start gpio_switch before the boot state is set to up/initialised/done.
This way the exported GPIOs are available at the time rc.local is started.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-09 22:05:46 +01:00
Gabor Juhos
82cc439976 ar71xx: remove obsolete '< KERNEL_VERSION(4, 4, 0)' check
Because the oldest supported kernel version on the ar71xx target is 4.4,
the condition that the kernel version is smaller than 4.4.0 is always
false. Remove the obsolete check from mach-rb4xx.c to clean up the code
a bit.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 21:33:19 +01:00
Gabor Juhos
8f44c8086b ar71xx: remove obsolete '< KERNEL_VERSION(4, 2, 0)' check
Because the oldest supported kernel version on the ar71xx target is 4.4,
the condition that the kernel version is smaller than 4.2.0 is always
false. Remove the obsolete check from ag71xx_main.c to clean up the code
a bit.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 21:33:18 +01:00
Gabor Juhos
7a4930b27c ar71xx: remove obsolete '< KERNEL_VERSION(3, 15, 0)' checks
Because the oldest supported kernel version on the ar71xx target is 4.4,
the condition that the kernel version is smaller than 3.15.0 is always
false. Remove the obsolete checks from the target specific source files
to clean up the code a bit.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 21:33:18 +01:00
John Crispin
aa100b66f2 armvirt: bump to v4.14
Signed-off-by: John Crispin <john@phrozen.org>
2018-01-09 14:40:54 +01:00
John Crispin
7172ec1e8f malta: bump tp v4.14
Signed-off-by: John Crispin <john@phrozen.org>
2018-01-09 10:26:16 +01:00
John Crispin
4ee195bcfa malta: fix image prefix names
Signed-off-by: John Crispin <john@phrozen.org>
2018-01-09 10:26:16 +01:00
Gabor Juhos
99be4170cb ar71xx/mikrotik: disable TP-Link TL-WR810N v2 board support
It does not belongs to the MikroTik boards.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 08:34:03 +01:00
Gabor Juhos
7f7eb18455 ar71xx/mikrotik: disable unused MTD partitioning and split drivers
Reduces the compressed kernel size by ~2.5KB.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 08:34:03 +01:00
Gabor Juhos
660ee2d0f0 ar71xx/mikrotik: disable unused ethernet switch and phy drivers
Disable the drivers for the following ethernet switches:
  Realtek RTL8306
  Realtek RTL8366/8367
  Marvell 88E6060 (DSA)
  Marvell 88E6063 (DSA)

Also disable the phy driver for Marvell PHYs.

None of the supported RouterBOARDs are using any device
which needs these drivers.

Disable the DSA framework too, because it is not required
by the remaining switch drivers.

This reduces the compressed kernel size by ~20KB.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 08:34:03 +01:00
Gabor Juhos
b386b5727b ar71xx: fix Kconfig dependency of the 88E6063 switch DSA driver
The Marvell 88E6063 ethernet switch driver depends on the DSA
framework. Add a 'depends on NET_DSA' statement to its Kconfig
entry to state that explicitly.

Fixes the following Kconfig warning:

  warning: (NET_DSA_MV88E6060 && NET_DSA_MV88E6063) selects NET_DSA_TAG_TRAILER which has unmet direct dependencies (NET && NET_DSA)

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 08:34:03 +01:00
Gabor Juhos
09bb7105c2 ar71xx: sort kernel configurations
The symbols in some kernel configurations of the target are in
wrong order. Sort them with kconfig.pl.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-09 08:34:03 +01:00
Stijn Tintel
56767dfa42 octeon: add support for kernel 4.14
Tested on EdgeRouter Lite.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-08 20:14:57 +02:00
Stijn Tintel
aa399b4e27 kernel: bump 4.14 to 4.14.12
No patch refresh required.

Compile-tested on: octeon, x86/64.
Runtime-tested on: octeon, x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-08 20:13:03 +02:00
Hauke Mehrtens
f1fb710483 lantiq: activate noise margin delta for VDSL too
Previously this was only activated for ADSL, this patch activates the
same setting also for VDSL, this feature is also support for VDSL in the
same way it works for ADSL.
I tested it with DSL FW 5.7.9.5.1.7 against a Broadcom 177.140 DSLCO
(Deutsche Telekom) and saw different data rates and Max. Attainable Data
Rates depending on the ds_snr_offset settings I choose.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-07 23:42:54 +01:00
Matthias Schiffer
ca04884262 uboot-envtool: remove superfluous + sign from PKG_BUILD_DEPENDS
A + sign does not have meaning in build depends.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-07 19:52:05 +01:00
Jo-Philipp Wich
f089b1fda2 libubox: fix package bump
The previous commit was incorrectly rebased and referred to a not
yet existing PROJECT_GIT variable.

Fixes: d86a269c1f libubox: update to latest git HEAD
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 16:34:29 +01:00
Jo-Philipp Wich
d86a269c1f libubox: update to latest git HEAD
1c08e80 jshn: properly support JSON "null" type

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 16:28:22 +01:00
Jo-Philipp Wich
4e9af67077 Revert "fstools: update to latest git HEAD"
This reverts commit df326e9b2e.

The referenced commit does not exist in the upstream repository.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 13:42:46 +01:00
John Crispin
df326e9b2e fstools: update to latest git HEAD
2a9a6ea libfstools: optimize building directory string for glob
de6b026 libfstools: support file paths longer than 255 chars

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-07 13:05:40 +01:00
Gabor Juhos
4045f15a21 ar71xx: fix compiler warnings in mdio-bitbang.c for 4.4
Building Linux 4.4 for ar71xx throws the following warnings in
drivers/net/phy/mdio-bitbang.c:

    CC      drivers/net/phy/mdio-bitbang.o
  In file included from include/linux/irqflags.h:14:0,
                   from drivers/net/phy/mdio-bitbang.c:20:
  drivers/net/phy/mdio-bitbang.c: In function 'mdiobb_read':
  include/linux/typecheck.h:11:18: warning: comparison of distinct pointer types lacks a cast
    (void)(&__dummy == &__dummy2); \
                    ^
  include/linux/irqflags.h:63:3: note: in expansion of macro 'typecheck'
     typecheck(unsigned long, flags); \
     ^
  include/linux/irqflags.h:124:3: note: in expansion of macro 'raw_local_irq_save'
     raw_local_irq_save(flags);   \
     ^
  drivers/net/phy/mdio-bitbang.c:162:2: note: in expansion of macro 'local_irq_save'
    local_irq_save(flags);
    ^
  include/linux/typecheck.h:11:18: warning: comparison of distinct pointer types lacks a cast
    (void)(&__dummy == &__dummy2); \
                    ^
  include/linux/irqflags.h:68:3: note: in expansion of macro 'typecheck'
     typecheck(unsigned long, flags); \
     ^
  include/linux/irqflags.h:126:39: note: in expansion of macro 'raw_local_irq_restore'
   #define local_irq_restore(flags) do { raw_local_irq_restore(flags); } while (0)
                                         ^
  drivers/net/phy/mdio-bitbang.c:175:2: note: in expansion of macro 'local_irq_restore'
    local_irq_restore(flags);
    ^
  drivers/net/phy/mdio-bitbang.c:159:11: warning: unused variable 'i' [-Wunused-variable]
    int ret, i;
             ^
  In file included from include/linux/irqflags.h:14:0,
                   from drivers/net/phy/mdio-bitbang.c:20:
  drivers/net/phy/mdio-bitbang.c: In function 'mdiobb_write':
  include/linux/typecheck.h:11:18: warning: comparison of distinct pointer types lacks a cast
    (void)(&__dummy == &__dummy2); \
                    ^
  include/linux/irqflags.h:63:3: note: in expansion of macro 'typecheck'
     typecheck(unsigned long, flags); \
     ^
  include/linux/irqflags.h:124:3: note: in expansion of macro 'raw_local_irq_save'
     raw_local_irq_save(flags);   \
     ^
  drivers/net/phy/mdio-bitbang.c:185:2: note: in expansion of macro 'local_irq_save'
    local_irq_save(flags);
    ^
  include/linux/typecheck.h:11:18: warning: comparison of distinct pointer types lacks a cast
    (void)(&__dummy == &__dummy2); \
                    ^
  include/linux/irqflags.h:68:3: note: in expansion of macro 'typecheck'
     typecheck(unsigned long, flags); \
     ^
  include/linux/irqflags.h:126:39: note: in expansion of macro 'raw_local_irq_restore'
   #define local_irq_restore(flags) do { raw_local_irq_restore(flags); } while (0)
                                         ^
  drivers/net/phy/mdio-bitbang.c:200:2: note: in expansion of macro 'local_irq_restore'
    local_irq_restore(flags);
    ^

These are caused by the 900-mdio_bitbang_ignore_ta_value and
901-phy-mdio-bitbang-prevent-rescheduling-during-command patches.

The first patch removes some code but it does not remove the variable
which is used by the removed code only.

The second patch adds local_irq_{save,restore} calls. The type of the
argument of these calls must be 'unsigned long', but the patch defines
the variable as 'long'.

Fix both patches to silence the warnings.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2018-01-07 13:05:40 +01:00
Jo-Philipp Wich
6e4fa5d1a3 hostapd: bump PKG_RELEASE after 802.11w changes
Fixes: 8a57531855 "hostapd: set group_mgmt_cipher when ieee80211w is enabled"
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 12:42:45 +01:00
Jo-Philipp Wich
34e9937f2a kernel: fix packaging of kmod-gpio-nxp-74hc164
The NXP 74HC164 GPIO expander driver uses a different config symbol
("CONFIG_GPIO_74X164") and module name since since at least Kernel
version 2.6.37.

Update the kmod package definition accordingly by adjusting kconfig
and module file names.

This unrelated, but correct change has been separated from the
WNR2000v5 support commits.

Ref: https://github.com/lede-project/source/pull/1256
Suggested-by: Raphael Catolino <raphael.catolino@gmail.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 12:33:47 +01:00
Jo-Philipp Wich
3f5e39e960 zlib: only enable NEON optimizations on eligible targets
Instead of inferring the availability of NEON support from the target
optimization flags, use a preprocessor test to decide whether to enable
ARMv8 NEON optimizations.

Fixes the following build error spotted by the mediatek/32 buildbot:

    [ 26%] Building C object CMakeFiles/zlib.dir/contrib/arm/inflate.o
    In file included from .../zlib-1.2.11/contrib/arm/chunkcopy.h:10:0,
                     from .../zlib-1.2.11/contrib/arm/inflate.c:87:
    .../arm_neon.h:31:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
     #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
      ^
    In file included from .../zlib-1.2.11/contrib/arm/inflate.c:87:0:
    .../zlib-1.2.11/contrib/arm/chunkcopy.h:18:9: error: unknown type name 'uint8x16_t'
     typedef uint8x16_t chunkcopy_chunk_t;
             ^
    [...]
    CMakeFiles/zlib.dir/build.make:302: recipe for target 'CMakeFiles/zlib.dir/contrib/arm/inflate.o' failed

Fixes: 3acecba520 "package/libs/zlib: Add ARM and NEON optimizations"
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 12:33:47 +01:00
Jo-Philipp Wich
8a57531855 hostapd: set group_mgmt_cipher when ieee80211w is enabled
In order to properly support 802.11w, hostapd needs to advertise a group
management cipher when negotiating associations.

Introduce a new per-wifi-iface option "ieee80211w_mgmt_cipher" which
defaults to the standard AES-128-CMAC cipher and always emit a
"group_mgmt_cipher" setting in native hostapd config when 802.11w is
enabled.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-07 12:33:47 +01:00
Kevin Darbyshire-Bryant
b153dbf046 argp-standalone: clean up patch fuzz
Refresh patches to tidy up fuzz.  No functional changes

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-05 11:59:59 +01:00
Kevin Darbyshire-Bryant
4e800716ac lua: clean up patch fuzz
Refresh patches to tidy up fuzz.  No functional changes

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-05 10:42:34 +01:00
Kevin Darbyshire-Bryant
b61a648e4a busybox: clean up patch fuzz
Refresh patches to tidy up fuzz.  No functional changes

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-05 10:35:51 +01:00
Mathias Kresin
d726187367 lantiq: fix wbmr-hp-g300h image metadata
The Annex A and Annex B version are using the same (old) userspace
boardname. Update the SUPPORTED_DEVICES to allow an update from lede-17.01.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2018-01-04 21:23:59 +01:00
Matthias Schiffer
0b28cc56d4 scripts/package-metadata.pl: remove broken detection of self-dependencies
A self-dependency is not an error worth a warning; rather, it is very
common: whenever there are dependencies between different binary packages
originating from the same source package, such dependencies occur. Not
actually generating dependency rules is correct, but already handled a few
lines below.

A typo prevented this redundant rule from working, which is the reason the
warning was not actually printed.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2018-01-04 17:18:16 +01:00
Jo-Philipp Wich
da95c9aa17 opkg: switch source url to git.openwrt.org
As LEDE is rebranding to OpenWrt now, adjust the Git source references
accordingly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-04 13:44:42 +01:00
Jo-Philipp Wich
f839ad685b sdk: switch base feed url to git.openwrt.org
As LEDE is rebranding to OpenWrt now, adjust the base feed Git reference
accordingly.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-04 13:44:42 +01:00
Philip Prindeville
d280c03a1d x86: preinit: use board_name on Sm Super Servers
Supermicro puts "Super Server" into their product_name DMI value
for a whole slew of products, making this value about as useful
as not having been filled in at all.  Instead, fall back on the
board_name instead.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-01-04 13:44:42 +01:00
Philip Prindeville
445f980a38 x86: preinit: make name rewrite into reusable function
There might be other places (such as vendor-supplied preinit scripts)
where we wish to take a DMI name and clean it up in a consistent way,
so make the sed command into a function.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2018-01-04 13:44:42 +01:00
Hans Dedecker
6c76decd61 netifd: update to latest git HEAD
fd5c399 proto: allow dumping protocol handlers without config_params

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-01-04 09:49:45 +01:00
Stijn Tintel
09ae6897f7 merge: github: use OpenWrt in issue/pr templates
Keep the link to submitting patches for now.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-03 20:36:57 +01:00
Stijn Tintel
c5ca1c9ab6 kernel: bump 4.14 to 4.14.11
Rename unwinder config symbols to match upstream changes.
Refresh patches.
Update patch that no longer applies: 202-reduce_module_size.patch

Also enable CONFIG_PAGE_TABLE_ISOLATION. This feature was backported
from 4.15 to the 4.14 stable series. It is enabled by default, so enable
it in OpenWrt as well.

Compile-tested on x86/64.
Runtime-tested on x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-03 00:07:10 +02:00
Stijn Tintel
8b35da1552 kernel: move CONFIG_KASAN to generic config
While bumping 4.14, the kernel build failed due to missing CONFIG_KASAN
symbol. Move it to generic config instead of defining it for all arm64
and x86/64 targets.

It was only added in 4.0, so not needed in config-3.18.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-01-02 21:55:46 +02:00
Tony Ambardar
a367645f23 uci: add missing 'option' support to uci_rename()
When using the uci.sh wrapper, allow parameters to match those supported
by the uci binary i.e. "uci rename <config>.<section>[.<option>]=<name>".

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2018-01-02 17:22:19 +01:00
Daniel Engberg
cbe71649bc package/libs/zlib: Add host build
Some packages such as Python/Python3 (host pip/pip3) needs this
to compile.

More detailed explanation provided by Alexandru:

"i need the zlib/host for Python/Python3 ; because, it seems the
host pip/pip3 needs this to work ; i suspect in older versions
this worked, because some of the host's build env would be used
in the build, and then the zlib-dev from the host distro would
be used ; now, the host-build does not seem to have any
-I/usr/include stuff, which is good

and it also seems that Python/Python3 does not like it if the
zlib-dev package is too old, so using this zlib/host would be
good for this as well"

Source:
https://github.com/lede-project/source/pull/1329#issuecomment-351055861

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-01-02 17:11:12 +01:00
Daniel Engberg
0dd439141d package/libs/zlib: Add option for O3 optimization
Add option to use O3 optimization as not all devices have
space constraints. This option is default using GCC in upstream
but isn't in the CMake makefile for some reason.

Source: https://github.com/madler/zlib/blob/master/configure#L170

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-01-02 17:11:12 +01:00
Daniel Engberg
3acecba520 package/libs/zlib: Add ARM and NEON optimizations
This adds two optimizations for ARM:
NEON optimized Adler(-)32 checksum algorithm (ARMv7 and newer NEON CPUs)
ARM(v7+) specific optimization for inflate
I've also connected inflate optimization to the build using the following
source as template.
0397489124 (diff-a62ad2db6c83dbc205d34bb9a8884f16)

Additional info:
https://codereview.chromium.org/2676493007/
https://codereview.chromium.org/2722063002/

Sources:
https://github.com/madler/zlib/pull/251 (only the first commit)
https://github.com/madler/zlib/pull/256

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-01-02 17:11:12 +01:00
Daniel Engberg
383e8aeec7 package/libs/zlib: Use toolchain build logic
Use build logic provided by toolchain instead of doing it manually.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2018-01-02 17:11:12 +01:00
Kevin Darbyshire-Bryant
37bb463daa procd: procd_send_signal use signal names
Usage documentation for 'procd_send_signal' states "The signal is SIGHUP
by default, and must be specified by NAME."  Make actual behaviour match
the stated documented behaviour.

https://wiki.openwrt.org/inbox/procd-init-scripts

Suggested-by: Jo-Philip Wich <jow@mein.io>
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-02 17:02:44 +01:00
John Crispin
3804f5743d procd: update to latest git HEAD
a5954cf procd: Add %m to several functions that return errno.
810d7a5 procd: Remove redundant errno variable in several printf functions.
fa5ce1c procd: Replace strerror(errno) with %m.

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-02 14:29:12 +01:00
John Crispin
25302c0a08 umdns: update to latest git HEAD
7897441 umdnsd: Replace strerror(errno) with %m.

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-02 14:29:12 +01:00
Daniel Albers
d30c0f4d50 kernel: make uas work during early boot
Add the uas(p) module to the modules loaded early on the boot process.

The uas(p) is an modern alternative, which is used by the modern USB3
storage cases, compared to the bot protocol. To be able to use uas(p)
storage cases for extroot, the kernel module has to be loaded before the
search for extroot has been called. This patch changes the load order to
support uas(p) storage cases for extroot.

Signed-off-by: Daniel Albers <daniel.albers@public-files.de>
2018-01-02 14:29:04 +01:00
John Crispin
16ed8ac8e9 fstools: update to latest git HEAD
11efbf3 overlay: fix race condition when switching to jffs2
bdeb95a libblkid-tiny: add support for NTFS superblock
ef2cc03 fstools: Replace strerror(errno) with %m format.
98fd5b4 libblkid-tiny: add support for UBI superblock

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-02 07:57:22 +01:00
Roman Yeryomin
8b477d09d1 base-files: protect stop and reload actions with procd_lock
Signed-off-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: Andrejs Hanins <ahanins@gmail.com>
2018-01-02 07:52:57 +01:00
Roman Yeryomin
e410f785a4 procd: introduce procd_lock for init script protection
Use flock to protect init script from concurrent execution
(of the same script).
Important for services which generate native config files.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: Andrejs Hanins <ahanins@gmail.com>
2018-01-02 07:52:27 +01:00
Roman Yeryomin
2277cd1249 busybox: enable flock by default
This is needed for procd init script protection to work.
flock adds 4248 bytes to stripped busybox binary.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-01-02 07:51:39 +01:00
Hauke Mehrtens
597de6904c layerscape: activate fpu feature
The CPU sub type was set to a CPU version with FPU, but the FPU feature
was not activated before, so a soft float toolchain was created.
Activate also the FPU feature to create the correct toolchain.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-02 07:24:46 +01:00
Hauke Mehrtens
01cc6bd495 at91: sama5: activate fpu
This activates neon and VFPv4 support for this target. The CPU support
these feature so also use them.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2018-01-02 07:14:09 +01:00
Michael Heimpold
498285922e firmware-tools/ptgen: use portable exit codes
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-01-02 07:14:09 +01:00
Michael Heimpold
83f729dfb2 firmware-tools/ptgen: fix minor coding style issues
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2018-01-02 07:14:09 +01:00
Kevin Darbyshire-Bryant
4b275baf91 kernel: bump 4.9 to 4.9.73
Refresh patches.

Runtime tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2018-01-02 07:14:09 +01:00
John Crispin
7c0a2bc930 busybox: backport cve-2017-16544 fix
In the add_match function in libbb/lineedit.c in BusyBox through 1.27.2,
the tab autocomplete feature of the shell, used to get a list of filenames
in a directory, does not sanitize filenames and results in executing any
escape sequence in the terminal. This could potentially result in code
execution, arbitrary file writes, or other attacks.

Fixes: FS#1181 - CVE-2017-16544:

Backport the patch from:
https://git.busybox.net/busybox/commit/?id=c3797d40a1c57352192c6106cc0f435e7d9c11e8
https://nvd.nist.gov/vuln/detail/CVE-2017-16544

Signed-off-by: Derek Werthmuller <thewerthfam@gmail.com>
Signed-off-by: John Crispin <john@phrozen.org>
2018-01-02 07:14:08 +01:00
Roman Yeryomin
0b1fa809d0 base-files: rc.common: fix enable() return code and logic
In current state, if there is START but no STOP, enbale()
will return 1 (failure), which is wrong.
Moreover there is no need to check for START/STOP twice.
Instead, add err variable to save success state and
and return it's value.
Also eliminate the need to disable() by using 'ln -sf',
which will first delete the old symlink if one exists.

Changes from v1:
- fixed description

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2018-01-02 07:14:08 +01:00
John Crispin
b153745bfb procd: update to latest git HEAD
7aad940 procd: initd: fix path allocation in early_insmod
006c19c procd: Remove unnecessary memset calls.

Signed-off-by: John Crispin <john@phrozen.org>
2018-01-02 07:14:08 +01:00
Jo-Philipp Wich
ab703bf174 uci: bump to git HEAD version
5beb95d lua: additionally return name when looking up sections
ff33bb2 lua: support extended section notation

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-01-01 16:42:29 +01:00
Hauke Mehrtens
9f626501cb nftables: fix sha256sum
The mirror was delivering a file with a different hash.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-31 18:46:13 +01:00
Kabuli Chana
d0a14c1cd9 mwlwifi: update to version 10.3.4.0 / 2017-12-14
Lastest stamped version

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2017-12-31 18:46:13 +01:00
Kevin Darbyshire-Bryant
7aa15953e1 kmod-sched-cake: bump to latest bake
Fix overhead accounting error introduced by f33c4d6 refactor
cake_advance_shaper and ack_filter

Symptoms were links running under rate.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-30 14:17:34 +01:00
Rafał Miłecki
3267ce750e bcm53xx: use iflag=skip_bytes for dd command during sysupgrade
Since BusyBox 1.25.0 dd command supports iflag=skip_bytes which allows
skipping requested amount of bytes without reducing blocksize. Thanks to
this we can leave default blocksize and let dd work more efficiently.

On Netgear R6250 "dd skip=58 iflag=skip_bytes" can be 5 times faster
than "dd bs=58 skip=1" when extracting TRX out of CHK.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-29 23:18:45 +01:00
Rafał Miłecki
612a93564c brcm47xx: image: build firmware for Asus WL-500g Deluxe
It's a device based on BCM5365P (0x5365 package 0x00). This SoC has
USB 1.1 controller but device has two USB 2.0 parts. They are handled by
PCI-based controllers: 1106:3038 UHCI and 1106:3104 EHCI.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-29 23:18:19 +01:00
Rafał Miłecki
fea884ff51 bcm53xx: add early support for kernel 4.14
Don't switch to it by default yet as it requires more testing.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-29 23:15:32 +01:00
Mathias Kresin
4dd51788dd ramips: fix Omega2 compatible string
Change the compatibel from Omega to Omega2 and add the compatible string
where missing.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-29 22:32:34 +01:00
Mathias Kresin
76d735d189 ramips: fix widora neo diag led
The diag LED is named widora:orange:wifi and can't be derived from the
boardname.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-29 22:32:34 +01:00
Thomas Nixon
9fc9fbeb97 lantiq: fix dts compatible string
This was broken in 7bab49fd ("lantiq: add compatible strings to dts
files"), causing for the dm200 garbled serial output during boot, and
likely other issues.

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
[fix the compat string of the P2601HNFX as well]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-29 22:32:26 +01:00
rektide de la faye
0f72690a2d iptables: fix nftables compile issue (FS#711)
Enabling IPTABLES_NFTABLES resulted in an error during build:#
*** No rule to make target '../extensions/libext.a',
needed by 'xtables-compat-multi'."

Comments from Alexander Lochmann and Fedor Konstantinov in FS#711
provided fixes for this build error, allowing iptables to compile.
https://bugs.lede-project.org/index.php?do=details&task_id=711.

This commit updates the Makefile.am xtables_compat_multi_LDFLAGS
and _LDADD, moving linking of extensions to LDFLAGS.

Signed-off-by: rektide de la faye <rektide@voodoowarez.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-29 18:06:25 +01:00
Rafał Miłecki
6e922a0756 bcm53xx: make USB packages compatible with kernels 4.13+
In kernels 4.13+ modules are located in an extra "broadcom" subdir.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-29 17:25:51 +01:00
Matthias Schiffer
302aa793c0 base-files: fix logic when to show failsafe banner
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Fixes: 8170f280c4 ("base-files: set FAILSAFE in /etc/profile when
/tmp/.failsafe exists")
2017-12-29 15:58:16 +01:00
Rafał Miłecki
9c312ef628 bcm53xx: add upstream patch fixing SPI controller driver
That patch fixes handling SPI messages with two writing transfers. It's
important when using e.g. by m25p80 driver which uses one transfer for
opcode and another one for data.

Thanks to that fix we can now drop m25p80 workaround patch. It means one
less hack and also a better flash writing performance as there is no
more data buf copying.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-29 15:31:22 +01:00
Vittorio Gambaletta
d40a358136 ag71xx: Fix rx ring buffer stall on small packets flood on qca956x and qca953x.
Backported from Code Aurora QSDK

Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
2017-12-29 15:17:07 +01:00
Matthias Schiffer
8170f280c4 base-files: set FAILSAFE in /etc/profile when /tmp/.failsafe exists
Since dropbear clears the environment, FAILSAFE was not set as intended in
failsafe mode. This also broke sysupgrade from failsafe mode over SSH.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-12-29 14:34:03 +01:00
Matthias Schiffer
20c349f68c busybox: add missing TARGET_CPPFLAGS and TARGET_LDFLAGS
Unconditionally pass TARGET_CPPFLAGS (not passed at all before) and
TARGET_LDFLAGS (passed only in certain non-default configuration before the
Makefile streamlining). Without these flags, hardening options
(PKG_FORTIFY_SOURCE and PKG_RELRO) were not actually applied to busybox.

The addition of these flags increases the size of the stripped busybox
binary by about 6KB (~4KB with fortify headers, ~2KB with "-znow -zrelro")
with the default hardening options PKG_FORTIFY_SOURCE_1 and PKG_RELRO_FULL.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-12-28 12:26:23 +01:00
Matthias Schiffer
a10fae1133 busybox: streamline Makefile
Use default Build/Install steps where possible. No binary change in default
configuration, so PKG_RELEASE is not incremented.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-12-28 12:24:25 +01:00
Matthias Schiffer
307b29032f include/package.mk: remove old configured stamps before attempting configuration
Some packages, e.g. busybox, explicitly remove old .configured stamps
before attempting configuration, rather than after the actual configuration
step. This seems like a good idea, as there will be no stamp left if
configuration fails. Change generic rules to work like this, so package-
specific rules can be dropped.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-12-28 12:24:25 +01:00
Florian Eckert
23bba9cb33 dnsmasq: send procd signal on service reload
Send a SIGHUP signal via procd to the dnsmasq service so the instance(s)
re-read(s) the /tmp/hosts/dhcp config.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-12-26 23:35:45 +01:00
Florian Eckert
4f02285d8b dnsmasq: rewrite config on host name modification
If the hostname in /etc/config/system is modified the dnsmasq should also
get triggered to rewrite/reload the config.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-12-26 23:35:34 +01:00
Philip Prindeville
2e23733838 x86: add NVMe support for motherboards w/ M.2 slot
A lot of 1U x86_64 servers have NVMe support, which is lower-power
and higher speed than SSD or CFast drives, etc.  The drivers
required to make this work are trivial.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-12-26 23:31:00 +01:00
Kevin Darbyshire-Bryant
e547f1692a kernel: bump 4.4 to 4.4.108
Refresh patches.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-26 23:31:00 +01:00
Kevin Darbyshire-Bryant
7b6e01d389 kernel: bump 4.9 to 4.9.72
Refresh patches.

Runtime tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-26 23:31:00 +01:00
Yangbo Lu
ab8da4d285 layerscape: add byte_swap.py script for ls-rcw package
This patch is to add a byte_swap.py script for rcw bin
byte swapping instead of using tclsh.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-12-26 23:30:59 +01:00
Yangbo Lu
5741835ed4 layerscape: fix PKG_BUILD_DIR for packages
PKG_BUILD_DIR was defined with quoting PKG_VERSION in
layerscape package makefiles. Now PKG_VERSION has been
removed from these makefiles. When PKG_BUILD_DIR quotes
PKG_VERSION, '=' should be used instead ':=' to make
sure PKG_VERSION has been defined in common makefile.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-12-26 23:30:59 +01:00
Philip Prindeville
60c4f9ce56 kernel: add i2c-smbus module package
Intel motherboards (as well as the Cavium ThunderX SoC) use a
superset of the I2C protocol called SMBus.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-12-26 20:13:43 +01:00
Jonas Gorski
1064e76e4e linux: unbreak host tools build for 4.14
Remove a stray -Wp left in host_c_flags causing build failures for newer
4.14 versions.

Reported-by: Michael Marley <michael@michaelmarley.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-25 19:06:53 +01:00
Christian Lamparter
246916ddf4 brcm2708: use x86's upgrade scripts for all rpi targets
Advantages:
 - preserves existing partition layout on the sd-card.
   Only the boot and rootfs partition will be overwritten.

Please note that sysupgrade will refuse to upgrade, if the existing
installation  has an incompatible partition layout. Future changes
to the bootfs and/or rootfs partition size will likely cause breakage
to the sysupgrade procedure. In these cases, the ext4-sdcard.img.gz
will have to be written to the sdcard manually.
Please don't forget to backup your configuration in this case.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-25 12:19:43 +01:00
Christian Lamparter
6f04128892 brcm2708: convert to dt-based board-detection
Use the values populated by the generic board detect function. The
first compatible from the device tree source file will be the board
name in userspace. The model property from the device tree source file
will be the model name.

Change the board name where used in the userspace and drop the target
specific board detect, to use the generic one.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-25 12:19:41 +01:00
Christian Lamparter
778543dab4 brcm2708: add compatible strings
This patch adds the compatible string for the various RPIs from
4.14 upstream.

Note: The 4.14 upstream does not include the compute modules.
If the CM* would just house the SoC, it could in theory use the
"raw" chip compatible string. However, these CM boards also come
with RAM and eMMC. So they have to have a proper comaptible.

For now, "raspberrypi,compute-module-{1|3}" will be good enough.

Note2: The original CM was renamed to CM1 when CM3 was released.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-25 12:19:37 +01:00
Christian Lamparter
e79b096ee1 brcm2708: convert to metadata
This patch converts all the raspberrypi images to utilize
the common metadata-based image verification.

Note: the CM1 and CM3 currently use the same "rpi-cm"
boardname.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-25 12:19:36 +01:00
Hans Dedecker
67c1c145f0 nghttp2: bump to 1.29.0
439b9b6c (tag: v1.29.0) Update manual pages
48498452 Bump up version number to v1.29.0, LT revision to 29:1:15
d30f3816 Update manual pages
4d1139f6 Remove SPDY
48f57407 nghttpx: Update doc
c1f14d73 Update manual pages
216f4dad nghttpx: Remove redundant check
a4e27d76 Revert "nghttpx: Use an existing h2 backend connection as much as possible"
2365f12e Fix CMAKE_MODULE_PATH
03f7ec0f nghttpx: Write API request body in temporary file
2056e812 nghttpx: Increase api-max-request-body
1ebb6810 nghttpx: Faster configuration loading with lots of backends
a3ebeeaf nghttpx: Fix crash with --backend-http-proxy-uri option
422ad1be Use NGHTTP2_REFUSED_STREAM for streams which are closed by GOAWAY
97f1735c Bump up version number to 1.29.0

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-24 17:06:16 +01:00
John Crispin
5bbd493e66 usbmode: update to latest git HEAD
f40f84c support PantechMode
d8dc335 support Quanta and Blackberry modes
333e486 fix support for Option modems

Signed-off-by: John Crispin <john@phrozen.org>
2017-12-24 09:03:01 +01:00
Gabor Juhos
6456999731 ar71xx: spi-rb4xx: balance clk_prepare_enable() call
Commit c312cef223 ("ar71xx: spi-rb4xx fix.") replaced the clk_enable() call
with clk_prepare_enable() to meet the common clock framework requirements.
However it did not change the clk_disable() call in the error patch which
thus leads to imbalance.

Fix the code by using the correct counterpart of clk_prepare_enable() in both
places.

Fixes: c312cef223 ("ar71xx: spi-rb4xx fix.")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-24 09:03:01 +01:00
Gabor Juhos
df68e63a4f kernel/4.14: add missing newline character to UBI messages
A few UBI messages lacks the trailing newline character which
leads to ugly lines in the bootlog like this:

  [    6.649159] UBI error: no valid UBI magic found inside mtd6[    6.667751] Freeing unused kernel memory: 2196K

Add a newline character to the end of the messages to fix it.
After the fix the line from above looks better in the log:

  [    6.609182] UBI error: no valid UBI magic found inside mtd6
  [    6.627599] Freeing unused kernel memory: 2132K

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-24 09:03:01 +01:00
Gabor Juhos
975e9cd866 kernel/4.9: add missing newline character to UBI messages
A few UBI messages lacks the trailing newline character which
leads to ugly lines in the bootlog like this:

  [    6.649159] UBI error: no valid UBI magic found inside mtd6[    6.667751] Freeing unused kernel memory: 2196K

Add a newline character to the end of the messages to fix it.
After the fix the line from above looks better in the log:

  [    6.609182] UBI error: no valid UBI magic found inside mtd6
  [    6.627599] Freeing unused kernel memory: 2132K

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-24 09:03:01 +01:00
Gabor Juhos
bb51193acd kernel/4.4: add missing newline character to UBI messages
A few UBI messages lacks the trailing newline character which
leads to ugly lines in the bootlog like this:

  [    6.649159] UBI error: no valid UBI magic found inside mtd6[    6.667751] Freeing unused kernel memory: 2196K

Add a newline character to the end of the messages to fix it.
After the fix the line from above looks better in the log:

  [    6.609182] UBI error: no valid UBI magic found inside mtd6
  [    6.627599] Freeing unused kernel memory: 2132K

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-24 09:03:00 +01:00
Kevin Darbyshire-Bryant
edf5ae2026 wireguard: bump to 20171221
7e945a8 version: bump snapshot
f2168aa compat: kernels < 3.13 modified genl_ops
52004fd crypto: compile on UML
6b69b65 wg-quick: dumber matching for default routes
aa35d9d wg-quick: add the "Table" config option
037c389 keygen-html: remove prebuilt file

No patch refresh required.

Compile-test-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-23 22:08:12 +01:00
Kevin Darbyshire-Bryant
b0d99b77e5 kernel: bump 4.4 to 4.4.107
Refresh patches.

Update patch that no longer applied:
oxnas/0072-mtd-backport-v4.7-0day-patches-from-Boris.patch

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Tested-by: Rosen Penev <rosenp@gmail.com>
2017-12-23 15:36:01 +01:00
Martin Schiller
94952636e7 lantiq: remove DSL_ChipSetHWVersion from status information
The value DSL_ChipSetHWVersion is fetched from the dsl frontend
via the dsl_control service, but not really provided by the dsl
frontend firmware and for now always "UNKNOWN".

The lantiq support told us that this information wouldn't be
provided in the foreseeable future, so let's remove this
useless "UNKNOWN" information.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-12-23 15:35:52 +01:00
Mathias Kresin
c7776d4c55 ramips: fix Linkit smart 7688 support
Use a more appropriate compatible string. Fix the wireless led GPIO and
add the default wireless trigger. Use the wireless LED for boot state
indication as well.

Remove the GPIO pinmux for pins not exposed on the board.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-23 15:35:52 +01:00
Henryk Heisig
39e9bfb181 ramips: add support for TP-Link TL-MR3420 v5
TP-Link TL-MR3420 v5 are simple N300 router with
5-port FE switch and non-detachable antennas.
Its very similar to TP-Link TL-WR841N V13.

Specification:

- MT7628N/N (580 MHz)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH
- 2T2R 2.4 GHz
- 5x 10/100 Mbps Ethernet
- 2x external, non-detachable antennas
- USB 2.0 Port
- UART (J1) header on PCB (115200 8n1)
- 8x LED, 2x button, power input switch

Flash instruction:

The only way to flash LEDE image in mr3420v5 is to use
tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.225/24 and tftp server.
2. Rename "lede-ramips-mt7628-tplink_tl-mr3420-v5-squashfs-tftp-recovery.bin"
   to "tp_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 for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-12-23 15:35:52 +01:00
Mathias Kresin
8ca650b8ce ramips: move common tplink image build code into own recipe
Move common tplink image build code into own recipe. Include the common
parts instead of including a full build recipe and overwriting former set
varaibles.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-23 15:35:52 +01:00
Tomasz Maciej Nowak
cb2c0649ee kernel: move console loglevel to generic
Move CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 to generic, to make it consistent
across all targets.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2017-12-23 14:24:40 +01:00
Hans Dedecker
0fca474e70 uci: update to latest git HEAD (FS#1182)
25fd142 list: remove unncessary increment of n_section (FS#1182)
021fd65 file: remove unnecessary uci_fixup_section calls

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-22 18:30:59 +01:00
Hans Dedecker
d3ba3963c1 odhcpd: update to latest git HEAD
7aa2594 odhcpd: Replace strerror(errno) with %m format
750e457 Support muliple RAs on single interface

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-22 18:30:33 +01:00
Stijn Tintel
efa22b1116 kernel: add missing config symbols for 4.14
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-12-21 23:54:41 +01:00
Roger Pueyo Centelles
82626cc145 ar71xx: add support for MikroTik RouterBOARD 921GS-5HPacD r2 (mANTBox 15s)
This patch adds support for the MikroTik RouterBOARD 921GS-5HPacD r2
(mANTBox 15s), an outdoor sector antenna with a built-in 802.11ac
wireless router. Additionally, it adds a new profile for devices with
>= 128 MB NAND flash and 802.11ac to the ar71xx/mikrotik subtarget.

See https://mikrotik.com/product/RB921GS-5HPacD-15S for more info.

Specifications:
 - SoC: Qualcomm Atheros QCA9558 (720 MHz)
 - RAM: 128 MB
 - Storage: 128 MB NAND
 - Wireless: external QCA9822 802.11a/ac 2x2:2
 - Ethernet: 1x 1000/100/10 Mbps, integrated, via AR8031 PHY, passive PoE in
 - SFP: 1x host

Working:
 - Board/system detection
 - NAND storage detection
 - Wireless
 - Ethernet
 - 1x user LED
 - Reset button
 - Sysupgrade

Untested:
 - SFP cage (probably not working)

Installation:
 - Boot initramfs image via TFTP and then flash sysupgrade image

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2017-12-21 17:06:54 +01:00
Roger Pueyo Centelles
9604f7d337 ar71xx: fix spelling in mach-rb922.c
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2017-12-21 17:06:54 +01:00
Roger Pueyo Centelles
8927446dae ar71xx: fix rb922gs_nand_scan_fixup()
Apply code from commits 9e1bc27e6d
(ar71xx: Fix UBIFS work on Mikrotik RB95x devices) and
665bb27499 (ar71xx: fix invalid pointer
dereference in rb95x_nand_scan_fixup()) to RB92x devices too.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
2017-12-21 17:06:54 +01:00
Hauke Mehrtens
dda2229c52 layerscape: fix package download
The git hash was changed for multiple layerscape packages without
changing the version number. The LEDE build system will not download the
packages again if the old version is already there and so some people
and the build bots are using wrong version of some packages. Use
PKG_SOURCE_DATE instead of PKG_VERSION to generate packages with the
date and the first charterers of the git hash. This will change the file
name and make the build system download them again, also if in future
the git hash is changed the file name will change and trigger a new
download.

This should fix a problem spotted by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-21 10:02:16 +01:00
Christian Lamparter
e90dc8d272 apm821xx: convert to device-tree board detection
This patch converts all apm821xx devices to the device-tree
board-detection method. All instances of the legacy
boardnames (mbl,mr24,...) are converted to "vendor,device"
identifier.

The custom board-detection code in apm821xx.sh is removed as
it no longer serves any purpose.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
213ba77359 apm821xx: enable metadata for packaging
This patch enables metadata-supported image verification
for all apm821xx supported devices. Since this method comes
with a built-in image verification tool (fwtool), the previous
image checks can be removed.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
e6604fab51 apm821xx: align device names with vendor_device format
Currently, the device name handle does not include the
manufacturer. This can make it hard do differentiate
between products from different vendors that have the
same product name. As the handle is used to derive
the image name.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
1adeecf0d3 apm821xx: dts: rename devices dts files to include the manufacturer
This patch rename all the DT source files in order to
match upstream's "manufacturer-device.dts" format.

Please note that the DEVICE_DTB isn't changed. This is
because the u-boot of the MyBook Live defines the
fdt_file variable to be "apollo3g/apollo3g.dtb".

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
70301af915 apm821xx: add product names to the dt compatible for Meraki
Meraki choose to use their product's codename as the main
compatible string. Mathias Kresin commented that this is
a poor choice as this will confuse the users and devs once
the device-tree compatible is used for board-detection and
possible the image name.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
64b36fee8e apm821xx: dts: append SoC compatible to DTS
This patch appends the "apm,bluestone" or "amcc,apollo3g"
machine compatible string to the current device tree source.

Please note that unlike other archs the PPC DT code does
not regard the machine's compatible string as a priority
list. This is explained in the kernel's usage-model.txt as follows:
"PowerPC uses a slightly different scheme where it calls the .probe()
hook from each machine_desc, and the first one returning TRUE is used.
However, this approach does not take into account the priority of the
compatible list, and probably should be avoided for new architecture
support."

For this reason, the "apm,bluestone" compatible string can't be
added to the WNDR4700. As otherwise the target specific pci
fix-up code will get ignored and this causes the ath9k WIFI
to not get initialized.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
e4a50d115f apm821xx: replace DEVICE_{PROFILE|NAME} with BOARD_NAME
This patch sets the BOARD_NAME variable on each affected
apm821xx device. The existing DEVICE_PROFILE and
DEVICE_NAME assignments are deprecated as they no longer
serve any purpose.

The BOARD_NAME variable is used by the sysupgrade-tar
method to specifiy a directory overwrite for the
sysupgrade-$dir directory in the generated tar file.
Keeping the original boardname in this context will be
necessary for targets that utilize the sysupgrade-tar
method. Otherwise, sysupgrade on an previous installation
will not recognize the newly generated images.

This step is necessary since an upcoming patch realigns
the existing shortname for a device with a proper
"manufacturer_device" identifier.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
f895f1e51a apm821xx: replace whitespace with tabs
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Christian Lamparter
7c2106696d apm821xx: explicitly build the rootfs.img.gz target
The commit 87b668765e
("image: when using the new image build code, gzip ext4 images by default")

forced that all targets that select the ext4 as the root filesystem
to always compress the generated rootfs. This is fine, but this method
doesn't not allow to append the metadata on a per-target base.

Therefore this patch changes the rootfs image production rule to generate
the gzip step manually. This way the metadata can be appended at a later
date.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-21 01:05:16 +01:00
Mathias Kresin
198da20401 ramips: fix devicetree compat strings
"PandoraBox" is not the name of the manufacturer, it's a firmware made by
the manufacturer actually. Their official English name is "D-Team".

PBR-M1 is the only one they use "PandoraBox" as a brand name. Their other
products are using "Newifi" as their trademark (including Y1 and Y1S which
used to be OEM products for Lenovo).

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-21 01:05:16 +01:00
Jackson Ming Hu
c0e131b436 ramips: add support for newifi d2
Previously Newifi D2 could only use PandoraBox M1's firmware.
It works fine, but LED GPIO is different.
As a result, a separated DTS file for this device should be implemented.

Hardware spec:

* CPU: MTK MT7621A
* RAM: 512MB
* ROM: 32MB SPI Flash
* WiFi: MTK MT7603+MT7612
* Button: 2 buttons (reset, wps)
* LED: 3 single-color LEDs (USB, WiFi 2.4GHz, WiFi 5GHz) &
       2 dual-color LEDs (Power, Internet)
* Ethernet: 5 ports, 4 LAN + 1 WAN

Installation method:

Same as Newifi D1, users may need to request unlock code from the device
manufacturer. Otherwise, a SPI flash programmer may be necessary to get
the firmware flashed. After the device is unlocked, press and hold reset
button before power cable plugs in. Then go to http://192.168.1.1 to
upload and flash the firmware package.

Signed-off-by: Jackson Ming Hu <huming2207@gmail.com>
2017-12-21 01:05:16 +01:00
Andrew Crawley
fe6f298b07 ramips: add support for Vonets VAR11N-300
The VAR11N-300 is a tiny wireless-N device with a hardwired Ethernet
cable, one extra Ethernet port, and an internal antenna, based on the
MediaTek MT7620n chipset.

Specs:
- MT7620n WiSoC @ 600MHz
- 32 MB SDRAM
- 4 MB SPI flash
- 2T2R 2.4GHz WiFi-N
- 1 attached 10/100 Ethernet cable (LAN)
- 1 10/100 Ethernet port (WAN)
- 1 attached USB / barrel 5vdc power cable
- 5 LEDs (see notes below)
- 1 reset button
- 1 UART (3 pads on board)

Installation:

The stock firmware does not support uploading new firmware directly,
only checking the manufacturer's site for updates.  This process may be
possible to spoof, but the update check uses some kind of homebrew
encryption that I didn't investigate.  Instead, you can install via a
backdoor:

1. Set up a TFTP server to serve the firmware binary
(lede-ramips-mt7620-var11n-300-squashfs-sysupgrade.bin)
2. Factory reset the device by holding the reset button for a few
seconds.
3. Open the web interface (default IP: 192.168.253.254)
4. Log in with the "super admin" credentials: username `vonets`,
password `vonets26642519`.
5. On the "Operative Status" page, click the text "System Uptime", then
quickly click the uptime value.
6. If successful, an alert dialog will appear reading "Ated start", and
the device will now accept telnet connections.  If the alert does not
appear, repeat step 5 until it works (the timing is a bit tricky).
7. Telnet to the device using credentials "admin / admin"
8. Retrieve the firmware binary from the tftp server: `tftp -l lede.bin
-r lede-ramips-mt7620-var11n-300-squashfs-sysupgrade.bin -g
<tftp-server-ip>`
9. Write the firmware to flash: `mtd_write write lede.bin /dev/mtd4`
10. Reboot

Tested:
- LAN / WAN ethernet
- WiFi
- LAN / WAN / status LED GPIOs (see notes below)
- Reset button
- Sysupgrade

Notes:

LEDs:

The board has 5 LEDs - two green LEDs for LAN / WAN activity, one blue
LED for WiFi, and a pair of "status" LEDs connected to the same GPIO
(the blue LED lights when the GPIO is low, and the green when it's
high).  I was unable to determine how to operate the WiFi LED, as it
does not appear to be controlled by a GPIO directly.

Recovery:

The default U-boot installation will only boot from flash due to a
missing environment block.  I generated a valid 4KB env block using
U-boot's `fw_setenv` tool and wrote it to flash at 0x30000 using an
external programmer.  After this, it was possible to enter the U-boot
commandline interface and download a new image via TFTP (`tftpboot
81b00000 <image-filename>`), but while I could boot this image
sucessfully (`bootm`), writing it to flash (`cp.linux`) just corrupted
the flash chip.  The sysupgrade file can be written to flash at 0x50000
using an external programmer.

Signed-off-by: Andrew Crawley <acrawley@gmail.com>
2017-12-21 01:05:16 +01:00
Mathias Kresin
ad002c397a ramips: add helper variable for boardname
Add a helper variable which contains the boardname separated from the
vendor name. It allows to switch to a device tree compatible string
based boardname, by keeping the $board:colour:function syntax in
scripts handling/adding config for LEDs.

Boards not using the device tree compatible string as based boardname
are unaffected by the change, since none of them uses a comma in the
boardname.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-21 01:05:16 +01:00
Mathias Kresin
6545c71d2c ramips: sync image filename with boardname
Use <manufacturer>_<modelname> as image name for board using the
devicetree compat string as boardname.

Replace the underline of the device define, to keep the SUPPORTED_DEVICES
in sync with a devicetree compat string based boardname.

Override the default SUPPORTED_DEVICES for board which are having an
userspace boardname with an underline.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-21 01:05:16 +01:00
Mathias Kresin
7d3ec5f833 ramips: fallback to generic board detect
Fallback to the generic board detection if no case for the current
board exists.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-21 01:05:16 +01:00
Mathias Kresin
224d4a96dd ramips: drop LinkIt Smart 7688 Duo userspace support
The  LinkIt Smart 7688/LinkIt Smart 7688 Duo are identical beside the
extra ATmega32U4 - accessible via UART - on the the Duo.

Since all relevant hardware is identical, drop the Duo special handling
in userspace.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-21 01:05:16 +01:00
Hauke Mehrtens
8e03eea875 uboot-layerscape-armv8_32b: fix package download
In commit 2b1ec44dbd ("layerscape: add ls1012afrdm device support")
The git revision and the mirror hash for this package was updated to a
version which includes ls1012afrdm-uboot.bin, but the file name at
dl/uboot-layerscape-armv8_32b-2017.09.tar.xz staid the same. This way
most user did not download the new version but used the old file.
Convert this package to the normal git clone parameters by using
PKG_SOURCE_DATE instated of PKG_VERSION, now the file name in dl also
contains the git hash and should change every time the git hash is
updated.

This should fix a problem spotted by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-20 21:54:18 +01:00
Hauke Mehrtens
b80b0e14c9 kernel: kmod-crypto-hw-talitos: fix dependencies
With the updated to kernel 4.9.70 in commit f704b643b9 ("kernel:
Update kernel 4.9 to 4.9.70"), the talitos.ko kernel module got a
new dependency to kmod-crypto-des in this upstream commit:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=552f74cbd6ec806ab5ce45336a26cae1e015dbe2

This fixes a build problem found by built bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-20 20:57:13 +01:00
Hauke Mehrtens
f704b643b9 kernel: Update kernel 4.9 to 4.9.70
Runtime tested on lantiq.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-19 22:45:27 +01:00
Jake Staehle
e80ab48777 libiconv-full: fix compile-time linking error GCC7
LEDE Flyspray Task 1091:
Fix libiconv-full 'undefined reference' compile linker error using GCC7 Musl
Tested with targets x86 (i386 and x86_64)
Addition of CFLAGS "std=gnu89" fixes the linker issues, credit to harrylwc
Issue found with 'minidlna' package, which depends on 'libiconv-full'
Error in compile log:
../lib/.libs/libiconv.so: undefined reference to `aliases_lookup'
../lib/.libs/libiconv.so: undefined reference to `aliases2_lookup'
collect2: error: ld returned 1 exit status
Makefile:64: recipe for target 'iconv_no_i18n' failed

Signed-off-by: Jake Staehle <jacob@staehle.us>
2017-12-19 22:23:42 +01:00
Mathias Kresin
95fe3c51e5 ramips: fix polarity in gpio-export node
If we need to set the initial output value to GPIOF_OUT_INIT_HIGH (1) to
enable something, the pin is ACTIVE_HIGH. The same applies to
GPIOF_OUT_INIT_LOW (0) and ACTIVE_LOW.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-18 09:32:27 +01:00
Marty E. Plummer
7c03f97e84 ar71xx: fix lan ports on ens202ext
In the stock firmware both eth0 and eth1 are set to br-lan,
add this behavior to our images.

Fixes: FS#1084

Signed-off-by: Marty E. Plummer <hanetzer@protonmail.com>
2017-12-18 09:10:12 +01:00
Jonas Gorski
60a39e8f5a brcm63xx: fix Sercomm AD1018 status led
The status led part was missed when changing the board name to *-nor.

Fixes: e12c72bb52 ("brcm63xx: Add Sercomm AD1018 support")
Reported-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-17 12:50:22 +01:00
Felix Fietkau
a428d9229e mt76: update to the latest version, reverts MAC address changes causing performance regressions
cf4a5ce mt76: fix memcpy to potential null pointer on failed allocation
ca5ca8c mt76x2: fix possible NULL pointer dereferencing in mt76x2_ampdu_action()
2d4b8f5 mt76x2: mac: fix possible NULL pointer dereferencing in mt76x2_mac_write_txwi()
4ca8bba mt76x2: eeprom: fix typo in mt76x2_get_power_info_5g()
00f7e60 mt7603: fix configuration for HT40
31e9bdb mt7603: main: fix possible NULL pointer dereferencing in mt7603_ampdu_action()
bf90dd2 mt7603: mcu: fix potential NULL pointer dereferencing on failed allocation
860b185 Revert "mt76x2: init: disable APCLI by default"
bcd576e Revert "mt76x2: drop wiphy->addresses"
bdc6f2f Revert "mt76x2: clean up MAC/BSSID address initialization"
d242650 Revert "mt76x2: remove MAC address limitation for multi-vif setups"
68b0cf1 mt76x2: add functions for setting extended MAC address registers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-17 12:44:18 +01:00
Mathias Kresin
4a4d957d1a lantiq: sync image filename with boardname
Use <manufacturer>_<modelname> as image name.

Use the BOARD_NAME variable to ensure that the former used boardname is
still used as the subdirectory name for the sysupgrade-tar image, to
not break sysupgrade from earlier versions.

While at it, normalise the image filenames by using only lower case
characters and bin as file extension for sysupgrade images.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
58c6ad53a8 lantiq: drop unused variable from image build code
Remove the DEVICE_PROFILE variable. The variable isn't
used at all.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
7f68bd8119 lantiq: use the generic board detect
Drop the target specific detection function in favour of the generic
one provided by base-files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
ed72540c10 lantiq: add missing model names
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
26dc65b126 lantiq: remove the former board name from device tree model
Remove the former used board name from the device model property and
use the model name as it is.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
63d7f7fc92 lantiq: use the compatible string as board name
Use the first compatible string as board name in userspace. Add the new
board name as well as the former used board name to the image metadata
to keep compatibilty with already deployed installations.

Don't add the former used boardname for boards which exists only in
master or evaluation boards.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
aba421432f lantiq: drop SoC name from eval boards compatible string
Keep it in the same format as used for the other eval boards.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Mathias Kresin
7bab49fd7a lantiq: add compatible strings to dts files
The compatible string is mandetory for devicetree source file.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-16 23:33:56 +01:00
Hauke Mehrtens
481e1f23f5 x86: Add support for kernel 4.14
This adds basic support for kernel 4.14, this was tested in qemu only.
The subtarget configuration was refresh with kernel 4.14 and the
options needed to make it compile on kernel 4.9 were added manually.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:16:07 +01:00
Hauke Mehrtens
5c944d95ec kernel: include: remove last .0 from kernel versions again
Kernel 4.14 has the version number 4.14 and not 4.14.0. This was
different in some older Linux kernel versions, This change makes it
possible to use kernel 4.14 without any minor version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:15:23 +01:00
Hauke Mehrtens
712e1b36f4 kernel: add missing dependencies to kmod-crypto-acompress
kmod-lib-lzo and kmod-lib-lz4 depend in kernel 4.14 on
kmod-crypto-acompress, add this missing dependency.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:15:14 +01:00
Hauke Mehrtens
e387d9b0ca kernel: kmod-rtc-ds1307: add dependency to regmap
In kernel 4.14 kmod-rtc-ds1307 depends on regmap-i2c, add this missing
dependency.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:15:08 +01:00
Hauke Mehrtens
b0b9ec8e54 kernel: kmod-iio-bmp280: allow compile with kernel 4.14
This package also compiles with kernel 4.14.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:15:02 +01:00
Hauke Mehrtens
36f83dbc41 kernel: kmod-zram: deactivate CONFIG_ZRAM_WRITEBACK for kernel 4.14
This new option was introduced in kernel 4.14 and should be deactivated
by default.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:54 +01:00
Hauke Mehrtens
436fe56485 xtables-addons: fix compile with kernel 4.14
This fixes a compile problems seen with kernel 4.14.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:49 +01:00
Hauke Mehrtens
9572bae5b8 kernel: kmod-fbcon: deactivate for kernel 4.14
CONFIG_FRAMEBUFFER_CONSOLE does not activate new modules any more in
kernel 4.14, but CONFIG_FRAMEBUFFER_CONSOLE is now a boolean option
which change the kmod-fb package. kmod-fbcon should be split up.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:35 +01:00
Hauke Mehrtens
228da879fc kernel: kmod-sound-core: handle moved snd-seq-device.ko
The snd-seq-device.ko kernel module was moved with kernel 4.13.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:25 +01:00
Hauke Mehrtens
5c9cc1e73b kernel: kmod-mmc: handle moved mmc_block.ko
mmc_block.ko was moved with kernel 4.10.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:20 +01:00
Hauke Mehrtens
ac27f3867a kernel: kmod-rxrpc: handle renamed kernel module
The kernel module was renamed with kernel 4.11, handle that in the
package definition.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:12 +01:00
Hauke Mehrtens
b0d7fcdc49 kernel: deactivate some new network features
This deactivates the following options which were introduced between
kernel 4.9 and 4.14 in some kernel packages:
CONFIG_INET_ESP_OFFLOAD
CONFIG_INET6_ESP_OFFLOAD
CONFIG_LWTUNNEL_BPF
CONFIG_NET_9P_XEN

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:14:02 +01:00
Hauke Mehrtens
876191d428 kernel: unset CONFIG_CIFS_SMB311 in kmod-fs-cifs
Do not activate the experimental feature CONFIG_CIFS_SMB311.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:13:56 +01:00
Hauke Mehrtens
199273324e kernel: add kmod-crypto-ecdh
In kernel 4.14 kmod-bluetooth depends on kmod-crypto-ecdh, add
kmod-crypto-ecdh to LEDE.
Both packages also depend on the kmod-crypto-kpp package. To build this
we have to fix the dependency of CRYPTO_ECDH which has a typo.
This patch is already accepted upstream.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:13:04 +01:00
Hauke Mehrtens
f1e839dd33 kernel: add kmod-crypto-rsa
In kernel 4.14 kmod-crypto-hw-ccp depends on kmod-crypto-rsa, add it.
kmod-crypto-rsa also packages the ASN1 parser and some other code which
is currently only used by this module.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:12:46 +01:00
Hauke Mehrtens
1ea5f86437 kernel: add kmod-crypto-acompress
In kernel 4.14 kmod-crypto-deflate depends on kmod-crypto-acompress.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:12:40 +01:00
Hauke Mehrtens
00b5df832f kernel: add kmod-lib-zstd
In kernel 4.14 kmod-fs-btrfs depends on the zstd compression libraries,
add it to the package system.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:12:32 +01:00
Hauke Mehrtens
38be62b97e kernel: add kmod-dax
In kernel 4.14 kmod-dm depends on kmod-dax.
Add DAX: "Direct access to differentiated memory" to LEDE.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:12:24 +01:00
Hauke Mehrtens
efd1854050 kernel: tg3: deactivate hwmon for kernel 4.14
In kernel 4.14 hwmon support can be deactivated for the tg3 driver,
deactivate it by default to save some space.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:11:58 +01:00
Hauke Mehrtens
b3f95490b9 kernel: generic: Add kernel 4.14 support
This adds initial support for kernel 4.14 based on the patches for
kernel 4.9.

In the configuration I deactivated some of the new possible security
features like:
CONFIG_REFCOUNT_FULL
CONFIG_SLAB_FREELIST_HARDENED
CONFIG_SOFTLOCKUP_DETECTOR
CONFIG_WARN_ALL_UNSEEDED_RANDOM

And these overlay FS options are also deactivated:
CONFIG_OVERLAY_FS_INDEX
CONFIG_OVERLAY_FS_REDIRECT_DIR

I activated this:
CONFIG_FORTIFY_SOURCE
CONFIG_POSIX_TIMERS
CONFIG_SLAB_MERGE_DEFAULT
CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED

I am not sure if I did the porting correct for the following patches:
target/linux/generic/backport-4.14/020-backport_netfilter_rtcache.patch
target/linux/generic/hack-4.14/220-gc_sections.patch
target/linux/generic/hack-4.14/321-powerpc_crtsavres_prereq.patch
target/linux/generic/pending-4.14/305-mips_module_reloc.patch
target/linux/generic/pending-4.14/611-netfilter_match_bypass_default_table.patch
target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:11:19 +01:00
Hauke Mehrtens
a362df6f25 x86: refresh configuration
Just refresh the kernel configuration, some options are removed because
they are now in the generic kernel configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:11:05 +01:00
Hauke Mehrtens
0402c48cba kernel: generic: add some more 4.9 configure options
These are taken from the x86 target and should make support kernel 4.9
and 4.14 in the x86 target easier.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:10:48 +01:00
Hauke Mehrtens
c0160f01ae xtables-addons: update to version 2.14
This includes a compile fix needed for kernel 4.14.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-12-16 22:10:21 +01:00
Lucian Cristian
342d748eaf netdevices.mk: add Sun Neptune 10Gbit Ethernet
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-12-16 14:41:37 +01:00
Jo-Philipp Wich
ea5d9f5f72 kernel: tune e1000e module parameters
The default e1000e parameters (interrupt throttling rate, MSI/MSI-X
mode) are optimized for desktop and server computers to optimize
user-space execution (i.e. what's typically referred to as "useful"
work).  This assumption breaks on a router under load where most of
the "useful" work actually takes place either in hardware interrupt
handlers (IRQ) or at software IRQ (swirq) modes, so we try to reflect
that by overriding these parameters with more appropriate values.

Patch-by: Philip Prindeville <philipp@redfish-solutions.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-12-16 14:41:37 +01:00
Philip Prindeville
f96085b35d x86: add on-chip thermal sensors and cpuid support
Cover temperature sensors for all mainstream 64-bit processors, including
AMD 10h and 15h families, Intel iCore, Xeon, Atom, and Via Nano.  Also
add CPUID support for user-space applications to detect CPU type.

Include the on-chip sensors for 64-bit CPU's in the generic profile
in case someone builds a 32-bit kernel to run on a Xeon SoC, etc.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-12-16 14:41:37 +01:00
Philip Prindeville
9868eba5a0 x86: refresh settings for 4.9.59
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-12-16 14:41:37 +01:00
Daniel Engberg
3be10e3a30 tools/expat: Update to 2.2.5
Update (lib)expat to 2.2.5

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-12-16 14:41:37 +01:00
Jonas Gorski
054c0d4e31 brcm63xx: backport mdio-bus reset gpio support
Backport the mdio-bus reset gpio support from 4.12 and use it instead
of toggling the reset ourself.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-16 12:57:06 +01:00
Jonas Gorski
49c3b1c455 brcm63xx: backport enet cleanup patches
Align with upstream version, mostly non-fixes and small clean ups.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-16 12:57:05 +01:00
Jonas Gorski
aba4e29ead brcm63xx: register serial through device tree
Register serial consoles through device tree instead of through board
data.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-16 12:57:05 +01:00
Jonas Gorski
a3384088a2 brcm63xx: add uart nodes
Now that we can register uarts through device-tree, add them to the dtsi
files.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-16 12:57:05 +01:00
Jonas Gorski
5c69047aaf brcm63xx: add clkdev lookup support
Add clockdev lookup support for easier providing of clocks for
devices.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-16 12:57:05 +01:00
Daniel Gonzalez Cabanelas
e12c72bb52 brcm63xx: Add Sercomm AD1018 support
Add support for the Sercomm AD1018 router

This a BCM6328 based board, 128 MB RAM, 128 MiB NAND flash,
with an onboard BCM43217 wifi, 4 ethernet ports and 1 USB
host port (not soldered). The board also has an FXS chip (Si32177)
connected via SPI (SS2#), without support in LEDE.

Since NAND flash chips aren't still supported in brcm63xx, the
support is for now added to work only with SPI flash chips. Therefore
hardware modding, soldering a new SPI flash chip, is required
to make the board work with LEDE (tested and working OK).
The flash at dts is intentionally left without partitioning to let
the user choose a NOR chip of any size (8, 16 or 32 MB).

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
[jonas.gorski: renamed ad1018 to ad1018-nor to signify the modification]
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-16 12:57:05 +01:00
Sandeep Sheriker Mallikarjun
085967f774 at91: create sdcard image for sama5
create sdcard image using gen_at91_sdcard_img.sh for sama5 platform
and sdcard image partition layout is:
  P0: Boot (fat32) - contains(at91bootstrap,u-boot,zImage & dtb)
  p1: Rootfs (ext4)

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-12-16 00:02:14 +01:00
Gabor Juhos
665bb27499 ar71xx: fix invalid pointer dereference in rb95x_nand_scan_fixup()
Since Linux 4.6, mtd->priv no longer points to the NAND specific
structure. Under 4.9 it contains NULL, thus using it to access
chip->options causes an invalid pointer dereference (FS#1200).

Update the code to use the mtd_to_nand() helper under 4.9 to obtain
the address of the chip specific data.

Fixes: 7bbf4117c6 ("ar71xx: Add kernel 4.9 support")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-16 00:00:25 +01:00
Gabor Juhos
2ecc413107 ar71xx: fix invalid pointer dereference in c60_nand_scan_fixup()
Since Linux 4.6, mtd->priv no longer points to the NAND specific
structure. Under 4.9 it contains NULL, thus using it to access
the fields of the nand_chip structure causes an invalid pointer
dereference.

Update the code to use the mtd_to_nand() helper under 4.9 to obtain
the address of the chip specific data.

Compile tested only.

Fixes: 7bbf4117c6 ("ar71xx: Add kernel 4.9 support")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
Tested-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-15 23:57:41 +01:00
Gabor Juhos
c13b4ef2c8 kernel: fix compiler warning in mtdsplit_minor.c under 4.4
When mtdsplit_minor.c is compiled under Linux 4.4, the compiler
drops the following warning:

    CC      drivers/mtd/mtdsplit/mtdsplit_minor.o
  drivers/mtd/mtdsplit/mtdsplit_minor.c:106:14: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
    .parse_fn = mtdsplit_parse_minor,
                ^
  drivers/mtd/mtdsplit/mtdsplit_minor.c:106:14: note: (near initialization for 'mtdsplit_minor_parser.parse_fn')

The second parameter of the parser function must not have a 'const'
qualifier in 4.4. The 001-mtdsplit_backport.patch removes the qualifier
from other partition parsers. Update it to handle mtdsplit_minor.c as
well.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-15 23:57:09 +01:00
Kevin Darbyshire-Bryant
a9940ca2d7 iproute2: cake: support new operating modes
There has been recent significant activity with the cake qdisc of late
Some of that effort is related to upstreaming to kernel & iproute2
mainline but we're not quite there yet.  This commit teaches tc how to
activate and interprete the latest cake operating modes, namely:

ingress mode: Instead of only counting packets that make it past the
shaper, include packets we've decided to drop as well, since they did
arrive with us on the link and took link capacity.
This mode is more suitable for shaping the ingress of a link
(e.g. from ISP) rather than the more normal egress.

ack-filter/ack-filter-aggressive: Filter excessive TCP ACKS.  Useful in
highly assymetric links (downstream v upstream capacity) where the
majority of upstream link capacity is occupied with ACKS for downstream
traffic.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-15 23:54:51 +01:00
Kevin Darbyshire-Bryant
0589979f7b kmod-sched-cake: bump to latest bake of cake
There has been recent significant activity with the cake qdisc of late
but in the cobalt branch.  Some of that effort is related to upstreaming
to kernel & iproute2 mainline but we're not quite there yet.  Relevant
feature changes:

ingress mode: Instead of only counting packets that make it past the
shaper, include packets we've decided to drop as well, since they did
arrive with us on the link and took link capacity.
This mode is more suitable for shaping the ingress of a link
(e.g. from ISP) rather than the more normal egress.

ptm mode: Minor optimisation in packet overhead calculation.

dual-src/dsthost/triple-isolate: Optimise only calculating src or dst
host hashes only if required.

ack-filter/ack-filter-aggressive: Filter excessive TCP ACKS.  Useful in
highly assymetric links (downstream v upstream capacity) where the
majority of upstream link capacity is occupied with ACKS for downstream
traffic.

A separate iproute2 patch to teach it about Cake's new features will
follow.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-15 23:54:05 +01:00
kyson Lok
e776b6ed0b ar71xx: fix LED name typo for GL-AR300M
It shouldn't use double colon characters.

Signed-off-by: kyson Lok <kysonlok@gmail.com>
2017-12-15 23:50:21 +01:00
Hans Dedecker
7f029c3924 netifd: update to latest git HEAD
4268193 interface-ip: harden eui64 IPv6 prefix address generation
81ff6d1 interface-ip: fix race condition in IPv6 prefix address generation
d3a5df0 handler: replace is_error() helper with NULL check

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-15 17:44:50 +01:00
Hans Dedecker
5d6f2a2764 uhttpd: fix PKG_CONFIG_DEPENDS (FS#1189)
Remove PACKAGE_uhttpd_debug config as this is an unused leftover
Add CONFIG_uhttpd_lua to PKG_CONFIG_DEPENDS

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-15 17:44:42 +01:00
John Crispin
9f8d28285d Revert "ar71xx: TL-WR1043N v4/v5: add orange WAN LED support"
This reverts commit 256990cbc0.

this commit caused a compile error

"TL_WR1043_V5_GPIO_LED_WANORANGE" is undefined.

Signed-off-by: John Crispin <john@phrozen.org>
2017-12-14 11:00:11 +01:00
Rafał Miłecki
d2e96d55ab opkg: fix PKG_CONFIG_DEPENDS to include version.mk entries
Including version.mk sets PKG_CONFIG_DEPENDS to config entries used for
VERSION_SED command. We should keep these configs to make sure package
gets refreshed when needed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-14 09:39:40 +01:00
Jo-Philipp Wich
f4b9d9d6f1 base-files: allow skipping of hash verification
When calling a download target, hash verification is now completely
skipped if we set PKG_HASH=skip.

This allows to easily bump package version:

$ make package/<mypackage>/download PKG_HASH=skip V=s
$ make package/<mypackage>/check FIXUP=1 V=s

This will download the new version of the package, and then automatically
update PKG_HASH with the hash of the new version.  Of course, it is still
the responsibility of the packager to ensure that the new tarball is
legitimate, because it is downloaded from a possibly untrusted source.

Fixes: b30ba14e ("scripts/download.pl: fail loudly if provided hash is unsupported")
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: John Crispin <john@phrozen.org>
2017-12-14 09:29:31 +01:00
Tim Thorpe
256990cbc0 ar71xx: TL-WR1043N v4/v5: add orange WAN LED support
Add missing definitions for the orange WAN LED on the TL-WR1043N(D) v4 and
v5. Minor format correction on a constant for consistency.

Signed-off-by: Tim Thorpe <tim@tfthorpe.net>
2017-12-14 09:29:31 +01:00
Henryk Heisig
85c1644a86 ar71xx: generate BR region-code factory image for TP-Link TL-WR940N
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-12-14 09:29:30 +01:00
Henryk Heisig
3083cc6acf firmware-utils: mktplinkfw: add support for BR region code
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-12-14 09:29:30 +01:00
Lucian Cristian
1044723ec9 busybox: enable find -newer needed for shorewall firewall, no size increase on binary
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-12-14 09:29:30 +01:00
Sergey Ryazanov
1a51241cb1 firmware-utils: mktplinkfw: fix JFFS2 EOF markers
mktplinkfw/mktplinkfw2 utilities put JFFS2 EOF market only at 64KB
boundary, this could lead to current device configuration lost during
the sysupgrade on a device, which is equpped with flash with the 4KB
erase block size (e.g. TP-Link Archer C20).

This happens when 64KB and 4KB alignments do not match, so the JFFS2
data is written not exactly at the partition beginnig and startup
scripts can not find the JFFS2 during the first boot just after the
sysupgrade.

Fix this by placing additional JFFS2 EOF marker at a 4KB boundary. Also
keep the marker at 64KB intact, so the utilities will produce images
suitable for devices with both 4KB and 64KB erase blocks.

Fixes: 29a2c2ea80 (add ability to put
jffs2 eof marker into the image)

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-12-14 09:29:30 +01:00
João Chaínho
4d8a8c80d9 ar71xx: Fix switch port numbering on MIkrotik RB951Ui-2nD and RB493G
This patch fixes the switch port numbering on Mikrotik RB951Ui-2nD (hAP).
Also fixes the switch port numbering shown on LuCI for Mikrotik RB493G.

Signed-off-by: João Chaínho <joaochainho@gmail.com>
2017-12-14 09:29:30 +01:00
Luiz Angelo Daros de Luca
3e98674bcf base-files: fix sysupgrade -b/-l when -c is used
Since /overlay/upper appeared, -b ignored -c silently (cause it was
still checking for /overlay/etc). Now, if /overlay/upper is absent,
sysupgrade -c will fail and exit verbosely.

Fix -l to consider -c (it never did).

Clean up to always use /overlay/upper/xxx instead of still checking
for /overlay/xxx.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2017-12-14 09:29:30 +01:00
Christian Lamparter
cb02a376b3 apm821xx: use x86's upgrade scripts for MyBook Live
Advantages:
 - preserves existing partition layout. On the hard-drive.
   Only the boot and rootfs partition will be overwritten.

Disadvantages:
 - The upgrade process takes much longer to run.
   from 2-3 seconds to 15-25 seconds.

Please note that sysupgrade will refuse to upgrade, if the existing
installation has an incompatible partition layout. Future changes
to the bootfs and/or rootfs partition size will likely cause breakage
to the sysupgrade procedure. In these cases, the ext4-rootfs.img.gz
has to be written manually onto the disk. Please don't forget to backup
your configuration in this cases.

Note2: This patch requires
"base-files: upgrade: make get_partitions() endian agnostic"

Note3: If your current installation does not host the two
changes, sysupgrading will wipe the existing partition
layout. Don't forget to backup your data!

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-14 09:29:30 +01:00
Rosen Penev
06f8b4ddbd e2fsprogs: Update to 1.43.7
Compiled and tested on ramips with no noticeable problems.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-12-14 09:29:30 +01:00
Christian Lamparter
0cad9f09be apm821xx: MyBook Live convert to DT PHY
Changes MyBook Live to use DT PHY probing and the broadcom phy driver.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-14 09:29:30 +01:00
Christian Lamparter
6ad56fb34c apm821xx: convert to dt based diag LED script
Please note that users with a Netgear WNDR4700
will need to update the device-tree partition
manually.

For instructions, please refere to commit 49856a4bb5
("apm821xx: make it possible to update the dtb partition on the WNDR4700")

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-14 09:29:30 +01:00
Christian Lamparter
da6fdce365 base-files: unify get_dt_led helper function
Lantiq and IPQ806X (which includes IPQ40XX) both define the
same custom function {ipq806x|lantiq}_get_dt_led.

This patch moves the function into the base-file package at
lib/functions/leds.sh to make it more accessible for other
targets as well.

Cc: Mathias Kresin <dev@kresin.me>
Cc: John Crispin <john@phrozen.org>
Cc: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-14 09:29:30 +01:00
Jonas Gorski
a8d3d517d0 brcm63xx: fix an OOPS when accessing the basemode register on 6368
The bcm6368 pinctrl driver passed the wrong variable to
devm_regmap_field_alloc, causing it to blow up when later trying to
access the field.

Fixes #1211.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-13 16:40:47 +01:00
Jonas Gorski
ef1f6092e0 base-files: make including distfeeds.conf optional
To not clutter the system when building an opkg free image, generate the
distfeeds.conf only if CLEAN_IPKG is unset.

Since opkg is now a shared package, we can't rely on PACKAGE_opkg, but
since opkg is not reasonably usable without the status information, we
can tie the distfeeds.conf to it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-13 14:59:07 +01:00
Jonas Gorski
5538b4df7f base-files: create /etc/opkg before generating distfeeds.conf
Ensure /etc/opkg exists before trying to write there. This fixes a build
failure if SIGNED_PACKAGES is disabled.

Reported-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-13 14:46:37 +01:00
Jonas Gorski
1cfbd50ff4 package: move distfeeds.conf from opkg to base-files
All the relevant options used for distfeeds.conf are part of base-files,
so it makes more sense to move the file there as well.

This has the added benefit that the we can share the opkg package again,
reducing the amount of target specific packages.

Acked-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-13 13:38:19 +01:00
Jonas Gorski
eeeee885fb ar71xx: fix lzma-loader build with glibc
For an unknown reason gcc tries to link in crti.o when building with a
glibc toolchain (this does not happen with other targets). Prevent this
by telling gcc explicitly to not do that.

Fixes the following build error:

/home/jonas/git/lede/staging_dir/toolchain-mips_24kc_gcc-5.5.0_glibc/lib/gcc/mips-openwrt-linux-gnu/5.5.0/../../../../mips-openwrt-linux-gnu/lib/crti.o: In function `_init':
(.init+0x18): relocation truncated to fit: R_MIPS_GOT16 against `__gmon_start__'
/home/jonas/git/lede/staging_dir/toolchain-mips_24kc_gcc-5.5.0_glibc/lib/gcc/mips-openwrt-linux-gnu/5.5.0/../../../../mips-openwrt-linux-gnu/lib/crti.o: In function `_init':
(.init+0x28): relocation truncated to fit: R_MIPS_CALL16 against `__gmon_start__'
collect2: error: ld returned 1 exit status

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-12-13 11:34:51 +01:00
Kevin Darbyshire-Bryant
30e18c8d64 wireguard: bump to 20171211
Bump to latest WireGuard snapshot release:

44f8e4d version: bump snapshot
bbe2f94 chacha20poly1305: wire up avx512vl for skylake-x
679e53a chacha20: avx512vl implementation
10b1232 poly1305: fix avx512f alignment bug
5fce163 chacha20poly1305: cleaner generic code
63a0031 blake2s-x86_64: fix spacing
d2e13a8 global: add SPDX tags to all files
d94f3dc chacha20-arm: fix with clang -fno-integrated-as.
3004f6b poly1305: update x86-64 kernel to AVX512F only
d452d86 tools: no need to put this on the stack
0ff098f tools: remove undocumented unused syntax
b1aa43c contrib: keygen-html for generating keys in the browser
e35e45a kernel-tree: jury rig is the more common spelling
210845c netlink: rename symbol to avoid clashes
fcf568e device: clear last handshake timer on ifdown
d698467 compat: fix 3.10 backport
5342867 device: do not clear keys during sleep on Android
88624d4 curve25519: explictly depend on AS_AVX
c45ed55 compat: support RAP in assembly
7f29cf9 curve25519: modularize dispatch

Refresh patches.

Compile-test-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-12-12 22:24:26 +01:00
Martin Schiller
65d62b5f4f dropbear: disable MD5 HMAC and switch to sha1 fingerprints
As MD5 is known weak for many years and more and more
penetration test tools complain about enabled MD5 HMAC
I think it's time to drop it.

By disabling the MD5 HMAC support dropbear  will also
automatically use SHA1 for fingerprints.
This shouldn't be a problem too.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-12-12 22:24:17 +01:00
Luis Araneda
575178e462 treewide: add only one device when appending to TARGET_DEVICES
This will avoid some conflicts when doing a git rebase or merge,
specially when adding support to a new device.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
[drop brcm47xx changes which rename the images]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-12 18:47:26 +01:00
Jo-Philipp Wich
72051f7036 rules.mk: export TMPDIR
Set TMPDIR to the same value as the existing TMP_DIR variable in order to
let gcc and various other utilities use the local temporary directory
instead of the system-wide one.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-12-12 17:44:01 +01:00
Jo-Philipp Wich
902961c148 wolfssl: update to 3.12.2 (1 CVE)
Update wolfssl to the latest release v3.12.2 and backport an upstream
pending fix for CVE-2017-13099 ("ROBOT vulnerability").

Ref: https://github.com/wolfSSL/wolfssl/pull/1229
Ref: https://robotattack.org/

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-12-12 17:39:52 +01:00
Felix Fietkau
905bbc96ef build: allow PKG_PREPARED_DEPENDS and PKG_CONFIG_DEPENDS to be changed after including package.mk
Reverts commit a9c96ef0ac and replaces it
with a different approach

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-12 12:45:28 +01:00
Kabuli Chana
e4a69bda61 mwlwifi: update to version 10.3.4.0 / 2017-11-29
Improves stability on WRT3200ACM

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2017-12-12 12:00:50 +01:00
Gabor Juhos
e7b48fcfe1 ar71xx: fix board detection with newer RouterBOOT versions
Recent RouterBOOT version (at least version 3.41 on RB911G-5HPacD)
use "Board=" kernel parameter instead of "board=" to pass the board
name to the kernel. Due to this change the board detection code is
not working on the devices shipped with the new RouterBOOT version.
Because the kernel is unable to identify these boards they become
unusable despite that they are supported by the current code.

Update the prom_init code to convert the 'Board' kernel parameter to
'board'. After this change, the board detection works also with the
new RouterBOOT versions.

Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
2017-12-12 17:05:25 +08:00
Moritz Warning
b8220883fd brcm47xx: remove versions from linksys-e1000 target
The target name does not need to included a revision
if all revisions are supported.
This target supports all revisions (v1, v2, v2.1).

Signed-off-by: Moritz Warning <moritzwarning@web.de>
[Keep the version numbers in the device title, it doesn't harm]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-11 12:44:50 +01:00
Moritz Warning
ac3d7d3569 brcm47xx: use proper region code in image name
Replace 'north-america' by 'na' and remove 'other-regions' in image
files for Netgear WGR614 v10.

Signed-off-by: Moritz Warning <moritzwarning@web.de>
2017-12-11 12:44:41 +01:00
Mathias Kresin
ab6620e817 lantiq: dgn3500 drop worldwide suffix
Remove the WW suffix, everything without a region suffix is world wide
anyway.

While at it, normalise the image filenames by using only lower case
characters.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-11 12:43:29 +01:00
Sascha Paunovic
d810a2aebf kernel: fix spelling in CONFIG_DEVTMPFS help text
Change "ti" to "to", as that's the correct spelling.

Signed-off-by: Sascha Paunovic <azarus@posteo.net>
2017-12-11 12:43:29 +01:00
Mathias Kresin
0c7ad4e5d3 lantiq: nand: drop ubifs images
Users are confused which image type they should use and there are more
drawbacks than adavantages in using a r/w ubifs rootfs in constrast to
a read-only squashfs rootfs like:

 - less available free flash space due to better compression of squashfs
   images
 - no support for factory reset due to r/w filesystem
 - possibility to break failsafe due to r/w filesystem

Therefore, drop support for r/w ubifs rootfs images.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-11 10:31:00 +01:00
Hans Dedecker
893a1ede2e dnsmasq: add DHCP build switch support in full variant
Add config option which allows to enable/disable DHCP support at compile
time. Make DHCPv6 support dependant on DHCP support as DHCPv6 support
implies having DHCP support.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-10 16:42:01 +01:00
Jo-Philipp Wich
f4c68e1cc6 busybox: fix glibc libresolv dependency for LEDE nslook applet
Fixes d1ba483472 merge: busybox: update CONFIG_NSLOOKUP in busybox config.
Fixes FS#1212.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-12-10 14:26:19 +01:00
Matthias Schiffer
d573b1287e base-files: remove remaining uses of %N, and drop VERSION_NICK config symbol
Fixes d23e1e1e1a "merge: properly remove %n / %N references"

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-12-09 23:27:41 +01:00
Jo-Philipp Wich
d23e1e1e1a merge: properly remove %n / %N references
- use %d instead of %n for opkg feed identifiers
- remove %n / %N references from version files

Fixes bf5cef47b3 merge: release/banner: drop release name and update banner.
Fixes FS#1213.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-12-09 16:01:14 +01:00
Pavel Kubelun
69d22a6bf6 ramips: fix a typo in 02_network
The typo in network defaults script in ramips target that prevents
defaults to initialize.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-12-08 22:34:31 +01:00
Mathias Kresin
abdf0dea3a netifd: always send DHCPv4 hostname
udhcpc doesn't send a hostname by default. Use the system hostname if
nothing else is specified, to always send a hostname.

It syncs the behaviour to odhcpc, which always sends a hostname.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-08 21:00:26 +01:00
Mathias Kresin
93bd46b719 procd: nand: remove nand_board_name platform override
It isn't uses anymore by any target.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-08 20:57:12 +01:00
Mathias Kresin
0b8a1e75df ar71xx: remove nand_board_name platform override
The boardname isn't used any longer to find the subdirectory in the
sysupgrade tar archive, which makes this override useless.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-08 20:57:12 +01:00
Mathias Kresin
c90a8cb755 procd: nand: dont rely on boardname in nand_upgrade_tar
Kernel and rootfs in a subdirectory matching the userspace boardname,
was intended to use a single sysupgrade-tar archive for multiple boards
with different kernel/rootfs images. This feature was never used.

Use the first found directory in the tar archive instead of relying on
a directory named according to the userspace boardname.

It allows to change the boardname without adding another compatibility
layer - using the nand_board_name() function - for (sub)targets using
the metadata based image validation in favour to
nand_do_platform_check().

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-12-08 20:57:12 +01:00
Felix Fietkau
668eb70157 kernel: MIPS compile out no-op DMA mapping ops where possible
Slightly improves networking throughput on some devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-08 19:55:17 +01:00
Rosen Penev
1c2fdfbaf2 ag71xx: Reduce NAPI weight to 32.
Qualcomm claims this reduces cache misses. Original commit message below:

From: Ben Menchaca <ben.menchaca@qca.qualcomm.com>
Date: Tue, 11 Jun 2013 12:18:46 -0500
Subject: [ag71xx] reduce NAPI weight

In an attempt to increase our cache warmth, we are decreasing NAPI.
This increases the warmth of the reused SKBs.

Signed-off-by: Ben Menchaca <ben.menchaca@qca.qualcomm.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-12-08 19:54:37 +01:00
Rosen Penev
524d103e7e Revert "ag71xx: Switch from driver to kernel macro for NAPI_WEIGHT."
The motivation for this was misguided. It turns out tuning the NAPI weight could be useful for testing purposes. Therefore reverting.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-12-08 19:54:34 +01:00
Christian Lamparter
6b175b7cd6 toolchain: musl: update to current HEAD
Changes:

72656157 fix fgetwc when decoding a character that crosses buffer boundary
a223dbd2 add reverse iconv mappings for JIS-based encodings
105eff9d generalize iconv framework for 8-bit codepages
a71b46cf fix malloc state corruption when ldso rejects loading a second libc
d060edf6 reformat cjk iconv tables to be diff-friendly, match tool output
c21051e9 prevent fork's errno from being clobbered by atfork handlers
a39f20bf add iso-2022-jp support (decoding only) to iconv
5b546faa add iconv framework for decoding stateful encodings
0df5b39a simplify/optimize iconv utf-8 case
9eb6dd51 handle ascii range individually in each iconv case
bff59d13 move iconv_close to its own translation unit
79f49eff refactor iconv conversion descriptor encoding/decoding
30fdda6c fix getaddrinfo error code for non-numeric service with AI_NUMERICSERV
67b29947 fix mismatched type of __pthread_tsd_run_dtors weak definition
13935337 s390x: use generic ioctl.h
4dc44ce8 microblaze: add statx syscall from linux v4.13
ffd048a0 aarch64: add extra_context struct from linux v4.13
6651ef1f add new tcp.h socket options from linux v4.13
14ced228 add new fcntl.h macros from linux v4.13
754f66af ioctl TIOCGPTPEER from linux v4.13
c35a8bf4 add SO_ getsockopt options from linux v4.13
5daaed6a s390x: add syscall number for s390_guarded_storage from linux v4.12
2dc6760f i386: add arch_prctl syscall number from linux v4.12
840d45be aarch64: add new HWCAP_* flags from linux v4.12
4c811227 add ARPHDR_VSOCKMON from linux v4.12
54f04d99 add new SO_ socket options from linux v4.12
9864f60e add statx syscall numbers from linux v4.11
c519658c add TCP_NLA_* enums from linux v4.11
ee3ae782 add TCP_FASTOPEN_CONNECT tcp socket option from linux v4.11
3eb82f73 add ETH_P_IBOE from linux v4.11
bd1560f6 update aarch64 hwcap.h for linux v4.11
cee73f0c add kexec_file_load syscall number on powerpc from linux v4.10
8f569557 add microblaze syscall numbers from linux v4.10
d8004030 add TFD_TIMER_CANCEL_ON_SET that timerfd.h was missing
f5638c22 add ETH_MIN_MTU and ETH_MAX_MTU from linux v4.10
01369691 add IP_RECVFRAGSIZE and IPV6_RECVFRAGSIZE from linux v4.10
5c596ed8 add SCM_TIMESTAMPING_OPT_STATS and related TCP_ enums from linux v4.10
6fc6ca1a adjust posix_spawn dup2 action behavior to match future requirements

Cc: Syrone Wong <wong.syrone@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-08 19:54:21 +01:00
Christian Lamparter
4e3f6dae04 base-files: upgrade: make get_partitions() endian agnostic
This patch fixes two issues with the current get_partitions()
function.

First: "Invalid partition table on $disk" will pop up on
legitimate images on big endian system.

This is because the little-endian representation of "55 AA" is
assumed in the context of little-endian architectures. On these
comparing it to the 16-bit word 0xAA55 does work as intented.
Whereas on big-endian systems, this would have to be 0x55AA.

This patch fixes the issue by replacing the integer conversion
and value match check with just a string comparision.

Second: The extraction of the type, start LBA and LBA num from
the partition table has the same endianness issue. This has been
fixed by using the new hex_le32_to_cpu() function. This function
will translate the stored little-endian data to the correct
byte-order if necessary.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-08 19:54:16 +01:00
Christian Lamparter
96b485ec7a firmware: ath10k-firmware: update QCA4019 firmware to 10.4-3.2.1-00058
This patch updates ath10k-firmware to use the
firmware-5.bin_10.4-3.2.1-00058 firmware for the QCA4019.

Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-12-08 19:54:14 +01:00
Zoltan HERPAI
d2c06eb075 merge: etc: update remaining files
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
2ffff58c2b merge: uhttpd: update cert generation to match system defaults
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
d1ba483472 merge: busybox: update CONFIG_NSLOOKUP in busybox config and respective patch
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
23f774f727 merge: packages: update branding in core packages
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
1f8585cf99 merge: ssid: update default ssid
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
7b5c989ab9 merge: targets: update image generation and targets
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
bf5cef47b3 merge: release/banner: drop release name and update banner
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Zoltan HERPAI
34bbbbf9c3 merge: base: update base-files and basic config
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-08 19:41:18 +01:00
Felix Fietkau
98fb380d88 mt76: update to the latest version, fixes setting per-vif mac address
d02a05b mt7603: update firmware to version 20160107100755
4d4cd05 Partially revert "mt7603: use mcu command to set timing registers, fix OFDM timeout values"
170f334 mt76x2: remove MAC address limitation for multi-vif setups
3563b8f mt76x2: clean up MAC/BSSID address initialization
9de77e1 mt76x2: drop wiphy->addresses
a6a6e25 mt76x2: init: disable APCLI by default
c64633e mt76x2: configure rx filter based on monitor mode setting
ac815fa mt76x2: init: fix rx filter default value during init
e504656 mt7603: configure other-unicast drop based on monitor mode setting

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-08 17:58:05 +01:00
David Bauer
5a8e9846af ar71xx: C58/C59 fix LAN1 working incorrectly
This commit fixes LAN Port 1 not transferring data in case no
other LAN Port has active link-state on TP-Link Archer C58/C59.

Signed-off-by: David Bauer <mail@david-bauer.net>
2017-12-08 13:53:03 +01:00
Peter Wagner
55e70c8b72 openssl: update to 1.0.2n
add no-ssl3-method again as 1.0.2n compiles without the ssl3-method(s)

Fixes CVEs: CVE-2017-3737, CVE-2017-3738

Signed-off-by: Peter Wagner <tripolar@gmx.at>
2017-12-08 10:47:51 +01:00
Rosen Penev
d6e34b7352 tools/sstrip: Fix compile under standard linux.
bswap32 undefined is the issue. Added the proper header. Also fixed a few format/conversion warnings that clang complained about without -Wall or -Wextra.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-12-08 10:40:20 +01:00
Hans Dedecker
01c5cf0b24 odhcpd: fix faulty PKG_SOURCE_DATE in 711a816
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-07 18:43:01 +01:00
Rafał Miłecki
3cd6ccf199 opkg: bump to version 2017-12-07
Changes:
3b417b9 opkg_download: decode file:/ URLs
71c27cb file_util: implement urldecode_path()
d1fe095 file_util: consolidate hex/unhex routines
ebdfc12 add opkg option http_timeout
9f003e3 opkg: encode archive filenames while constructing download URLs
73e6c81 file_util: implement urlencode_path() helper
468158f libopkg: fix SHA256 calculation for big endian system

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-12-07 18:21:54 +01:00
Daniel Golle
173edcdc9d rpcd: update to version from 2017-12-07
cfe1e75c91bc1 sys: packagelist: allow listing all packages
74a784f037867 sys: fix passwd path

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-12-07 17:26:04 +01:00
Hans Dedecker
a39ddff428 dnsmasq: write atomic host file
Different invocations of the dnsmasq init script (e.g. at startup by procd)
will rewrite the dhcp host file which might result into dnsmasq reading an
empty dhcp host file as it is being rewritten by the dnsmasq init script.
Let the dnsmasq init script first write to a temp dhcp host file so it does
not overwrite the contents of the existing dhcp host file.

Reported-by: Hartmut Birr <e9hack@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-07 10:59:03 +01:00
Rosen Penev
94fcd92913 strace: Update to 4.20
Compiled and tested on mvebu. Mainly a kernel 4.14 change. Also
reordered the Makefile a little bit.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-12-07 11:46:37 +08:00
Timo Sigurdsson
bd45e15d0a hostapd: backport fix for wnm_sleep_mode=0
wpa_disable_eapol_key_retries can't prevent attacks against the Wireless
Network Management (WNM) Sleep Mode handshake. Currently, hostapd
processes WNM Sleep Mode requests from clients regardless of the setting
wnm_sleep_mode. Backport Jouni Malinen's upstream patch 114f2830 in
order to ignore such requests by clients when wnm_sleep_mode is disabled
(which is the default).

Signed-off-by: Timo Sigurdsson <public_timo.s@silentcreek.de>
[rewrite commit subject (<= 50 characters), bump PKG_RELEASE]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-12-07 02:00:23 +02:00
Timo Sigurdsson
6515887ed9 hostapd: Expose the tdls_prohibit option to UCI
wpa_disable_eapol_key_retries can't prevent attacks against the
Tunneled Direct-Link Setup (TDLS) handshake. Jouni Malinen suggested
that the existing hostapd option tdls_prohibit can be used to further
complicate this possibility at the AP side. tdls_prohibit=1 makes
hostapd advertise that use of TDLS is not allowed in the BSS.

Note: If an attacker manages to lure both TDLS peers into a fake
AP, hiding the tdls_prohibit advertisement from them, it might be
possible to bypass this protection.

Make this option configurable via UCI, but disabled by default.

Signed-off-by: Timo Sigurdsson <public_timo.s@silentcreek.de>
2017-12-07 01:57:29 +02:00
Stijn Tintel
f997478655 kernel: bump 4.9 to 4.9.67
Refresh patches.
Remove upstreamed patches:
- generic/190-1-5-e1000e-Fix-error-path-in-link-detection.patch
- generic/190-3-5-e1000e-Fix-return-value-test.patch
- generic/190-4-5-e1000e-Separate-signaling-for-link-check-link-up.patch
- generic/190-5-5-e1000e-Avoid-receiver-overrun-interrupt-bursts.patch
- ramips/0102-MIPS-ralink-Fix-MT7628-pinmux.patch
- ramips/0103-MIPS-ralink-Fix-typo-in-mt7628-pinmux-function
Update patches that no longer apply:
- layerscape/815-spi-support-layerscape.patch
- ramips/0099-pci-mt7620.patch

Compile-tested on ar71xx, brcm2708/bcm2708, octeon and x86/64.
Runtime-tested on ar71xx, brcm2708/bcm2708, octeon and x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-12-07 01:41:09 +02:00
Hans Dedecker
79a19e5d27 iproute2: align ip help text for tiny variant
Tiny variant supports a subset of the ip commands; align the ip help
text so it actually reflects which commands are supported in the
tiny variant.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-06 22:30:54 +01:00
Russell Senior
c3c1185d56 iproute2: update to v4.14.1
Preserves optionality of libmnl by letting configuration
script follow the HAVE_MNL environment variable.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2017-12-06 22:30:00 +01:00
Hans Dedecker
711a816770 odhcpd: update to latest git HEAD
c516801 dhcpv4: notify DHCP ACK and RELEASE via ubus

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-06 19:17:44 +01:00
Zoltan HERPAI
58e0673900 ramips: add support for Asus RT-N11P / RT-N12+ / RT-N12E b1
This is a variant of the MT7620N-based Asus routers.

Specifications:

- MT7620N (580 MHz)
- 32 MB RAM
- 8 MB Flash
- 5x 10/100Mbps Ethernet (built-in switch)
- 2.4 GHz WLAN
- 2x external, non-detachable antennas
- UART (J2) header on PCB (115200 8n1)

Flash instructions:

1. Configure PC with static IP 192.168.1.75/24
2. Connect PC with one of LAN ports, press the reset button, power up
   the router and keep button pressed for around 6-7 seconds. All 4 LEDs will
   start to blink, which is when the router will accept firmware files via TFTP.
   No known limitations on firmware filenames, just send it with a TFTP client
   to 192.168.1.1.
3. Router will download file from server, write it to flash and reboot.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-12-06 17:51:31 +01:00
Hans Dedecker
347d18177e dnsmasq: backport infinite dns retries fix
If all configured dns servers return refused in response to a query in
strict mode; dnsmasq will end up in an infinite loop retransmitting the
dns query resulting into high CPU load.
Problem is fixed by checking for the end of a dns server list iteration
in strict mode.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-06 14:55:12 +01:00
Rafał Miłecki
deaf9597c6 sdk: restrict base feed repo to public git for CONFIG_BUILDBOT only
This allows people to build SDK from custom repository (git access using
ssh) and keep original URL in SDK's feeds.conf.default.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2017-12-05 22:56:31 +01:00
Felix Fietkau
e23ff063d3 build: avoid failing in append-metadata if image could not be generated
The image build might have failed due to a size check

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-04 20:24:51 +01:00
Felix Fietkau
aec1b6bfcb samba36: backport an upstream fix for an information leak (CVE-2017-15275)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-04 09:58:20 +01:00
Felix Fietkau
04127f0fec mt76: update to the latest version, adds stability fixes
11f42a8 mt76x2: add channel argument to eeprom tx power functions
3bd7e76 mt76x2: initialize channel power limits
19fff41 mt76x2: convert between per-chain tx power and combined output
737cf2b mt7603: rename mt7603_mac_reset to mt7603_pse_reset
8026638 mt7603: rename MT_PSE_RESET register
c4dd32a mt7603: remove watchdog reset on interface stop
d99092b mt7603: remove WARN_ON_ONCE for workaround checks
c8807b4 mt7603: simplify PSE reset
d8a5990 mt7603: warn if PSE reset fails
c079960 mt7603: clean up dma debug reads
96817d6 mt7603: make mt7603_mac_watchdog_reset() static
e953c78 mt7603: clear wtbl PS bit for powersave responses
57a2e33 mt7603: set tx-skip flag for powersave clients
c8e5ab1 mt7603: initialize wtbl ps flag on station add
b4034cf mt76x2: remove some harmless WARN_ONs in tx status and rx path
8e17d36 mt7603: remove some harmless WARN_ONs in rx path

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-12-03 19:06:24 +01:00
Ted Hess
b83c32511e layerscape: rename firmware packages to avoid name collisions
layerscape firmware package names collide with existing package contributions.
Ex: layerscape mc and midnight-commander(mc) are in conflict.

Firmware packages: mc, ppa, rcw and dpl are renamed to ls-mc, ls-ppa, ls-rcw
and ls-dpl respectively.

Signed-off-by: Ted Hess <thess@kitschensync.net>
2017-12-02 10:38:08 -05:00
Roman Yeryomin
b32e4c64c7 packages: dnsmasq: remove unused stamp file
Signed-off-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2017-12-02 09:58:04 +01:00
Hans Dedecker
b0b289ea45 curl: bump to 7.57.0 (3 CVEs)
CVE-2017-8816: NTLM buffer overflow via integer overflow
CVE-2017-8817: FTP wildcard out of bounds read
CVE-2017-8818: SSL out of buffer access

For other bugfixes and changes in 7.57.0 see https://curl.haxx.se/changes.html

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-30 09:44:17 +01:00
Yousong Zhou
b59b799cb1 ltq-ifxos: fix compilation against glibc
Fixes FS#1196

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-11-30 14:53:16 +08:00
Hans Dedecker
c7b052db73 target: replace odhcpd by odhcpd-ipv6only
Replace in router DEFAULT_PACKAGES odhcpd by odhcpd-ipv6only as
such there's no DHCPv4 server functionality overlap with dnsmasq

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-29 22:34:58 +01:00
Borja Salazar
759785c01a dnsmasq: add interface to ubus notification
Signed-off-by: Borja Salazar <borja.salazar@fon.com>
2017-11-29 22:03:39 +01:00
Felix Fietkau
e966ed236f mt76: update to the latest version, fixes encrypted mesh support and HT20 issues
fc28872 mac80211: add missing include
a4c82ca mt7603: add missing include required on newer kernels
792859b mt76x2: fix transmission of encrypted management frames
a51358e mt76x2: increase OFDM SIFS time

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-29 17:50:46 +01:00
Felix Fietkau
111b499024 mac80211: tweak TSQ settings
Latencies can be much higher on wifi devices, especially with
aggregation. Tune the network stack setting introduced in the previous
commit to account for that.
This commit reintroduces the previously reverted one with a fix for the
crash issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-29 17:46:41 +01:00
INAGAKI Hiroshi
18cc8d520c ramips: add missing reset button for Nexx WT1520
This commit adds missing the GPIO key used as reset button.
Nexx WT1520 has a GPIO key for factory reset, but it's not defined in
WT1520.dtsi and cannot use it.

Drop the UART (full) from the device tree source file, it was never
used for this board. Adjust the kernel bootargs accordingly.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
[add note about dropped UART (full) to the commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-28 20:59:02 +01:00
Jo-Philipp Wich
fcfd5cdb59 dnsmasq: fix dhcp-host entries with empty macs
Due to improper localization of helper variables, "config host" entries
without a given mac address may inherit the mac address of a preceeding,
leading to invalid generated netive configuration.

Fix the issue by marking the "macs" and "tags" helper variables in
dhcp_host_add() local, avoiding the need for explicitely resetting them
with each invocation.

Reported-by: Russell Senior <russell@personaltelco.net>
Tested-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-11-28 18:11:25 +01:00
Felix Fietkau
47fa8654a1 Revert "mac80211: tweak TSQ settings"
This reverts commit 2dc485250d.
This patch needs some additional checks in order to avoid overwriting
unrelated fields for request sockets.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-28 14:23:43 +01:00
Kevin Darbyshire-Bryant
179125d334 wireguard: bump to snapshot 20171127
== Changes ==

 * compat: support timespec64 on old kernels
 * compat: support AVX512BW+VL by lying
 * compat: fix typo and ranges
 * compat: support 4.15's netlink and barrier changes
 * poly1305-avx512: requires AVX512F+VL+BW

 Numerous compat fixes which should keep us supporting 3.10-4.15-rc1.

 * blake2s: AVX512F+VL implementation
 * blake2s: tweak avx512 code
 * blake2s: hmac space optimization

 Another terrific submission from Samuel Neves: we now have an implementation
 of Blake2s using AVX512, which is extremely fast.

 * allowedips: optimize
 * allowedips: simplify
 * chacha20: directly assign constant and initial state

 Small performance tweaks.

 * tools: fix removing preshared keys
 * qemu: use netfilter.org https site
 * qemu: take shared lock for untarring

 Small bug fixes.

Remove myself from the maintainers list: we have enough and I'm happy to
carry on doing package bumps on ad-hoc basis without the 'official'
title.

Run-tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-11-27 14:50:04 +01:00
Stijn Tintel
2f1c05bb80 lldpd: bump to 0.9.9
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-11-27 09:43:23 +01:00
Hans Dedecker
0b3087eebf nghttp2: bump to 1.28.0
939ad5dd Update manual pages
24d92b97 Add deprecation warning when spdylay support is enabled
4c92ff18 Bump up version number to 1.28.0, LT revision to 29:0:15
280db5c6 Update neverbleed
7fbcb2d0 Merge pull request #1074 from nghttp2/fix-doc
53aeb2c3 Fix doc
ff200bfc clang-format-5.0
fee3151f Switch to clang-format-5.0
99a85159 Update manual pages
2a981a3f Merge pull request #1066 from nghttp2/nghttpx-add-affinity-cookie-secure
0028275d nghttpx: Add affinity-cookie-secure parameter to backend option
ee8bfddf Merge pull request #1063 from nghttp2/error_callback2
194acb1f src: Use nghttp2_error_callback2
43a2a70a Add nghttp2_error_callback2
73344ae9 nghttpx: Use plain hex string format for client serial
c479f612 Merge pull request #1060 from nghttp2/nghttpx-add-client-serial
eca0a302 nghttpx: Add $tls_client_serial log variable
4720c5cb nghttpx: Make client serial available in mruby script
cd55ab28 nghttpx: Add function to get serial number from certificate
d402cfdf Merge pull request #1057 from nghttp2/nghttpx-add-tls-client-issuer-name
22502182 Add tls_client_issuer_name log variable and expose it to mruby
05e1fd5e Update manual pages
943d7923 Add Session Affinity section to nghttpx howto
568ecbfb doc: Add missing port
f5ddd7f4 nghttpx: Make initial_addr_idx_ unsigned
88abbce7 nghttpx: Fix compile error with gcc
16e90365 nghttpx: Fix affinity retry
fa7945c6 nghttpx: Refactor
daca43f0 nghttpx: Fix stalled backend connection on retry
16bc11e6 nghttpx: Remove duplicated util::make_socket_nodelay
6f7e94cd Merge pull request #1047 from PiotrSikora/go_vet
61efa15a integration: Fix issues reported by the `go vet` tool.
8c0ea56b Merge pull request #1036 from nghttp2/nghttpx-affinity-cookie
54905371 nghttpx: Refactor
6010d393 integration: Add tests
be5c39a1 src: Add tests
b8fda680 nghttpx: Cookie based session affinity
e29b9c12 Merge pull request #1045 from nghttp2/nghttpx-sha1-fingerprint
539e2781 nghttpx: Add tls_client_fingerprint_sha1 to mruby and accesslog
7008afd4 nghttpx: Refactor get_x509_fingerprint to accept hash function
77a41756 Merge pull request #1041 from nghttp2/fix-examples-client-server
b15045d6 Merge pull request #1040 from nghttp2/nghttpx-mruby-add-more-tls-vars
03084f75 examples: Make client and server work with libevent-2.1.8
60baca27 nghttpx: Add more TLS related attributes to mruby Env object
86990db2 Merge pull request #1038 from nghttp2/nghttpx-add-more-logging-vars
cb376bcd nghttpx: Add client fingerprint and subject name to accesslog
f2b8edd1 nghttpx: Fix memory leak
c4f8afcf nghttpx: Get TLS info only when it is necessary when writing accesslog
1a1a216d Merge pull request #1037 from nghttp2/nghttpx-mruby-tls-client-vars
9f80a82c nghttpx: Add client fingerprint and subject name to mruby env
c573c80b nghttpx: Pass a pointer to SSL instead of TLSSessionInfo to LogSpec
3cd6817e Fix typos
d4a69658 Add another warning about mruby
8e06fe49 Fix typo
aaeeec8f Fix typos
66d5e246 Bump up version number to 1.28.0-DEV

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-27 10:12:03 +01:00
Justin Kilpatrick
8ee2d3f718 build: accept gcc/g++ without minor version
Build dependency: Please install the GNU C Compiler (gcc) 4.8 or later cc
  -dumpversion | grep -E '(4\.[8-9]|5\.[0-9]|6\.[0-9]|7\.[0-9])'
Build dependency: Please install the GNU C++ Compiler (g++) 4.8 or later
  g++ -dumpversion | grep -E '(4\.[8-9]|5\.[0-9]|6\.[0-9]|7\.[0-9])'

Prerequisite check failed. Use FORCE=1 to override.

On my Fedora 26 machine gcc and g++ -dumpversion returns a whole number
'7' failing the regex introduced in commit:

b78de6207f

This change makes minor versions optional in the build dependency regex
for gcc and g++ whenever any minor version would be accepted and the
whole number version is sufficient as a dependency check. For versions
4.* a minor version is still required.

Signed-off-by: Justin Kilpatrick <jkilpatr@redhat.com>
2017-11-26 13:33:51 +01:00
Daniel Engberg
b78de6207f toolchain: Test for supported versions of GCC
Only test for supported versions of GCC
The version bump requirement for GCC is because gdb doesn't build with older
versions.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-11-25 20:17:20 +01:00
Daniel Engberg
38cc071ed1 mwlwifi: Update to latest commit in upstream repo
Update to latest commit in upstream repo
Bumps 88W8964 firmware to 9.3.0.8

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-11-25 20:11:30 +01:00
Michael Heimpold
2cb75cd8b9 build: allow defining license information per binary package
At the moment, license information can only be specified on a
"per source package" level while other metadata fields (e.g. maintainer)
can be given for each binary package. Apply the same logic for license
fields as well. This can be used e.g. in cases where a library is
distributed under some license while related tools are distributed
under a different one.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2017-11-25 20:02:04 +01:00
Fushan Wen
40868e3bb6 kmod-sched-cake: update to latest git HEAD
dfb2f6c pkt_sched: make compile again
5ab7026 sch_cake: make compile again
6f28803 codel5: make more checkpatch compliant
bd426aa Fix build error on 4.12
e4a3628 Whitespace tidy up

Signed-off-by: Fushan Wen <qydwhotmail@gmail.com>
2017-11-25 19:53:37 +01:00
Rosen Penev
7a318bc1a1 kernel: Update kernel 4.4 to 4.4.100
Run-tested on ramips

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-11-25 19:48:39 +01:00
Hans Dedecker
f965827bfb odhcpd: update to latest git HEAD
92e205d dhcpv6: fix compile issues when CER-ID extension is enabled

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-25 18:17:43 +01:00
Hans Dedecker
99ea749d37 odhcpd: add a full and ipv6only variant (FS#1188)
Add an ipv6only variant providing server services for RA, stateful and stateless
DHCPv6, prefix delegation and relay support for DHCPv6, NDP and RA.

The full variant called odhcpd supports DHCPv4 server as before.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-25 18:17:43 +01:00
Stijn Tintel
9fe59abef8 kernel: bump 4.9 to 4.9.65
Refresh patches.
Compile-tested: ar71xx, octeon, x86/64.
Runtime-tested: ar71xx, octeon, x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-11-24 14:09:11 +02:00
Kevin Darbyshire-Bryant
088262ac7a wireguard: bump to 20171122
Bump to latest WireGuard snapshot release:

ed479fa (tag: 0.0.20171122) version: bump snapshot
efd9db0 chacha20poly1305: poly cleans up its own state
5700b61 poly1305-x86_64: unclobber %rbp
314c172 global: switch from timeval to timespec
9e4aa7a poly1305: import MIPS64 primitive from OpenSSL
7a5ce4e chacha20poly1305: import ARM primitives from OpenSSL
abad6ee chacha20poly1305: import x86_64 primitives from OpenSSL
6507a03 chacha20poly1305: add more test vectors, some of which are weird
6f136a3 compat: new kernels have netlink fixes
e4b3875 compat: stable finally backported fix
cc07250 qemu: use unprefixed strip when not cross-compiling
64f1a6d tools: tighten up strtoul parsing
c3a04fe device: uninitialize socket first in destruction
82e6e3b socket: only free socket after successful creation of new
df318d1 compat: fix compilation with PaX
d911cd9 curve25519-neon: compile in thumb mode
d355e57 compat: 3.16.50 got proper rt6_get_cookie
666ee61 qemu: update kernel
2420e18 allowedips: do not write out of bounds
185c324 selftest: allowedips: randomized test mutex update
3f6ed7e wg-quick: document localhost exception and v6 rule

Compile-tested-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-11-24 12:55:38 +01:00
Hauke Mehrtens
332438be40 uboot-sunxi: fix build of HAOYU Electronics Marsboard A10
The uboot target is named MarsBoard_A10 and it was not build at all.
This fixes a build problem seen by the build bot.

Fixes: 6a3565985f ("sunxi: Added profile for HAOYU Electronics Marsboard A10")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-23 21:25:46 +01:00
Hauke Mehrtens
b5d52b2052 sunxi: remove support for kernel 4.4
Kernel 4.9 is working good on this target, remove support for kernel 4.4
now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-23 19:17:11 +01:00
Hauke Mehrtens
c048ca0ce0 sunxi: backport sunxi-mmc controller driver from 4.13
There are multiple problems on the A64 SoC with the older drivers which
are fixed in the upstream kernel.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-23 19:16:42 +01:00
Hauke Mehrtens
4e93ec1ad6 kernel: i2c-piix4: fix dependency on TARGET_x86
Fix the target dependency to make it possible to select this module also
on x86 target and its subtargets.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-22 22:37:15 +01:00
Hauke Mehrtens
9cfcd49735 kernel: e100: take e100 firmware from linux-firmware repository
The firmware directory in the Linux kernel was removed in kernel 4.14,
take the e100 firmware files now from the linux-firmware repository
instead. To do so create the new package e100-firmware. This will also
work with older kernel versions.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-22 22:37:05 +01:00
Marcin Jurkowski
06e1b90404 kernel: add NFS4 client support
Adds NFS4 client support:
 1. Package kmod-fs-nfs is split into kmod-fs-nfs (nfs.ko) and
    kmod-fs-nfs-v3 (nfsv3.ko).
 2. A new package kmod-fs-nfs-v4 (nfsv4.ko) is created.
 3. Package kmod-fs-nfs-common-v4 is renamed to kmod-fs-nfs-rpcsec
    and includes additional module rpcsec_gss_krb5.ko.
    CONFIG_NFS_V4 goes into kmod-fs-nfs-v4, CONFIG_NFSD_V4 (NFS4
    server) is removed. Missing kernel module oid_registry.ko
    needed by auth_rpcgss.ko is added to the package.

A new package kmod-crypto-cts needed by rpcsec_gss_krb5.ko is
also created.

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
[add dependency to kmod-crypto-ecb in fs-nfs-common-rpcsec]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-22 22:36:21 +01:00
Lucian Cristian
9f13f98c8c kernel: Hyper-V PCI pass through
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-11-22 22:36:20 +01:00
Lucian Cristian
551de61ddc kernel: add 32bit x86 HYPER-V support
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
[refresh config]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-22 22:36:02 +01:00
Martin Schiller
0c78de869d kernel: add kmod-i2c-i801
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
[Add i2c-smbus.ko and fix target dependency]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-22 22:34:56 +01:00
Martin Schiller
7ffeecd6ac kernel: add it87-wdt watchdog timer module
The module parameters "nogameport=1" and "nocir=1" are needed,
because this is not supported on recent chips and doesn't
really tell if the system is stable.

As this features will already be removed in linux-4.13 or newer,
this module parameters can be removed in the future.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-11-22 20:49:04 +01:00
Koen Vandeputte
62ede4f783 kernel: bump 4.9 to 4.9.63
Refreshed all patches.

Removed upstreamed parts.

Compile-tested: cns3xxx, imx6, mvebu, layerscape
Run-tested: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-11-22 20:45:52 +01:00
Rosen Penev
9052dd6534 libusb-compat: Upgrade to 0.1.15
Compile tested on ramips (mt7621)

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-11-22 20:45:28 +01:00
Rosen Penev
08cc9a2ca8 tools/e2fsprogs: Update to 1.43.7
Compile tested on Fedora 27.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-11-22 20:45:18 +01:00
Rosen Penev
fc4e7bdca7 usbutils: Update usb.ids file to latest
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-11-22 20:45:07 +01:00
Christian Lamparter
5e6792eab4 wireless-regdb: fix PKG_MIRROR_HASH
make check complains about PKG_MIRROR_HASH of the wireless-regdb package:

WARNING: PKG_MIRROR_HASH does not match wireless-regdb-2017-10-20-4343d359.tar.xz
hash 5f5b669f32ae36cb65b1d99efbbbfd42c2983cda32f6448346e3e54ffaba3889

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-11-22 13:07:48 +01:00
Mathias Kresin
298ade22a0 acx-mac80211: fix build on kernel 4.9
The DEFINE_PCI_DEVICE_TABLE macro was removed with upstream commit
7e9321599011 ("treewide: remove references to the now unnecessary
DEFINE_PCI_DEVICE_TABLE").

Use the pci_device_id struct to fix the acx-mac80211 build failure on
ramips.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:53 +01:00
Mathias Kresin
aa82141d9b ramips: use pinmux nodes from dtsi
Use the pinmux nodes from the included dtsi file instead of adding
duplicate nodes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:53 +01:00
Mathias Kresin
b69ceb0c3d ramips: add missing pinmuxes to SoC dtsi
Add pinmuxes defined by some board which are including the dtsi files
to the dtsi files itself. Allows to reduce duplication.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:52 +01:00
Mathias Kresin
e142173e8d ramips: backport MT7628 pinmux fixes
According to the datasheet the REFCLK pin is shared with GPIO#37 and
the PERST pin is shared with GPIO#36.

While at it fix a typo inside the pinmux setup code. The function is called
refclk and not reclk.

Update device tree source files accordingly.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:52 +01:00
Mathias Kresin
2f9fe78e75 ramips: fix Planex CS-QR10 device packages
Add kmod-sound-core, it is a dependency of kmod-sound-mt7620 and will
not be autoselected.

Remove kmod-i2c-core, it will be autoselected by kmod-i2c-ralink.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:52 +01:00
Mathias Kresin
a783185e28 ramips: fix DCH-M225 support
Setting the pins of the UARTF group to GPIO+I2S at the time the I2C
driver loads is to late for the wps GPIO button.

The gpio-keys driver fails to load since the pin used by the wps button
is not yet set to GPIO. The wps button with the rfkill keycode is
essential for this wireless only board.

Add the missing sound and I2C kernel modules corresponding to the
device nodes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-22 08:21:52 +01:00
Hans Dedecker
6aa4b97a8a odhcpd: fix gcc7 build error
0573422 ndp: add switch/case fallthrough comments

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-21 15:15:20 +01:00
Leon M. George
63462910dd hostapd: remove unused local var declaration
Signed-off-by: Leon M. George <leon@georgemail.eu>
2017-11-21 13:11:42 +01:00
Leon M. George
cc0847eda3 hostapd: don't set htmode for wpa_supplicant
no longer supported

Signed-off-by: Leon M. George <leon@georgemail.eu>
2017-11-21 13:11:42 +01:00
Hans Dedecker
a28d1d5444 odhcpd: update to latest git HEAD (make dhcpv4 support optional)
fd80621 dhcpv4: make DHCPv4 support compiletime configurable
cf29925 treewide: rework handling of netlink events
24cdc1b treewide: add netlink file
5dfb716 treewide: align function naming

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-20 21:40:03 +01:00
Felix Fietkau
6a6dc94e0c mac80211: fix a race condition that could lead to a use-after-free on a timer
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-20 20:05:19 +01:00
Felix Fietkau
9247864b6e mac80211: fix netlink family id for nl80211 messages
Fixes responses for nl80211 calls

Reported-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-20 17:52:51 +01:00
John Crispin
b9e700cd58 kernel: fix lzo and lz4 modules
both of these have been split up and require additional ko files.

Signed-off-by: John Crispin <john@phrozen.org>
2017-11-20 13:10:57 +01:00
Emerson Pinter
bc50a97dfc dnsmasq: load instance-specific conf-file if exists
Without this change, the instance-specific conf-file is being added to procd_add_jail_mount,
but not used by dnsmasq.

Signed-off-by: Emerson Pinter <dev@pinter.com.br>
2017-11-19 22:27:49 +01:00
Alexander Couzens
bd1ee909d0 wolfssl: add PKG_CPE_ID ids to package and tools
CPE ids helps to tracks CVE in packages.
https://cpe.mitre.org/specification/

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-11-19 02:29:08 +01:00
Daniel Engberg
dca96b7546 openssl: Add optimization option
Add option to optimize for speed instead of size

cmd: openssl speed md5 sha1 sha256 sha512 des des-ede3 aes-128-cbc \
aes-192-cbc aes-256-cbc rsa2048 dsa2048

=== Linksys WRT3200ACM ===

Default optimization:
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
md5              14111.49k    47147.75k   123375.02k   206937.09k   258828.97k
sha1             14495.71k    46763.99k   116679.94k   188115.29k   228294.66k
des cbc          22315.63k    23118.98k    23323.14k    23348.22k    23363.58k
des ede3          8085.97k     8217.26k     8255.74k     8266.41k     8273.92k
aes-128 cbc      48740.10k    52606.12k    54224.98k    56263.68k    54774.44k
aes-192 cbc      43410.83k    47325.31k    48994.05k    49377.96k    48532.14k
aes-256 cbc      39132.46k    42512.60k    43692.63k    43997.18k    44070.23k
sha256           19987.80k    47314.69k    86119.08k   109352.28k   119466.67k
sha512            8034.63k    32321.92k    47495.94k    65777.32k    74080.26k
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.020387s 0.000528s     49.1   1892.2
                  sign    verify    sign/s verify/s
dsa 2048 bits 0.005920s 0.006396s    168.9    156.3

Optimize for speed (-O3 instead of -Os and disable -DOPENSSL_SMALL_FOOTPRINT):
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
md5              14655.49k    48561.79k   126953.56k   210741.93k   262430.72k
sha1             14607.90k    47032.15k   117725.87k   188226.22k   228499.46k
des cbc          28041.11k    29586.84k    29939.80k    30047.91k    30067.37k
des ede3         10697.93k    10899.75k    10956.97k    10972.84k    10980.01k
aes-128 cbc      58852.70k    65956.07k    68675.67k    69388.29k    69607.42k
aes-192 cbc      50299.73k    56501.23k    58491.65k    59008.00k    59159.89k
aes-256 cbc      44684.38k    47944.36k    49098.67k    49573.89k    49463.30k
sha256           19673.53k    47248.58k    86775.04k   110053.72k   119382.02k
sha512            8029.67k    32033.02k    47440.04k    65740.12k    74072.06k
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.019666s 0.000529s     50.8   1892.0
                  sign    verify    sign/s verify/s
dsa 2048 bits 0.005882s 0.006450s    170.0    155.0

=== D-Link DIR-860L (B1) ===
Default optimization:
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
md5               3376.97k    11654.74k    32966.76k    60016.27k    80729.43k
sha1              2310.95k     6024.87k    11680.32k    15273.93k    16784.07k
des cbc           6787.21k     7014.36k     7072.49k     7088.73k     7092.48k
des ede3          2462.47k     2499.87k     2509.48k     2511.35k     2514.75k
aes-128 cbc      10014.28k    11018.87k    11308.99k    11381.03k    11406.20k
aes-192 cbc       8930.35k     9675.27k     9895.97k     9954.57k     9971.92k
aes-256 cbc       8022.81k     8624.03k     8799.60k     8843.14k     8856.07k
sha256            2546.33k     5542.19k     9326.99k    11249.03k    11969.57k
sha512             877.22k     3503.44k     4856.01k     6554.96k     7299.32k
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.109348s 0.003132s      9.1    319.3
                  sign    verify    sign/s verify/s
dsa 2048 bits 0.032745s 0.037212s     30.5     26.9

Optimize for speed (-O3 instead of -Os and disable -DOPENSSL_SMALL_FOOTPRINT):
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
md5               3660.39k    12401.37k    34501.23k    62438.83k    81786.64k
sha1              3500.20k    10730.70k    25056.19k    37715.86k    44253.13k
des cbc           7189.75k     7545.88k     7641.90k     7665.71k     7672.18k
des ede3          2690.64k     2734.33k     2745.24k     2748.13k     2748.81k
aes-128 cbc      11325.29k    12731.75k    13151.34k    13259.95k    13289.55k
aes-192 cbc       9932.36k    10997.65k    11309.84k    11389.53k    11408.92k
aes-256 cbc       8845.13k     9677.01k     9920.30k     9980.77k     9996.42k
sha256            3200.50k     7107.76k    12230.85k    14933.73k    15962.15k
sha512             879.12k     3510.79k     4956.45k     6711.45k     7484.39k
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.085641s 0.002365s     11.7    422.9
                  sign    verify    sign/s verify/s
dsa 2048 bits 0.023881s 0.026120s     41.9     38.3

-O3 is considered safe for OpenSSL
Ref: https://wiki.openssl.org/index.php/Compilation_and_Installation
Tested hardware: Linksys WRT3200ACM / D-Link DIR-860L (B1)

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-11-18 21:01:26 +01:00
Ted Hess
358df5e4fc ixp4xx: Update to 4.9 kernel, refresh patches. Remove kmod-spi-gpio-old usage.
Signed-off-by: Ted Hess <thess@kitschensync.net>
2017-11-18 08:21:38 -05:00
Hans Dedecker
6fcf4228d8 netifd: update to latest git HEAD
c92106e interface-ip: add missing IPv6 policy rule

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-17 21:58:13 +01:00
Rafał Miłecki
370ce1fb48 bcm53xx: use otrx for creating TRX images
The advantage is that we don't have to specify max TRX size anymore and
otrx doesn't allocate a buffer of that size. It saves us allocating
32 MiB for every image we generate.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-17 11:43:33 +01:00
Rafał Miłecki
fb66dc9b03 firmware-utils: add otrx tool for handling TRX images
It can be a replacement for the trx tool. The advantage is that otrx
doesn't alloc buffer for the whole TRX which can be a nice optimization
when creating big images.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-11-17 11:42:59 +01:00
Rafał Miłecki
36a92274a8 otrx: fix memory leak in otrx_create_append_zeros
A "free" call was missing after allocating a buffer.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-17 11:32:51 +01:00
Rafał Miłecki
70837168ef otrx: bump buffer size in otrx_create_append_file
Usually this function is called for appending some small files only
(like fs marks) but let's just make it more generic and capable of
handling bigger files easily. Increasing buffer to 1 KiB shouldn't hurt.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-17 11:30:31 +01:00
Rafał Miłecki
ab8f20c18d otrx: drop unused otrx_create_parse_options function
It was there in case of adding some "create" command options that should
be parsed before actually creating the output image. It seems we don't
need any at this point so let's drop this function for now.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-17 11:30:31 +01:00
Rosen Penev
146326c454 kernel: Enable fadvise on older kernels.
Backport of 56342ee2bc for older kernels.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-11-17 09:29:45 +01:00
Luis Araneda
b31c1237c7 sunxi: add support for NanoPi M1 Plus board
Backported devicetree from Kernel 4.13 with some additions
to enable Ethernet and WiFi module

The following features are working:
- Ethernet
- WiFi
- eMMC and microSD slot
- USB ports

The following features are not working:
* Bluetooth

NanoPi M1 Plus key features
- SoC: Allwinner H3, Quad-core Cortex-A7@1.2GHz
- RAM: 1GB DDR3
- eMMC: 8GB
- microSD slot
- Ethernet 10/100/1000M
- Wifi: AP6212

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2017-11-17 08:20:30 +01:00
Luis Araneda
1c139d664b mac80211: enable brcmfmac's SDIO support on sunxi target
Needed to support some SDIO connected cards, like AMPAK modules

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2017-11-17 08:20:22 +01:00
Luis Araneda
ef1483b8fe sunxi: base files: add AP6212 (brcm43430) NVRAM
Used by the NanoPi M1 Plus board

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2017-11-17 08:20:14 +01:00
Luis Araneda
bf6b3afa8c uboot-sunxi: add NanoPi M1 Plus board
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2017-11-17 08:20:06 +01:00
Roman Yeryomin
8bb33f3c98 ipq806x: ipq4019: enable usb phy
Run tested on ap-dk01.2-c1

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-11-17 08:18:00 +01:00
Alexander Couzens
c61a239514 add PKG_CPE_ID ids to package and tools
CPE ids helps to tracks CVE in packages.
https://cpe.mitre.org/specification/

Thanks to swalker for CPE to package mapping and
keep tracking CVEs.

Acked-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-11-17 02:24:35 +01:00
Simon Wunderlich
a479c79818 kobs-ng: add header for integer definitions
My compilation failed because of missing uint.* definitions:

In file included from mtd.h:33:0,
                 from bootstream.c:35:
BootControlBlocks.h:58:2: error: unknown type name 'uint8_t'
  uint8_t m_u8DataSetup;
  ^
BootControlBlocks.h:59:2: error: unknown type name 'uint8_t'
  uint8_t m_u8DataHold;
  ^
BootControlBlocks.h:60:2: error: unknown type name 'uint8_t'
  uint8_t m_u8AddressSetup;
  ^
BootControlBlocks.h:61:2: error: unknown type name 'uint8_t'
  uint8_t m_u8DSAMPLE_TIME;

Adding the header file fixes the problem.

Signed-off-by: Simon Wunderlich <sw@simonwunderlich.de>
[fold changes into 001-compile.patch]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-16 22:56:54 +01:00
Bjørn Mork
f922b0c191 kernel: pull edgeport firmware from linux-firmware repo
The kernel firmware/ is going away, so pull this firmware
from the linux-firmware git repo instead. No actual changes
to the installed files.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
2017-11-16 22:56:54 +01:00
Bjørn Mork
73e8fcf894 linux-firmware: add IO Edgeport USB Serial firmware
Preparing for kernel versions without firmware.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
2017-11-16 22:56:54 +01:00
Antony Black
d44a6307c9 brcm47xx: fix switch port mapping on D-Link DIR-330
D-Link DIR-330 is clone of ASUS WL500GP2, by default conf the WAN port is
eth1, it's not working cus eth1 not soldered and wan port function
performs 5th port of the switch.

Signed-off-by: Antony Black <gtrtfm@gmail.com>
2017-11-16 22:56:54 +01:00
Kevin Darbyshire-Bryant
eea9d2505b wireguard: bump to 0.0.20171111
edaad55 (tag: 0.0.20171111) version: bump snapshot
7a989b3 tools: allow for NULL keys everywhere
46f8cbc curve25519: reject deriving from NULL private keys
9b43542 tools: remove ioctl cruft
f6cea8e allowedips: rename from routingtable
23f553e wg-quick: allow for tabs in keys
ab9befb netlink: make sure we reserve space for NLMSG_DONE
73405c0 compat: 4.4.0 has strange ECN function
868be0c wg-quick: stat the correct enclosing folder of config file
ceb11ba qemu: bump kernel version
0a8e173 receive: hoist fpu outside of receive loop
bee188a qemu: more debugging
f1fdd8d device: wait for all peers to be freed before destroying
2188248 qemu: check for memory leaks
c77a34e netlink: plug memory leak
0ac8efd device: please lockdep
a51e196 global: revert checkpatch.pl changes
65c49d7 Kconfig: remove trailing whitespace

Compile-tested-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-11-16 22:35:36 +01:00
Felix Fietkau
fa6fd45613 mt76: update to the latest version
Significantly improves throughput on MT76x2, fixes some stability
issues, adds LED support.

Changes:

266ef38 mt76x2: mcu: remove unused parameter in mt76x2_mcu_msg_alloc signature
758376d mt7603: mcu: remove unused parameter in mt7603_mcu_msg_alloc() signature
e764787 Fix errors found by cppcheck
a6fce8a mt7603: add LED definition registers
f658dd2 mt76x2: add LED register definitions
f6a021d mt76x2: Support using PCI ID as chip ID
c9bdcd8 mt76: add led support using mac80211 led framework
58e9138 mt76x2: init: add ma80211 led callbacks
8ea8da3 mt7603: init: add ma80211 led callbacks
ded88cd mt76x2: Add PCI identifier for MT7602
51a6764 mt7603: remove unnecessary mcu register read function
fbdbf65 debugfs: add support for changing the LED pin
cc02e49 mac80211: move DT led configuration to the "led" child node
e4e7734 mt76x2: limit client WCID entries to 0-127
60172cc mt76x2: clear drop flag for all WCIDs on init
d8140b6 mt76x2: clear per-WCID tx rate lookup register
0ce7923 mt76x2: add helper function for setting drop mask
ccc4baf mt76x2: clear drop mask when sending a PS response
ff60d14 mt76: increase rx ring size for mt76x2
b57ada5 mt76x2: add rx statistics registers
af425de mt76x2: fix LNA gain register annotation
efd7724 mt76x2: sync channel gain value with latest reference driver
4af37bd mt76x2: implement dynamic AGC tuning based on false packet detection count
70f2002 mt76x2: add more gain tuning based on the latest reference driver
8f1c8ab mt76x2: sync tx power related values with reference driver

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 20:33:37 +01:00
Felix Fietkau
2dc485250d mac80211: tweak TSQ settings
Latencies can be much higher on wifi devices, especially with
aggregation. Tune the network stack setting introduced in the previous
commit to account for that

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 15:23:55 +01:00
Felix Fietkau
00a8f349f7 kernel: backport a patch that allows drivers to tweak the TSQ logic
Currently local TCP performance on wifi devices can be limited because
the TSQ (TCP Small Queues) code is tuned for wired ethernet latencies.

With this patch drivers can increase the amount of local buffering to
allow TCP to trigger larger aggregation sizes

This commit is modified from the upstream version to allow #ifdef based
backport feature detection

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 15:23:51 +01:00
Felix Fietkau
f9fa266faf mac80211: update to wireless-testing 2017-11-01
The wireless regdb is now loaded via firmware loading, CRDA support and
built-in regdb support have been removed.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 15:23:35 +01:00
Felix Fietkau
a8d751c243 wireless-regdb: add package containing the wireless regulatory database
Installs to /lib/firmware for newer cfg80211 versions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 15:23:32 +01:00
Felix Fietkau
4b091ab01a ubus: update to the latest version
9c13096 ubus: Remove unnecessary memset calls.
6d1ea6c libubus: Fix deletion from context's object AVL tree when removing object
e02813b ubusd: don't free messages in ubus_send_msg() anymore
be146ad ubusd: rename goto label from `error` to `out`
27d712d ubusd_monitor: alloc & free the buffer outside of the loop
5f87f54 ubusd: move global retmsg per client

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 12:54:17 +01:00
Felix Fietkau
d5bcd0240a libnl-tiny: use fixed message size instead of using the page size
Simplifies the code and reduces size

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 12:54:15 +01:00
Felix Fietkau
9996480b0e ramips: add support for ZBT WE3526
This is a variant of the ZBT WG3526 with a few minor modifications.
The wifi chips are swapped, and there is no GPIO controllable status
LED. There is also no SATA port.

Specifications:

- MT7621AT (880 MHz)
- 512 MB RAM
- 16 MB Flash (SPI NOR)
- 5x 1Gbps Ethernet (built-in switch)
- MT7612E 802.11ac 5 GHz WLAN
- MT7603E 802.11n 2.4 GHz WLAN

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 12:52:55 +01:00
Felix Fietkau
3eb839b579 ramips: extract board name from device tree as a fallback
This makes it possible to avoid more duplication when adding support for
a new board

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-16 12:52:55 +01:00
Rafał Miłecki
b15c563929 otrx: always align image to 0x1000
This seems to match what the original trx tool and mjn3's replacement
do.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-16 09:33:56 +01:00
Jianhui Zhao
a8a23ca50c kernel: add packaging for mtdoops
Signed-off-by: Jianhui Zhao <jianhuizhao329@gmail.com>
2017-11-15 21:13:16 +01:00
Koen Vandeputte
0d5e024e09 cns3xxx: refresh kernel config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-11-15 21:12:06 +01:00
Chris Blakely
6fe9090605 modules: Add kmod-ixgbevf kernel module for Intel(R) 10GbE Virtual Ethernet support
These adapters support SR-IOV. Thus the host can assign Virtual Functions
(VFs) to different VMs by the PCI-E Passthrough (e.g. VFIO for KVM), to
gain different advantages (performance, VF to VF communications, host
kernel offload, etc.).

Signed-off-by: Chris Blakely <cpblakely@gmail.com>
2017-11-15 21:11:23 +01:00
Zhai Zhaoxuan
c382237ac3 packages: nvram: fix memory leak in _nvram_free
The value of nvram_tuple_t is allocated in _nvram_realloc,
but it is not freed in _nvram_free.

Signed-off-by: Zhai Zhaoxuan <zhaizhaoxuan@xiaomi.com>
2017-11-15 21:11:23 +01:00
Mat Trudel
2dca7177e7 sysupgrade: don't kill our own parent
Add the parent of the sysupgrade script to the list of pids not getting
killed

Signed-off-by: Mat Trudel <mat@geeky.net>
Signed-off-by: John Crispin <john@phrozen.org>
2017-11-15 21:11:23 +01:00
Felix Fietkau
31691f9649 mvebu: backport a kernel irq fix for setting IRQ affinity
The IRQ controller can only set the affinity to a single CPU. Update the
mask in the controller data.

Suggested-by: Sebastian Gottschall <s.gottschall@dd-wrt.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-15 18:49:12 +01:00
Felix Fietkau
d91494eedf hostapd: rework frequency/ht/vht selection for ibss/mesh
- Remove obsolete patch chunks regarding fixed_freq
- Instead of patching in custom HT40+/- parameters, use the standard
config syntax as much as possible.
- Use fixed_freq for mesh
- Fix issues with disabling obss scan when using fixed_freq on mesh

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-15 18:49:12 +01:00
Antonio Quartulli
0da54fa642 mac80211: don't pass the hostapd ctrl iface in adhoc
Passing the ctrl iface to wpa_supplicant will automatically cause wpa_supplicant
to send "STOP_AP" messages to the hostapd. This breaks the AP interfaces.

Signed-off-by: Antonio Quartulli <ordex@autistici.org>
2017-11-15 18:49:12 +01:00
Sven Eckelmann
772afef61d hostapd: explicitly set beacon interval for wpa_supplicant
The beacon_int is currently set explicitly for hostapd and when LEDE uses
iw to join and IBSS/mesh. But it was not done when wpa_supplicant was used
to join an encrypted IBSS or mesh.

This configuration is required when an AP interface is configured together
with an mesh interface. The beacon_int= line must therefore be re-added to
the wpa_supplicant config. The value is retrieved from the the global
variable.

Fixes: 1a16cb9c67 ("mac80211, hostapd: always explicitly set beacon interval")
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [rebase]
2017-11-15 18:49:12 +01:00
Sven Eckelmann
43f66943d0 hostapd: set mcast_rate in mesh mode
The wpa_supplicant code for IBSS allows to set the mcast rate. It is
recommended to increase this value from 1 or 6 Mbit/s to something higher
when using a mesh protocol on top which uses the multicast packet loss as
indicator for the link quality.

This setting was unfortunately not applied for mesh mode. But it would be
beneficial when wpa_supplicant would behave similar to IBSS mode and set
this argument during mesh join like authsae already does. At least it is
helpful for companies/projects which are currently switching to 802.11s
(without mesh_fwding and with mesh_ttl set to 1) as replacement for IBSS
because newer drivers seem to support 802.11s but not IBSS anymore.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Tested-by: Simon Wunderlich <simon.wunderlich@openmesh.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [refresh]
2017-11-15 18:49:06 +01:00
Felix Fietkau
46e875a0b0 hostapd: refresh ubus patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-15 18:46:50 +01:00
Paul Wassi
e3c55dbe30 ar71xx: merge mach-files for TP-Link TL-WR802N v1 and v2
TP-Link TL-WR802N v1 and v2 are set up with almost same configuration in
the mach-files. Merge the mach-files of these devices.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-11-14 22:36:46 +01:00
Tim Thorpe
673793d753 ar71xx: add support for TP-Link TL-WR1043N v5
TP-Link TL-WR1043N v5 appears to be identical to the TL-WR1043ND v4,
except that the USB port has been removed and there is no longer a
removable antenna option.

The software is more in line with the Archer series in that it uses a
nested bootloader scheme.

Specifications:

 - QCA9563 at 775 MHz
 - 64 MB RAM
 - 16 MB flash
 - 3 (non-detachable) Antennas / 450 Mbit
 - 1x/4x WAN/LAN Gbps Ethernet (QCA8337)
 - reset and Wi-Fi buttons

Signed-off-by: Tim Thorpe <tim@tfthorpe.net>
Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
2017-11-14 22:36:46 +01:00
Paul Wassi
e202a8b9f6 ar71xx: add support for TP-Link TL-WA901ND v5
The TL-WA901ND v5 has the same hardware as v4, although the PCB has
a different layout. Installation from factory is done via TFTP.
(rename -factory image to wa901ndv4_tp_recovery.bin for tftp)

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-11-14 22:36:46 +01:00
Robert Marko
ac4a52b5c8 ar71xx: complete support for RB mAP 2nD
This patch adds support for the MikroTik RouterBOARD mAP 2nD
https://mikrotik.com/product/RBmAP2nD

Specifications:

- SoC: Qualcomm QCA9531 (650 MHz)
- RAM: 64 MB
- Storage: 16 MB NOR SPI flash
- Wireless: builtin QCA9531, 2x2:2
- Ethernet: 2x100M (802.3af/at POE in and passive POE out on ETH2)
- USB: microUSB type AB port

This patch adds missing code to fully support mAP. Machfile already
contained configuration for mAP 2nD, but device specific configuration
like LEDs etc., was missing.

Note: The POE LED works but doesn't turn on when POE passthrough is
enabled, despite being configured with GPIO trigger.

Installation

1. Login to the Mikrotik WebUI to backup your licence keys
2. Setup a DHCP/BOOTP server with:
   - DHCP-Option 66 (TFTP server name) pointing to a local TFTP
     server within the same subnet of the DHCP range
   - DHCP-Option 67 (Bootfile-Name) matching the initramfs filename
     of the to be booted image
3. Connect the port labeled internet to your local network
4. Keep the reset button pushed down and power on the board

The board should load and start the initramfs image from the TFTP
server. Login as root/without password to the started LEDE via SSH
listing on IPv4 address 192.168.1.1. Use sysupgrade to install LEDE.

Revert to RouterOS

Use the "rbcfg" package on in LEDE:
- rbcfg set boot_protocol bootp
- rbcfg set boot_device ethnand
- rbcfg apply

Open Netinstall and reboot routerboard. Now Netinstall sees RouterBOARD
and you can install RouterOS. If NetInstall gets stuck on Sending offer
just wait for it to timeout and then close and open Netinstall again.

Click on install again.

In order for RouterOS to function properly, you need to restore license
for the device. You can do that by including license in NetInstall.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2017-11-14 22:36:46 +01:00
Paul Wassi
d7adaceda3 ar71xx: fix network setup for UniFi
The Ubiquiti UniFi APs just have eth0. Until now, the setup script fell
through to the default case and configured the (not present) eth1 as
WAN with DHCP.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-11-14 22:36:46 +01:00
Robert Marko
3b15eb06c3 ar71xx: complete support for RB wAP 2nD
This patch adds support for the MikroTik RouterBOARD wAP
https://mikrotik.com/product/RBwAP2nD

Specifications:

- SoC: Qualcomm QCA9533 (650 MHz)
- RAM: 64 MB
- Storage: 16 MB NOR SPI flash
- Wireless: built-in QCA9533, 2x2:2
- Ethernet: 1x100M (802.3af/at POE in)

This patch adds missing code to fully support wAP. Machfile already
contained configuration for wAP 2nD but device specific configuration
like LEDs etc. was missing.

Installation:

1. Login to the Mikrotik WebUI to backup your licence keys
2. Setup a DHCP/BOOTP server with:
   - DHCP-Option 66 (TFTP server name) pointing to a local TFTP
     server within the same subnet of the DHCP range
   - DHCP-Option 67 (Bootfile-Name) matching the initramfs filename
     of the to be booted image
3. Connect the port labeled internet to your local network
4. Keep the reset button pushed down and power on the board

The board should load and start the initramfs image from the TFTP
server. Login as root/without password to the started LEDE via SSH
listing on IPv4 address 192.168.1.1. Use sysupgrade to install LEDE.

Revert to RouterOS

Use the "rbcfg" package on in LEDE:
- rbcfg set boot_protocol bootp
- rbcfg set boot_device ethnand
- rbcfg apply

Open Netinstall and reboot routerboard. Now Netinstall sees RouterBOARD
and you can install RouterOS. If NetInstall gets stuck on Sending offer
just wait for it to timeout and then close and open Netinstall again.

Click on install again.

In order for RouterOS to function properly, you need to restore license
for the device. You can do that by including license in NetInstall.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2017-11-14 22:36:46 +01:00
Paul Wassi
b23b0fb28b ar71xx: add support for TP-Link TL-WR810N v2
TP-Link TL-WR810N v2 is a compact Wi-Fi router with two Ethernet ports.

Specification:

- QCA9533 (650 MHz)
- 32 MB RAM
- 8 MB Flash
- 300 Mbps Wi-Fi 2.4 GHz
- 2x 10/100 Mbps Ethernet (eth0, eth1)
- UART on testpads on PCB
- 1x LED (GPIO-controlled)
- 1x reset/WPS button
- 1x slide-switch with 2 GPIO inputs

Flash instructions:

- Flash as regular firmware update in Web UI
- Default: 192.168.0.254 / admin / admin
- Select *-factory.bin

When holding reset button during power-up, U-Boot requests a file
'wr810nv1_tp_recovery.bin' from TFTP server at 192.168.0.66

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-11-14 22:36:46 +01:00
Dmitry Tunin
3ad5c161f4 firmware-utils: tplink-safeloader: add more country codes for Archer C7 v4
If codes do not match, it is impossible to flash from the stock
firmware.

Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
c7fdff157e uboot-envtools: add support for Wallys DR342
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
c83bdd094e ar71xx: add support for Wallys DR342
Wallys DR342 is a 5 GHz, 2T2R AP/CPE board based on Atheros AR9342.

Short specification:

- 560/450/225 MHz (CPU/DDR/AHB)
- 1x Gbps Ethernet (AR8035) with passive PoE support (24-56 V)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH
- 2T2R 5 GHz with external FEM (SKY85728-11), up to 30 dBm
- 2x MMCX connectors
- miniPCIe connector with PCIe and USB 2.0 buses
- optional miniSIM slot
- 7x LED, 1x button
- UART, (E)JTAG and LED headers
- 1x DC jack for main power (12-56 V)

Flash instruction (do it under U-Boot, using UART):

1. tftp 0x82000000 lede-ar71xx-generic-dr342-squashfs-sysupgrade.bin
2. erase 0x9f050000 +$filesize
3. cp.b $fileaddr 0x9f050000 $filesize
4. setenv bootcmd "bootm 0x9f050000"
5. saveenv && reset

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
fa36bea470 ramips: add support for UniElec U7628-01
UniElec U7628-01 is a router platform board based on MediaTek MT7628AN.
The device has the following specifications:

- MT7628AN (580MHz)
- 64/128/256 MB of RAM (DDR2)
- 8/16 MB of flash (SPI NOR)
- 5x 10/100 Mbps Ethernet (MT7628 built-in switch)
- 1x 2T2R 2.4 GHz Wi-Fi (MT7628)
- 1x miniPCIe slot (with PCIe and USB 2.0 buses)
- 1x miniSIM slot
- 1x microSD slot
- 1x USB 2.0 port
- 7x single-color LEDs (GPIO-controlled)
- 1x bi-color LED (green GPIO-controlled, red -> LED_WLAN# in miniPCIe)
- 1x reset button
- 1x UART header (4-pins)
- 1x SDXC/GPIO header (10-pins, connected with microSD slot)
- 1x DC jack for main power (12 V)

The following has been tested and is working:

- Ethernet switch
- miniPCIe slot (tested with modem and Wi-Fi card)
- miniSIM slot
- sysupgrade
- reset button
- USB 2.0 port*

Due to a missing driver (MMC over GPIO) this is not supported:

- microSD card reader

* Warning:
USB buses in miniPCIe and regular A-type socket are connected together,
without any proper analog switch or USB HUB.

Installation:

This board might come with a different firmware versions (MediaTek SDK,
PandoraBox, Padavan, etc.). If your board comes with PandoraBox, you can
install LEDE using sysupgrade. Just SSH to the router and perform forced
sysupgrade (due to a board name mismatch). The default IP of this board
should be: 192.168.1.1 and username/password: root/admin. In case of a
different firmware, you can use web based recovery described below.

Use the following command to perform the sysupgrade (for the 128MB
RAM/16MB flash version):

sysupgrade -n -F lede-ramips-mt76x8-u7628-01-128M-16M-squashfs-sysupgrade.bin

Recovery:

This board contains a Chinese, closed-source bootloader called Breed
(Boot and Recovery Environment for Embedded Devices). Breed supports web
recovery and to enter it, you keep the reset button pressed for around
5 seconds during boot. Your machine will be assigned an IP through DHCP
and the router will use IP address 192.168.1.1. The recovery website is
in Chinese, but is easy to use. Click on the second item in the list to
access the recovery page, then the second item on the next page is where
you select the firmware. In order to start the recovery, you click the
button at the bottom.

SDXC/GPIO header (J3):

 1. SDXC_D3  / I2C_SCLK
 2. SDXC_D2  / I2C_SD
 3. SDXC_D1  / I2S_DI
 4. SDXC_D0  / I2S_WS
 5. SDXC_CMD / I2S_CLK
 6. SDXC_CLK / GPIO0
 7. SDXC_CD  / UART_RXD1
 8. UART_TXD1
 9. 3V3
10. GND

Other notes:

1. The board is available with different amounts of RAM and flash. We
have only added support for the 128/16 MB configuration, as that seems
to be the default. However, all the required infrastructure is in place
for making support for the other configurations easy.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
46ab81e405 ramips: add support for UniElec U7621-06
UniElec U7621-06 is a router platform board based on MediaTek MT7621AT.
The device has the following specifications:

- MT7621AT (880 MHz)
- 256/512 MB of RAM (DDR3)
- 8/16/32/64 MB of FLASH (SPI NOR)
- 5x 1 Gbps Ethernet (MT7621 built-in switch)
- 1x ASMedia ASM1061 (for mSATA and SATA)
- 2x miniPCIe slots (PCIe bus only)
- 1x mSATA slot (with USB 2.0 bus for modem)
- 1x SATA
- 1x miniSIM slot
- 1x microSD slot
- 1x USB 3.0
- 12x LEDs (3 GPIO-controlled)
- 1x reset button
- 1x UART header (4-pins)
- 1x GPIO header (30-pins)
- 1x FPC connector for LEDs (20-pin, 0.5 mm pitch)
- 1x DC jack for main power (12 V)

The following has been tested and is working:

- Ethernet switch
- miniPCIe slots (tested with Wi-Fi cards)
- mSATA slot (tested with modem and mSATA drive)
- miniSIM slot
- sysupgrade
- reset button
- microSD slot

Installation:

This board might come with a different firmware versions (MediaTek SDK,
PandoraBox, Padavan, etc.). If your board comes with PandoraBox, you can
install LEDE using sysupgrade. Just SSH to the router and perform forced
sysupgrade (due to a board name mismatch). The default IP of this board
should be: 192.168.1.1 and username/password: root/admin. In case of a
different firmware, you can use web based recovery described below.

Use the following command to perform the sysupgrade (for the 256MB
RAM/16MB flash version):

sysupgrade -n -F lede-ramips-mt7621-u7621-06-256M-16M-squashfs-sysupgrade.bin

Recovery:

This board contains a Chinese, closed-source bootloader called Breed
(Boot and Recovery Environment for Embedded Devices). Breed supports web
recovery and to enter it, you keep the reset button pressed for around
5 seconds during boot. Your machine will be assigned an IP through DHCP
and the router will use IP address 192.168.1.1. The recovery website is
in Chinese, but is easy to use. Click on the second item in the list to
access the recovery page, then the second item on the next page is where
you select the firmware. In order to start the recovery, you click the
button at the bottom.

LEDs list (top row, left to right):

- LED_WWAN# (connected with pin 42 in LTE/mSATA slot)
- Power (connected directly to 3V3)
- CTS2_N (GPIO10, configured as "status" LED)
- TXD2 (GPIO11, configured as "led4", without default trigger)
- RXD2 (GPIO12, configured as "led5", without default trigger)
- LED_WLAN# (connected with pin 44 in wifi0 slot)

LEDs list (bottom row, left to right):

- ESW_P0_LED_0
- ESW_P1_LED_0
- ESW_P2_LED_0
- ESW_P3_LED_0
- ESW_P4_LED_0
- LED_WLAN# (connected with pin 44 in wifi1 slot)

Other notes:

1. The board is available with different amounts of RAM and flash. We
have only added support for the 256/16 MB configuration, as that seems
to be the default. However, all the required infrastructure is in place
for making support for the other configurations easy.

2. The manufacturer offers five different wireless cards with MediaTek
chipsets, based on MT76x2, MT7603 and MT7615. Images of the board all
show that the miniPCIe slots are dedicated to specific Wi-Fi cards.
However, the slots are generic.

3. All boards we got access to had the same EEPROM content. The default
firmware reads the Ethernet MAC from offset 0xe000 in factory partition.
This offset only contains 0xffs, so a random MAC will be generated on
every boot of the router. There is a valid MAC stored at offset 0xe006
and this MAC is shown as the WAN MAC in the bootloader. However, it is
the same on all boards we have checked. Based on information provided
by the vendor, all boards sold in small quantities are considered more
as samples for development purposes.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
55c77b3d3c ar71xx: increase kernel partition size for TP-Link RE450 v1
This increases kernel partition size and fixes rootfs (file-system)
partition size on TP-Link RE450 v1. Also, while we are at it, switch
from statically defined kernel and rootfs partitions in kernel cmdline
to "tplink-fw" mtd splitter.

Fixes: FS#1072.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
a4bb13e720 ar71xx: fix typo in Kconfig.openwrt
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-11-14 22:36:46 +01:00
Piotr Dymacz
2eeb8ac271 ar71xx: image: fix typo in tp-link.mk
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-11-14 22:36:46 +01:00
Henryk Heisig
ca6002c0ef ar71xx: increase kernel partition size for some TP-Link boards
This patch increases kernel partition size and re-enables image
generation for below TP-Link boards:

- archer-c58-v1
- archer-c60-v1
- tl-wr902ac-v1
- tl-wr942n-v1

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
[commit message and title reworded]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-11-14 22:36:46 +01:00
Rafał Miłecki
3f96e57aed otrx: add support for -A (append) and -a (align) options
They are inspired and compatible with the original and mjn3's trx tool.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-14 22:33:19 +01:00
Rafał Miłecki
6d283b8029 otrx: optimize memory usage when creating TRX image
There is no need to allocate buffer as big as the whole image in order
to calculate CRC32. It's enough to use small buffer and just read file
content block by block.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-14 22:33:19 +01:00
Rafał Miłecki
c6761e7c8e otrx: use helper function when checking image's CRC32
This requires changing this helper to accept initial/current CRC32
value as argument but it allows dropping duplicated (complex?) code
calculating the CRC32.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-14 22:33:19 +01:00
Hans Dedecker
31ebbe34cc igmpproxy: remove firewall rules when service is stopped
Remove multicast routing firewall rules when the igmpproxy is stopped by
triggering a firewall config change.
Keeping the firewall open from the wan for igmp and udp multicast is not
desired when the igmpproxy service is inactive.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-14 22:01:44 +01:00
Yangbo Lu
769e1bac7b layerscape: enable CONFIG_CRYPTO_ARC4 in kernel 4.9
This patch is to enable CONFIG_CRYPTO_ARC4 in kernel 4.9
which is a dependency for mac80211 package.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-14 12:55:20 +01:00
Jaroslav Safka
17a4eacd0c dnsmasq: fix swapped ubus args mac and ip
Fix swapped arguments "mac" and "ip" when calling function
"ubus_event_bcast".

Signed-off-by: Jaroslav Safka <devel@safka.org>
2017-11-13 23:30:33 +01:00
Martin Schiller
e2f25e607d openvpn: add support to start/stop single instances
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> (PKG_RELEASE increase)
2017-11-13 21:37:24 +01:00
Daniel Golle
654016bb0a rpcd: fix packagelist memory leak
a0231be8fbc61 sys: fix memory leak in packagelist

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-11-13 01:59:53 +01:00
Alexander Couzens
6ab4521464 package/elfutils: add CFLAG -Wno-format-nonliteral
When a library is using fortify-packages GCC will complain about
"error: format not a string literal, argument types not checked".

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-11-13 01:11:12 +01:00
Peter Wagner
164fe697f7 openssl: update to 1.0.2m
don't set no-ssl3-method when CONFIG_OPENSSL_WITH_SSL3 di disabled otherwise the compile breaks with this error:

../libssl.so: undefined reference to `SSLv3_client_method'

Fixes CVE: CVE-2017-3735, CVE-2017-3736

Signed-off-by: Peter Wagner <tripolar@gmx.at>
2017-11-12 23:47:11 +01:00
Daniel Golle
49fde37758 rpcd: update to the latest version from 2017-11-12
4e483312b0216 sys: add packagelist method

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-11-12 20:43:43 +01:00
Felix Fietkau
12f9305c12 wireguard: fix portability issue
Check if the compiler defines __linux__, instead of assuming that the
host OS is the same as the target OS.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-11 13:20:39 +01:00
Felix Fietkau
f7186599ce wireguard: move to kernel build directory
It builds a kernel module, so its build dir should be target specific

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-11 13:20:39 +01:00
John Crispin
b4e30b863c procd: update to latest git HEAD
7c9aa7c service: add data within the service itself
e2b819a service: fix calls to blobmsg_parse()

Signed-off-by: John Crispin <john@phrozen.org>
2017-11-10 23:35:38 +01:00
Pierre Lebleu
832b6b8305 procd: service_data: Support data within the service itself
Use the same approach than the service_triggers for the service_data.

Signed-off-by: Pierre Lebleu <pme.lebleu@gmail.com>
2017-11-10 23:31:27 +01:00
Yangbo Lu
ff56bb0dfb layerscape: fix pfe module autoload issue
There was a typo in module.mk for pfe module autoload.
This patch is to fix this and remove useless rc.local
which was for loading pfe module.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:50 +01:00
Yangbo Lu
d96d0eb28f layerscape: add a README for build and deployment
Added a README for layerscape targets build and deployment.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:50 +01:00
Yangbo Lu
2b1ec44dbd layerscape: add ls1012afrdm device support
The QorIQ FRDM-LS1012A Board is an ultra-low-cost
development platform for QorIQ LS1012A Series Network
Processors built on ARM Cortex-A53 processor.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
9e7b166704 layerscape: enlarge ext4 rootfs size to 30MB
This patch is to enlarge ext4 rootfs size to 30MB.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
5b8639f02e layerscape: add ppa firmware package
This patch is to add PPA (The Primary Protected Application)
package and also enable it for all layerscape devices.
LSDK github provides ppa source code git tree, but it
only could be compiled with 64-bit toolchain. For 32-bit
devices, there was no method to use it.
https://github.com/qoriq-open-source/ppa-generic

This patch is to directly use a private ppa binary tree for
both 32-bit and 64-bit devices.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
82fbca8aaa layerscape: support LSDK ppfe
This patch is to use ppfe git tree on LSDK github
instead of private git tree, and support the latest
ppfe on ls1012ardb.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
669c02d46d layerscape: fix ls1046ardb 32-bit call trace
Enabled CONFIG_ARCH_DMA_ADDR_T_64BIT in kernel to
resolve below call trace when ls1046ardb 32-bit
started up kernel.

[    0.142141] Bman ver:0a02,02,01
[    0.145326] ------------[ cut here ]------------
[    0.149969] WARNING: CPU: 0 PID: 1 at arch/arm/mm/ioremap.c:303 __arm_ioremap_pfn_caller+0x1ac/0x1d8
[    0.159152] Modules linked in:
[    0.162216] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.9.51-g9c76e024 #2
[    0.169036] Hardware name: Generic DT based system
[    0.173853] [<c02236a4>] (unwind_backtrace) from [<c021ed94>] (show_stack+0x10/0x14)
[    0.181638] [<c021ed94>] (show_stack) from [<c04d2d38>] (dump_stack+0x98/0xac)
[    0.188899] [<c04d2d38>] (dump_stack) from [<c0245bcc>] (__warn+0xe4/0x100)
[    0.195896] [<c0245bcc>] (__warn) from [<c0245c98>] (warn_slowpath_null+0x20/0x28)
[    0.203504] [<c0245c98>] (warn_slowpath_null) from [<c0229e24>] (__arm_ioremap_pfn_caller+0x1ac/0x1d8)
[    0.212861] [<c0229e24>] (__arm_ioremap_pfn_caller) from [<c0229f0c>] (ioremap_cache+0x20/0x28)
[    0.221608] [<c0229f0c>] (ioremap_cache) from [<c105e390>] (parse_mem_property.part.3+0x18/0x50)
[    0.230441] [<c105e390>] (parse_mem_property.part.3) from [<c105e6dc>] (qman_init_early+0x314/0x334)
[    0.239623] [<c105e6dc>] (qman_init_early) from [<c0201a24>] (do_one_initcall+0xb4/0x168)
[    0.247844] [<c0201a24>] (do_one_initcall) from [<c1000e84>] (kernel_init_freeable+0x1d8/0x280)
[    0.256590] [<c1000e84>] (kernel_init_freeable) from [<c0adbcfc>] (kernel_init+0x8/0x114)
[    0.264812] [<c0adbcfc>] (kernel_init) from [<c021bb28>] (ret_from_fork+0x14/0x2c)
[    0.272423] ---[ end trace 39aaeef329e2a0a2 ]---
[    0.277058] qman-fqd addr 0xfb000000 size 0x800000

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
110c9e9034 layerscape: update config-4.9
Some new options were introduced by kernel patches.
And some options should be removed/added.
The config-4.9 should be updated accordingly.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
ce6311d283 layerscape: update kernel patches
Updated kernel patches to align layerscape kernel
with latest LSDK linux (LSDK-17.09-update-103017-V4.9 tag).

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:49 +01:00
Yangbo Lu
ede04541ba layerscape: stop pfe before starting up kernel
For ls1012ardb, pfe should be stopped before starting up
kernel.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
38417e9ce1 layerscape: update u-boot to LSDK-1709-update-103017 tag
Updated u-boot to LSDK-1709-update-103017 tag.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
1552dd01d9 layerscape: use 1GHz CPU fequency for ls1012ardb
Used 1GHz CPU fequency for ls1012ardb instead of 800MHz.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
b915ac8ce2 layerscape: update rcw to LSDK-17.09-update-103017 tag
Updated rcw to LSDK-17.09-update-103017 tag.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
69c8e8d00b layerscape: support LEDE boot for ls1088ardb/ls2088ardb
Added u-boot patches to support LEDE boot for ls1088ardb
and ls2088ardb.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
47cff4cf5f layerscape: support all-in-one firmware for ls1088ardb/ls2088ardb
Suppport all-in-one firmware for ls1088ardb/ls2088ardb by
integrating u-boot/rcw/mc/dpl/restool.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
e47c93bb19 layerscape: remove default profile
Default profile had to enable many packages for all devices
support. This made these packages still enabled when built
for single device. This patch is to remove default profile.
For multiple devices build, it's proper to build with multiple
devices profile.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
23c1504059 layerscape: add restool package
restool is a user space application providing the
ability to dynamically create and manage Layerscape
DPAA2 containers and objects from Linux.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
1e0276a39a layerscape: add dpl firmware package
This patch is to add data path layout files for the
second generation Data Path Acceleration Architecture.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
71a1df796e layerscape: add mc firmware package
This patch is to add package support for Management
Complex Firmware for the second generation Data Path
Acceleration Architecture.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
85e0d259d2 layerscape: move fman/rcw/ppfe packages to layerscape/
This patch is to create a layerscape directory for all
firmware packages of layerscape.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Yangbo Lu
4e209e07f7 layerscape: clean up kernel patches
A previous patch disaggregated kernel patch 601 intending to
reverse the ndo_get_stats64 change, but it also dropped
many other changes without a reason. This caused build issue
for layerscape. This patch is to fix that with below steps.
1. Reversed patch "1c4415a layerscape: reverse changes to ndo_get_stats64",
   but kept kernel patch 701 which was a proper fix.
2. Reversed the ndo_get_stats64 change in kernel patch 601.
3. Renamed patch 601 (net patch) to 202 (core-linux patch). Maybe it's
   more proper.

Fixes: 1c4415a679 ("layerscape: reverse changes to ndo_get_stats64")
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-11-10 23:00:47 +01:00
Tim Thorpe
bddffc5e7b brcm47xx: fix switch port mapping on Asus RT-N16
On the Asus RT-N16, the ports are not mapped the in the same way as
the RT-N12.  It is, however, the same as the Linksys E3000v1.

Signed-off-by: Tim Thorpe <timfthorpe@gmail.com>
2017-11-10 14:53:04 +01:00
Felix Fietkau
645b163cfc ar71xx: fix regression in 74x164 initialization with 4.9
The memcpy of the init data relies on chip->registers to be initialized,
which only happens later in the code. Move this initialization further
down to make it work.
This was breaking PCIe/USB on some MikroTik RouterBoard devices.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-10 00:53:10 +01:00
Rafał Miłecki
5cd48280fd rpcd: update to the latest version from 2017-11-09
9a8640183c031 plugin: use RTLD_LOCAL instead of RTLD_GLOBAL when loading library

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-11-09 17:30:38 +01:00
Felix Fietkau
b0e6284879 build: fix generating dtb with / in DEVICE_DTS
Fixes layerscape build error

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-09 14:40:32 +01:00
Felix Fietkau
981be0c3bd toolchain/musl: update to version 1.1.18
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-09 12:35:31 +01:00
Felix Fietkau
6bcc1c5331 tools/coreutils: install readlink
Parts of the build system use non-portable invocation of readlink

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-09 12:35:06 +01:00
Yousong Zhou
b2aa820b48 base-files: fix getting gid from group_add_next
Shell function return code only has range [0, 255].  Other values will
be truncated, e.g. return 65536 will have the same effect as return 0

While at it, drop other "return $rc" where rc will almost always take
value 0 and whose value current callers actually do not check

Fixes FS#988

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-11-09 17:42:36 +08:00
Daniel Gimpelevich
a6e9d146f2 lantiq: add missing macaddr retrieval for Netgear DGN3500
The MAC addresses were not being set for LAN and WAN. This will now use the
same MAC mechanism as the rest of the target.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
2017-11-08 23:25:05 +01:00
Robert Marko
d0ef27594a ramips: add support for TP-Link TL-WR840N v5
TP-Link TL-WR840N v5 is simple N300 router with 5-port FE switch and
non-detachable antennas, based on MediaTek MT7628NN (aka MT7628N) WiSoC.

Specification:

- MT7628N/N (580 MHz)
- 64 MB of RAM (DDR2)
- 4 MB of FLASH
- 2T2R 2.4 GHz
- 5x 10/100 Mbps Ethernet
- 2x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- 1x LED (GPIO-controlled), 1x button

* LED in TL-WR840N v5 is a dual-color, dual-leads type which isn't
  (fully) supported by gpio-leds driver. This type of LED requires both
  GPIOs state change at the same time to select color or turn it off.
  For now, we support/use only the green part of the LED.
  Orange LED is registered so you can later use it for your own purposes.

  Flash instruction:

  Unlike TL-WR840N v4 flashing through WEB UI works in v5.
  1. Download lede-ramips-mt76x8-tl-wr840n-v5-squashfs-sysupgrade.bin image.
  2. Go to 192.168.0.1
  3. Flash the sysupgrade image through Firmware upgrade section of WEB UI.
  4. Wait until green LED stops flashing and use the router.

Notes:
TFTP recovery is broken since TP-Link reused bootloader code for v4 and
that does not take into account only 4 MB of flash and bricks the device.
So do not use TFTP Recovery or you will have to rewrite SPI flash.
They fixed it in later GPL code,but it is unknown which version of
bootloader you have.

After manually compiling and flashing bootloader from GPL sources TFTP
recovery works properly.

Signed-off-by: Robert Marko <robimarko@gmail.com>
2017-11-08 23:25:05 +01:00
Marko Ratkaj
73c745f64f functions.sh: fix default_postinst function
When we run "opkg install" on a package that installs an uci-defaults
script, functions.sh will fail to evaluate that script in its
default_postinst function.

This happens because there is no "./" present and it searches for the
file in paths specified by the PATH variable. This would work on bash,
but it will not work on ash and some other shells like sh, zsh. This
applys to the ". filename" directive used in this case.

This patch will make the path relative to the /etc/uci-defaults
directory.

Fixes: FS#1021

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-11-08 23:18:22 +01:00
Thibaut VARÈNE
74f891752b generic: make mtdsplit-tplink.c honor rootfs offset
The splitter ignored the rootfs offset from the header, probably
because until c1e6e61 it was invalid.

This patch fixes the splitter to use the now correct header data.

Regarding target/linux/ar71xx/files/drivers/mtd/tplinkpart.c,
this particular splitter "falls back" to the correct rootfs offset
reading and as such it doesn't need to be updated, although it will
report a kernel partition length that can be larger than the actual
length as it assumes that partition fills the entire segment up to
the rootfs partition.

Tested-by: Mathias Kresin <dev@kresin.me>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Tested-by: Henryk Heisig <hyniu@o2.pl>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2017-11-08 23:18:22 +01:00
Thibaut VARÈNE
050fb3b55c tools/firmware-utils: mktplinkfw* fix rootfs offset
With '-a' specified on the command line, the current code:
- computes an aligned _kernel length_ instead of an aligned _rootfs
  offset_.
- does not update the rootfs offset after computing the new kernel
  length, and instead retains the layout default.

When the kernel length exceeds the available space left with this
fixed offset, the resulting image header contains invalid data, with
the recorded rootfs offset overlapping the kernel area.

This patch ensures that rootfs offset is correctly computed and
reflected in the final image.

Furthermore, the build_fw() function special cases the rootfs_align
option because of the above invalid logic. This is also fixed and
the computed (or command-line provided, or layout-provided) rootfs_ofs
value is used in all cases.

There seems to be no valid reason to extend the kernel length beyond
the actual length of the kernel itself (OFW images don't do it) so this
part of the existing behavior is dropped.

Example image before the patch:
Kernel data offset     : 0x00000200 /      512 bytes
Kernel data length     : 0x00158438 /  1410104 bytes
Kernel load address    : 0x00000080
Kernel entry point     : 0x00000080
Rootfs data offset     : 0x00140000 /  1310720 bytes
Rootfs data length     : 0x001e4f7e /  1986430 bytes

Example image after the patch:
Kernel data offset     : 0x00000200 /      512 bytes
Kernel data length     : 0x001583fe /  1410046 bytes
Kernel load address    : 0x00000080
Kernel entry point     : 0x00000080
Rootfs data offset     : 0x00158600 /  1410560 bytes
Rootfs data length     : 0x001e4e22 /  1986082 bytes

Tested-by: Mathias Kresin <dev@kresin.me>
Tested-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Tested-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Tested-by: Henryk Heisig <hyniu@o2.pl>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2017-11-08 23:18:22 +01:00
Jonas Gorski
dea3bad84e ltq-ptm: add missing depency to ltq-?dsl-*-mei
Add the required dependency to the mei driver as cought by the depenceny
checker.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-11-07 22:58:58 +01:00
Jonas Gorski
e76340198f ltq-atm: fix dependency for xrx200
Ad the missing dependency for the xrx200 variant, which depends on the
vdsl mei driver.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-11-07 22:58:58 +01:00
Jonas Gorski
a9a78a70cc ltq-adsl-mei: use the same file name for all variant
Due to limitations in the symvers treatment and the mei drivers
exporting the same funtions, modpost might use the wrong mei driver
to link against.

Work around this by renaming them all to the same name, making it
always the "right" module name even if the wrong file was used.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-11-07 22:58:58 +01:00
Jonas Gorski
ee59f8126f partially revert "mwlwifi: switch to AutoProbe"
Apearently we need to ensure mwlwifi loads before mwifiex on
the WRT3200ACM, else mwifiex will claim the wifi.

Fix this by reverting to AutoLoad, but keep the removal of
mac80211 line.

This partially reverts commit 471d5dc6e3.

Fixes: 471d5dc6e3 ("mwlwifi: switch to AutoProbe")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-11-07 22:58:58 +01:00
Jonas Gorski
e26ffb31df build: fix module symbol collection if build_dir is a symlink
If PKG_BUILD_DIR contains symlinks, the generated Module.symvers will
contain the resolved paths, not the virtual path with the symlink name.

This breaks the filter for the module's own symbols, so to fix this
ensure we also grep for the resolved path.

Reported-by: Roman Yeryomin <roman@advem.lv>
Tested-by: Roman Yeryomin <roman@advem.lv>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-11-07 22:58:46 +01:00
Hans Dedecker
1928fc93ce firewall: update to latest git HEAD
c430937 ubus: parse the firewall data within the service itself

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-07 22:35:46 +01:00
Jo-Philipp Wich
2b6facc8d4 include: kernel.mk: simplify module autoloading
Let the generic postinstall script invoke "kmodloader" when the just
installed package contains any /etc/module.d/ entries.

This allows us to skip the explicit "insert_module()" calls in the
package postinstall.

Due to the removed insert_module calls we do not need to assemble a
complete list of modules per package anymore, which allows for vast
simplification of the package generation code.

While we're at it, also support specifying default parameters for
modules using either the MODPARAM or MODPARAM.modulename variables
in KernelPackage.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-11-07 12:02:06 +01:00
Jo-Philipp Wich
05a4200d56 uhttpd: fix query string handling
Update to latest Git in order to fix potential memory corruption and invalid
memory access when handling query strings in conjunction with active basic
authentication.

a235636 2017-11-04 file: fix query string handling

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-11-07 12:02:06 +01:00
Daniel Golle
ebdf5ed50b netifd: fix PKG_MIRROR_HASH
commit fbde9ac718 set an incorrect sha256sum which doesn't match the
file http://sources.lede-project.org/netifd-2017-10-31-0f96606b.tar.xz
or a locally packaged checkout (which resulted in a file identical with
the one referenced by the URL above).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-11-07 00:21:02 +01:00
Yury Shvedov
09f90b7829 hostapd: remove default r1_key_holder generation
By default, hostapd assumes r1_key_holder equal to bssid. If LEDE
configures the same static r1 key holder ID on two different APs (BSSes) the
RRB exchanges fails behind them.

Signed-off-by: Yury Shvedov <yshvedov@wimarksystems.com>
2017-11-06 16:39:41 +01:00
Denis Osvald
ee791fa4ab netfilter, iptables: add optional CHECKSUM module
Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
2017-11-06 16:39:41 +01:00
Zoltan HERPAI
f9ecb0d562 sunxi: add Orange Pi 2 support
- H3 @ 1.3 GHz
- 1GiB DDR3
- 10/100Mbps Ethernet
- Realtek RTL8189ETV wifi
- 4 USB 2.0

Difference to the "Orange Pi Plus" is the lack of Gbit ethernet
and lack of onboard flash.

Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-11-06 16:39:41 +01:00
Rosen Penev
e555153807 ag71xx: Switch from driver to kernel macro for NAPI_WEIGHT.
NAPI_POLL_WEIGHT was introduced in the kernel for exactly this purpose 5 years ago.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-11-06 16:39:41 +01:00
Sergey Ryazanov
890e668273 ixp4xx: drop the jumbo frame support
Current jumbo frame support code allocates rxbuffers of the maximum size
supported by the hardware (~14KB). This happens at the device open time
even if the configured MTU is lower (e.g. if it configured to standard
1500 bytes). Such behavior effectivly prevents interface start on boards
with a low ammount of RAM (e.g. WRT300N v2), since the kernel simly can
not allocates of ~0.8MB (14KB x 64).

So remove jumbo frame support for now.

Reported-by: Nerijus Baliunas <nerijus@users.sourceforge.net>
Tested-by: Nerijus Baliunas <nerijus@users.sourceforge.net>
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-11-06 16:39:41 +01:00
Sergey Ryazanov
204f3f5987 ixp4xx: fix non-standard phy support
The patch, which adds multiphy support, adds new path for non-standard
PHYs (e.g. MV88E6060 switch IC) to avoid using kernel phy framework. All
work well except the link status traking (Duplex and Speed), which is
reseted as soon as PHY connection procedure is done. This leads to lost
of the link status of non-standard PHY, which is configured exactly in
the ixp4xx_phy_connect() function.

Move the generic reset of a link state to the ixp4xx_phy_connect()
function to the code path, which is intended for handling of a normal
PHY.

Reported-by: Nerijus Baliunas <nerijus@users.sourceforge.net>
Tested-by: Nerijus Baliunas <nerijus@users.sourceforge.net>
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-11-06 16:39:41 +01:00
Marek Vasut
6d2f3b1b19 package: kernel: dtc: Add DTO support
Add patch with the DT overlay support into the DTC package.

Signed-off-by: Marek Vasut <marex@denx.de>
2017-11-06 16:39:41 +01:00
Ralph Sennhauser
f5468d2486 openssl: fix cryptodev config dependency
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
2017-11-06 16:39:41 +01:00
Kayo Phoenix
6a3565985f sunxi: Added profile for HAOYU Electronics Marsboard A10
The MarsBoard was a short-lived credit-card sized, extendable board with an Allwinner A10 SoC.
http://linux-sunxi.org/MarsBoard_A10

Signed-off-by: Kayo Phoenix <kayo@illumium.org>
[Forward-ported to new target layout:]
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
2017-11-06 16:39:41 +01:00
Arjun AK
63d7c45886 iwinfo: add "PKG_MIRROR_HASH" to the Makefile
Defining it will let the build tool download the tarball file from
a buildbot server, avoiding a clone of the source repo.

Signed-off-by: Arjun AK <lede@arjunak.com>
2017-11-06 16:39:41 +01:00
Felix Fietkau
c078386ae3 ar71xx: only use SPI NOR 4K sectors on smaller flash chips for mikrotik devices
On NOR based Mikrotik devices, 4K sectors significantly slow down
firmware flashing and jffs2 usage. On NAND based devices they may be
necessary to run rbcfg (the boot loader config is often on SPI NOR).

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-06 16:38:28 +01:00
Felix Fietkau
c08293893a kernel: add support for limiting 4K erase sector support based on flash chip size
Some targets need 4K sectors for small flash chips (e.g. some
routerboards, where the entire chip is just one "erase block"), whereas
on other devices 4K sectors lead to horrible flash erase/write
performance.

Set the default limit in the generic kernel configuration to 4 MiB to
ensure that all new platforms don't use 4K sectors for bigger flash
chips. On all existing targets use 16 MiB for now to avoid regressions.
They will be changed individually in follow-up commits.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-06 16:38:25 +01:00
Felix Fietkau
94491a1571 ubox: update to the latest version, fixes syslog issues
7a49632 logd: use uloop instead of ustream_fd for syslog
69d6542 logd: only create pipe in stream mode
df30c8c logread: terminate after EOF
bdcacad logd: implement oneshot mode for stream log read
4a10d4e logread: use oneshot mode without -f, wait for logd to close
ea3d7fa logd: enforce line length limit for ubus based log messages as well
960a29d logread: remove leftover debug code
a081904 logread: fix line buffer size
2c0d9cf logd: move stripping of newlines to log_add()

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-06 11:58:40 +01:00
Philip Prindeville
e03dcf494e iperf3: update to 3.3 and refresh patches
Taking the same patchset I've submitted upstream for inclusion.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-10-31 14:19:51 -06:00
John Crispin
bd60c9063d bubox: update to latest git HEAD
729f47f jshn: read and write 64-bit integers

Signed-off-by: John Crispin <john@phrozen.org>
2017-11-06 10:06:35 +01:00
Stefan Lippers-Hollmann
9a221c6d69 ip806x: nbg6817: sysupgrade support both targets for kernel/ rootfs partitions
With this commit and the previous "nbg6817: don't hardcode the rootfs location
by using append-rootblock instead" applied, it is possible to boot- and
sysupgrade from both dual-boot sets (the primary mmcblk0p4+mmcblk0p5 or the
alternative mmcblk0p7+mmcblk0p8). However the sysupgrade support does not
toggle between both dual-boot sets between firmware upgrades so far.

The partition map of the eMMC used in the nbg6817 is:

Found valid GPT with protective MBR; using GPT.
Disk /dev/mmcblk0: 7471104 sectors, 3.6 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): XXX
Partition table holds up to 12 entries
First usable sector is 34, last usable sector is 7471070
Partitions will be aligned on 2-sector boundaries
Total free space is 1 sectors (512 bytes)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34            8225   4.0 MiB     FFFF  rootfs_data
   2            8226           16417   4.0 MiB     FFFF  romd
   3           16418           18465   1024.0 KiB  FFFF  header
   4           18466           26657   4.0 MiB     FFFF  kernel
   5           26658          157729   64.0 MiB    FFFF  rootfs
   6          157730          159777   1024.0 KiB  FFFF  header_1
   7          159778          167969   4.0 MiB     FFFF  kernel_1
   8          167970          299041   64.0 MiB    FFFF  rootfs_1
   9          299042          823329   256.0 MiB   FFFF  bu1
  10          823330         7471069   3.2 GiB     FFFF  bu2

rootfs_data is the ext4 formatted overlay of the OEM firmware, LEDE
ignores it due to its (too) small size.

romd/ bu1 are initialized with zeroes (0x00) and unused.

bu2 is formatted with ext4 and used for streamboost and other optional
functionality by the OEM firmware, it is reformatted during factory
resets of the OEM firmware.

header/ header_1 contains version information for the corresponding
vendor firmwares installed to kernel/rootfs or kernel_1/ rootfs_1, the
format hasn't been completely reverse engineered so far and remains
left untouched by LEDE:

V1.00(ABCS.2)C0:
 00000000  00 00 a7 74 01 32 f0 00  56 31 2e 30 30 28 41 42  |...t.2..V1.00(AB|
 00000010  43 53 2e 32 29 43 30 00  ff ff ff ff ff ff ff ff  |CS.2)C0.........|
 00000020  ff ff ff ff ff ff ff ff  00 00 d5 dc 4e 42 47 36  |............NBG6|
 00000030  38 31 37 00 ff ff ff ff  ff ff ff ff ff ff ff ff  |817.............|
 00000040  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
 *
 00000060  ff ff ff ff ff ff ff ff  ff ff ff ff 00 00 22 a3  |..............".|
 00000070  00 1c 70 00 ff ff ff ff  ff ff ff ff ff ff ff ff  |..p.............|
 00000080  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
 *
 00000800  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
 *
 00100000

V1.00(ABCS.5)C0:
 00000000  00 00 bf 94 01 46 d8 00  56 31 2e 30 30 28 41 42  |.....F..V1.00(AB|
 00000010  43 53 2e 35 29 43 30 00  ff ff ff ff ff ff ff ff  |CS.5)C0.........|
 00000020  ff ff ff ff ff ff ff ff  00 00 d6 5a 4e 42 47 36  |...........ZNBG6|
 00000030  38 31 37 00 ff ff ff ff  ff ff ff ff ff ff ff ff  |817.............|
 00000040  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
 *
 00000060  ff ff ff ff ff ff ff ff  ff ff ff ff 00 00 c0 2c  |...............,|
 00000070  00 1c 58 00 ff ff ff ff  ff ff ff ff ff ff ff ff  |..X.............|
 00000080  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
 *
 00010000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
 *
 00100000

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2017-10-29 03:11:51 +01:00
Stefan Lippers-Hollmann
b583aaf5aa ip806x: nbg6817: don't hardcode the rootfs location by using append-rootblock instead
This changes the cmdline from:

Kernel command line: root=/dev/mmcblk0p5 rootfstype=squashfs,ext4 rootwait noinitrd
Bootloader command line (ignored): board=NBG6817 root=/dev/mmcblk0p5 rootwait zld_ver=2.04 console=ttyHSL1,115200n8 mtdparts=m25p80:0xC0000(SBL)ro,0x40000(TZ)ro,0x40000(RPM)ro,0x80000(u-boot)ro,0x10000(env)ro,0x10000(ART)ro,0x10000(dualflag),0x210000(reserved)

to

Kernel command line: rootfstype=squashfs,ext4 rootwait noinitrd root=/dev/mmcblk0p5
Bootloader command line (ignored): board=NBG6817 root=/dev/mmcblk0p5 rootwait zld_ver=2.04 console=ttyHSL1,115200n8 mtdparts=m25p80:0xC0000(SBL)ro,0x40000(TZ)ro,0x40000(RPM)ro,0x80000(u-boot)ro,0x10000(env)ro,0x10000(ART)ro,0x10000(dualflag),0x210000(reserved)

As a consequence booting from the alternative dual-boot partition set
(root=/dev/mmcblk0p8) becomes possible.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2017-10-29 02:55:27 +01:00
Koen Vandeputte
06d5d01e8a uqmi: replace legacy command invoke with newer type
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-10-24 16:20:22 +02:00
Koen Vandeputte
09582d6b4d uqmi: also try newer pin verification
Newer devices tend to only support the newer version of the pin
verification command, so also try that one.

Fixes PIN issues with modems like the Sierra Wireless MC7455

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-10-24 16:20:21 +02:00
John Crispin
5b3e35d85b ubox: update to latest git HEAD
da5b8b4 log/syslog: Add missing static to two structs.
dd61c9f ubox: Replace { 0 } with {}.

Signed-off-by: John Crispin <john@phrozen.org>
2017-11-06 09:07:39 +01:00
John Crispin
f62e2f611c procd: update to latest git HEAD
53e92d4 procd: lower the logging threshold
b39c362 service: Start services normally when seccomp is disabled
3ba6b45 procd: add missing new lines inside debug code
56a02e3 service: fix service_handle_event array
d4a183f service: fix SERVICE_ATTR_NAME usage in service_handle_set

Signed-off-by: John Crispin <john@phrozen.org>
2017-11-06 08:50:18 +01:00
Michal Sojka
0e300a3a71 procd: Always tell cmake whether to include seccomp support or not
Without this change, when a user disables seccomp support in .config,
procd does not get recompiled unless the package is cleaned manually.
It is because when -D option is missing from cmake command line, cmake
uses cached value from the previous run where seccomp was enabled.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
2017-11-03 22:31:42 +01:00
John Crispin
727ab294d0 ubus: update to latest git HEAD
24ffe9b libubus-req: add data_cb callback handling for ubus notifications

Signed-off-by: John Crispin <john@phrozen.org>
2017-11-06 08:31:38 +01:00
Roman Yeryomin
156f2df879 ipq806x: ipq4019: add ap-dk01.1-c1 board support
AP-DK01.1-C1 is QCA dev board with:
- ipq4018 quad core ARM @716.8MHz, 2x2 dual (11n+11ac) radio
- 256MB RAM
- 32MB SPI flash
- QCA8075 multiport ethernet phy (WAN port, 4x LAN ports)

First installation via u-boot:
sf probe
sf erase 0x180000 0x1a00000
tftpboot 0x84000000 lede-ipq806x-AP-DK01.1-C1-squashfs-sysupgrade.bin
sf write 0x84000000 0x180000 $filesize

Further upgrades via sysupgrade.

Changes:
- add partitions
- set memory size to 256MB
- add reserved memory mapping
- add correct compatible string
- add image generation
- extract pre-cal data from ART partition

Compile and run tested.
Wirespeed NAT can be achieved with spreading rx interrupts over different
cores. Wifi speed is ~550Mbps @5GHz in open air.

Note:
AP-DK01.1-C1 is fully compatible with AP-DK01.2-C1, which has
ipq4028 instead of ipq4018 on board.

Changes since v2:
- based on dts(i) rework/cleanup submitted:
  http://lists.infradead.org/pipermail/lede-dev/2017-October/009596.html
- precise reserved memory mapping
- more precise description
- compatible string

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:24:26 +02:00
Roman Yeryomin
a22e2bd37d ipq806x: ipq4019: dts: fix maximum cpu speed
Supported frequencies of all ipq40xx chips are 48, 200, 500 and 716.8 MHz.
Previous 666MHz setting was most likely related to instability of early
chips/boards made before mass production.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:19:32 +02:00
Roman Yeryomin
21802ce3ab ipq806x: ipq4019: dts: remove spi chip node from ap-dk01 dtsi
All ap-dk01 boards have different spi chips, thus no point in keeping it in dtsi.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:19:19 +02:00
Roman Yeryomin
97a836318f ipq806x: ipq4019: dts: move ap-dk01 networking entries to dtsi
That is mdio/ethernet and wifi are present on all ap-dk01 boards.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:19:02 +02:00
Roman Yeryomin
45b1042a0a ipq806x: ipq4019: dts: remove counter entry from ap-dk01 boards
There is no code implementing "qcom,qca-gcnt", so no point in keeping it.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:18:51 +02:00
Roman Yeryomin
91f0345801 ipq806x: ipq4019: dts: move ap-dk01 tcsr nodes to dtsi
tcsr configuration is the same for all ap-dk01 boards

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:18:38 +02:00
Roman Yeryomin
ba9aa76a3a ipq806x: ipq4019: dts: remove crypto nodes from board dts
crypto and cryptobam are already present in dtsi used by these boards:
- fritz4040
- nbg6617
- rt-ac58u

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:18:24 +02:00
Roman Yeryomin
1abc788924 ipq806x: ipq4019: dts: move xo and timer nodes to SoC dtsi
xo and timer are common thing and it makes more sense to keep them in SoC dtsi

Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:18:11 +02:00
Roman Yeryomin
ab3ab6241f ipq806x: ipq4019: dts: fix pinctrl node name
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-10-30 01:17:58 +02:00
Yousong Zhou
f0c37f6ceb libunwind: disable building with ssp
If we enable -fstack-protector while building libunwind, function
__stack_chk_fail_local will be referred to for i386 and powerpc32
arches.  This will cause link failure because the default gcc build
specs says no link_ssp if -nostdlib is given.

The error message:

    OpenWrt-libtool: link: ccache_cc -shared  -fPIC -DPIC  .libs/os-linux.o mi/.libs/init.o mi/.libs/flush_cache.o mi/.libs/mempool.o mi/.libs/strerror.o x86/.libs/is_fpreg.o x86/.libs/regname.o x86/.libs/Los-linux.o mi/.libs/backtrace.o mi/.libs/dyn-cancel.o mi/.libs/dyn-info-list.o mi/.libs/dyn-register.o mi/.libs/Ldyn-extract.o mi/.libs/Lfind_dynamic_proc_info.o mi/.libs/Lget_accessors.o mi/.libs/Lget_proc_info_by_ip.o mi/.libs/Lget_proc_name.o mi/.libs/Lput_dynamic_unwind_info.o mi/.libs/Ldestroy_addr_space.o mi/.libs/Lget_reg.o mi/.libs/Lset_reg.o mi/.libs/Lget_fpreg.o mi/.libs/Lset_fpreg.o mi/.libs/Lset_caching_policy.o x86/.libs/Lcreate_addr_space.o x86/.libs/Lget_save_loc.o x86/.libs/Lglobal.o x86/.libs/Linit.o x86/.libs/Linit_local.o x86/.libs/Linit_remote.o x86/.libs/Lget_proc_info.o x86/.libs/Lregs.o x86/.libs/Lresume.o x86/.libs/Lstep.o x86/.libs/getcontext-linux.o  -Wl,--whole-archive ./.libs/libunwind-dwarf-local.a ./.libs/libunwind-elf32.a -Wl,--no-whole-archive  -L/var/lib/bbmnt/buildbot/slaves/dave-builder/i386_i486/build/sdk/staging_dir/target-i386_i486_musl-1.1.16/usr/lib -L/var/lib/bbmnt/buildbot/slaves/dave-builder/i386_i486/build/sdk/staging_dir/target-i386_i486_musl-1.1.16/lib -L/var/lib/bbmnt/buildbot/slaves/dave-builder/i386_i486/build/sdk/staging_dir/toolchain-i386_i486_gcc-5.4.0_musl-1.1.16/usr/lib -L/var/lib/bbmnt/buildbot/slaves/dave-builder/i386_i486/build/sdk/staging_dir/toolchain-i386_i486_gcc-5.4.0_musl-1.1.16/lib -lc -lgcc  -Os -march=i486 -fstack-protector -Wl,-z -Wl,now -Wl,-z -Wl,relro -nostartfiles -nostdlib   -Wl,-soname -Wl,libunwind.so.8 -o .libs/libunwind.so.8.0.1
    .libs/os-linux.o: In function `_Ux86_get_elf_image':
    os-linux.c:(.text+0x588): undefined reference to `__stack_chk_fail_local'
    x86/.libs/Lregs.o: In function `_ULx86_access_fpreg':
    Lregs.c:(.text+0x25b): undefined reference to `__stack_chk_fail_local'
    x86/.libs/Lresume.o: In function `_ULx86_resume':
    Lresume.c:(.text+0xdc): undefined reference to `__stack_chk_fail_local'
    collect2: error: ld returned 1 exit status
    Makefile:2249: recipe for target 'libunwind.la' failed

The snippet from gcc -dumpspecs

    %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-11-06 10:49:58 +08:00
Alexander Couzens
2e1f73a79f mt7620: image.mk: make elecom-header reproducible
elecom-header adds a timestamp dependency. Replace
the timestamps with SOURCE_DATE_EPOCH [0] variable.

[0] https://reproducible-builds.org/specs/source-date-epoch/

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-11-06 00:09:18 +01:00
Felix Fietkau
1c68fd6d75 ar71xx: fix section mismatch in TP-Link Archer C7 v4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-05 18:52:14 +01:00
Felix Fietkau
e0d58157d8 ar71xx: fix flash fast read on devices using multiple flash chips
Add a callback to allow the SPI driver to indicate which devices fast
flash read works on.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-05 18:52:12 +01:00
Kevin Darbyshire-Bryant
e0bd225269 wireguard: version bump to 0.0.20171101
Update wireguard to latest snapshot:

9fc5daf version: bump snapshot
748ca6b compat: unbreak unloading on kernels 4.6 through 4.9
7be9894 timers: switch to kees' new timer_list functions
6be9a66 wg-quick: save all hooks on save
752e7af version: bump snapshot
2cd9642 wg-quick: fsync the temporary file before renaming
b139499 wg-quick: allow for saving existing interface
582c201 contrib: add reresolve-dns
8e04be1 tools: correct type for CTRL_ATTR_FAMILY_ID
c138276 wg-quick: allow for the hatchet, but not by default
d03f2a0 global: use fewer BUG_ONs
6d681ce timers: guard entire setting in block
4bf32ca curve25519: only enable int128 if compiler support is sound
86e06a3 device: expand scope of destruct lock
e3661ab global: get rid of useless forward declarations
bedc77a device: only take reference if netns is different
7c07e22 wg-quick: remember to rewind DNS settings on failure
2352ec0 wg-quick: allow specifiying multiple hooks
573cb19 qemu: test using four cores
e09ec4d global: style nits
4d3deae qemu: work around ccache bugs
7491cd4 global: infuriating kernel iterator style
78e079c peer: store total number of peers instead of iterating
d4e2752 peer: get rid of peer_for_each magic
6cf12d1 compat: be sure to include header before testing
3ea08d8 qemu: allow for cross compilation
d467551 crypto/avx: make sure we can actually use ymm registers
c786c46 blake2: include headers for macros
328e386 global: accept decent check_patch.pl suggestions
a473592 compat: fix up stat calculation for udp tunnel
9d930f5 stats: more robust accounting
311ca62 selftest: initialize mutex in routingtable selftest
8a9a6d3 netns: use time-based test instead of quantity-based
e480068 netns: use read built-in instead of ncat hack for dmesg

Compile-tested-for: ar71xx
Run-tested-on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-11-04 18:10:21 +01:00
Mathias Kresin
8d3857a347 ath9k: unset the default LED pin if used by platform buttons
Unset the default LED gpio pin if the same gpio pin is used by a button
defined via platform button. It prevents the change of the GPIO value
on wireless up/down or wireless traffic.

Fixes: FS#1129

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-04 09:50:13 +01:00
Florian Beier
c4c72a9a42 ar71xx: fix LED config for DIR-869 A1
This fixes the LED configuration for the D-Link DIR-869 A1. In order to
support the device I probed around using an initramfs image for the
UniFi AC. Pulling GPIO 15 to low enabled the LEDs while high disabled them.
GPIO 16 set to low meant that the color was white while pulling it to high
made the color change to orange. The past code was written based upon these
findings.
However, running a flashed image I now discovered that GPIO 15 controls the
orange LEDs while GPIO 16 controls the white ones and that both are active
when low. This means that the GPIOs were inverted and one active_low was set
wrong which this patch fixes.

Behavior of the LED front after this patch is applied:

cat /sys/devices/platform/leds-gpio/leds/d-link:white:status/brightness
0   -> white LEDs are OFF
255 -> white LEDs are ON

cat /sys/devices/platform/leds-gpio/leds/d-link:orange:status/brightness
0   -> orange LEDs are OFF
255 -> orange LEDs are ON

If the brightness of both is set to 255 the LED front will be white.
If the brightness of both is set to 0 the LED front will be off.

Signed-off-by: Florian Beier <beier.florian@gmail.com>
2017-11-03 20:04:52 +01:00
Edmunt Pienkowsky
fdc7cc9907 base-files: add interval option to netdev LED trigger configuration
Add an uci option to set the interval parameter of the netdev trigger.

Signed-off-by: Edmunt Pienkowsky <roed@onet.eu>
2017-11-03 20:04:52 +01:00
Mathias Kresin
f9311e4070 ar71xx: wzr-hp-ag300h: drop unused wmac led_pin settings
The GPIOs are used for defined LEDs and therefore are ignored/unset in
the ath9k driver since 192f0a3db8. The wireless led led trigger is
added in userspace since e20965811d, which makes the
ap9x_pci_setup_wmac_led_pin() superfluous.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-03 20:04:52 +01:00
Paul Wassi
67da6a7c5e uboot-kirkwood: update to 2017.09
Upgrade uboot-kirkwood to upstream release 2017.09
Catch up with upstream and move configuration options from
simple defines to Kconfig, as otherwise dependencies would
not be resolved and code would not compile.

Tested-by: Alberto Bursi <alberto.bursi@outlook.it>
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-11-03 20:04:52 +01:00
Thibaut VARENE
dfa2930988 ar71xx: mach-rbspi: fix 74x164 support
The platform data was missing the num_registers element which is now
mandatory in linux 4.9

Without this patch, the gpio probing would fail with:
gpio gpiochip1: (74x164): tried to insert a GPIO chip with zero lines

Fixes: #1106

Tested-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-11-03 20:04:51 +01:00
Stefan Lippers-Hollmann
189433e543 ipq806x: nbg6817: sync MAC addresses to the upstream values
The ZyXEL NBG6817 calculates all MAC addresses based on the ethaddr
value stored in the U-Boot environment (0:APPSBLENV). No MAC addresses
are stored in the ART partition and the generated MAC addresses for the
wlan interfaces alternate randomly between 12:34:56:78:90:12 and
00:03:7f:12:34:56.

interface	  new/ OEM MAC	old MAC

wlan-2.4g (phy1): ethaddr	undefined
wlan-5g   (phy0): ethaddr + 1	undefined
lan             : ethaddr + 2	ethaddr
wan             : ethaddr + 3	ethaddr + 1

This patch defines stable MAC addresses for the wlan interfaces for
the first time instead of generating them at random. The previously
defined values for lan/ wan are changed to follow the settings of the
OEM firmware.

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2017-11-03 20:04:51 +01:00
Stefan Lippers-Hollmann
6e6d4f2e87 ipq806x: nbg6817: add kmod-fs-ext4 to device packages
The ZyXEL NBG6817 uses an eMMC flash for the rootfs, which is split
into the readonly squashfs and ext4 for the overlay. This adds the
required package to the device packages to allow mounting the overlay
by default.

/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,noatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
/dev/loop0 on /overlay type ext4 (rw,noatime,data=ordered)
overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work)
tmpfs on /dev type tmpfs (rw,nosuid,relatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600,ptmxmode=000)
debugfs on /sys/kernel/debug type debugfs (rw,noatime)
mountd(pid1040) on /tmp/run/blockd type autofs (rw,relatime,fd=7,pgrp=1,timeout=30,minproto=5,maxproto=5,indirect)

Before this commit, the ext4 based overlayfs could not be mounted,
which left only the tmpfs based/ volatile  emergency overlay in place.

Fixes: https://forum.lede-project.org/t/zyxel-nbg6817-flashing-from-oem/768

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2017-11-03 20:04:51 +01:00
Mathias Kresin
56189f1e32 ltq-atm: add missing dependency to kmod-ltq-adsl-*-mei
Commit 2e496876c6 fixed the generation of the depends line for external
kernel modules which makes it possible for the build system to
automatically detect this missing dependency.

This fixes the packaging of kmod-ltq-atm for the ar9, xway and
xway-legacy subtarget.

Fixes: FS#1124

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-11-03 20:04:40 +01:00
Felix Fietkau
c6f71ad30b build: fix another regression in append-dtb fix
Filter out duplicate generated code for the same dts files

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-03 16:21:24 +01:00
Felix Fietkau
fae5f02912 build: fix regression in append-dtb fix
Strip whitespace from DTS directory
Put the dependency earlier in the chain to avoid make errors

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-03 11:00:20 +01:00
Felix Fietkau
eb58eba08b uclient: update to the latest version, fixes fetch of multiple files
4b87d83 uclient-fetch: fix overloading of output_file variable

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-02 22:54:09 +01:00
Tero Jänkä
82a4b8dd6a netifd: fix dns and domain variables pollution in dhcp.script
Unmodified dns and domain variables could be needed in user script (/etc/udhcpc.user).

Signed-off-by: Tero Jänkä <tero.janka@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> (cleanup)
2017-11-02 18:20:55 +01:00
Felix Fietkau
986d9deb3b build: allow calling append-dtb from image build commands
mpc85xx uses this for firmware image files, since the dtb data is not
directly part of the kernel image. This causes build failures in the
image builder.

Fix this by adding a separate build step that runs this call earlier,
reusing the generated file for any calls from kernel or image build
commands.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-02 16:01:18 +01:00
Felix Fietkau
7e2c271a80 gcc: remove support for libgcj/java
It has been removed in gcc 7

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-02 15:58:45 +01:00
Alif M. Ahmad
23dd6db2ea include/toplevel.mk: Add xconfig target
Add xconfig target to include/toplevel.mk, so that ``make xconfig`` can
be invoked from $TOPDIR to use Qt based configuration tool to prepare
.config file.

The qconf related sources are taken from linux 4.9.13 archive.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-11-02 15:58:45 +01:00
Alif M. Ahmad
b1501a684b scripts/config: add qconf files to .gitignore
This commit adds qconf related files to .gitignore.
The files to be tracked are qconf.cc, qconf.h, and images.c.
The files to be ignored are qconf*.o, qconf*, qconf.moc, and
.tmp_qtcheck.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-11-02 15:58:45 +01:00
Alif M. Ahmad
ff43c03c14 scripts/config: Add qconf target to Makefile
qconf is kconfig UI utilizing QT toolkit. This makes it possible to use
graphical interface interaction to configure LEDE build target.

This commit adds qconf target to ./script/config/Makefile to be used by
toplevel ``make xconfig`` later.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-11-02 15:58:45 +01:00
Felix Fietkau
349bb6e663 scripts/config: add -DKBUILD_NO_NLS to CXXFLAGS
Preparation for adding C++ code which needs the same flag

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-02 15:58:45 +01:00
Alif M. Ahmad
96eb96c3f0 scripts/config: import qconf
Import qconf.cc, qconf.h, and images.c from linux kernel 4.9.13 archive.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-11-02 15:58:45 +01:00
Felix Fietkau
22d982ea00 ramips: add support for switching between 3-byte and 4-byte addressing on w25q256 flash
On some devices the flash chip needs to be in 3-byte addressing mode during
reboot, otherwise the boot loader will fail to start.
This mode however does not allow regular reads/writes onto the upper 16M
half. W25Q256 has separate read commands for reading from >16M, however
it does not have any separate write commands.
This patch changes the code to leave the chip in 3-byte mode most of the
time and only switch during erase/write cycles that go to >16M
addresses.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-11-02 15:58:45 +01:00
Hans Dedecker
f90f94d2c1 nghttp2: switch to release tarball
Switch from git to xz release tarball as there's no good reason to keep
using git when release tarballs are provided.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-11-01 22:08:14 +01:00
Baptiste Jonglez
098afa1e1b openssl: Enable assembler optimizations for aarch64
OpenSSL is built with the generic linux settings for most targets,
including aarch64.  These generic settings are designed for 32-bit CPU and
provide no assembler optmization: this is widely suboptimal for aarch64.

This patch simply switches to the aarch64 settings that are already
available in OpenSSL.

Here is the output of "openssl speed" before the optimization, with
"(...)" representing build flags that didn't change:

    OpenSSL 1.0.2l  25 May 2017
    options:bn(64,32) rc4(ptr,char) des(idx,cisc,2,int) aes(partial) blowfish(ptr)
    compiler: aarch64-openwrt-linux-musl-gcc  (...)

And after this patch, OpenSSL uses 64 bit mode and assembler optimizations:

    OpenSSL 1.0.2l  25 May 2017
    options:bn(64,64) rc4(ptr,char) des(idx,cisc,2,int) aes(partial) blowfish(ptr)
    compiler: aarch64-openwrt-linux-musl-gcc  (...)  -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM

Here are some benchmarks on a pine64+ running latest LEDE master r5142-20d363aed3:

    before# openssl speed sha aes blowfish
    The 'numbers' are in 1000s of bytes per second processed.
    type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
    sha1              3918.89k     9982.43k    19148.03k    24933.03k    27325.78k
    sha256            4604.51k    10240.64k    17472.51k    21355.18k    22801.07k
    sha512            3662.19k    14539.41k    21443.16k    29544.11k    33177.60k
    blowfish cbc     16266.63k    16940.86k    17176.92k    17237.33k    17252.35k
    aes-128 cbc      19712.95k    21447.40k    22091.09k    22258.35k    22304.09k
    aes-192 cbc      17680.12k    19064.47k    19572.14k    19703.13k    19737.26k
    aes-256 cbc      15986.67k    17132.48k    17537.28k    17657.17k    17689.26k

    after# openssl speed sha aes blowfish
    type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
    sha1              6770.87k    26172.80k    86878.38k   205649.58k   345978.20k
    sha256           20913.93k    74663.85k   184658.18k   290891.09k   351032.66k
    sha512            7633.10k    30110.14k    50083.24k    71883.43k    82485.25k
    blowfish cbc     16224.93k    16933.55k    17173.76k    17234.94k    17252.35k
    aes-128 cbc      19425.74k    21193.31k    22065.74k    22304.77k    22380.54k
    aes-192 cbc      17452.29k    18883.84k    19536.90k    19741.70k    19800.06k
    aes-256 cbc      15815.89k    17003.01k    17530.03k    17695.40k    17746.60k

For some reason AES and blowfish do not benefit, but SHA performance
improves between 1.7x and 15x.  SHA256 clearly benefits the most from the
optimization (4.5x on small blocks, 15x on large blocks!).

When using EVP (with "openssl speed -evp <algo>"):

    # Before, EVP mode
    type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
    sha1              3824.46k    10049.66k    19170.56k    24947.03k    27325.78k
    sha256            3368.33k     8511.15k    16061.44k    20772.52k    22721.88k
    sha512            2845.23k    11381.57k    19467.69k    28512.26k    33008.30k
    bf-cbc           15146.74k    16623.83k    17092.01k    17211.39k    17249.62k
    aes-128-cbc      17873.03k    20870.61k    21933.65k    22216.36k    22301.35k
    aes-192-cbc      16184.18k    18607.15k    19447.13k    19670.02k    19737.26k
    aes-256-cbc      14774.06k    16757.25k    17457.58k    17639.42k    17686.53k

    # After, EVP mode
    type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
    sha1              7056.97k    27142.10k    89515.86k   209155.41k   347419.99k
    sha256            7745.70k    29750.06k    95341.48k   211001.69k   332376.75k
    sha512            4550.47k    18086.06k    39997.10k    65880.75k    81431.21k
    bf-cbc           15129.20k    16619.03k    17090.56k    17212.76k    17246.89k
    aes-128-cbc      99619.74k   269032.34k   450214.23k   567353.00k   613933.06k
    aes-192-cbc      93180.74k   231017.79k   361766.66k   433671.51k   461731.16k
    aes-256-cbc      89343.23k   209858.58k   310160.04k   362234.88k   380878.85k

Blowfish does not seem to have assembler optimization at all, and SHA
still benefits (between 1.6x and 14.5x) but is generally slower than in
non-EVP mode.

However, AES performance is improved between 5.5x and 27.5x, which is
really impressive!  For aes-128-cbc on large blocks, a core i7-6600U
@2.60GHz is only twice as fast...

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-10-31 10:43:10 +08:00
Jonas Gorski
5302abe745 acx-mac80211: allow compilation on 4.9
acx-mac80211 compiles fine with 4.9, so no reason to not allow it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
cf9e0a59aa ar7: add kernel 4.9 support
Compile and run tested on WAG354Gv1.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
1d30869cd2 ar7: drop unused 4.1 support
Kernel 4.1 isn't support anymore anyway.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
be11b3b1c7 ar7: unbreak serial console
Serial output was broken since 3.16 for shared uarts between
kernel and login. Fix this by adding a fix sent upstream.

While at it, drop a useless patch that adds duplicate code.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
23145d4276 ar7: remove gpio character device
There are no obvious users, and any out of tree users should convert to
one of the generic APIs.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
c77ba7df09 ar7-atm: fix function signatures with expected ones
Newer kernels treat differing signatures an error, not just a warning,
so fix the signatures to match.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
fce2664f19 ar7-atm: fixup proc fixes
They were incomplete, so fix them to properly update the function signatures
to what is expected.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Jonas Gorski
889b21f954 ar7-atm: drop LINUX_VERSION tests
Minimum supported kernel is 3.18, so we don't need to test for anything
older. In addition, the API hasn't changed since then, so we don't need
to check for any kernel version at all.  This helps to keeps the amount
of changes more managable.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-29 23:41:00 +01:00
Hans Dedecker
b00cf0e58e curl: bump to 7.56.1
Refresh patches
Remove 320-curl-confopts.m4-fix-disable-threaded-resolver.patch as
integrated upstream

See https://curl.haxx.se/changes.html for the bugfixes in 7.56.0 and
7.56.1

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-29 23:07:43 +01:00
Hans Dedecker
f6c01306cb nghttp2: bump to 1.27.0
Changes in v1.27.0 :

build: Fixed accidental compiler flags concatenation for MSVC (Patch from LazyHamster) (GH-1029)
build: Reduce libxml2 version requirement to 2.6.26 (Patch from Mike Lothian) (GH-1020)
asio: Support for Windows / MinGW (Patch from Daniel Evers) (GH-1027)
h2load: Print out h2 header fields with --verbose option (GH-1015)
nghttpx: Send non-final response to HTTP/1.1 or HTTP/2 client only (GH-1016)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-29 23:05:33 +01:00
Hauke Mehrtens
1e5e005841 ltq-atm: Add missing dependency to kmod-ltq-adsl-ase-mei
Commit 2e496876c6 fixed the generation of the depends line for external
kernel modules which makes it possible for the build system to
automatically detect this missing dependency. This fixes the build bot
build of the lantiq/aes target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-29 17:01:26 +01:00
Karl Vogel
76378c6b9f build: use KERNEL_MAKE_FLAGS for kernel file compilations
The build system already defines KERNEL_CROSS which defaults to TARGET_CROSS.
Make use of this variable for kernel makefiles.

Signed-off-by: Karl Vogel <karl.vogel@gmail.com>
2017-10-29 16:17:05 +01:00
Matt Mets
851644bf5b adb: fix package description
Signed-off-by: Matt Mets <matt@blinkinlabs.com>
2017-10-29 16:16:35 +01:00
Mathew McBride
1c4415a679 layerscape: reverse changes to ndo_get_stats64
The NXP LSDK kernel backported changes for interface ndo_get_stats64
functions from mainline, this causes a compile error with
backports/mac80211, which expects the original 4.9 defintion.

As reversing the ndo_get_stats64 change signifcantly reduces the size of
patch 601, the patches that were aggregated into it have been
disaggregated.

Signed-off-by: Mathew McBride <matt@traverse.com.au>
2017-10-29 16:16:35 +01:00
Mathew McBride
6a457749a4 layerscape: Remove netfilter and LZ4 config symbols
These conflict with the kmod packages (such as nf-netlink)

Signed-off-by: Mathew McBride <matt@traverse.com.au>
[Add same changes for arm8_32b subtarget and refresh config]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-29 16:15:42 +01:00
Hans Dedecker
8b9cdebc9c arc770: mark as source-only
Mark target arc770 as source-only as it has package compile issues
(e.g. iproute2) due to the usage of uClibc.
As a prerequisite to be included in future releases the arc770 target
needs to switch either to glibc or musl.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-28 13:59:03 +02:00
Jonas Gorski
22b5e285ab build: actually fix the creation of PKG_INFO_DIR
The creation was accidentally moved to the wrong hook, fix it by moving
it to the pre hook.

Fixes: e5e5c3f5fd ("build: ensure PKG_INFO_DIR exists before trying to use it")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-28 11:57:39 +02:00
Jonas Gorski
e5e5c3f5fd build: ensure PKG_INFO_DIR exists before trying to use it
PKG_INFO_DIR is only created at the finish step of the first package
build, but kernel modules now use it at the start. Doing a parallel build
could cause a kernel module to be the first package, breaking the build.

Fix this by ensuring the directory exists.

Fixes: 2e496876c6 ("kernel: collect module symvers for external modules")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-28 11:19:25 +02:00
Jonas Gorski
471d5dc6e3 mwlwifi: switch to AutoProbe
Now that we have working module dependency generation, we can switch to
AutoProbe and let modprobe handle loading required modules.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
5df30a169c mt76: switch to AutoProbe
Now that we have working module dependency generation, we can switch to
AutoProbe and let modprobe handle loading required modules.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
3689f7c8ef mac80211: ath10k: switch to AutoProbe
Now that we have working module dependency generation, we can switch to
AutoProbe and let modprobe handle loading required modules.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
7eda0d2272 broadcom-wl: switch to AutoProbe
Now that we have working module dependency generation, we can switch to
AutoProbe and let modprobe handle loading required modules.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
5cee71904f broadcom-wl: reorder kmod build and pass EXTRA_VERSIONS
Reoder the build to build the glue module first and pass the glue module's
Module.symvers to the wl driver builds.

This allows modpost to properly store a wl_glue dependency in the driver.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
557e98ebcc broadcom-wl: define module directories
Define the module subdirs so our build system properly picks up the
Module.symvers.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
5172f799a3 ath10k-ct: switch to AutoProbe
Now that we have working module dependency generation, we can switch to
AutoProbe and let modprobe handle loading required modules.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
dd9df74dfa ath10k-ct: define module directories
Define the module subdir so our buildsystem properly picks up the
Module.symvers.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
70e7efb12f acx-mac80211: drop PKG_BUILD_DEPENDS
We already have a DEPENDS on mac80211, which should be enough to ensure
headers are available before build.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
860aba9e48 acx-mac80211: switch to AutoProbe
Now that we have working module dependency generation, we can switch to
AutoProbe and let modprobe handle loading required modules.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jonas Gorski
2e496876c6 kernel: collect module symvers for external modules
Collect module symvers for all external modules to make them available
for modpost. This fixes dependencies for most external modules.

Example:

Before:

root@LEDE:/# modinfo mt76
module:         /lib/modules/4.4.74/mt76.ko
license:        Dual BSD/GPL
depends:

After:

root@LEDE:/# modinfo mt76
module:         /lib/modules/4.4.74/mt76.ko
license:        Dual BSD/GPL
depends:        mac80211,cfg80211

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-27 13:06:15 +02:00
Jo-Philipp Wich
75021e9411 Revert "wpa_supplicant: log to syslog instead of stdout"
This reverts commit e7373e489d.

Support of "-s" depends on the CONFIG_DEBUG_SYSLOG compile time flag which
is not enabled for all build variants.

Revert the change for now until we can properly examine the size impact of
CONFIG_DEBUG_SYSLOG.

Fixes FS#1117.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-10-27 11:43:59 +02:00
Edmunt Pienkowsky
9786b53efb ramips: fix Youku-YK1 support
Remove the ephy-pins from the ethernet device tree node. The ephy-pins
are useed to controll the ePHY LEDs and this board doesn't have these.
Instead one of the ePHY pins is used in GPIO mode to control the WAN
LED.

Use the switch LED trigger to control the WAN LED. Move the power LED
handling to diag.sh to show the boot status via this LED.

Add the missing kernel packages for USB and microSD card reader to the
default package selection.

Fix the maximum image size value. The board has a 32MByte flash chip.

Fixes: FS#1055

Signed-off-by: Edmunt Pienkowsky <roed@onet.eu>
[make the commit message more verbose, remove GPIO pinmux for pins not
used as GPIOs]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-27 11:19:38 +02:00
Alex Maclean
4425fa84da tools/squashfs4: include sysmacros.h explicitly
glibc is moving to remove the include of sys/sysmacros.h from
sys/types.h, and some distros have done this early. Other libcs may
already lack this include. Include sysmacros.h explicitly.

Fixes: FS#1017

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
[refresh patches]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-27 11:19:38 +02:00
Alex Maclean
09bfca653c tools/squashfs: include sysmacros.h explicitly
glibc is moving to remove the include of sys/sysmacros.h from
sys/types.h, and some distros have done this early. Other libcs may
already lack this include. Include sysmacros.h explicitly.

Fixes: FS#1018

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-10-27 11:19:38 +02:00
Alex Maclean
855d210f65 tools/mtd-utils: include sysmacros.h explicitly
glibc is moving to remove the include of sys/sysmacros.h from
sys/types.h, and some distros have done this early. Other libcs may
already lack this include. Include sysmacros.h explicitly.

Fixes: FS#1015

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
[refresh patches]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-27 11:19:38 +02:00
Alex Maclean
4a5de1f430 tools/findutils: include sysmacros.h explicitly
glibc is moving to remove the include of sys/sysmacros.h from
sys/types.h, and some distros have done this early. Other libcs may
already lack this include. Include sysmacros.h explicitly.

Fixes: FS#1016

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-10-27 11:19:38 +02:00
Jo-Philipp Wich
d4e7af5278 mdadm: fix parameter quoting
Ensure that path defines are passed quoted to the compiler in order
to avoid cpp syntax errors.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-10-27 03:26:37 +02:00
Rosen Penev
8eadec40bd mdadm: Fix config generation
The init script generated something like "DEVICE=/dev/sda" when it should
have been generating "DEVICE /dev/sda". mdadm errors on this. Patch by jow.

Also changed the default sendmail path to /usr/sbin/sendmail. No package
in LEDE provides /sbin/sendmail. msmtp provides /usr/sbin/sendmail so use
that.

Also add a patch to fix file paths for mdadm runtime files. mdadm currently
errors on them since /run is missing. Once /run is added to stock LEDE, this
patch can be removed.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[rewrap commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-10-27 02:32:32 +02:00
Martin Wetterwald
378e1a4858 iptables: Fix target TRACE issue
The package kmod-ipt-debug builds the module xt_TRACE, which allows
users to use '-j TRACE' as target in the chain PREROUTING of the table
raw in iptables.

The kernel compilation flag NETFILTER_XT_TARGET_TRACE is also enabled so
that this feature which is implemented deep inside the linux IP stack
(for example in sk_buff) is compiled.

But a strace of iptables -t raw -I PREROUTING -p icmp -j TRACE reveals
that an attempt is made to read /usr/lib/iptables/libxt_TRACE.so, which
fails as this dynamic library is not present on the system.

I created the package iptables-mod-trace which takes care of that, and
target TRACE now works!

https://dev.openwrt.org/ticket/16694
https://dev.openwrt.org/ticket/19661

Signed-off-by: Martin Wetterwald <martin.wetterwald@corp.ovh.com>
[Jo-Philipp Wich: also remove trace extension from builtin extension list
                  and depend on kmod-ipt-raw since its required for rules]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Tested-by: Enrico Mioso <mrkiko.rs@gmail.com>
2017-10-27 02:31:33 +02:00
Rosen Penev
56342ee2bc kernel: enable CONFIG_ADVISE_SYSCALLS
Without this, posix_[fm]advise does not work. This causes issues with
btrfs-progs, which uses fadvise to drop caches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-10-27 00:45:32 +02:00
Henryk Heisig
f774d68fff ath10k-firmware: qca9888 firmware: remove board.bin
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-10-27 00:45:32 +02:00
Henryk Heisig
e917e51bf9 ar71xx: fix board.bin used by QCA9886 in Archer C58/C59/C60
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-10-27 00:45:32 +02:00
Jonas Gorski
1dcd8e7cf1 mac80211: backport fixes for fix for CVE-2017-13080
Backport two fixes for the fix of CVE-2017-13080, preventing side channel
attacks and making it work for TKIP.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-26 15:41:07 +02:00
Henryk Heisig
34958c8269 ar71xx: Archer C58/C59/C60 fix qca9886 wireless interface
This commit fix 5GHz wireless interface used in Archer C58/C59/C60v1
and set correctly MAC address on this interface.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-10-26 14:44:08 +02:00
Jonas Gorski
6f528dfbd9 treewide: do not use IMG_PREFIX in Image/Prepare
IMG_PREFIX can be modified in ImageBuilder by passing EXTRA_IMAGE_NAME
on command line, but Image/Prepare is not run in ImageBuilder. This
causes missing files when IMG_PREFIX is used for target file names in
Image/Prepare, then as source file names in Image/BuildKernel or
Image/Build.

Fix this by using a fixed output file name in Image/Prepare, and copy to
the expected file name in Image/BuildKernel instead, which is run by
ImageBuilder.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-10-26 12:26:25 +02:00
John Crispin
21e59ee3a2 hostapd: fix up ubus support
Signed-off-by: John Crispin <john@phrozen.org>
2017-10-25 21:45:31 +02:00
Kevin Darbyshire-Bryant
bca01fddb3 ramips: remove erroneous "wdt rst" DTS entries
Remove reference to pinmux group "wdt rst" on EW1200, ZBT-WG2626 and
ZBT-WG3526 devices. "wdt rst" is a pinmux function and not a pinmux
group.

Fixes the following error message during boot:

  rt2880-pinmux pinctrl: invalid group "wdt rst" for function "gpio"

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-10-25 18:48:51 +02:00
Kevin Darbyshire-Bryant
240d4b1b6e ltq-xdsl-app: script style nit
Fix missing space style nit.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-10-25 18:48:51 +02:00
Tolga Cakir
f4d4a3c0ef ipq806x: fix Zyxel NBG6817 WiFi button
Zyxel NBG6817 features a WiFi button, which becomes functional by setting
correct GPIO. It is a switch-type button, so it emits KEY_RFKILL on each ON
and OFF state. This is achieved by setting input-type to EV_SW.

Signed-off-by: Tolga Cakir <tolga@cevel.net>
2017-10-25 09:22:14 +02:00
Paul Wassi
080061c1ba ar71xx: fix LED names for GL-AR150
Add the respective colour to the LED's names for the GL-AR150 to be conform
to the kernel. Also add netdev triggers for the LAN and WAN LED.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-10-25 09:22:13 +02:00
Paul Wassi
9f7b897939 ar71xx: base-files: alphabetical reordering
Re-order the cases of base-files/* alphabetically.
Also merge some cases in diag.sh

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-10-25 09:22:13 +02:00
Mathias Kresin
605ce5f6cd mpc85xx: use image metadata
Append and enforce image metadata. Remove the device specific image
checks, they are replaced by image metadata.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 09:22:13 +02:00
Mathias Kresin
dcbbac55ed mpc85xx: use the generic board detect
Use the values populated by the generic board detect function. The
first compatible from the device tree source file will be the board
name in userspace. The model property from the device tree source file
will be the model name.

Change the board name where used in the userspace and drop the target
specific board detect, to use the generic one.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 09:22:13 +02:00
Mathias Kresin
f0e1f69f39 mpc85xx: fix TL-WDR4900 v1 compatible string
Use the vendor as it is listed in vendor.txt. Use a standard lower case
compatible string.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 09:22:13 +02:00
Chris Blake
93bfac468e mpc85xx: update HiveAP-330 dts
initramfs is not the proper name for this, as it stores a boot ramdisk
and not a filesystem. Update the name to reflect it's usage correctly.

If CMDLINE_OVERRIDE is enabled, the chosen bootargs aren't used at all.
Drop them from the device tree source file to not cause confusion.

Remove the noinitrd bootarg. Due to the empty ramdisk this parameter
isn't required any longer:

  [    0.000000] Initrd not found or empty - disabling initrd

Use the LEDE mtd-mac-address* device tree properties to set the interfaces
MAC-Addresses.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 09:22:08 +02:00
Mathias Kresin
79992d197f mpc85xx: cleanup kernel config
Move the kernel config changes added with the HiveAP 330 to the
subtarget the board belongs to instead of changing the target kernel
config.

While at it, move the TL_WDR4900_V1 config symbol to the containing
subtarget and disable boards we don't support.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 09:22:06 +02:00
Chris Blake
ec269290db mpc85xx: use new build code style
The following moves the mpc85xx target (generic & P1020) to the new
build code style.

Compile & Flash tested on an Aerohive HiveAP-330.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 09:21:54 +02:00
Mathias Kresin
dcf62cb24e ramips: don't enable usb for the WT3020-4M
That device does not have a USB port. It as the same board as the
WT3020-8M, but without soldered USB port port. Also the case lacks the
opening for the port.

Reported-by: Alberto Bursi <alberto.bursi@outlook.it>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:45:05 +02:00
Alberto Bursi
1f7f24bfb9 ramips: fix default usb support for nexx wt3020-8M
the nexx wt3020-8M has a usb 2.0 port,
add usb 2.0 support packages to its default package list.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-10-25 08:45:05 +02:00
Mathias Kresin
dacf6db2ee ltq-adsl-app: add more script notifications
Backport HANDSHAKE and TRAINING notification from ltq-vdsl-app. It
unifies the dsl led blinking pattern accross all subtargets and allows
to get the current line status from the dsl led.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:45:05 +02:00
Mathias Kresin
63c436ea4b ltq-atm: remove xrx200 special handling
The lantiq ATM driver is load for all subtargets on demand now. There
is not need to handle the xrx200 ATM driver in a special way any
longer.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:45:05 +02:00
Mathias Kresin
b02b7004f8 lantiq: xway: rename nas0/ptm0 to dsl0
This change makes it possible to configure the wan/dsl ppp interface
settings independantly from the used TC-Layer (ATM/PTM).

By using dsl0 as interface name as for the xrx200 we can get rid of a
few conditionals which were introduced because of the different default
TC-Layer in xway and xrx200.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:45:05 +02:00
Mathias Kresin
1470c79ceb ltq-adsl-app: use notification based ATM/PTM driver load
This patch removes the fixed atm/ptm driver loading and
switches to notification based driver loading.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:45:05 +02:00
Mathias Kresin
d456a888d0 ltq-adsl-app: convert init script to procd
Use the procd features for the init script.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:45:05 +02:00
Mathias Kresin
664369f6b2 lantiq: match default adsl annex and firmware
Set a default Annex matching the the annex of the selected adsl
firmware.

Set Annex B for xrx200 board which are known to have an ADSL hybrid for
Annex B.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:44:59 +02:00
Mathias Kresin
9dd2d99525 lantiq: add missing default lan interface
With removing the boards from the the default case to fix the xDSL WAN
MAC-Address, the setting for the default LAN interface wasn't added.

Fixes: 92a12c434c ("lantiq: fix avm fritz box mac addresses")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-25 08:32:00 +02:00
Florian Fainelli
5df1f4113b bcm53xx: Fix Generic profile description
Fix the sentence describing the bcm53xx generic profile.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-24 18:39:17 -07:00
Florian Fainelli
9a6e2d7d09 orion: Switch to 4.9 kernel
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-24 18:39:17 -07:00
Florian Fainelli
124cf53c87 orion: Add support for 4.9 kernel
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-24 18:39:17 -07:00
Florian Fainelli
474391573b include: Silence external kernel version checks
During the initial configuration phases, we have not set-up the kernel
source directory, which would lead to such messages:

cat:
/local/users/fainelli/openwrt/trunk/build_dir/target-x86_64_musl/linux-uml/linux-4.9.58/include/config/kernel.release:
No such file or directory

Just silence it, since it does not create a functional problem.

Fixes: 8e0e0e7d8b ("include: Determine MODULES_DIR correctly for external/git kernels")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-24 16:59:15 -07:00
Florian Fainelli
bb71847da5 uml: Switch to 4.9 kernel
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-24 15:10:23 -07:00
Florian Fainelli
fd75e4d264 uml: Add 4.9 kernel patches
102-pseudo-random-mac.patch required an update to the new style asynchronous
crypto

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-24 15:10:23 -07:00
Hans Dedecker
5e425ad424 pending-4.9: 610-netfilter_match_bypass_default_check: fix 32bit compat layer
Patch 610-netfilter_match_bypass_default_check added an extra flag IPT_F_NO_DEF_MATCH
which is copied to user space in function copy_entries_to_user. The 32bit compat
layer function was missing the same logic to copy the flag IPT_F_NO_DEF_MATCH to
user space for a 64bit kernel and 32 bit user space.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Thierry Dutre <thierry.dutre@dtsystems.be>
2017-10-24 22:15:57 +02:00
Hans Dedecker
856c53f175 pending-4.4: 610-netfilter_match_bypass_default_check: fix 32bit compat layer
Patch 610-netfilter_match_bypass_default_check added an extra flag IPT_F_NO_DEF_MATCH
which is copied to user space in function copy_entries_to_user. The 32bit compat
layer function was missing the same logic to copy the flag IPT_F_NO_DEF_MATCH to
user space for a 64bit kernel and 32 bit user space.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Thierry Dutre <thierry.dutre@dtsystems.be>
2017-10-24 22:15:47 +02:00
Hans Dedecker
02ccffff3e pending-3.18: 610-netfilter_match_bypass_default_check: fix 32bit compat layer
Patch 610-netfilter_match_bypass_default_check added an extra flag IPT_F_NO_DEF_MATCH
which is copied to user space in function copy_entries_to_user. The 32bit compat
layer function was missing the same logic to copy the flag IPT_F_NO_DEF_MATCH to
user space for a 64bit kernel and 32 bit user space.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Thierry Dutre <thierry.dutre@dtsystems.be>
2017-10-24 22:15:37 +02:00
Felix Fietkau
20d363aed3 tools/squashfs: use host cflags
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-24 13:24:05 +02:00
Felix Fietkau
b7ea14150f ar71xx: re-enable 4k sectors for the mikrotik subtargets
On RB91x (and possibly others), there is a small SPI flash to store boot
loader and configuration. It needs 4K sectors to be able to write the
configuration using rbcfg

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-24 13:24:05 +02:00
Felix Fietkau
7c09fa4a74 ar71xx: fix mikrotik routerboard nand driver issues with linux 4.9
The mtd device is now embedded inside the nand chip data structure

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-24 13:24:04 +02:00
Felix Fietkau
65da6f9ca1 ar71xx: fix secondary gpio controller base values
In 4.9, gpio count is rounded up to 32 due to the use of bgpio in the
ath79 gpio controller driver.
Fix base values in mach files to account for that

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-24 13:24:04 +02:00
Julien Dusser
8d9ff6b6f7 ar71xx: lzma loader use LTO
Change the Makefile to use LTO for better code optimisations. Gains are
very low, only 270 bytes saved, but it's only Makefile changes.

Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2017-10-24 13:24:04 +02:00
Julien Dusser
8c5702f2a0 ar71xx: fix lzma loader performance issues
Some bootloaders set a cache cohenrency to a very slow mode. Use code from
Linux kernel to set it to "Cacheable, noncoherent, write-back, write
allocate".

Perfomance impact is significant on TP-Link EAP245 board, kernel
decompression time fall from 33 seconds to less than 1.

Signed-off-by: Julien Dusser <julien.dusser@free.fr>
2017-10-24 13:24:04 +02:00
Stefan Oberhumer
06e41056aa libs/lzo: Reenable unaligned access on ARM, PPC, ...
Due a compiler bug on ARM targets
 ( https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64516 )
unaligned access was disabled on all targets other than i386 and
x86_64 with commit 061319ec3d .

A fix has been added to lzo-2.09 so it is not necessary to disable
unaligned access within the Makefile anymore.

Signed-off-by: Stefan Oberhumer <stefan@obssys.com>
2017-10-24 13:24:04 +02:00
Florian Larysch
f28b3bb56a kernel: fixup KARCH for powerpc64 builds
The kernel calls both ppc64 and ppc32 "powerpc", so we need to fixup
LINUX_KARCH when building with ARCH=powerpc64.

Signed-off-by: Florian Larysch <fl@n621.de>
2017-10-24 13:24:04 +02:00
Florian Larysch
7ea6261b43 config: set ARCH if powerpc64 is selected in the configuration
Signed-off-by: Florian Larysch <fl@n621.de>
2017-10-24 13:24:04 +02:00
Florian Larysch
56ed89f078 target: add cpu flags for powerpc64
Signed-off-by: Florian Larysch <fl@n621.de>
2017-10-24 13:24:04 +02:00
Florian Larysch
0de93311e1 toolchain: use glibc for powerpc64 builds
Neither uClibc nor musl currently have working support for powerpc64 in
big endian mode. Thus, default to using glibc for this architecture.

Signed-off-by: Florian Larysch <fl@n621.de>
2017-10-24 13:24:04 +02:00
Florian Larysch
9e91d32718 toolchain: remove powerpc64 feature
The powerpc64 feature flag was introduced with the PS3 support, which
has been removed for quite a while and is now unused. Remove it and the
special biarch handling it triggered during the toolchain build.

Signed-off-by: Florian Larysch <fl@n621.de>
2017-10-24 13:24:04 +02:00
Florian Larysch
555985ac90 include/site: add powerpc64 config
Signed-off-by: Florian Larysch <fl@n621.de>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-24 13:24:04 +02:00
Florian Fainelli
1a53315951 uboot-sunxi: Backport fix for stale CONFIG_SUNXIG_GMAC references
This backports the upstream commit fixing stale references to
CONFIG_SUNXI_GMAC which have been later replaced by CONFIG_SUN7I_GMAC.
This fixes the designware MAC pinmuxing on e.g: Lamobo R1.

Refresh patches while we are at it.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-23 18:42:25 -07:00
Florian Fainelli
7f0a32e21c bcm53xx: Fix SmartRG SR400AC initramfs image
The SmartRG SR400AC CFE does not accept a TRX image, just a normal
binary image.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-23 18:39:29 -07:00
Florian Fainelli
818f36aa14 include: Include new location for DT bindings
Starting with commit d5d332d3f7e8 ("devicetree: Move include prefixes
from arch to separate directory") included in 4.12 and newer relocated
the dt-bindings directory, so account for that while passing CPPFLAGS
before DTC runs.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-10-23 18:39:29 -07:00
Stijn Tintel
834810617e kernel: bump 4.9 to 4.9.58
Refresh patches.
Compile-tested: ar71xx, octeon, x86/64.
Runtime-tested: octeon, x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-23 17:23:34 +03:00
Stijn Tintel
683350873e kernel: add kmod-iio-bmp280
This driver supports the Bosch Sensortec BMP180/BMP280 pressure and
temperature sensors. It also supports the BME280 sensors with an
additional humidity channel.

Tested I2C and SPI modes with a BME280 sensor on a Raspberry Pi Zero W.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-23 12:50:30 +03:00
Stijn Tintel
19a7f44a5a kernel: move IIO modules to iio.mk
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-23 12:50:30 +03:00
Stijn Tintel
a48e5bea12 brcm2708: restore /boot/config.txt before reboot
The Raspberry Pi bootloader reads configuration values from config.txt
in the boot partition. This file allows to specify the amount of memory
to assign to the GPU, the license keys for hardware MPEG-2 and VC-1
decoding, Device Tree parameters and overlays, and lots of other things.

Since sysupgrade only restores the configuration after booting the newly
flashed image, these values will not be active, even if sysupgrade would
save /boot/config.txt. To solve this, add the file to the files to be
backed up, and restore it in platform_copy_config, before reboot.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-23 12:50:30 +03:00
Hauke Mehrtens
f7a6fd3153 ar71xx: deactivate some boards with too small kernel partitions
This affects the following boards:
 * dr344
 * archer-c58-v1
 * archer-c60-v1
 * tl-wr902ac-v1
 * tl-wr942n-v1
 * ubnt-uap-pro
 * ubnt-unifi-outdoor-plus

The build fails for any of these boards because the resulting kernel
image will not fit into the kernel partition.

When CONFIG_KERNEL_KALLSYMS  is not set it could be that the kernel will
fit onto the board again, this is the case for release images.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-22 23:15:11 +02:00
Hauke Mehrtens
c84b7eaedd ar71xx: use kernel 4.9 by default
Kernel 4.9 support was added about 2 weeks ago and we haven't seen any
major regression so far. This patch was not ported to kernel 4.9, this
needs some additional work:
821-serial-core-add-support-for-boot-console-with-arbitr.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-22 15:22:51 +02:00
Hauke Mehrtens
8464d2f64a at91: remove unused at91part driver
There is no patch in the kernel 4.4 and 4.9 patches which adds this
driver to the build system.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-22 15:17:42 +02:00
Hauke Mehrtens
95627665cb at91: update to kernel 4.9
This brings the at91 target to kernel 4.9.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Tested-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-22 15:15:55 +02:00
Hauke Mehrtens
f73ed33be1 kernel: add config option
When the kmod-at91-adc package is activated for the at91 target the new
option CONFIG_AT91_SAMA5D2_ADC is selectable and not handled. Add this
option to the kernel 4.9 configuration.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-22 14:49:07 +02:00
Hans Dedecker
fbde9ac718 netifd: bump to git HEAD version (FS#1037)
0f96606 proto: add point-to-point IPv4 address config support (FS#1037)
1ee788d ubus: display the point-to-point IPv4 address

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-19 21:48:49 +02:00
Felix Fietkau
9887afb1af ar71xx: add support for TP-LINK Archer C7 v4
TP-Link Archer C7 v4 is a dual-band AC1750 router, based on Qualcomm/Atheros
QCA9561+QCA9888.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 3T3R 5 GHz
- 5x 10/100/1000 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Flash instruction:
1. Upload lede-ar71xx-generic-archer-c7-v4-squashfs-factory.bin via Web interface

Flash instruction using TFTP recovery:
1. Set PC to fixed ip address 192.168.0.66
2. Download lede-ar71xx-generic-archer-c7-v4-squashfs-factory.bin
and rename it to ArcherC7v4_tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Flash instruction under U-Boot, using UART:

1. tftp 0x81000000 lede-ar71xx-...-sysupgrade.bin
2. erase 0x9f040000 +$filesize
3. cp.b $fileaddr 0x9f040000 $filesize
4. reset

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-19 16:14:19 +02:00
Felix Fietkau
184c92e7fb uboot-envtools: add support for Nokia WI2A-AC200i
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-19 12:27:44 +02:00
Felix Fietkau
2c9aff289e ar71xx: add support for Nokia WI2A-AC200i
Specifications:
 - SoC: Qualcomm QCA9558 (720 MHz)
 - RAM: 256MB
 - Storage: 1MB NOR, 128 MB NAND flash
 - Ethernet: 1x1000M

Installation:
 1. Connect to serial console on the board
 2. Boot initramfs image over u-boot
 3. Copy image to the device and run sysupgrade

Installation without serial console is not supported at this time

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-19 12:27:42 +02:00
Hauke Mehrtens
2af10c30fe brcm47xx: use kernel 4.9 by default
Kernel 4.9 is now working on the brcm47xx boards, we just recently fixed
the problem that some boards did not boot at all, by changing the memory
regions used to relocate the kernel to in the loader.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-18 23:27:17 +02:00
Hauke Mehrtens
db4550c4c8 broadcom-wl: fix compile with kernel 4.9
ENOENT could not be found by the compiler when compiling again kernel
4.9.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-18 23:26:15 +02:00
Felix Fietkau
7c42f15c24 kernel: fix ftrace support on 4.9
When porting the kernel patches from 4.4 to 4.9, they were missing a
small chunk that ensures that ftrace sections are kept in the vmlinux
image, even when linked with --gc-sections

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-18 22:59:05 +02:00
Mathias Kresin
36d2884d55 lantiq: ARV752DPW22: fix wireless mac address
The ARV752DPW22 has the same generic mac address in the EEPROM as it
was already noticed for other lantiq boards using a ralink wireless.

Use the base mac address from the boardconfig partition as it is done
by the stock firmware.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-18 22:12:45 +02:00
Mathias Kresin
a02a866519 lantiq: ARV752DPW22: set correct wireless led trigger
The ARV752DPW22 has a ralink based wireless and can not use the ath9k
only phy0tpt trigger.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-18 22:12:45 +02:00
Hauke Mehrtens
48dcd2657f omap: clean up configuration
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Alexander Couzens <lynxis@fe80.eu>
2017-10-18 21:46:05 +02:00
Hauke Mehrtens
44b9175d7c omap: Add support for kernel 4.9
This adds support for kernel 4.9 and replaces the kernel 4.4 support.

These are lynxis test results:
panda-board a3 - works, but no network, but master/4.4 doesn't have network either.
panda-board-a4 - u-boot SPL refuse to boot.
beaglebone-black - works
beagle-board - usb attached network doesn't come up and I doesn't have a serial around.
beagle-board-xm - ToDo: image code is missing.

Kernel 4.4 does not look better, so we merge this anyway.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Alexander Couzens <lynxis@fe80.eu>
2017-10-18 21:45:49 +02:00
Kevin Darbyshire-Bryant
398edca82e kernel: bump 4.4 to 4.4.93
No patch refresh required.

Compile-tested for ar71xx - Archer C7 v2
Runtime-tested on  ar71xx - Archer C7 v2

Fixes the following CVEs:

- CVE-2017-15265
- CVE-2017-0786

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-10-18 19:44:14 +03:00
Kevin Darbyshire-Bryant
886d66abcd kernel: bump 4.9 to 4.9.57
Refresh patches.
Compile-tested for ar71xx - Archer C7 v2
Runtime-tested on  ar71xx - Archer C7 v2

Fixes the following CVEs:

- CVE-2017-7518
- CVE-2017-0786
- CVE-2017-1000255
- CVE-2017-12188
- CVE-2017-15265

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-10-18 19:44:09 +03:00
Stijn Tintel
060e37567e hostapd: bump PKG_RELEASE
The previous commit did not adjust PKG_RELEASE, therefore the
hostapd/wpad/wpa_supplicant packages containing the AP-side workaround
for KRACK do not appear as opkg update.

Bump the PKG_RELEASE to signify upgrades to downstream users.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-18 13:02:12 +03:00
Jason A. Donenfeld
f6c4a9c045 wireguard: version bump to 0.0.20171017
This is a simple version bump. Changes:

  * noise: handshake constants can be read-only after init
  * noise: no need to take the RCU lock if we're not dereferencing
  * send: improve dead packet control flow
  * receive: improve control flow
  * socket: eliminate dead code
  * device: our use of queues means this check is worthless
  * device: no need to take lock for integer comparison
  * blake2s: modernize API and have faster _final
  * compat: support READ_ONCE
  * compat: just make ro_after_init read_mostly

  Assorted cleanups to the module, including nice things like marking our
  precomputations as const.

  * Makefile: even prettier output
  * Makefile: do not clean before cloc
  * selftest: better test index for rate limiter
  * netns: disable accept_dad for all interfaces

  Fixes in our testing and build infrastructure. Now works on the 4.14 rc
  series.

  * qemu: add build-only target
  * qemu: work on ubuntu toolchain
  * qemu: add more debugging options to main makefile
  * qemu: simplify shutdown
  * qemu: open /dev/console if we're started early
  * qemu: phase out bitbanging
  * qemu: always create directory before untarring
  * qemu: newer packages
  * qemu: put hvc directive into configuration

  This is the beginning of working out a cross building test suite, so we do
  several tricks to be less platform independent.

  * tools: encoding: be more paranoid
  * tools: retry resolution except when fatal
  * tools: don't insist on having a private key
  * tools: add pass example to wg-quick man page
  * tools: style
  * tools: newline after warning
  * tools: account for padding being in zero attribute

  Several important tools fixes, one of which suppresses a needless warning.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-10-17 19:43:06 +02:00
Stijn Tintel
c5f97c9372 hostapd: add wpa_disable_eapol_key_retries option
Commit 2127425434 introduced an AP-side
workaround for key reinstallation attacks. This option can be used to
mitigate KRACK on the station side, in case those stations cannot be
updated. Since many devices are out there will not receive an update
anytime soon (if at all), it makes sense to include this workaround.

Unfortunately this can cause interoperability issues and reduced
robustness of key negotiation, so disable the workaround by default, and
add an option to allow the user to enable it if he deems necessary.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-17 17:25:05 +03:00
Stijn Tintel
2127425434 hostapd: backport extra changes related to KRACK
While these changes are not included in the advisory, upstream
encourages users to merge them.
See http://lists.infradead.org/pipermail/hostap/2017-October/037989.html

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-17 17:24:47 +03:00
Felix Fietkau
3db529d5cc Revert "ar71xx: Add GRO support to ag71xx"
This reverts commit 13e5e47369.
This commit causes a severe regression in LAN->WAN routing performance
for several devices. This appears to be caused by the extra requirement
to validate the SKB checksum early in the rx path, which the ethernet
hardware does not do

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-17 16:03:11 +02:00
Stijn Tintel
5fff2f44d5 hostapd: bump PKG_RELEASE
The previous CVE bugfix commit did not adjust PKG_RELEASE, therefore the
fixed hostapd/wpad/wpa_supplicant packages do not appear as opkg update.

Bump the PKG_RELEASE to signify upgrades to downstream users.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-17 02:13:34 +03:00
Stijn Tintel
2f701194c2 mac80211: backport kernel fix for CVE-2017-13080
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-17 01:56:31 +03:00
Hauke Mehrtens
61048c9011 at91: fix legacy build
The build system took the DTB_SIZE definition from Default and not from
production-dtb under some conditions. Move the size definitions to
Default now as it is only used in production-dtb anyway.

Thanks Mathias Kresin for helping me with this.

Fixes: c2f052acae ("at91: convert boards to generic build target")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-16 23:05:54 +02:00
Hauke Mehrtens
a29848c671 ppp: make the patches apply correctly again
This fixes a compile problem recently introduced by me.

Fixes: f40fd43ab2 ("ppp: fix compile warning")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-16 20:08:56 +02:00
Jason A. Donenfeld
699c6fcc31 wireguard: add wireguard to base packages
Move wireguard from openwrt/packages to base a package.

This follows the pattern of kmod-cake and openvpn. Cake is a fast-moving
experimental kernel module that many find essential and useful. The
other is a VPN client. Both are inside of core. When you combine the two
characteristics, you get WireGuard. Generally speaking, because of the
extremely lightweight nature and "stateless" configuration of WireGuard,
many view it as a core and essential utility, initiated at boot time
and immediately configured by netifd, much like the use of things like
GRE tunnels.

WireGuard has a backwards and forwards compatible Netlink API, which
means the userspace tools should work with both newer and older kernels
as things change. There should be no versioning requirements, therefore,
between kernel bumps and userspace package bumps.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Felix Fietkau <nbd@nbd.name>
2017-10-16 14:01:21 +03:00
Felix Fietkau
fe3c3aed44 ramips: fix typo in MT7621 NAND driver
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-16 12:15:17 +02:00
Felix Fietkau
bbda81ce30 hostapd: merge fixes for WPA packet number reuse with replayed messages and key reinstallation
Fixes:
- CERT case ID: VU#228519
- CVE-2017-13077
- CVE-2017-13078
- CVE-2017-13079
- CVE-2017-13080
- CVE-2017-13081
- CVE-2017-13082
- CVE-2017-13086
- CVE-2017-13087
- CVE-2017-13088

For more information see:
https://w1.fi/security/2017-1/wpa-packet-number-reuse-with-replayed-messages.txt

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-16 12:01:57 +02:00
Hauke Mehrtens
0d5c1d7f23 malta: activate some more standard kernel features
These options where deactivated in the malta kernel, take the default
options form the generic kernel configuration now to better match the
other targets.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-15 14:54:29 +02:00
Hauke Mehrtens
19f0c7d11c malta: upgrade to kernel 4.9
This brings the MIPS malta target to kernel 4.9.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-15 14:22:01 +02:00
Hauke Mehrtens
8fa9b2ce89 malta: add 64 bit qemu commands to README
This shows how to boot up the 64 bit images.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-15 14:19:49 +02:00
Hauke Mehrtens
f40fd43ab2 ppp: fix compile warning
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-15 14:19:49 +02:00
Martin Schiller
2dc9c8206b lantiq: xrx200: rename nas0/ptm0 to dsl0
This change makes it possible to configure the wan/dsl ppp interface
settings independantly from the used TC-Layer (ATM/PTM).

Now you can move a device from an ADSL/ATM port to an VDSL/PTM port
without any configuration changes for example.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
[use the dsl0 interface name for the default netdev trigger in 01_led,
add ip dependency]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-15 11:11:29 +02:00
Hauke Mehrtens
08bbb804c8 mac80211: ath6kl: add missing usb-core dependency to kmod-ath6kl-usb
This fixes a build problem with many targets.

Fixes 618ed77a17 ("mac80211: add ath6kl kernel modules")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-15 10:53:46 +02:00
Hauke Mehrtens
aba071d818 binutils: add version 2.29.1
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-15 00:24:22 +02:00
Christian Lamparter
81e28be824 kernel: kmod-macsec module for 4.9
MACsec/IEEE 802.1AE is useful to secure communication to and
from endpoints at Layer 2.

Starting with 4.6, the linux kernel provides a universal
macsec driver for authentication and encryption of traffic
in a LAN, typically with GCM-AES-128, and optional replay
protection.

http://standards.ieee.org/getieee802/download/802.1AE-2006.pdf

Note:
LEDE can utilize MACsec with a static connectivity association
key (static PSK) with the ip-full package installed.
<http://man7.org/linux/man-pages/man8/ip-macsec.8.html>

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-10-15 00:24:22 +02:00
Daniel Engberg
e4b6900fd6 libs/libnl: Update to 3.3.0
Update libnl to 3.3.0
Import patches to fix compilation
Source: https://git.busybox.net/buildroot/tree/package/libnl
Source: https://gitweb.gentoo.org/proj/musl.git/diff/dev-libs/libnl/files/libnl-3.3.0_rc1-musl.patch?id=48d2a287
Use more automatic toolchain logic

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-10-15 00:24:22 +02:00
Florian Eckert
2e6d4c362b package/kernel/leds-apu2: add apu3 board detection
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-10-15 00:24:22 +02:00
Florian Eckert
2af41487e0 package/kernel/leds-apu2: fix whitespaces
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-10-15 00:24:22 +02:00
Daniel Engberg
a7e4aec3d9 toolchain/glibc: Update to 2.26
Update glibc to 2.26

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-10-15 00:24:22 +02:00
Ryan Mounce
1cd3e9c07c mvebu: clean up ClearFog Base package selection
It is unclear why so many packages are selected for ClearFog Base compared
to its big brother, and there is no reason to not append metadata for Base.

Tidy this up as the only hardware difference between Base/Pro is the
presence of a switch and a different board name / device tree.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-10-15 00:24:22 +02:00
Ryan Mounce
99cf825b06 mvebu: Fix ClearFog sysupgrade board definitions
Remove redundancy for platform_do_upgrade_clearfog
Fix platform_copy_config_clearfog to reflect -base/-pro split

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-10-15 00:24:22 +02:00
Ryan Mounce
233633873b mvebu: Sort 02_network alphabetically
Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-10-15 00:24:22 +02:00
Yunhui Fu
0f061af98e wpan-tools: add the wpan-ping to test the 6LoWPAN network
This patch adds the help tool wpan-ping to test the 6LoWPAN
network to help the user debug network problem.

Signed-off-by: Yunhui Fu <yhfudev@gmail.com>
2017-10-15 00:24:22 +02:00
Ryan Mounce
d67979b9d6 toolchain/gcc: update 5.x to 5.5.0
This is the final bugfix release in the gcc-5 series.

Compile and run tested on macOS 10.13 (Xcode 9), mvebu/ar71xx.

Removed redundant patch for macOS (backported upstream by yours truly)

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-10-15 00:24:22 +02:00
Ben Whitten
f81b353c9f at91: add support for the WB50N module from Laird
This module from Laird includes the following:
  - CPU Atmel SoC SAMA5D31
  - Wifi QCA6004
  - Bluetooth CSR8811
  - RAM 64MB LPDDR
  - FLASH 128MB

The flash is a dual image layout, kernel a/b, rootfs a/b, and a user
partition.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-15 00:24:21 +02:00
Ben Whitten
86d037e4a2 at91: add support for the WB45N module from Laird
This module from Laird includes the following:
  - CPU Atmel SoC ARM926EJS
  - Wifi AR6003
  - Bluetooth CSR8510
  - RAM 64MB LPDDR
  - FLASH 128MB

The flash is a dual image layout, kernel a/b, rootfs a/b, and a user
partition.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-15 00:24:21 +02:00
Ben Whitten
618ed77a17 mac80211: add ath6kl kernel modules
Allow board to include the ath6kl kernel modules.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-15 00:24:21 +02:00
Ben Whitten
76662637fa linux-firmware: add ath6k firmware to package
Systems which include the ath6k chipset need to have the firmware included
in the image.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-15 00:24:21 +02:00
Ben Whitten
a7c8112a0f at91: separate MKUBIFS opts to defaults in the sub target
Instead of applying global defaults based on selected board, transition
to using a per board setting for UBIFS and UBINIZE.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-15 00:24:21 +02:00
Ben Whitten
3b6f9978d3 at91: refresh kernel config, enable UBI block and DMA
The platform generates squashfs images in a UBI block but misses the
kernel module to be able to mount the block.
DMA is also enabled to allow systems which include them in the DTS to
use it.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2017-10-15 00:24:21 +02:00
Lucian Cristian
b4fefe7b6e sunxi: backport support for Allwinner Security System PRNG
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-10-15 00:24:21 +02:00
Hans Dedecker
1cec4d4ef0 busybox: provide "ip"
Let busybox provide "ip" as it supports the ip applets link, address,
route, rule and neighbor

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-14 20:23:55 +02:00
Robert Marko
443abb8ccd ar71xx: add support for Mikrotik RB750P-PBr2
Specifications:
- SoC: Qualcomm QCA9531 (650MHz)
- RAM: 64MB
- Storage: 16MB NOR SPI flash
- Ethernet: 5x100M (1 PoE in, 4 PoE out)
- Outdoor use ready

This ethernet router is based on the same platform as the hEX PoE lite.

Installation

1. login to the Mikrotik WebUI to backup your licence keys
2. setup a DHCP/BOOTP Server with:
     * DHCP-Option 66 (TFTP server name) pointing to a local TFTP
       Server within the same subnet of the DHCP range
     * DHCP-Option 67 (Bootfile-Name) matching the initramfs filename
       of the to be booted image
3. connect the port labled internet to your local network
4. keep the reset button pushed down and power on the board

The board should load and start the initramfs image from the TFTP
Server. Login as root/without password to the started LEDE via ssh
listing on IPv4 address 192.168.1.1. Use sysupgrade to install LEDE.

Revert to RouterOS

Use the "rbcfg" package on in LEDE:
  * rbcfg set boot_protocol bootp
  * rbcfg set boot_device ethnand
  * rbcfg apply

Open Netinstall and reboot routerboard. Now netinstall sees routerboard
and you can install RouterOS. If NetInstall gets stuck on Sending offer
just wait for it to timeout and then close and open Netinstall again.

Click on install again.

In order for RouterOS to function properly, you need to restore license
for the device. You can do that by including license in NetInstall

Signed-off-by: Robert Marko <robimarko@gmail.com>
2017-10-14 10:48:29 +02:00
Daniel Kucera
6f008af3f0 ramips: add support for Kimax U25AWF-H1
Kimax U-25AWF-H1 is is a 2,5" HDD Enclosure with Wi-Fi/Eth conection
and battery, based on MediaTek MT7620A.

Patch rewritten from: https://forum.openwrt.org/viewtopic.php?pid=305643

Specification:

- MT7620A CPU
- 64 MB of RAM
- 16 MB of FLASH
- 802.11bgn WiFi
- 1x 10/100 Mbps Ethernet
- USB 2.0 Host
- UART for serial console

Flash instruction:
1. Download lede-ramips-mt7620-u25awf-h1-squashfs-sysupgrade.bin
2. Open webinterface a upgrade
3. After boot connect via ethernet to ip 192.168.1.1

Signed-off-by: Daniel Kucera <daniel.kucera@gmail.com>
[fix reset button gpio, don't add a lan/wan vlan config for single
port board, add -H1 suffix do make sure that this revision of the
board is supported/tested]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-14 10:48:29 +02:00
Chris Blake
f2b7d9dc1c mpc85xx: Add Aerohive HiveAP-330 Access Point
The following adds the Aerohive HiveAP-330 Access Point to LEDE under
the mpc85xx/p1020 subtarget.

Hardware:
- SoC: Freescale P1020NSE2DFB
- NAND: Intel JS28F512M29EWH 64MB
- Memory: 2x ProMOS V59C1G01168QBJ3 128MB (Total of 256MB)
- 2.4GHz WiFi: Atheros AR9390-AL1A
- 5.0GHz WiFi: Atheros AR9390-AL1A
- Eth1: Atheros AR8035-A PoE
- Eth2: Atheros AR8035-A
- TPM: Atmel AT97SC3204
- LED Driver: TI LP5521

Flashing:
1. Hook into UART (9600 baud) and enter U-Boot. You may need to enter a
password of administrator or AhNf?d@ta06 if prompted.
2. Once in U-Boot, tftp boot the initramfs image:
    dhcp;
    tftpboot 0x1000000 192.168.1.101:lede-
mpc85xx-p1020-hiveap-330-initramfs.zImage;
    tftpboot 0x6000000 192.168.1.101:lede-mpc85xx-p1020-hiveap-330.fdt;
    bootm 0x1000000 - 0x6000000;
3. Once booted, scp over the sysupgrade file and sysupgrade the device
to flash LEDE to the NAND.
    sysupgrade /tmp/lede-mpc85xx-p1020-hiveap-330-sysupgrade.img

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-10-14 01:23:47 +02:00
Chris Blake
8cd6686ef8 mpc85xx: Add cmdline override patch
This patch adds a new kernel option called CONFIG_CMDLINE_OVERRIDE. This
setting is for devices with locked down u-boot environments, where users
are unable to change the default bootargs. When set, the fdt driver will
propagate the cmdline for the kernel from chosen/bootargs-override
instead of chosen/bootargs as long as it exists within the DTB.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-10-14 01:21:52 +02:00
Chris Blake
a92f73e922 mpc85xx: Enable initramfs for p1020 subtarget
The following patch enables building of initramfs images by default for
the P1020 subtarget in mpc85xx.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-10-14 01:19:35 +02:00
Sandeep Sheriker Mallikarjun
1b368f1641 at91: Add ext4 filesystem
Add ext4 filesystem for creating sdcard image with ext4 rootfs and
removing ext2 as it superset of ext4.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-10-14 00:33:34 +02:00
Sandeep Sheriker Mallikarjun
43a0b72c3c at91: Enable SDHCI for sama5 in default config
Enabled SDHCI for sama5 in kernel default config and this is needed
to mount sdcard rootfs partition during boot.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-10-14 00:33:34 +02:00
Sandeep Sheriker Mallikarjun
0a919afae4 at91bootstrap: remove manual copy of binaries to BIN_DIR
removed copying of binaries to BIN_DIR during install and using
default/install to install binaries to BIN_DIR folder.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-10-14 00:33:34 +02:00
Sandeep Sheriker Mallikarjun
cc443e894a at91bootstrap: Add BUILD_SUBTARGET variable
Added sama5 to BUILD_SUBTARGET variable.This will populate at91bootstrap
menu options in bootloader menu only when SAMA5 devices are selected as
SUBTARGET and to avoid showing up this menu when legacy device is
selected as SUBTARGET and fixed typo mistake: sama5d3 -> sama5d2.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-10-14 00:33:34 +02:00
Hauke Mehrtens
c4f720b19a at91: refresh kernel configuration
This was done by running "make kernel_oldconfig" and
"make kernel_oldconfig CONFIG_TARGET=subtarget"

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-14 00:32:39 +02:00
Hauke Mehrtens
b4c3570666 uboot-at91: multiple build fixes
This fixes the following problems:
 * Add BUILD_DEVICES for legacy subtarget
 * Use features from u-boot.mk for sama5 subtarget This is mainly done
   by changing the prefix from uboot to U-Boot. This makes them depend
   on the sama5 subtarget and not selectable for the legacy subtarget
   any more

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-14 00:13:35 +02:00
Kevin Darbyshire-Bryant
f251a795f2 kernel: bump 4.4 to 4.4.92
No patch refresh changes required.

Compile tested for: ar71xx Archer C7 v2
Run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-10-14 00:13:35 +02:00
Hans Dedecker
db18cee2d7 iproute2: bump to 4.13
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-13 21:48:44 +02:00
Felix Fietkau
5bd006aa26 mac80211: fix tx power regression
Revert an accidental change that was introduced by having an old version
of the patch in my git tree, which was merged in 609208597b

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-13 20:28:47 +02:00
Christian Lamparter
7ffb707576 dnsmasq: add listen_address parameter
This patch adds a parser for the uci representation of
dnsmasq's "-a | --listen-address" option.

In summary, this option forces dnsmasq to listen on the
given IP address(es). Both interface and listen-address
options may be given, in which case the set of both
interfaces and addresses is used.

Note that if no interface option is given, but listen_address is,
dnsmasq will not automatically listen on the loopback interface.
To achieve this, the loopback IP addresses, 127.0.0.1 and/or ::1
must be explicitly added.

This option is useful for ujailed dnsmasq instances, that would
otherwise fail to work properly, because listening to the
"This host on this network" address (aka 0.0.0.0 see rfc1700 page 4)
may not be allowed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> (PKG_RELEASE increase)
2017-10-13 16:54:58 +02:00
Rafał Miłecki
2cd32a3304 kernel: add fix for bgmac with B50212E B1 PHY
This PHY requires some extra programming to work reliably with all
devices. Backport upstream fix for it.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-10-13 13:54:22 +02:00
Felix Fietkau
878456caf6 mt76: update to the latest version
e781569 update to latest mac80211/cfg80211 API changes
37654d7 mt76x2: fix tx status ampdu length corner case

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-13 11:45:57 +02:00
Felix Fietkau
609208597b mac80211: update to wireless-testing 2017-10-06
Rework the code to get rid of some extra kernel module dependencies
introduced in the last update.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-13 11:45:57 +02:00
Hauke Mehrtens
efbd4e721d ath10k-ct: activate user space firmware loading again
This backports a patch from kernel 4.14 to the ath10k-ct version based
on kernel 4.13.
Some devices are using a user space script to load the calibration data
from the flash and this was not trigged any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-12 23:40:27 +02:00
Ben Greear
3888e77c1c ath10k-ct driver: use dma_alloc_coherent, 4.13 based driver
This should help ath10k work on systems with little or no IOMMU
memory.  apu2 can boot two 9888 NICs now, for instance.  From
upstream patch by Adrian Chadd.

And, start building the 4.13 based CT ath10k driver.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-10-12 23:40:27 +02:00
Ben Greear
d8c559d614 ath10k-ct firmware: Tx-hang and EAPOL handling fixes for wave-2 firmware.
Changes since last LEDE release include:

  *  Fix key-setting bug that broke sending the EAPOL 2/4 in some cases.  This was a
     bug I introduced some time back while trying to fix .11r and simplify the key
     handling logic.  (Patch to wpa_supplicant fixed the race with sending the 4/4
     and setting the key...un-patched supplicant will still have this race and the 4-way
     auth will not work as reliably.)

  *  Increase amount of active-tids that can be scheduled.  This fixes a tx-stall
     seen with many station vdevs.

  *  Fix bug in upstream code that would cause the maximum peer to never be scheduled
     for tx.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-10-12 23:40:27 +02:00
Yangbo Lu
67c0c5978d layerscape: only support 64-bit for ls1088ardb/ls2088ardb
This is no requirement and plan to support 32-bit for ls1088ardb
and ls2088ardb. Current 32-bit firmware for them couldn't work,
so only keep 64-bit support for these two boards in menuconfig.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-12 23:40:27 +02:00
Yangbo Lu
4f3ddcb0e9 layerscape: fix compile issue for usb ehci-fsl driver
When build firmware for layerscape target with CONFIG_ALL_NONSHARED=y,
there would be a compile issue of usb ehci-fsl driver. Actually this
driver was for PPC platforms initially and was not ready for non-PPC
now, but a kernel kconfig patch removed PPC dependency for it. So that
kernel patch should be reverted.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-12 23:40:26 +02:00
Hauke Mehrtens
27f23bac8f ar71xx: fix section mismatches
Fix some section mismatches found with kernel 4.9.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-11 22:36:04 +02:00
Hauke Mehrtens
7bbf4117c6 ar71xx: Add kernel 4.9 support
This add support for kernel 4.9 to the ar71xx target.
It was compile tested with the generic, NAND and mikrotik subtarget.
Multiple members of the community tested it on their boards and did not
report any major problem so far.

Especially the NAND part received some changes to adapt to the new
kernel APIs. The serial driver hack used for the Arduino Yun was not
ported because the kernel changed there a lot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-11 22:32:39 +02:00
Hauke Mehrtens
2909a4b78e brcm47xx: relocate the stack in loader
By default we are reusing the stack provided by CFE, like it is intended
by CFE. On my WRT54GS it is located at 0x8043BF30, so a big kernel image
could overwrite it. Relocate it to a different memory region which is
still under the 8MB RAM, but in the higher area. We only need this
memory region for the stack of the loader, Linux will set up this
for its own.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-11 21:36:24 +02:00
Hauke Mehrtens
d5cf4a5aa4 brcm47xx: relocate loader to higher address
The boot process on a WRT54GL works the following way:
1. CFE gets loaded by the boot rom from flash
2. CFE loads the loader from the flash and gzip uncompresses it
3. CFE starts the loader
4. The loader stores the FW arguments and relocates itself to
   BZ_TEXT_START (now 0x80600000)
5. The loader reads the Linux image from flash
6. The loader lzma decompresses the Linux image to LOADADDR (0x80001000)
7. The loader executes the uncompress Linux image at LOADADDR

The BZ_TEXT_START was set to 0x80400000 before. When the kernel gets
uncompressed and is bigger than BZ_TEXT_START - LOADADDR it overwrote
the loader which was currently uncompressing it and made the board
crash. Increase the BZ_TEXT_START my 2 MB to have more space for the
kernel. Even on 16MB RAM devices the memory goes till 0x80FFFFFF so this
should not be a problem.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-11 21:36:24 +02:00
Rafał Miłecki
f98f83eada bcm53xx: backport DTS changes up to the first 4.15 queued commits
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-10-10 10:22:24 +02:00
Alexander Couzens
b73986a826 ramips/mt76x8: add initramfs support for tplink 841n v13
The tplink 841n v13 requires an tplink v2 image header in
front of an initramfs image.

To boot an initramfs image:
- break the uboot by holding the '4' key
- setup your tftp server 192.168.0.255
- tftp 81000000 lede-ramips-mt76x8-tl-wr841n-v13-initramfs-kernel.bin
- bootm

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-10-09 17:34:41 +02:00
Alexander Couzens
49b84624eb image-commands: tplink-v2-header: pass kernel loadaddr and entry
Initramfs images won't boot if the default loadaddr and entrypont is
different.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-10-09 16:10:05 +02:00
Alexandru Ardelean
a5d016f361 net: uqmi: fix blocking in endless loops when unplugging device
If you unplug a QMI device, the /dev/cdc-wdmX device
disappears but uqmi will continue to poll it endlessly.

Then, when you plug it back, you have 2 uqmi processes,
and that's bad, because 2 processes talking QMI to the
same device [and the same time] doesn't seem to work well.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-10-09 16:07:42 +02:00
Stijn Tintel
f8595a51d9 conntrack-tools: switch to git
There have been a number of interesting fixes in conntrack-tools since
the current latest release. Most notable is that this fixes IPv6
conntrack table syncing when cross-compiling conntrack-tools.

7e7748d src/main: refresh help message
fe32043 conntrackd.8: refresh file
47a4dda conntrackd.8: add reference to systemd
0cfe7ff doc/manual: include some bits about init systems
74a418b conntrackd: cthelper: ftp: Set match offset/len for PORT mangling
d833bed conntrackd: cthelper: ftp: Fix debug print
dd4b5a1 conntrackd: cthelper: Add new mdns helper
498d698 Link nfct and helper modules with `-z lazy`
9e94e85 sync-mode: print errno message on failure
ab81c35 log: print messages to stdout/sderr if running in console mode
631d92b log: introduce a mechanism to know if log was initialized
ccb1c8b conntrackd: replace error reporting in the config parser with dlog()
bee121e conntrackd: replace fprintf calls with dlog()
5a51b04 conntrack-tools: update Arturo Borrero Gonzalez email address
abb9984 helper: remove copy and paste from uapi kernel header
a91a004 src: add log message when resync is requested by other node
c2d8be1 systemd: fix missing log.h include
f6ca216 config: drop old/obsolete/deprecated conntrackd.conf config options
8b83771 conntrack: send mark filter to kernel iff set
1ba5e76 conntrackd: cthelper: Don't leak nat_tuple
832166d conntrackd: cthelper: Free pktb after use
ff843bc conntrackd: config: Do not strdup() tokens
b61c454 conntrackd: cthelper: ssdp: Track UPnP eventing
8ea394e conntrackd: Remove obsolete rule to catch ambiguous Checksum option
39398cd conntrackd: CommitTimeout breaks DisableExternalCache set On
29b390a conntrack: Support IPv6 NAT
381827a conntrackd: factorice tx_queue functions
131df89 conntrackd: factorize resync operations
d31bacc conntrackd: consolidate more code to use resync_send()
3d98496 conntrackd: request resync at startup
ef410bf conntrackd: remove use of HAVE_INET_PTON_IPV6
9d38445 conntrackd: evaluate configuration earlier
6feded7 conntrackd: cleanup if failed forking
dbfdea7 conntrackd: deprecate unix backlog configuration
210f542 conntrackd: make the daemon run in RT mode by default
37cc7f0 conntrackd: remove warning for -S
d2849d1 conntrack: Show multiple CPUs stats from proc
bc0b49a conntrackd: cthelper: ssdp: fix build with musl
0c77a25 tests: don't fail on modprobe since the driver might be built-in
eefe649 conntrack.8: refresh manpage

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-09 16:15:14 +03:00
Stijn Tintel
7695f144eb libnetfilter_conntrack: switch to git
In order to build conntrack-tools from git, a newer version of
libnetfilter_conntrack is required. As 1.0.6 is currently the latest
release, switch to git.

b0a7cf7 include: expose a copy of nf_conntrack_common.h
f68f7b3 conntrack: fix missing break in setobjopt_undo_dnat()
79dac5a conntrack: revert getobjopt_is_nat() condition
b266523 libnetfilter_conntrack: bump version to 1.0.7
e870432 labels: don't crash on NULL labelmap

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-09 16:12:00 +03:00
Stijn Tintel
bcfc39b763 libnetfilter_queue: bump to git HEAD
b39cac7 src: Correct typo in the location of internal.h in #include
58cb066 src: Declare the define visibility attribute together
e84b559 Revert "src: Declare the define visibility attribute together"
003c2b1 examples: set dummy connmark value to show use of NFQA_CT nested attribute
63973da doc: extend the doxygen section about NFQA_CFG_F_GSO
d7f74c7 build: bump version to 1.0.3
3f9eb57 build: bump library release version too
601abd1 doc: Add information about retrieving UID/GID/SECCTX fields

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-09 16:06:06 +03:00
John Crispin
c972779e98 mediatek: fix a sleep while atomic bug inside the ethernet driver
this sometimes happens when we have hw nat enabled.

Signed-off-by: John Crispin <john@phrozen.org>
2017-10-09 11:29:01 +02:00
Stijn Tintel
9e9696afc8 treewide: switch git.netfilter.org to HTTPS
As git.netfilter.org seems to support HTTPS, use that instead of HTTP
which is insecure, or GIT which is blocked on many corporate networks.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-08 21:10:36 +03:00
Stijn Tintel
6b533fd4bc ipset-dns: bump to git HEAD
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-08 20:51:03 +03:00
Stijn Tintel
f12c42940d kernel: bump 4.9 to 4.9.54
Refresh patches.
Remove upstreamed patches:
- ramips/0067-enable-mt7621-xhci.patch
- ramips/0085-pinmux-util.patch
- ramips/301-fix-rt3883.patch

Compile-tested on brcm2708/bcm2708, octeon, ramips/mt7621, x86/64.
Runtime-tested on brcm2708/bcm2708, octeon, ramips/mt7621, x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-08 20:51:03 +03:00
Kevin Darbyshire-Bryant
e77fa68f1f kernel: bump 4.4 to 4.4.91
Refresh patches.

Compile-tested for: ar71xx Archer C7 v2
Run-tested on: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-10-08 20:51:03 +03:00
Daniel Golle
34b153d7ad sunxi: build image for the NanoPi NEO
The NanoPi NEO is a small Allwinner H3 based board available with
different DRAM configurations.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-10-08 17:16:39 +02:00
Daniel Golle
333f90347e sunxi: kernel: add patches for NanoPi NEO
Enable dwmac-sun8i Ethernet core to use the built-in FastEthernet port.
Enable exposed UART, USB and I2C pins.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-10-08 17:16:39 +02:00
Daniel Golle
b80f6a5876 uboot-sunxi: build for NanoPi NEO
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-10-08 17:16:39 +02:00
Stijn Tintel
d2fdece2e1 layerscape: refresh patches
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-08 16:34:37 +03:00
Stijn Tintel
239dff6697 kernel: update and refresh patches
The lantiq patch 0028-NET-lantiq-various-etop-fixes.patch and sunxi
patch 0051-stmmac-form-4-11.patch no longer applied after applying the
the "generalize napi_complete_done()" patch.
Update them so they apply, and refresh patches while at it.

Fixes: 9aeb7ce8dc ("generic: net: generalize napi_complete_done")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-08 16:31:58 +03:00
Pavel Kubelun
9aeb7ce8dc generic: net: generalize napi_complete_done
Backport upstream commit that improves ethernet performance by a
small amount.

Compile and run tested on ipq8065.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-10-08 15:19:07 +03:00
Pavel Kubelun
b2ea46fe23 generic: net: tcp: backport tcp tx performance patches
An overall throughput gain of 22 % for heavy TCP use over a single TX queue.

Original patchset comment
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v4.13&id=3f4888adae7c1619b990d98a9b967536f71822b8

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-10-08 15:19:07 +03:00
Stijn Tintel
3a69ad3b2a kernel: split 82574L patch into multiple files
When refreshing patches that cointain multiple patches including headers
in a single file, quilt will remove the headers from all but the first
patch. This makes it difficult to review commits that refresh patches.
Next to that, if only a few of the patch series are accepted in -stable,
the patch needs to be manually modified. With each patch in a separate
file, it's just a matter of git rm.

Refresh patches while at it.

Patchwork links:
[1/5] https://patchwork.kernel.org/patch/9857487/
[2/5] https://patchwork.kernel.org/patch/9857489/
[3/5] https://patchwork.kernel.org/patch/9857495/
[4/5] https://patchwork.kernel.org/patch/9857491/
[5/5] https://patchwork.kernel.org/patch/9857493/

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-08 15:18:34 +03:00
Hauke Mehrtens
cf17e034bc kernel: Add some more generic config options
These options are deactivating some kernel modules for IP blocks not
uses on this SoC. I saw the same when working with the ARM64 Marvell
board so it is better to move them to generic.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-08 13:39:44 +02:00
Hauke Mehrtens
2135125182 layerscape: remove wifi config
This is provided by the mac80211 package

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-08 13:39:44 +02:00
Hauke Mehrtens
29a6c4fcfb kernel: add missing config options for layerscape target
This fixes some problems found by build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-08 13:39:44 +02:00
Andrey Jr. Melnikov
2cb8f0a4cf ar71xx: Fix NULL pointer dereferece in at803x_link_change_notify()
Check pdata pointer before use to avoid OOPS if dev_get_platdata() return
NULL.

Signed-off-by: Andrey Jr. Melnikov <temnota.am@gmail.com>
2017-10-07 23:19:15 +02:00
Yangbo Lu
9c9f7b0434 layerscape: select sdk dts for ls1043ardb/ls1046ardb
ls1043ardb/ls1046ardb should use sdk dts. This patch is
to fix this.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:23 +02:00
Yangbo Lu
c0b089da8a layerscape: fix CPU_TYPE for armv8_32b targets
Layerscape uses Cortex-A53 or Cortex-A72 CPU. It's proper
to set below CPU_TYPE for 32-bit mode.
CPU_TYPE:=cortex-a15
CPU_SUBTYPE:=neon-vfpv4

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:23 +02:00
Yangbo Lu
8fdda1cc10 layerscape: add linux 4.9 support
This patch is to add linux 4.9 support for layerscape.
All these kernel patches are from NXP LSDK 1709 release.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:23 +02:00
Yangbo Lu
19951bbf57 layerscape: drop linux 4.4 support
This patch is to drop linux 4.4 for layerscape.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:22 +02:00
Yangbo Lu
e3f47958dd layerscape: make uImage with zImage for 32-bit kernel
uImage should be made with zImage. This patch is to support
making uImage with zImage.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:22 +02:00
Yangbo Lu
a5ad3a2c80 layerscape: update memory layout according to LSDK
The uniform memory layout of NOR/QSPI/NAND/SD media on all Layerscape platforms:
+-----------------------------+---------|--------------|-----------------+
|Firmwre Definition           | MaxSize | Flash Offset | SD Start Block #|
|-----------------------------|---------|--------------|-----------------|
|RCW+PBI                      | 1MB     | 0x00000000   | 0x00008         |
|-----------------------------|---------|--------------|-----------------|
|Boot firmware(U-Boot,UEFI)   | 2MB     | 0x00100000   | 0x00800         |
|-----------------------------|---------|--------------|-----------------|
|Boot firmware Environment    | 1MB     | 0x00300000   | 0x01800         |
|-----------------------------|---------|--------------|-----------------|
|PPA firmware                 | 2MB     | 0x00400000   | 0x02000         |
|-----------------------------|---------|--------------|-----------------|
|Secure boot headers          | 3MB     | 0x00600000   | 0x03000         |
|-----------------------------|---------|--------------|-----------------|
|DPAA1 FMAN ucode             | 256KB   | 0x00900000   | 0x04800         |
|-----------------------------|---------|--------------|-----------------|
|QE/uQE firmware              | 256KB   | 0x00940000   | 0x04A00         |
|-----------------------------|---------|--------------|-----------------|
|Ethernet PHY firmware        | 256KB   | 0x00980000   | 0x04C00         |
|-----------------------------|---------|--------------|-----------------|
|Scripts                      | 256KB   | 0x009C0000   | 0x04E00         |
|-----------------------------|---------|--------------|-----------------|
|DPAA2 MC firmware            | 3MB     | 0x00A00000   | 0x05000         |
|-----------------------------|---------|--------------|-----------------|
|DPAA2 DPL                    | 1MB     | 0x00D00000   | 0x06800         |
|-----------------------------|---------|--------------|-----------------|
|DPAA2 DPC                    | 1MB     | 0x00E00000   | 0x07000         |
|-----------------------------|---------|--------------|-----------------|
|Device tree(needed by uefi)  | 1MB     | 0x00F00000   | 0x07800         |
|-------------+---------------|---------|--------------|-----------------|
|Kernel       |               | 16MB    | 0x01000000   | 0x08000         |
|-------------| kernel.itb    |---------|--------------|-----------------|
|Ramdisk rfs  |               |32MB     | 0x01100000   | 0x08800         |
+-------------+---------------+---------|--------------|-----------------+

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:22 +02:00
Yangbo Lu
2e2203ff72 layerscape: update packages with LSDK git trees
NXP Layerscape LSDK had set up its own open source web site
and github for release.

https://lsdk.github.io
https://github.com/qoriq-open-source

This patch is to update rcw/fman_ucode/u-boot packages with LSDK
git trees. Also add some patches of packages to support LEDE.
Since ARMv8 32-bit u-boot images are same with ARMv8 64-bit images
but 64-bit toolchain couldn't be used for 32-bit targets, we still
use a private tree for ARMv8 32-bit u-boot images. This is in plan
to move this private tree to NXP Layerscape github.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:22 +02:00
Yangbo Lu
806624add5 layerscape: rename subtargets and update makefile files
Rename subtargets 32b/64b with armv8_32b/armv8_64b which are
more proper, and update makefile files. There also will be other
subtargets added in the future, like armv7.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:22 +02:00
Yangbo Lu
4c89f2fcf8 layerscape: take over maintainership
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-10-07 23:13:22 +02:00
Philip Prindeville
a0c05a7c94 kernel: fix receiver overflow for 82574L under load
Under heavy load it's possible to overrun the 82574L. When this
happens, Other Interrupt happens and that's erroneously interpreted
as a Link Status Change.

    http://patchwork.ozlabs.org/patch/792260/

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-10-07 23:10:39 +02:00
Mathias Kresin
1c4a116a30 ar71xx: add rssileds to WA850RE v1 image
A default rssileds config exists for the TP-Link WA850RE v1 but the
rssiled package is not included by default.

The compressed 17.01.3 image size increases by 3302 bytes which should
be tolerable even for a 4MB flash board.

Fixes: FS#1043

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-07 20:15:03 +02:00
Mathias Kresin
d65b1c815a lantiq: drop phy id specfic compatible string
With kernel commit 7630ea4bda18 ("Documentation: net: phy: improve
explanation when to specify the PHY ID") the purpose of using phy id
specific compatibles was clarified.

Remove the phy id specific compatibles since they are meant to be used
if the phy reports an incorrect or no phy id at all.

Reported-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-07 20:15:03 +02:00
Mathias Kresin
a6bd7255ab lantiq: remove gen_nand compatible string
The generic nand driver fails to load with:

  gen_nand 14000000.nand-parts: platform_nand_data is missing
  gen_nand: probe of 14000000.nand-parts failed with error -22

and the xway-nand driver is used afterwards.

Drop the gen_nand compatible to get rid of the error message.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-07 20:15:03 +02:00
Stijn Tintel
f625df7ab8 kernel: update 4.9 to 4.9.53
Refresh patches.
Compile-tested on brcm2708/bcm2708, octeon and x86/64.
Runtime-tested on brcm2708/bcm2708, octeon and x86/64.

Fixes the following CVEs:
- CVE-2017-1000252
- CVE-2017-12153
- CVE-2017-12154

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-07 20:53:21 +03:00
Kevin Darbyshire-Bryant
ae2a8a3b9b kernel: update 4.4 to 4.4.90
No patch refresh required.

Compile & run tested: ar71xx Archer C7 v2

Fixes the following CVEs:
- CVE-2017-1000252
- CVE-2017-12153
- CVE-2017-12154

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
[reference fixed CVEs]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-07 20:53:21 +03:00
Hans Dedecker
778970735b curl: add nghttp2 support
Add config option support for nghttp2

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-07 19:17:44 +02:00
Hans Dedecker
0e265dc0c7 nghttp2: add libnghttp2 package
The nghttp2 library is an implementation of the Hypertext Transfer
Protocol version 2 in C; it supports RFC7540 and RFC7541.
The package enables only the reusable C library; binary size is 130K (X86)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-07 19:17:44 +02:00
Thibaut VARENE
2be307c998 rbcfg: Implement CPU frequency control
This patch implements CPU frequency control as found on several
routerboard devices.

Supported SoCs:
- QCA953X
- AR9344

Tested on hAP lite and mAP lite (QCA953x): steps of 50MHz
Tested on LHG 5 (AR9344): steps of 50MHz

On unsupported hardware, this patch is a NOP: it will not alter the
new field.
"rbcfg help" will display an empty "cpu_freq" help listing.
"rbcfg show" will not show the cpu_freq field.
"rbcfg set/get cpu_freq" will return an error code.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
[adjusted subject]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-10-07 15:00:26 +02:00
Catrinel Catrinescu
b9c31c44d7 ar71xx: update LED definitions for embedded wireless dorin
Evaluation board 2.2 uses a different status LED pin
The other removed LEDs were never present

Signed-off-by: Catrinel Catrinescu <cc@80211.de>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-07 09:20:41 +02:00
Catrinel Catrinescu
cd4b60c329 ar71xx: ew-dorin target moved from legacy to generic
Embedded Wireless Dorin platform moved from legacy to generic

Signed-off-by: Catrinel Catrinescu <cc@80211.de>
2017-10-07 09:20:04 +02:00
Felix Fietkau
00ea16557d ar71xx: rework chipidea usb controller patch
Handle AR9344 as well. Disable the EHCI platform device when device mode
is active, to avoid resource conflicts.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-10-07 09:18:40 +02:00
Stijn Tintel
c088203535 hostapd: escape double quoutes in wpad CFLAGS
A recent commit in hostapd added a build option to specify the default
TLS ciphers. This build option is passed via CFLAGS. Due to the way
CFLAGS are handled when building wpad, the compiler tries to recursively
expand TLS_DEFAULT_CIPHERS, resulting in the following error:

../src/crypto/tls_openssl.c: In function 'tls_init':
<command-line>:0:21: error: 'DEFAULT' undeclared (first use in this function)
../src/crypto/tls_openssl.c:1028:13: note: in expansion of macro 'TLS_DEFAULT_CIPHERS'
   ciphers = TLS_DEFAULT_CIPHERS;
             ^

Escape double quotes in the .cflags file to avoid this.

Fixes: 2f78034c3e ("hostapd: update to version 2017-08-24")
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-10-07 05:49:22 +03:00
Koen Vandeputte
2f78034c3e hostapd: update to version 2017-08-24
- Deleted upstreamed patches & parts
- Refreshed all

Compile tested: full-option package + tools (hostapd + wpa_supplicant)
Run-tested: hostapd wpa2 hotspot & wpa_supplicant IBSS link

Targets: cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-10-07 05:46:04 +03:00
Hans Dedecker
bd27331eea netifd: update to latest git HEAD version (FS#1030)
5df3f01 config: suppress error if no wireless config present (FS#1030)
3429bd8 system-linux: add support for hotplug event 'move'

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-06 22:12:33 +02:00
Hans Dedecker
834c93e00b dropbear: fix PKG_CONFIG_DEPENDS
Add CONFIG_DROPBEAR_UTMP, CONFIG_DROPBEAR_PUTUTLINE to PKG_CONFIG_DEPENDS

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-06 09:38:00 +02:00
Thibaut VARÈNE
9e768b9aac tools/firmware-utils: mktplinkfw move build_fw() to lib
This patch moves build_fw() to mktplinkfw-lib.c

The versions of mktplinkfw.c and mktplinkfw2.c had slight
differences in code flow, the version from mktplinkfw.c has been
preferred.

While it's expected that this change will not affect mktplinkfw2,
all use cases could not be tested and so this particular change
is committed separately.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2017-10-06 08:28:41 +02:00
Thibaut VARÈNE
10324fcb39 tools/firmware-utils: mktplinkfw regroup duplicate code
This patch carves out the duplicated code of mktplinfw.c and
mktplinkfw2.c and moves it to mktplinkfw-lib.c

This change is a semantic NOP (the code is unchanged).

To ensure compatibility with gcc-5.x and newer without changing
the code, -fgnu89-inline is added to the build flags for these
two binaries.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2017-10-06 08:28:41 +02:00
Thibaut VARÈNE
10832c8e12 tools/firmware-utils: remove hardcoded values from mktplinkfw2.c
This patch removes all the hardcoded board-specific values from
mktplinkfw2.c, and as well as the corresponding support code.

By design, this change also deletes all of the broken matching logic
that was embedded in mktplinkfw2 and aligns the "inspect" behavior
with that of mktplinkfw (i.e. print the parsed header content as
they are without further processing).

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2017-10-06 08:28:41 +02:00
Thibaut VARÈNE
254061ee97 build: add mktplinkfw2 hardcoded values to makefile
This patch adds all the board-specific values currently hardcoded
in mktplinkfw2.c back to the respective device declarations in the
makefiles.

The rationale is to avoid modifying the source code every time a
new board or board variant is added.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
2017-10-06 08:28:41 +02:00
Felix Fietkau
90805b16b6 cmake: fix build error with Xcode 9 on macOS 12
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-05 21:14:44 +02:00
Felix Fietkau
07a99a83f2 gcc: fix build error with macOS + Xcode 9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-05 21:14:43 +02:00
Felix Fietkau
603900ef82 build: add a darwin sitefile to deal with macOS 10.12 + Xcode 9 build errors
Certain functions are available in system headers, but only work on
macOS 10.13

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-05 21:14:43 +02:00
Felix Fietkau
20f365d70f x86: fix reboot on apu2 boards
PC Engines apu2 needs to use the PCI reboot method, otherwise it can
hang.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-10-05 21:14:43 +02:00
Hans Dedecker
7d905f1e95 uci: bump to git HEAD version
5ad59ad Add bitfield_set function from libubox

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-04 21:29:34 +02:00
Hans Dedecker
470b13975d libubox: bump to git HEAD version
632688e utils: nuke bitfield functions and macros
f714be1 uloop: make SIGCHLD signal handling optional

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-04 21:29:00 +02:00
Sergey Ryazanov
c9f66b1eb9 ramips: keep Archer C20 Power LED On during boot
Keep Archer C20 Power LED in the same state as it was configured by
bootloader (keep it hightlighed) to avoid unexpectable LED turning off
during kernel boot.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-10-04 20:08:15 +02:00
Mathias Kresin
d07f924978 ltq-vmmc: disable for falcon
The module fails to compile with falcon. Remove the falcon depends from
the module to not (try to) compile it for falcon any longer.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
bd523d4573 ltq-ptm: mark AmazonSE support as broken
Albeit ltq-ptm is supported on AmazonSE, the package fails to compile.
Mark the AmazonSE variant as broken to not mark it unnecessary harder
to fix (and test) the compile error.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
aba297b7fd lantiq: ase: enable USB and wireless
Add the missing USB related kernel config options to target config.
Enable wireless as well, wireless is supported via USB.

Fixes compile/packaging errors with the libertas wireless kernel
module.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
695645b9ac lantiq: ase: fix SPI support
Do not disable SPI in the subtarget, otherwise the SPI driver can not
be used.

Disable SPI by default and enable it in the board specific device tree
source file.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
66a0f3a397 lantiq: select PCI support in subtargets
AmazonSE and Falcon do not have support for PCI and it can't be
unselected in the subtarget kernel config. This way the enabled PCI
support is inherit from the higher level config to the subtarget.

If CONFIG_PCI is selected, PCI_SUPPORT will be autoselected as well and
all packages depending on this config symbol will be build and at least
some of them fail due to missing pci functions.

The issue can be observed if all kmods and all non-shared packages are
build. Fix the issue by enabling PCI support only in subtargets with
PCI support.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
77fee9bcce lantiq: ase: cleanup kernel config
The subtarget kernel config options CONFIG_CC_OPTIMIZE_FOR_SIZE and
CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK are already set by the target or
global kernel config.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
d7a76be980 lantiq: xway: cleanup kernel config
CONFIG_SPI_LANTIQ was replaced by CONFIG_SPI_LANTIQ_SSC with the switch
to the upstreamed driver.

All other removed subtarget kernel config options are already set by
the target specific or global kernel config.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
d3f3b817ac lantiq: xrx200: cleanup kernel config
CONFIG_MTSCHED & CONFIG_PERFCTRS were never defined in the kernel.

CONFIG_LANTIQ_PHY was replaced by CONFIG_INTEL_XWAY_PHY with the switch
to the upstreamed driver.

Add autoselected dependecies to the kernel config.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
054f01ac16 lantiq: xrx200: fix sorting of kernel config
Use the kconfig script to sort the kernel config. It makes further
changes more obvious.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Mathias Kresin
1c45d11bb3 treewide: drop obsolete kernel config options
CONFIG_GPIO_DEVRES was removed with kernel commit f9c22ec6c1c5 ("gpio:
Remove GPIO_DEVRES option") during kernel 4.9 development.

CONFIG_HAVE_BPF_JIT was removed with kernel commit 6077776b5908 ("bpf:
split HAVE_BPF_JIT into cBPF and eBPF variant") during kernel 4.7
development.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-10-04 20:08:15 +02:00
Hans Dedecker
a37655baca procd: use LN macro
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-10-03 11:07:26 +02:00
Kevin Darbyshire-Bryant
67ac017fef dnsmasq: bump to v2.78
Fixes CVE-2017-14491, CVE-2017-14492, CVE-2017-14493, CVE-2017-14494, 2017-CVE-14495, 2017-CVE-14496

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-10-02 18:26:53 +02:00
Jo-Philipp Wich
64da598c8f tools: cmake: fix librt linking (FS#1032)
Commit 839129b864 "tools/cmake: Update to 3.9.3" improperly rebased the
librt linking patch, causing FS#381 to resurface.

Fixes FS#1032.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-10-02 14:00:48 +02:00
Hauke Mehrtens
5508510e74 sunxi: add Orange Pi R1 support
The following features are working and tested:
* both Ethernet ports
* MMC
* LED

The following features are not working:
* Wifi (There is a crappy driver we could port)
* SPI flash (I haven't looked into this)

I haven't tried out the rest.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 17:10:33 +02:00
Hauke Mehrtens
ba1aedafeb mac80211: fix compile error on PowerPC (PPC_85xx)
Including linux/interrupt.h in linux/hrtimer.h causes this error message
on PowerPC builds on x86, ARM and MIPS it works:

  CC [M]  /backports-4.14-rc2-1/compat/main.o
In file included from /backports-4.14-rc2-1/backport-include/linux/printk.h:5:0,
                 from ./include/linux/kernel.h:13,
                 from /backports-4.14-rc2-1/backport-include/linux/kernel.h:3,
                 from ./include/linux/list.h:8,
                 from /backports-4.14-rc2-1/backport-include/linux/list.h:3,
                 from ./include/linux/module.h:9,
                 from /backports-4.14-rc2-1/backport-include/linux/module.h:3,
                 from /backports-4.14-rc2-1/compat/main.c:1:
./include/linux/ratelimit.h: In function 'ratelimit_state_exit':
./include/linux/ratelimit.h:62:11: error: dereferencing pointer to incomplete type 'struct task_struct'
    current->comm, rs->missed);
           ^
./include/linux/printk.h:279:37: note: in definition of macro 'pr_warning'
  printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
                                     ^
./include/linux/ratelimit.h:61:3: note: in expansion of macro 'pr_warn'
   pr_warn("%s: %d output lines suppressed due to ratelimiting\n",
   ^

The backport of the hrtimer_start() functions needs the
linux/interrupt.h because some parts are defined there. Fix this by
moving the hrtimer_start() backport to the linux/interrupt.h backport
header file.

Fixes: a8f63a0717: ("mac80211: update to backports-4.14-rc2")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 16:41:19 +02:00
Hauke Mehrtens
dbbb4df163 kernel: owl-loader: fix compile warning
check if the config option CONFIG_LANTIQ is defined.
This fixes the following warning:
  CC [M]  drivers/misc/owl-loader.o
drivers/misc/owl-loader.c: In function 'ath9k_pci_fixup':
drivers/misc/owl-loader.c:92:5: warning: "CONFIG_LANTIQ" is not defined [-Wundef]
 #if CONFIG_LANTIQ
     ^

Fixes: e9401a2335 ("kernel: owl-loader for delayed Atheros ath9k fixup")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 16:40:37 +02:00
Hauke Mehrtens
25abd71efb sunxi: H3: add device tree changes for H3 Ethernet
This adds the device tree changes needed to make the GMAC stmmac driver
working for the Allwinner H3 SoCs.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 13:01:03 +02:00
Hauke Mehrtens
cf039cf7ff sunxi: A64: add device tree changes for A64 Ethernet
This adds the device tree changes needed to make the GMAC stmmac driver
working for the Allwinner A64 SoCs.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 13:01:03 +02:00
Hauke Mehrtens
ed43a4d4ac sunxi: backport the stmmac driver from kernel 4.13
This adds support for the GMAC which is use in the A64 and other
Allwinner chips by backporting the changes from the kernel versions
4.13.

Some commits are not backported which are adding support for newly
introduced APIs which are not available in kernel 4.9.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 13:00:16 +02:00
Hauke Mehrtens
a8f63a0717 mac80211: update to backports-4.14-rc2
This updates mac80211 to backprots-4.14-rc2.
This was compile and runtime tested with ath9k, ath10k and b43
with multiple stations and ieee80211w and in different scenarios by many
other people.

To create the backports-4.14-rc2-1.tar.xz use this repository:
https://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git
from tag v4.14-rc2-1

Then run this:
./gentree.py --git-revision v4.14-rc2 --clean  <path to linux repo> ../backports-4.14-rc2-1

This also adapts the ath10k-ct and mt76 driver to the changed cfg80211
APIs and syncs the nl80211.h file in iw with the new version from
backports-4.14-rc2.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-10-01 12:49:11 +02:00
Lucian Cristian
1114f5dc10 sunxi: improve A20 Lime2 upload speed
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-09-30 23:50:57 +02:00
Daniel Engberg
e95f22da36 toolchain/fortify-headers: Update to 0.9
Update fortify-headers to 0.9

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-30 22:44:18 +02:00
Daniel Engberg
a4ec0aa527 tools/mm-macros: Update to 0.9.11
Update mm-macros to 0.9.11

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-30 22:43:59 +02:00
Daniel Engberg
85d93b67af tools/mpfr: Update to 3.1.6
Update mpfr to 3.1.6

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-30 22:43:38 +02:00
Daniel Engberg
c4562a9069 package/utils/f2fs-tools: Update to 1.9.0
Update f2fs-tools to 1.9.0
Remove patch as its been committed upstream

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-30 22:43:17 +02:00
Ryan Mounce
6a5a58ed27 util-linux: update to 2.30.2
Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-09-30 22:41:43 +02:00
Daniel Engberg
839129b864 tools/cmake: Update to 3.9.3
Update CMake to 3.9.3
Remove FreeBSD patch (not needed)
Rearrage and update patches

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-30 22:41:12 +02:00
Hauke Mehrtens
3adafda07c base-files: create /etc/config/ directory
The /bin/config_generate script and some other scripts are assuming the
/etc/config directory exists in the image. This is true in case for
example the package firewall, dropbear or dnsmasq are included, which
are adding the files under /etc/config/. Without any of these package
the system will not boot up fully because the /etc/config/ directory is
missing and some init scripts just fail.

Make sure all images with the base-files contain a /etc/config/
directory.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: John Crispin <john@phrozen.org>
2017-09-30 22:22:38 +02:00
Mathias Kresin
fe36f7b0a6 ltq-vdsl-mei: revert disable optimized firmware download
This reverts commit b428f45c06.

If the optimized firmware download is disabled, the xdsl subsystem
hangs in the "idle request" state after physically disconnecting and
reconnecting the xdsl modem from the line.

It might fix the failing line init on boot as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-30 20:36:48 +02:00
Stijn Tintel
c317af777b iw: fix build on musl host
The empty version.sh script causes a problem when run by make:
make[3]: /usr/bin/env bash: Shell program not found

Adding a shebang line in version.sh seems to solve it.

Fixes FS#977.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-29 14:59:06 +03:00
Felix Fietkau
e64463ebde util-linux: avoid using the getrandom syscall
getrandom blocks until the random pool is being initialized.
Unfortunately, this code is being called early during init to create the
overlay filesystem, on some devices leaving little chance for a
successful random pool init.
True randomness is not that important here, so fix this issue by
sticking to using /dev/urandom, like in older versions of this code.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-09-29 12:32:44 +02:00
Kevin Darbyshire-Bryant
657f2a1ff8 kernel: update 4.4 to 4.4.89
Refresh patches.
Compile & run tested on ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-29 07:42:43 +03:00
Stijn Tintel
1d7042231b gdb: bump to 8.0.1
Add -static-libstdc++ to TARGET_LDFLAGS to avoid a hard dependency on
libstdc++, and -Wl,--gc-sections to further reduce the size on platforms
that support it.

Fixes CVE-2017-9778.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-29 06:33:39 +03:00
Ryan Mounce
fc35d6e18a toolchain/gdb: update to version 8.0.1
Fixes CVE-2017-9778.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
[reference fixed CVE]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-29 06:33:25 +03:00
Felix Fietkau
6919f95bb3 mt76: update to the latest version, improves mt7603 stability
cb83f33 mt7603: mac: fix logic in mt7603_tx_hang()
21f20b4 mt7603: mac: fix register configuration in mt7603_rx_dma_busy()
d5e945e mt7603: mcu: fix indentation of mcu command definition

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-09-28 22:57:48 +02:00
Felix Fietkau
afe83f6151 linux-firmware: fix intel wireless-n 100 firmware package name
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-09-28 22:57:46 +02:00
Felix Fietkau
79216243d7 hostapd: add support for accessing 802.11k neighbor report elements via ubus
This API can be used to distribute neighbor report entries across
multiple APs on the same LAN.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-09-28 22:46:26 +02:00
Felix Fietkau
9f5f5d250e hostapd: add support for specifying device config options directly in uci
This is useful for tuning some more exotic parameters where it doesn't
make sense to attempt to cover everything in uci directly

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-09-28 22:45:59 +02:00
Felix Fietkau
f4a6daa5da ar71xx: unify CONFIG_CMDLINE
Booting from jffs2 directly is no longer supported, use
rootfstype=squashfs consistently for all subtargets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-09-28 22:45:39 +02:00
Marcin Jurkowski
a816e1eac7 dropbear: make ssh compression support configurable
Adds config option to enable compression support which is usefull
when using a terminal sessions over a slow link. Impact on binary
size is negligible but additional 60 kB (uncompressed) is needed for
a shared zlib library.

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
2017-09-28 21:47:16 +02:00
John Crispin
00e9a7aacb umdns: update to latest git HEAD
b84fdac Add debug output for service_timeout
8f7e3bc Remove incorrect comma in http service json config
9f40133 Remove ttl==255 restriction for queries

Signed-off-by: John Crispin <john@phrozen.org>
2017-09-28 09:29:31 +02:00
Rosen Penev
dcdc2880b6 ramips: reduce napi_weight in the ethernet driver.
Currently dmsg a weight of 128 which is above the kernel limit of 64. Silence the warning.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-09-28 09:22:02 +02:00
Michal Sojka
1a5bf778fb procd: Install seccomp-trace symlink
Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
2017-09-28 09:22:02 +02:00
John Crispin
3398e8e94d procd: update to latest git HEAD
ee582d1 instance: properly compare and reload respawn config
260a4cd utrace: Start the tracee only after uloop initialization
520ad3c utrace: Switch all logging to ulog
1c48104 utrace: Support non-contiguous syscall numbers
582cf97 utrace: Forward SIGTERM to the traced process
32534f7 utrace: Report ptrace errors
ccde3fb seccomp: Improve error message
7f9b174 preload-seccomp: Use proper log level for error messages
e3c4302 Start seccomp-enabled services via seccomp-trace
5e4ad02 seccomp: Log seccomp violations with utrace
2661b2f utrace: Use PTHREAD_SEIZE instead of PTHREAD_TRACEME
b5d53c6 utrace: Deliver signals to traced processes
b416ed9 utrace: Support tracing multi-threaded processes and vfork
8b7d47a utrace: Trace processes across forks
c6b6ec6 utrace: Sort syscalls by number of invocations
592c532 Update trace attribute
c8faedc Do not disable seccomp when configuration is not found
017f3a1 utrace: Fix off-by-one errors
5acaf15 utrace: Fix environment initialization

Signed-off-by: John Crispin <john@phrozen.org>
2017-09-28 09:22:02 +02:00
Roman Yeryomin
bcb89fcca8 ramips: mt7621: add MT29F2G08ABAE NAND flash support
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-09-28 09:21:57 +02:00
Kevin Darbyshire-Bryant
f2107fc328 ramips: improve Xiaomi Mi Router 3G support
This commit improves support for the Xiaomi Mi Router 3G originally
added in commit 6e283cdc0d

Improvements:

- Remove software watchdog as hardware watchdog now working as per
  commit 3fbf3ab44f for all mt7621
  devices.

- Reset button polarity corrected - length of press determines reboot
  (short press) vs. reset to defaults (long press) behaviour.

- Enable GPIO amber switch port LEDs on board rear - lit indicates 1Gbit
  link and blink on activity.  Green LEDs driven directly by switch
  indicating any link speed and tx activity.

- USB port power on/off GPIO exposed as 'usbpower'

- Add access to uboot environment settings for checking/setting uboot
  boot order preference from user space.

Changes:

- Front LED indicator is physically made of independent Yellow/Amber,
  Red & Blue LEDs combined via a plastic 'lightpipe' to a front panel
  indicator, hence the colour behaviour is similar to an RGB LED. RGB
  LEDs are not supported at this time because they produce colour results
  that do not then match colour labels, e.g. enabling 'mir3g:red' and
  'mir3g:blue' would result in a purple indicator and we have no such
  label for purple.
  The yellow, red & blue LEDs have been split out as individual yellow,
  red & blue status LEDs, with yellow being the default status LED as
  before and with red's WAN and blue's USB default associations removed.

- Swapped order of vlan interfaces (eth0.1 & eth0.2) to match stock vlan
  layout. eth0.1 is LAN, eth0.2 is WAN

- Add 'lwlll' vlan layout to mt7530 switch driver to prevent packet
  leakage between kernel switch init and uci swconfig

uboot behaviour & system 'recovery'

uboot expects to find bootable kernels at nand addresses 0x200000 &
0x600000 known by uboot as "system 1" and "system 2" respectively.
uboot chooses which system to hand control to based on 3 environment
variables: flag_last_success, flag_try_sys1_failed & flag_try_sys2_failed

last_success represents a preference for a particular system and is set
to 0 for system 1, set to 1 for system 2.  last_success is considered *if*
and only if both try_sys'n'_failed flags are 0 (ie. unset) If *either*
failed flags are set then uboot will attempt to hand control to the
non failed system. If both failed flags are set then uboot will check
the uImage CRC of system 1 and hand control to it if ok.  If the uImage
CRC of system is not ok, uboot will hand control to system 2
irrespective of system 2's uImage CRC.

NOTE: uboot only ever sets failed flags, it *never* clears them. uboot
sets a system's failed flag if that system's was selected for boot but
the uImage CRC is incorrect.

Fortunately with serial console access, uboot provides the ability to
boot an initramfs image transferred via tftp, similarly an image may
be flashed to nand however it will flash to *both* kernels so a backup
of stock kernel image is suggested. Note that the suggested install
procedure below set's system 1's failed flag (stock) thus uboot ignores
the last_success preference and boots LEDE located in system 2.

Considerable thought has gone into whether LEDE should replace both
kernels, only one (and which one) etc. LEDE kernels do not include a
minimal rootfs and thus unlike the stock kernel cannot include a
method of controlling uboot environment variables in the event of
rootfs mount failure. Similarly uboot fails to provide an external
mechanism for indicating boot system failure.

Installation - from stock.

Installation through telnet/ssh:
- copy lede-ramips-mt7621-mir3g-squashfs-kernel1.bin and
  lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin to usb disk or wget it
  from LEDE download site to /tmp
- switch to /extdisks/sda1/ (if copied to USB drive) or to /tmp if
  wgetted from LEDE download site
- run: mtd write lede-ramips-mt7621-mir3g-squashfs-kernel1.bin kernel1
- run: mtd write lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin rootfs0
- run: nvram set flag_try_sys1_failed=1
- run: nvram commit
- run: reboot

Recovery - to stock.

Assuming you used the above installation instructions you will have a
stock kernel image in system 1. If it can be booted then it may be used
to perform a stock firmware recovery, thus erasing LEDE completely. From
a 'working' LEDE state (even failsafe)

Failsafe only:
- run: mount_root
- run: sh /etc/uci-defaults/30_uboot-envtools
Then do the steps for 'All'

All:
- run: fw_setenv flag_try_sys2_failed 1
- run: reboot

The board will reboot into system 1 (stock basic kernel) and wait with
system red light slowly blinking for a FAT formatted usb stick with a
recovery image to be inserted.  Press and hold the reset button for
around 1 second. Status LED will turn yellow during recovery and blue
when recovery complete.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-28 09:20:36 +02:00
Zoltan Gyarmati
6a5b62f503 ramips: RT5350F-OLINUXINO: enable ttyS1
The RT5350F's second UART pins are available on the base module and on
the EVB as well, so enable it in the device tree.
 In order to keep the origian serial port numbering (ttyS0 is the serial
console), aliases added for the UART devices.

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
2017-09-28 09:20:36 +02:00
Zoltan Gyarmati
9d8d3d4501 ramips: RT5350F-OLINUXINO: enable i2c
The RT5350F i2c pins is available on the base module and on
the EVB as well, so enable it in the dts.

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
2017-09-28 09:20:36 +02:00
Zoltan Gyarmati
c1d19b107b ramips: RT5350F-OLINUXINO: invert WiFi LED polarity
The polarity of WLAN_ACT LED on the base module needs to inverted
in order to be 'on' when the WiFi interface is active

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
2017-09-28 09:20:36 +02:00
Zoltan Gyarmati
862b820f15 ramips: introduce RT5350F-OLINUXINO.dtsi
The RT5350F-OLINUXINO(-EVB).dts files' content are nearly the same, so to avoid
code duplication this patch creates RT5350F-OLINUXINO.dtsi file which
covers the base board's features. The corresponding RT5350F-OLINUXINO.dts
just includes the new .dtsi and the RT5350F-OLINUXINO-EVB.dts adds the EVB
specific GPIO config.

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
2017-09-28 09:20:36 +02:00
Kevin Darbyshire-Bryant
fd6bf05548 ramips: add 'lwlll' portmap to mt7530 switch
The Xiaomi Mi Router 3G uses this deranged vlan portmap. Add support so
that packets are not leaked across all switch ports when reset.

Fix a whitespace nit while we're here.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
[fix wrong pvids order]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-28 07:23:18 +02:00
Kevin Darbyshire-Bryant
972c126eb6 ramips: mt7621: fix failsafe mode networking
Disable VLANs on mt7621 boards with mt7530 switches on failsafe entry.

Allows failsafe networking to work correctly.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
[fixed default case syntax error]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-28 07:23:18 +02:00
Mathias Kresin
36fd53f9a9 ltq-vdsl-mei: disable optimized firmware download
With ltq-vdsl-mei 1.5.17.6 an optimized firmware download was added and
enabled by default. As soon as the optimized firmware download is
enabled, a watchdog based reboot is trigger between 24h to 48h of
uptime if the board isn't connected to a xdsl line.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-28 07:23:18 +02:00
Martin Schiller
f1ae982f8d ltq-vdsl: fix PM thread suspend and resume handling
This is a backport form drv_dsl_cpe_api-4.18.10 and fixes some PM
thread handling issues which lead to high system load and watchdog
trigger within 1h of uptime for boards not connected to a xdsl line.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-09-28 07:23:18 +02:00
Magnus Kroken
a9a37526a9 openvpn: update to 2.4.4
Fixes CVE-2017-12166: out of bounds write in key-method 1.

Remove the mirror that was temporarily added during the
2.4.3 release.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2017-09-28 04:05:44 +03:00
Stijn Tintel
fde7688055 kernel: update 4.9 to 4.9.52
Refresh patches.
Compile-tested on x86/64.
Runtime-tested on x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-28 00:27:50 +03:00
Lorenzo Santina
c14cc531e5 hostapd: update wpa_supplicant p2p config
Update the config file to the latest version.

Added CONFIG_EAP_FAST=y because it was the only
missing flag about EAP compared to full config.

Removed NEED_80211_COMMON flag because it is not part
of config file, it is set by the hostapd upstream Makefile.

Other flags are the same as before.

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[add punctuation to commit msg]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-28 00:27:36 +03:00
Lorenzo Santina
1cde4395d0 hostapd: update wpa_supplicant mini config
Update the config file to the latest version.
Enabled flags are the same as before.

Removed NEED_80211_COMMON flag because it is not part
of config file, it is set by the hostapd upstream Makefile.

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[add punctuation to commit msg]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-28 00:27:26 +03:00
Lorenzo Santina
65113799d7 hostapd: update wpa_supplicant full config
Update the config file to the latest version.
Enabled flags are the same as before.

Commented CONFIG_IEEE80211W=y flag because it is
set in the Makefile, only if the driver supports it.

Removed NEED_80211_COMMON flag because it is not part
of config file, it is set by the hostapd upstream Makefile.

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[add punctuation to commit msg]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-28 00:27:14 +03:00
Lorenzo Santina
70ade53692 hostapd: update hostapd mini config
Update the config file to the latest version.
Enabled flags are the same as before.

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[add punctuation to commit msg]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-28 00:27:01 +03:00
Lorenzo Santina
7865e86b0e hostapd: update hostapd full config
Update the config file to the latest version.
Enabled flags are the same as before.

Removed flag CONFIG_WPS2 because it is no more
needed due to this changelog (2014-06-04 - v2.2):
"remove WPS 1.0 only support, i.e., WSC 2.0
support is now enabled whenever CONFIG_WPS=y is set".

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[add punctuation to commit msg]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-28 00:26:11 +03:00
Hans Dedecker
754659ddb5 curl: fix disable threaded resolver
Bump to 7.55.1 broke the disable threaded resolver feature as reported
in https://github.com/curl/curl/issues/1784.
As a result curl is always compiled with the threaded resolver feature
enabled which causes a dependency issue on pthread for uclibc.
Fix this issue by backporting the upstream curl commit which fixes
disable threaded resolver.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-27 17:33:48 +02:00
Stijn Tintel
456de21297 ipset: replace patch that was reverted upstream
Use the correct prefix for backports while at it.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-26 18:18:44 +03:00
Hauke Mehrtens
253a299604 Revert "brcm47xx: Fix sysupgrade with E1200v1"
This reverts commit 31e9445b7e.

"Linksys E1200 V1" is not a valid board name, as the brcm47xx arch code
can not detect this device. Stefan Lippers-Hollmann also found a typo in
this patch "cybetran" instead of "cybertan".

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-25 23:09:33 +02:00
Marko Ratkaj
56348c95e9 uboot-mvebu: add OpenSSL compat patches
Fixes the following build issue: "undefined reference to `EVP_MD_CTX_create'"

From: Jelle van der Waa <jelle@vdwaa.nl>

The rsa_st struct has been made opaque in 1.1.x, add forward compatible
code to access the n, e, d members of rsa_struct.

EVP_MD_CTX_cleanup has been removed in 1.1.x and EVP_MD_CTX_reset should be
called to reinitialise an already created structure.

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-09-25 23:08:33 +02:00
Marko Ratkaj
49e6e9ca39 uboot-mvebu: fix SETEXPR redefinition warning
Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-09-25 23:08:32 +02:00
Marko Ratkaj
ad0e107c23 uboot-mvebu: add missing UBOOT_MAKE_FLAGS variable
This patch removes "/bin/sh: HOSTCPPFLAGS: command not found" errors douring build.

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-09-25 22:38:29 +02:00
Stijn Tintel
118efdcdba Revert "toolchain/gdb: update to version 8.0.1"
Since version 8.0, gdb requires at least gcc 4.8. Unfortunately some of
the buildbot slaves don't meet this requirement, and fail to build LEDE
after the gdb upgrade. Revert to the previous gdb version for now.

This reverts commit 592abe9ef5.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-25 23:20:32 +03:00
Stijn Tintel
b0f8b13331 samba36: add Package/samba/Default
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-25 22:53:59 +03:00
Stijn Tintel
7e58392bcb ipset: bump to 6.34
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-25 22:52:46 +03:00
Ryan Mounce
592abe9ef5 toolchain/gdb: update to version 8.0.1
Fixes CVE-2017-9778.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
[reference fixed CVE]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-25 07:42:34 +03:00
Stijn Tintel
d9beae9b9e curl: bump to 7.55.1
Update 200-no_docs_tests.patch.
Refresh patches.

Fixes the following CVEs:
- CVE-2017-1000099
- CVE-2017-1000100
- CVE-2017-1000101

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-25 07:42:34 +03:00
Stijn Tintel
2ad649d134 iperf: bump to 2.0.10
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-25 07:42:34 +03:00
Rosen Penev
31e9445b7e brcm47xx: Fix sysupgrade with E1200v1
Entry was missing for some reason.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-09-24 16:28:28 +02:00
Lucian Cristian
a7465f375a sunxi: add Olimex A20-OLinuXino-LIME2-eMMC
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
[replaced u-boot patch with original version from u-boot git]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-24 16:28:28 +02:00
Marko Ratkaj
0fb14a2b1a tools: flex: fix segfault with glibc 2.26+
Fix segmentation fault caused by implicit declaration of function 'reallocarray'. Added patch will enable
reallocarray() prototype in glibc 2.26+ on Linux systems. This fix will be included in flex 2.6.5.

Fixes LEDE issue: FS#1003 (Flex does not build with GCC 7.2)

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-09-24 16:28:28 +02:00
Philip Prindeville
f138833d0c kernel: don't scrimp on memory on big iron
x86_64 platforms typically don't lack memory, so don't needlessly
economize memory if fq_codel on capable platforms.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
[Add a comment to the patch]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-24 16:28:28 +02:00
James Christopher Adduono
82739648c0 kernel: kmod-usb-storage-uas
This will allow you to build and package the uas.ko module.
With more routers supporting USB 3.0 host this could help
speed up activities like DLNA and Samba, as well as reduce
CPU utilization over BOT mass storage drivers.

Signed-off-by: James Christopher Adduono <jc@adduono.com>
2017-09-22 19:16:54 +02:00
Kevin Darbyshire-Bryant
3fbf3ab44f ramips: fix missing mediatek wdt
mediatek MT7621 soc watchdog DTS id was renamed from "mtk,mt7621-wdt" to
"mediatek,mt7621-wdt" when driver upstreamed to kernel 4.5

Update mt7621.dtsi & mt7628an.dtsi definitions to match upstreamed
kernel.

Restores hardward watchdog functionality on mt7621 devices under linux
4.9

Tested on: MIR3G

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-22 10:28:59 +02:00
Adrian Panella
ab26fc6c8d uhttp: update to latest version
3fd58e9 2017-08-19 uhttpd: add manifest support
88c0b4b 2017-07-09 file: fix basic auth regression
99957f6 2017-07-02 file: remove unused "auth" member from struct
path_info
c0a569d 2017-07-02 proc: expose HTTP_AUTH_USER and HTTP_AUTH_PASS
ad93be7 2017-07-02 auth: store parsed username and password
fa51d7f 2017-07-02 proc: do not declare empty process variables
a8bf9c0 2017-01-26 uhttpd: Add TCP_FASTOPEN support
e6cfc91 2016-10-25 lua: ensure that PATH_INFO starts with a slash

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2017-09-21 23:03:46 +02:00
Hans Dedecker
47f3645930 libubox: fix uloop race condition
7a10576 uloop: Fix race condition in SIGCHLD handling

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-21 23:03:36 +02:00
Stijn Tintel
6e48eb22b8 kernel: update 4.9 to 4.9.51
Refresh patches.
Compile-tested on octeon and x86/64.
Runtime-tested on octeon and x86/64.

Fixes the following CVEs:
- CVE-2017-14106
- CVE-2017-14497

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-20 23:50:55 +03:00
Stijn Tintel
6c32e05218 arm-trusted-firmware-sunxi: depend on sunxi target
The arm-trusted-firmware-sunxi package is only used by the Allwinner
A64, so only make it selectable for its subtarget sunxi/cortexa53.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
Reviewed-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-09-20 23:49:36 +03:00
Sandeep Sheriker Mallikarjun
670448a002 at91bootstrap: New package at91bootstrap
at91bootstrap is a second-level bootloader for Microchip(Atmel AT91) SoCs.
It provides a set of algorithms to manage the hardware initialization and
to download the main application or a third-level bootloader(i.e. uboot)
from specified boot media to main memory and execute it.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:46 +02:00
Sandeep Sheriker Mallikarjun
5b9cff921e uboot-at91: Add support for SAMA5D4 Xplained board
Add support for SAMA5D4 Xplained board and options to select & build
u-boot configs for different media storage.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:38 +02:00
Sandeep Sheriker Mallikarjun
dacab6472d uboot-at91: Add support for SAMA5D2 Xplained board
Add support for SAMA5D2 Xplained board and options to select & build
u-boot configs for different media storage.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:31 +02:00
Sandeep Sheriker Mallikarjun
8f1764b98a uboot-at91: Add support for SAMA5D3 Xplained board
Add support for SAMA5D3 Xplained board and options to select & build
u-boot configs for different media storage.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:24 +02:00
Sandeep Sheriker Mallikarjun
71a93a22fd uboot-at91: move BUILD_SUBTARGET from U-Boot/Default to devices
currenlty U-Boot/Default supports only at91 legacy devices.To add
sama5 support, moving BUILD_SUBTARGET from U-Boot/Default to target
devices.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:16 +02:00
Sandeep Sheriker Mallikarjun
09bf441090 at91: Add UBI parameters for sama5d4.
Add UBIFS_OPTS & UBINIZE_OPTS parameters for sama5d4 Xplained board.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:09 +02:00
Sandeep Sheriker Mallikarjun
67303259ee at91: Add SAMA5D4 device
Add support for SAMA5D4 with target device as at91-sama5d4_xplained
in SAMA5 subtarget and build images for SAMA5D4 Xplained board.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:01:02 +02:00
Sandeep Sheriker Mallikarjun
fdaaa923dd at91: Add SAMA5D2 device
Add support for SAMA5D2 with target device as at91-sama5d2_xplained
in SAMA5 subtarget and build images for SAMA5D2 Xplained board.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:00:44 +02:00
Sandeep Sheriker Mallikarjun
d7a679a036 at91: Install zImage.
Installing zImage to bin folder of device target.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:00:36 +02:00
Sandeep Sheriker Mallikarjun
feb1907270 build: add image command for installing zImage file.
Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:00:25 +02:00
Sandeep Sheriker Mallikarjun
f8a5ac1a88 at91: Renaming subtarget sama5d3 to sama5
Renaming at91 subtarget sama5d3 to sama5 and using at91-sama5d3_xplained
as a target device in sama5 subtarget.This will enable to add other
sama5d2 & sama5d4 target devices in sama5 subtraget.This will avoid
code duplication when sama5d2 & sama5d4 added as different subtarget.

Signed-off-by: Sandeep Sheriker Mallikarjun <sandeepsheriker.mallikarjun@microchip.com>
2017-09-20 09:00:14 +02:00
Philip Prindeville
76ba01a392 build: remove @ as it's causing an error
Since $(DownloadMethod/unknown) is being invoked in the expansion of
$(call locked ...) anyway, you can't have an @ because the shell
doesn't know what to do with it.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-09-20 08:50:49 +02:00
Chen Minqiang
40fd77fd10 ipq-wifi: fix missing define of PKG_NAME
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
2017-09-20 08:49:49 +02:00
Philip Prindeville
3008fc9a7b usbutils: avoid duplicating the git revision
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-09-20 02:08:09 +02:00
Sven Roederer
ce53c0e718 openvpn: add "extra-certs" option
This option is used to specify a file containing PEM certs, to complete the
local certificate chain. Which is quite usefull for "split-CA" setups.

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-09-19 20:05:57 +08:00
Lucian Cristian
f295db6e46 sunxi: add Olimex A20-OlinuXino-LIME2
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-09-18 21:29:16 +02:00
Lorenzo Santina
b0d2c4ac41 hostapd: ft_over_ds support
Add support for ft_over_ds flag in ieee80211r

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
2017-09-18 21:24:10 +02:00
Lorenzo Santina
70593acdd5 hostapd: ft_psk_generate_local support
Add support for ft_psk_generate_local flag in ieee80211r

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[original author]
Signed-off-by: Sergio <mailbox@sergio.spb.ru>
2017-09-18 21:23:35 +02:00
Hauke Mehrtens
2a2b32a77f ath10k-firmware: use firmware from git instead of extra download
Instead of manually downloading the files again we can also take the
same files directly from the ath10k-firmware git which was cloned
before.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 20:56:56 +02:00
Hauke Mehrtens
24c2f5125e sunxi: Add A64 support with cortex53 subtarget
This adds initial support for the A64 Allwinner SoC to LEDE.
It will be build in the new cortexa53 subtarget.

Currently it only supports the pine64 and the image is able to boot on
this SoC.

Camera, Ethernet, HDMI and other parts are currently not working.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 20:34:55 +02:00
Hauke Mehrtens
3b88f74bbe sunxi: Backport patches from kernel 4.11 for A64
This backports some more patches from kernel 4.11 adding more devices
to the device tree of the A64 SoC.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 20:34:55 +02:00
Hauke Mehrtens
34a422794d sunxi: Backport patches needed for A64
This backports multiple patches from kernel 4.10 which are adding
missing support for the A64 and the pine64 board. These are the device
tree files, the pinctlk and the clock driver.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 20:34:55 +02:00
Hauke Mehrtens
e080a7ce07 uboot-sunxi: build A64 SoC and pine64 U-Boot
This creates a U-Boot for the aarch64 SoC A64 on the pine64 board.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:27 +02:00
Hauke Mehrtens
ea46d386e0 arm-trusted-firmware-sunxi: add new package
This is needed for the Boot loader of the A64 SoC.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:26 +02:00
Hauke Mehrtens
41e7d2e2e8 sunxi: split into cortex A8 and A7 subtarget
Now we can activate some compiler optimizations for the cortex A7.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:26 +02:00
Hauke Mehrtens
4b81bb13f4 sunxi: fix build of rtc package when module not available
If the Kconfig option CONFIG_RTC_DRV_SUNXI is not selected this package
should be be build.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:26 +02:00
Hauke Mehrtens
b9a35920bf uboot-sunxi: revert the usage of binman
This will avoid the usage of swig.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:26 +02:00
Hauke Mehrtens
85b7d780c5 uboot-sunxi: do not depend on dtc being install on host
make mkimage check the DTC environment variable first.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:26 +02:00
Hauke Mehrtens
1422d4435b uboot-sunxi: update to version 2017.07
The deleted patches are already integrated in the upstream U-Boot
version.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:36:26 +02:00
Hauke Mehrtens
ea9fab904b sunxi: add support for kernel 4.9
Most of the patches were backpoprts from the mainline kernel and are
integrated upstream now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:35:48 +02:00
Hauke Mehrtens
f7afcf1975 kernel: add some config options
These are needed for the sunxi target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 18:35:48 +02:00
Stijn Tintel
a23e00239d rb532: drop 4.4 support
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-18 15:22:16 +03:00
Roman Yeryomin
c8ab03375a rb532: add myself as maintainer
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-09-18 15:22:16 +03:00
Roman Yeryomin
8291b0bd35 rb532: switch to 4.9
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-09-18 15:22:16 +03:00
Roman Yeryomin
740a5753e5 rb532: add support for 4.9
Includes latest korina fixes.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
[rewrite commit message (subject <= 50 characters)]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-18 15:20:48 +03:00
Roman Yeryomin
c4354797f7 rb532: set lan interface type to brigde
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2017-09-18 15:20:41 +03:00
Roman Yeryomin
87d3b3b5ff rb532: increase kernel size limit
This is required to support kernel 4.9.

Signed-off-by: Roman Yeryomin <roman@advem.lv>
[rewrite commit message (subject <= 50 characters)]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-18 15:17:45 +03:00
Marcin Jurkowski
feab5fa51e dnsmasq: fix dhcp "ignore" option on wwan interfaces
Init script won't append --no-dhcp-interface option if interface
protocol is one of: ncm, directip, qmi, mbim.
This is caused by IP address assigned to dynamically created netifd
interfaces. As a result there's no netmask assigned to the main
interface and dhcp_add() function returns prematurely.

By moving network subnet check we can ensure that --no-dhcp-interface is
properly generated for wwan interfaces.

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase; move network checks]
2017-09-18 10:14:34 +02:00
Hans Dedecker
400c5f03c3 base-files: fix wan6 interface config generation for pppoe
Setting ipv6 to auto in case of a pppoe interface will trigger the
creation of a dynamic wan_6 interface meaning two IPv6 interfaces
(wan6 and wan_6) will be active on top of the pppoe interface.
This leads to unpredictable behavior in the network; therefore set
ipv6 to 1 which will prevent the dynamic creation of the wan_6
interface.
Further alias the wan6 interface on top of the wan interface for pppoe
as the wan6 interface can only be started when the link local address is
ready. In case of pppoe the link local address is negotiated during the
Internet Protocol Control Protocol when the PPP link is setup meaning
all the IP address info is only available when the wan interface is up.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-18 09:57:34 +02:00
Stijn Tintel
e37c7636ee kernel: update 4.9 to 4.9.50
Refresh patches.
Compile-tested on ipq8065/nbg6817 and x86/64.
Runtime-tested on ipq8065/nbg6817 and x86/64.

Fixes CVE-2017-1000251.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
[adapt qcom_nandc.c patches to match upstream changes, test ipq8065/nbg6817]
Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
2017-09-18 04:35:57 +03:00
Florian Fainelli
bb83c9dcca kernel: update to 3.18.71
Delete a bunch of fixes that are already included.
Refresh patches.
Compile-tested on malta/mipsel
Runtime-tested on malta/mipsel

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-18 02:08:18 +03:00
Stijn Tintel
2375e279a7 tcpdump: noop commit to refer CVEs fixed in 4.9.2
When bumping tcpdump from 4.9.1 to 4.9.2, I did not include the fixed
CVEs in the commit message. As the list of fixed CVEs is quite long,
we should probably mention them in the changelogs of the releases to
come. This commit will make sure this happens.

The following CVEs were fixed in 21014d9708:

CVE-2017-11541
CVE-2017-11541
CVE-2017-11542
CVE-2017-11542
CVE-2017-11543
CVE-2017-11543
CVE-2017-12893
CVE-2017-12894
CVE-2017-12895
CVE-2017-12896
CVE-2017-12897
CVE-2017-12898
CVE-2017-12899
CVE-2017-12900
CVE-2017-12901
CVE-2017-12902
CVE-2017-12985
CVE-2017-12986
CVE-2017-12987
CVE-2017-12988
CVE-2017-12989
CVE-2017-12990
CVE-2017-12991
CVE-2017-12992
CVE-2017-12993
CVE-2017-12994
CVE-2017-12995
CVE-2017-12996
CVE-2017-12997
CVE-2017-12998
CVE-2017-12999
CVE-2017-13000
CVE-2017-13001
CVE-2017-13002
CVE-2017-13003
CVE-2017-13004
CVE-2017-13005
CVE-2017-13006
CVE-2017-13007
CVE-2017-13008
CVE-2017-13009
CVE-2017-13010
CVE-2017-13011
CVE-2017-13012
CVE-2017-13013
CVE-2017-13014
CVE-2017-13015
CVE-2017-13016
CVE-2017-13017
CVE-2017-13018
CVE-2017-13019
CVE-2017-13020
CVE-2017-13021
CVE-2017-13022
CVE-2017-13023
CVE-2017-13024
CVE-2017-13025
CVE-2017-13026
CVE-2017-13027
CVE-2017-13028
CVE-2017-13029
CVE-2017-13030
CVE-2017-13031
CVE-2017-13032
CVE-2017-13033
CVE-2017-13034
CVE-2017-13035
CVE-2017-13036
CVE-2017-13037
CVE-2017-13038
CVE-2017-13039
CVE-2017-13040
CVE-2017-13041
CVE-2017-13042
CVE-2017-13043
CVE-2017-13044
CVE-2017-13045
CVE-2017-13046
CVE-2017-13047
CVE-2017-13048
CVE-2017-13049
CVE-2017-13050
CVE-2017-13051
CVE-2017-13052
CVE-2017-13053
CVE-2017-13054
CVE-2017-13055
CVE-2017-13687
CVE-2017-13688
CVE-2017-13689
CVE-2017-13690
CVE-2017-13725

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-18 01:33:40 +03:00
Hauke Mehrtens
45d0b88e44 mac80211: make iwlwifi select AC support
Some NICs supported by this driver support ieee80211 AC.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-17 15:08:53 +02:00
Hauke Mehrtens
aa00d11526 linux-firmware: pack Intel iwl FW separately
Do not create one big package with all the Intel firmware files
supported by the iwlwifi driver, but use a separate package for each
chip.

This also updates some 7000 and 8000 series firmware files to more
recent version. The older versions shipped are not supported by the
current driver any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-17 15:08:52 +02:00
Hauke Mehrtens
1b2c93988f mac80211: add dev_coredumpm() function
dev_coredumpm() was added with kernel 4.7, but it is used by iwlwifi.
When the dev coredump framework form compat-wireless is used this is not
a problem because it already contains this, but this is deactivated if
the build system finds out that it is already included in the kernel we
compile against. This option was now activated by the bluetooth driver
btmrvl. Having dev coredump in the kernel adds about 400 bytes to the
lzma compressed kernel for brcm47xx.

This is copied from a more recent backports version to add the
dev_coredumpm() function when the internal core devdump is not used.

Fixes: a5922f6 ("kernel: bluetooth: add marvell sdio bluetooth module")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-17 14:54:28 +02:00
Daniel Engberg
692aa82981 kernel: kmod-btmrvl: Add kmod-mmc as dependency
This fixes the build of this module and should fix the build bots.

Fixes: a5922f6 ("kernel: bluetooth: add marvell sdio bluetooth module")
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[removed mveub dependency and update commit comment]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-17 10:42:07 +02:00
Florian Fainelli
9fc5df52ff generic: drop 704-phy-no-genphy-soft-reset.patch
4.4.80+ contains 71a165f6397df07a06ce643de5c2dbae29bd3cfb, 4.9.41+ contains
6c78197e4a69c19e61dfe904fdc661b2aee8ec20 which are all backports of upstream
commit 0878fff1f42c18e448ab5b8b4f6a3eb32365b5b6 ("net: phy: Do not perform
software reset for Generic PHY").

Our local patch is no longer needed, all this patch was doing was utilizing
gen10g_soft_reset which does nothing either, so just keep the code unchanged.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-09-16 16:38:24 -07:00
Florian Fainelli
ef485bb23d dnsmasq: Pass TARGET_CPPFLAGS to Makefile
With the introduction of the ubus notifications, we would now fail building
dnsmasq with external toolchains that don't automatically search for headers.
Pass TARGET_CPPFLAGS to the Makefile to resolve that.

Fixes: 34a206bc11 ("dnsmasq: add ubus notifications for new leases")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-09-16 16:38:19 -07:00
Florian Fainelli
ba792ee219 armvirt: Enable CONFIG_ARM_PMU
We will be prompted with this config symbol when performance monitoring is
enabled in the kernel.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-09-16 16:38:10 -07:00
Henryk Heisig
172dfa737a mvebu: WRT3200ACM: add bluetooth module
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-09-17 00:59:55 +02:00
Henryk Heisig
a5922f6c46 kernel: bluetooth: add marvell sdio bluetooth module
This commit add support for Marvell bluetooth with SDIO interface.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
[Fix KCONFIG and FILES option]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-17 00:59:55 +02:00
Henryk Heisig
8637110189 linux-firmware: update to the commit from 2017-09-06
update firmware mrvl/sd8887_uapsta.bin

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
[update to version 2017-09-06]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-09-17 00:59:41 +02:00
Daniel Engberg
5b1660a538 utils/e2fsprogs: Update to 1.43.6
Update e2fsprogs to 1.43.6
Disable compilation of fuse2fs (we don't package it)
Disable thread support (only affects fuse2fs)
Enable linking with libblkid instead of using private (included) version.
The libblkid is ~210KBytes in size, but with using the shared library
the binaries are ~25KBytes smaller. This also brings it in sync with
most other Linux distributions.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-17 00:26:52 +02:00
Philip Prindeville
344fde35e3 kernel: add packaging for Xeon iTCO watchdog timer
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-09-17 00:08:00 +02:00
Kabuli Chana
010cddc2b0 mwlwifi: update to version 10.3.4.0 / 2017-08-10
Update mwlwifi

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
2017-09-17 00:07:36 +02:00
Alexandru Ardelean
7bc80364b7 libs/wolfssl: bump to version 3.12.0 ; add myself as maintainer
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-09-17 00:00:12 +02:00
Alexandru Ardelean
41706d05b9 libs/wolfssl: adjust symbol defaults against libwolfssl defaults
Some symbols have been renamed.
Some are default enabled/disabled, so we need
to adjust semantics against that.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-09-17 00:00:12 +02:00
Alexandru Ardelean
8334a23679 libs/wolfssl: disable hardening check in settings.h
This seems to cause a false-positive warning/error
while building `libwebsockets-cyassl`.

```
make[6]: Leaving directory '/home/sandu/work/lede/build_dir/target-x86_64_musl/libwebsockets-cyassl/libwebsockets-2.2.1'
make[6]: Entering directory '/home/sandu/work/lede/build_dir/target-x86_64_musl/libwebsockets-cyassl/libwebsockets-2.2.1'
[  2%] Building C object CMakeFiles/websockets.dir/lib/base64-decode.c.o
In file included from /home/sandu/work/lede/staging_dir/target-x86_64_musl/usr/include/wolfssl/ssl.h:31:0,
                 from /home/sandu/work/lede/staging_dir/target-x86_64_musl/usr/include/cyassl/ssl.h:33,
                 from /home/sandu/work/lede/staging_dir/target-x86_64_musl/usr/include/cyassl/openssl/ssl.h:30,
                 from /home/sandu/work/lede/build_dir/target-x86_64_musl/libwebsockets-cyassl/libwebsockets-2.2.1/lib/private-libwebsockets.h:256,
                 from /home/sandu/work/lede/build_dir/target-x86_64_musl/libwebsockets-cyassl/libwebsockets-2.2.1/lib/base64-decode.c:43:
/home/sandu/work/lede/staging_dir/target-x86_64_musl/usr/include/wolfssl/wolfcrypt/settings.h:1642:14: error: #warning "For timing resistance / side-channel attack prevention consider using harden options" [-Werror=cpp]
             #warning "For timing resistance / side-channel attack prevention consider using harden options"

```

Hardening is enabled by default in libwolfssl at build-time.

However, the `settings.h` header is exported (along with other headers)
for build (via Build/InstallDev).

This looks like a small bug/issue with wolfssl.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-09-17 00:00:12 +02:00
Alexandru Ardelean
d03c23c8d4 cyassl,curl,libustream-ssl: rename every cyassl to wolfssl
This is to eliminate any ambiguity about the cyassl/wolfssl lib.

The rename happened some time ago (~3+ years).
As time goes by, people will start to forget cyassl and
start to get confused about the wolfSSL vs cyassl thing.

It's a good idea to keep up with the times (moving forward).

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-09-17 00:00:12 +02:00
Alexandru Ardelean
560b7334ec libs/wolfssl: add libcysassl to PROVIDES field (for backwards compat)
Until other packages from feeds decide to rename the
dependency of `+libcyassl` to `+libwolfssl`, this allows
for a bit of backwards compatibility with those packages.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-09-17 00:00:12 +02:00
Alexandru Ardelean
ad510c4d62 wwan: json format in some modem definitions
Method used:
```
cd package/network/utils/wwan/files/data
sed -e 's/}}/}/g' -i *
sed -e 's/}\t"acm": 1/\t"acm": 1/g' -i *
sed -e 's/}\t"generic": 1/\t"generic": 1/g' -i *
```

Manually adjusted commas.
Validated with
```
for f in `ls` ; do echo $f ; python -m json.tool < $f || break ; done
```

Thanks to @lynxis for pointing out the commas.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-09-16 23:04:46 +02:00
Daniel Engberg
ed617fd8f2 tools/e2fsprogs: Update to 1.43.6
Update e2fsprogs to 1.43.6
* Remove FreeBSD patch as it's not needed, FreeBSD 9.1 is EoL and this
  is compiling on FreeBSD 11.1.
* Remove libmagic patch, RHEL 5 is EoL (End of Production Phase) since
  March 31, 2017.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-16 22:22:44 +02:00
Daniel Engberg
b0f26243fe tools/expat: Update to 2.2.4
Update (lib)expat to 2.2.4

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-09-16 22:22:44 +02:00
Kevin Darbyshire-Bryant
3f4f580954 toolchain: gcc: update 7.x to 7.2.0
Bump gcc from 7.1 to 7.2

Compile & run tested: ar71xx

Trace history of current patches and update with commit ref & comment
to give more clue as to why they're still around/needed.  Some have
changed form since the original commit but some clue is better than no
clue at all.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-09-16 19:33:37 +02:00
Kevin Darbyshire-Bryant
820101873d kernel: update 4.4 to 4.4.88
Refresh patches.
Compile & run tested: ar71xx  Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-16 19:27:08 +02:00
Karl Palsson
ae57675bba odhcpd: don't enable server mode on non-static lan port
Instead of blindly enabling the odhcpd v6 server and RA server on the
lan port, only do that if the lan port protocol is "static"

This prevents the unhelpful case of a device being a dhcpv4 client and
v6 server on the same ethernet port.

Signed-off-by: Karl Palsson <karlp@etactica.com>
[PKG_SOURCE_DATE increase; odhcpd.defaults script cleanup]
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-16 09:37:50 +02:00
Jiawei Wang
9c500db896 ramips: fix used MAC addresses for Phicomm K2P
The factory partition of the Phicomm K2P contains two MAC addresses.
The lower MAC address is at offset 0xe006 and the higher one is at
offset 0xe000.

Use the lower MAC address as base mac-address which the switch driver
increments by one for the second (wan) vlan.

The MAC addresses are still inverted in contrast to the stock firmware
where the lower MAC address is used for wan. But at least the use of a
MAC address not intended/reserved for this particular board is fixed.

Signed-off-by: Jiawei Wang <me@jwang.link>
2017-09-15 07:14:29 +02:00
Hans Dedecker
c88770c766 odhcpd: update to git HEAD version
f0bce9c dhcpv4: fix memset compile issue
0ba3278 dhcpv4: rework assignment lookup
e3b49f3 dhcpv4: cleanup dhcpv4_test usage
47fe122 dhcpv4: rework lease expire handling logic
028ab85 dhcpv4: force renew nonce authentication support
a827fca dhcpv4: avoid segfault when there's no IPv4 prefix
bea088b ndp: detect ifindex changes via interface netlink events
f66103e ubus: display accept reconf status for DHCPv6 assignments
f0e354b treewide: replace RELAYD prefix naming in macros
1a313f9 dhcpv4: fix possible segfault when lease is not created
e2d6eb4 dhcpv4: dhcpv4: move interface lease list insertion out of dhcpv4_assign

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-13 22:32:52 +02:00
Kristian Evensen
133815ad8f ramips: fix D240 mini-PCIe power control GPIOs
In commit b11c51916c ("ramips: Improve Sanlinking D240 config") I made
a mistake with regards GPIO numbering. And in addition to specifying the
wrong GPIO for controling the power of one of the mini-PCIe, I recently
discovered that the power of both slots can be controlled.

This patch specifies the correct GPIO for the left-most mini-PCIe slot
of the D240 (labeled power_mpcie2 since the slot is attached to SIM2),
and adds a GPIO that can be used to control the power of the other
mini-PCIe slot (labeled power_mpcie1).

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
[do not use the gpio active macros for the gpio-export value]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-13 08:07:54 +02:00
Maxim Anisimov
161a3be5ad ramips: add support for TP-Link Archer C20 v1
TP-Link Archer C20 v1 is a router with 5-port FE switch and
non-detachable antennas. It's very similiar to TP-Link Archer C50.
Also it's based on MediaTek MT7620A+MT7610EN.

Specification:
- MediaTek MT7620A (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 5x 10/100 Mbps Ethernet
- 2x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- 8x LED (GPIO-controlled*), 2x button, power input switch
- 1 x USB 2.0 port

* WAN LED in this devices is a dual-color, dual-leads type which isn't
  (fully) supported by gpio-leds driver. This type of LED requires both
  GPIOs state change at the same time to select color or turn it off.
  For now, we support/use only the blue part of the LED.
* MT7610EN ac chip isn't not supported by LEDE. Therefore 5Ghz won't
  work.

Factory image notes:

These devices use version 3 of TP-Link header, fortunately without RSA
signature (at least in case of devices sold in Europe). The difference
lays in the requirement for a non-zero value in "Additional Hardware
Version" field. Ideally, it should match the value stored in vendor
firmware header on device.

We are able to prepare factory firwmare file which is accepted and
(almost) correctly flashed from the vendor GUI. As it turned out, it
accepts files without U-Boot image with second header at the beginning
but due to some kind of bug in upgrade routine, flashed image gets
corrupted before it's written to flash. So, to flash this device we must
to prepare image using original firmware from tp-link site with uboot.

Flash instruction:

Until (if at all) TP-Link fixes described problem, the only way to flash
LEDE image in these devices is to use tftp recovery mode in U-Boot.
There are two ways to flash the device to LEDE:

1) Using tftp mode with UART connection and original LEDE image

 - Place lede-ramips-mt7620-ArcherC20-squashfs-factory.bin in tftp
   server directory
 - Configure PC with static IP 192.168.0.66/24 and tftp server.
 - Connect PC with one of LAN ports, power up the router and press
   key "4" to access U-Boot CLI.
 - Use the following commands to update the device to LEDE:

    setenv serverip 192.168.0.66
    tftp 0x80060000 lede-ramips-mt7620-ArcherC20-squashfs-factory.bin
    erase tplink 0x20000 0x7a0000
    cp.b 0x80060000 0x20000 0x7a0000
    reset

 - After that the device will reboot and boot to LEDE

2) Using tftp mode without UART connection but require some
   manipulations with target image

 - Download and unpack TP-Link Archer C20 v1 firmware from original web
   site
 - Split uboot.bin from original firmware by this command (example):

    dd if=Archer_C20v1_0.9.1_4.0_up_boot(160427)_2016-04-27_13.53.59.bin of=uboot.bin bs=512 count=256 skip=1

 - Create ArcherC20V1_tp_recovery.bin using this command:

    cat uboot.bin lede-ramips-mt7620-ArcherC20-squashfs-factory.bin > ArcherC20V1_tp_recovery.bin

 - Place ArcherC20V1_tp_recovery.bin in tftp server directory.
 - Configure PC with static IP 192.168.0.66/24 and tftp server.
 - Connect PC with one of LAN ports, press the reset button, power up
   the router and keep button pressed for around 6-7 seconds, until
   device starts downloading the file.
 - Router will download file from server, write it to flash and reboot.

Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2017-09-13 08:07:54 +02:00
Thibaut VARENE
eff3549c58 generic: drop support for get_port_stats() on ar8xxx
The implementation is not efficient on ar8xxx switches. It triggers high
CPU load and degrades device performance.

The high CPU load has been traced down to the ar8xxx_reg_wait() call in
ar8xxx_mib_op(), which has to usleep_range() till the MIB busy flag set
by the request to update the MIB counter is cleared.

This commit removes the get_port_stats() code introduced in 4d8a66d and
leaves a note for future hacker's beware.

Fixes: FS#1004

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-13 08:07:54 +02:00
Lorenzo Santina
fd84ecda7d treewide: fix shellscript syntax errors/typos
Fix multiple syntax errors in shelscripts (of packages only)
These errors were causing many conditions to not working properly

Signed-off-by: Lorenzo Santina <lorenzo.santina@edu.unito.it>
[increase PKG_RELEASE, drop command substitution from directip.sh]
Signed-off-by: Mathias Kresin <dev@kresin.em>
2017-09-13 08:07:54 +02:00
David Yang
fb128057da ramips: fix hg255d LED status support
Use the green power LED for boot status indication.

Source: https://my.oschina.net/osbin/blog/278782 Para 3

Signed-off-by: David Yang <mmyangfl@gmail.com>
2017-09-13 08:07:54 +02:00
Kevin Darbyshire-Bryant
7765e442d0 basefiles: allow suid coredumps
Set sysctl fs.suid_dumpable = 2

This allows suid processes to dump core according to kernel.core_pattern
setting.  LEDE typically uses suid to drop root priviledge rather than
gain it but without this setting any suid process would be unable to
produce coredumps (e.g. dnsmasq)

Processes still need to set a non zero core file process limit ('ulimit
-c unlimited' or if procd used 'procd_set_param limits
core="unlimited"') in order to produce a core.  This setting removes an
obscure stumbling block along the way.

>From https://www.kernel.org/doc/Documentation/sysctl/fs.txt

suid_dumpable:

This value can be used to query and set the core dump mode for setuid
or otherwise protected/tainted binaries. The modes are

0 - (default) - traditional behaviour. Any process which has changed
	privilege levels or is execute only will not be dumped.
1 - (debug) - all processes dump core when possible. The core dump is
	owned by the current user and no security is applied. This is
	intended for system debugging situations only. Ptrace is unchecked.
	This is insecure as it allows regular users to examine the memory
	contents of privileged processes.
2 - (suidsafe) - any binary which normally would not be dumped is dumped
	anyway, but only if the "core_pattern" kernel sysctl is set to
	either a pipe handler or a fully qualified path. (For more details
	on this limitation, see CVE-2006-2451.) This mode is appropriate
	when administrators are attempting to debug problems in a normal
	environment, and either have a core dump pipe handler that knows
	to treat privileged core dumps with care, or specific directory
	defined for catching core dumps. If a core dump happens without
	a pipe handler or fully qualifid path, a message will be emitted
	to syslog warning about the lack of a correct setting.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2017-09-12 22:18:45 +02:00
Matthias Schiffer
53839da46e ar71xx: fix MAC addresses on TP-Link TL-WR1043ND v4
The addresses were read from the 'config' partition, which would not always
contain the addresses at the same offsets, depending on the stock firmware
version used before flashing LEDE. Change this to get the addresses from
the 'product-info' partition, which is read-only.

Reported-and-tested-by: Andreas Ziegler <ml@andreas-ziegler.de>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-09-11 19:47:19 +02:00
Kristian Evensen
79440ea756 ramips: Add support for ZBT WE1026-5G
The ZBT WE1026-5G
(http://www.zbtlink.com/products/router/WE1026-5G.html) is the follow-up
to the ZBT WE1026 and is based on MT7620. For the previous WE1026, the
ZBT WE826 image could be used. However, as the name implies, the -5G
comes equipped with a 5GHz wifi radio. As the WE826 only has a 2.4GHz
radio, the addition of 5GHz means that a separate image is needed for
the WE1026-5G. I suspect that this image will also work on the previous
WE1026, but I don't have a device to test with.

The WE1026-5G has following specifications:
* CPU: MT7620A
* 1x 10/100Mbps Ethernet.
* 16 MB Flash.
* 64 MB RAM.
* 1x USB 2.0 port.
* 1x mini-PCIe slots.
* 1x SIM slots.
* 1x 2.4Ghz WIFI.
* 1x 5GHz wifi (MT7612)
* 1x button.
* 3x controllable LEDs.

Works:
* Wifi.
* Switch.
* mini-PCIe slot. Only tested with a USB device (a modem).
* SIM slot.
* Sysupgrade.
* Button (reset).

Not working:
* The 5GHz WIFI LED is completely dead. I suspect the issue is the same
as on other devices with Mediatek 5Ghz wifi-cards/chips. The LED is
controlled by the driver, and mt76 (currently) does not support this.

Not tested:
* SD card reader.

Notes:
* The modem (labeled 3G/4G) and power LEDs are controlled by the
hardware.
* There is a 32MB version of this device available, but I do not have
access to it. I have therefor only added support for the 16MB version,
but added all the required infrastructure to make adding support for the
32MB version easy.

Installation:
The router comes pre-installed with OpenWRT, including a variant of
Luci. The initial firmware install can be done through this UI,
following normal procedure. I.e., access the UI and update the firmware
using the sysupgrade-image. Remember to select that you do not want to
keep existing settings.

Recovery:
If you brick the device, the WE1026-5G supports recovery using HTTP. Keep the
reset button pressed for ~5sec when booting to start the web server. Set the
address of the network interface on your machine to 192.168.1.2/24, and
point your browser to 192.168.1.1 to access the recovery UI. From the
recovery UI you can upload a firmware image.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-09-11 17:17:05 +02:00
Toke Høiland-Jørgensen
76c3a033f6 ath10k: Re-enable intermediate softqueues for all devices
The upstream ath10k driver disables the intermediate softqueues for some
devices. This patch reverts that behaviour and always enables the
softqueues (and associated bufferbloat fixes). We have had reports of people
running this with good results:
https://lists.bufferbloat.net/pipermail/make-wifi-fast/2017-September/001497.html

This also refreshes mac80211 patches.

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2017-09-11 17:16:17 +02:00
Baptiste Jonglez
b30ba14e2a scripts/download.pl: fail loudly if provided hash is unsupported
Currently, if the provided hash is unsupported (length different from 32
or 64 bytes), we happily download the requested file without any kind of
checksum verification.

This is quite dangerous and may provide a false sense of security, because
a single typo in the hash (e.g. one character deleted by mistake) may skip
checksum verification entirely.

Instead, fail immediately if we don't support the provided hash.
In particular, if an external package repository decides to change the
hash algorithm one day, we will now fail loudly instead of skipping
checksum verification without complaints.

Note: if some users of scripts/download.pl knowingly provide an empty hash
because they don't need checksum verification, this change will break
them.  This does not seem to be the case currently, but if this feature is
ever needed, an option should be added to download.pl instead of relying
on the hash being empty.

Fixes: eaa4eba10a ("scripts/download.pl: add SHA-256 support")

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-09-11 17:13:02 +02:00
Rosen Penev
13e5e47369 ar71xx: Add GRO support to ag71xx
On a TL-WN710N, this patch increases iperf performance from ~92.5 to ~93.5 mbps. Keep in mind the WN710N is a 100mbps device. I expect greater numbers from gigabit devices.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-09-11 17:12:42 +02:00
Rosen Penev
6aa46bf05e ramips: Change ethernet driver to use napi_complete_done.
Backport of mailine linux commit. Speeds up ethernet slightly and reduces latency.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-09-11 17:03:54 +02:00
Tim Harvey
79366b8194 cns3xxx: fix GPIO controller interrupt enable
The cns3xxx interrupt controller uses a single register and as such
the 'mask' reg/functions must be used as opposed to the 'enable'/'disable'
reg/functions.

This fixes an issue that occurs if more than one GPIO on a specific controller
(there is GPIOA and GPIOB each having 32 GPIO's) uses interrupts. When one
would get enabled all others would be disabled prior to this patch.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Acked-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-09-11 17:03:21 +02:00
Stijn Tintel
d5b7215e31 kernel: update 4.9 to 4.9.49
Refresh patches.
Compile-tested on octeon and x86/64.
Runtime-tested on octeon and x86/64.

Fixes CVE-2017-11600.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-11 01:56:14 +02:00
Stijn Tintel
c11762e435 strace: bump to 4.19
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-11 01:56:14 +02:00
Kevin Darbyshire-Bryant
69ac637fbb mbedtls: update to 2.6.0 CVE-2017-14032
Fixed an authentication bypass issue in SSL/TLS. When the TLS
authentication mode was set to 'optional',
mbedtls_ssl_get_verify_result() would incorrectly return 0 when the
peer's X.509 certificate chain had more than
MBEDTLS_X509_MAX_INTERMEDIATE_CA intermediates (default: 8), even when
it was not trusted. This could be triggered remotely on both the client
and server side. (Note, with the authentication mode set by
mbedtls_ssl_conf_authmode()to be 'required' (the default), the handshake
was correctly aborted).

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
Tested-by: Magnus Kroken <mkroken@gmail.com>
2017-09-11 01:56:14 +02:00
Stijn Tintel
21014d9708 tcpdump: bump to 4.9.2
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-11 01:56:14 +02:00
Stijn Tintel
910e3bed12 lldpd: bump to 0.9.8
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-11 01:56:14 +02:00
Enrique Giraldo
b8b410fba3 ar71xx: add metadata to wpj344 and wpj558 images
This adds metadata to wpj344 and wpj558 images to prevent loading
firmware of wpj344 into wpj558 and vice versa. This until now was
possible and break the units and had to be recovered from the uboot.

Signed-off-by: Enrique Giraldo <enrique.giraldo@galgus.net>
2017-09-10 22:15:04 +02:00
Enrique Giraldo
71067e3b79 ar71xx: wpj558: remove unused eth1 device and fix MAC address
Signed-off-by: Enrique Giraldo <enrique.giraldo@galgus.net>
2017-09-10 22:15:04 +02:00
Enrique Giraldo
fefdb1e0b9 ar71xx: add support for COMFAST CF-E355AC
COMFAST CF-E355AC is a ceiling mount AP with PoE support, based on
Qualcomm/Atheros QCA9531 + QCA9882.

Short specification:

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

Flash instruction:

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

Signed-off-by: Enrique Giraldo <enrique.giraldo@galgus.net>
[whitespace fixes, ac radio caldata offset fix]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-09-10 22:15:03 +02:00
Piotr Dymacz
90d8c0f0a2 ar71xx: add support for GL.iNet GL-USB150
GL.iNet GL-USB150 is an USB dongle WiFi router, based on Atheros AR9331.

Specification:

- 400/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- Realtek RTL8152B USB to Ethernet bridge (connected with AR9331 PHY4)
- 1T1R 2.4 GHz
- 2x LED, 1x button
- UART header on PCB

Flash instruction:

Vendor firmware is based on OpenWrt CC. GUI or sysupgrade can be used
to flash LEDE firmware.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-09-10 22:14:43 +02:00
Lorenzo Santina
bd24d53ea2 hostapd: fix iapp_interface option
ifname variable were not assigned due to syntax error
causing the hostapd config file to have an empty iapp_interface= option

Signed-off-by: Lorenzo Santina <lorenzo.santina.dev@gmail.com>
2017-09-10 08:30:32 +02:00
Jorge Amorós
e2218ea148 lantiq: ARV7519RW22: enable PCIe
Enable PCIe to make the (still unsupported) WAVE300 wireless visible to
the system.

Signed-off-by: Jorge Amorós <joramar76@yahoo.es>
2017-09-10 08:30:23 +02:00
Vittorio Alfieri
31b5069a50 lantiq: VR200v: enable PCI
Enable PCI to make the (still unsupported) WAVE300 wireless visible to
the system.

Signed-off-by: Vittorio Alfieri <vittorio88@gmail.com>
2017-09-09 10:05:05 +02:00
Thibaut VARENE
991681cf49 ramips: Archer C50v1: support US and EU versions
For the Archer C50v1, the EU and US versions are differentiated by their
respective HW additional version (0x0 for US, 0x2 for EU).

The stock web interface checks this field before flashing, making it
impossible to flash the current (US) factory image on EU hardware.

However the bootloader does not check this field, making it possible to use
a single sysupgrade image for both hardware.

This patch adds the necessary build bits to generate both EU and US factory
images, and renames the target as "Archer C50v1" since there are as of now
3 different versions of Archer C50 (all with different CPUs).

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-09 09:55:26 +02:00
Thibaut VARENE
66a8c8f04c tools/firmware-utils: mktplinkfw2: allow parameter override
This patch enables commandline override of board hw_ver and hw_ver_add

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-09 09:55:26 +02:00
Kevin Darbyshire-Bryant
09735db18b kernel: update 4.4 to 4.4.87
Fixes CVE-2017-11600

No patch refresh required

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-09 09:55:25 +02:00
Kristian Evensen
80829022b0 ramips: add support for the HNET C108
The HNET C108
(http://www.szhwtech88.com/Product-product-cid-100-id-4374.html) is a
mifi based on MT7602A, which has the following specifications:

* CPU: MT7620A
* 1x 10/100Mbps Ethernet.
* 16 MB Flash.
* 64 MB RAM.
* 1x USB 2.0 port. Only power is connected, this port is meant for
charging other devices.
* 1x mini-PCIe slots.
* 1x SIM slots.
* 1x 2.4Ghz WIFI.
* 1x button.
* 6000 mAh battery.
* 5x controllable LEDs.

Works:
* Wifi.
* Switch.
* mini-PCIe slot. Only tested with a USB device (a modem).
* SIM slot.
* Sysupgrade.
* Button (reset).

Not working (also applies to the factory firmware):
* Wifi LED. It is always switched on, there is no relation to the
up/down state or activity of the wireless interface.

Not tested:
* SD card reader.

Notes:
* The C108 has no dedicated status LED. I therefore set the LAN LED as
status LED.

Installation:
The router comes pre-installed with OpenWRT, including a variant of
Luci. The initial firmware install can be done through this UI,
following normal procedure. I.e., access the UI and update the firmware
using the sysupgrade-image. Remember to select that you do not want to
keep existing settings.

Recovery:
If you brick the device, the C108 supports recovery using TFTP. Keep the
reset button pressed for ~5sec when booting to trigger TFTP. Set the
address of the network interface on your machine to 10.10.10.3/24, and
rename your image file to Kernal.bin.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-09-09 09:55:13 +02:00
Mathias Kresin
096dff8fcd kernel: rtl8306: fix port link status
In case the link changes from down to up, the register is only updated
on read. If the link failed/was down, this bit will be 0 until after
reading this bit again.

Fixes a reported link down by swconfig alebit the link is up (query for
the link again will show the correct link status)

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-08 21:52:38 +02:00
Mathias Kresin
47be42c347 lantiq: fix xrx200 switch carrier state
In conditions where none of the switch ports is connected during boot,
the priv->port[i].link != priv->port[i].phydev->link condition is false
since both link values are equal (false). The carrier of the switch
netdev is never set to off and the link state reported by ip is UNKNOWN.

Turn the carrier off if none of the switch ports has a link, regardless
whether something has been changed. Add a check for a carrier to
prevent unnecessary calls to netif_carrier_off() if the carrier is
already off.

Based on a patch send by Martin Schiller.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-08 21:48:48 +02:00
Kevin Darbyshire-Bryant
5629904ea8 dnsmasq: backport arcount edns0 fix
Don't return arcount=1 if EDNS0 RR won't fit in the packet.

Omitting the EDNS0 RR but setting arcount gives a malformed packet.
Also, don't accept UDP packet size less than 512 in received EDNS0.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-08 10:07:04 +02:00
John Crispin
23317f18bd mediatek: fix mdio schedule while atomic error
Signed-off-by: John Crispin <john@phrozen.org>
2017-09-07 10:11:45 +02:00
Kevin Darbyshire-Bryant
9a753c49ea dnsmasq: backport official fix for CVE-2017-13704
Remove LEDE partial fix for CVE-2017-13704.

Backport official fix from upstream.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> (PKG_RELEASE increase)
2017-09-07 08:09:54 +02:00
Matthias Schiffer
f12a5b8f6d uclient: update to 2017-09-06
24d6eded73de uclient-http: fix Host: header for literal IPv6 addresses
83ce236dab86 uclient-fetch: read_data_cb: fix a potential buffer overflow

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-09-06 15:46:03 +02:00
Kristian Evensen
f3b4e50cee ramips: fix default LED configuration
Commit 77645ffcd9 ("ramips: add support for the GnuBee Personal Cloud
One") dropped the execution permission from 01_leds with the result
that the file isn't started during first boot and no default LED
configuration is added.

Revert the introduced file permission change.

Fixes: FS#979

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
[cherry picked the fix from a board support patch]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-06 08:14:23 +02:00
Hans Dedecker
995193ccdb odhcp6c: add workaround for broken extendprefix scenario
Extendprefix is typically used to extend an IPv6 RA prefix from a mobile
wan link to the LAN; such scenario requires correct RA prefix settings
like the on link flag not being set.
However some mobile manufacter set the RA prefix on link flag which breaks
basic IPv6 routing.
Work around this issue by filtering out the route being equal to the
extended prefix.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-05 14:46:18 +02:00
Mathias Kresin
6b06c2fb8e lantiq: drop kernel 4.4 support
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-09-05 08:43:39 +02:00
Edward O'Callaghan
e0d6f541f7 lantiq: switch to kernel 4.9
Signed-off-by: Edward O'Callaghan <funfunctor@folklore1984.net>
2017-09-05 08:43:39 +02:00
Kevin Darbyshire-Bryant
9c82861cb8 kernel: update 4.4 to 4.4.86
Refresh patches

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2017-09-05 08:43:39 +02:00
Daniel Gonzalez Cabanelas
3c97bad0c2 ar71xx: WNDR4300: use the switch LED trigger on the WAN port
The WAN port on the Netgear WNDR4300 router has two LEDs,
amber and green. Use the switch LED trigger to behave as the
rest of the LAN HW controlled LEDs
- Green: 1 Gbps
- Amber: 100/10 Mbps

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-09-05 08:43:39 +02:00
John Crispin
5117911d91 ramips: fix mt76x8 dependencies
The commit merging mt7628 and mt7688 failed to update some
dependencies.

Signed-off-by: John Crispin <john@phrozen.org>
2017-09-05 08:08:36 +02:00
Kuang Rufan
69323a0c07 ar71xx: add support for TL-WR1041N(v2) LAN/WAN LEDs.
1. Add support to LAN/WAN LEDs attached to ar8327.
2. Fix the problem that LAN/WAN LEDs does not blink in hardware (auto)
   mode when connected to 10M/100M ethernet.

Signed-off-by: Kuang Rufan <master@a1983.com.cn>
2017-09-04 12:48:23 +02:00
Hans Dedecker
05c3647d35 odhcp6c: add ra_holdoff config option and update to git HEAD version (FS#964)
51733a6 ra: align RA update interval with RFC4861 (FS#964)

Add ra_holdoff config option which allows to configure the RA minimum
update interval which is by default 3 seconds as stated in RFC4861.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-03 21:34:48 +02:00
Stijn Tintel
046618f5da kernel: update 4.9 to 4.9.47
Refresh patches.
Compile-tested on ramips/mt7621 and x86/64.
Runtime-tested on ramips/mt7621 and x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-03 22:06:28 +03:00
Stijn Tintel
ef255fc57e base-files: add /etc/profile.d to conffiles
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-03 01:27:46 +03:00
Stijn Tintel
8446d3de05 base-files: order conffiles alphabetically
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-09-03 01:27:46 +03:00
Hans Dedecker
80e2ee3e64 ubox: update to git HEAD version
b1bc8d5 kmodloader: log error message in case of out of memory
f346111 kmodloader: lift restriction on module alias info
f1ef2c3 kmodloader: fix possible segfaults
9cb63df kmodloader: fix endianess check
2cff779 kmodloader: Check module endian before loading
d54f38a kmodloader/get_module_info: initialized aliases to make it more clean
a0b6fef kmodloader: insmod: fix a memoryleak in error case
278c4c4 kmodloader/get_module_name: null-terminate the string
16f7e16 syslog: remove unnecessary sizeof struct between messages

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-09-01 16:05:59 +02:00
John Crispin
b957e455eb rukes.mk: this patch broken grub2 builds
Revert "rules.mk: add missing CPP definition"

This reverts commit 569f74ef49.

Signed-off-by: John Crispin <john@phrozen.org>
2017-09-01 10:17:22 +02:00
Thibaut VARENE
c30a70fc9f generic: make switch_port_stats tx/rx_bytes long long
This generic structure defines tx_bytes and rx_bytes as unsigned long (u32),
while several devices would typically report unsigned long long (u64).

The code can work as is, but there's a chance that with a sufficiently fast
interface the overflow might happen too fast to be correctly noticed by the
consumers of this data.

This patch makes both field unsigned long long and updates the only known
consumer of this data: swconfig_leds.c

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-01 09:30:35 +02:00
Thibaut VARENE
0369e35891 generic: provide get_port_stats() on rtl836x switches
This patch provides a generic switch_dev_ops 'get_port_stats()' callback by
taping into the relevant port MIB counters.

This callback is used by swconfig_leds led trigger to blink LEDs with port
network traffic.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-01 09:30:35 +02:00
Thibaut VARENE
3056d09b40 generic: provide get_port_stats() on b53 switches
This patch provides a generic switch_dev_ops 'get_port_stats()' callback by
taping into the relevant port MIB counters.

This callback is used by swconfig_leds led trigger to blink LEDs with port
network traffic.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-01 09:30:35 +02:00
Thibaut VARENE
4ddbc43cc1 generic: provide get_port_stats() on adm6996 switches
This patch provides a generic switch_dev_ops 'get_port_stats()' callback by
taping into the relevant port MIB counters.

This callback is used by swconfig_leds led trigger to blink LEDs with port
network traffic.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-01 09:30:35 +02:00
Thibaut VARENE
4d8a66d934 generic: provide get_port_stats() on ar8xxx switches
This patch provides a generic switch_dev_ops 'get_port_stats()' callback by
taping into the relevant port MIB counters.

The implementation uses a generic callback that select the correct MIB counter
index based on chip version.

This callback is used by swconfig_leds led trigger to blink LEDs with port
network traffic.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-01 09:30:35 +02:00
Thibaut VARENE
2b3ab0208e ramips: provide get_port_stats() on mt7530/762x switches
This patch provides a generic switch_dev_ops 'get_port_stats()' callback by
taping into the relevant port MIB counters.

This callback is used by swconfig_leds led trigger to blink LEDs with port
network traffic.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-09-01 09:30:35 +02:00
Karl Palsson
7a423c389a procd: mdns: Support txt values with spaces
Properly quote the arguments so that you can register a service with TXT
entries that contains spaces.

Example:
   procd_add_mdns myservice tcp 9999 "key=descriptive text field 1" \
         "another=something equally verbose"

Output before:
$ avahi-browse -r -v _myservice._tcp
_myservice._tcp      local
   hostname = [blah.local]
   address = [192.168.255.74]
   port = [9999]
   txt = ["verbose" "equally" "another=something" "1" "field" "text" "key=descriptive"]

Output now:
$ avahi-browse -r -v _myservice._tcp
_myservice._tcp      local
   hostname = [blah.local]
   address = [192.168.255.74]
   port = [9999]
   txt = ["another=something equally verbose" "key=descriptive text field 1"]

Signed-off-by: Karl Palsson <karlp@etactica.com>
2017-09-01 08:58:09 +02:00
John Crispin
12930fc045 Revert "dropbear: Link ssh and scp command to /bin instead of /usr/bin"
This reverts commit f7528ed0a8.

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-31 21:09:13 +02:00
Kevin Darbyshire-Bryant
3435de8c16 kernel: update 4.4 to 4.4.85
Refresh patches

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-08-31 19:14:52 +02:00
João Chaínho
61027e3430 ar71xx: fix switch port numbering on RB750r2 and RB750UPr2
This patch fixes the switch port numbering on Mikrotik RB750r2 (hEX lite) and RB750UPr2 (hEX PoE lite).
Tested on a RB750UPr2. Maybe this patch is applicable to other devices (e.g. RB951Ui-2nD, RB952Ui-5ac2nD) but I have no way to test them.

Signed-off-by: João Chaínho <joaochainho@gmail.com>
2017-08-31 19:14:52 +02:00
Rosen Penev
f7528ed0a8 dropbear: Link ssh and scp command to /bin instead of /usr/bin
ssh and scp commands interfere with OpenSSH when installed in /usr/bin .

One use case is when installing dropbear to get root access when only OpenSSH is available (OpenSSH disallows root password logins). Once dropbear installs, it replaces OpenSSH's executables, even when removed with opkg. OpenSSH must be reinstalled to get them back.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-08-31 19:14:43 +02:00
Koen Vandeputte
c56448e2cf musl: update to 1.1.16+ git HEAD 2017-08-30
Fixes critical issues for memset() & fflush()

Changes:

5f7efb8 move IPPORT_RESERVED from netdb.h to netinet/in.h
5f3b652 add powerpc64 and s390x to list of supported archs in INSTALL
file
9d4c902 fix undefined behavior in memset due to missing sequence points
c7f56b4 __init_libc: add fallbacks for __progname setup
cc08669 add SIOCGSTAMPNS socket ioctl macro to ioctl.h
02b50c9 fix mips ioctl macros to match linux asm/sockios.h
670d6d0 fix unsynchronized access to FILE structure in fflush(0)

Tested on cns3xxx & imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-08-31 19:09:47 +02:00
Magnus Kroken
89f8a01dab busybox: update to 1.27.2
Refresh patches, delete patches backported from upstream.

This fixes ntpd sync issues (ntpd would not sync if the first provided
peer address was unreachable).

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-08-30 22:34:41 +02:00
Ram Chandra Jangir
9adfeccd84 uboot-envtools: Add support for IPQ806x AP148 and DB149
IPQ806x AP148 and DB149 boards didn't have the UCI ubootenv
section initialized, so the usage of fw_printenv required manual
configuration. With this change, the "fw_printenv" and "fw_setenv"
command will automatically work on NOR and NAND based platforms.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-08-30 18:12:48 +02:00
Daniel Golle
a3c0d5f70a busybox: move passwd applet to /bin
busybox currently installs passwd into /usr/bin which prevents its
'full' shadow-utils variant from being installed.
Move the passwd applet to /bin to avoid that collision.
shadow also provides /usr/bin/login which doesn't collide with busybox
as the busybox login applet is installed at /bin/login.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-08-30 18:12:48 +02:00
Daniel Golle
a63eb74bce busybox: move traceroute applets to /bin
busybox currently installs traceroute and traceroute6 into /usr/bin
which prevents their 'full' iputils variants from being installed.
Move those applets to /bin so they can coexist with their iputils
siblings using the same PATH convention already applied for coreutils
and other drop-in 'full' versions.
Refresh existing patch while at it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-08-30 18:12:48 +02:00
Rosen Penev
343e3d2ba8 samba36: Remove syslog and load printers lines.
printer support is removed using 200-remove_printer_support.patch. the syslog parameter requires samba to be compiled with --with-syslog. Currently samba does not log to syslog and probably has not for a long time.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-08-30 18:12:48 +02:00
Zoltan Gyarmati
0a761fe8ef scripts/dowload.pl: use glob to expand target dir
If CONFIG_DOWNLOAD_FOLDER is set to for example "~/dl", the download
script fails to create the .hash and .dl files with the following
errors:
 Cannot create file ~/dl/dropbear-2017.75.tar.bz2.dl: No such file or directory
 sh: 1: cannot create ~/dl/dropbear-2017.75.tar.bz2.hash: Directory nonexistent

If the tarball already exists in the ~/dl dir, it's properly found and
used, so this issue only affects the download.pl script.
 This patch calls glob() on the target dir parameter, which will expand `~`.

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
2017-08-30 18:12:36 +02:00
Koen Vandeputte
af0a93391b musl: bump to latest 1.1.16+ git HEAD
Changes:

1698fe6 fix build failure for sh4a due to missing colon in asm statement
80bf595 trap UB from attempts to join a detached thread
e31c8c2 ppc64: fix setjmp/longjmp handling of TOC pointer
52cf5c1 qsort: add a short comment about the algorithm
dc2f368 disable global visibility override hack (vis.h) by default
947d330 add _NL_LOCALE_NAME extension to nl_langinfo
a08910f fix missing volatile qualifier on lock in __get_locale
2e6e084 remove ineffective compiler assist from printf
bc42dcb fix undefined behavior in ptrace
d906fa3 unify the use of FUTEX_PRIVATE
60ab365 fix undefined behavior in free
f688884 reapply va_arg hacks removal to wprintf
bd00cc8 remove useless declarations in string.h
f3055e0 allow specifying argv[0] when invoking a program via ldso
command
43c423a fix regression in dlopen promotion from RTLD_LOCAL to
RTLD_GLOBAL
66b53cf ldso: avoid spurious & possible erroneous work for libs with no
deps
94f7441 powerpc64: add single-instruction math functions
9d12a6a fix clang CFLAGS checks and silence unused argument warnings
ce385fc s390x: add single-instruction math functions
e6def54 fix arm run-time abi string functions
91d34c4 fix regression in getspnam[_r] error code for insufficient
buffer size
5948bc1 fix omission of microblaze user.h definitions
b7bfb5c fix iconv conversions for iso88592-iso885916
64f8558 handle errors from localtime_r in ctime_r
2d7d05f set errno when getpw*_r, getgr*_r, and getspnam_r fail
5c10c33 handle localtime errors in ctime
1c86c7f handle mremap failure in realloc of mmap-serviced allocations
1080008 getdate: correctly specify error number
af05173 catopen: set errno to EOPNOTSUPP
84eff79 fix glob failure to match plain "/" to root directory
bc313e8 use hard-coded sh4a atomic opcodes to avoid linker errors on sh
179766a towupper/towlower: fast path for ascii chars
1c49700 remove long-obsolete clang workarounds from mips* syscall_arch.h
files
4073f03 fix fstatat syscall on mips64
81f4a12 fix fchown fallback on arches without chown(2)
97bd6b0 fix iconv conversions to legacy 8bit encodings
f9f686b have posix_spawnattr_setflags check for supported flags
77e895d add no-op POSIX_SPAWN_USEVFORK to spawn.h
5555041 s390x: provide sigcontext struct definition
bb439bb implement new posix_spawn flag POSIX_SPAWN_SETSID
58e2396 remove va_arg hacks in printf core with undefined behavior
e1232f5 make ttyname[_r] return ENODEV rather than ENOENT
1a7fa5e fix regression in support for resolv.conf attempts option
8c44a06 fix scalbn when result is in the subnormal range
2577b1b allow full-range file offsets to mmap on archs with 64-bit
syscall args
b3751c3 fix dl_iterate_phdr in static PIE binaries
1ca5975 fix read past end of buffer in getaddrinfo backend
54807d4 aarch64: add single instruction math functions
b6e1fe0 fix strptime output for %C without %y
834ef7a fix processing of strptime %p format
85dfab7 fix off-by-one in strptime %j
9571c53 regex: fix newline matching with negated brackets
e6917ec increase limit on locale name length from 15 to 23 bytes
e4fc9ad search locale name variants for gettext translations
16319a5 make setlocale return a single name for LC_ALL if all categories
match
0c53178 fix dlopen/dlsym regression opening libs already loaded at
startup
dbff2bb fix POSIX-format TZ dst transition times for southern hemisphere
74bca42 s390x: fix fpreg_t and remove unused per_struct
a393d5c precalculate gnu hash rather than doing it lazily in find_sym
inner loop
8cba1dc fix threshold constants in j0f, y0f, j1f, y1f
cb52539 remove unused refcnt field for shared libraries
c49d3c8 avoid loading of multiple libc versions via explicit pathname
3ec8b3a fix one-byte overflow in legacy getpass function
733d1ea fix wide scanf's use of a compound literal past its lifetime
6a209f1 fix possible fd leak, unrestored cancellation state on dns
socket fail
500f5be in static dl_iterate_phdr, fix use of possibly-uninitialized aux
data
6582baa fix free of uninitialized buffer pointer on error in regexec
6476b81 emulate lazy relocation as deferrable relocation
4823b13 reorder addend handling before symbol lookup in relocation code
4ff234f rework ldso handling of global symbol table for consistency
c9783e4 treat STB_WEAK and STB_GNU_UNIQUE like STB_GLOBAL in find_sym
fc85fb3 fix ld-behavior-dependent crash in ppc64 ldso startup
827c4e6 fix lsearch and lfind to pass key as first arg to the compar
callback
0a4a16d allow page size to vary on arm
b261a24 fix build regression in arm atomics asm with new binutils
9201c3a s390x: implement dlsym
d6601f0 avoid unbounded strlen in gettext functions
dbbb373 fix use of uninitialized pointer in gettext core
01e6bbe fix bindtextdomain logic error deactivating other domains
6894f84 fix spurious EINTR errors from multithreaded set*id, etc.
1f53e7d fix crashes in x32 __tls_get_addr
27b3fd6 fix crash from corrupted tls module list after failed dlopen
809ff8c treat base 1 as an error in strtol-family functions
786fda8 fix getopt[_long] clobbering of optopt on success
150747b reduce impact of REG_* namespace pollution in x86[_64] signal.h

Tested on cns3xxx & imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-08-30 17:05:10 +02:00
Rosen Penev
b2f60e6a72 samba36: Don't resolve interfaces.
It's redundant and also buggy. IPv6 link local addresses and ::1 are not resolved for example. Doesn't matter since lo and br-lan for example, resolve to them.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Acked-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-08-30 17:05:10 +02:00
Rosen Penev
ccb79a310c samba36: Remove guest ok since LuCI configures it.
guest ok is set per share and as such, don't override it. also, fix an error introduced in the last commit.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-08-30 17:05:10 +02:00
L. D. Pinney
3e36ca4b43 ramips: merge mt7628/mt7688 into mt76x8
The ramips subtargets of mt7628 and mt7688 dts files all #include "mt7628an.dtsi"

They are essentially a single subtarget.

This patch merges the ramips subtargets mt7628 and mt7688 into a single subtarget mt76x8.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
2017-08-30 17:05:10 +02:00
Koen Vandeputte
40213cc154 kernel: update 4.9 to 4.9.45
Refreshed all patches

Compiled & run-tested on targets: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-08-30 17:05:10 +02:00
Kevin Darbyshire-Bryant
ca79337306 dnsmasq: forward.c: fix CVE-2017-13704
Fix SIGSEGV in rfc1035.c answer_request() line 1228 where memset()
is called with header & limit pointing at the same address and thus
tries to clear memory from before the buffer begins.

answer_request() is called with an invalid edns packet size provided by
the client.  Ensure the udp_size provided by the client is bounded by
512 and configured maximum as per RFC 6891 6.2.3 "Values lower than 512
MUST be treated as equal to 512"

The client that exposed the problem provided a payload udp size of 0.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-30 17:05:10 +02:00
John Crispin
97a6ef513f mediatek: various additional ethernet fixes
* fixes default affinity
* adds a napi watchdog - we were seeing stalled TX queues
* adds up/down locking

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-30 17:05:10 +02:00
Hans Dedecker
7a9410618d netifd: update to git HEAD version
7d94ede system-linux: parse map-e fmrs parameters as nested data json object

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-29 21:19:29 +02:00
Hans Dedecker
1b3ded7225 map: use nested json data object to store map-e fmrs parameters
Replace the string array containing the fmrs parameters by a nested data
json object holding an array of fmrs parameters

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-29 21:10:39 +02:00
Daniel Golle
2f0a8558be lantiq: ACMP252: clean up device modules
Install kmod-rt2800-pci instead of only the rt2x00 library.
Fixes missing wireless interface on AudioCodes AC-MP252.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-08-29 02:21:09 +02:00
Daniel Golle
289d190f66 lantiq: ltq-ptm: fix ADSL showtime handler
commit 2d6c7c2526 introduced a reference to g_xdata_addr which isn't
defined in that context. Use xdata_addr here instead.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-08-29 02:20:45 +02:00
Hans Dedecker
4b3ffecf2b map: fix boolean argument passed to blobmsg_check_attr in mapcalc
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-26 23:34:14 +02:00
Hauke Mehrtens
589621b1c0 config: make CONFIG_ALL_* select other CONIFG_ALL_* options
Select the other CONFIG_ALL_* options in the hierarchy when the master
option is selected. Currently CONFIG_ALL_KMODS is not selected when the
build bot selects CONFIG_ALL_NONSHARED for example.

Now the rtc kmods should get build when CONFIG_ALL_KMODS,
CONFIG_ALL_NONSHARED or CONFIG_ALL and CONFIG_RTC_SUPPORT are selected
like it is done by the build bots for targets with rtc support.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2017-08-26 14:59:20 +02:00
Hauke Mehrtens
a5d26d7fad layerscape: do not add custom CFLAGS.
The selected CFLAGS are already set by default.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-08-26 12:36:02 +02:00
Hauke Mehrtens
e9aec15911 brcm2708: bcm2710: do not activate neon-vfpv4 manually
Neon and vfpv4 support are activated by GCC on all ARMv8 CPUs because
this is now a mandatory part of the architecture. There is not need to
activate is manually.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-08-26 12:35:44 +02:00
Daniel Gonzalez Cabanelas
c7b4b4cee2 brcm63xx: Add Comtrend AR-5315u support
Add support for the Comtrend AR-5315u router

This a BCM6318 based board, 64 MB RAM, 16 MB SPI flash,
with an onboard BCM43217 wifi, 4 ethernet ports and 1
USB host port

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
[jonas.gorski: refreshed patch]
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-08-26 12:03:55 +02:00
Hans Dedecker
6c9e2d4a68 dnsmasq: fix indentation
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-25 14:29:19 +02:00
Kuang Rufan
1e6e37c4f6 dnsmasq: add support for multiple tags for each host.
Currently, dnsmasq support assigning multiple tags to a host record
(--dhcp-host), but we only support only 1 tag for a host. The commit
makes the following config to be valid:

  config host
      option name 'computer'
      option mac '00:11:22:33:44:55'
      option ip '192.168.1.100'
      list tag 'vendor_class'
      list tag 'vendor_id'

  config tag 'vendor_class'
      list dhcp_option 'option:vendor-class,00:...<omitted>'

  config tag 'vendor_id'
      option force '1'
      list dhcp_option 'option:vendor-id-encap,00:...<omitted>'

Signed-off-by: Kuang Rufan <kuangrufan@pset.suntec.net>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-25 14:28:49 +02:00
Stijn Tintel
cdb494fdc2 f2fs-tools: fix mkfs.f2fs on big-endian systems
Fixes: FS#749

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-25 10:19:06 +03:00
Stijn Tintel
252c8ddf14 f2fs-tools: drop musl compat patch
It is no longer needed since version 1.4.1.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-25 10:19:06 +03:00
Stijn Tintel
d87f27af54 f2fs-tools: drop patch in favour of CONFIGURE_VARS
Override the failing check in configure with CONFIGURE_VARS instead of
carrying a patch that's unlikely to be accepted by upstream.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: John Crispin <john@phrozen.org>
2017-08-25 10:19:06 +03:00
Hans Dedecker
7a8909411c map: add ealen as configurable uci parameter
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-24 20:56:07 +02:00
John Crispin
a3f52f6165 ramips: refresh kernel patches
the reordering patch fixes random kernel hangs. bug/fix was reported by MTK/WCN.

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-24 10:09:46 +02:00
Baptiste Jonglez
5889f92f7d ipq806x: Archer C2600: fix switch ports numbering
The order of LAN ports shown in Luci is reversed compared to what is
written on the case of the device.  Fix the order so that they match.

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-08-24 08:39:12 +02:00
Koen Vandeputte
f47c41cff9 xtables-addons: update to version 2.13
Changes:

89d1b80 xt_condition: namespace support #2
c839e87 xt_geoip: check for allocation overflow
a587f95 compat_xtables: use more accurate printf format for NIPQUAD
1874fcd xt_DNETMAP: fix a buffer overflow
21ea7b7 xt_LOGMARK: resolve new gcc7 warnings
ee8da2b build: support for Linux 4.12
19a4359 xt_condition: add support for namespaces
1b37966 xt_psd: resolve compiler warning

Tested on cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-08-24 08:38:39 +02:00
John Crispin
5c971cd6fd ramips: make mt7621 select WEAK_REORDERING_BEYOND_LLSC
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-24 08:32:54 +02:00
John Crispin
d99c52765d Revert "iputils: switch to new upstream"
This reverts commit 77d3ac8e3e.
This reverts commit e665b3df2a.

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-24 08:09:14 +02:00
Philip Prindeville
fc48aebdc1 iperf3: add SSL variant for iperf_auth feature
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-08-23 20:35:16 +02:00
Philip Prindeville
d55fff4ae7 iperf3: update to 3.2
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-08-23 20:35:16 +02:00
John Crispin
e665b3df2a iputils: update sha256sum
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-23 19:34:24 +02:00
Ryan Mounce
25c045763a tools: patch various gnu tools for macOS 10.13
These host tools compile but may crash at runtime when building on
macOS 10.13 (High Sierra). Backport upstream gnulib patch until new
releases of affected tools.

https://lists.gnu.org/archive/html/bug-gnulib/2017-07/msg00056.html
https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=c41f233c4c38e84023a16339782ee306f03e7f59

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-08-23 18:56:33 +02:00
BangLang Huang
569f74ef49 rules.mk: add missing CPP definition
Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
2017-08-23 18:42:39 +02:00
Philip Prindeville
5c2c0f8a32 util-linux: don't need to build NLS support
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-08-23 18:36:22 +02:00
Andreas Ziegler
b69705b38a ath10k-firmware: update qca9887 firmware to 10.2.4-1.0-00029
Signed-off-by: Andreas Ziegler <github@andreas-ziegler.de>
2017-08-23 16:34:21 +02:00
John Crispin
77d3ac8e3e iputils: switch to new upstream
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-23 16:31:35 +02:00
Marty Plummer
9ebb23cf51 tools/mkimage: fix musl build
Taken from: http://git.denx.de/?p=u-boot.git;a=commit;h=26e355d131a6b56ea78a156c1cee4f6ba0500b37

Signed-off-by: Marty Plummer <ntzrmtthihu777@gmail.com>
2017-08-23 15:12:15 +02:00
L. D. Pinney
e9eb6e7bb3 ramips: set ethernet mac address for VoCore2
This patch sets the mac address for the VoCore2 devices.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
2017-08-23 15:09:05 +02:00
Ansuel Smith
f099803eb5 samba36-net: new package
Samba could also be usefull for sending commands to windows pc (like shoutdown command). This new package add the bin to include this kind of command to the samba package.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-08-23 15:08:39 +02:00
Pavel Kubelun
6e283cdc0d ramips: add Xiaomi Mi Router 3G support
This commit adds support for Xiaomi Mi WiFi Router 3G.

Short specification:
 - MT7621AT + MT7603EN + 7612EN
 - 256MB DDR3 RAM
 - 128MB NAND flash
 - 1+2 x 1000M Ethernet
 - 1x USB 3.0 port
 - reset button
 - yellow, blue, red leds

Installation through telnet/ssh:
- copy lede-ramips-mt7621-mir3g-squashfs-kernel1.bin and
lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin to usb disk or wget it
from LEDE download site to /tmp
- switch to /extdisks/sda1/ (if copied to USB drive) or to /tmp if
wgetted from LEDE download site
- run: mtd write lede-ramips-mt7621-mir3g-squashfs-kernel1.bin kernel1
- run: mtd write lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin rootfs0
- run: mtd erase kernel0
- run: reboot

Originally stock firmware has following partitions:
 - ...
 - kernel0 (primary kernel image)
 - kernel1 (secondary kernel image, used by u-boot in failsafe routine)
 - rootfs0 (primary rootfs)
 - rootfs1 (secondary rootfs in case primary fails)
 - overlay (used as ubi overlay)

This commit squashes rootfs0, rootfs1 and overlay partitions into 1, so
it can be used by LEDE fully for package installation, resulting in 117,5MiB.

This device lacks hw watchdog, so adding softdog instead (stock does the same).

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-08-23 14:59:12 +02:00
Jo-Philipp Wich
4fce22e88f util-linux: add missing dependencies
Commit e505f59bd9 "utils/util-linux: Update to 2.30.1" bumped util-linux
without properly adjusting the dependencies of all applets.

Add missing ncursesw dependencies to sfdisk and dmesg applets to fix
packaging issues.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-08-23 11:34:25 +02:00
Rafał Miłecki
8de57c9746 iwinfo: update to the latest git HEAD
c1a03e8 nl80211: request split information about frequencies
5638567 nl80211: store info about freq being not available for some bandwidths
ce51cb8 Allow storing more info about each frequency
5c10efa nl80211: support receiving split frequencies
335967c nl80211: improve error handling
ab089dd nl80211: propagate netlink errors to callers
7bba117 nl80211: handle netlink errors in nl80211_wait()
d22c64c iwinfo: add device id for Ubiquiti NanoStation Loco M2

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-08-23 11:19:28 +02:00
Jo-Philipp Wich
0168ba2e07 Revert "busybox: ash/hush fix for read-builtin command"
Revert this commit as it introduces a patchfile at a wrong location.
Since the patch was never effective, we can assume that this particular
commit was not properly tested.

This reverts commit dde9da46c1.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-08-23 10:58:10 +02:00
John Crispin
4cac13f8e2 Revert "xtables-addons: fix nathelper-rtsp dependencies"
This reverts commit e2ef80130e.

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-23 09:54:53 +02:00
John Crispin
dce8359d56 mediatek: drop kernel dep on userland module
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-23 09:54:26 +02:00
Philip Prindeville
e2ef80130e xtables-addons: fix nathelper-rtsp dependencies
Both nf_conntrack and nf_nat need to be called out.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-08-22 21:31:39 +02:00
John Crispin
6b44d9785f procd: update to latest git HEAD
54b46a3 procd: send ubus notify when a config file has changed

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-22 21:31:39 +02:00
John Crispin
34a206bc11 dnsmasq: add ubus notifications for new leases
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-22 21:31:39 +02:00
John Crispin
d18e0dc7d1 hostapd: add additional ubus notifications
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-22 21:31:39 +02:00
BangLang Huang
69da83d9f1 nvram: add help message for nvram magic not found
The program would failed if nvram magic not found
in specific partition.

Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
2017-08-22 14:31:32 +02:00
BangLang Huang
c7e2a6fe92 nvram: improve argument check when program start
print help message when argument count is less
than 2.

Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
2017-08-22 14:31:32 +02:00
BangLang Huang
2a253e7cdb nvram: add usage() function
Merge the help message into a single function,
so that we can use it somewhere else.

Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
2017-08-22 14:31:32 +02:00
BangLang Huang
1948d8e08c nvram: fix memory leak
Fix memory leak on nvram_open() and nvram_open_rdonly().

For nvram_open(), the 'fd' should be closed on error, and
mmap_area should be unmap when nvram magic can not be found.

For nvram_open_rdonly(), the 'file' variable should free before
return. Once nvram_find_mtd() return successfully, it will allocate
memory to save mtd device string.

Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
2017-08-22 14:31:32 +02:00
John Crispin
e622b30730 netifd: update to latest git HEAD
b5731bf allow setting rps/xps defualt values via uci
2a29d1a system: remove unused 6rd tunnel attributes
e627542 netifd: allow negative neighlocktime values
e41382c system-linux: parse ipv6 specific tunnel settings as nested data json object

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-22 09:17:14 +02:00
Furong Xu
5a22df69e4 gpio-button-hotplug: leave platform_device.dev.platform_data untouched
get platform_data from gpio_keys_button_dev.pdata, and fix a illegal pointer
dereference like this:

[   51.143776] gpio-keys-polled gpio-keys-polled: missing poll_interval value
[   51.150852] gpio-keys-polled: probe of gpio-keys-polled failed with error -22
[  828.159993] gpio-keys-polled gpio-keys-polled: no memory for button data
[  828.166821] gpio-keys-polled: probe of gpio-keys-polled failed with error -12

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-08-21 21:29:52 +02:00
Daniel Engberg
e505f59bd9 utils/util-linux: Update to 2.30.1
Refresh patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-08-21 21:29:45 +02:00
Carl-Daniel Hailfinger
3e6d303d61 uboot-lantiq: Enable TFTP PUT support for backups
Backing up the current firmware from U-Boot over serial can take hours.
Booting a working Linux image for backup purposes is not always an option.
Using the tftpput command in U-Boot is the fastest and easiest way.

tftpput will upload the contents of a memory region to the TFTP server.
The IP address of the server is stored in the serverip variable.

Usage:
tftpput <memaddr> <length> <filename>

Example for a complete flash backup of an o2 Box 6431 (VGV7510KW22):
VGV7510KW22 # tftpput 0xB0000000 0x1000000 o2boxbackup.bin

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
2017-08-18 18:47:27 +02:00
Koen Vandeputte
0997185ffd imx6: add driver for temp/voltage monitoring
The Gateworks System Controller (GSC) mimics a standard AD7418 device on
I2C bus 0 at slave 0x29.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-08-18 18:47:11 +02:00
Koen Vandeputte
bfada08399 imx6: refresh kernel config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-08-18 18:46:43 +02:00
Christian Schoenebeck
a2a226e6e8 ca-certificates: Update to 20170717
Update to 20170717

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2017-08-18 18:44:38 +02:00
Florian Eckert
5209cfa534 procd: fix hotplug.json syntax
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-08-18 18:43:54 +02:00
Florian Eckert
a307480e2d procd: fix hotplug-preinit.json syntax
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-08-18 18:43:54 +02:00
John Crispin
1f068588ef mediatek: update to latest kernel patchset from v4.13-rc
Signed-off-by: Muciri Gatimu <muciri@openmesh.com>
Signed-off-by: Shashidhar Lakkavalli <shashidhar.lakkavalli@openmesh.com>
Signed-off-by: John Crispin <john@phrozen.org>
2017-08-18 18:41:41 +02:00
Kevin Darbyshire-Bryant
364befeccf kernel: update 4.4 to 4.4.83
Refresh patches.
Minor update 704-phy-no-genphy-soft-reset.patch which was partially
accepted upstream.
Compile-tested on ar71xx.
Runtime-tested on ar71xx.

Fixes the following vulnerabilities:
- CVE-2017-7533 (4.4.80)
- CVE-2017-1000111 (4.4.82)
- CVE-2017-1000112 (4.4.82)

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
[cleanup commit message, add compile/runtime tested]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-17 14:31:45 +02:00
Stijn Tintel
2d02a4f5bd kernel: update 4.9 to 4.9.44
Refresh patches.
Adapt 704-phy-no-genphy-soft-reset.patch.
Remove brcm2708/950-0005-mm-Remove-the-PFN-busy-warning.patch.
Compile-tested on brcm2708/bcm2708 and x86/64.
Runtime-tested on brcm2708/bcm2708 and x86/64.

Fixes the following vulnerabilities:
- CVE-2017-7533
- CVE-2017-1000111
- CVE-2017-1000112

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-17 12:34:34 +02:00
Rafał Miłecki
d9564d79b8 bcm53xx: backport DTS commits that setup USB LEDs
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-08-17 10:29:31 +02:00
Hans Dedecker
736950e947 odhcpd: update to latest git HEAD
94e65ee ndp: use IPv4 address list when comparing IPv4 addresses
ff5020d dhcpv6-ia: rework reconfigure accept logic

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-16 21:25:16 +02:00
L. D. Pinney
df3295f50e ramips: add support for the VoCore2 Lite
The VoCore2 Lite uses the same PCB as the Vocore2.
This patch moves the common VoCore2 parts into dtsi.

Removed memory node in the device tree source file.
Memory is detected automatically.

http://vocore.io/
http://vonger.net/
http://vonger.cn/

Specifications:
- SoC: MediaTek MT7688AN
- RAM: 64MB DDR2 EtronTech EM68B16CWQH-25H
- Flash: 8MB NOR SPI Flash GigaDevice GD25Q64CWIG
- Wireless: Built into MT7688AN with onboard IPEX connector

Firmware installation:
- VoCore2-Lite ships with firmware forked from OpenWrt.
- Installation from the bootloader is recommended.
- If using luci/sysupgrade use the -n option (do not keep settings)
  original firmware uses a modified proprietary MediaTek wireless driver.
- The wireless is disabled by default in LEDE.
- If reverting to factory firmware using the bootloader is recommended.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Tested by: Noble Pepper <noblepepper@gmail.com>
2017-08-11 18:12:56 +02:00
Mathias Kresin
8c9f847a80 ramips: fix WHR-1166D WAN port
By adding the ICPlus IP1001 phy driver an already set RGMII delay mode
is reset during driver load.

Set the rgmii rx delay to fix corrupt/no packages in case the WAN port
negotiates to 1000MBit.

Fixes: FS#670

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-11 18:12:56 +02:00
Stijn Tintel
e7373e489d wpa_supplicant: log to syslog instead of stdout
While debugging an issue with a client device, wpa_supplicant did not
seem to log anything at all. Make wpa_supplicant log to syslog instead
of stdout, to make debugging easier and to be consistent with hostapd.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-10 16:35:53 +02:00
Stijn Tintel
3e9c06d78c brcm2708-gpu-fw: update to latest version
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-10 16:34:15 +02:00
Rafał Miłecki
1e13c6f77f base-files: drop unused preinit_echo function
It isn't used for years since the old 99_10_run_init has been dropped.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-08-09 23:23:06 +02:00
Hauke Mehrtens
779227d5ee nftables: remove date from version
We are using the normal 0.7 version of nftables, do not add an
additional date to the version number.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-08-09 23:20:56 +02:00
Daniel Engberg
965df21fd1 tools/pkg-config: Update to 0.29.2
* Update pkg-config to 0.29.2
* Remove patch as it's upstreamed

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-08-09 23:20:56 +02:00
Daniel Engberg
1a5b7cc151 tools/expat: Update to 2.2.3
Update (lib)expat to 2.2.3
Remove poor entropy hack, 2.2.3 uses /dev/urandom in worst case

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-08-09 23:20:56 +02:00
Daniel Engberg
10c443728d utils/e2fsprogs: Update to 1.43.5
Update e2fsprogs to 1.43.5

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-08-09 23:20:56 +02:00
Daniel Engberg
8477d54545 tools/e2fsprogs: Update to 1.43.5
Update e2fsprogs to 1.43.5

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-08-09 23:20:56 +02:00
Daniel Gonzalez Cabanelas
e1f91b4a1c lantiq: fix missing otg_cap on danube platform
USB doesn't work in some danube boards because otg_cap
is missing since previous changes made on the USB-dwc2
lantiq driver. Fix it.

Tested on the ARV7518PW router.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-08-09 23:20:56 +02:00
Rafał Miłecki
f41dd32722 base-files: don't setup network in preinit if failsafe is disabled
With failsafe disabled there is no point in early network setup. We
don't send announcement over UDP and there is no way to ssh to the
device.

A side effect of this is avoiding a possibly incorrect network config
(only with failsafe disabled). This problem is related to possible
changes made by user in /etc/config/network.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-08-09 23:18:59 +02:00
Hans Dedecker
0b7f7606dd procd: update to the latest git HEAD
a17e1e8 watchdog: fix inline watchdog_get_magicclose function prototype

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-08 14:52:56 +02:00
Thibaut VARENE
370aacf532 ramips: ArcherC50v1: fix wlan2g MAC address
By default the wlan eprom contains the generic ralink MAC which is not
the vendor (TP-Link) one. Based on OFW bootlog, it appears that addresses
are decremented from the ethernet MAC.

This patch fixes the MAC address for wlan2g in line with OFW.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-08-06 09:22:03 +02:00
Martin Schiller
c8904e9c04 lantiq: board.d: use auto xfer_mode as default
If xfer_mode is set to auto the vdsl_cpe_control daemon assumes that
ATM should be used for ADSL and PTM for VDSL.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-08-06 09:22:03 +02:00
Martin Schiller
2da6c85c80 ltq-vdsl-app: add support for auto xfer_mode and auto line_mode
If xfer_mode is set to auto the vdsl_cpe_control daemon assumes that
ATM should be used for ADSL and PTM for VDSL.

xfer_mode and line_mode can be set to fixed value independantly from
each other.

The syntax for the tc_layer argument of vdsl_cpe_control is as follow:

-T<TcADSL>:<TcCfgUsADSL>:<TcCfgDsADSL>_<TcVDSL>:<TcCfgUsVDSL>:<TcCfgDsVDSL>

where TcADSL and TcVDSL can be: 1=ATM, 2=PTM/EFM, 4=Auto TC-Layer

and TcCfgUsADSL, TcCfgUsVDSL, TcCfgDsADSL, TcCfgDsVDSL can be:
1=64/65-octet encapsulation supported
2=64/65-octet encapsulation with pre-emption
3=64/65-octet encapsulation with short packets

Default: In case of no '-T' option is given, ADSL will be configured
in ATM and VDSL in PTM/EFM: -T1:0x1:0x1_2:0x1:0x1

The '-M' argument of dsl_cpe_control defines the initial DSL mode
(NextMode) for ADSL/VDSL multimode handling.

Possible Values: 0=API-default, 1=ADSL, 2=VDSL

Default: In case of no '-M' option is given, '0' (API-default) will
be selected.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-08-06 09:22:03 +02:00
Martin Schiller
f6254a215e ltq-vdsl-app: mask out ADSL bits when VDSL is requested
If the line_mode is fixed configured to vdsl, than only G.993 VDSL
should be used.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-08-06 09:22:03 +02:00
Martin Schiller
c6504327d1 ltq-vdsl-app: use notification based ATM/PTM driver load
This patch removes the fixed atm/ptm driver loading and
switches to notification based driver loading.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-08-06 09:22:03 +02:00
Martin Schiller
2d6c7c2526 lantiq: ltq-atm/ltq-ptm: fix showtime handling on driver load
This is needed to be able to load the ltq-atm/ltq-ptm driver
from a notify script during synchronization, because the line can
reach showtime state before the driver is fully loaded.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-08-06 09:22:03 +02:00
Martin Schiller
0481a2a2c5 lantiq: split up dsl_notify.sh into separate notification handlers
This makes it possible to simply add additional notification handlers
by putting new scripts in the /etc/hotplug.d/dsl directory.

the following Environment Variables are used:

(values marked with an * are only available when bonding support is
compiled in)

DSL_NOTIFICATION_TYPE with one of these values:
- DSL_STATUS
- DSL_INTERFACE_STATUS
- DSL_DATARATE_STATUS_US
- DSL_DATARATE_STATUS_DS

DSL_LINE_NUMBER=<0|1> *

If DSL_NOTIFICATION_TYPE == DSL_STATUS, these variables are set:

- DSL_XTU_STATUS=<ADSL|VDSL>
- DSL_TC_LAYER_STATUS=<ATM|EFM>
- DSL_EFM_TC_CONFIG_US=<NORMAL|PRE_EMPTION>
- DSL_EFM_TC_CONFIG_DS=<NORMAL>

If DSL_NOTIFICATION_TYPE == DSL_INTERFACE_STATUS, these variables are
set:

- DSL_INTERFACE_STATUS=<DOWN|READY|HANDSHAKE|TRAINING|UP>
- DSL_BONDING_STATUS=<INACTIVE|ACTIVE> *

If DSL_NOTIFICATION_TYPE == DSL_DATARATE_STATUS_US, these variables are
set:

- DSL_DATARATE_US_BC0=<Upstream data rate in bit/s for Channel 0>
- DSL_DATARATE_US_BC1=<Upstream data rate in bit/s for Channel 1> *

If DSL_NOTIFICATION_TYPE == DSL_DATARATE_STATUS_DS, these variables are
set:

- DSL_DATARATE_DS_BC0=<Downstream data rate in bit/s for Channel 0>
- DSL_DATARATE_DS_BC1=<Downstream data rate in bit/s for Channel 1> *

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-08-06 09:22:03 +02:00
Mathias Kresin
a94555ce24 ltq-xdsl-app: drop esi call
The esi call was added to workaround a race condition between applying
a configured mac address to the wan interface and starting the protocol
(handler) as it was observed in a DHCP over ATM bridge configuration.

Martin Schiller, TDT GmbH was so kind to test with their local
infrastructure if the race condition still exists. The provided package
dumps captured behind the DSLAM shows that it doesn't. It was most
likely fixed with adding carrier support to the lantiq ptm/atm driver.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-06 09:22:03 +02:00
John Crispin
e5e6045130 kernel: add missing patch
This patch was accidentally dropped.

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-05 09:47:41 +02:00
John Crispin
74d00a8c38 kernel: split patches folder up into backport, pending and hack folders
* properly format/comment all patches
* merge debloat patches
* merge Kconfig patches
* merge swconfig patches
* merge hotplug patches
* drop 200-fix_localversion.patch - upstream
* drop 222-arm_zimage_none.patch - unused
* drop 252-mv_cesa_depends.patch - no longer required
* drop 410-mtd-move-forward-declaration-of-struct-mtd_info.patch - unused
* drop 661-fq_codel_keep_dropped_stats.patch - outdated
* drop 702-phy_add_aneg_done_function.patch - upstream
* drop 840-rtc7301.patch - unused
* drop 841-rtc_pt7c4338.patch - upstream
* drop 921-use_preinit_as_init.patch - unused
* drop spio-gpio-old and gpio-mmc - unused

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-05 08:46:36 +02:00
Qin Wie
de350550ef ramips: fix cd-poll sd card remove randomly
Fix when add 'mediatek,cd-poll' to dts cause the sd card be removed randomly.
Special for the device without card-detect pin.

Signed-off-by: Qin Wie <me@vonger.cn>
2017-08-04 23:13:18 +02:00
Florian Eckert
c31f0421ce base-files: suppress uci not found output in login.sh
Fix "uci: Entry not found" output if "ttylogin" is not set in
"etc/config/system"

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-08-04 23:11:19 +02:00
Hans Dedecker
fea89fa25b odhcpd: update to latest git HEAD (FS#402, FS#524)
296b4a0 dhcpv6: assign all viable DHCPv6 addresses by default (FS#402, FS#524)
f4d38e0 treewide: reflect managed mode is related to RA

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-08-03 21:25:32 +02:00
Mathias Kresin
313ce3afbb ramips: move common parts into dtsi
Move the common parts of boards with multiple flash size variants into
dtsi files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 19:37:41 +02:00
L. D. Pinney
70b192f573 ramips: update device tree source files
Use the GPIO dt-bindings macros and add compatible strings in the
ramips device tree source files.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 19:37:40 +02:00
Thibaut VARENE
b70a96285c tools/firmware-utils: document reserved fields in mkchkimg
Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-08-03 00:11:25 +02:00
Thibaut VARENE
695f5ea85a ramips: Add support for Netgear EX3800
The Netgear EX3800 is essentially an EX3700 with a mains output socket.

Both devices use the exact same firmware image (original firmware is named
EX3700-EX3800-version.chk).

This patch adds suport by renaming the EX3700 device to EX3700/EX3800 and
updating the necessary glue.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-08-03 00:11:25 +02:00
Thibaut VARENE
8a13895a2e ramips: EX3700: rename factory.bin to factory.chk
The stock firmware upgrade interface requires the file to end with a .chk
extension.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-08-03 00:11:25 +02:00
Thibaut VARENE
1780d40f2b ramips: cleanup EX2700 and WN3000RPv3 LEDs
This patch cleans up the WN3000RPv3 and EX2700 setup, bringing it in line
with other similar devices:

The power led is a bicolor one. The bootloader brings the red side on at
powerup.

Instead of blinking the red side in diag.sh and need to forcefully turn it off
in 01_leds, this patch simplifies the setup by relying on the default off state
of the gpio-led driver for the red side and blinking the green side as with
other devices.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-08-03 00:11:25 +02:00
Mathias Kresin
419fa7a15f ramips: cleanup AsiaRF AWM002 eval board support
Cleanup the dtsi files and remove one layer of dtsi. Set the size of
the firmware partition to a value matching the flash size from the
board (variant) name.

Remove the usb led trigger. There is neither a default config for the
usb led trigger nor a LED for usb activity indication.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:11:25 +02:00
Mathias Kresin
b82ac84229 ramips: drop AsiaRF AWM003 eval board
Everything is identical to the AWM002 8m eval board. No need to
duplicate it once more.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:11:25 +02:00
Mathias Kresin
861b867d9c ramips: fix Omnima MiniEMBWiFi image
Reference the Omnima MiniEMBWiFi device tree source file in the image
build code. Otherwise the dts of the image processed before is used.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:07:56 +02:00
Mathias Kresin
afc1ccf955 ramips: build HuaWei HG255D image
The code to build an image was disabled some time ago for unknown
reasons albeit the image looks fine.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:07:56 +02:00
Mathias Kresin
60f6c2b2eb ramips: drop Edimax BR-6425 support
Code to build an image for the Edimax BR-6425 never existed.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:07:56 +02:00
Mathias Kresin
1eb1916c5f ramips: add missing partitions
The partitions were lost during migration to device tree.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-08-03 00:07:56 +02:00
John Crispin
4787e1960b mediatek: move mt7623 support into a 32bit subtarget
this is in preparation for adding the new 64bit mt7622 support.

Signed-off-by: John Crispin <john@phrozen.org>
2017-08-01 08:36:49 +02:00
Ilya Katsnelson
bb4d5006c0 ramips: fix PCI init on MT7620 with Linux 4.9+
So, this is kind of complicated. This has been upstream for a while,
imported from OpenWRT/LEDE with some cleanups. LEDE ramips has stayed
on linux-4.4 this whole time, with the old(er) version of the patch
that had correct behavior[0], while upstream got changed[1].

When LEDE updated to kernel 4.9, the older version of the code from
the patch got replaced with the upstream version containing the bug.

The original behavior, however, seems to be correct here, as the
official programming guide[2] indicates that bit 31 (PDRV_SW_SET)
in register PPLL_CFG1 is reserved, but bit 23 (added as PPLL_LD)
is the PPLL lock state (which also happens to line up with the
error message).

The original confusion probably comes from the double definition
of PDRV_SW_SET[3, 4] in the upstream code, with one correct definition
(31) and one incorrect one (23).

I've also used the opportunity to clean up the error message a bit -
it's still not really helpful to anyone who doesn't already know what
the PPLL is, but at least it's slightly more readable now.

This will probably need to be upstreamed as well, since with the way
it's currently set up, it's unlikely PCI ever worked for anyone who's
running an upstream kernel on that SoC.

[0]: 05d6e92594/target/linux/ramips/patches-4.4/0009-PCI-MIPS-adds-mt7620a-pcie-driver.patch (L259)
[1]: 026d15f6b9/arch/mips/pci/pci-mt7620.c (L246)
[2]: http://www.anz.ru/files/mediatek/MT7620_ProgrammingGuide.pdf
[3]: 026d15f6b9/arch/mips/pci/pci-mt7620.c (L36)
[4]: 026d15f6b9/arch/mips/pci/pci-mt7620.c (L39)

Signed-off-by: Ilya Katsnelson <me@0upti.me>
2017-07-31 21:28:37 +02:00
John Crispin
d0fb048b0e procd: update to latest git HEAD
f062b30 procd: Do not leak pipe file descriptors to children

Signed-off-by: John Crispin <john@phrozen.org>
2017-07-31 19:20:16 +02:00
John Crispin
0c1420b3fe fstools: update to latest git HEAD
8ab4fda fstools: add btrfs support

Signed-off-by: John Crispin <john@phrozen.org>
2017-07-31 19:16:39 +02:00
Rafał Miłecki
993c740255 firmware-utils: mktplinkfw2: respect -e option when reading fw info
When -e option it specified a corresponding flag is set in the
custom_board. By using custom_board as fallback -e option gets respected
for unknown boards.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-07-31 11:43:42 +02:00
Rafał Miłecki
35ddef8455 firmware-utils: mktplinkfw2: fix info for images with LE kernel LA/EP
With this change endianness is also respected when reading firmware
info.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-07-31 11:43:42 +02:00
Rafał Miłecki
d181cbbfb0 firmware-utils: mktplinkfw2: replace "endian_swap" field with "flags"
This will allow adding more similar tricks needed by other hardware.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-07-31 11:43:41 +02:00
Thibaut VARENE
a6f6f8df23 ramips: Archer C50v1: fix power led
01_leds had a workaround for the power led to compensate for the
inverted GPIO state. This patch was missing from my previous commit.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
[add the power led default-state which was omitted in the last commit
by me]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-29 12:06:35 +02:00
Thibaut VARENE
5d7e23f5ad ramips: Archer C50v1: fix switch port numbering
Luci shows switch ports in wrong order on that device.
This patch fixes switch port numbering and matches them to the device
silkscreen.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-07-29 09:24:32 +02:00
Thibaut VARENE
0c81bc2969 ramips: Archer C50v1: fix LEDs active levels
All LEDs GPIOs are active low on this device.

WAN and POWER states were inverted. Add default state for power.

Tested on Archer C50v1.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-07-29 09:24:32 +02:00
Mathias Kresin
99f1097c0a ramips: fix Mercury MAC1200R v2.0 board name
With d2b6bf1416 ("ramips: fix image validation errors") the board
name was changed to fix an image validation error. But this change
wasn't applied to all other files using the board name, which broke
sysupgrade.

Revert this change and use the former board name in the metadata
instead.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-29 09:24:32 +02:00
L. D. Pinney
45dbd65850 ramips: mt7621: add compatible strings
Add compatible strings to all mt7621 based device tree source files to
fix formal issues.

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
2017-07-29 09:24:32 +02:00
Mathias Kresin
b27977b41b brcm63xx: add NULL clock fix send upstream
Make the behaviour of clk_get_rate consistent with common clk's
clk_get_rate by accepting NULL clocks as parameter. Some device
drivers rely on this, and will cause an OOPS otherwise.

Fixes: FS#735

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-29 09:24:27 +02:00
Mathias Kresin
0a17d2970a ramips: add NULL clock fix send upstream
Make the behaviour of clk_get_rate consistent with common clk's
clk_get_rate by accepting NULL clocks as parameter. Some device
drivers rely on this, and will cause an OOPS otherwise.

Fixes: FS#735

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-29 09:24:23 +02:00
Mathias Kresin
ea751c972b ar7: add NULL clock fix send upstream
Make the behaviour of clk_get_rate consistent with common clk's
clk_get_rate by accepting NULL clocks as parameter. Some device
drivers rely on this, and will cause an OOPS otherwise.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-29 09:24:17 +02:00
Lucian Cristian
b90fb5ffe1 openssl: update to version 1.0.2l
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-07-28 23:07:17 +02:00
Daniel Engberg
911331ad0f tcpdump: Update to 4.9.1
Update tcpdump to 4.9.1

Fixes:
 * CVE-2017-11108: Fix bounds checking for STP.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-07-28 23:07:00 +02:00
Hauke Mehrtens
39e8ab17d5 kernel: update kernel 4.4 to version 4.4.79
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-28 22:46:26 +02:00
Hauke Mehrtens
88f3c63572 kernel: update kernel 4.9 to version 4.9.40
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-28 22:46:17 +02:00
Jo-Philipp Wich
eb43a817f7 opkg: bump to version 2017-07-28
Commits since last 2017-07-11:

4bd8601 pkg_parse: fix segfault when parsing descriptions with leading newlines

Fixes FS#933.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-28 13:21:30 +02:00
Paul Wassi
0d4cda8a3b brcm63xx: DTS: fix AV4202N flash layout
Fix incorrect offset and size of linux partition.

Fixes: 97b36aca09 ("brcm63xx: add pflash for remaining pflash equipped boards")
Signed-off-by: Paul Wassi <p.wassi@gmx.at>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-07-27 12:12:21 +02:00
Mathias Kresin
7985bf23ef ramips: drop stray kernel 4.4 configs
The kernel 4.4 patches where already removed with the bump to 4.9. Drop
the the subtarget configs as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-27 09:17:25 +02:00
Oliver Fleischmann
a92c64e8ae ramips: add support for Loewe WMDR-143N
The WMDR-143N is a small module originally used as a Wifi client
in some Loewe smart TV sets. It is sold cheaply at german surplus
shops. The module contains a RT3662 SOC.

Specifications:

- 500 MHz CPU Clock
- 1x 10/100Mbps Ethernet (pin header)
- 32 MB of RAM
- 8 MB of FLASH
- 2T3R 2.4/5 GHz (SOC internal)
- 3 Antennas on PCB
- UART pads on PCB (J3: 1 = +3.3V, 2 = RX, 3 = TX, 4 = GND), TX
  and RX are 3,3V only! The square hole is pin 1
- Power supply pads on PCB (J6: 1 and 2 = +5V, 3 and 4 = GND)
  The square hole is pin 1

The original firmware has two identical kernel/rootfs images and
two "Factory" calibration data blocks in flash. The LEDE image
leaves only the first "Factory" block in place and uses both
"Kernel" blocks and the redundant "Factory" block together to gain
enough space for the jffs2 partition.

Flash instructions:

You need UART and Ethernet connections to flash the board. Use
the LEDE "sysupgrade.bin" image with tftp.

Apply power to the board and in the first 5 seconds, hit 2 to
select TFTP upload. The bootloader asks for board- and server IP
addresses and filename.

Alternate method: With the vendor firmware running, assign an IP
address to the ethernet port, tftp the firmware image to
/tmp and write to mtd4 ("KernelA").

Signed-off-by: Oliver Fleischmann <ogf@bnv-bamberg.de>
[remove pinctrl node from dts, no pin is used as GPIO]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-27 09:13:27 +02:00
Mathias Kresin
a3995a6785 ramips: pinctrl: return proper error if pinctrl0 is empty
Children of the pinctrl0 node are optional. Return EINVAL (=missing)
instead of 0. Fixes a hang if the pinctrl0 has no children.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: John Crispin <john@phrozen.org>
2017-07-27 09:12:15 +02:00
Jo-Philipp Wich
bf5d32af2a scripts/package-metadata.pl: inhibit compile deps on missing build types
When a package declares a PKG_BUILD_DEPENDENCY or HOST_BUILD_DEPENDENCY on
a not existing build type, the metadata script will emit a reference to an
unresolvable build target in tmp/.packagedeps, causing the make process to
fail hard in a way not catchable by the IGNORE_ERRORS mechanism.

In a situation where a package "test-a" declares a build dependency
"PKG_BUILD_DEPENDS:=test-b/host" while the Makefile of "test-b" does not
implement a HostBuild, make fails with an unrecoverable error in the form:

    make[1]: Entering directory '...'
    make[1]: *** No rule to make target 'package/test-b/host/compile',
                 needed by 'package/test-a/compile'.  Stop.
    make[1]: Leaving directory '...'
    .../toplevel.mk:200: recipe for target 'package/test-a/compile' failed
    make: *** [package/test-a/compile] Error 2

Extend the metadata generation script to catch such unresolved references
and emit a visable warning upon detection.

After this change, the script will emit a warning similar to:

    WARNING: Makefile "package/test-a/Makefile" has a build dependency on
    "test-b/host" but "package/test-b/Makefile" does not implement a
    "host" build type

Fixes a global build cluster outage which occured after the "python-cffi"
feed package removed its HostBuild which the "python-cryptography" package
build-depended on.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-27 00:37:05 +02:00
John Crispin
9551d91b1d ramips: refresh the rcu_sched patch and remove debug info
Signed-off-by: John Crispin <john@phrozen.org>
2017-07-26 09:32:22 +02:00
John Crispin
6acb53c526 ralink: fix rcu_sched stalls on mt7621
there were 2 bugs
*) core1 came up with a bad bogo mips, looks like the clock needed time to stabilize
*) HPT frequency was not set making r4k timers not come up properly

Signed-off-by: John Crispin <john@phrozen.org>
2017-07-26 09:14:20 +02:00
L. D. Pinney
77645ffcd9 ramips: add support for the GnuBee Personal Cloud One
The GnuBee Personal Cloud One crowdfunded on https://www.crowdsupply.com
    It is a low-cost, low-power, network-attached storage device.

    Specifications:

    - SoC: MediaTek MT7621AT
    - RAM: DDR3 512 MB
    - Flash: 32 MB
    - Six SATA ports for 2.5" Drives
    - One micro SDcard
    - One USB 3.0
    - Two USB 2.0
    - Gigabit Ethernet: 1 x WAN and 1 x LAN
    - UART 3.5mm Audio Jack or 3 pin header - 57600 8N1
    - Four GPIOs available on a pin header

    Flash instructions:

    The GnuBee Personal Cloud One ships with libreCMC installed.
    libreCMC is a Free Software Foundation approved fork of LEDE/OpenWrt.
    As such one can upgrade using the webinterface or sysupgrade.

    Das U-Boot has multiple options for recovery or updates including :

    - USB
    - http
    - tftp

Signed-off-by: L. D. Pinney <ldpinney@gmail.com>
[use switchdev led trigger, all interfaces are in vlan1; rename leds
according to board.d setting; remove ge2 group from the pinmux, this
group doesn't exist in the driver]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-25 21:02:53 +02:00
Thibaut VARENE
4faf314933 ramips: DIR-860L-B1 fix switch port numbering
Luci shows switch ports in inverted order on that device.
This patch fixes switch port numbering and matches them to the device
silkscreen.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-07-25 21:02:53 +02:00
Uwe Arnold
ecfca0eda2 kernel: netfilter: fix nf-nathelper(-extra) description
The tftp and irc netfilter modules are provided by nf-nathelper-extra
and not by nf-nathelper.

Signed-off-by: Uwe Arnold <donvipre@gmail.com>
[move the irc module as well]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-25 21:02:53 +02:00
Giuseppe Lippolis
786f7426c2 ramips: fix wps button gpio for DWR-512
The WPS button is at GPIO#7.

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-07-25 21:02:53 +02:00
Paul Wassi
c51c976db8 ramips: DTS: VoCore2 improvements/fixes
The VoCore2 features 128MB of RAM, therefore set
memory in DTS to 128*1024*1024 = 0x8000000
The board's LED is connected to GND, set it to
ACTIVE_HIGH here.
Make serial console working again on kernel 4.9 by
change of pinmux configuration.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-07-25 21:02:53 +02:00
Alex Maclean
f683385e73 ramips: add support for TP-Link RE350
The TP-Link RE350 is a wall-wart AC1200 range extender/access point with
a single gigabit ethernet port and two non-detachable antennas, based on
the MT7621A SoC with MT7603E and MT7612E radios.

Firmware wise it is very similar to the QCA based RE450.

SoC: MediaTek MT7621A (880MHz)
Flash: 8MiB (Winbond W25Q64)
RAM:   64MiB (DDR2)
Ethernet: 1x 1Gbit
Wireless: 2T2R 2.4Ghz (MT7603E) and 5GHz (MT7612E)
LEDs: Power, 2.4G, 5G (blue), WPS (red and blue), ethernet link/act
(green)
Buttons: On/off, LED, reset, WPS

Serial header at J1, 57600 8n1:
Pin 1 TX
Pin 2 RX
Pin 3 GND
Pin 4 3.3V

Factory image can be uploaded directly through the stock UI.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-07-25 21:02:53 +02:00
Alex Maclean
1c7144f078 firmware-utils: tplink-safeloader: add support for TP-Link RE350
Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-07-25 21:02:53 +02:00
Felix Fietkau
ea72f22bdf ath9k: fix regression in multicast buffering fix
Update the more data flag on the last frame, but tx from the first frame
on.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-25 19:48:18 +02:00
Felix Fietkau
35868234e7 ath9k: fix typo in US tx power reduction fix
Use max_t instead of min_t to prevent the value from going below zero

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-25 09:14:05 +02:00
Jo-Philipp Wich
9e64874fb2 build: bundle-libraries.sh: do not override argv[0] in inner exec calls
Only mangle argv[0] of the first executed process and leave the argument
vector of subsequent invocations as-is to allow child programs to properly
discover resources relative to their binary locations.

Fixes "cc1" discovery when executing the host gcc through the bundled
"ccache" executable.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-24 13:39:21 +02:00
Felix Fietkau
22a74ed310 ath9k: fix more-data flag for buffered multicast packets
The flag needs to be cleared for the last packet in the list, not the
first one. Fixes some issues with multicast packet loss for powersave
clients connected to an ath9k AP.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-24 10:48:26 +02:00
Felix Fietkau
9b6585b11a ath9k: adjust tx power reduction for US regulatory domain
FCC regulatory rules allow for up to 3 dBi antenna gain. Account for
this in the EEPROM based tx power reduction code.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-24 10:47:55 +02:00
Piotr Dymacz
d72371e42b firmware-utils: drop mktplinkfw-kernel tool
As we can now use combined mode in "mktplinkfw" tool to generate the
same header/image, this tool is no longer needed.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:29:50 +02:00
Piotr Dymacz
2ad2946777 ar71xx: image: use tplink-v1-header in place of mktplinkfw-kernel
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:29:50 +02:00
Piotr Dymacz
f08f754993 build: move mktplinkfw-combined command to image-commands.mk
We will need "mktplinkfw-combined" command also in the "ramips" target
for new MediaTek based TP-Link devices, with "safeloader" image type.

Also, rename the command to "tplink-v1-header", use "VERSION_DIST"
variable instead of "OpenWrt" and allow passing additional parameters.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:29:50 +02:00
Piotr Dymacz
b3cb0e7588 firmware-utils: mktplinkfw: rework combined image option
We use combined option in "mktplinkfw" tool for generating initramfs
kernel images and header for kernel inside "safeloader" image type (in
fact, only for TL-WR1043ND v4 at this moment).

There is also "mktplinkfw-kernel" tool, a stripped-down version, used
only for generating "simple" header, for safeloader image types.

This changes how "mktplinkfw" handles combined images (which then will
allow us to drop the stripped-down version of the tool):

- drop "ignore size" command line option (it was used only for combined
  images anyway)
- don't require "flash layout id" for combined images (we don't need and
  shouldn't limit size of the initramfs kernel and for kernels inside
  safeloader images, the "tplink-safeloader" tool does the size check)
- require kernel address and entry point in command line parameters for
  combined images (consequence of previous point)
- don't include md5 sum and firmware length values in header (they are
  needed only for update from vendor GUI and are ingored in case of
  initramfs and "tplink-safeloader" images)
- drop "fake" flash layout for TL-WR1043ND v4 as it's no longer needed

Also, adjust "mktplinkfw-combined" command in ar71xx/image/tp-link.mk to
match introduced changes in "mktplinkfw" tool.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:29:50 +02:00
Piotr Dymacz
8223dac99a uboot-envtools: add support for ALFA Network AP121F
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:14:06 +02:00
Piotr Dymacz
0c6165d21a ar71xx: add support for ALFA Network AP121F
ALFA Network AP121F is a pocket-size router dedicated for VPN/TOR users.
Device is based on Atheros AR9331 WiSoC and is running a custom version
(updated from OpenWrt CC to LEDE 17.01 release) of NetAidKit firmware.

Specification:

- 400/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR1)
- 16 MB of FLASH (SPI NOR)
- 1x 10/100 Mbps Ethernet
- 1T1R 2.4 GHz
- 1x microSD (optional, on separate PCB)
- 3x LED, 1x button, 1x switch
- UART header on PCB

Flash instruction (under U-Boot web recovery mode):

1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with RJ45 port, press the reset button, power up device,
   wait for first blink of all LEDs (indicates network setup), then keep
   button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:13:55 +02:00
Piotr Dymacz
5bc5d94549 firmware-utils: tplink-safeloader: add support for TL-WR902AC v1 US
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-22 23:08:05 +02:00
Rosen Penev
9dcb3fe7eb samba36: Remove legacy options
Browseable is now set through LuCI per share, so remove it. Same with
writeable (inverted synonym for read only). domain master and preferred
master seem to be legacy settings for Windows 9x. encrypt passwords
defaults to yes. Probably should not be disabled either.

Also reordered alphabetically.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[rewrap commit message, fix SoB, fix author, bump pkg revsion]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-22 16:55:01 +02:00
Jo-Philipp Wich
636dc8750b mwlwifi: update to version 10.3.4.0 / 2017-07-13
Ref: https://github.com/lede-project/source/pull/1217
Reported-by: Kabuli Chana <newtownBuild@gmail.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-22 16:19:00 +02:00
Stijn Tintel
97eb8abec0 netifd: update to git HEAD
d397e8c netifd: Fix printf calls + function declarations.
34afb76 system-linux: fix GRE ikey/okey endianness

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-21 22:00:37 +02:00
Jo-Philipp Wich
3e26340a2e Revert "kernel: do not try to probe builtin modules on empty kmod package install"
This change currently causes some issues with loading out of tree kernel modules
so revert that commit for now.

Reverts commit 34c01e68b5. Fixes FS#919.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-21 18:55:19 +02:00
Felix Fietkau
e3d135ab56 mt76: update to the latest version, fixes stability issues
8a649c3 mt7603: mac: code optimization
8dee788 mt7603: mac: stop netdev queues during watchdog reset
3c4c9a6 tx: move state check in mt76_txq_send_burst()

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-21 18:53:56 +02:00
Alexandru Ardelean
d9f7ae6cdb ipset: split libipset as a subpackage
Intent is to link against it, and have the option to
not install the ipset utility (if needed).

One example/use-case is keepalived (from package)
feeds, where it would be nice to just depend on a
`libipset` (sub)package.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-07-21 15:12:48 +02:00
Milan Krstić
4c1ce83548 ag71xx: add support for port mirroring
This exposes hardware port mirroring in ag71xx driver (e.g. TL-WR841ND) via
swconfig API.

Signed-off-by: Milan Krstić <milan.krstic@gmail.com>
2017-07-21 08:10:38 +02:00
Jo-Philipp Wich
d0f6a514b1 dnsmasq: introduce config support for forced DHCP options
Introduce a new UCI list setting `list dhcp_option_force` which is available
in sections of type `dnsmasq` and `dhcp`.

The `dhcp_option_force` setting has the same semantics as `dhcp_option` but
generates `dhcp-option-force` directives instead of `dhcp-option` ones in
emitted native configuration.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-21 08:09:45 +02:00
Daniel Engberg
99c4295126 scripts/download.pl: Adjust URLs
Internet2 isn't considered a trusted issuer meaning that https links to
rit.edu will fail.

The host mirror.csclub.uwaterloo.ca has a trusted SSL cert and peering
is good so it can replace rit.edu without performance issues.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
[Jo-Philipp Wich: rewrapped commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-21 08:09:45 +02:00
Jo-Philipp Wich
ef1cafa736 build: fix invocation of bundled ld.so in SDK and Imagebuilder
Commit 72d751cba9 "build: rework library bundling" introduced a new helper
binary "runas" whose sole purpose was mangling the argv vector passed to
the actual called ELF image so that the renamed executable could obtain the
proper name from argv[0].

This approach, however totally defeated the purpose of calling bundled ELF
executables through the shipped ld.so loader since the execv() invocation
performed by "runas" would cause the kernel the interprete the final program
image through the system ELF loader again.

To solve the problem, use an alternative approach of shipping a shared object
"runas.so" which uses an ELF ".init_array" function pointer to obtain the
argv[] vector of the to-be-executed main() function and mangle it in-place.

The actual argv[0] value to use is communicated out-of-band using an
environment variable "RUNAS_ARG0" by the shell wrapper script. The wrapper
script also takes care of setting LD_PRELOAD to instruct the shipped ELF
loader to preload the actual ELF program image with the "runas.so" helper
library.

Fixes FS#909.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-21 08:09:45 +02:00
Jo-Philipp Wich
f2fdd68664 brcm47xx: fix switch port mapping on Asus RT-N12 and RT-N16 models
On Asus RT-N12 and RT-N16 models, the WAN and LAN4 ports are swapped in the
initial switch configuration since the presets present in nvram appear to be
wrong.

Add special casing for these models to detect_by_model() in order to ensure
a proper switch configuration.

Fixes FS#502.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-21 08:09:45 +02:00
Matthias Schiffer
1ab227d688 base-files: upgrade: don't loop forever trying to kill processes
When processes don't die on SIGKILL (usually because of kernel bugs), it's
better to give up instead of looping forever.

upgraded will trigger a reboot in this case (and if this fails, a hardware
watchdog will eventually time out and reset the system, if present).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-20 21:41:33 +02:00
Matthias Schiffer
ae30673b10 procd: update to latest version
17026f4 system: return ubus error when sysupgrade_exec_upgraded() has failed
13f252f upgraded: Check chroot() return value
85ccb95 init: Check chroot return value in sysupgrade_exec_upgraded()
76dcbee upgraded: improve error handling
d749b2a upgraded: register stage2 process in uloop as intended

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-20 21:41:06 +02:00
Sergey Ryazanov
bf5d86543a ar71xx: use the RB912UAG-{2, 5}HPnD Power LED for diag
The Power LED of RB912UAG-{2,5}HPnD boards can be controlled by sofware,
so use it for diag purposes and make the User LED free for other tasks.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-07-20 19:10:29 +02:00
Sergey Ryazanov
6cad8ee0bd ar71xx: keep the RouterBOARD Power LED in On state
It is quite unexpected behaviour when the Power LED switches off as soon
as the kernel starts booting. So set the default state to 'Keep' for
the Power LEDs of all RouterBOARDs (e.g. RB91x, SXT Lite series, etc.).

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
[switch the default state to keep instead of on]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-20 19:10:29 +02:00
Chuanhong Guo
a4c84b2d73 ramips: add support for Phicomm K2P
It uses one MT7615D radio chip with DBDC mode enabled. This mode allows
this single chip act as an 2x2 11n radio and an 2x2 11ac radio at the
same time. However mt76 doesn't  support it currently so there is no
wireless available.

Specification:
- SoC: MediaTek MT7621AT
- Flash: 16 MB
- RAM: 128 MB
- Ethernet: 1 x WAN (10/100/1000Mbps) and 4 x LAN (10/100/1000 Mbps)
- Wireless radio: MT7615D on PCIE0
- UART: 1 x UART on PCB - 57600 8N1

Issue:
- Wireless radio doesn't work due to the lack of driver.

Flash instruction:
Using UART:
1. Configure PC with a static IP address and setup an TFTP server.
2. Put the firmware into the tftp directory.
3. Connect the UART line as described on the PCB.
4. Power up the device and press 2,then follow the instruction to
   set device and tftp server IP address and input the firmware
   file name.U-boot will then load the firmware and write it into
   the flash.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2017-07-20 19:10:29 +02:00
Andrea Merello
b81c04382b lantiq: fix sleep with spinlock held in xrx200 network driver
In the xrx200_close() function we call napi_disable(), that could
sleep, with priv->hw->chan[i].lock held. This could lead to deadlock
and causes the kernel to complain.

Look at the code I couldn't convince myself about why we
need to protect that specific code part with the lock. IMHO there
seems no reason to protect the refcount variables, because AFAIK
ndo_close() and ndo_open() callbacks are already called with a
semaphore held. Neither I could figure out why napi_disable() have to
be called with that lock held. The only remaining code part for
which I could guess the lock is useful for is ltq_dma_close()
function call.

This patch reduces the lock to the said function call, avoiding the
sleep-with-spinlock-held situation

Signed-off-by: Andrea Merello <andrea.merello@gmail.com>
[fold into 0025-NET-MIPS-lantiq-adds-xrx200-net.patch, backport to
kernel 4.4]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-20 19:10:29 +02:00
Jonas Gorski
34c01e68b5 kernel: do not try to probe builtin modules on empty kmod package install
Builtin modules are always present, and trying to load them will cause
modprobe to spew errors when installing the empty kmod packages.

Fix this by never generating any postinst module install instructions
for builtin modules.

Fixes #842.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-07-20 12:49:09 +02:00
Florian Fainelli
6bdb662deb uml: Backport upstream fix to build against static libpthread
Backport upstream commit f44f1e7da7c8e3f4575d5d61c4df978496903fcc ("um:
Avoid longjmp/setjmp symbol clashes with libpthread.a") to fix build
issues on hosts that only have a static libpthread.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-07-18 14:52:51 -07:00
Evgeniy Didin
8647f4f018 toolchain/arc: update to the most recent release arc-2017.03
arc-2017.03 is the most recent release toolchain for ARC cores
and it is based on upstream Binutils 2.28 and GCC 6.3.0

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-18 23:23:27 +02:00
Hans Dedecker
6f133a4402 dnsmasq: backport remove ping check of configured dhcp address
Remove ping check in DHCPDISCOVER case as too many buggy clients leave
an interface in configured state causing the ping check to fail.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-07-18 23:17:37 +02:00
Jo-Philipp Wich
7c727c6fa4 tools: expat: fix build on older host systems
Expat release 2.2.2 requires support for either syscall(SYS_getrandom) which
is available on Linux 3.17 or support for getrandom() which is only available
in glibc 2.25 or later.

Since some of our builders still run on Linux 3.16, we need to forcibly
disable the use of getrandom() for the host builds.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-18 23:00:45 +02:00
Ted Hess
b4ce088f06 tools/expat: Update host version to 2.2.2
Ref: CVE-2017-9233, CVE-2016-9063

Signed-off-by: Ted Hess <thess@kitschensync.net>
2017-07-17 16:42:35 -04:00
Daniel Golle
cb2a3911e1 fstools: update to latest
0dfe61a block: support /dev/xvd* nodes
f038a61 libfstools: fix matching device name

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-07-16 22:32:46 +02:00
Baptiste Jonglez
cd10577350 x86: Fix xen serial console by removing conflicting PATA driver
The Xen serial console has been broken since the xen_domu subtarget
was merged in the generic x86 subtarget (commits 1d6879ee and 371b382a).

The reason for the broken serial console seems to be an IRQ conflict
between the serial console driver and the PATA_LEGACY driver:

[    1.330125] genirq: Flags mismatch irq 8. 00000000 (hvc_console) vs. 00000000 (platform[pata_legacy.4])
[    1.330134] hvc_open: request_irq failed with rc -16.
[    1.330148] Warning: unable to open an initial console.

Just drop the PATA_LEGACY driver from the x86/generic and x86_64
subtargets, since this driver is marked experimental and only supports
very old ISA devices anyway.  It is still included in the x86/legacy
subtarget where it rightfully belongs.

Fixes: FS#787

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-07-16 11:31:52 +02:00
Baptiste Jonglez
6548b34c3f x86/64: add xen DomU support
Xen support for x86/generic was added in 1d6879ee.  This commit also
enables it for x86/64.

This was successfully tested with Xen 4.5, although the serial console
is broken in the same way as x86/generic (see FS#787)

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-07-16 02:29:05 +02:00
Baptiste Jonglez
de8370fcf2 x86: Move USB support from subtargets to target config
All x86 subtargets enable USB support, so it makes sense to enable it
in the target config instead, to avoid duplication.

Also refresh subtarget configs accordingly.

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-07-16 02:29:05 +02:00
Baptiste Jonglez
609f169ff4 x86: Refresh subtargets kernel config
This was done by simply running `make kernel_menuconfig CONFIG_TARGET=subtarget`
and then saving without changing any option.

Most of the removed options can be explained because they are already
present in the target config or in the generic 4.9 config:

- PAE-related options, enabled by default on x86 by 961c0eac
- LZO-related options, enabled by default since 4.9

As far as I understand the build system, this shouldn't have any
user-visible impact, because the build system already merges the
various kernel configs during build.

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-07-16 02:29:04 +02:00
Baptiste Jonglez
31ba457416 x86: Drop stray subtarget "epia"
This subtarget was added by 961c0eac, probably by mistake.  It does
not contain anything beside a kernel config.

Acked-by: Daniel Golle <daniel@makrotopia.org>
Cc: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-07-16 02:28:50 +02:00
Mathias Kresin
e4e984f2a0 treewide: use only board_name function to get name
Do not parse /tmp/sysinfo/board_name, /proc/cpuinfo or the device tree
compatible string directly. Always use the board_name function to get
the board name.

The admswconfig package still reads /proc/cpuinfo directly. The code
looks somehow broken and the whole adm5120 which uses this package
looks unmaintained. Leave it as it is for now.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Mathias Kresin
e0b9ec8e96 treewide: drop target board_name functions
They are not used any longer.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Mathias Kresin
f12a32630f treewide: use the generic board_name function
Use the generic function instead ot the target specific ones.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Mathias Kresin
ced05ca9e0 sunix: run b53_hack later
The script relies on the board name but runs prior the generic sysinfo
script which sets the board name.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Mathias Kresin
78cf5eed6e treewide: do board detection during preinit
Do the board detection during preinit to unify it across all targets.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Mathias Kresin
ac3e05c5d7 treewide: populate boardname and model earlier
For targets using the generic board detection and board specific
settings in diag.sh, the board name is still unset at the time the
set_state() provided by diag.sh is called by 10_indicate_preinit.

Change the execution order to ensure the boardname is populated before
required the first time. Do the target specific board detection as
early as possible, directly followed by the generic one to allow a
seamless switch to the generic function for populating /tmp/sysinfo/.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Kevin Darbyshire-Bryant
c7f8bcede6 kmod-sched-cake: drop maintainer
Drop myself from maintainership of 'cake'.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-07-15 22:07:05 +02:00
Mathias Kresin
9fe9175c2f image: fix ar71xx legacy images
If TARGET_PER_DEVICE_ROOTFS and DEVICE_PACKAGES are used for ar71xx
legacy images:

- an already jffs2 padded squashfs rootfs is overwritten
  with an unpadded/raw one.

- the squashfs-raw and squashfs-64k rootfs are not replaced by the
  ones including the DEVICE_PACKAGES

Call Image/Build/squashfs after the DEVICE_PACKAGES are added to the
base squashfs rootfs to fix the issues.

Fixes: FS#904

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 07:02:59 +02:00
John Marrett
4531bc4267 ramips: fix GL-inet GL-MT300N-V2 WAN/LAN MAC address
Correct MAC address lookup to appropriate offset based on vendor
source.

Override the WAN MAC to use the same address as LAN. The switch driver
increments the base MAC address for the WAN vlan but the stock firmware
uses the same MAC address for all interfaces.

Based on vendor source commit
https://github.com/domino-team/lede-1701/commit/efb0518

Signed-off-by: John Marrett <johnf@zioncluster.ca>
2017-07-15 07:02:59 +02:00
Mathias Kresin
f7eb7f577f imx6: fix DualLite/Solo GW551X board detection
The model name is a different one in the device tree source file.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 07:02:59 +02:00
Nick Brassel
eaf6f1532d nftables: Update to 0.7
Updated nftables to latest.

Signed-off-by: Nick Brassel <nick@tzarc.org>
2017-07-15 00:17:49 +02:00
Koen Vandeputte
cd54b2d42b kernel: update kernel 4.9 to 4.9.37
- Refreshed all patches
- Removed upstreamed
- Adapted 4 patches:

473-fix-marvell-phy-initialization-issues.patch
-----------------------------------------------
Removed hunk 5 which got upstreamed

403-net-phy-avoid-setting-unsupported-EEE-advertisments.patch
404-net-phy-restart-phy-autonegotiation-after-EEE-advert.patch
--------------------------------------------------------------
Adapted these 2 RFC patches, merging the delta's from an upstream commit
(see below) which made it before these 2.

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-
stable.git/commit/?h=v4.9.36&id=97ace183074d306942b903a148aebd5d061758f0

180-usb-xhci-add-support-for-performing-fake-doorbell.patch
-----------------------------------------------------------
- Moved fake_doorbell bitmask due to new item

Compile tested on: cns3xxx, imx6
Run tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-07-15 00:13:05 +02:00
Hauke Mehrtens
027aea8af7 tools/flex: Revert "tools/flex: add autoreconf"
This was already done in commit 91e262c6b3 ("tools: flex: fix build
with automake 1.15.1")

This reverts commit 6b127d8639.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-15 00:12:46 +02:00
Stijn Tintel
462ca4e059 zlib: use default Build/Configure rule
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-14 08:45:55 +02:00
Stijn Tintel
b3cba687a4 lzo: use default Build/Configure rule
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-14 08:45:40 +02:00
Stijn Tintel
6a8cbc08c0 scripts/gen_image_generic.sh: drop NOGRUB variable
It's not used since commit 816a9b30f6.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-14 04:09:16 +02:00
Stijn Tintel
a576ed5437 scripts/gen_image_generic.sh: move from x86/image
The script can also be useful for other targets.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-14 04:09:16 +02:00
Stijn Tintel
c2a11bc8e4 scripts: make all scripts executable
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-14 04:09:16 +02:00
Stijn Tintel
cf96453ac9 scripts/openbsd.sh: remove script
Commit 6f5f328003 removed freebsd.sh
because it was outdated and bad practice. Let's be consistent and remove
openbsd.sh as well.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-07-14 04:09:16 +02:00
Alif M. Ahmad
683e73735e curl: bump to version 7.54.1
Upgrade the curl package to latest version. Patches refreshed.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-07-14 03:10:38 +02:00
Alexander Couzens
8c96eb2fdb ar71xx/image: change unifi UBNT_CHIP to ar7240
Verified by OEM firmware images which contains the same
chip.

Tested-by: Andreas Bräu <ab@andi95.de>
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-07-13 23:56:24 +02:00
Matthias Schiffer
16222a1010 ar71xx: set US region code for TP-Link TL-WR710N v1 image
Non-US versions of the TP-Link TL-WR710N v1 don't have a region code so
far, so we can just set US unconditionally.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-12 21:30:08 +02:00
Yousong Zhou
254f0da6d2 opkg: bump to version 2017-07-11
Commits since last 2017-05-03

    52fc006 pkg_alternatives: pass if the desired symlink already exists
    c668fce opkg: add --no-check-certificate argument

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-07-12 11:18:24 +08:00
Alin Nastac
d8748e537f netfilter: add iptables-mod-rpfilter package
Unlike /proc/sys/net/ipv4/conf/INTF/rp_filter flag, rule iptables -t raw
-I PREROUTING -m rpfilter --invert -j DROP prevents conntrack table to
become full when a packet flood with randomly selected source IP addresses
is received from the lan side.

Signed-off-by: Alin Nastac <alin.nastac@gmail.com>
2017-07-11 22:09:57 +02:00
Hans Dedecker
a35a27e8ef uci: update to the latest version
c4df32b file: remove redundant NULL check on return value of uci_realloc()
5d08b7f build: fix BUILD_STATIC
49ec6ef Fix skipping directories in uci_list_config_files
c203c2f Revert "mandatory anonymous section identifier"
0a1a2fc uci/lua: add explicit close() method
7daf942 uci/lua: add list_configs() function
fe45f97 test: adjust for auto-naming anonymous sections
2eb9c09 cli: remove now-defunct UCI_FLAG_EXPORT_NAME support
df72af4 mandatory anonymous section identifier

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-07-11 22:09:57 +02:00
Matthias Schiffer
438dcbfe74 base-files: automatically handle paths and symlinks for RAMFS_COPY_BIN
Depending on busybox applet selection, paths of basic utiilties may differ,
and may not work as symlinks to busybox. Simply using whatever binary is
found in PATH and detecting symlinks automatically is more robust and
easier to maintain.

The list of binaries is also slightly cleaned up and duplicates are
removed.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-11 17:26:32 +02:00
Matthias Schiffer
f464da623d kirkwood: upgrade: fix RAMFS_COPY_*
RAMFS_COPY_* are moved to platform.sh toplevel. The nand_do_upgrade call is
moved to platform_do_upgrade.

Fixes: 30f61a34b4 "base-files: always use staged sysupgrade"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-11 17:19:23 +02:00
Matthias Schiffer
08a94ecaee ipq806x: upgrade: fix RAMFS_COPY_*
RAMFS_COPY_* are moved to platform.sh toplevel. The unneeded
linksys_preupgrade function is removed, and the nand_do_upgrade call is
moved to platform_do_upgrade.

Fixes: 30f61a34b4 "base-files: always use staged sysupgrade"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-11 17:19:23 +02:00
Matthias Schiffer
73f675415c bcm53xx: upgrade: fix RAMFS_COPY_*
Fixes: 30f61a34b4 "base-files: always use staged sysupgrade"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-11 17:19:23 +02:00
Matthias Schiffer
7a29e44f90 base-files: upgrade: correctly handle nand_do_upgrade argument passed from preupgrade
Fixes: 30f61a34b4 "base-files: always use staged sysupgrade"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-11 17:19:23 +02:00
Jo-Philipp Wich
a89c36b508 dnsmasq: restore ability to include/exclude raw device names
Commit 5cd88f4 "dnsmasq: remove use of uci state for getting network ifname"
broke the ability to specify unmanaged network device names for inclusion
and exclusion in the uci configuration.

Restore support for raw device names by falling back to the input value
when "network_get_device" yields no result.

Fixes FS#876.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-10 11:02:27 +02:00
Piotr Dymacz
9d07d2dc56 ar71xx: image: simplify Meraki MR16 device definition
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-09 23:46:53 +02:00
Enrique Giraldo
afcf5f69be ar71xx: fix upgrade platform check for Compex WPJ558
The magic number was wrong and always marked the images as invalid.

Signed-off-by: Enrique Giraldo <enrique.giraldo@galgus.net>
2017-07-09 23:46:30 +02:00
Piotr Dymacz
befc763ed1 ar71xx: support LED in TP-Link TL-WR902AC RJ45 socket
TP-Link TL-WR902AC has another one, tiny LED inside RJ45 socket which is
attached to GPIO15. Add support for it, use it as a "lan" LED and rename
old one to "internet". Also, fix uci option name for "lan" LED in system
configuration ("wan" -> "lan").

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-09 23:44:20 +02:00
Piotr Dymacz
42c8bbb69b ar71xx: verify TP-Link TL-WR902AC sysupgrade image
Until we enable requirement for metadata in sysupgrade images under
ar71xx target, this prevents users from using wrong image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-09 23:43:46 +02:00
Henryk Heisig
8cd28140f1 firmware-utils: tplink-safeloader: fix Archer C60 factory image
This commit fixes build factory image for TP-Link Archer C60v1.
Size of partition "SupportList" is only 256 bytes, and can
contain only 3 entries.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-07-09 22:45:59 +02:00
Henryk Heisig
096a604df0 ar71xx: add metadata to some TP-Link images
This commit adds metadata to TP-Link sysupgrade images
created by tplink-safeloader with uImage kernel header.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-07-09 22:45:59 +02:00
Daniel Golle
2be603783b ncurses: add libnucrses-dev package
It's needed to use the SDK and IB on an OpenWrt/LEDE host.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-07-08 23:19:31 +02:00
Matthias Schiffer
a81a082f5b mtd-utils: use source package name for lzo in PKG_BUILD_DEPENDS
PKG_BUILD_DEPENDS should always refer to source package names.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-08 22:51:34 +02:00
Rafał Miłecki
7805745791 firmware-utils: mktplinkfw2: use static board struct for custom values
It seems simpler to store all custom (command line set) option values in
a struct identical to the predefined ones. It doesn't require:
1) Having so many global variables
2) Copying data from the predefined boards

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-07-08 18:10:25 +02:00
Rafał Miłecki
90e27a185f firmware-utils: mktplinkfw2: update firmware header
1) Be consistent and use tabs
2) Drop FIXME from boot comments - some images use these fields normally

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-07-08 18:10:16 +02:00
Mathias Kresin
0b493ede1e acx-mac80211: remove cobalt reference
The cobalt target was removed with 22b38f145d.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-07 08:29:41 +02:00
Mathias Kresin
ad02f5618d acx-mac80211: disable for kernel 4.9+
Due to changes in the PCI subsystem this driver doesn't compile with
kernel 4.9.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-07 08:27:23 +02:00
Mathias Kresin
01819254af ramips: sound-mt7620: fix dependencies for kernel 4.9
With kernel 4.8 common used code was moved to a shared kmod. Add the
missing dependency to the shared snd-soc-simple-card-utils.ko.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-07 07:56:24 +02:00
Mathias Kresin
1743ed49c1 kernel: add missing symbols
Fixes the ramips and xburst/qi_lb60 build.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-07 07:44:51 +02:00
Mathias Kresin
3dc757856c lantiq: fix typo in EASY80920.dtsi
There is no device tree property named phynmode0. Use phy-mode as it is
done for the other ethernet nodes.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-07 07:18:14 +02:00
Thomas Nixon
50e3659703 lantiq: add Netgear DM200 support
Netgear DM200 is an inexpensive VDSL modem:

    CPU: VRX220 MIPS 34Kc 5.6 @ 500Mhz
    RAM: 64MiB
    Flash: 8MiB
    Ethernet: 1x100M
    DSL: VDSL2+, ADSL2+
    reset button, 3x bi-color LEDs

Serial port is 115200 baud, on the 4 pin header; pins from the bottom to
top are GND, RX, TX.

To upgrade from the vendor firmware, upload factory.img

The DM200 bootloader supports flashing over TFTP; hold the reset button
while powering on the device, and wait for the power light to start
flashing green before releasing. The device is now listening on
192.168.0.1/24, and can be sent a factory.img or a netgear image with a
TFTP put.

Once the image is loaded, it will be written to the flash, and the
device will reboot; this will take a few minutes.

Thanks to Edward O'Callaghan and Baptiste Jonglez, who implemented their
own ports for this device and provided valuable feedback.

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
2017-07-07 07:13:24 +02:00
Thomas Nixon
08cd5b769d lantiq: set up DSL front-end GPIOs if they exist
This is necessary for devices using the PSB80108/VRX220LD front-end
(currently only known on the Netgear DM200).

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
2017-07-07 07:13:24 +02:00
Matthias Schiffer
4b32d66216 ramips: simplify ubnt-erx-sfp device definition
Most of the ubnt-erx definition can be reused; the package removals in
DEVICE_PACKAGES have become redundant after d17cb4a68a "ramips: purge
default packages on MT7621".

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-07-06 19:45:09 +02:00
Hans Dedecker
e227bade26 odhcpd: update to the latest version
f0d78e7 ndp: optimize check_addr6_updates code
94afe3b ndp: fix syslog tracing for netlink neigbor and address events
18df6cc treewide: rework logic to retrieve IPv6 interface addresses
803b83e router: use enum to specify order and index of iov struct
5dad295 treewide: rework code to get rid of fixed IPv6 address arrays
3e4c8ad config: rework code to get rid of IFNAMSIZ usage
ab7813e treewide: use angle-brackets to include libubox header files

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-07-06 19:19:13 +02:00
Felix Fietkau
7887a46f45 build: enable gzipping of images on x86 even if ext4 is disabled
There is lots of padding between the boot partition and the rootfs, so
gzipping is helpful here

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-06 11:30:33 +02:00
John Crispin
6b127d8639 tools/flex: add autoreconf
build blows up on latest debian due to automake mismatch

Signed-off-by: John Crispin <john@phrozen.org>
2017-07-06 08:57:27 +02:00
Ram Chandra Jangir
c2a4f144d7 ipq806x: Enable AP148 fit image(.itb) generation
This change enables .itb image generation for AP148,
It will help us to boot and test AP148 with NOR flash.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-07-06 07:16:40 +02:00
John Crispin
fddc78bc11 ramips: bump to v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-07-06 06:37:03 +02:00
Felix Fietkau
05d6e92594 mt76: update to the latest version
Fixes mt7603 stablity and performance issues

af32615 mt7603: change auto rate control register initialization
01fb9ba mt7603: fix control/status retries count estimation
cf4ba12 mt7603: avoid tx rate sampling using no retransmissions
32eab50 mt7603: set wtbl entry vif index
c4e3dea mt7603: use the real vif index in txwi header for normal tx.
e90a81a mt7603: fix channel width fall back in TXWI

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-07-05 20:30:30 +02:00
Jo-Philipp Wich
91e262c6b3 tools: flex: fix build with automake 1.15.1
After the update of GNU automake, the flex configure fails with

    configure.ac:31: error: version mismatch.  This is Automake 1.15.1,
    configure.ac:31: but the definition used by this AM_INIT_AUTOMAKE
    configure.ac:31: comes from Automake 1.15.

Apply the autoreconf host fixup to properly regenerate configure before
to avoid triggering the version mismatch. Also refresh the patch while
we're at it.

Fixes FS#885.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-07-05 19:22:39 +02:00
Daniel Golle
eb7c14d512 bzip2: add symlink to binary
Other distributions incl. the OpenWrt ImageBuilder and SDK
expect to find the bzip2 executable in /bin.
Create a symlink at that location for compatibility.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-07-05 16:27:40 +02:00
Jonas Gorski
a0bb6c91fe brcm63xx: remove misleading warning about partial SPI NOR writes
The warning will be triggered by jffs2 or UBI, and partial writes are no
issue for most flash chips.

Fixes: 2a2b16210b ("brcm63xx: backport upstream solution for SPI message size limits")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-07-05 11:24:24 +02:00
Thomas Langer
eafaef3765 automake: Update to version 1.15.1
The new version includes the fix for new perl versions,
so remove the related patch.

Signed-off-by: Thomas Langer <thomas.langer.71@gmail.com>
2017-07-04 22:56:55 +02:00
Mathias Kresin
0825de2df7 kirkwood: drop kernel 4.4 support
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-04 16:29:07 +02:00
Paul Wassi
9808b9ae02 kirkwood: switch to kernel 4.9
Add patches-4.9, some of them (heavily) rewritten:
  - ea4500 is upstream available, keep only LEDE changes in dts
  - ea3500 is changed to match the structure of the upstream ea4500 dts
  - nsa310s rewritten to include the common dtsi
  - nsa325 is dropped, since already upstream

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
[refresh kernel config, add on100, use the switchdev based mv88e6171
driver for the linksys boards, keep lede specific rootfs/kernel
partition names for linksys boards, reorder patches]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-04 16:29:07 +02:00
Mathias Kresin
08c499f865 lantiq: use img file extension for DGN3500 factory images
The Netgear UI in basic mode refuses the upgrade file if the the
fileextension is not img. The expert/advanced mode accepts any
fileextension. Use img to make it work in any case.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-04 16:29:01 +02:00
Piotr Dymacz
a3d232e1e6 firmware-utils: mktplinkfw: add option for endianness swap
This adds command line option in "mktplinkfw" tool for endianness swap
in kernel load address and entry point fields. As in "mktplinkfw2" tool,
we will need this for little-endian targets, like "ramips".

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 15:40:43 +02:00
Piotr Dymacz
cf23547e57 ar71xx: fix TPLINK_BOARD_ID for Archer C58 and TL-WA855RE
Rename TPLINK_BOARD_NAME to TPLINK_BOARD_ID for two ommited devices.

Fixes: 7d6c63d ("build: rename TPLINK_BOARD_NAME to TPLINK_BOARD_ID")
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 15:09:52 +02:00
Piotr Dymacz
3b7928cc9d firmware-utils: mktplinkfw2: add missing options descriptions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 13:26:40 +02:00
Qian Zheng
a08ec9a54d ar71xx: fix Netgear WNDR3700 v4 switch port mapping
Signed-off-by: Qian Zheng <sotux82@gmail.com>
2017-07-04 11:42:33 +02:00
Piotr Dymacz
6165e4aab0 ar71xx: add support for TP-Link TL-WR902AC v1
TP-Link TL-WR902AC v1 is a pocket-size, dual-band (AC750), successor of
TL-MR3020 (both devices use very similar enclosure, in same size). New
device is based on Qualcomm QCA9531 v2 + QCA9887. FCC ID: TE7WR902AC.

Specification:

- 650/391/216 MHz (CPU/DDR/AHB)
- 1x 10/100 Mbps Ethernet
- 1x USB 2.0 (GPIO-controlled power)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH
- 2T2R 2.4 GHz (QCA9531)
- 1T1R 5 GHz (QCA9887)
- 5x LED (GPIO-controlled), 2x button, 1x 3-pos switch
- UART pads on PCB (TP1 -> TX, TP2 -> RX, TP3 -> GND, TP4 -> 3V3, jumper
  resitors are missing on TX/RX lines)
- 1x micro USB (for power only)

Flash instructions:

Use "factory" image under vendor GUI.

Recovery instructions:

This device contains tftp recovery mode inside U-Boot. You can use it to
flash LEDE (use "factory" image) or vendor firmware.

1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "lede-ar71xx-generic-tl-wr902ac-v1-squashfs-factory.bin"
   to "wr902acv1_un_tp_recovery.bin" and place it in tftp server dir.
3. Connect PC with LAN port, press the reset button, power up the router
   and keep button pressed until WPS LED lights up.
4. Router will download file from server, write it to flash and reboot.

Root access over serial line in vendor firmware: root/sohoadmin.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 08:58:54 +02:00
Piotr Dymacz
0a2e4204db ar71xx: generic: enable CONFIG_MTD_SPLIT_TPLINK_FW
We can use "tplink-fw" mtd splitter for TP-Link devices which use kernel
with TP-Link header embedded inside "safeloader" image type and thus get
rid of statically defined "kernel" and "rootfs" partitions in cmdline.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 08:58:54 +02:00
Piotr Dymacz
43ae7dcdd4 ar71xx: refresh and cleanup mikrotik subtarget kernel config
Refresh mikrotik subtarget kernel config and enable kernel support for
boards which belong to this subtarget only.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 08:58:54 +02:00
Piotr Dymacz
f67ad17d19 ar71xx: refresh and cleanup nand subtarget kernel config
Refresh nand subtarget kernel config and enable kernel support for
boards which belong to this subtarget only.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 08:58:54 +02:00
Piotr Dymacz
cc9b9c5885 ar71xx: refresh and cleanup target kernel config
Refresh target kernel config and disable kernel support for all boards
which belong to nand and mikrotik subtargets only.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-07-04 08:58:54 +02:00
DUPONCHEEL Sébastien
f3ae0f80bd dnsmasq: dnsmasq --rev-server support
This is functionally the same as --server, but provides some syntactic sugar to
make specifying address-to-name queries easier.

For example --rev-server=1.2.3.0/24,192.168.0.1 is exactly equivalent to
--server=/3.2.1.in-addr.arpa/192.168.0.1

Signed-off-by: DUPONCHEEL Sébastien <sebastien.duponcheel@corp.ovh.com>
2017-07-03 22:08:21 +02:00
Rafał Miłecki
23da3fbf68 firmware-utils: mktplinkfw2: fix MD5 salt
LEDE supports few devices using TP-Link firmware format (V2 or V3):
ArcherC20i, ArcherC50, ArcherMR200, TDW8970, TDW8980, TL-WR840N v4,
TL-WR841N v13 and VR200v

Testing mktplinkfw2 tool with official (vendor generated) firmware files
for above devices has shown an error when comparing calculated and
included MD5 sum, e.g.:
> mktplinkfw2 -i Archer_C20iv1_0.9.1_3.2_up_boot\(170221\)_2017-02-21_17.14.03.bin | grep -A 1 MD5Sum1
Header MD5Sum1         : 22 5a cb 92 10 d2 95 7b df 62 9a f8 62 17 37 10 (*ERROR*)
          --> expected : ad 19 11 d1 78 98 a7 42 5f 2e 64 da 8a 34 ec cb

This problem has been verified to occur with:
Archer_C20iv1_0.9.1_3.2_up_boot(170221)_2017-02-21_17.14.03.bin
Archer MR200v1_0.9.1_1.1_up_boot_v004a.0 Build 160905 Rel.60037n.bin
TD-W8970v3_0.9.1_2.0_up_boot(160816)_2016-08-16_10.40.57.bin
TD-W8980v1_0.6.0_1.8_up_boot(150514)_2015-05-14_11.16.43.bin
Archer_VR200vv2_0.2.0_0.8.0_up_boot(161202)_2016-12-05_14.39.06.bin

For some images, e.g.:
Archer_C50v3_EU_0.9.1_0.3_up_boot[170417-rel52298].bin
TL-WR840Nv4_EU_0.9.1_4.16_up_boot[170421-rel70692].bin
TL-WR841Nv13_0.9.1_3.16_up_boot(161012).bin
mktplinkfw2 calculates zero MD5 so these has to be fixed separately:
> mktplinkfw2 -i TL-WR841Nv13_0.9.1_3.16_up_boot\(161012\).bin | grep -A 1 MD5Sum1
Header MD5Sum1         : 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (*ERROR*)
          --> expected : 6f 1d 9b 57 5d 42 14 6d bf a2 03 9d 46 7d 55 55

It's most likely that MD5 salt used in mktplinkfw2 has been always wrong
(and it's not a matter of e.g. a vendor change). Update it to fix MD5
calculation.

This has been also verified to calculate MD5 correctly for other (not
yet supported) devices, e.g.:
Archer_C3150v2_0.1.0_0.9.1_up_boot(160812)_2016-08-12_10.52.54.bin
Archer_C3200v1_0.9.1_0.1_up_boot(160704)_2016-07-04_15.48.28.bin

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Mathias Kresin <dev@kresin.me>
2017-07-03 07:04:58 +02:00
Hauke Mehrtens
1f991bb365 brcm47xx: Add support for kernel 4.9
I tested this on a WRT54GS and a WRT610N V1.
The WRT610N does not boot when the kernel is too big, so I deactivated KALLSYMS

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-02 23:10:06 +02:00
Hauke Mehrtens
b56995550a brcm47xx: refresh kernel configuration
Run make kernel_oldconfig on the brcm47xx target.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-02 22:44:07 +02:00
Hauke Mehrtens
250d305455 brcm47xx: remove kernel 4.1 support
Kernel 4.1 is not supported by LEDE for some time now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-07-02 22:44:06 +02:00
Mirko Parthey
e3b339e2ea brcm47xx: use DMZ LED as status indicator
On the Linksys WRT54GSv1, the Power LED flickers in the "off" state.
Indicate status using the DMZ LED if available, since it has solid "on" and
"off" states.

This change was tested on the WRT54GSv1, but may also affect other brcm47xx
devices.

Fixes FS#793.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2017-07-02 22:44:06 +02:00
Mirko Parthey
1dace8cbe0 brcm47xx: resolve GPIO conflict for WRT54GSv1
On the Linksys WRT54GSv1, the adm6996 switch driver and the
gpio_button_hotplug module both claim GPIO 6, which is connected to the
Reset button.  When the switch driver's request wins, the Reset button
cannot work. This makes it impossible to enter failsafe mode without a
serial console.

Stop requesting the "adm_rc" GPIO in the switch driver, since it is not
used anywhere.

Fixes FS#792.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
2017-07-02 22:44:06 +02:00
Rafał Miłecki
896246b8c5 firmware-utils: mktplinkfw2: fix support for -w option
This fixes copy & paste typo when reading -w argument.

Fixes: 4b35e174ca ("firmware-utils: mktplinkfw2: support additional hardware version")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-07-02 22:31:13 +02:00
Jonas Gorski
eaaba94bf6 kernel: add missing symbol to generic
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-30 12:14:10 +02:00
Jonas Gorski
beaaf214f7 brcm63xx: refresh smp config
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-30 12:13:08 +02:00
Jonas Gorski
d131e36e41 brcm63xx: enable KEXEC for SMP again
It seems it compiles again, so there is no reason to keep it disabled.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-30 12:12:38 +02:00
Jonas Gorski
2983576bae brcm63xx: disable commandline parts parser
We don't use it, so no need to have it enabled.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-30 12:12:32 +02:00
Anthony Sepa
f9b67b89d3 brcm63xx: add support for the Actiontec R1000H gateway
SOC: Broadcom BCM6368 (2 * Broadcom BMIPS4350 V3.1 / 400 MHz)
Flash size: 32MB (split 16/16 dual boot)
RAM size: 64MB
Wireless: BCM432x 802.11a/b/g/n(pci)
Ethernet: Broadcom BCM53115
USB: 1 x USB 2.0

Known issues:
 - Unable to detect 53115 switch attached to MDIO. Not supported
 - No support for the cable port

More info on the device and the research can be found at:
http://www.actiontec.com/212.html

Same FCC ID as:
https://wikidevi.com/wiki/Actiontec_V1000H_(Telus)

Signed-off-by: Anthony Sepa <anthonysepa@yahoo.ca>
[jonas.gorski: fix commit subject/message]
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-30 12:12:17 +02:00
Jonas Gorski
1dc7a0cfd5 brcm63xx: fix bcm6328 pinmux other register
The pinmux register is at relative offset 0x8, not 0xc. Fixes hang
when trying to modify pins >= 32.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-30 12:12:06 +02:00
Jo-Philipp Wich
28cb6ed949 ar71xx: fix typo in network defaults
Commit 9fec39a (ar71xx: add support for TP-Link TL-WA855RE v1) introduced a
typo in 02_network, fix it by removing the stray paren.

Reported-by: Henryk Heisig <hyniu@o2.pl>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-29 18:04:29 +02:00
Piotr Dymacz
a73471dea7 ar71xx: image: specify TPLINK_HWID for TP-Link RE450
TPLINK_HWID hasn't been specified for TP-Link RE450 since the begin.
As we don't want to break sysupgrade (all existing LEDE release images
for this board have TPLINK_HWID set to 0x0), set it explicitly to 0x0.

Fixes FS#852

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:46:08 +02:00
Piotr Dymacz
24043a0d2e ramips: add support for TP-Link TL-WR840N v4 and TL-WR841N v13
TP-Link TL-WR840N v4 and TL-WR841N v13 are simple N300 routers with
5-port FE switch and non-detachable antennas. Both are very similar
and are based on MediaTek MT7628NN (aka MT7628N) WiSoC.

The difference between these two models is in number of available
LEDs, buttons and power input switch.

This work is partially based on GitHub PR#974.

Specification:

- MT7628N/N (580 MHz)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH
- 2T2R 2.4 GHz
- 5x 10/100 Mbps Ethernet
- 2x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- TL-WR840N v4: 5x LED (GPIO-controlled), 1x button
- TL-WR841N v13: 8x LED (GPIO-controlled*), 2x button, power input
  switch

* WAN LED in TL-WR841N v13 is a dual-color, dual-leads type which isn't
  (fully) supported by gpio-leds driver. This type of LED requires both
  GPIOs state change at the same time to select color or turn it off.
  For now, we support/use only the green part of the LED.

Factory image notes:

These devices use version 3 of TP-Link header, fortunately without RSA
signature (at least in case of devices sold in Europe). The difference
lays in the requirement for a non-zero value in "Additional Hardware
Version" field. Ideally, it should match the value stored in vendor
firmware header on device ("0x4"/"0x13" for these devices) but it seems
that anything other than "0" is correct.

We are able to prepare factory firwmare file which is accepted and
(almost) correctly flashed from the vendor GUI. As it turned out, it
accepts files without U-Boot image with second header at the beginning
but due to some kind of bug in upgrade routine, flashed image gets
corrupted before it's written to flash.

Tests showed that the GUI upgrade routine copies value of "Additional
Hardware Version" from existing firmware into offset "0x2023c" in
provided file, _before_ storing it in flash. In case of vendor firmware
upgrade files (which all include U-Boot image and two headers), this
offset points to the matching field in kernel+rootfs firmware part
header. Unfortunately, in case of LEDE factory image file which contains
only one header, it points to the offset "0x2023c" in kernel image. This
leads to a corrupted kernel and ends up with a "soft-bricked" device.

The good news is that U-Boot in these devices contains well known tftp
recovery mode, which can be triggered with "reset" button. What's more,
in comparison to some of older MediaTek based TP-Link devices, this
recovery mode doesn't write whole file at offset "0x0" in flash, without
verifying provided file in advance. In case of recovery mode in these
devices, first "0x20000" bytes are always skipped and "0x7a0000" bytes
from rest of the file are stored in flash at offset "0x20000".

Flash instruction:

Until (if at all) TP-Link fixes described problem, the only way to flash
LEDE image in these devices is to use tftp recovery mode in U-Boot:

1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "lede-ramips-mt7628-tl-wr84...-squashfs-tftp-recovery.bin"
   to "tp_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 for around 6-7 seconds, until
   device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.

To access U-Boot CLI, keep pressed "4" key during boot.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Piotr Dymacz
c55fadcacb ramips: image: simplify TP-Link Archer devices definitions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Piotr Dymacz
5b7f592251 build: move mktplinkfw2 related commands to image-commands.mk
There are already two targets (lantiq, ramips) which use mktplinkfw2
tool for creating images. This de-duplicates code, introduces two new
build commands: tplink-v2-header, tplink-v2-image and makes use of
them in place of old, (sub)target specific ones.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Piotr Dymacz
7d6c63d875 build: rename TPLINK_BOARD_NAME to TPLINK_BOARD_ID
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Piotr Dymacz
4b35e174ca firmware-utils: mktplinkfw2: support additional hardware version
As it turned out, some of new MediaTek based TP-Link devices use value
from field at 0x3c offset in version 3 of TP-Link header to specify
"Additional Hardware Version".

Value from this field is validated during regular (GUI) firmware upgrade
on devices like TL-WR840N v4 or TL-WR841N v13. If it's zero (based on
some tests, it seems that firmware will accept anything != 0), errors
like below are printed on console and upgrade fails:

[ rsl_sys_updateFirmware ] 2137:  Firmware Additional HardwareVersion
check failed

[ rdp_updateFirmware ] 345:  perror:4506

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Piotr Dymacz
ad8c315812 ar71xx: fix switch port mapping for TP-Link TL-WR74xN/D series
Fixes FS#843

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Henryk Heisig
b05c7193fd ar71xx: add support for TP-Link Archer C58 v1
TP-Link Archer C58 v1 is a dual-band AC1350 router, based on Qualcomm
QCA9561 + QCA9886. It looks like Archer C59 v1 without USB port.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 6x LED, 3x button
- UART header on PCB, RX, TX at TP4+5 (backside)

QCA9886 wlan needs pre_cal_data file and enable ieee80211 phy hotplug to
patch macaddress.

Flash instruction:

Use "factory" image directly in vendor GUI.

Recovery method:

1. Set PC to fixed ip address 192.168.0.66/24.
2. Download "lede-ar71xx-generic-archer-c58-v1-squashfs-factory.bin" and
   rename it to "tp_recovery.bin".
3. Start a tftp server with the file "tp_recovery.bin" in its root
   directory.
4. Turn off the router.
5. Press and hold Reset button.
6. Turn on router with the reset button pressed and wait ~15 seconds.
7. Release the reset button and after a short time the firmware should
   be transferred from the tftp server.
8. Wait ~30 second to complete recovery.

Flash instruction under U-Boot, using UART:

tftp 0x81000000 lede-ar71xx-...-sysupgrade.bin
erase 0x9f020000 +$filesize
cp.b $fileaddr 0x9f020000 $filesize
reset

This commit is based on GitHub PR#1112

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-06-29 10:37:36 +02:00
Jean-Pierre St-Yves
01280bc8dc firmware-utils: tplink-safeloader: add support for Archer C5 v2 JP/US
Add support for Japan and US versions of TP-Link Archer C5 v2

Signed-off-by: Jean-Pierre St-Yves <jpstyves@gmail.com>
2017-06-29 10:37:36 +02:00
Henryk Heisig
7d21b4eed0 firmware-utils: tplink-safeloader: add support for Archer C59/C60 RU
Add support for Russian version of TP-Link Archer C59/C60 v1

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-06-29 10:37:36 +02:00
Federico Cappon
9fec39a033 ar71xx: add support for TP-Link TL-WA855RE v1
TP-Link TL-WA855RE v1 is a wall-plug N300 Wi-Fi range extender,
based on Qualcomm/Atheros QCA9533 v2.

Short specification:

- 550/397/198 MHz (CPU/DDR/AHB)
- 1x 10/100 Mbps Ethernet
- 32 MB of RAM (DDR1)
- 4 MB of FLASH
- 2T2R 2.4 GHz
- 2x external antennas
- 2x LED (green and orange in the same package), 2x button
- UART: TP5(TX) and TP4(RX) test points on PCB

Flash instruction: use "factory" image directly in vendor GUI.

Warning: this device does not include any kind of recovery mechanism
in the bootloader and disassembling process is not trivial.

You can access vendor firmware over serial line using:
- login: root
- password: sohoadmin

Image was tested only in EU version of the device, but should work
also with the same device version sold in other countries.

Signed-off-by: Federico Cappon <dududede371@gmail.com>
2017-06-29 10:37:36 +02:00
Piotr Dymacz
656ed7544f ar71xx: fix EnGenius ENS202EXT mtd definition
Use statically defined sizes for kernel and rootfs mtd partitions.
Vendor upgrade script writes both firmware parts independently which
ends up in a gap between kernel and rootfs images. This results in
incorrectly calculated rootfs_data start offset.

Also, fix IMAGE_SIZE, DEVICE_PACKAGES and drop redundant KERNEL
definition.

Fixes FS#835

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-29 10:37:36 +02:00
Camille Bilodeau
bdd3c94872 uboot-envtools: add Arduino Yun support
Signed-off-by: Camille Bilodeau <camille.bilodeau@protonmail.com>
2017-06-29 10:37:36 +02:00
Camille Bilodeau
bb46b635df ar71xx: move Arduino Yun to generic building code
Migrate Arduino Yun from legacy to generic building code.

Note: the mtd partitioning is changed to adopt the LEDE default
partitioning. It allows to have a kernel bigger than 1280k. It is
necessary as kernel > 4.4 with default LEDE configuration grows
bigger.

To use the new partitioning, you need to update your U-Boot env in
advance:

setenv mtdparts "spi0.0:256k(u-boot)ro,64k(u-boot-env),15936k(firmware),64k(nvram),64k(art)ro"
setenv bootcmd "run addboard; run addtty; run addparts; run addrootfs; bootm 0x9f050000 || bootm 0x9fea0000"
saveenv

Signed-off-by: Camille Bilodeau <camille.bilodeau@protonmail.com>
2017-06-29 10:37:36 +02:00
Camille Bilodeau
2fa58a8d7c ar71xx: remove Arduino Yun 8 MiB prototype
The Arduino Yun has 16 MiB flash. Early prototype boards with 8 MiB were
not available for sell:

https://blog.arduino.cc/2013/08/21/updating-about-arduino-yun-and-arduino-robot/

Signed-off-by: Camille Bilodeau <camille.bilodeau@protonmail.com>
2017-06-29 10:37:36 +02:00
Leon M. George
3e12ca2355 ar71xx: wpj344: set MAC on wan
Signed-off-by: Leon M. George <leon@georgemail.eu>
2017-06-29 10:37:36 +02:00
Leon M. George
98c5a71dfd ar71xx: wpj344: remove unused eth1 device
Signed-off-by: Leon M. George <leon@georgemail.eu>
2017-06-29 10:37:36 +02:00
Leon M. George
c777fd8a7e ar71xx: wpj344: read MAC addresses from u-boot mtd
This way, the assigned addresses match those on the barcode labels.
Otherwise, the addresses appear to vary on boot.

Signed-off-by: Leon M. George <leon@georgemail.eu>
2017-06-29 10:37:36 +02:00
Hans Dedecker
1d45ec2784 dhcpv6: add missing dollar sign in dhcpv6 script (FS#874)
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-29 09:56:19 +02:00
Stijn Tintel
880f73c327 kernel: cleanup CONFIG_SCHED_HRTICK
Remove CONFIG_SCHED_HRTICK from target configs, as it was added to the
generic config in b47fd76563.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-29 04:46:59 +02:00
Stijn Tintel
1e91855af2 armvirt: rename config-default to config-4.9
The kernel configs for all targets should have the version in the
filename, for clearness and consistency across all targets.
It is also expected by the update_kernel.sh script.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-29 03:36:19 +02:00
Hans Dedecker
7d31fe6068 dnsmasq: backport patch fixing DNS failover (FS#841)
Backport upstream dnsmasq patch fixing DNS failover when first servers
returns REFUSED in strict mode; fixes issue FS#841.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-28 11:33:42 +02:00
Rafał Miłecki
76c460b584 kernel: backport usbport LED trigger driver support for DT
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-28 11:31:38 +02:00
Stijn Tintel
6371159b4a dropbear: add option to set max auth tries
Add a uci option to set the new max auth tries paramater in dropbear.
Set the default to 3, as 10 seems excessive.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-28 02:18:20 +02:00
Kevin Darbyshire-Bryant
9aaf3d3501 dropbear: server support option '-T' max auth tries
Add support for '-T n' for a run-time specification for maximum number
of authentication attempts where 'n' is between 1 and compile time
option MAX_AUTH_TRIES.

A default number of tries can be specified at compile time using
'DEFAULT_AUTH_TRIES' which itself defaults to MAX_AUTH_TRIES for
backwards compatibility.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-28 02:18:20 +02:00
Yury Shvedov
37c1513b1f hostapd: configure NAS ID regardless of encryption
RADIUS protocol could be used not only for authentication but for
accounting too. Accounting could be configured for any type of networks.
However there is no way to configure NAS Identifier for non-WPA
networks without this patch.

Signed-off-by: Yury Shvedov <yshvedov@wimarksystems.com>
[cleanup commit message]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-28 02:18:20 +02:00
Yury Shvedov
0e7bbcd43b hostapd: add acct_interval option
Make an ability to configure Accounting-Interim-Interval via UCI

Signed-off-by: Yury Shvedov <yshvedov@wimarksystems.com>
[add hostapd prefix, cleanup commit message]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-28 02:18:20 +02:00
Michael Heimpold
f788fd0fd3 mxs: drop 4.4 support
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2017-06-27 23:22:25 +02:00
Michael Heimpold
9eb68f020b mxs: add support for 4.9 and switch over
I did not port the regulator and power patches from Stefan Wahren
because I talked to him and he told me that work on this is currently
stalled. And since AFAIK nothing depends on these patches, leaving them
out seems reasonable.

I build minimum default configurations and run-tested them on both
I2SE Duckbill devices and Olimex Olinuxino Maxi boards successfully [1].

[1] Tested:
- debug uart is working
- boot without any obvious kernel problem
- network is coming up and data transfer is possible
- Olinuxino: USB detects a plugged-in pen drive

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
[refreshed config and patches]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-06-27 23:22:25 +02:00
Michael Heimpold
8794954d10 kernel: disable various symbols for v4.9
In preparation for bumping mxs target to 4.9, disable a bunch of configuration
symbols that provoked config prompts.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2017-06-27 23:22:25 +02:00
John Crispin
6da4f03f02 ath10k-firmware: add qca9888 firmware
ath10k-firmware: add qca9888 firmware

the firmware files for qca9888 were previously not packaged. add the meta
information for doing so.

Signed-off-by: John Crispin <john@phrozen.org>
2017-06-27 11:47:07 +02:00
Stijn Tintel
f80963d4d1 kernel: update kernel 4.4 to 4.4.74
Refresh patches.
Compile-tested on ar71xx.
Runtime-tested on ar71xx.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-27 07:42:50 +02:00
Koen Vandeputte
69649a1b45 kernel: update kernel 4.9 to 4.9.34
- Refreshed all patches
- Adapted 1 (0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch)

Compile tested on: brcm2708, cns3xxx, imx6
Run tested on: brcm2708, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[Compile and run tested on brcm2708]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-27 07:21:03 +02:00
Stijn Tintel
d18f76f762 kernel: use .patch extension for all patches
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-27 06:37:46 +02:00
Mathias Kresin
06741411e0 firmware-utils: fix dgn3500sum compiler warnings
The sum variable need to be initialised, otherwise it will points to
random stack memory and a bogus image checksum might be calculated.

While at it, fix the segfault in case the product region code isn't
specified and enable compiler warnings which had revealed all the code
issues.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-26 20:08:36 +02:00
Hans Dedecker
f33de80232 dnsmasq: backport tweak ICMP ping logic for DHCPv4
Don't start ping-check of address in DHCP discover if there already
exists a lease for the address. It has been reported under some
circumstances android and netbooted windows devices can reply to
ICMP pings if they have a lease and thus block the allocation of
the IP address the device already has during boot.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-26 10:49:13 +02:00
Jo-Philipp Wich
2c5f16ecac procd: support term_timeout parameter
Expose "term_timeout" parameter in procd.sh to allow init scripts to
request a longer termination timeout.

This is required to fix FS#859 in a later commit.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-26 10:02:20 +02:00
Jo-Philipp Wich
124ab1dc0a procd: assign /dev/tty* nodes to "tty" group
Adjust default permissions and ownership of /dev/tty* nodes from
0600/root:root to 0660/root:tty in order to support granting
unprivileged user access when needed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-26 10:02:20 +02:00
Jo-Philipp Wich
5523ee3459 base-files: add "tty" user group
This is needed for an upcoming change to the hotplug default rules which
will cause /dev/tty* nodes to get assigned to the "tty" group in order
to support unprivileged user access when needed.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-26 10:02:20 +02:00
Magnus Kroken
45f4f6649a openvpn: update to 2.4.3
Fixes for security and other issues. See security announcement for more details:
https://community.openvpn.net/openvpn/wiki/VulnerabilitiesFixedInOpenVPN243

* Remotely-triggerable ASSERT() on malformed IPv6 packet (CVE-2017-7508)
* Pre-authentication remote crash/information disclosure for clients (CVE-2017-7520)
* Potential double-free in --x509-alt-username (CVE-2017-7521)
* Remote-triggerable memory leaks (CVE-2017-7512)
* Post-authentication remote DoS when using the --x509-track option (CVE-2017-7522)
* Null-pointer dereference in establish_http_proxy_passthru()
* Restrict --x509-alt-username extension types
* Fix potential 1-byte overread in TCP option parsing
* Fix mbedtls fingerprint calculation
* openssl: fix overflow check for long --tls-cipher option
* Ensure option array p[] is always NULL-terminated
* Pass correct buffer size to GetModuleFileNameW() (Quarkslabs finding 5.6)

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2017-06-26 09:56:07 +02:00
Magnus Kroken
329f6a96b7 mbedtls: update to 2.5.1
Fixes some security issues (no remote exploits), and introduces
some changes. See release notes for details:
https://tls.mbed.org/tech-updates/releases/mbedtls-2.5.1-2.1.8-and-1.3.20-released

* Fixes an unlimited overread of heap-based buffers in mbedtls_ssl_read()
* Adds exponent blinding to RSA private operations
* Wipes stack buffers in RSA private key operations (rsa_rsaes_pkcs1_v15_decrypt(), rsa_rsaes_oaep_decrypt())
* Removes SHA-1 and RIPEMD-160 from the default hash algorithms for certificate verification.
* Fixes offset in FALLBACK_SCSV parsing that caused TLS server to fail to detect it sometimes.
* Tighten parsing of RSA PKCS#1 v1.5 signatures, to avoid a potential Bleichenbacher/BERserk-style attack.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2017-06-26 09:56:07 +02:00
Alexander Couzens
d98cafc7b6 ar71xx/images/senao: fix reproducible issue using tar
Use deterministic sorting
Use numeric owner/group
Set uid/gid to 0

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-25 12:14:26 +02:00
Alexander Couzens
d6331d5583 ar71xx/image: make tar calls reproducible
Use --mtime when SOURCE_DATE_EPOCH is set.
Use gzip -n9z instead of tar z to remove
timestamp in gzip header.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-25 12:11:41 +02:00
Christian Lamparter
6adc757097 apm821xx: MR24: fix ethernet phy detection on the MR24
To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This patch fixes a problem where the AR8035 PHY can't be
detected on the Cisco Meraki MR24, when the ethernet cable
is not connected during boot.

Russell Senior reported:
|This appears to be a problem during probing of the AR8035
|phy chip. When ethernet has no link, the phy detection fails,
|and eth0 is not created. Plugging ethernet later has no effect,
|because there is no interface as far as the kernel is
|concerned. The relevant part of the boot log looks like this:
|
|[    0.876611] /plb/opb/emac-rgmii@ef601500: input 0 in RGMII mode
|[    0.882532] /plb/opb/ethernet@ef600c00: reset timeout
|[    0.888546] /plb/opb/ethernet@ef600c00: can't find PHY!
(<https://bugs.lede-project.org/index.php?do=details&task_id=687>)

Fixes FS#687
Cc: Chris Blake <chrisrblake93@gmail.com>
Reported-by: Russell Senior <russell@personaltelco.net>
Fixes: 23fbb5a87c56e98 ("emac: Fix EMAC soft reset on 460EX/GT")
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-06-24 22:36:38 +02:00
Florian Eckert
4482063c34 treewide: add license tags
Add licence tags where missing.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2017-06-24 22:36:38 +02:00
Mathias Kresin
1faff3b7e3 ramips: add MT7603E driver to AFoundry EW1200
Add the MT7603E driver for the 2.4GHz wireless.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-24 22:36:38 +02:00
Mathias Kresin
e7cd6f5d66 ar71xx: add AVM FRITZ!WLAN Repeater 300E support
Specifications:
* SoC: AR7242 (Virian 400MHz)
* RAM: 64 MB DDR (W9751G6JB-25)
* Flash: 16MB SPI flash (S25FL129PIF)
* WiFi: AR9382 (2.4/5GHz) + 2x SE2595L
* LAN: 1x1000M (PEF7071V)

To install LEDE via EVA bootloader, a FTP connection need to be
established to 192.168.178.1 within the first seconds after power on:

  ftp> quote USER adam2
  ftp> quote PASS adam2
  ftp> binary
  ftp> debug
  ftp> passive
  ftp> quote MEDIA FLSH
  ftp> put lede-ar71xx-generic-fritz300e-squashfs-sysupgrade.bin mtd1

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-24 22:36:38 +02:00
Mathias Kresin
0605b15be4 ar71xx: add AR724x PCIe init fixes
Add upstream send AR724x PCIe patches to get the PCIe controller out of
reset during driver init.

The AVM Fritz 300E bootloader doesn't take care of releasing the
different PCIe controller related resets which causes an endless hang
as soon as either the PCIE Reset register (0x180f0018) or the PCI
Application Control register (0x180f0000) is read from.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-24 22:36:38 +02:00
Mathias Kresin
8e0d7d6574 build: move lzma2eva build step to image-commands.mk
Move it to image-commands.mk so that it can used by other targets with
eva based boards as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-24 22:36:38 +02:00
Mathias Kresin
d165f1f3bc kernel: move Lantiq PEF7061/7071/7072 phy driver to generic
The driver is used for boards outside the lantiq target as well. Move
it to generic to make it available for more targets.

The phy driver is included in kernel 4.8 as INTEL_XWAY_PHY.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-24 22:36:38 +02:00
Mathias Kresin
7e12863252 fritz_tffs_read: get tffs size from input file
Use the size of the input file as maximum tffs size instead of a fixed
value. The tffs on a AVM Fritz 300E can be up to 512KByte for example.

Fixes a read error for the AVM Fritz 3370 where the tffs partition size
is 64Kbyte and smaller than the former default value of 256KByte.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-24 22:36:38 +02:00
Daniel Golle
04063820e8 libreadline: add host-build
Also make sure that the PKG_NAME and folder name are equal.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-24 14:38:14 +02:00
Luiz Angelo Daros de Luca
991899cc54 valgrind: bump to 3.13.0
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2017-06-24 14:11:06 +02:00
Christian Schoenebeck
7d7356df64 ca-certificates: Update to version 20161130+nmu1
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
2017-06-24 14:11:06 +02:00
Bastian Bittorf
dde9da46c1 busybox: ash/hush fix for read-builtin command
this is a cherrypick from busybox-git HEAD:
f5470419404d643070db99d058405b714695b817

and can be removed when upgrading to
next busybox release. discussion here:
http://lists.busybox.net/pipermail/busybox/2017-May/085439.html

Signed-off-by: Bastian Bittorf <bb@npl.de>
2017-06-24 13:11:19 +02:00
Kevin Darbyshire-Bryant
22e2b402ae gcc: gcc 6.3.0 fix comparison between pointer and integer
Fix FS#832

/source/build_dir/toolchain-mips_74kc_gcc-6.3.0_musl/gcc-6.3.0/gcc/ubsan.c:
In function 'bool ubsan_use_new_style_p(location_t)':
/source/build_dir/toolchain-mips_74kc_gcc-6.3.0_musl/gcc-6.3.0/gcc/ubsan.c:1474:23:
error: ISO C++ forbids comparison between pointer and integer
[-fpermissive]
       || xloc.file == '\0' || xloc.file[0] == '\xff'
                       ^~~~
make[5]: *** [Makefile:1085: ubsan.o] Error 1

https://www.viva64.com/en/b/0425/#ID0EMGCI

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-24 13:11:19 +02:00
Kevin Darbyshire-Bryant
4ed40be3e3 hostapd: add support for acs_chan_bias option
During auto channel selection we may wish to prefer certain channels
over others.

e.g. we can just squeeze 4 channels into europe so '1:0.8 5:0.8 9:0.8
13:0.8' does that.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-24 13:11:19 +02:00
Stefan Tomanek
de6ff15129 busybox: backport 'ip rule suppress_{prefixlength, ifgroup}'
This is a backport from the busybox repository
(192dce4b84fb32346ebc5194de7daa5da3b8d1b4); it enables the use of the
suppress_{prefixlength,ifgroup} flags for policy routing rules.

Signed-off-by: Stefan Tomanek <stefan.tomanek@wertarbyte.de>
2017-06-24 13:11:19 +02:00
Hans Dedecker
a1c1f6ea7b procd: update to latest version
e5e99c4 watchdog: add support for starting/stopping kernel watchdog

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-23 22:48:04 +02:00
Rafał Miłecki
f5f1d40b5e kernel: backport MTD patch extracing TRX code to separated parser
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-23 11:54:20 +02:00
Rafał Miłecki
4d5f296af8 kernel: backport upstream mtd support for partition parsers
In a log term it should replace our implementation. For now both can
coexist.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-23 11:40:05 +02:00
Rafał Miłecki
8c1e760ab6 kernel: backport upstream mtdpart.c cleanups
Except for renames and line changes the only conflict was in
allocate_partition in handling MTD_WRITEABLE. Hopefully it was handled
correctly.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-23 11:40:05 +02:00
Rafał Miłecki
4052443a23 kernel: don't switch allocate_partition to use mtd_roundup_to_eb
This mtd_roundup_to_eb helper was introduced years ago in the commit
daec7ad768 ("kernel/3.10: add separate rootfs partition parser") and
it was probably supposed to simplify code a bit.

With the recent upstream commit 1eeef2d7483a7 ("mtd: handle partitioning
on devices with 0 erasesize") the logic in allocate_partition got
slightly more complex and we can't use this simple helper anymore as it
doesn't support MTD_NO_ERASE properly.

There also isn't any real gain from this helper, so it's probably easier
to just don't use it *or* work on upstreaming it to avoid maintenance
cost.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-23 10:09:57 +02:00
Rafał Miłecki
b91a38d647 base-files: fix PKG_CONFIG_DEPENDS to include version.mk entries
Including version.mk sets PKG_CONFIG_DEPENDS to config entries used for
VERSION_SED command. We should keep these configs to make sure package
gets refreshed when needed.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-22 10:05:23 +02:00
Grégoire Delattre
680a5c5d3e dnsmasq: add dhcp-range tags configuration
dnsmasq can match tags in its dhcp-range configuration, this commit adds
the option to configure it in the dhcp section

uci configuration:
config dhcp 'lan'
        option interface 'lan'
        list tag 'blue'
        list tag '!red'
        option start '10'
        option limit '150'
        option leasetime '12h'

generated dnsmasq configuration:
dhcp-range=tag:blue,tag:!red,set:lan,192.168.1.10,192.168.1.159,255.255.255.0,12h

Signed-off-by: Grégoire Delattre <gregoire.delattre@gmail.com>
2017-06-20 22:33:41 +02:00
Daniel Golle
e3d09e7898 procd: update to latest git HEAD
453116e system: introduce new attribute board_name
e5b963a preinit: define _GNU_SOURCE
e5ff8ca upgraded: cmake: Find and include uloop.h
f367ec6 hotplug: fix a memory leak in handle_button_complete()
796ba3b service/service_stopped(): fix a use-after-free
79bbe6d system: return legacy board name

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-19 22:12:51 +02:00
Hauke Mehrtens
3ce60ba0a1 build: Fix not altering KERNELRELEASE for external kernel
When an external kernel tree is used the version should not get
modified by the LEDE build scripts. This was added by Florian some time
ago.
The commit 0aed054bec ("build: add KERNEL_MAKE and
KERNEL_MAKE_FLAGS variables and move to kernel.mk") breaks this feature
introduced in b6746a6ffb ("include: Do not alter KERNELRELEASE for
external/git kernels").

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-06-19 20:39:33 +02:00
Alexander Couzens
b5aaafe9a3 mtd-utils/mkfs.jffs2: honor env SOURCE_DATE_EPOCH
Use the timestamp from the enviroment SOURCE_DATE_EPOCH
if set instead of the build time.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-19 14:35:07 +02:00
Alexander Couzens
c47a1a3527 firmware-utils: honor env SOURCE_DATE_EPOCH
Use the timestamp from the enviroment SOURCE_DATE_EPOCH
if set instead of the build time.
Fixes reproducible builds for certain firmware images.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-19 14:34:52 +02:00
Yousong Zhou
77dc6a2ae7 libunwind: update to version 1.2.1
Changes since 1.2

    a77b0cd Bump version to v1.2.1
    5f354cb mips/tilegx: Add missing unwind_i.h header file
    620d1c3 Add aarch64 getcontext functionality.

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-06-19 14:43:09 +08:00
Hans Dedecker
c885482080 netifd: update to the latest version
ef5f7a0 ubus: remove superfluous error check in netifd_add_dynamic
5a68693 iprule: coding style line up
90e2e2c iprule: Add option to suppress unspecific routing lookups

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-18 22:22:03 +02:00
Yousong Zhou
80d9ec5d3d scripts/package-metadata.pl: parse and validate field Require-User
The script will now detect uid/gid collision and can generate a table of
current allocation

    ./scripts/package-metadata.pl usergroup tmp/.packageinfo \
	| sort -k 1,1r -k 3,3n \
	| column -t

This should ensure that no collision will happen for each single build

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-06-18 10:39:35 +08:00
Yousong Zhou
f334a0cdb8 base-files: allocate uid/gid starting from 65536
There already exist static assignment of uid/gid 65533 in packages feed
and we have nobody/nogroup taking 65534 as their ids.  Let's change the
pid of dynamic assignment to start from 65536 so that the two assignment
scheme will not collide with each other

While at it, fix the scan command checking existence of uid/gid

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-06-18 10:39:35 +08:00
Mathias Kresin
3ccca56eb0 ramips: remove optional ucidef_set_led_rssi parameters
The same values are set if the parameters are not specified.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-17 15:38:20 +02:00
Mathias Kresin
4cdbf4014b base-files: make ucidef_set_led_rssi offset and factor optional
The offset and factor are only related for LEDs which can have
different brightness values. But binary LEDs are more common and don't
require any further configuation than setting the factor to 1.

Use offset = 0 and factor = 1 in case nothing else is specified.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-17 15:38:19 +02:00
Pavlo Samko
82f9486142 ramips: add support for TRENDnet TEW-638APB V2
This patch add support for the TRENDnet TEW-638APB V2.

Specification:
- SoC: Ralink SoC RT3052F
- Flash: 4MB
- RAM: 32MB
- Ethernet: 1x LAN (100 Mbps)
- Wireless: 2.4GHz b/g/n, 2x external antenna
- Buttons: 1x Reset, 1x WPS
- LEDs: Power (green), Ethernet (green), WPS (green and orange),
  Wireless (green)
- UART: 1x UART on PCB (3.3V, GND, RX, TX) - 57600 8N1

Installation

via vendor firmware:
- upload sysupgrade.bin image

via TFTP:
- stop uboot into tftp-load into option "2"
- upload sysupgrade.bin image

Signed-off-by: Pavlo Samko <bulldozerbsg@gmail.com>
2017-06-17 15:38:19 +02:00
Mathias Kresin
259fc1e778 lantiq: show xdsl line init status on shared dsl/internet led
On boards which don't have a distinct internet and dsl led, use the
shared LED to indicate the xdsl line state and any traffic that is
send/received via the netdev. This traffic doesn't necessarily need to
be internet traffic.

Rename the shared LED of existing configs to "dsl", to match the new
defaults. The configuration of the to be renamed LED is identical with
the new defaults.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-17 15:38:18 +02:00
Martin Schiller
03776d813c lantiq: restore netdev trigger of dsl led on line up
Allows to use a single LED for line init status indication and to show
any rx/tx activity on a synchronized dsl line.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-17 15:34:16 +02:00
Alexander Couzens
e5fc15bf9a build: move definition of KBUILD_BUILD_TIMESTAMP to include/kernel.mk
Fixes: 0aed054bec (build: add KERNEL_MAKE and KERNEL_MAKE_FLAGS
variables and move to kernel.mk)

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-17 15:09:57 +02:00
Felix Fietkau
77a64e8bff mt76: update to the latest version, fixes rate control issues
Should improve performance considerably in many cases

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-17 12:17:33 +02:00
Felix Fietkau
98634205fd libubox: update to the latest version, fixes a runqueue use-after-free bug
7237302 md5: add "const" qualifier to the "file" argument
fa9937c json_script: enable custom expr handler callback
368fd26 uloop: allow specifying a timeout for uloop_run()
6a7fb7d runqueue: fix use-after-free bug
4bc3dec uloop: fix a regression in timeout handling
fd57eea uloop: allow passing 0 as timeout to uloop_run

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-17 11:51:41 +02:00
Felix Fietkau
45572fe831 mac80211: refresh patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-17 11:51:41 +02:00
Pavel Kubelun
189239ade3 ipq806x: qca99xx: fix wifi calibration
As of now OTP is being correctly parsed and the driver requires to parse pre-caldata to follow corresponding routine.

Rename cal file into pre-calfile so the board initialized correctly with API 2 board data (board-2.bin).

Also remove the now unneeded for qca9984 board.bin symlink to 5GHz calfile.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-06-17 11:51:41 +02:00
Pavel Kubelun
025cb640cd ath10k: increase bmi timeout to fix OTP on qca99xx boards and add bmi identification through pre-cal file
Backporting upstream patches.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [refresh, rename patches]
2017-06-17 11:51:41 +02:00
Daniel Golle
d80d1b6c42 imagebuilder: don't rewrite package list output
No longer rewrite opkg list output in package_list function, remove
the awk call in the pipe (which was intended for a single specific
use-case).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-17 01:24:43 +02:00
Daniel Golle
1b555e1d2b imagebuilder: clean package_list
commit 19ac879954 (imagebuilder: add package_list function) introduced
a new function 'package_list' to the imagebuilder Makefile.
Unfortunately the package list was poluted by stdout noise of the
Makefile itself as well as opkg. Redirect those outputs to stderr to
make sure that the package_list returned doesn't contain progress
info output but really only packages.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-17 00:54:46 +02:00
Felix Fietkau
76b62e6022 build: remove old kernel-headers build directories
Saves space after updating kernel versions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-16 15:16:52 +02:00
Kevin Darbyshire-Bryant
8f4085e2fd dropbear: fix service trigger syntax error
The classic single '&' when double '&&' conditional was meant.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-16 12:05:25 +02:00
Paul Spooren
19ac879954 imagebuilder: add package_list function
The imagebuilder can now list all available packages by using make
package_list. This is usefull for scripts to retrieve a list of all
packages with versions (and size)

Signed-off-by: Paul Spooren <paul@spooren.de>
[daniel@makrotopia.org: fixed commit message]
2017-06-15 00:36:08 +02:00
Hans Dedecker
8180bbac7c Revert "dnsmasq: manage resolv.conf if when listening on 127.0.0.1#53"
This reverts commit a53f8ba677.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-14 22:51:08 +02:00
小桥
a3332f2aa2 ramips: fix Phicomm K1S(PSG1208) pinmux
Use gpio function for pins with LEDs.

Signed-off-by: 小桥 <29551030@qq.com>
2017-06-12 21:08:54 +02:00
Makoto Takeuchi
ca27b3d370 kirkwood: add support for Cisco ON100
The Cisco ON100 device is a Kirkwood based router:

    SoC: Marvell 88F6282 1600Mhz
    SDRAM memory: 512MB DDR3 1333Mhz
    Gigabit ethernet: 2x Marvell 88E1310 (over RGMII)
    Flash memory: 512MB
    2 bi-colour status LEDs (green/red)
    1 Reset button
    1 USB 2.0 port (on back)
    1 SDIO slot (on back)

This commit adds a target profile of "Cisco Systems ON100" under the target
system "Marvell Kirkwood".

Flashing can be performed over tftp, once "dhcp" has been issued:
 tftpboot ${loadaddr} lede-kirkwood-on100-squashfs-factory.bin
 nand erase 0x0c0000 ${filesize}
 nand write ${loadaddr} 0x0c0000 ${filesize}

Once flashed, set environment variables to boot:
 setenv bootcmd nand read \${loadaddr} 0x0c0000 0x540000\; setenv bootargs
  \; bootm
 saveenv

Signed-off-by: Makoto Takeuchi <mak0@lxsys.co.uk>
2017-06-12 21:07:31 +02:00
Ben Whitten
c2f052acae at91: convert boards to generic build target
Evaluation boards are left in component form to ease flashing
using vendor tooling and instructions. These boards also do
not include the EOF marker in the UBIFS as the bootloaders
are recent and easily upgradeable.

The end product boards use factory.bin images based on the
dts layout and include EOF markers as bootloader UBI support
is not determined.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-06-12 21:07:31 +02:00
Paul Oranje
a53f8ba677 dnsmasq: manage resolv.conf if when listening on 127.0.0.1#53
With this patch the dnsmasq init script manages resolv.conf if and only if
when dnsmasq will listen on 127.0.0.1#53 (is main resolver instance).
Also, resolvfile is now set irrespective of the value of noresolv.

Fixes (partially) FS#785

Signed-off-by: Paul Oranje <por@xs4all.nl>
2017-06-12 11:08:21 +02:00
Piotr Dymacz
3ff31586eb ar71xx: image: simplify TP-Link devices definitions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:18 +02:00
Piotr Dymacz
8b556fb056 ar71xx: image: fix TP-Link TL-WR710N v2/v2.1 BOARDNAME
All TP-Link TL-WR710N versions share the same machine code.

This has been working since the beginning as we don't use double-quotes
to protect spaces inside command line values. Thus, kernel interprets
'board=TL-WR710N v2' as 'board=TL-WR710N' and separate parameter 'v2'.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:18 +02:00
Piotr Dymacz
7efe0cd83d ar71xx: image: tp-link.mk: keep devices in alphabetical order
Keep TP-Link devices definitions in alphabetical order whenever it's
possible. Also group together similar devices or devices from the same
series.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:18 +02:00
Piotr Dymacz
a41f38e61d ar71xx: base-files: cleanups in 10-ar922x-led-fix
Fix code style, indentation and leading/trailing whitespaces in:
/etc/hotplug.d/net/10-ar922x-led-fix

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:18 +02:00
Piotr Dymacz
b73cb365d5 ar71xx: base-files: cleanups in 11-ath10k-caldata
Fix code style and boards alphabetical order in:
/etc/hotplug.d/firmware/11-ath10k-caldata

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:18 +02:00
Ludwig Thomeczek
9cd69c45c5 firmware-utils: tplink-safeloader: add TP-Link Archer C25 v1
This adds the necessary firmware layout definitions for the Archer C25.
It has an addtional partition containing some static data ("extra-para")
without which no factory flash is possible, therefore put_data() has been
added.

Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
2017-06-11 21:32:18 +02:00
Ludwig Thomeczek
b4711dbad3 ar71xx: add support for TP-Link Archer C25 v1
The TP-Link Archer C25 is a low-cost dual-band router.

Specification:

- CPU: Atheros QCA9561 775 MHz
- RAM: 64 MB
- Flash: 8 MB
- Wifi: 3x3 2.4 GHz (integrated), 1x1 5 GHz QCA9887
- NET: 5x 10/100 Mbps Ethernet

Some LEDs are controlled by an additional 74HC595 chip.

Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
[minor code style fixes, boards alphabetical order fixes,
reworked commit message]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:18 +02:00
Serg Studzinskii
b7cc661615 ar71xx: add support for TP-Link TL-WR942N v1
TP-Link TL-WR942N v1 is a 2.4 GHz single-band N450 router, based on
Qualcomm/Atheros QCA9561.

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 5x 10/100 Mbps Ethernet
- 2x USB 2.0
- 11x LED (most are controlled by 74HC595)
- 2x button
- UART header on PCB*

* Serial console is disabled in OEM non-beta firmwares and corresponding
  GPIO pins 14 and 15 are assigned to control USB1 and USB2 LEDs by
  production (non-beta) U-Boot and firmware.

Currently not working:

1. USB1 and USB2 LEDs if UART RX and TX pins are assigned to their GPIOs
   by some U-Boot versions.

Flash instruction under vendor GUI:

1. Download "lede-ar71xx-generic-tl-wr942n-v1-squashfs-factory.bin".
2. Go to WEB interface and perform usual firmware upgrade.

FLash instruction under U-Boot recovery mode (doesn't work in beta
firmware):

1. Setup PC with static IP "192.168.0.66/24" and tftp server.
2. Change "*-factory" image filename to "WR942v1_recovery.bin" and make
   it available to download from your tftp server.
3. Press "reset" button and power up the router, wait till "WPS" LED
   turns on.

Flash instruction under U-Boot, using UART (can be done only with
preinstalled UART-enabled U-Boot version!):

1. Use "tpl" to stop autobooting and obtain U-Boot CLI access.
2. Setup ip addresses for U-Boot and your tftp server.
3. Issue below commands:
   tftp 0x81000000 lede-ar71xx-generic-tl-wr942n-v1-sysupgrade.bin
   erase 0x9f020000 +$filesize
   cp.b 0x81000000 0x9f020000 $filesize
   reset

Signed-off-by: Serg Studzinskii <serguzhg@gmail.com>
[minor code style fixes, extended commit message]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:17 +02:00
Piotr Dymacz
641af0c39d ar71xx: move WRTnode2Q to generic build target
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:17 +02:00
Piotr Dymacz
636ae9e9a0 ar71xx: image: simplify Ubiquiti devices definitions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:17 +02:00
Piotr Dymacz
01aa23acf7 ar71xx: image: mikrotik: shorten DEVICE_TITLE
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:17 +02:00
Piotr Dymacz
7bc5571d14 ar71xx: image: use simply expanded variables
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:32:17 +02:00
Piotr Dymacz
80136e57a4 ar71xx: image: update GL.iNet boards DEVICE_TITLE
Use "GL.iNet" as vendor name (based on information from the vendor, this
is registered name of the company) and align model names with official
website.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:31:25 +02:00
Piotr Dymacz
93198b8335 ar71xx: image: fix 8devices boards DEVICE_TITLE
Be consistent with DEVICE_TITLE syntax and use vendor + board names.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:30:05 +02:00
Piotr Dymacz
bd92a6cf57 ar71xx: image: drop unused mtdlayouts from legacy.mk
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:22:46 +02:00
Piotr Dymacz
708cc2bd3c ar71xx: image: cosmetic: drop redundant empty lines
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:22:46 +02:00
Piotr Dymacz
e83cac1a8f ar71xx: image: add ROOTFS_SIZE to DEVICE_VARS
Also use ROOTFS_SIZE variable in place of static values.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:22:46 +02:00
Piotr Dymacz
c00fb14329 ar71xx: image: keep custom Build/* functions in separate files
Most of the custom Build/* functions in ar71xx target are rarely used by
image building code for devices from more than one subtarget. As they
don't need to be always included, move them to corresponding *.mk files.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:22:46 +02:00
Piotr Dymacz
3a3cd0ac43 ar71xx: image: keep DEVICE_VARS and Build/* at the beginning
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 21:21:45 +02:00
Piotr Dymacz
af27dd1a51 ar71xx: image: simplify Compex devices definitions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 19:06:49 +02:00
Piotr Dymacz
43c0ef1010 ar71xx: image: drop redundant kmod-usb-ohci from DEVICE_PACKAGES
kmod-usb-ohci is needed only on devices with AR71xx and AR7240 SoCs.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 19:06:49 +02:00
Piotr Dymacz
05e276c071 ar71xx: image: drop redundant uboot-envtools from DEVICE_PACKAGES
uboot-envtools is already included in DEFAULT_PACKAGES for ar71xx.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-06-11 19:06:49 +02:00
Jan Niehusmann
c4022243d8 firmware-utils: tplink-safeloader: support strings as soft_version
Some TP-Link routers (C25, C59, C60) contain a version string instead
of a binary structure in the soft_version partition.

Flashing LEDE from the original firmware's GUI, this version string
taken from the soft_ver partition of the firmware image is written to
the router's config partition.

When using tftp recovery to go back to the original Archer C25 firmware,
a version check compares that version to the version of the firmware to
be flashed.

Without proper contents in the config partition, reverting to the
original firmware fails.

Therefore, write the string "soft_ver:1.0.0\n" to that soft_ver
partition.

Signed-off-by: Jan Niehusmann <jan@gondor.com>
2017-06-11 19:06:49 +02:00
Kevin Darbyshire-Bryant
8960f2b80c ar71xx: fixup ar71xx/ar933x_wmac_reset: remove indefinite wait for wmac reset
Fix malformed patch introduced by 296312fca1

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-11 17:12:45 +02:00
Kevin Darbyshire-Bryant
16a905b322 dnsmasq: make bind-dynamic 'non-wildcard' interfaces default
'non-wildcard' interfaces enables dnsmasq's '--bind-dynamic' mode.  This
binds to interfaces rather than wildcard addresses *and* keeps track of
interface comings/goings via a unique Linux api.

Quoting dnsmasq's author "bind-dynamic (bind individual addresses, keep
up with changes in interface config) ... On linux, there's actually no
sane reason not to use --bind-dynamic, and it's only not the default for
historical reasons."

Let's change history, well on LEDE at least, and change the default!

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-11 14:50:04 +02:00
Alexander Couzens
ab11618001 ar71xx/ar93xx_wmac_otp_read_word: fix wrongly used sizeof(*u)
Found-by: Coverity Scan #1330474
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Alexander Couzens
878cd77026 linux/swconfig_get_attr: fix leak of msg in case of error
Found-by: Coverity Scan #1330102
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Alexander Couzens
814e1695aa linux/ledtrig-netdev: remove unsigned < 0 check
Found-by: Coverity Scan
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Alexander Couzens
296312fca1 ar71xx/ar933x_wmac_reset: remove indefinite wait for wmac reset
Found-by: Coverity Scan #1329327
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Alexander Couzens
1025941662 ar71xx/ag71xx_ethtool: don't return uninitialized return value on success
ag71xx_ethtool_set_ringparam() will return an uninitialized value on
success.

Found-by: Coverity Scan #1330877
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Alexander Couzens
64cd4b48e8 ar71xx/ag71xx_mdio_probe: fix a memory leak when probe fails
Found-by: Coverity Scan #1330233
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Alexander Couzens
d18cb142d5 ar71xx/ag71xx_ar7240_get_port_link: fix off-by-one check on argument port
Found-by: Coverity Scan #1329901
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-11 14:22:44 +02:00
Jonas Gorski
fd952c7a83 base-files: board.json's switch reset means existence, not argument
Don't pass the value unconditionally to swconfig as a parameter but
instead only call reset if it is 1.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-11 12:50:14 +02:00
Jonas Gorski
b43c190079 brcm63xx: probe SPI connected switches through DT
Now that we can configure the switches through DT, do so.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:38 +02:00
Jonas Gorski
5df15c06cc b53: allow configuration through device tree
Add support for the same binding as upstream b53 to allow an
easy switch.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:38 +02:00
Jonas Gorski
9ceeaf4c6c brcm63xx: switch to hardware led controllers
Instead of bit banging SPI to talk to the GPIO chip, use the hardware
led controllers intended for controlling the LEDs.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:38 +02:00
Jonas Gorski
0aa366c6e0 brcm63xx: leds-bcm6328: fix signal assignments for leds 4~7
Properly use modulus for bit calculation for LEDs 4 to 7.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:38 +02:00
Jonas Gorski
c5d394e9ba brcm63xx: dsl-275xb-d: configure switch leds
Add pinctrl configuration to configure the switch leds on DSL-275XB.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:38 +02:00
Jonas Gorski
0755c2d117 brcm63xx: add pinctrl support
Add and enable pincontrol drivers, and update dts(i) files with
appropriate hogs.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:37 +02:00
Jonas Gorski
fd1096e351 kernel: make regmap LZO cache optional
There are no users, so hide it and let future users select it. Saves
about ~17 kB on MIPS.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:37 +02:00
Jonas Gorski
f9b7bfa088 brcm63xx: backport upstream generic gpio changes
Backport patches that add a data pointer to gpio_chip.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-10 12:40:37 +02:00
Daniel Golle
5e4bb476c0 kexec-tools: bump version and add support for crashdump kernel
split kexec-tools into two packages, kexec and kdump.
* kexec to simply execute a new kernel
* kdump is for loading and collecting debris of a crashed kernel with
  support for kdump forensics.

In order to properly support booting into a crashkernel, an init script
as well as UCI configuration has been added.
As modifying the kernel cmdline is required for this to work in x86
platforms use an uci-defaults script to modify /boot/grub/grub.cfg.

To test collecting crash information, use the 'c' sysrq-trigger, ie.
echo c > /proc/sysrq-trigger

This should result in the crash kernel being executed and (depending
on the configution) dmesg and/or vmcore getting saved.

To check if the crash kernel was loaded properly, use the 'status'
command of the kdump init script.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-09 22:21:25 +02:00
Hans Dedecker
8b486ec2b5 dnsmasq: add dhcp-script hook conditionally
Commit b32689afd6 added support for dhcp-script hook.
Adding dhcp-script config option results into two instances of dnsmasq being run
which triggered oom issues on platforms having low memory.

The dnsmasq dhcp-script config option will now only be added if at least one of the
dhcp, tftp, neigh hotplug dirs has a regular hotplug file or if the dhcpscript uci
config option is specified.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-09 16:44:04 +02:00
Rafał Miłecki
c00fbaf670 bcm53xx: include wpad-mini only on devices with (supported) wireless
Don't include wpad-mini when it's useless just like we don't include
useless wireless drivers.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-06-08 22:25:00 +02:00
Jo-Philipp Wich
6426e4edef base-files: network.sh: fix a number of IPv6 logic flaws
* Change network_get_subnet6() to sensibly guess a suitable prefix

  Attempt to return the first non-linklocal, non-ula range, then attempt
  to return the first non-linklocal range and finally fall back to the
  previous behaviour of simply returning the first found item.

* Fix network_get_ipaddrs_all()

  Instead of replicating the flawed logic appending a fixed ":1" suffix
  to IPv6 addresses, rely on network_get_ipaddrs() and network_get_ipaddrs6()
  to build a single list of all interface addresses.

* Fix network_get_subnets6()

  Instead of replicating the flawed logic appending a fixed ":1" suffix
  to IPv6 addresses, rely on the ipv6-prefix-assignment.local-address
  field to figure out the proper network address.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-08 20:12:52 +02:00
Jo-Philipp Wich
d264464404 mwlwifi: update to version 10.3.4.0 / 2017-06-06
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-08 19:56:12 +02:00
Alexander Couzens
acc5ab6b92 include/toplevel: set env GIT_ASKPASS=/bin/true
When git-https request a service (e.g. github) which ask for credentials
git will pass this request to the user resulting download.pl to wait for
user input. Set GIT_ASKPASS to stop asking.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-06-08 17:20:55 +02:00
Jo-Philipp Wich
7f91cabd0d base-files: network.sh: properly report local IPv6 addresses
Rework the network_get_ipaddr6() and network_get_ipaddrs6() functions to
fetch the effective local IPv6 address of delegated prefix from the
"local-address" field instead of naively hardcoding ":1" as static suffix.

Fixes FS#829.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-08 12:06:01 +02:00
Felix Fietkau
737b063cc2 build: ensure that flock is available for make download
It ensures that make download can parallelize downloads, even when some
packages download the same files (e.g. gcc/initial, gcc/final)

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-08 11:43:15 +02:00
Jo-Philipp Wich
55623a9c83 kernel: update kernel 4.9 to 4.9.31
Fixes the following security vulnerabilities:

CVE-2017-8890
The inet_csk_clone_lock function in net/ipv4/inet_connection_sock.c in the
Linux kernel through 4.10.15 allows attackers to cause a denial of service
(double free) or possibly have unspecified other impact by leveraging use
of the accept system call.

CVE-2017-9074
The IPv6 fragmentation implementation in the Linux kernel through 4.11.1
does not consider that the nexthdr field may be associated with an invalid
option, which allows local users to cause a denial of service (out-of-bounds
read and BUG) or possibly have unspecified other impact via crafted socket
and send system calls.

CVE-2017-9075
The sctp_v6_create_accept_sk function in net/sctp/ipv6.c in the Linux kernel
through 4.11.1 mishandles inheritance, which allows local users to cause a
denial of service or possibly have unspecified other impact via crafted
system calls, a related issue to CVE-2017-8890.

CVE-2017-9076
The dccp_v6_request_recv_sock function in net/dccp/ipv6.c in the Linux
kernel through 4.11.1 mishandles inheritance, which allows local users to
cause a denial of service or possibly have unspecified other impact via
crafted system calls, a related issue to CVE-2017-8890.

CVE-2017-9077
The tcp_v6_syn_recv_sock function in net/ipv6/tcp_ipv6.c in the Linux kernel
through 4.11.1 mishandles inheritance, which allows local users to cause a
denial of service or possibly have unspecified other impact via crafted
system calls, a related issue to CVE-2017-8890.

CVE-2017-9242
The __ip6_append_data function in net/ipv6/ip6_output.c in the Linux kernel
through 4.11.3 is too late in checking whether an overwrite of an skb data
structure may occur, which allows local users to cause a denial of service
(system crash) via crafted system calls.

Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8890
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9074
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9075
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9076
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9077
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9242
Ref: https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.31

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-08 01:03:39 +02:00
Hauke Mehrtens
b9600b8542 kernel: really select kernel 4.4.71
The previous commit f4a4f324cb ("kernel: update kernel 4.4 to
4.4.71") missed the line which changes the kernel version, add it now.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-06-07 23:01:35 +02:00
Jo-Philipp Wich
f4a4f324cb kernel: update kernel 4.4 to 4.4.71
Fixes the following security vulnerabilities:

CVE-2017-8890
The inet_csk_clone_lock function in net/ipv4/inet_connection_sock.c in the
Linux kernel through 4.10.15 allows attackers to cause a denial of service
(double free) or possibly have unspecified other impact by leveraging use
of the accept system call.

CVE-2017-9074
The IPv6 fragmentation implementation in the Linux kernel through 4.11.1
does not consider that the nexthdr field may be associated with an invalid
option, which allows local users to cause a denial of service (out-of-bounds
read and BUG) or possibly have unspecified other impact via crafted socket
and send system calls.

CVE-2017-9075
The sctp_v6_create_accept_sk function in net/sctp/ipv6.c in the Linux kernel
through 4.11.1 mishandles inheritance, which allows local users to cause a
denial of service or possibly have unspecified other impact via crafted
system calls, a related issue to CVE-2017-8890.

CVE-2017-9076
The dccp_v6_request_recv_sock function in net/dccp/ipv6.c in the Linux
kernel through 4.11.1 mishandles inheritance, which allows local users to
cause a denial of service or possibly have unspecified other impact via
crafted system calls, a related issue to CVE-2017-8890.

CVE-2017-9077
The tcp_v6_syn_recv_sock function in net/ipv6/tcp_ipv6.c in the Linux kernel
through 4.11.1 mishandles inheritance, which allows local users to cause a
denial of service or possibly have unspecified other impact via crafted
system calls, a related issue to CVE-2017-8890.

CVE-2017-9242
The __ip6_append_data function in net/ipv6/ip6_output.c in the Linux kernel
through 4.11.3 is too late in checking whether an overwrite of an skb data
structure may occur, which allows local users to cause a denial of service
(system crash) via crafted system calls.

Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8890
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9074
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9075
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9076
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9077
Ref: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-9242
Ref: https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.71

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-07 21:40:42 +02:00
Daniel Golle
92c80f38cf automake: import upstream fix for perl 5.26
Build broke as distributions now include Perl 5.26 and automake
triggered an "Unescaped left brace in regex" error.
Import upstream commit 13f00eb449 to fix that.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-07 19:47:34 +02:00
Alexandru Ardelean
079d57b0f2 gdb: disable simulator ; it's broken on ppc
Error is:
```
ompile-loc2c.o compile-c-support.o inflow.o    init.o \
	  ../sim/ppc/libsim.a -lreadline ../opcodes/libopcodes.a ../bfd/libbfd.a -L./../zlib -lz  ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a    -lncurses -lm     ../libiberty/libiberty.a  build-gnulib/import/libgnu.a  -ldl -Wl,--dynamic-list=./proc-service.list
../sim/ppc/libsim.a(idecode.o): In function `update_time_from_event':
idecode.c:(.text+0x170): undefined reference to `error'
../sim/ppc/libsim.a(idecode.o): In function `event_queue_tick':
idecode.c:(.text+0x1cc): undefined reference to `error'
idecode.c:(.text+0x28c): undefined reference to `error'
idecode.c:(.text+0x318): undefined reference to `error'
../sim/ppc/libsim.a(idecode.o): In function `cpu_halt.constprop.6':
idecode.c:(.text+0x398): undefined reference to `error'
../sim/ppc/libsim.a(idecode.o):idecode.c:(.text+0x4e4): more undefined references to `error' follow
collect2: error: ld returned 1 exit status
Makefile:1420: recipe for target 'gdb' failed
make[5]: *** [gdb] Error 1
```

Seems others are running into this as well.
The problem seems to be that some code may be built
as C++ and not C, which may explain the linker error.

On this thread reply:
   https://sourceware.org/ml/gdb/2016-11/msg00045.html
it mentions that the simulator should not call GDB's
"error" function directly, but rather use the "host_callback"
struct.

I have no idea about the use of the GDB simulator within
the OpenWrt/LEDE community.

So, I took the easier route, which is to disable the simulator.
(Also suggested here: https://sourceware.org/ml/gdb/2016-11/msg00047.html )

If needed, I can make an effort to fix the simulator for PPC.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-06-07 18:31:10 +02:00
Alexandru Ardelean
ab485383fa gdb: remove Build/Compile rule ; default one works
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-06-07 18:31:10 +02:00
Sergey Ryazanov
67a322a79c kernel: remove CONFIG_ZONE_DMA_FLAG from 4.9
There are no CONFIG_ZONE_DMA_FLAG config symbol since 4.7.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 18:31:10 +02:00
Sergey Ryazanov
68e7a2a0b7 kernel: disable CONFIG_SG_POOL by default
CONFIG_SG_POOL symbol is selected only by CONFIG_SCSI, since the last
one is disabled by default then disable CONFIG_SG_POOL by default too.
And explicitly enable it only for platforms that use CONFIG_SCSI.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 18:31:10 +02:00
Sergey Ryazanov
6a3d82a3fa ath25: add missed HAVE_IRQ_EXIT_ON_IRQ_STACK
Add HAVE_IRQ_EXIT_ON_IRQ_STACK kernel configuration symbol that was
missed during backporting separate IRQ stack for MIPS from upstream.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 18:31:10 +02:00
Felix Fietkau
2dc23a7576 rb532: enable high-res timers, refresh kernel config
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Felix Fietkau
f859a7b696 xburst: enable high-res timers, refresh kernel config
Helps with system performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Felix Fietkau
1d44593c49 octeon: enable high-res timers
Helps with network stack performance

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Felix Fietkau
b47fd76563 kernel: add CONFIG_SCHED_HRTICK=y to the generic config
It is used by pretty much every target

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Alif M. Ahmad
415c47de79 package/grub2: update to 2.02
Update to version 2.02

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-06-07 18:31:10 +02:00
Lucian Cristian
cdedb24ef8 x86: include USB HID by default
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-06-07 18:31:10 +02:00
Felix Fietkau
fec38ebf0d kernel: fix segmentation fault in mconf on linux
Commit 86c966a8ae caused HOST_LOADLIBES to
include -lncurses. This was added for fixing build issues on macOS.
This introduces issues on Linux when wide-character ncurses is being
used for compiling, but the non-wide-character version is linked in.

Fix this by adding the extra override for HOST_LOADLIBES only on macOS.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Felix Fietkau
c6c1f6a548 mac80211: use KERNEL_MAKEOPTS
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Felix Fietkau
0aed054bec build: add KERNEL_MAKE and KERNEL_MAKE_FLAGS variables and move to kernel.mk
This allows packages to use kernel make options without the forced
-C $(LINUX_DIR). It also makes it more clear that it to be called from
kernel module packages directly.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-06-07 18:31:10 +02:00
Sergey Ryazanov
00639586fd kernel: update myloader for linux 4.9
add backport patches for older kernels.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 17:19:48 +02:00
Sergey Ryazanov
2cc61e6e8e ip17xx: correct aneg_done return value
PHY core treats any positive return value as the auto-negotiation done
indication. Since we do not actually check any device register in this
callback then update it to return positive value with a neutral meaning
instead of the register flag to avoid  confusing for future readers.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 11:06:29 +02:00
Sergey Ryazanov
913b2290ca mvswitch: fix autonegotiation issue
The Marvel 88E6060 switch has an MDIO interface, but does not emulate
regular PHY behavior for the host. The network core can not detect using
the generic code, whether the connection via the attached PHY can be
used or not. The PHY's state machine is stuck in a state of
auto-negotiation and does not go any further so the Ethernet interface
of the router stay forever in the not-runing state.

Fix this issue by implementing the aneg_done callback to be able to
inform the network core that the Ethernet interface link to which the
switch is connected can be marked as RUNNING.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 11:06:12 +02:00
Sven Roederer
cc722bec97 linux/ath25: fixing some tabs and whitespace
Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2017-06-07 06:50:16 +02:00
Sergey Ryazanov
8a3a71084c ath25: drop 4.4 kernel support
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 06:49:46 +02:00
Sergey Ryazanov
0f4943211c ath25: switch to 4.9 kernel
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 06:47:10 +02:00
Sergey Ryazanov
3e3d482c98 ath25: 4.9: fix Ethernet link autonegotiation
Drop the own PHY polling function and switch to using the kernel PHY
state machine. This change allows driver to work correctly with devices
that do not support PHY behaviour but whose driver could emulate
autonegotiation completion (e.g. MV88E6060 and IP17xx switches).

NB: earlier this driver rely on flaws in PHY core code and could use PHY
device without really starting it. But now (at least in kernel 4.9)
this trick no more work and network interface could stuck in not-running
state.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 06:47:03 +02:00
Sergey Ryazanov
b1cc215d27 ath25: 4.9: fix Ethernet tiny issues
Few tiny fixes for issues caused by changes in the upstream:
 - do not touch PHY IRQ array (core code initializes it itself now)
 - add missed SET_NETDEV_DEV() invocation (causes segfault during phy
   connection)
 - use phy API inside the MDIO probe function instead of direct field
   access (consider phy structure changes in upstream and prevent
   similar issues in the future)

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 06:46:52 +02:00
Sergey Ryazanov
0827a0b4f1 ath25: 4.9: fix GPIO compile issues
Consider renaming the dev field to parent in the upstream.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 06:46:44 +02:00
Sergey Ryazanov
64083848e2 ath25: add preliminary kernel 4.9 support
Copy and refresh patches and config from 4.4

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 06:46:34 +02:00
Sven Roederer
9715beb04c ramips: add support for Ubiquiti EdgeRouter X-SFP
This patch adds support for the Ubiquiti EdgeRouter X-SFP and
improves support for the EdgeRouter X (PoE-passthrough).

Specification:
- SoC: MediaTek MT7621AT
- Flash: 256 MiB
- RAM: 265 MiB
- Ethernet: 5 x LAN (1000 Mbps)
- UART: 1 x UART on PCB (3.3V, RX, TX, GND) - 57600 8N1
- EdgeRouter X:
  - 1 x PoE-Passtrough (Eth4)
  - powered by Wallwart or passive PoE
- EdgeRouter X-SFP:
  - 5 x PoE-Out (24V, passive)
  - 1 x SFP (unknown status)
  - powered by Wallwart (24V)

Doesn't work:
* SoC has crypto engine but no open driver.
* SoC has nat acceleration, but no open driver.
* This router has 2MB spi flash soldered in but MT
  nand/spi drivers do not support pin sharing,
  so it is not accessable and disabled. Stock
  firmware could read it and it was empty.

Installation

via vendor firmware:
- build an Initrd-image (> 3MiB) and upload the factory-image
- initrd can have luci-mod-failsafe
- flash final firmware via LuCI / sysupgrade on rebooted system

via TFTP:
- stop uboot into tftp-load into option "1"
- upload factory.bin image

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2017-06-07 06:33:33 +02:00
Ram Chandra Jangir
e178d51a04 ipq806x: Enable ubi image for ipq40xx AP-DK04.1-C1 board
This change add IPQ40xx AP-DK04.1-C1 board image support,
enables ubi image for IPQ40xx AP-DK04.1-C1 board and also
add sysupgrage support for AP-DK04.1-C1 and generates a
sysupgrade.tar image.

Testing:
 *Tested on IPQ40xx AP-DK04.1-C1:
   a. NAND boot
   b. ubi sysupgrade

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-06-07 06:33:33 +02:00
Ram Chandra Jangir
5e1cc0c090 ipq806x: Updated various ipq40xx pin definitions
This change populates default values for various GPIO functions
in ipq40xx pinctrl driver.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-06-07 06:33:33 +02:00
Kristian Evensen
1898f7339f Add missing APU1 reference to x86 board.d
x86 board.d only contains a case for the APU2, not the APU1. This
causes, for example, network configuration not to be created correctly.
Even though the APU1 seems to reaching EOL, there a still a lot of them
out there.

The APU1 and APU2 is configured in the same way and this patch should
also be considered for stable, as the error also exists there.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-06-06 23:01:53 +02:00
Florian Fainelli
f50079985c perf: Depend on KERNEL_PERF_EVENTS
The kernel needs to have PERF_EVENTS built otherwise we will run into
the following:

root@(none):/# perf top
perf_event_open(..., PERF_FLAG_FD_CLOEXEC) failed with unexpected error
89 (Function not implemented)
perf_event_open(..., 0) failed unexpectedly with error 89 (Function not
implemented)
Error:
The sys_perf_event_open() syscall returned with 89 (Function not
implemented) for event (cycles).
/bin/dmesg may provide additional information.
No CONFIG_PERF_EVENTS=y kernel support configured?

Make sure this functional dependency is captured.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-06-05 12:30:05 -07:00
Florian Fainelli
5229c45363 mdadm: Do not check RUN_DIR
Fixes build failure on hosts that do not have mdadm
installed/configured:

make[3]: Entering directory
`/local/users/fainelli/openwrt/trunk/build_dir/target-mipsel-linux-gnu_glibc/mdadm-4.0'
***** Parent of /run/mdadm does not exist.  Maybe set different RUN_DIR=
*****  e.g. make RUN_DIR=/dev/.mdadm
***** or set CHECK_RUN_DIR=0
make[3]: *** [check_rundir] Error 1
make[3]: Leaving directory
`/local/users/fainelli/openwrt/trunk/build_dir/target-mipsel-linux-gnu_glibc/mdadm-4.0'
make[2]: ***
[/local/users/fainelli/openwrt/trunk/build_dir/target-mipsel-linux-gnu_glibc/mdadm-4.0/.built]
Error 2
make[2]: Leaving directory
`/local/users/fainelli/openwrt/trunk/package/utils/mdadm'
make[1]: *** [package/utils/mdadm/compile] Error 2
make[1]: Leaving directory `/local/users/fainelli/openwrt/trunk'
make: *** [package/mdadm/compile] Error 2

Fixes: 980c41f8e0 ("utils/mdadm: Update to 4.0")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-06-05 12:24:01 -07:00
Jonas Gorski
334f8f4fc3 brcm63xx: drop support for specifying SPI flash part parsers
No need to keep this since we set them from device-tree.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 11:33:44 +02:00
Jonas Gorski
092ac42e1e brcm63xx: drop support for caldata in brcm63xxpart
Now that we always provide these partitions through DT, we don't need to
pass their data through parser data from board files anymore.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 11:33:44 +02:00
Jonas Gorski
474cde6123 brcm63xx: probe SPI flash through DT
Now that we support problem the SPI controllers through DT, we can also
probe flash through DT.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 11:33:44 +02:00
Jonas Gorski
97b36aca09 brcm63xx: add pflash for remaining pflash equipped boards
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 11:33:44 +02:00
Jonas Gorski
31c3ac1118 brcm63xx: do not require fixed partitions when probing from DT
Allow the parser to be invoked from DT without fixed cfe/linux/nvram
partitions. This allows flash to be probed from DT also for multi
flash-size images.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 11:33:44 +02:00
Jonas Gorski
b50fd8c2b3 brcm63xx: register SPI controllers through DT
Register SPI controllers through device tree. We will wire up the clocks
at a later stage.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 11:33:43 +02:00
Jonas Gorski
2a2b16210b brcm63xx: backport upstream solution for SPI message size limits
Backport upstream solution for working around SPI controller maximum
message sizes.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 10:40:00 +02:00
Jonas Gorski
f62e02cf20 brcm63xx: update flash of_node patches to full patch set
Fixes missing of_node for SPI flash probed through devicetree.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 10:40:00 +02:00
Jonas Gorski
d298576739 brcm63xx: refresh kernel config
Ensure the config is ordered and has all recent symbols.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 10:40:00 +02:00
Jonas Gorski
2ab0963971 build: fix kernel refresh failure on first run
Override {HOST_}QUILT before making decisions based on it, else it will
cause target/linux/refresh to fail on first run.

Fixes: 36ba6237d6 ("build: fix quilt for mixed package/host builds")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-06-04 10:36:48 +02:00
Tino Reichardt
e097eb27af lantiq: fix 0008-MIPS-lantiq-backport-old-timer-code.patch for Amazon-SE
The patch 0008 removes the vanilla kernel gptu.c of lantiq.
But the replacement file timer.c does not work Amazon-SE and
is also protected therefore with an CONFIG_SOC_AMAZON_SE :-)

This commit will re-activate the default vanilla kernel code
in gptu.c for Amazon-SE.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
[refresh patches and add same change for kernel 4.9]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-06-03 21:35:53 +02:00
Tino Reichardt
5ca2033d33 lantiq: fix lantiq_mei.c and amazonse.dsti for adsl modem firmware
The ltq-adsl-mei package is used for 3 lantiq device types:
danube, amazon-se and ar9.

These different SoC's need also different definitions.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
[fix LTQ_USB_OC_INT for AR9 to match documentation]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-06-03 21:34:59 +02:00
Tino Reichardt
712ebe95f8 lantiq: add Allnet ALL0333CJ support
This patch adds support for the Allnet ADSL2+ Modem ALL0333CJ.

Specifications:
- SoC: Amazon-SE
- RAM: 16MB
- Storage: 4MB NOR FLash
- LEDs: Power, Ethernet, DSL (Sync)
- Buttons: 1x Reset Button (not currently supported, will be done)
- 1x Ethernet-Port: 1x RJ45 10/100BaseTX
- 1x WAN-Port: AnnexB & J, G.992.1(ADSL), G.992.3(ADSL2), G.992.5(ADSL2+)

Installation:
- can be done via telnet+tftp or serial console
- default passwords:
  - via telnet (root:admin)
  - via webinterface http://172.16.1.254:8235/ (admin:coolwhite)

Installation via telnet / tftp:
host: # your own host must have an tftpd daemon, then do this:
host: ifconfig eth0:172 172.16.1.1 up
host: # telnet to allnet modem, root:admin
host: telnet 172.16.1.254
modem: # kill this daemon, it spams your console
modem: killall dsl_cpe_control
modem: # change to some place in ram:
modem: cd /ramdisk/tftp_upload
modem: # load lede-lantiq-ase-ALL0333CJ-squashfs-sysupgrade.bin alias uImage
modem: tftp -g -r uImage 172.16.1.1
modem: # load these extra tools from your tftpd via:
modem: # source: https://github.com/mcmilk/uboot-utils/releases/download/0.1/mips32.tar.gz
modem: tftp -g -r flashwrite 172.16.1.1
modem: tftp -g -r fw_setenv 172.16.1.1
modem: tftp -g -r fw.conf 172.16.1.1
modem: ln -s fw_setenv fw_printenv
modem: chmod +x *
modem: ./fw_setenv disable_recovery y
modem: ./fw_setenv kernel_addr 0xb0010000
modem: ./flashwrite /dev/mtd/1 uImage 0

Installation via serial line at uboot:
uboot: # erase everything exept bootloader
uboot: protect on b0000000 +10000; protect on b03f0000 +10000
uboot: erase all
uboot: # get new firmware via tftp:
uboot: tftpboot 0x80100000 uImage; setenv kernel_addr 0xb0010000
uboot: # copy to flash:
uboot: cp.b 0x80100000 $(kernel_addr) $(filesize)
uboot: # disable proprietary image checking:
uboot: setenv disable_recovery=y; saveenv
uboot: # reboot with LEDE ;)
uboot: reset

Ethernet works as expected, DSL syncronization does not work properly
currently, I am working on this issue.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
2017-06-03 21:14:07 +02:00
Tino Reichardt
743be70d5b lantiq: fix ifxmips_atm_amazon_se.c
Remove 6 defines, which were defined already some lines above.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
2017-06-03 21:14:07 +02:00
Tino Reichardt
995ad357f9 lantiq: enable Netgear DGN1000B image build
Enable the building of Netgear DGN1000B images. I have an
example device here, but it was not tested currently.
Also WLAN and USB is not ready in the moment.

This is just the proper way, so that developing on this
device is known to be done in the near future.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
2017-06-03 21:14:07 +02:00
Tino Reichardt
9b321bc60d lantiq: add Amazon-SE subtarget
Re-Add support for the Amazon-SE subtarget on Lantiq.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
2017-06-03 21:14:07 +02:00
Tino Reichardt
1039e41dea lantiq: fix amazonse.dsti
Add missing memory@0 and localbus@0 sections.
Fix MEI and GPTU interrupt definitions.

Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de>
2017-06-03 21:14:07 +02:00
Daniel Golle
aef39358e6 kernel: properly package 8250 serial PCI module
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-03 20:45:50 +02:00
Daniel Golle
bfa2e945de ramips: enable PCIe on MT7688
Submitted upstream as well, see
patchwork https://patchwork.linux-mips.org/patch/16223/

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-06-03 20:45:38 +02:00
Andrea Merello
860e053b29 Lantiq: make possible to tweak DSL SRN from UCI
This patch makes possible to tweak the downstream SNR margin on
Lantiq DSL devices.

The UCI parameter 'network.dsl.ds_snr_offset' is used to set the SNR
margin offset. It accepts values in range -50 to +50 in 0.1 dB units.

The SNR margin can thus be modified in range -5.0 to +5.0 dB in 0.1 dB
steps.

Currently this should only affect ADSL (not VDSL). It should be very
easy to make this work also on VDSL lines, but since I couldn't test
on VDSL lines this patch does not do that yet.

I have also a patch for LUCI about this, that I could submit.

Tested on FB3370 (Lantiq VR9) and Telecom Italia ADSL2+ line.

Signed-off-by: Andrea Merello <andrea.merello@gmail.com>
2017-06-03 17:48:57 +02:00
Helge Mader
63a20c95fd lantiq: modified lantiq_dsl.sh status output of latency
Signed-off-by: Helge Mader <ma@dev.tdt.de>
2017-06-02 22:49:45 +02:00
Helge Mader
666dd85b36 lantiq: fix lantiq_dsl.sh status and lucistat output
Signed-off-by: Helge Mader <ma@dev.tdt.de>
2017-06-02 22:49:33 +02:00
Daniel Engberg
22ac4bd555 mvebu: Add block device sd to default kernel config
Add block device sd to kernel config otherwise AHCI/eSATA devices won't get enumerated in /dev

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-06-02 12:02:21 +02:00
Jo-Philipp Wich
1893b5622d x86: disable X2APIC support for legacy subtargets
Explicitely disable X2APIC support on legacy targets since the targeted
processor types do not support it anyway there.

Fixes FS#285.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-02 01:51:03 +02:00
Jo-Philipp Wich
6db1d13084 umdns: remove superfluous include in init script
The umdns init script includes function/network.sh globally, outside of any
service procedure. This causes init script activation to fail in buildroot
and IB context if umdns is set to builtin.

Additionally, the network.sh helper is not actually used.

Drop the entire include in order to repair init script activation in build
host context. Fixes FS#658.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-02 01:29:32 +02:00
Kevin Darbyshire-Bryant
1fe41c4089 dnsmasq: bump to 2.77
Bump to the 2.77 release after quite a few test & release candidates.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-06-01 23:50:52 +02:00
Matthias Schiffer
5654a03768 mvebu: fix sysupgrade
mvebu was modifying RAMFS_COPY_BIN and RAMFS_COPY_DATA from a
sysupgrade_pre_upgrade hook. As the ramfs is created from stage2, this
did not have an effect anymore after the staged sysupgrade changes.

As it doesn't really hurt to copy fw_printenv and fw_setenv
unconditionally, simply add them in /lib/upgrade/platform.sh, so stage2
will see them.

Config copying is moved to a function called by platform_copy_config, where
it belongs.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Fixes: FS#821
Fixes: 30f61a34b4 "base-files: always use staged sysupgrade"
2017-06-01 20:41:19 +02:00
John Crispin
7f9143168f ramips: add jumbo frame support for v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-06-01 12:30:17 +02:00
John Crispin
9bc9457b85 ramips: fixup nand support on v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-06-01 12:30:17 +02:00
Hans Dedecker
21f25bc4a3 ppp: propagate master firewall zone to dynamic slave interface
Assign the virtual DHCPv6 interface the firewall zone of the parent interface
so fw3 knows the zone to which the virtual DHCPv6 interface belongs.
This guarantees the firewall settings are applied correctly for the virtual
DHCPv6 interface and allows to query the zone to which the virtual DHCPv6
interface belongs via the fw3 network option.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-31 16:49:59 +02:00
Sergey Sergeev
9e1bc27e6d ar71xx: Fix UBIFS work on Mikrotik RB95x devices
If nand chip has no NAND_NO_SUBPAGE_WRITE flag on its options
ubifs can't use it mtd devices and the kernel crashes with error:
__nand_correct_data: uncorrectable ECC error

Signed-off-by: Sergey Sergeev <adron@yapic.net>
2017-05-31 11:36:21 +02:00
Julian Labus
b757de65b3 usbmode: remove devices with unsupported modes
remove files which include the following mode options
BlackberryMode OptionMode PantechMode QuantaMode

Signed-off-by: Julian Labus <julian@labus-online.de>
2017-05-31 09:55:08 +02:00
Christian Lamparter
7783f31359 base-files: nand: use CI_KERNPART whenever the kernel volume is needed
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This patch is in continuation of: commit 93aa860405
"procd: nand: make it possible to configure kernel and ubi partition"

The $CI_KERNPART variable should be used in place
of the fixed "kernel" partition name. This allows
targets to specifiy alternate names for the kernel
partition.

Cc: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-05-31 09:55:01 +02:00
Koen Vandeputte
3b4241071d imx6: disable UART dma
Fixes these prints on boot:

[   13.785600] imx-uart 2020000.serial: DMA transaction error.
[   13.793134] imx-uart 2020000.serial: DMA transaction error.
[   13.798721] imx-uart 2020000.serial: DMA transaction error.

Based on following upstream patch by Tim Harvey (Gateworks):

80a01b6582

TX complete DMA messages are getting missed.
This is also currently an issue in mainline.
For now we will disable DMA in serial/imx.c.

This resolves an issue encountered with RS485 transmit.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-05-31 08:45:26 +02:00
Enrico Mioso
acd8649b18 ramips: let the "reserved" MTD partition be RO for R6220
The "reserved" partition should probably be read-only, just in case. Even
not knowing it's content, other devices have marked it as such, so it
seems a good idea to do so also for this device.

Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
CC: Mathias Kresin <dev@kresin.me>
CC: Hanqing Wong <hquu@outlook.com>
2017-05-31 08:45:02 +02:00
Martin Schiller
d189fe62cd uboot-lantiq/spl: fixed uninitialized variable len in spl_uncompress_lzo
This fix is taken from uboot-lantiq v2014.07 (Daniel Schwierzeck)

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-05-31 08:41:31 +02:00
Martin Schiller
bbb27b1b22 uboot-lantiq: Support newer versions of the PEF7071 ethernet
This fix is taken from uboot-lantiq v2014.07 (Daniel Schwierzeck)

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-05-31 08:41:16 +02:00
Jo-Philipp Wich
66f25c98e0 ar71xx: disable ENS202EXT in mikrotik and nand subtargets
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-31 02:40:47 +02:00
Luiz Angelo Daros de Luca
b4f463d969 openvpn-easy-rsa: update to 3.0.1
easy-rsa v3 is now a single script. It expects a 'vars'
configuration file which path can be set using easy-rsa
options, environment variables or just looking in the
current directory.

The default usage would be:

 # cd /etc/easy-rsa
 # easy-rsa COMMAND [command-options]

Following upstream changes, /etc/easy-rsa/pki replaces
/etc/easy-rsa/keys directory.

The default /etc/easy-rsa/pki dir is marked to be kept during
upgrade (WARN: priv keys are saved in the system backup)
/etc/easy-rsa/openssl.1.0.cnf is now marked as config file while
index and serial got removed.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2017-05-31 00:28:26 +02:00
Felix Fietkau
09c2f4a176 mt76: update mirror hash after tar portablity fix
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-30 15:40:51 +02:00
Felix Fietkau
e25cedd0b5 tar: override symlink permissions
On Linux, symlink permissions cannot be altered and are always 0777.
On Mac OS X they can be 0755. Force 0777 here to keep tarballs
reproducible across systems

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-30 15:40:51 +02:00
Piotr Dymacz
6173f6d8f1 ar71xx: move Wallys DR344 to generic build target
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-30 14:34:09 +02:00
Piotr Dymacz
18d5cee2a8 ar71xx: fix Wallys DR344 GPIO-connected LEDs and button
This fixes wrong GPIO numbers for LEDs and button in Wallys DR344 board
and sets color of all LEDs to green as the mass production boards have
only green one.

Actually, DR344 has 6 GPIO-connected LEDs and one button:

- GPIO11: status
- GPIO12: sig1
- GPIO13: sig2
- GPIO14: sig3
- GPIO15: sig4
- GPIO16: reset button
- GPIO17: lan

WAN LED is connected directly with AR8035 PHY.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-30 14:34:04 +02:00
Piotr Dymacz
6713640b52 ar71xx: set GE interface as wan by default in Wallys DR344
This aligns default network interfaces configuration with vendor
firmware: GE (eth0) -> wan, FE (eth1) -> lan.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-30 14:15:25 +02:00
Piotr Dymacz
c7bc8a9a13 ar71xx: fix GE interface support in Wallys DR344
GMAC0 interface of AR9344 SOC in Wallys DR344 board is connected with
AR8035, not with AR8327. Without this fix, GE interface doesn't work at
all or shows high packet loss ratio.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-30 14:15:25 +02:00
Marty Plummer
558d86923e ar71xx: add support for EnGenius ENS202EXT
EnGenius ENS202EXT is an outdoor wireless access point with
2-port 10/100 switch, detachable antennas and proprietery PoE.

The device is based on Qualcomm/Atheros AR9341 v1.

Specifications:
- 535/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM
- 16 MB of FLASH
- UART (J1) header on PCB (unpopulated)
- 2x 10/100 Mbps Ethernet
- 2.4 GHz, up to 26dBm
- 2x external, detachable antennas
- 7x LED, 1x button

Flash instructions:

You have three options:

- Use the vendor firmware upgrade page on the web interface and give
it the factory.img. This is the easiest way to go about it.

- If you have serial access during u-boot, interrupt the normal boot
(any key before timeout) and run 'run failsafe_boot'; this will bring
you to a minimal openwrt luci image on ip 192.168.1.1 useful if you've
bricked the normal firmware.

- Use the vendor's management cli, which can be accessed via telnet
with the same credentials as the web login (default admin:admin), then
issue the following commands:

*** Hi admin, welcome to use cli(V-1.6.7) ***
---========= Commands Help =========---
      stat -- Status
       sys -- System
    wless2 -- 2.4G-Wireless
      mgmt -- Management
      tree -- Tree
      help -- Help
    reboot -- Reboot
ens202ext>mgmt
  Management
---========= Commands Help =========---
     admin -- Administration
     mvlan -- Management VLAN settings
      snmp -- SNMP settings
    backup -- Backup/Restore settings
    autorb -- Auto reboot settings
   fwgrade -- Firmware upgrade
      time -- Time settings
   wifisch -- Wifi schedule
       log -- Log
      diag -- Diagnostics
      disc -- Device Discovery
    logout -- Logout
      help -- Help
      exit -- Exit
ens202ext/mgmt>fwgrade
  Management --> Firmware upgrade
---========= Commands Help =========---
      fwup -- Firmware upgrade
      help -- Help
      exit -- Exit
ens202ext/mgmt/fwgrade>fwup http://web.server/lede-ar71xx-generic-ens202ext-squashfs-factory.bin

Signed-off-by: Marty Plummer <ntzrmtthihu777@gmail.com>
2017-05-30 14:15:25 +02:00
Andrey Polischuk
0f21873f7f ar71xx: fix LED defines for TP-Link TL-WR740N v6
Signed-off-by: Andrey Polischuk <androld.b@gmail.com>
[changed commit subject, dropped redundant kernel config symbol]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-30 14:15:25 +02:00
Kevin Darbyshire-Bryant
a4198f8c8d iproute2: bump to 4.11
Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-05-30 14:00:31 +02:00
Daniel Engberg
6af0facb4e toolchain/binutils: Set 2.28 as default version
Use 2.28 by default

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-30 14:00:31 +02:00
Josua Mayer
d41a441bb6 mvebu: clearfog: assign SFP port to WAN zone
The single SFP port is meant for direct media access to WAN, such as
VDSL2, GPON). While it could also be used for in-home fiber, it is much
more likely that the LAN is standard ethernet, especially considering
that SFP is the onmly port that can go beyond 1Gbps.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:31 +02:00
Josua Mayer
48cc065fe3 mvebu: clearfog: document interface configuration
Take explicit note of what physical ports eth{0,1,2} refer to.
Also repair port assignment:
At some point between 4.9.20 and 4.9.29 the numbering changed.
Keep previous port assignment that was:
LAN = SFP+Switch
WAN = standalone ethernet

Also use the same assignment for Clearfog-Base to avoid confusion.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:30 +02:00
Josua Mayer
3f72f3a8b1 mvebu: clearfog: include DTB for all variants in image
Installing all armada-388-clearfog-* DTBs in the same sdcard image,
it now becomes much easier to swap sdcards between different device variants.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:30 +02:00
Josua Mayer
88389bfe41 mvebu: update boot-script to use generic variables
U-Boot provides standard variables for load addresses, and
filesystem-agnostic load-commands. Furthermore thanks to distro-boot,
the device and partition from which the system boots is known.
The new boot-script makes use of all this information.

Tested on the only board that uses this boot-script: Clearfog Pro

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:30 +02:00
Josua Mayer
e2814f6416 u-boot-mvebu: clearfog: enable setexpr command
Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:30 +02:00
Josua Mayer
c4f9474059 u-boot-mvebu: clearfog: implement distro-boot
Add a patchfile that implements distro-boot and is meant to go upstream
Also make the other patches git-am'able for easier maintenance.

Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:30 +02:00
Josua Mayer
86c4144571 u-boot-mvebu: update to 2017.03
Signed-off-by: Josua Mayer <josua.mayer97@gmail.com>
2017-05-30 14:00:30 +02:00
Ansuel Smith
e783f588eb mwlwifi: update to the latest version
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-05-30 13:59:38 +02:00
Syrone Wong
c87aa0d7ca toolchain/gcc: fix --with-isl path
This fixes GCC 7 compilation when GRAPHITE is selected.
The path is replaced with $(TOOLCHAIN_DIR), while it should be
$(STAGING_DIR_HOST). To keep in sync with the path of gmp,
mpfr and mpc, I'm using $(TOPDIR)/staging_dir/host.

Fixes: f62f4b3c5c ("build: stop overriding STAGING_DIR_HOST for toolchain build")

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2017-05-30 09:32:10 +02:00
Felix Fietkau
6773561748 mt76: update to the latest version, fixes a mt7603 beacon issue
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-30 08:52:00 +02:00
Matthias Schiffer
df5e80eb26 procd: update to latest git HEAD
e7bb2c8 upgraded: define __GNU_SOURCE

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-30 07:29:25 +02:00
Matthias Schiffer
ce06d2bd01 sunxi: sysupgrade: sync with x86
sunxi sysupgrade was based on the x86 implementation; sync fixes and other
changes from the current x86 version:

x86: fix sysupgrades on disks with 4k block size
x86: sysupgrade: move partition table change check to platform_check_image
x86: sysupgrade: refactor platform_do_upgrade
x86: sysupgrade: explicitly rescan disk after writing partition table

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:35 +02:00
Matthias Schiffer
6bb7b87315 sunxi: sysupgrade: don't write partitions twice
When existing partitions are retained, the dd call writing the uboot image
in the space before the first partition was accidentally writing the whole
image, making the code for individual partitions redundant. Limit the copy
to 1016KiB (the first 8KiB are skipped, and the first partition starts at
1024KiB).

In addition, conv=notrunc is replaced with conv=fsync. It seems this was an
oversight, as notrunc doesn't make sense for block devices and all other dd
commands use conv=fsync.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:34 +02:00
Matthias Schiffer
dac07ca05b x86: sysupgrade: explicitly rescan disk after writing partition table
This should ensure that the kernel partition can be mounted in
platform_copy_config when its size has changed.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:34 +02:00
Matthias Schiffer
a77633d36d x86: sysupgrade: refactor platform_do_upgrade
By returning early when no upgrade device can be found and handling the
SAVE_PARTITIONS=0 case differently, we can get rid of two levels of if.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:34 +02:00
Matthias Schiffer
19b84cfff2 x86: sysupgrade: move partition table change check to platform_check_image
The staged sysupgrade will prevent us from using ask_bool in
platform_do_upgrade; therefore, the check is moved to platform_check_image.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:34 +02:00
Matthias Schiffer
9ab81e63cd ramips: sysupgrade: move nand_do_upgrade call to platform_do_upgrade
All targets with NAND support should gradually move their nand_do_upgrade
calls from platform_pre_upgrade to platform_do_upgrade.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:33 +02:00
Matthias Schiffer
a5428244d9 base-files: add support for staged sysupgrades from failsafe mode
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:33 +02:00
Matthias Schiffer
b2adb9a7b5 base-files: sysupgrade cleanup
Some functions only used by stage2 are moved there from common.sh.

One piece that could still use more cleanup is platform_pre_upgrade: many
targets reference files from there are aren't available in the ramfs, so
we need to evaluate it before the switch; conversely, flash writes happen
in that function on some targets. Targets that do the latter should be
fixed eventually to use platform_do_upgrade for that purpose.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:33 +02:00
Matthias Schiffer
218af1957e fstools: snapshot: handle jffs2 conversion using upgraded
We can reuse the kill_remaining and run_ramfs facilities of the stage2 run
by upgraded.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:33 +02:00
Matthias Schiffer
6bbb3a2b0a fstools: clean up trailing whitespace in snapshot script
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:33 +02:00
Matthias Schiffer
30f61a34b4 base-files: always use staged sysupgrade
Support for the -d and -p options is dropped; it may be added again at some
point by adding these flags to the ubus sysupgrade call.

A downside of this is that we get a lot less information about the progress
of the upgrade: as soon as the actual upgrade starts, all shell sessions
are killed to allow unmounting the root filesystem.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:32 +02:00
Matthias Schiffer
393817df5d procd: remove procd-nand package
We always want to support staged upgrades now, so it's better to include
upgraded into the main package. /lib/upgrade/nand.sh is moved to
base-files.

The procd-nand-firstboot package is removed for now, it may return later
as a separate package.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:50:32 +02:00
Matthias Schiffer
8008765f1f procd: update to latest git HEAD
992b796 rcS: add missing fcntl.h include
63789e5 init: add support for sysupgrades triggered from preinit
5b1fb35 Remove code that has become unnecessary after sysupgrade changes
5918b6d upgraded: add support for passing a "command" argument to stage2
056d8dd upgraded: link dynamically, chroot during exec
7c6cf55 system: always support staged sysupgrade
d42b21e procd/rcS: Use /dev/null as stdin
e0098d4 service/instance: add an auto start option
1247db1 procd: Log initscript output prefixed with script name
8d720b2 procd: Don't use syslog before its initialization
2555474 procd: Add missing \n in debug message

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:49:50 +02:00
Matthias Schiffer
49328cecdf procd: prepare NAND sysupgrade for making upgraded dynamically linked
Use install_bin to copy upgraded with all dependencies. The old name
/tmp/upgraded is temporarily retained as a symlink to avoid breaking
things.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:08:32 +02:00
Matthias Schiffer
25d1a24e58 procd: clean up trailing whitespace in nand.sh
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-29 23:08:22 +02:00
Felix Fietkau
aaeb42b3e2 mt76: update to the latest version, improves mt7603/7628 stability
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-29 14:42:49 +02:00
Felix Fietkau
1a341e89a7 build: fix kmod package build on non-GNU systems
BSD paste requires a filename argument, and it accepts - to use stdin as
intended.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-29 14:27:08 +02:00
Daniel Engberg
9235a29e1a tools/sparse: Update to snapshot 2017-03-31
Update sparse to snapshot 2017-03-31
Switch to HTTPS

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-29 10:00:43 +02:00
Daniel Engberg
2cf4e3c420 toolchain/insight: Remove from tree
Insight hasn't been touched since 2009 and I can't find any references at
least 6 years back of being used. Ubuntu and Debian removed insight years ago
from their repos so I think we can safely remove this too.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-29 09:57:18 +02:00
Martin Schiller
82f7fd7457 lantiq: pinctrl: xway: fix copy/paste error in xrx200_grps
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-05-29 09:51:19 +02:00
Ram Chandra Jangir
7bf74d3185 ipq806x: add qpic nand and bam dma node's in ipq4019 dts tree
This change adds QPIC BAM dma and NAND driver node's in IPQ4019
device tree, also enable this for AP-DK04.1 based boards.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-05-29 07:26:03 +02:00
Ram Chandra Jangir
35307c0bbf ipq806x: Add support for custom data mapping in bam_dma dmaengine
This change adds a new function to support for preparing DMA descriptor
for custom data.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-05-29 07:25:59 +02:00
Ram Chandra Jangir
ea9e0cf2ce ipq806x: Added bam transaction and support additional CSRs
This change adds support for below:
- Bam transaction which will be used for any NAND request.
- Reset function for NAND BAM transaction
- Add support for additional CSRs.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-05-29 07:25:54 +02:00
Ram Chandra Jangir
2048cab22b ipq806x: Add bam_dma support in qcom_nand driver
The existing qcom_nand driver supports ADM DMA which is mainly
required for ipq806x family based boards,
IPQ40xx based boards uses BAM DMA in NAND driver, so this patch
adds BAM DMA support with compatible string as qcom,ebi2-nandc-bam.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-05-29 07:25:46 +02:00
Ram Chandra Jangir
d227bb06df ipq806x: Add support to configure ipq40xx GPIO_PULL bits
GPIO_PULL bits configurations in TLMM_GPIO_CFG register
differs for IPQ40xx from rest of the other qcom SoC's.
This change add support to configure the msm_gpio_pull
bits for ipq40xx, It is required to fix the proper
configurations of gpio-pull bits for nand pins mux.

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
2017-05-29 07:25:39 +02:00
Jo-Philipp Wich
61eb18d3f7 firewall: fix stray continue statement
The previous commit introduced a faulty continue statement which might
lead to faulty rules not getting freed or reported.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-27 16:16:15 +02:00
Hans Dedecker
1422dab66e netifd: fix 6rd regression (FS#812)
08f1875 system-linux: fix 6rd regression

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-27 13:26:39 +02:00
Jo-Philipp Wich
6e46f6edc4 firewall: extend ubus support, exception handling, parse fixes
Update to latest Git HEAD in order to import a number of fixes and other
improvements:

3d2c18a options: improve handling of negations when parsing space separated values
0e5dd73 iptables: support -i, -o, -s and -d in option extra
4cb06c7 ubus: increase ubus network interface dump timeout
e5dfc82 iptables: add exception handling
f625954 firewall3: add check_snat() function
7d3d9dc firewall3: display the section type for UBUS rules
53ef9f1 firewall3: add UBUS support for include scripts
5cd4af4 firewall3: add UBUS support for ipset sections
02d6832 firewall3: add UBUS support for forwarding sections
0a7d36d firewall3: add UBUS support for redirect sections
d44f418 firewall3: add fw3_attr_parse_name_type() function
e264c8e firewall3: replace warn_rule() by warn_section()
6039c7f firewall3: check the return value of fw3_parse_options()

Fixes FS#548, FS#806, FS#811.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-27 12:19:48 +02:00
Jo-Philipp Wich
833c500cb2 brcm47xx: remove target specific network preinit config
The generic preinit code is now able to setup network and switch vlan settings
from the /etc/board.json file, therefor drop the target specific code.

Fixes FS#790.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-27 12:17:40 +02:00
Jo-Philipp Wich
52e36cf80a samba: bump PKG_RELEASE
The previous CVE bugfix commit did not adjust PKG_RELEASE, therefor the
fixed samba package does not appear as opkg update.

Bump the PKG_RELEASE to signify upgrades to downstream users.

Ref: https://forum.lede-project.org/t/sambacry-are-lede-devices-affected/3972/4

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-27 12:17:40 +02:00
Hauke Mehrtens
2be8d34085 x86: fix build of geode target
The build bot complained that the OLPC option was not set.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-27 11:31:10 +02:00
Hauke Mehrtens
69aaf1cd78 kernel: add missing config options
This broke the build for the x86 generic target.
This was found by the build bot.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-27 11:30:38 +02:00
Filip Moc
43e4e1f4a5 Move enablemodem from ramips to new package adb-enablemodem and make it used also by TL-MR6400
Signed-off-by: Filip Moc <lede@moc6.cz>
2017-05-27 07:54:40 +02:00
Filip Moc
a639cbfd00 ar71xx: Add support for TP-Link MR6400
You can flash via tftp recovery (serve factory image as /mr6400_tp_recovery.bin
on 192.168.0.66/24, connect to any ethernet port and power on device while
holding the reset button). Flashing via OEM web interface does not work.

Hardware Specification (v1.0 EU):
 - SoC: QCA9531
 - Flash: Winbond W25Q64FV (8MiB)
 - RAM: EtronTech EM6AB160TSE-5G (64MiB)
 - Wireless: SoC platform only (2.4GHz b/g/n, 2x internal antenna)
 - Ethernet: 2NIC (3x100M + 1x100M)
 - WWAN: TP-LINK LTE MODULE (2x external detachable antenna)
 - Power: DC 12V 1A

Signed-off-by: Filip Moc <lede@moc6.cz>
2017-05-27 07:54:21 +02:00
Russell Senior
b76248dd96 ramips: remove fictional LEDs from AsiaRF AWM00x device tree
Neither the AsiaRF AWM002 or AWM003 actually has an LED on the module
board.  The ld1 and ld2 do not represent actual LEDs.  These pins might
connect to LEDS on an eval board or other carrier board, but that is
outside the scope of this device tree file.

Signed-off-by: Russell Senior <russell@personaltelco.net>
2017-05-27 07:01:39 +02:00
Julian Labus
a9206ac26c usbmode: update usb-modeswitch-data to 20170205
add support for new hardware

Signed-off-by: Julian Labus <julian@labus-online.de>
2017-05-27 07:01:39 +02:00
Julian Labus
b09ee2dc01 usbmode: update to latest version
453da8e convert-modeswitch.pl: fix message indices

Signed-off-by: Julian Labus <julian@labus-online.de>
2017-05-27 07:01:39 +02:00
Yousong Zhou
546e20e836 build: fix possible issue with kmod package having multiple AutoLoad's
This commit contains the following changes

 - Use local shell var where appliable
 - The $(sort $$$$$$$$mods) call will have no expected effect
 - Avoid EEXIST when creating symlinks in /etc/modules-boot.d/
 - Avoid duplicate arguments for insert_modules() in postinst-pkg

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-27 11:21:55 +08:00
Hauke Mehrtens
7142cb45b4 kernel: update kernel 4.4 to 4.4.70
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-27 00:48:37 +02:00
Hauke Mehrtens
0b17375931 kernel: update kernel 4.9 to 4.9.30
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-27 00:48:37 +02:00
Florian Fainelli
48e500570e uml: Fix sample command line
Provide paths that match where LEDE is staging images.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-26 15:43:26 -07:00
Florian Fainelli
e8c3b98973 uml: Check for glibc static libraries
UML statically links against libutil, librt and libpthread. Some hosts do not
necessarily have these libraries installed and we should find out sooner than
later (during the final vmlinux linking stage) about that.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-26 15:43:22 -07:00
Florian Fainelli
90336ef4cd kernel: Make KERNEL_PERF_EVENTS selectable
The kernel itself allows enabling/disabling CONFIG_PERF_EVENTS, so allow
doing the same thing.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-26 15:42:25 -07:00
Florian Fainelli
ce731158c8 kernel: Hide kernel options behind a menu
We are starting to add more and more kernel configurable options, to the
point where the Global build options menu is not really usable anymore,
hide all kernel-related configuration options behind a menu.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-26 15:42:13 -07:00
Florian Fainelli
484f768dfa elfutils: Pass -Wno-unused-result to silence warnings as errors
elfutils turns on -Werror by default, and patch 100-musl-compat.patch
changes how strerror_r is used and we no longer use the function's
return value. This causes the following build error/warning to occur
with glibc-based toolchains:

dwfl_error.c: In function 'dwfl_errmsg':
dwfl_error.c:158:18: error: ignoring return value of 'strerror_r',
declared with attribute warn_unused_result [-Werror=unused-result]
       strerror_r (error & 0xffff, s, sizeof(s));
                  ^
cc1: all warnings being treated as errors

Fixing this would be tricky as there are two possible signatures for
strerror_r (XSI and GNU), just turn off unused-result warnings instead.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-26 15:42:03 -07:00
Nick Brassel
b32689afd6 dnsmasq: add dhcp-script hook for other packages
Adds a script which acts as a hook for when dnsmasq creates/destroys a
lease, or completes a TFTP file transfer. The hook loops through scripts
in appropriate directories inside '/etc/hotplug.d', executing each one with
the same arguments supplied by dnsmasq.

In case dnsmasq is jailed by ujail the dhcp-script hook will not work as
expected as ujail does not yet support executing a script within a jail.

Signed-off-by: Nick Brassel <nick@tzarc.org>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-26 21:28:30 +02:00
Mathias Kresin
822ee54544 treewide: fix device tree path in scripts
The device tree is at /proc/device-tree/ without a base subdir.

Fixes: da472e5b30 ("treewide: access device tree from userspace via /proc/")

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-05-26 15:18:30 +02:00
Jo-Philipp Wich
361c8b4ee4 Revert "sysupgrade: run only one instance at a time."
This reverts commit e96a9a9af8.

The change breaks sysupgrade through LuCI and two-stage sysupgrade on
NAND targets. There is also a mismatch of file paths in lock and unlock
operations.

This commit was apparently neither properly tested, nor reviewed, so
drop it for now.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-26 14:49:08 +02:00
Kyson Lok
abbfcc8525 ramips: add support for GL-inet GL-MT300N-V2
This patch adds supports for the GL-inet GL-MT300N-V2.

Specification:
- SoC: MediaTek MT7628AN
- Flash: 16 MiB (W25Q128FVSG)
- RAM: 128 MiB DDR
- Ethernet: 1 x WAN (100 Mbps) and 1 x LAN (100 Mbps)
- USB: 1 x USB 2.0 port
- Button: 1 x switch button, 1 x reset button
- LED: 3 x LEDS (system power led is not GPIO controller)
- UART: 1 x UART on PCB (JP1: 3.3V, RX, TX, GND)

Installation through Luci:
- The original firmware is LEDE, so both LuCI or sysupgrade can be used.
- Do not keep settings, for sysupgrade please use the -n option.

Installation through bootloader webserver:
- Plug power and hold reset button until red LED blink to bright.
- Install sysupgrade image using web interface on 192.168.1.1.

Signed-off-by: Kyson Lok <kysonlok@gmail.com>
[match maximum image size with firmware partition]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-05-26 08:04:15 +02:00
Mathias Kresin
da472e5b30 treewide: access device tree from userspace via /proc/
Access the device tree via /proc/device-tree/ is the documented way to
access the properties. Everything else might not work in future.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-05-26 08:04:15 +02:00
Eric Luehrsen
aeeb2faf88 flex: update to 2.6.4 (FS#809)
flex 2.6.3 has a bug which fails code generation and compile of some packages

Signed-off-by: Eric Luehrsen <ericluehrsen@hotmail.com>
2017-05-26 07:53:03 +02:00
Daniel Golle
62d0b1a444 x86/legacy: disable PAE again
commit 961c0eacea ('x86: fix lifting kernel CPU requirements and always
enable PAE') broke some older geode boards such as Soekris net4826.
Hence disable PAE on x86/legacy again in order to still support those
very old non-PAE capable CPUs.

Fixes FS#773 - PAE broke Soekris net4826

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-25 23:50:48 +02:00
Felix Fietkau
4b8a7c9b48 build: fix QUILT related overrides
They need to be defined before including quilt.mk

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 20:42:45 +02:00
Felix Fietkau
c2dc7321d7 iptables: fix typos in 600-shared-libext.patch (FS#711)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:30:36 +02:00
Giuseppe Lippolis
4ba2f4dc63 DWR-512: adding wwan support for the dwr-512 3G modem
This PR allow the 3G modem embedded in the DWR-512 to be managed
by the wwan-ncm scripts. The modem will use the usb-option and
usb-cdc-ether drivers.
The DWR-512 DT is updated accordingly.

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-05-25 19:01:08 +02:00
Felix Fietkau
8851a18a88 gcc: fix documentation entries added by 910-mbsd_multi.patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
cbe0a7ecc0 scripts/download.pl: print the command used to download files
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
3c7a99ea90 xfsprogs: update to 4.11.0
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Hannu Nyman
d7a3120cdc tools/libressl: update to 2.5.4
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-05-25 19:01:07 +02:00
Hannu Nyman
8040420b00 tools/flex: update to 2.6.3
* update flex to 2.6.3
* download .tar.gz (as upstream has dropped .xz)
* refresh patches

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-05-25 19:01:07 +02:00
Hannu Nyman
1a0d52a733 tools/cmake: update to 3.8.1
* update cmake to 3.8.1
* refresh patches

Release notes:
https://cmake.org/cmake/help/v3.8/release/3.8.html

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-05-25 19:01:07 +02:00
Philip Prindeville
910df3f06c x86_64: add drivers for Xeon controller hub based GPIO
These drivers are in many reference-design Xeon, iCore, or
Atom64 based server boards.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-05-25 19:01:07 +02:00
Felix Fietkau
e6d4235ae5 json-c: disable implicit fallthrough warning (gcc 7)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
60241e52db firewall: update to the latest version, fixes a gcc7 build error
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
70c2c8ff39 toolchain: add gcc 7.1.0 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Syrone Wong
a0f4b4b3a2 tools/isl: update to 0.18
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2017-05-25 19:01:07 +02:00
Felix Fietkau
30bf133699 octeon: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
36ba6237d6 build: fix quilt for mixed package/host builds
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
221f323782 build: set QUILT=1 automatically when calling package host build refresh
Makes behavor consistent with package builds and regular host builds

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Felix Fietkau
f62f4b3c5c build: stop overriding STAGING_DIR_HOST for toolchain build
This causes various issues in other places that assume that host
binaries are staged in STAGING_DIR_HOST.
Since all the right places use HOST_BUILD_PREFIX, override that instead.
This fixes some issues with quilt on toolchain dirs

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-25 19:01:07 +02:00
Yousong Zhou
a76cbc0d7e kernel: fix autoloading arch-specific modules
Fixes FS#745

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-25 22:52:07 +08:00
Yousong Zhou
e250acab26 backlight-pwm: fix module description
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-25 22:52:06 +08:00
Kenneth Johansson
e96a9a9af8 sysupgrade: run only one instance at a time.
Things do not work well if running multiple instances of
upgrade at the same time.

Signed-off-by: Kenneth Johansson <kenneth.johansson@inteno.se>
2017-05-25 09:22:43 +02:00
Florian Fainelli
8e0e0e7d8b include: Determine MODULES_DIR correctly for external/git kernels
When using external or git cloned kernels, any kind of modifications
will alter KERNELRELEASE. LEDE still tries to stage modules in
lib/modules/$(LINUX_UNAME_VERSION) and LINUX_UNAME_VERSION is based on
KERNEL_PATCHVER (indirectly) so this does not work, and we lose all
kinds of automatic modules loading.

To remedy that, just cat $(LINUX_DIR)/include/config/kernel.release
which is late enough the kernel has prepared this file, and is correctly
tracking changes done throughout the kernel.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-25 09:22:43 +02:00
Florian Fainelli
b6746a6ffb include: Do not alter KERNELRELEASE for external/git kernels
In case we use external and/or git cloned kernels, let the kernel
determine the appropriate KERNELRELEASE. We cannot used
LINUX_UNAME_VERSION because that one gets determined at a later time,
when the kernel is already built proper.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-25 09:22:43 +02:00
Florian Fainelli
d0a6340717 Revert "kernel: prevent addition of scm marker to localversion"
This reverts commit 0df2c6563a since it
gets in the way of identifying properly which kernel we are running.
This is particularly important if LEDE is using external kernels/git
cloned kernels. We want to make sure we only load modules from that
specific kernel.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-25 09:22:43 +02:00
Roman Spychała
855f2ae4da kernel: add kmod-usb-net-pl package
Kernel support for Prolific PL-2301/2302/25A1 based cables

Signed-off-by: Roman Spychała <roed@onet.eu>
2017-05-25 09:22:42 +02:00
René Mayrhofer
e457d22261 Make GBit switch work on RB2011
This change is required to make the GBit switch work on my Mikrotik Routerboard RB2011UiAS-RM, and I assume that the other RB2011 variants are exactly the same in terms of the switch. I have tested the board without and with the patch and confirm that the GBit ports are not supported at all (i.e. no communication works) with the current version in trunk and that everything works with the patch applied. The test box has been running for a few days with the patch applied, and does not show any performance problems in a test setting. I have not used it with LEDE in production so far, but with a previous turnk version of OpenWRT for many years - with the same patch applied. I therefore have good indication that it is stable.

For the record, the switch chip on my test box is identified as
	switch0: Atheros AR8327 rev. 4 switch registered on ag71xx-mdio.0

The value 0x6f000000 has been taken from the table at https://wiki.openwrt.org/toh/mikrotik/rb2011uias with the previous discussion thread still online at https://lists.openwrt.org/pipermail/openwrt-devel/2014-December/029949.html.
One definite improvement from the older OpenWRT trunk version I have been running in production and current LEDE trunk is that the SFP interface can be kept in the default configuration without excessive kernel messages about it constantly going up and down. I have not yet tested an actual SFP module, though.

Performance seems to be reasonable. Routing between two GBit ports on that switch separated by different VLANs with the default firewall ruleset (and one additional rule two allow traffic between the VLANs), but without NAT, iperf3 results are:
	[ ID] Interval           Transfer     Bandwidth       Retr
	[  4]   0.00-10.00  sec   508 MBytes   426 Mbits/sec  102             sender
	[  4]   0.00-10.00  sec   506 MBytes   425 Mbits/sec                  receiver
With a connection going through NAT (also 2 ports on the same GBit switch, same ruleset, but NAT active), routing performance drops to around 250 MBit/s.
(Note that RouterOS achieves beyond 900 MBit/s on the same hardware with the default rule set and the FastTrack rule active even for NAT, see https://wiki.mikrotik.com/index.php?title=Manual:IP/Fasttrack and http://www.mikrotik.com/download/share/FastTrack.pdf).

Summarizing, I strongly recommend to apply this patch in trunk, so that the GBit switch chip rev. 4 can be supported upstream in the next LEDE release (hopefully soon).

Signed-off-by: René Mayrhofer <rene@mayrhofer.eu.org>
2017-05-25 09:22:42 +02:00
Matthias Fritzsche
a4e63e2679 ar71xx: change image version for ubiquiti devices
changes the image version from hardcoded OpenWrt to
$VERSION_DIST. AirOS shows a notification with the image version
during a firmware upgrade.

fixes #582

Signed-off-by: Matthias Fritzsche <txt.file@txtfile.eu>
2017-05-25 09:22:37 +02:00
Stijn Tintel
423a7a6b75 lldpd: bump to 0.9.7
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-05-24 14:56:22 +02:00
Stijn Tintel
3f0d3d12da samba: fix CVE-2017-7494
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-05-24 14:44:03 +02:00
Stijn Tintel
c454fab0f2 brcm2708: enable cpufreq
With cpufreq disabled, the CPU stays locked at the frequency set by the
bootloader. This severely degrades performance as the bootloader sets
the CPU at the lowest frequency by default.

Enable cpufreq for all subtargets and use the ondemand governor.

Tested bcm2708 on RPi0W. Tested bcm2709 and bcm2710 on RPi3.

Reported-by: Bryan Mayland <bmayland@capnbry.net>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-05-23 17:32:49 +02:00
Hans Dedecker
43cc399871 dnsmasq: bump to 2.77rc5
Some small tweaks and improvements :

9828ab1 Fix compiler warning.
f77700a Fix compiler warning.
0fbd980 Fix compiler warning.
43cdf1c Remove automatic IDN support when building i18n.
ff19b1a Fix &/&& confusion.
2aaea18 Add .gitattributes to substitute VERSION on export.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-22 23:08:06 +02:00
Hans Dedecker
c0a9a73393 6rd: add 6rd specific settings as nested json object
Add 6rd specific settings prefix, relay-prefix as a nested data json object

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-22 21:40:19 +02:00
Hans Dedecker
5f2408dbc5 netifd: update to git HEAD version
7573880 system-linux: parse 6rd specific settings as nested json data object
a063705 system-linux: remove redundant check for strtoul() return value
e6ebe0b build: disable unknown warning option error in clang
08d8f47 interface: add new "ifup-failed" hotplug event
20a1bac bridge: reset primary only after marking the member not present
6b9c267 build: suppress format truncation warnings to avoid errors with gcc7

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-22 21:40:19 +02:00
Rafał Miłecki
aaabf47ede umdns: update to the version 2017-05-22
This includes following changes:
0e8b948 Support specifying instance name in JSON file
49fdb9f Support PTR queries for a specific service
26ce7dc Allow filtering with instance name in service_reply
920c62a Store instance name in the struct service
ff09d9a Rename service_name function to the service_instance_name
64f78f1 Rename mdns_hostname variable to the umdns_host_label

Previous package update pulled commit 70c66fbbcde86 ("Fix sending
replies to PTR questions") which introduced a regression which this
update fixes.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-05-22 12:04:01 +02:00
Felix Fietkau
65a3dc277f fstools: update to the latest version
88d48d5 libfstools: silence mkfs.{ext4,f2fs}
a19f2b3 build: disable the format-truncation warning error to fix gcc 7 build errors
633a8d0 libfstools: fix multiple volume_identify usages with the same volume
c43ae11 fstools: use -Wno-format-truncation instead of -Wno-error=format-truncation

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-22 11:12:36 +02:00
Yousong Zhou
5d48dc1146 libunwind: update to 1.2
Addresses CVE-2015-3239: Off-by-one error in the dwarf_to_unw_regnum
function in include/dwarf_i.h in libunwind 1.1 allows local users to
have unspecified impact via invalid dwarf opcodes.

Upstream stable-v1.2 fixed the missing unwind_i.h issue but no new
tarball is released yet

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-22 11:07:40 +08:00
Kevin Darbyshire-Bryant
6e10fc74fd dropbear: bump to 2017.75
- Security: Fix double-free in server TCP listener cleanup A double-free
in the server could be triggered by an authenticated user if dropbear is
running with -a (Allow connections to forwarded ports from any host)
This could potentially allow arbitrary code execution as root by an
authenticated user.  Affects versions 2013.56 to 2016.74. Thanks to Mark
Shepard for reporting the crash.
CVE-2017-9078 https://secure.ucc.asn.au/hg/dropbear/rev/c8114a48837c

- Security: Fix information disclosure with ~/.ssh/authorized_keys
symlink.  Dropbear parsed authorized_keys as root, even if it were a
symlink.  The fix is to switch to user permissions when opening
authorized_keys

A user could symlink their ~/.ssh/authorized_keys to a root-owned file
they couldn't normally read. If they managed to get that file to contain
valid authorized_keys with command= options it might be possible to read
other contents of that file.
This information disclosure is to an already authenticated user.
Thanks to Jann Horn of Google Project Zero for reporting this.
CVE-2017-9079 https://secure.ucc.asn.au/hg/dropbear/rev/0d889b068123

Refresh patches, rework 100-pubkey_path.patch to work with new
authorized_keys validation.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-05-21 23:56:17 +02:00
Hans Ulli Kroll
ce7681d328 mac80211: add support for rtl8821ae pcie adapter
Add support for Realtek RTL8821AE/RTL8812AE PCIe adapter.
This device supports 802.11ac and bluetooth

testet on PC Engines APU with AP and STA mode

Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
2017-05-21 23:51:21 +02:00
Hans Ulli Kroll
fd7b2559e2 linux-firmware: add firmware for rtl8821ae support
Add needed firmware to support rtl8821ae pcie adapter

Signed-off-by: Hans Ulli Kroll <ulli.kroll@googlemail.com>
2017-05-21 23:51:08 +02:00
Hauke Mehrtens
6153248052 lantiq: spi: double time out tolerance
The generic SPI code calculates how long the issued transfer would take
and adds 100ms in addition to the timeout as tolerance. On my 500 MHz
Lantiq Mips SoC I am getting timeouts from the SPI like this when the
system boots up:

m25p80 spi32766.4: SPI transfer timed out
blk_update_request: I/O error, dev mtdblock3, sector 2
SQUASHFS error: squashfs_read_data failed to read block 0x6e

After increasing the tolerance for the timeout to 200ms I haven't seen
these SPI transfer time outs any more.
The Lantiq SPI driver in use here has an extra work queue in between,
which gets triggered when the controller send the last word and the
hardware FIFOs used for reading and writing are only 8 words long.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-21 21:51:28 +02:00
Koen Vandeputte
e842e16f45 kernel: update kernel 4.9 to 4.9.29
- Refresh all patches
- Removed upstreamed
- Adapted 1

Compile tested on: bcm53xx, cns3xxx, imx6, lantiq
Run tested on: cns3xxx & imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[update from 4.9.28 to 4.9.29]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-21 21:51:22 +02:00
Kevin Darbyshire-Bryant
088e28772c kernel: update kernel 4.4 to version 4.4.69
Refresh patches. A number of patches have landed upstream & hence are no
longer required locally:

062-[1-6]-MIPS-* series
042-0004-mtd-bcm47xxpart-fix-parsing-first-block

Reintroduced lantiq/patches-4.4/0050-MIPS-Lantiq-Fix-cascaded-IRQ-setup
as it was incorrectly included upstream thus dropped from LEDE.
As it has now been reverted upstream it needs to be included again for
LEDE.

Run tested ar71xx Archer C7 v2 and lantiq.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
[update from 4.4.68 to 4.4.69]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-05-21 21:48:16 +02:00
Rafał Miłecki
0a05fbd135 bcm53xx: add support for TP-LINK Archer C5 V2
This model also contains few partitions non-discoverable partitions we
need to "protect". Othen than that it uses non-deprecated serial entry
in DTS that doesn't work with LEDE so we need to workaround it as well.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-05-21 18:31:38 +02:00
Alexandru Ardelean
c7ee30d53a base-files: fix default procd reload
Bug introduced with 6713694.

I did not count on procd handling reload as mentioned
in this doc:
https://wiki.openwrt.org/inbox/procd-init-scripts

```
procd_set_param file /var/etc/your_service.conf # /etc/init.d/your_service reload will restart the daemon if these files have changed
procd_set_param netdev dev # likewise, except if dev's ifindex changes.
procd_set_param data name=value ... # likewise, except if this data changes.
```

The service would be restarted regardless of any of those params.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-20 20:43:45 +02:00
Daniel Golle
48d71ab502 kernel: enable CRASH_DUMP on supported platforms
While we have CRASHLOG on MIPS it makes sense to support 'classic'
kexec-based CRASH_DUMP on x86 and arm platforms.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-20 00:26:03 +02:00
John Crispin
bad2f9c4dc Revert "ar71xx: Add support for Teltonika RUT900"
This reverts commit 224e5f5efa.

pepe2k pointed out that this was not ready to merge

Signed-off-by: John Crispin <john@phrozen.org>
2017-05-18 15:31:47 +02:00
Michael Lee
eee09bfe01 ramips: support jumbo frame on mt7621 up to 2k
Signed-off-by: Michael Lee <igvtee@gmail.com>
2017-05-18 14:50:16 +02:00
Steffen Weinreich
224e5f5efa ar71xx: Add support for Teltonika RUT900
Teltonika RUT900 is a Router with LTE dual SIM, WiFi, 4x Ethernet
ports, I/O, RS232, RS485, GPS.

The device ist based on a Atheros AR9344 rev 3,

Specifications:
- 560/450/225 MHz (CPU/DDR/AHB)
- 128 MB of RAM
- 16 MB of FLASH
- Serial Console header on a Card Board edge connector
- 4x 10/100 Mbps Ethernet (3x LAN, 1x WAN)
- 2.4 GHz Wifi
- 2x external, detachable Wifi antennas
- LTE Modem Huawei ME909u-521 (Also other Modem seen)
- 2x LTE antennas
- 1x GPS antenna
- 7x LED, 1x button
- 1x USB Connector
- 1x Serial RS232
- 1x Serial RS485
- 1x MicroSD Card

The GPL sources of the device are available at www.teltonika.lt/gpl/
and are based on OpenWRT Barrier Breaker (14.07)

Running from tftp:

The Router starts into the uboot Webupdater if the Button ist pressed
more than 3 seconds, if no Network cable is attached it starts the
uboot serial console, from there the router loads the firmware image
via tftpboot from 192.168.1.2:firmware.bin (the router has the
192.168.1.1). With bootm the loaded image will be booted.

Signed-off-by: Steffen Weinreich <steve@weinreich.org>
2017-05-18 14:47:53 +02:00
Daniel Engberg
ec987e59c4 f2fs-tools: Switch to gz tarball
At some point kernel.org decided to drop xz generated tarballs, switch to gz which they still provide.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-18 14:23:26 +02:00
Daniel Golle
5e5499c612 mac80211: rt2x00: remove unneccessary code
Use chanreg and dccal helpers to reduce the size of ePA code.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: fixed white-space so patch applies]
2017-05-18 13:51:28 +02:00
Alexandru Ardelean
ce8bfa9407 lldpd: drop specific respawn params [use system-wide]
I think I added these respawn params [a while back],
when I did the conversion to procd init script format.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-18 08:14:26 +02:00
Luiz Angelo Daros de Luca
ccc54b2935 elfutils: bump to 0.169
Removed patches (now upstream):
- 004-maybe-uninitialized.patch
- 007-fix_TEMP_FAILURE_RETRY.patch

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2017-05-18 07:59:56 +02:00
Ben Greear
e00cc98045 ath10k-ct-firmware: Add support for QCA9886/QCA9888 firmware.
This firmware shoul have the same general feature set as the
rest of the 10.4 CT firmware (9984, 9980, etc).  Build-tested
only in LEDE, but firmware has been tested with ath10k-ct driver
on other OSs, so likely works just fine.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-05-18 07:59:33 +02:00
Ben Greear
7a343dafbb ath10k-ct-firmware: Update to latest.
The 988x and 9887 firmwares include a bugfix for a case where blockack
did not work sometimes, and many fixes for compiler warnings detected
by newer gcc compilers.

The 9980 and 9984 firmware includes a large backport of upstream QCA
firmware changes to bring it up to date.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-05-18 07:59:31 +02:00
Ben Greear
1fc0a45558 ath10k-ct: Update to latest ath10k-ct driver.
Supports disabling firmware hex logging that many found too verbose.

Increase BMI timer so system works more often with 9888 Compex NIC
(and maybe others).

Allow configuring a specific board-file per NIC using fwcfg file.

Maybe fix a scan-busy problem when using CT firmware.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-05-18 07:59:26 +02:00
Daniel Engberg
b295966f87 devel/trace-cmd: Update to 2.6.1
Update trace-cmd to version 2.6.1
Switch to tarball download

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-18 07:58:59 +02:00
Giuseppe Lippolis
db776c01e1 comgt-3g: enable modem before to setpin
some modems needs to be enabled with CFUN=1 before to set the pin

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-05-18 07:07:00 +02:00
Philip Prindeville
0dcc36fc7d kernel: add hwmon for W83627EHF and family
Remove support for NCT6775/6 from W83627EHF driver so the NCT6775
driver will still be used for those chips.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-05-17 00:06:52 +02:00
Arjen de Korte
070a46121d dnsmasq: add IPv6 nameserver configuration in server mode
When in ra server mode, configure nameservers passed in router
announcements from the dns value (which is already used by odhcpd).

This also fixes FS#677 by using the global IPv6 address of the router
instead of the link local address (if no nameservers are configured).

Signed-off-by: Arjen de Korte <build+lede@de-korte.org>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2017-05-16 22:27:02 +02:00
Daniel Engberg
74395d97a9 libs/libnftnl: Update to 1.0.7
Update libnftnl to 1.0.7

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-16 17:22:58 +02:00
Daniel Engberg
89807b627f network/utils/curl: Update to 7.54.0
Update curl to 7.54.0
Update and fresh patches

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-16 16:58:15 +02:00
Daniel Engberg
4b0a2ca9a4 devel/strace: Update to 4.16
Update strace to 4.16
Refresh patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-16 16:58:11 +02:00
Daniel Engberg
ea2927e1ea network/utils/ipset: Update to 6.32
Update ipset to 6.32

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-05-16 16:58:07 +02:00
Ansuel Smith
324ec18615 uhttpd: Enable integrated Lua by default
We enabled lua interpreter by default as it doesn't make any problem in the uhttpd config file and we modify the index page to use it.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-05-16 16:57:01 +02:00
Bjørn Mork
a131b892ea kernel: add Digi Edgeport USB serial driver package
Signed-off-by: Bjørn Mork <bjorn@mork.no>
2017-05-16 12:10:39 +02:00
Chris Blake
10d11859df ar71xx: add support for Aerohive AP-121
This adds support for Aerohive AP-121 access point.

Specification:
- SoC: Atheros AR9344-BC2A at 560MHz
- WiFi 1: 2.4GHz Atheros AR9340? - SoC
- WiFi 2: 5.0GHz Atheros AR9382-AL1A
- Memory: 128MB from 2x Nanya NT5TU32M16DG-AC
- SPI: 1MB Macronix MX25L8006E
- NAND: 128MB Hynix H27U1G8F2BTR-BC
- Ethernet: Atheros AR8035-A
- USB: 1x 2.0
- TPM: Atmel SC3204

Flashing:
1. Hook into UART (9600 baud) and enter U-Boot. You may need to enter
a password of administrator or AhNf?d@ta06 if prompted.
2. Once in U-Boot, download and flash LEDE factory image over tftp:

dhcp;
setenv serverip tftp-server-ip;
tftpboot 0x81000000 lede-ar71xx-nand-hiveap-121-squashfs-factory.bin;
nand erase 0x800000 0x800000;
nand write 0x81000000 0x800000 0x800000;
reset;

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
[minor text changes in commit subject and description, fixed
alphabetical order in etc/diag.sh, use only model name in lib/ar71xx.sh,
fixed code style issues in mach-hiveap-121.c, ubinized factory image]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:58:59 +02:00
Mantas Pucka
cd9d0f9e97 uboot-envtools: add support for 8devices Rambutan
Signed-off-by: Mantas Pucka <mantas@8devices.com>
2017-05-15 22:43:33 +02:00
Mantas Pucka
68b5d34f69 ar71xx: add support for 8devices Rambutan development board
Rambutan is a Wifi module based on QCA9550/9557
http://www.8devices.com/products/rambutan

This commit adds basic support for Rambutan development kit

Specification:
- 720/600/200 MHz (CPU/DDR/AHB)
- 128 MB of DDR2 RAM
- 128 MB of NAND Flash
- 1x 100Mbps Ethernet
- 1x 1000Mbps Ethernet (PHY on dev-kit)
- 1x Wifi radio 2x2 MIMO, dualband 2.4 and 5 GHz
- 2x U.FL connectors on module, chip antennas on dev-kit
- 1x miniPCIe slot
- 1x USB2.0 host socket + 1x USB2.0 pins on 2.54mm header

Flash instructions:
Stock firmware is OpenWrt, so use:
 sysupgrade -n /tmp/lede-ar71xx-nand-rambutan-squashfs-sysupgrade.tar
or upgarde from GUI (don't save config)
Use factory image to flash from U-Boot:
 tftpboot 80060000 lede-ar71xx-nand-rambutan-squashfs-factory.ubi
 nand erase.part ubi
 nand write 80060000 ubi ${filesize}

Signed-off-by: Mantas Pucka <mantas@8devices.com>
[split support in uboot-envtools package into a separate commit,
fixed alphabetical order in lib/preinit/05_set_iface_mac_ar71xx]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Ludwig Thomeczek
43a7a1a05e ar71xx: add support for UniFi-AC-Mesh
This adds the build option for the new UniFi AC Mesh.
It is a direct hardware copy from the AC Lite.

- SoC: QCA9563-AL3A (775Mhz)
- RAM: 128MiB
- Flash: 16MiB - dual firmware partitions!
- LAN: 1 1000M - POE
- Wireless:
        2.4G: QCA9563
          5G: UniFi Chip, QCA988X compatible

Thanks to Frank Dietz for testing.

Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
[wrapped too long lines in mach-ubnt-unifiac.c]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Piotr Dymacz
1c56a7929a ar71xx: move Zbtlink ZBT-WE1526 to generic build target
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Steffen Weinreich
e71b2dad94 ramips: add om-watchdog to rut5xx DEVICE_PACKAGES
Add om-watchdog as default package for rut5xx.

Signed-off-by: Steffen Weinreich <steve@weinreich.org>
2017-05-15 22:43:33 +02:00
Steffen Weinreich
04e91631e0 om-watchdog: add support for Teltonika RUT5xx (ramips)
Add rut5xx GPIO PIN selection to om-package startup script.

Testet on a RUT500 device, the timeout value of the hardware watchdog
is about 280 sec.

Signed-off-by: Steffen Weinreich <steve@weinreich.org>
[split into two commits, bump PKG_RELEASE]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Piotr Dymacz
08ab3fda01 om-watchdog: cosmetic code style fixes
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Piotr Dymacz
f7e84a4a2e om-watchdog: cleanup Makefile
Drop redundant Build/Prepare, empty lines and duplicated Build/Compile.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Oldřich Jedlička
f4a97c7f5d ar71xx: fix switch port mapping for ap123 based TP-Link devices
This fixes switch port mapping for: TL-WR841N/ND v8, TL-MR3420 v2 and
TL-WR941N/ND v5. All of them share the same Atheros ap123 reference
design.

The order of switch ports (shown in "swconfig dev eth1 show") is CPU,
LAN 4, LAN 1, LAN 2, LAN 3.

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
[included 2 more devices]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-05-15 22:43:33 +02:00
Hans Dedecker
6d7cb5337e odhcpd: update to git HEAD version
93abe6f config: fix invalid hoplimit in RA message
2ae08d1 config: fix invalid retranstime in RA message
0005cb4 config: fix invalid reachabletime in RA message
5683dd2 config: limit ra_mtu to 65535
f8d40a5 router: fix interface mtu read error
f8f4b87 config: limit ra_retranstime to 60000
a2d8bf6 dhcpv4: display two hex digits per octet in syslog
a9e9bc4 config: make RA retransTime configurable via uci
2cb6b48 config: make RA reachableTime configurable via uci
e4504db config: make RA curHopLimit configurable via uci
9dd5316 config: make RA mtu configurable via UCI
29cb2ff config: fix dhcpv4 server being started
0ef74ec ndp.c: add switch/case fallthrough comments

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-15 22:30:39 +02:00
Alberto Bursi
f7fd2abf25 kirkwood: set sata/usb led trigger for NSA3xx
these two devices have a Sata led for each sata port.
These leds must be controlled separately by a special
sata led trigger already used in oxnas target.

Both these devices have a single USB led, and to keep
consistent behaviour with the Sata leds that show
sata activity, this led uses usb-host trigger
to show usb activity.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-05-14 21:45:50 +02:00
Alberto Bursi
b52eb549d2 kirkwood: NSA325 remove led triggers from dts
delete useless or unusable default led triggers from dts file.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-05-14 21:45:50 +02:00
Alberto Bursi
4242ddf8f2 base-files: add led functions to uci-defaults.sh
uci_set_leds_ataport() allows to set a led to show activity
on a specific (s)ata port, which is needed for devices that have
a Sata led for each sata port.
The led trigger is from the 834-ledtrig-libata.patch LEDE kernel patch.

uci_set_leds_usbhost() allows to set a led to show total usb activity.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
[Jo-Philipp Wich: use a single underscore to denote private functions]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-14 21:45:50 +02:00
Alberto Bursi
b06a286a48 base-files: cleanup led functions in uci-defaults.sh
create a function with code common to all led functions,
create another function with code common to functions setting
a simple led trigger, restore alphabetical order in function names.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
[Jo-Philipp Wich: use a single underscore to denote private functions]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-14 21:45:50 +02:00
Michal Sojka
aa8e91a1e4 image.mk: Generate cpiogz with root-owned files
Some files (e.g. /etc/dropbear) need to be owned by root. Add cpio
option to ensure that.

Other image types (at least targz and squashfs) already have this.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
2017-05-14 21:43:17 +02:00
Jo-Philipp Wich
4a03347545 mac80211: gracefully handle preexisting VIF
Gracefully handle cases where the to-be-created wireless interface already
exists on the system which might commonly happen with non-multi-SSID capable
wireless drivers.

This fixes commit 8301e61365 which caused
previously ignored "Too many open files in system (-23)" errors to fail the
wireless setup procedure.

With the updated approach we'll still try recreating the vif after one
second if the first attempt to do so failed with ENFILE but we will now
consider the operation successfull if a second attempt still yields ENFILE
with the requested ifname already existing on the system.

Fixes FS#664, FS#704.

Suggested-by: Vittorio Gambaletta <openwrt@vittgam.net>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-14 21:43:11 +02:00
Jo-Philipp Wich
37e7a1734f imagebuilder: fix bundling of DTS sources
Refer to LINUX_KARCH instead of ARCH when bundling DTS files in the image
builder tarball.

While we're at it, also dereference symbolic links when copying as some
kernel architectures contain symbolic links in their DTS directories.

This fixes aarch64 imagebuilders such as brcm2708/bcm2710 ones in particular
as the kernel refers to "aarch64" as "arm64" internally.

Ref: https://forum.lede-project.org/t/lede-image-builder-problem/3680

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-14 21:43:06 +02:00
Luka Perkov
83e4ed3497 generic: refresh patches
Signed-off-by: Luka Perkov <luka.perkov@sartura.hr>
2017-05-14 00:34:04 +02:00
Marko Ratkaj
1c7b86d57e mvebu: ClearFog Base fix phy init
Fix Marvell PHYs initialization issues and optimize
logic for page changing during init

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-05-14 00:34:03 +02:00
Marko Ratkaj
ee1cee2cac mvebu: add ClearFog Base support
Add support for SolidRun ClearFog Base board.

The base model is a smaller version of ClearFog Pro without
the DSA switch, replacing it with a second copper gigabit
port, and only one PCIe socket.

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-05-14 00:34:03 +02:00
Marko Ratkaj
f564fcc6bf mvebu: add ClearFog Base device tree files
Add device tree files for Solidrun ClearFog Base board.
We also need to backport some improvements for Armada
388 MicroSoM.

The base model is a smaller version of ClearFog Pro without
the DSA switch, replacing it with a second copper gigabit
port, and only one PCIe socket.

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-05-14 00:34:03 +02:00
Marko Ratkaj
ec4a8c6dee mvebu: ClearFog renamed upstream to ClearFog Pro
The conventional model is now known as the "Clearfog Pro"

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-05-14 00:34:03 +02:00
Marko Ratkaj
efb49af1f9 mvebu: ClearFog DT file renamed upstream
The conventional model is now known as the "Clearfog Pro".
We keep the old armada-388-clearfog.dts file for compatibility reasons.

Signed-off-by: Marko Ratkaj <marko.ratkaj@sartura.hr>
2017-05-14 00:34:03 +02:00
Matthias Schiffer
1a16cb9c67 mac80211, hostapd: always explicitly set beacon interval
One of the latest mac80211 updates added sanity checks, requiring the
beacon intervals of all VIFs of the same radio to match. This often broke
AP+11s setups, as these modes use different default intervals, at least in
some configurations (observed on ath9k).

Instead of relying on driver or hostapd defaults, change the scripts to
always explicitly set the beacon interval, defaulting to 100. This also
applies the beacon interval to 11s interfaces, which had been forgotten
before. VIF-specific beacon_int setting is removed from hostapd.sh.

Fixes FS#619.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-13 17:12:54 +02:00
Matthias Schiffer
5e481881d7 hostapd: remove unused variable declarations in hostapd.sh
None of the variables in this "local" declaration are actually set in
wpa_supplicant_add_network().

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-13 16:27:22 +02:00
Kevin Darbyshire-Bryant
deef71375c dnsmasq: bump to 2.77rc3
Fix [FS#766] Intermittent SIGSEGV crash of dnsmasq-full

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-05-12 21:30:56 +02:00
Felix Fietkau
c536c50171 ar71xx: enable nand-utils in the mikrotik subtarget to ensure it makes it to initramfs
Without it, sysupgrade from initramfs to nand fails

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-12 13:29:55 +02:00
Jo-Philipp Wich
e66f17ac1e openvpn: update to v2.4.2
Update to version 2.4.2 in order to address two potential Denial-of-Service
vectors in OpenVPN.

CVE-2017-7478 - Don't assert out on receiving too-large control packets
CVE-2017-7479 - Drop packets instead of assert out if packet id rolls over

Ref: https://community.openvpn.net/openvpn/wiki/ChangesInOpenvpn24#OpenVPN2.4.2
Ref: https://community.openvpn.net/openvpn/wiki/QuarkslabAndCryptographyEngineerAudits

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-12 11:54:48 +02:00
Florian Fainelli
6704410b15 scripts: Probe external toolchains for libthread-db
libthread-db is a package that can be configured for external
toolchains, so let's have the script probe for it.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-11 13:43:01 -07:00
Florian Fainelli
08fb61d316 scripts: Probe external toolchains for libgomp
Now that libgomp can be a package, probe external toolchains for that
library.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-11 13:42:58 -07:00
Florian Fainelli
c258bc781f toolchain: Package libgomp
Some external toolchains may be configured to enable OpenMP. Provide a
package for these libraries which can be used by other packages.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-11 13:42:55 -07:00
Florian Fainelli
83814856fe fritz-tools: Find zlib.h header file
Add the necessary changes to CMakeLists.txt to search zlib.h. Fixes
build issues with external toolchains that don't have STAGING_DIR in the
default search path.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-05-11 13:42:39 -07:00
Rafał Miłecki
8adeb4e5d0 bcm53xx: backport MDIO bus clock initialization fix
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-05-11 16:04:23 +02:00
Rafał Miłecki
51abaf722c bcm53xx: backport USB 3.0 PHY patch cleaning all writes
It doesn't change any bevahior just cleanes up the code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-05-11 16:04:23 +02:00
Valentin Spreckels
6f01abf5de fritz_tffs_read: fix parsing of size argument
The parameter specification missed that -s takes an argument.

Signed-off-by: Valentin Spreckels <Valentin.Spreckels@Informatik.Uni-Oldenburg.DE>
2017-05-11 00:53:05 +02:00
Alexey Brodkin
5dc76a4258 perf: Disable perf for ARC770 only, enable for ARC HS38
Toolchain built for ARCv1 (read for ARC700 cores) by default has
disabled atomic ops (-mno-atomic). When we build Linux kernel for ARC770
which has LL/SC instructions and thus may handle normally atomic ops we
explicitly add "-matomic" in CFLAGS. But since user-space perf utility has
no way to extract CPU config options from Kconfig/defconfig it uses
compiler default settings.

In case of ARCv2 (read ARC HS38) atomics are enabled by default and so
perf builds perfectly fine thus reenabling perf for ARC HS38 (actually
for non-ARC700 targets).

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
2017-05-11 00:53:05 +02:00
Sergey Ryazanov
e06d8f0f6f build: new fixes for symlinked .config handling
When running "make {config|defconfig|oldconfig}" with symlinked .config
(e.g. to env/.config) it renames symlink to .config.old, creates new
.config file, and writes the updated configuration into it.

This breaks the desired workflow when changes in the configuration can
be checked using "scripts/env diff" and commited using "scripts/env
save". Since the env/.config file is not updated.

The things become even worse when working with feeds, since feeds script
quite often silently invokes "make {oldconfig|defconfig}" and breaks the
symlink.

Fix this issue by exporting KCONFIG_OVERWRITECONFIG=1, which forces
mconf to overwrite the .config content, instead of renaming it and
creating a new file. This variable is set only if .config is a symlink,
otherwise the variable is not exported and the old behaviour is
preserved.

This change uses the same behaviour as "make menucofig", which has
already been fixed in commit 5bf98b1acc.

Also make a tiny cosmetic update to the "make menuconfig" target code
layout to make it look like other config handling targets.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-05-11 00:53:05 +02:00
Arjen de Korte
44da45a881 dnsmasq: don't propagate DUID from one host to another
If no DUID is set for a host, it should be empty, not the last one set for a previous host.

Signed-off-by: Arjen de Korte <build+lede@de-korte.org>
2017-05-11 00:53:05 +02:00
Jo-Philipp Wich
8451b06023 ramips: fixup-mac-address: add missing include
Add missing include of ramips.sh in order to import the missing
ramips_board_name() procedure.

Fixes FS#774.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-11 00:52:03 +02:00
Ørjan Malde
5f932988c3 ramips: add support for Asus RT-AC51U
Specification:
 - SoC: MediaTek MT7620A (580 MHz)
 - RAM: 64 MiB (Winbond W9751G6JB-25)
 - Flash: 16 MiB (Spansion S25FL128SAIF00)
 - LAN: x4 100M
 - WAN: x1 100M
 - Others: USB 2.0, reset button, wps button and 9 LEDs

Issues:
 - 5 GHz band is not functional (missing driver support)

Installation:

Asus windows recovery tool:
 - install the Asus firmware restoration utility
 - unplug the router, hold the reset button while powering it on
 - release when the power LED flashes slowly
 - specify a static IP on your computer:
     IP address: 192.168.1.75;
     Subnet mask 255.255.255.0
 - Start the Asus firmware restoration utility, specify the sysupgrade
   image, and press upload

TFTP Recovery method:
 - set computer to a static ip, 192.168.1.75
 - connect computer to the LAN 1 port of the router
 - hold the reset button while powering on the router for a few seconds
 - send firmware image using a tftp client; i.e from linux:
 $ tftp
 tftp> binary
 tftp> connect 192.168.1.1
 tftp> put lede-ramips-mt7620-rt-ac51u-squashfs-sysupgrade.bin
 tftp> quit

Signed-off-by: Ørjan Malde <foxyred333@gmail.com>
2017-05-10 08:45:12 +02:00
Alexey Belyaev
a7cbf59e0e ramips: add new device ZyXEL Keenetic as kn
This device exactly same as NBG-419N but with USB port and USB Led.

Specification:

- SoC: Ralink RT3052 (MIPS24Kc) @384MHz
- RAM: 32 MiB
- Flash: 8 MiB
- WLAN: WiSoC 2T2R/300Mbps (2.4GHz)
- LAN: 4x100M
- WAN: 1x100M
- USB: 1x2.0

Installation via serial console (57600 8N1) from TFTP server
 - rename the firmware to something shorter, for example
   "sysupgrade.bin" (max. 32 chars)
 - copy firmware TFTP server's directory
 - when you power on device, and see U-Boot log, immediatly push "2"
   once.
 - You will see this message:
     2: System Load Linux Kernel then write to Flash via TFTP.
        Warning!! Erase Linux in Flash then burn new one. Are you sure?
 - Push "y", and enter: device IP, then TFTP server's IP, and then
   image firmware file name.

The firmware will be downloaded within ~30 seconds and flashed to the
device (It will take about 2 minutes).

Signed-off-by: Alexey Belyaev <spider@spider.vc>
[squash commits, compact commit message, fix compatible string, remove
superfluous pinmuxes]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-05-10 08:45:12 +02:00
Hans Dedecker
54ea0f45c8 dnsmasq: use append_interface_name when using option --interface-name
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-09 10:01:07 +02:00
Daniel Danzberger
eb99f8912a dnsmasq: add interface-name uci list.
This patch adds the interface-name option for each dhcp config
in /etc/config/dhcp.

With the interface_name option users can define a DNS name for each dhcp section
that will be resolved by dnsmasq with the underlaying interface address.

For example:
config dhcp 'lan'
	option interface 'lan'
	...
	list interface_name 'home.lan'
	...

Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [PKG_RELEASE increase]
2017-05-09 10:00:49 +02:00
Sven Roederer
4c3953ba29 ramips: use GPIO_ACTIVE macros in UBNT-ERX.dts
- reorder includes
- use GPIO_ACTIVE_LOW macro instead of hardcoded "1"

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2017-05-06 09:49:00 +02:00
Henryk Heisig
64f2efcdff ramips: strip padding from TP-Link sysupgrade images
This reduce size of sysupgrade firmware.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-05-05 20:02:19 +02:00
Henryk Heisig
cfdd3f260e ramips: add factory firmware for Tp-Link C20i/C50
TP-Link firmware doesn't accept sysupgrade.bin with metadata.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-05-05 20:01:28 +02:00
Marcin Jurkowski
063ee9d0bd brcm63xx: fix invalid Asmax AR 1004g DTS reference
Build profile for Asmax AR 1004g refers to an invalid DTS "rg100a". The
correct DTS for this device is "ar1004g".

Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
2017-05-05 19:58:49 +02:00
Mathias Kresin
92a12c434c lantiq: fix avm fritz box mac addresses
It has been shown that the Fritz boxes have the correct mac address set
in the wireless calibration data/eeeprom. Use this mac address as base
for the ethernet and xdsl interface increment/decrement the address to
match the values stored in the tffs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-05-05 19:58:49 +02:00
Daniel Golle
961c0eacea x86: fix lifting kernel CPU requirements and always enable PAE
commit 89878f60f4 x86: lift kernel minimum CPU requirement to Pentium MMX
caused kconfig havoc. Fix this and make sure PAE is enabled even on legacy
CPUs as the minimum required CPU has been Pentium MMX for a while now and
hence PAE is supported even on the x86_legacy target.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-05 15:05:30 +02:00
Felix Fietkau
ddbb036bbb build: allow val.% targets to bypass the prepare steps
Significantly reduces time spent processing those targets and should
also silence some log clutter which could confuse buildbot

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-05 13:14:00 +02:00
Jo-Philipp Wich
bf58e39b9b x86/legacy: add missing config symbol
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-05 10:20:52 +02:00
Daniel Golle
89878f60f4 x86: lift kernel minimum CPU requirement to Pentium MMX
Anything older than that isn't supported since commit f4f8f4a180,
hence also switch to Pentium MMX when building the kernel.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-05 09:53:44 +02:00
Daniel Golle
641a65fd06 x86: generic: use HIGHMEM64G instead of HIGHMEM4G
commit 4b4f739373 switched on HIGHMEM4G which implicitely disabled
PAE and hence also NX and other useful and security-relevant features.
Re-enable PAE by switching to HIGHMEM64G.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-05 09:51:17 +02:00
Daniel Golle
63571cb56c x86: keep /boot mounted for kexec
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-05 07:12:47 +02:00
Alberto Bursi
7296767639 dnsmasq: make tftp root if not existing
If there's a TFTP root directory configured, create it with mkdir -p
(which does not throw an error if the folder exists already)
before starting dnsmasq. This is useful for TFTP roots in /tmp, for example.

Originally submitted by nfw user aka Nathaniel Wesley Filardo

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-05-04 23:10:09 +02:00
Hans Dedecker
cd5cd7c859 dnsmasq: fix dhcp_option usage warning
Don't display unnecessary dhcp_option usage warning in case
dhcp_option is empty

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-05-04 22:42:49 +02:00
Daniel Golle
d17cb4a68a ramips: purge default packages on MT7621
In order to have a smaller initramfs image remove all packages not
needed on all devices and add them explicitely for those actually
needing them. Also remove wpad-mini from ramips default package set
and add it to all sub-targets except for MT7621.
While at it reorder packages alphabetically and replace kmod-mt76 with
kmod-mt7603 and/or kmod-mt76x2 depending on the chip actually used on
a specific board.

Hopefully fixes FS#758

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-05-04 14:13:23 +02:00
Matthias Schiffer
be40d0a144 sunxi: clean up modules definitions
Module definitions for kmod-wdt-sunxi and kmod-eeprom-sunxi are removed
(wdt-sunxi was builtin anyways; nvmem-sunxi, which is the new name of
eeprom-sunxi is changed to builtin). As kmod-eeprom-sunxi was specified
in DEFAULT_PACKAGES, but not available on kernel 4.4, it was breaking the
image builder.

Support for kmod-sunxi-ir is added for kernel 4.4 (it is unclear why it
was disable before, it builds fine with with kernel 4.4).

Condtionals only relevant for pre-4.4 kernels are removed from modules.mk,
as sunxi does't support older kernels anymore.

Fixes FS#755.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-05-04 07:07:18 +02:00
Paul Spooren
414b65db85 ramips: enable ramdisk for mt7621
Fixes #758

Signed-off-by: Paul Spooren <paul@spooren.de>
2017-05-04 00:51:05 +02:00
Felix Fietkau
611731a690 octeon: port missing 4.9 patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-04 00:40:15 +02:00
Yousong Zhou
6138d84243 armvirt: 64: enable usb support
It was originally only enabled for the "32" subtarget along with the
"usb" feature which is now also shared by the "64" target

This should fix the phase1 build of armvirt/64

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-03 23:20:12 +08:00
Jo-Philipp Wich
3c3f7cfe4d ipq806x: fix EA8500 switch configuration
Do not assign the CPU port twice, this confuses LuCI and possible other
programs relying on topology information in board.json.

Ref: https://github.com/openwrt/luci/issues/1086

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-03 14:15:34 +02:00
Nick Lowe
ed62d91f4b hostapd: add legacy_rates option to disable 802.11b data rates.
Setting legacy_rates to 0 disables 802.11b data rates.
Setting legacy_rates to 1 enables 802.11b data rates. (Default)

The basic_rate option and supported_rates option are filtered based on this.

The rationale for the change, stronger now than in 2014, can be found in:

https://mentor.ieee.org/802.11/dcn/14/11-14-0099-00-000m-renewing-2-4ghz-band.pptx

The balance of equities between compatibility with b clients and the
detriment to the 2.4 GHz ecosystem as a whole strongly favors disabling b
rates by default.

Signed-off-by: Nick Lowe <nick.lowe@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup, defaults change]
2017-05-03 13:58:23 +02:00
Abhilash Tuse
41feba8c4a hostapd: fix reload frequency change patch
When sta is configured, hostapd receives 'stop' and 'update' command from
wpa_supplicant. In the update command, hostapd gets sta parameters with
which it configures ap.

Problem is, with the default wireless configuration:
mode:11g freq:2.4GHz channel:1
If sta is connected to 5GHz network, then ap does not work. Ideally with
340-reload_freq_change.patch hostapd should reload the frequency changes
and start ap in 5GHz, but ap becomes invisible in the network.

This issue can be reproduced with following /etc/config/wireless:
config wifi-device  radio0
        option type     mac80211
        option channel  1
        option hwmode   11g
        option path     'virtual/uccp420/uccwlan'
        option htmode   'none'

config wifi-iface 'ap'
        option device 'radio0'
        option encryption 'none'
        option mode 'ap'
        option network 'ap'
        option ssid 'MyTestNet'
        option encryption none

config wifi-iface 'sta'
       option device radio0
       option network sta
       option mode sta
       option ssid TestNet-5G
       option encryption psk2
       option key 12345

This change updates current_mode structure based on configured hw_mode
received from wpa_supplicant. Also prepare rates table after frequency
selection.

Signed-off-by: Abhilash Tuse <Abhilash.Tuse@imgtec.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup, patch refresh]
2017-05-03 13:58:23 +02:00
Jo-Philipp Wich
65de093c18 base-files: implement ucidef_set_hostname(), ucidef_set_ntpserver()
Commit 2036ae4 (base-files: support hostname and ntp servers through board.d)
was supposed to implement these procedures but lacked the required changes
to uci-defaults.sh.

Add the missing procedures now to fix config generation on targets relying
on hostname or NTP server presetting.

Fixes FS#754.

Reported-by: Cristian Morales Vega <cristian@samknows.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-03 13:47:57 +02:00
Yousong Zhou
0c3fe281e3 opkg: alternatives: use ERROR level for symlink failure
Changes since last version

    04e279e pkg_alternatives: use ERROR level for symlink failure

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-03 17:40:47 +08:00
Yousong Zhou
cf75fb5e14 busybox: alternatives: accomodate CONFIG_BUSYBOX_CUSTOM=y
When busybox customisation is enabled, we should depend on config
symbols CONFIG_BUSYBOX_CONFIG_xxx to form alternatives specs

Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-03 17:40:47 +08:00
Yousong Zhou
7842ccecc0 build: reset ALTERNATIVES field in Package/Default
Otherwise ipkg packages may wrongly take on alternatives specs of
another package sharing the same package Makefile

Fixes FS#753

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-03 17:40:46 +08:00
John Crispin
1ff71ccd5e mediatek: fix sysupgrade on eMMC boards
Signed-off-by: John Crispin <john@phrozen.org>
2017-05-03 10:31:55 +02:00
Kevin Darbyshire-Bryant
b65c619d02 dnsmasq: bump to 2.77test5
A number of small tweaks & improvements on the way to a final release.
Most notable:

Improve DHCPv4 address-in-use check.
Remove the recently introduced RFC-6842 (Client-ids in DHCP replies)
support as it turns out some clients are getting upset.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-05-02 22:32:14 +02:00
Yousong Zhou
fa3649d97e busybox: add alternatives specs for those also provided by procps-ng
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-03 00:53:44 +08:00
Yousong Zhou
9b4c41524f iproute2: bump PKG_RELEASE
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-02 22:45:42 +08:00
Yousong Zhou
cfa5865187 iproute2: add ip-tiny, ip-full as alternatives of /sbin/ip
They will not be in conflict anymore ;)

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-02 22:42:36 +08:00
Yousong Zhou
8b1b094fef busybox: add as an alternative of /sbin/ip
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-02 22:42:36 +08:00
Yousong Zhou
fc9361e60e opkg: alternatives support
Changes since last version

    546bc72 pkg: alternatives support
    7a96972 libbb: xreadlink: fix memory leak on failure case
    3f13edd pkg_run_script: use pkg->dest in half installed case

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-02 22:42:35 +08:00
Yousong Zhou
73bc636aba build: ipkg: new field Alternatives
It's a list of specs of the following form seprated by commas to
describe alternatives provided by this package

    <prio>:<path>:<altpath>

<path> will be a symbolic link to <altpath> of the highest <prio>

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-02 22:10:51 +08:00
Yousong Zhou
dac629f710 build: cleanup tmp/ dir of target rootfs
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-05-02 22:10:50 +08:00
Felix Fietkau
60081f9a00 imx6: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-02 15:17:30 +02:00
Alexey Brodkin
491abe8c99 target/arc770: switch to 4.9 kernel
With update of ARC tools to arc-2016.09 based on GCC v6.x
we have to bump Linux kernel version so both toolchain and
the kernel use the same ARC ABIv4.

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
2017-05-02 15:17:30 +02:00
Alexey Brodkin
d73045826a target/archs38: switch to 4.9 kernel
With update of ARC tools to arc-2016.09 based on GCC v6.x
we have to bump Linux kernel version so both toolchain and
the kernel use the same ARC ABIv4.

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
2017-05-02 15:17:30 +02:00
Alexey Brodkin
34e8393019 toolchain/arc: update to the most recent release arc-2016.09
arc-2016.09 is the most recent toolchain for ARC cores and
it is based on top of upstream Binutils 2.27 and GCC 6.2.1.

With updated major version of GCC we copied all GCC 6.x patches
for ARC as well as Bintils 2.27 patches.

Note that toochain sports ARCv4 ABI and so must be used
with 4.8+ Linux kernels. Even though it will build v4.4 kernel
perfectly fine on attempt to run user-space apps they won't
work with older kernel. That said previuosly sent RFC patches with
Linux kernel update are required:
 [1] https://patchwork.ozlabs.org/patch/726686/
 [2] https://patchwork.ozlabs.org/patch/726687/

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
2017-05-02 15:17:30 +02:00
Alexey Brodkin
2b27e62e74 linux-4.9: Fix building of DWC3 module
DWC3 driver uses of_usb_get_phy_mode() which is
implemented in drivers/usb/phy/of.c and in bare minimal
configuration it might not be pulled in kernel binary.

In case of ARC or ARM this could be easily reproduced with
"allnodefconfig" +CONFIG_USB=m +CONFIG_USB_DWC3=m.

On building all ends-up with:
---------------------->8------------------
  Kernel: arch/arm/boot/Image is ready
  Kernel: arch/arm/boot/zImage is ready
  Building modules, stage 2.
  MODPOST 5 modules
ERROR: "of_usb_get_phy_mode" [drivers/usb/dwc3/dwc3.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2
---------------------->8------------------

This was affecting Lede in case of CONFIG_ALL_KMODS=y.

The patch is already scheduled for v4.12 and once it is backported to
4.9.y it must be removed from here.

Note this patch makes sense not only for ARC instead it fixes
a generic issue which may affect more arches and platforms thus
putting it in "generic/" folder.

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [patch rename]
2017-05-02 15:17:30 +02:00
Felix Fietkau
c13f943d2a perf: disable build for ARC, it is currently broken
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-02 15:17:29 +02:00
Alexandru Ardelean
3bdeaa5f0d target: mpc85xx: make kernel_menuconfig
It's the best method I know (so far) to refresh
the kernel config to a default state.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-02 14:33:59 +02:00
Alexandru Ardelean
2512741c9a target: mpc85xx: tl_wdr4900_v1: drop 'fsl_rstcr_restart' hook
Since commit:
7120438e5d

Seems that fsl_rstcr_restart() has been converted
to a reset handler and dropped as hook/callback.

Apply the same to the `tl_wdr4900_v1` target.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-02 14:33:59 +02:00
Alexandru Ardelean
e57d783185 target: mpc85xx: refresh kernel patches
Re-applied patches:
001-powerpc-85xx-add-gpio-keys-to-of-match-table.patch
100-powerpc-85xx-tl-wdr4900-v1-support.patch

Dropped patch:
200-spi-fsl-espi-preallocate-local-buffer.patch
now part of kernel upstream hash
1423877b73

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-02 14:33:59 +02:00
Alexandru Ardelean
3688b96226 target: mpc85xx: switch to kernel 4.9
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-02 14:33:58 +02:00
Bastian Köcher
5378c85677 build: remove absolute path to perl and replace with /usr/bin/env perl
Signed-off-by: Bastian Köcher <git@kchr.de>
2017-05-02 14:33:58 +02:00
Felix Fietkau
5afe9a054c kernel: allow selecting RTC drivers on targets without explicit RTC support
Keep them disabled by default to avoid pulling in extra kernel bloat

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-05-02 14:33:58 +02:00
Alexander Couzens
21c2e93e67 uboot-omap: rename patch to 101-disable-thumb-omap3.patch
It's disabling thumb for the whole omap3 family.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-30 12:19:07 +02:00
Alexander Couzens
ca8988614c uboot-omap: enable thumb for overo
Even it's unknown if it's booting with thumb, because the lack of hardware.
Enable it for now, so the build succeed, because without thumb it can not fit
into spl.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-30 12:17:30 +02:00
John Crispin
3ddc1914ba mediatek: fix mt7530 mcm reset
Early SoC versions with an ECO of 1 required the gpio reset.
Mass production SoCs no longer need this work around.

Signed-off-by: John Crispin <john@phrozen.org>
2017-04-29 09:48:35 +02:00
Hans Dedecker
c45ef702ff odhcpd: update to git HEAD version (FS#656,FS#595)
9268ca6 ndp: don't trigger IPv6 ping when neighbor entry is invalid
2b3355f ndp: fix adding proxy neighbor entries
7dff5b4 ndp: fix wrong interface name in syslog message
a54afb5 dhcpv6-ia: Fix segfault when writing DHCPv4 leases in state file
c0e9dbf ubus: don't segfault when there're no leases

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-28 21:59:29 +02:00
Hans Dedecker
9412fc2949 dnsmasq: support dhcp_option config as a list
Configuring dhcp_option as an option does not allow the usage of white
spaces in the option value; fix this by supporting dhcp_option as a list
config while still supporting the option config to maintain backwards
compatibility

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-27 22:04:29 +02:00
Jo-Philipp Wich
4b4f739373 x86: enable 4G high memory support for generic (32bit) subtarget
This is required to fully support a number of 32bit x86 systems equipped
with more than one GB ram, e.g. certain Atom CPU machines.

Ref: https://forum.lede-project.org/t/17-01-1-x86-doesnt-detect-all-of-the-ram/3295

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-27 15:19:18 +02:00
Jo-Philipp Wich
a45cde9118 ramips: ZTE-Q7: fix switch driver initialization in DTS (FS#716)
Add the changes suggested by FS#716 to fix the switch driver initialization
on the ZTE Q7.

Also remove the `pinctrl-names` field obsoleted by the changes.

Reported-by: Harry Lau <harrylwc@gmail.com>
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-27 10:44:28 +02:00
Jo-Philipp Wich
76871a8dbb busybox: nslookup_lede: mimic output format of old Busybox applet
When invoking "nslookup_lede" with a domain argument and without explicit
query type, issue both A and AAAA queries and display the resulting IP
addresses in a numbered list style, similar to how the old BusyBox nslookup
used to output the records.

This is required for compatibility with certain scripts.

Ref: https://forum.lede-project.org/t/nslookup-ipv6-in-lede-17-01-1

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-27 10:44:28 +02:00
Jo-Philipp Wich
f1e3285461 busybox: nslookup_lede: fix compatibility with v1.25
The ":*" optstring syntax was only recently introduced with BusyBox v1.26,
older versions need a corresponding hint in the "opt_complementary" variable
to denote flag values that should be stored as llist entries.

Add the required opt_complementary entry to fix random SIGBUS, SIGILL or
SIGSEGV related crashes on BusyBox 1.25.x when attempting to use the "-q"
flag of the "nslookup_lede" applet.

Ref: https://forum.lede-project.org/t/nslookup-ipv6-in-lede-17-01-1

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-27 10:44:28 +02:00
Mathias Kresin
3a2cc2c8ad ramips: fix syntax error in board.d/01_leds
Fixes the following error:

  syntax error: unexpected newline (expecting ")")

Fixes: FS#739

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-27 09:39:34 +02:00
Mathias Kresin
bd2727fb25 ramips: ZBT-WE826: include the correct dtsi
Fix a copy/paste error and include the ZBT-WE826 dtsi instead of the
ZBT-WG3526 one.

Fix the syntax error in the ZBT-WE826 dtsi to prevent an compile error.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-27 09:39:34 +02:00
Hans Dedecker
e5bbead1a8 dropbear: fix procd interface trigger install
Install procd interface triggers only for interfaces which are enabled
so dropbear instances running on (an) enabled interface(s) are not
restarted due to an interface trigger of an interface which is disabled.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-26 21:29:16 +02:00
Daniel Engberg
dca2966b77 busybox: Enable sendfile by default
Enable sendfile system call by default.
http://lists.busybox.net/pipermail/busybox-cvs/2014-November/034831.html

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-04-26 13:40:37 +02:00
Daniel Engberg
edda8ecd79 include/packages-defaults.mk: Remove LARGEFILE option
Remove LARGEFILE option, support was removed back in 2011 (OpenWrt rev 25208).

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-04-26 13:39:11 +02:00
Tim Harvey
9d91ef52c3 imx6: ventana: add GW553x board identification
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-04-26 11:52:55 +02:00
Tim Harvey
456bd95023 imx6: disable MSI interrupts
The IMX6 PCIe host controller does not fire legacy interrupts if MSI is
enabled. A patch is being worked on to enable MSI at runtime only when
it is needed but meanwhile this patch will disable MSI for the imx6 kernel.

This fixes the no interrupt issue on cards/drivers that use legacy interrupts
such as ath9k.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-26 11:52:55 +02:00
Tim Harvey
bc1e7469aa imx6: apply upstream mmc fix for DDR50 cards on UHS-I capable boards
https://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc.git/commit/?h=fixes&id=9f327845358d3dd0d8a5a7a5436b0aa5c432e757

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-04-26 11:52:55 +02:00
Sergey Ryazanov
5bf98b1acc build: fix symlinked .config handling
When running "make menuconfig" with symlinked .config (e.g. to
env/.config) it renames symlink to .config.old, creates new .config file
and writes updated configuration here.

This breaks the desired workflow when changes in the configuration could
be checked using "scripts/env diff" and commited with
"scripts/env save". Since the env/.config file is not updated.

Fix this issue by exporting KCONFIG_OVERWRITECONFIG=1, which forces
mconf to overwrite the .config content, instead of renaming it and
creating a new file. This variable is set only if .config is a symlink,
otherwise the variable is not exported and the old behaviour is
preserved.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-04-26 11:34:41 +02:00
Chris Blake
8f43ba8c48 apm821xx: Merge the Cisco Meraki MX60 & MX60W
Both of these boards share the same DTS, and hardware. The only
difference would be the PCI-E slot, and ath9k card found on the MX60W.
Due to the similarities, it would be more efficient to merge these
profiles.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-04-26 11:34:17 +02:00
Chris Blake
d1c3a9485a apm821xx: Add default packages to NAND target
This moves core router packages to the NAND target, to ensure they are
applied to all images. This change is being done due to an issue found
when flashing the MX60W image, which came without these when built as a
multi image.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-04-26 11:34:14 +02:00
Felix Fietkau
837285b832 ar71xx: fold 641-MIPS-ath79-fix-AR934x-OTP-offsets.patch into the patch that it fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-26 10:29:45 +02:00
Chris Blake
ad0c1d3a31 mac80211: Backport AR934x OTP Patch
Merged upstream in https://patchwork.kernel.org/patch/9572541/, this
patch fixes the OTP offset used by the AR934x and AR955X to properly
enable reading from the OTP.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-04-26 10:29:45 +02:00
Chris Blake
064eca14be ar71xx: Add OTP support for AR934x
The patch 523-MIPS-ath79-OTP-support only supports the OTP offsets for
AR933x chips, which has changed on newer platforms such as the AR934x.
The follwoing change is to add support for reading the OTP on the
AR934x. Tested on an Aerohive AP-121.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-04-26 10:29:45 +02:00
Rosen Penev
74f9c9c159 tools: host/include/getline.h: Remove
Seems to be useful only for old and unsupported operating systems. Removed and adjusted the mtd-utils Makefile.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-04-26 10:29:39 +02:00
Felix Fietkau
0b7ed65cec kernel: remove out of tree direct-io disable hack
Direct-IO support has to be enabled for the release build anyway, so
this hack is not worth keeping

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-26 10:27:45 +02:00
Daniel Engberg
980c41f8e0 utils/mdadm: Update to 4.0
Update mdadm to 4.0
Remove 000-compile.patch as it's fixed upstream
Refresh patches
Add mdadm.h-Undefine-dprintf-before-redefining.patch
Source: http://git.openembedded.org/openembedded-core/tree/meta/recipes-extended/mdadm/files
Add RAID 0,1 and 10 as depends to make mdadm usable.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-04-26 10:27:45 +02:00
Mathias Kresin
725238f698 ramips: use the ZBT-WE826 power LED for status indication
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-25 19:29:59 +02:00
Mathias Kresin
2ddaf96a77 ramips: add ZBT-WE826 32MB variant
The ZBT-WG826 is available with 16 or 32 MByte of flash. Split the
device tree source file, rename the currently supported 16 MByte
version and add the 32 MByte variant.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-25 19:29:59 +02:00
Mathias Kresin
3cfc909c54 ramips: rename Digineo AC1200 Pro to ZBT-WG3526 32MB
The Digineo AC1200 Pro is the 32MB flash variant of the ZBT-WG3526 with
unpopulated/exposed sdhci slot. Rename to board to the OEM/ODM name and
add the sdhci kernel module to use it for multiple clones.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-25 19:29:59 +02:00
Mathias Kresin
619d68bfc9 ramips: prepare ZBT-WG3526 for hardware variants
The ZBT-WG3526 is available with 16 or 32 MByte of flash. Rename the
current supported 16MByte version to indicate which flash size variant
is supported.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-25 19:29:59 +02:00
Jiawei Wang
ff258effd5 ramips: add support for ZBT-WE1326
Specification:
- SoC: MT7621AT, MT7603EN and MT7612EN
- Flash: 16 MiB (W25Q128FVSG)
- RAM: 512 MiB (EM6GE16EWXD-12H)
- Ethernet: 1 x WAN (10/100/1000Mbps) and 4 x LAN (10/100/1000 Mbps)
- Others: USB 2.0, micro SD slot, reset button and 8 x LEDs

Issues:
- Two LEDs for 2.4 GHz and 5 GHz Wi-Fi do not work, can't find GPIOs.
- The pwr LED is not GPIO controllable

How to install:
- The original firmware is OpenWrt, so both LuCI or sysupgrade can be used.
- Do not keep settings, for sysupgrade please use the -n option.

Signed-off-by: Jiawei Wang <buaawjw@gmail.com>
2017-04-25 19:29:59 +02:00
Alexey Belyaev
187624f759 ramips: fix ZyXEL Keenetic Omni/Omni II GPIOs
Each GPIO bank has only 24 gpios. Use and enable the correct banks for
GPIOs > 24.

Signed-off-by: Alexey Belyaev <spider@spider.vc>
2017-04-25 19:29:59 +02:00
Alexey Belyaev
3549bad814 ramips: fix ZyXEL Keenetic Omni switch config
The wan port is connected to switch port 0. Fix the mediatek,portmap as
well as the default switch config.

Signed-off-by: Alexey Belyaev <spider@spider.vc>
2017-04-25 19:29:59 +02:00
Kevin Darbyshire-Bryant
42120bd7f3 lantiq: DGN3500: make switch LEDs blink on activity
Make switch port LEDs blink on activity as they do with stock firmware.

The u-boot loader sets suitable values in the LED control register that
unfortunately get blown away by the linux switch driver init.  Restore
that value by using driver 'initvals'.  0x0431 is the led control
register, the value 0x0960. Each nybble represents each LED's mode
(LED3,2,1,0) in this case OFF, 1000LINK+Activity, 100/10LINK+Activity,
OFF.  Only LED1&2 are physically present.

Enabling the blinkenlights exposed the fact that an RRCP packet was
being emitted by the switch on all ports every second.  Further initvals
copied from stock firmware's u-boot driver disabled this 'feature'.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-04-25 19:29:59 +02:00
Kevin Darbyshire-Bryant
f4ae444f3e generic: rtl8366rb: add support for initvals from DTS
Allow per-device initvals in the DTS file for rlt8366rb
switches.

Shamelessly copies 30494598f8

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-04-25 19:29:59 +02:00
Hans Dedecker
4b195a611f netifd: return error status in reload_service
Based on a patch by Alexandru Ardelean.
netifd ubus reload call returns the actual reload error status;
return error status as well in reload_service

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-24 18:51:10 +02:00
Hans Dedecker
8e37d5b584 netifd: update to git HEAD version
11cb9cf ubus: add interface method to trigger renew event
4375d1b system-linux: allow "throw" route type
5fbd904 netifd: propagate error code on netifd_reload()
6e0acec interface-ip: fix device name for IPv6 link-local DNS server

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-24 18:50:36 +02:00
Hans Dedecker
6fd6582014 odhcpd: update to git HEAD version
570069d ubus: rework dumping IPv6 and IPv4 leases
4e579c4 dhcpv6-ia: simplify logic to write statefile and dhcpv6 logging

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-24 18:50:25 +02:00
Alexander Couzens
9b8e274e1b omap: rework image generation and profiles
Migrate to new image generation and
introduce sdcard generation (based on sunxi).
Profile now generated via image/Makefile instead
of profiles/ directory.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
23fc55e723 package/uboot-omap: add am335x_boneblack
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
a5eb9c6370 package/uboot-omap: add default uEnv to boot via mmc card
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
147e18bdbd package/uboot-omap: re-introduce patches dropped by update to v2017.01
The beagleboard doesn't boot with Thumb enabled, but without Thumb the
SPL (first stage bootloader) is too big to fit into SRAM.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
e2caa74a2f package/uboot-omap: install image to STAGING_DIR_IMAGE
to use them later by image/Makefile to create full working sdcard images

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
4ac4148cc4 package/uboot-omap: assign BUILD_DEVICES most boards
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
72fdea244f omap: correct CPU_TYPE: omaps are cortext-a8
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
d2bad25b7c omap/Kconfig: refresh by oldconfig
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
c864661d14 omap/Kconfig: add usb options
including phy and required dma options

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
a1160fa9c5 omap/Kconfig: enable SMP
the pandaboard is a multicore omap

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Alexander Couzens
59649164a3 omap/Kconfig: add omap2plus_cpufreq
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-04-24 18:03:31 +02:00
Daniel Golle
61cfc8075b mac80211: rt2x00: add incomplete support for external PA on MT7620
Do as the vendor driver does -- however, some devices apparently
patched support for external PA into the driver similar to how it was
done on Rt3352, using EEPROM_NIC_CONF1 rather than EEPROM_NIC_CONF2,
hence we check for both fields. Somehow the vendor driver also no
longer offers the option of only one of the TX paths having an external
PA (which was probably to weird to ever be implemented in practise,
though it doesn't seem like a particularly bad idea to me). Do the same
in rt2x00 and enable support for external PA on both TX paths whenever
it is set for TX0 in EEPROM.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-24 16:33:51 +02:00
Daniel Golle
3d71d1d9a9 mac80211: rt2x00: reorder patches and prepare for MT7620 external PA
Import change to make external PA capability consistent with the
vendor driver instead of having the logic inverted.
While at it, apply patches in the same order as they got merged
upstream.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-24 16:33:34 +02:00
John Crispin
da352c4623 mediatek: fix sysupgrade board detection
boardnames were changed with the recent target update. the sysupgrade board
detection was not updated properly.

Signed-off-by: John Crispin <john@phrozen.org>
2017-04-24 11:11:52 +02:00
John Crispin
003e15221a include/image.mk: allow passing a compat string to the NAND image template
Signed-off-by: John Crispin <john@phrozen.org>
2017-04-24 11:11:52 +02:00
John Crispin
a02cb1f311 mediatek: add support for the NAND-ePHY board
This is the same as the NAND board but gmac1 is wired to an external phy.

Signed-off-by: John Crispin <john@phrozen.org>
2017-04-24 11:11:52 +02:00
John Crispin
4c6ae885c5 mediatek: add DSA multi cpu port support
Signed-off-by: John Crispin <john@phrozen.org>
2017-04-24 11:11:52 +02:00
John Crispin
f3bae0fa4b mediatek: fix support for gmac1 using external PHY
Signed-off-by: John Crispin <john@phrozen.org>
2017-04-24 11:11:52 +02:00
Thomas Reifferscheid
956e31b1e4 ipq8064: fix dwc3-of-simple module unloading for Netgear R7500
Without patch unloading the dwc3-of-simple module went stuck after
successfully removing hcd.1 during the hcd.0 removal:

root@LEDE:/# rmmod dwc3-of-simple
[   21.391846] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   21.391931] usb usb4: USB disconnect, device number 1
[   21.397038] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   21.401111] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   21.406685] usb usb3: USB disconnect, device number 1
[   21.412848] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   21.417248] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   21.422521] usb usb2: USB disconnect, device number 1
followed by nothing.

Sometimes a stall CPU was detected, or a kernel panic,
or a reboot occurred after a couple of minutes.

At the same time unloading the dwc3 module followed by dwc3-of-simple
module was working repeatedly.

root@LEDE:/# rmmod dwc3
[   53.827328] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   53.827412] usb usb4: USB disconnect, device number 1
[   53.832630] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   53.836452] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   53.842314] usb usb3: USB disconnect, device number 1
[   53.848412] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   53.852542] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   53.857882] usb usb2: USB disconnect, device number 1
[   53.863956] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[   53.867875] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   53.873696] usb usb1: USB disconnect, device number 1
[   53.879742] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
root@LEDE:/# rmmod dwc3-of-simple
root@LEDE:/#

For the non-working case, the code was stuck in a readl() in
http://lxr.free-electrons.com/source/drivers/usb/host/xhci.c#L91
because
http://lxr.free-electrons.com/source/drivers/usb/dwc3/dwc3-of-simple.c#L126
was disabling the wrong clocks when removing hcd.1 (it was disabling
the clock of hcd.0). That's why the readl() went stuck when removing
hcd.0

The patch however addresses the clock assignment from the Netgear R7500
dts file and backs off the previous attempt.

Now unloading and repeated module loading is working just fine.

root@LEDE:/# rmmod dwc3-of-simple
[   24.089679] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   24.089765] usb usb4: USB disconnect, device number 1
[   24.094856] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   24.098963] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   24.104522] usb usb3: USB disconnect, device number 1
[   24.111194] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   24.115086] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   24.120396] usb usb2: USB disconnect, device number 1
[   24.126503] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[   24.130347] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   24.135948] usb usb1: USB disconnect, device number 1
[   24.142085] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
root@LEDE:/#

Fixes: dwc3-of-simple module unloading for Netgear R7500

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-04-24 09:20:23 +02:00
Thomas Reifferscheid
8db079a9ff ipq8064: Fix dwc3 module unloading
The patch follows the qualcomm code comments setting
SSUSB_CTRL_TEST_POWERDOWN to 0x1 and is testing and clearing the
bit during USB superspeed PHY init. According to Andy Gross it
needs to be BIT(26).

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
Acked-by: Andy Gross <andy.gross@linaro.org>
2017-04-24 09:19:49 +02:00
Álvaro Fernández Rojas
2db05cd199 kernel: use skb_cow_head() to deal with cloned skbs
We need to ensure there is enough headroom to push extra header,
but we also need to check if we are allowed to change headers.

skb_cow_head() is the proper helper to deal with this.

Fixes Ethernet<->WiFi bridge for Raspberry Pi and probably other devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-04-23 13:51:55 +02:00
Yousong Zhou
50fcfd4b65 scripts/qemustart: initial version
The script can be used to quickly spin up QEMU virtual machines with lan
and wan network.  Please read the initial part of the script for
instructions about how to configure host machine

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-04-23 09:19:34 +08:00
Yousong Zhou
88468f7e53 armvirt: merge arm64 as subtarget 64
Original armvirt target is now subtarget 32.  Other than that the built
result should remain the same as before

Besides old features already available with arm64, the new armvirt/64
subtarget will also have those features originally enabled for
armvirt/32 with commit 44ecfc2 ("armvirt: new target")
 - pl011, uart
 - pl031, rtc
 - pl061, gpio
 - pci-host-generic
 - virtio_{mmio,pci,net,blk,scsi,9p,console,balloon}
 - smp with NR_CPUS=4
 - cpu-hotplug
 - ext4
 - DEBUG_BUGVERBOSE for debug purposes

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-04-23 09:19:33 +08:00
Yousong Zhou
b889d1e3cf build: fix aarch64 default cpu selection
Not sure since when the issue emerged, but according to the current doc of gcc
and as, armv8-a is intended as argument of -march

The change will affect at the moment arm64 and layerscape/64b

Below is the relevant error messages when building toolchain

    Assembler messages:
    Error: unknown cpu `armv8-a'
    Error: unrecognized option -mcpu=armv8-a
    /home/yousong/git-repo/lede-project/lede/build_dir/toolchain-aarch64_armv8-a_gcc-5.4.0_musl/gcc-5.4.0/libgcc/libgcc2.c:1:0: error: unknown value 'armv8-a' for -mcpu

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-04-23 09:19:33 +08:00
Ansuel Smith
e80a041348 iptables: fix wrong depends for nftables support (FS#707)
The dep for the nftables support was wrong, if someone actually enable
that option gain a compilation error. This fix this problem.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-04-22 21:33:46 +02:00
Matthias Schiffer
96414cb407 ar71xx: fix minor syntax error in /lib/upgrade/platform.sh
Fix a '==' that should be a '=' in a test condition. Busybox fortunately
doesn't care.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-04-22 18:58:44 +02:00
Matthias Schiffer
411c1b64f0 ramips: update DEVICE_PACKAGES for Ubiquiti EdgeRouter X
Fixes removal of unneeded kernel modules with per-device rootfs.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-04-22 18:55:22 +02:00
Daniel Golle
f66e7cb30b ramips: add former board names to PSG1218 variants
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-21 14:52:46 +02:00
Jo-Philipp Wich
8ed5c6d3b1 busybox: fix build of nslookup_lede applet without IPv6 (#728)
Protect any IPv6 related with appropriate guards to fix compilation with
disabled IPv6 support in Busybox.

Fixes #728.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-21 13:20:24 +02:00
Kevin Darbyshire-Bryant
e1d433b293 lantiq: improve DGN3500 LED definitions
Add red:internet led on gpio 30 previously claimed as missing.
Wifi led was claimed as blue however there are no blue leds on the
board at all.  Actually there are two wifi leds, green & amber so add
definitions for those.  Make the newly discovered green wifi led gpio
14 the default.

There is no amber power led on this board. The mention of the amber
power led in the manual means power red and power green at the same
time.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
[removed unnecessary aliases, add migration script]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-21 07:50:55 +02:00
Mathias Kresin
18618695ae ramips: dont replace the board name
Use fixed led names and add each board variant instead of manipulating
the board name.

It makes the ramips board name function less different to the one used
in other targets and allows to merge them with a common function.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-21 07:47:59 +02:00
Mathias Kresin
9e468f7829 ramips: add former used board names to metadata
We need to keep the former used (unmodified) boardname in the metadata.
Otherwise an upgrade from an board using the old boardname will be
refused.

Fixes: a75ce960ac ("ramips: use different board names for variants")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-21 07:47:59 +02:00
Daniel Golle
c6fe325587 ramips: rename PSG1218 to match label
Fix previous commit to be less ambigous:
PSG1218 rev.A = 5 ports, external PA, heatsinks
PSG1218 rev.B = 4 ports, internal PA, no heatsinks

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-21 02:55:36 +02:00
Daniel Golle
c5a7dc49d1 ramips: split Phicomm PSG1218 and PSG1218K2C
PSG1218 got only 4 Ethernet ports and WAN on port 3 while
PSG1218K2C got 5 Ethernet ports and WAN on port 4
Switch to use kmod-kt76x2 instead of kmod-mt76 for both devices while
at it.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-21 02:29:21 +02:00
Rafał Miłecki
23d7c4d632 bcm53xx: enable Northstar thermal driver
It allows monitoring CPU temp and will shutdown system on critical
value.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-04-20 22:45:05 +02:00
Rafał Miłecki
b0fcb9b85c bcm53xx: backport DT patches for serial, thermal and MDIO
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-04-20 22:45:05 +02:00
Mathias Kresin
226e194335 generic: mtd: backport mx25u25635f stateless 4b support
Use the stateless 4-byte op codes for this flash chip to fix reboot
hangs on SoCs expecting the flash chip in 3-byte mode.

Fixes: FS#179

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-19 21:00:52 +02:00
Tomislav Požega
e209988a17 mac80211: rt2800: fix mt7620 E2 channel registers
update RF register 47 and 54 values according to vendor driver

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: moved changes into a separate patch]
2017-04-18 12:00:51 +02:00
Tomislav Požega
d2f864f7bf mac80211: rt2800: fix mt7620 vco calibration registers
Use register values from init LNA function instead of the ones from
restore LNA function. Apply register values based on rx path
configuration.

Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: moved changes into a separate patch]
2017-04-18 11:24:58 +02:00
Felix Fietkau
00b32b8326 mac80211: fix kconfig recursive dependency warning
Make brcmfmac depend on !TARGET_uml.
Technically, brcmfmac could be built for uml because only SDIO support
won't work on that target. However, selectively avoiding the dependency
propagation of !TARGET_uml from kmod-mmc to avoid including a reference
to BRCMFMAC_SDIO doesn't work.

In practice, brcmfmac is completely useless on uml, so let's just
disable it there.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-18 09:45:18 +02:00
Daniel Golle
97d1c49cac mac80211: rt2x00: fix MT7620 LNA gain and VCO-after-ALC
This should fix issues with bad RX as well as AP not coming up and/or
scanning failing.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-17 21:38:32 +02:00
Bastian Bittorf
56457dbcb7 dnsmasq: fix uninitialized varname in init-script
minor/cosmetic: fixes the following misleading message:

root@box:~ /etc/init.d/dnsmasq restart
sh: out of range

Signed-off-by: Bastian Bittorf <bb@npl.de>
2017-04-17 13:10:31 +02:00
Felix Fietkau
047695a029 Revert "mvebu: remove linux 4.4 support"
This reverts commit 51397d7d95.
There are some unresolved random crashes on WRT1900AC v1 that still need
to be sorted out

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-17 08:44:37 +02:00
Jo-Philipp Wich
aefa195749 kernel: update kernel 4.4 to 4.4.61
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-15 18:26:41 +02:00
Rafał Miłecki
da529d5410 brcm2708: disable CONFIG_BCM2835_THERMAL by default
This fixes:
  Thermal sensors on bcm2835 SoC (BCM2835_THERMAL) [N/m/y/?] (NEW) aborted!

This symbol depends on ARCH_BCM2835 so it should be OK to disable it at
brcm2708 target only.

Fixes: 7d32caa61fb0 ("brcm2708: backport upstream sdhost controller driver")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-04-15 08:24:42 +02:00
Rafał Miłecki
74b69ffea7 kernel: backport Broadcom thermal drivers
This includes driver for Northstar and for Raspberry Pi.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-04-14 22:57:47 +02:00
Mathias Kresin
8322dba029 ramips: really drop the rt-n56u factory image
Remove the stale reference to the factory image.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-13 19:22:23 +02:00
Mathias Kresin
e20965811d ar71xx: fix ath9k default LED changes fallout
Since 192f0a3db8 ("ath9k: unset the default LED pin if used by
platform leds") the default ath9k wireless LED is not set as soon as
any pin of the ath ath9k gpio controller is used.

All touched boards have leds defined which are using the gpio pins
exposed by the ath9k driver but rely on a default set wireless led
trigger.

Add the wireless leds were missing and setup the wireless phy trigger
in userspace.

Signed-off-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-13 08:18:57 +02:00
Mathias Kresin
ae0facdf1d ramips: fix Netgear R6220 package selection
The Netgear R6220 requires the kmod-usb3 package and misses
kmod-usb-ledtrig-usbport package to setup the configured usb led
trigger.

Drop the already target selected kmod-mt76.

Fixes: FS#686

Fixes: 38bee61dab ("ramips: add support for Netgear R6220")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-13 08:18:57 +02:00
Mathias Kresin
b4be4617b5 ramips: add RP-N53 pcie wireless eeprom
Fix the PCIe 5GHz wireless by using the on flash eeprom/caldata.
Disable the 2.4GHz band as this band has no antennas attached but is
enabled in the eeprom/caldata.

Fixes: FS#691

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-13 08:18:57 +02:00
Mathias Kresin
21abb7492c ramips: fix WHR-600D eeprom dt property
Fix the PCIe 5GHz wireless by using the ralink mtd-eeprom property as
this board have a RT5592 and uses the rt2x00 driver. The mediathek
device tree bindings do not work here.

Fixes: FS#691

Fixes: d8dd207ea6 ("ramips: use the ralink,mtd-eeprom device tree property")
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-13 08:18:57 +02:00
Mathias Kresin
1b5ae14162 ramips: drop rt-n56u factory image
The factory image has an uImage header covering the entire image and
not only the kernel. The original uImage header which covers only the
kernel is appended to the end of the image.

During LEDE boot the uImage rootfs splitter skips the whole filesystem,
can't find a valid filesystem magic and panics.

The last known working version was OpenWrt 14.07, which simply kept on
searching for an uImage header if the first found didn't resulted into
a working rootfs. This behaviour is kind of error prone since it could
produce false positives.

Since the sysupgrade image works fine in combination with the tftp
recovery for doing the initial installation of LEDE, simply drop the
factory image.

Related: FS#462

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-13 08:18:57 +02:00
Florian Fainelli
7ae58bebc8 busybox: Move libresolv detection to LEDE Makefile
Since the LEDE nslookup applet is already specific to LEDE, move the
libresolv detection into the busybox Makefile that LEDE uses.

This fixes builds with external toolchains that don't automatically
search for headers and/or libraries without being told so.

Fixes: de5b8e5d2f ("busybox: add musl compatible nslookup replacement")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-04-12 09:12:18 -07:00
Jonas Gorski
7d4147d869 mac80211: add rt2x00 debug symbols to PKG_CONFIG_DEPENDS
Chaning these symbols require a recompilation of the modules, so make the
system aware of it.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-04-12 12:48:35 +02:00
Jonas Gorski
5ba8185866 mac80211: manually apply dependencies to prevent a recoursive one
Apply the !UML dependency to both the symbol and the DEPENDS so there is
no recursive dependency anymore.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-04-12 12:48:35 +02:00
Koen Vandeputte
06997d2635 cns3xxx: enable mpcore watchdog
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:13:16 +02:00
Koen Vandeputte
84acff2865 cns3xxx: fix mpcore watchdog
The original implementation loaded the count register with (wrong) semi-
random values due to its implemenation nature.

If the wrongly calulated value was below the kickrate,
the WD was triggered and rebooted the system.

Rework this, partly based on upstream patches, to dynamically fetch the
current clockrate and calculate the proper offset for the WD countdown
register.

Before:

[  143.800000] count val: 27219720
[  148.820000] count val: 50623201
[  153.830000] count val: 96425250
[  158.830000] count val: 89735401
[  163.840000] count val: 4756110

After:

[    0.700000] MPCore WD init. clockrate: 299984500 prescaler: 256
countrate: 1171814 timeout: 60s
[  358.530000] count val: 35154751
[  363.540000] count val: 35154750
[  368.540000] count val: 35154751
[  373.550000] count val: 35154750

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:13:15 +02:00
Koen Vandeputte
6f8a552796 cns3xxx: refresh kernel config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:13:15 +02:00
Koen Vandeputte
2611f67423 cns3xxx: remove linux 4.4 support
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:12:49 +02:00
Alif M. Ahmad
ffd055d5bb grub2: update to 2.02~rc2
Update to version 2.02~rc2.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-04-12 11:24:57 +02:00
Matthias Fritzsche
796629207b mac80211: conistent wireless.wiki.kernel.org
Change all the URLs to wireless.wiki.kernel.org to have
the same protocol, domain and path.

Signed-off-by: Matthias Fritzsche <txt.file@txtfile.eu>
2017-04-12 10:57:54 +02:00
Felix Fietkau
5e2d15b4a6 iptables: set ABI_VERSION to force rebuild of dependent packages
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-12 10:51:36 +02:00
Ansuel Smith
98e43b13a7 iptables: bump to 1.6.1
Switch to git repo
Removed musl patch
Refreshed existing patch

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup]
2017-04-12 10:51:29 +02:00
Hauke Mehrtens
efb22b6f06 binutils: fix build with host gcc < 4.9
binutils 2.27 checks if the target compiler supports -Wstack-
usage=262144, and also uses this setting for the host compiler. If the
host compiler is gcc < 4.9 binutils build will fail. This backports 2
commits which are fixing this problem for binutils 2.28.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-04-12 09:54:39 +02:00
Alexandru Ardelean
6713694fe4 base-files: use restart if no reload hook for service
This was also working before, with a slightly
different semantic.

[ Original semantic ]
If no reload hooks was implemented, the default one would
kick in, it would return fail, and restart would happen.

This would happen also in the case where a reload hook
would be implemented, it would fail, and it would restart
the service.

[ New semantic ]
The default reload hook calls restart.
Services can implement their own reload.

If reload fails, then the '/etc/init.d/<service> reload'
would return a non-zero code, and the caller can choose
a way to handle this.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-04-12 09:54:21 +02:00
Pavel Kubelun
a124f0739b ath10k-firmware: update to latest version
Kvalo's repo has a newer version of qca9984 firmware. Use it instead.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-04-12 09:53:41 +02:00
Felix Fietkau
b044bd5921 build: remove package makefile overlay functionality
Recent attempts to use it have shown that it does not work properly
except for a few undocumented cases. It's better to remove this now to
avoid having more people fall into the same trap

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-12 09:53:06 +02:00
Felix Fietkau
a7f8564b0f openvpn: add myself as maintainer
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-12 09:52:59 +02:00
Daniel Engberg
210e96d4cf OpenVPN: Update to 2.4.1
Update OpenVPN to 2.4.1
Remove 200-small_build_enable_occ.patch as it's included upstream.
Refresh patches
Add mirror and switch to HTTPS

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-04-12 09:52:57 +02:00
Felix Fietkau
2c6b8e4631 arm64: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-12 09:52:14 +02:00
Christian Lamparter
cead8f9dfd apm821xx: remove 4.4 kernel support
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-04-12 09:51:47 +02:00
Felix Fietkau
51397d7d95 mvebu: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-12 09:51:34 +02:00
Florian Fainelli
fc28830b6f arm64: Switch to 4.9 kernel
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-04-11 15:17:09 -07:00
Florian Fainelli
c47a769a30 kernel: Add various arm64-related symbols
In preparation for bumping arm64 to 4.9, add a bunch of configuration
symbols that are available under arm64.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-04-11 15:17:08 -07:00
Florian Fainelli
b48682157c arm64: Update README
Drop sample command line to use against the ARM Foundation v8 model and
replace the path to something that matches LEDE's directory structure.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-04-11 15:17:08 -07:00
Florian Fainelli
b319e304c8 arm64: Remove Vexpress Foundation support
This required us to both download the Foundation emulator but also build
a boot wrapper. QEMU is now fully usable and is a much better
replacement.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-04-11 12:11:25 -07:00
Jo-Philipp Wich
de5b8e5d2f busybox: add musl compatible nslookup replacement
Add an alternative nslookup applet implementation which is compatible with
musl libc wrt. name server selection and which supports a number of additional
features such as query type selection.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-10 13:19:54 +02:00
Jonas Gorski
ac388ad83a kernel: make kmod-mmc unavailable on UML
MMC requires IOMEM support, which UML doesn't have.

Fixes mac80211 build, as mwifiex-sdio depends on MMC support.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-04-10 11:23:51 +02:00
Hans Dedecker
fc859fb44b iproute2: add libgenl.h and ll_map.h to InstallDev section
Commit f4e312ddf8 adds libnetlink to
staging dir but did not add the header files libgenl.h and ll_map.h
which define functions belonging to libnetlink lib

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-08 20:53:44 +02:00
Daniel Golle
1c42598b7d dnsmasq: peacefully coexist with ISC DHCPd
Similar to odhcpd, allow using ISC DHCPd instead of dnsmasq.
Disable DHCP and/or DHCP6 in case ISC DHCP is present and
enabled.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-04-08 17:11:54 +02:00
Mathias Kresin
4a4c00e7c4 ath9k: drop obsolete patch
Now that the wireless LEDs are added via platform leds this patch isn't
required any longer.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
1f5ea4eae4 ar71xx: add correct named default wireless led by using platform leds
Instead of renaming the default wireless led attached to the wireless
chip, add a new led using the platform leds with the phy0tpt trigger
set in userspace.

When switching ar71xx to device tree, the same can be done by using the
build in GPIO controller and without adding new bindings.

Drop the now unused platform code.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
b06559e5b7 ath9k: ignore led_pin if ath9k GPIO controller is used with DT
Don't setup the default led pin if the ath9k GPIO controller is used
via device tree to prevent collision. In case any of the pins exposed
by the ath9k is used, the phyNtpt trigger needs to be set in userspace.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
20b45df7eb ath9k: enable GPIO chip only if requested via DT
In case that the atheros device tree binding is used, enable access to
the GPIO chip only if the gpio-controller device tree parameter is used
for the ath9k node.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
192f0a3db8 ath9k: unset the default LED pin if used by platform leds
Unset the default LED gpio pin if the same gpio pin is used by a LED
defined via platform LED. This prevents that the default led trigger
gets assigned to this LED and the GPIO value gets changed on
wifi up/down in case the led is not used for signaling the wifi state.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
af9afa2811 lantiq: drop tffs patches
With the fritz-tools a userspace parser for the Tiny Flash File System
is available and makes the tffs2 kernel patches obsolete.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
8b3fa168b4 firmware: rework fritz-tools package
Split the fritz-tools into subpackages. fritz_tffs_read is usefull for
all Fritz boards where fritz-cal_extract is only required for the
Fritz 4040 at the moment.

Rename the tffs related binary to the more catchy name fritz_tffs and
move the whole package to utilities since the package doesn't really
provide a firmware file.

Make the fritz-tools available for all targets and build them shared.
The tffs is used by avm on lantiq and ar71xx as well.

Tested-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Mathias Kresin
136718a3d9 kernel: update MIPS pci fix to the accepted version
Fix the list order instead of adjusting the controller scan order.
Revert the former required changes to the lantiq PCIe driver.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-04-08 14:30:00 +02:00
Jo-Philipp Wich
813efe57e4 mdadm: extend uci config support
Extend the mdadm package to allow to explicitely configure arrays as
well as device list entries.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-08 14:20:19 +02:00
Jo-Philipp Wich
1449b52f02 opkg: backport upstream fixes, code cleanups
Update to latest Git in order to import the following fixes:

1d0263b check_data_file_clashes_change: remove duplicated offline root in paths
a00a6a9 buildReplaces: do not add duplicated replacees
9fbedd8 opkg: compare-versions doesn't need any state
45b54f6 opkg_cmd: fix segmentation fault in opkg_compare_versions_cmd()
93de62b opkg_cmd: fix return of opkg compare-versions
51275a8 pkg_src_list_push: remove unused function
947d3d4 pkg_src_list_pop: remove unused function
980cfb2 str_list_push: remove unused function
52c31c1 str_list_prev: remove unused function
7d24212 str_list_last: remove unused function
48142a3 conffile_list_pop: remove unused function
46c5de5 pkg_dest_list_push: remove unused functions
368bb62 nv_pair_list_prev: remove unused function
2985c00 nv_pair_list_last: remove unused function
f5082ac conffile_list_pop: remove unused function
89bf8b9 conffile_list_push: remove unused function
23d31fb active_list_sort: remove unused function
7fe45f2 active_list_add_depend: remove unused function
86b584d pkg_dependence_satisfied: remove unused function
816d330 Fix typo in pkg_hash_fetch_best_installation_candidate.
07f3b02 set_flags_from_control: remove function

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-04-08 14:20:19 +02:00
John Crispin
64175ffb79 mediatek: various fixes for v4.9
* adds MT7530 DSA support
* backport latest ethernet driver
* add PMIC leds
* add auxadc support
* add efuse support
* add thermal sensor support
* add irq affinity support for ethernet

still todo
* DSA multi cpu support

Signed-off-by: John Crispin <john@phrozen.org>
2017-04-07 17:42:08 +02:00
Philip Prindeville
43d06ec2c7 kernel: add thermal monitor for nct6775/6776
Support for the nct6775/6776 hwmon chips, and other compatibles
in the family as well as the Intel on-chip thermal sensors.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-04-07 17:41:21 +02:00
Felix Fietkau
8b8ce566d9 uboot-ar71xx: fix build error
The HOSTCFLAGS override only works on newer u-boot versions

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-06 16:25:08 +02:00
Felix Fietkau
9613d97b29 mt76: ensure that the metapackage gets built as .ipk
Fixes errors during the image builder run

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-05 23:39:03 +02:00
Felix Fietkau
3169a6a7ad busybox: fix installation of cron and ntpd scripts in the default config
Fixes: 0b24850e97 ("busybox: don't install NTP scripts if NTP isn't configured")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-04 15:06:14 +02:00
Rafał Miłecki
f6433eede7 kernel: move initramfs's init script out of base-files
Keeping it in base-files was resulting in adding it to the base-files
package. This file is meant to be included manually for initramfs
images only.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-04-04 14:06:40 +02:00
Felix Fietkau
68139cc0e8 u-boot.mk: pass HOSTCC and HOST_CFLAGS into the build
Cuts build time on Mac OS X in half by avoiding repeated $(shell) calls
from the build system

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-04 12:34:23 +02:00
Philip Prindeville
d3bc11857a target.mk: check that CPU_TYPE has known CPU_CFLAGS mapping
If someone creates a target and indicates a CPU_TYPE, but there's
no corresponding support for that CPU_TYPE's flags in include/target.mk
then that should probably be indicated rather than silently ignored.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-04-04 12:34:13 +02:00
Changmin Jang
a1afee24a6 ath10k-firmware: update the qca988x firmware to 10.2.4-1.0-00029
update the qca988x firmware to firmware-5.bin_10.2.4-1.0-00029.
According to LEDE Forum, the new firmware supports mesh mode.
Also, it seems to have several improvements.

Signed-off-by: Changmin Jang <ckdalsdk12@gmail.com>
2017-04-04 12:33:44 +02:00
Felix Fietkau
2fd1503378 scripts/download.pl: fix error message on hash mismatch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-04 12:33:37 +02:00
Felix Fietkau
2526d150dc uboot-lantiq: fix build error on mac os x
asm/* includes are not safe for the host build

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-04 12:33:34 +02:00
Felix Fietkau
cffeb31107 mac80211: backport an upstream fix for queue start/stop handling
Fixes issues with 802.11s

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-03 15:12:06 +02:00
Piotr Dymacz
190db43615 ar71xx: tp-link.mk: always include device version in image and DEVICE_TITLE
There are currently several supported TP-Link devices without specified
version number in image name and/or DEVICE_TITLE (e.g. WBS210, WBS510,
TL-WR810N, TL-WA7510N, TL-WPA8630), but vendor website shows that there
are already more than one version of them on the market.

For devices like Archer C5, which second version is based on a total
different platform, missing version number in DEVICE_TITLE (used in
menuconfig) might be misleading for users.

To make it less confusing for users and easier to maintain in future,
include version number in image name and DEVICE_TITLE for all TP-Link
devices, even if there is only one version of device at the moment.

Also, keep DEVICE_TITLE in same format for all TP-Link devices.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Acked-by: John Crispin <john@phrozen.org>
2017-04-03 12:29:07 +02:00
Ron Angeles
156d9255f2 ar71xx: add userspace support for Mikrotik RB2011iL
Kernel/hardware support for this board has been implemented since
Chaos Calmer. This set of patches is to get the board identified in
userland. This will allow support for things like sysupgrade,
configuring initial LED state, configuring initial switch state, etc.

Signed-off-by: Ron Angeles <ronangeles@gmail.com>
2017-04-03 12:29:07 +02:00
Vittorio Gambaletta
539e2a78f0 ar71xx: add TP-LINK TL-WR841N/ND v12 image
This router has the same hardware as TP-LINK TL-WR841N/ND v11 (same FCC
ID, same TFTP image name...).

If the stock firmware web interface doesn't accept LEDE factory image,
it can be flashed via the U-Boot TFTP recovery mode, by long-pressing
the reset button after power on.

The TFTP image name is wr841nv11_tp_recovery.bin (yes, v11, not v12).

Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
2017-04-03 12:29:07 +02:00
Hans Dedecker
20e40db524 netifd: fix fw3 warnings in dhcp script
Fix fw3 warnings in dhcp script in case fw3 is not enabled

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-03 10:36:21 +02:00
Felix Fietkau
6411a12de2 build: move PKG_CONFIG_DEPENDS from feeds.mk to opkg
Normal packages don't rely on the feed configuration variables for the
build step

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-04-03 08:51:33 +02:00
Philip Prindeville
7fe5963be0 build: allow specifying flow-control to grub on serial console
On the more sophisticated (i.e. deeper FIFO) serial controllers,
flow-control might be needed to avoid dropping output.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-04-03 08:51:02 +02:00
Philip Prindeville
dfacdc6a99 kexec-tools: get kexec running on MUSL and x86 hardware
Couple of important upstream patches (slated for 2.0.15) that
are necessary for kexec to run on MUSL and on x86 hardware.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-04-03 08:50:57 +02:00
Philip Prindeville
0b24850e97 busybox: don't install NTP scripts if NTP isn't configured
If you're using Chrony or NTPD you don't want the busybox NTP server
as well.  Make it's installation truly conditional.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [simplify]
2017-04-03 08:49:16 +02:00
Ye Tao
7a5257654c modules: Add kmod-igbvf kernel module for Intel(R) 82576 Virtual Function Ethernet adapters
Intel(R) 82576 is an adapter which supports SR-IOV. Thus the host can
assign Virtual Functions (VFs) to different VMs by the PCI-E Passthrough
(e.g. VFIO for KVM), to gain different advantages (performance, VF to VF
communications, host kernel offload, etc.).

The driver of the passthroughed VFs is the igbvf (igb is NOT
compatible).

This is essential for VM guests, to enable them to utilize this feature.

Signed-off-by: Ye Tao <tydus@hongo.wide.ad.jp>
2017-04-03 08:48:12 +02:00
Hauke Mehrtens
c3778f2647 kernel: update kernel 4.4 to 4.4.59
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-04-02 12:48:00 +02:00
Hauke Mehrtens
b26e34214c kernel: update kernel 4.9 to 4.9.20
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-04-02 12:47:55 +02:00
John Crispin
97e6b67291 kernel: fix ubi auto attach logging
The patch is missing a trailing new line

Signed-off-by: John Crispin <john@phrozen.org>
2017-04-02 07:51:33 +02:00
Hans Dedecker
15ca327954 odhcpd: update to git HEAD version (FS#635)
3d9f406 rework IPv6 dns address selection (FS#635)
bc6c3ac ndp: keep an exact copy of IPv6 interface addresses
6eb1e01 ndp: code cleanup
eea7d03 rework IPv6 address dump logic
24d21c7 ndp: add syslog debug tracing

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-04-01 14:00:46 +02:00
Daniel Golle
399d5cf532 mac80211: rt2x00: import upstream changes and rebase our patches
Some of our local patches have been accepted upstream. And there are
some more relevant changes (mostly for rt2800usb). Import them and
rebase our remaining local patches on top.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-03-30 18:31:02 +02:00
Christian Mehlis
dc4eae7a8c ar71xx: Compex WPJ563 support
Specification:
- SoC: Qualcomm Atheros QCA9563 (775 MHz, MIPS 74Kc)
- RAM: 128 MiB
- Storage: 16MB NOR flash
- Wireless: Built into QCA9563 (Dragonfly), PHY modes b/g/n, 3x3 MIMO
- Ethernet: 2x1G

Tested and working:
- ethernet / switch / lan / wan
- 2.4GHz SoC wifi
- PCIe
- leds
- buzzer

Ramload:
- tftpboot 0x84000000 lede-ar71xx-generic-wpj563-16M-initramfs-uImage.bin
- bootm 0x84000000

Install:
- tftpboot 0x80500000 lede-ar71xx-generic-wpj563-16M-squashfs-sysupgrade.bin
- erase 0x9f030000 +$filesize
- erase 0x9f680000 +1
- cp.b $fileaddr 0x9f030000 $filesize

Erasing 0x9f680000 is required because uboot defines
"bootcmd=bootm 0x9f680000 || bootm 0x9f030000", so it first tries to boot
the higher address. I think the 16 mb flash are intended to be used as
8+8mb for a fallback image. In my hardware only the lower address has a
bootable image. But to make sure future hardware will boot lede too, I
erase one block, so uboot will skip this address.

Signed-off-by: Christian Mehlis <christian@m3hlis.de>
2017-03-30 09:57:22 +02:00
Vittorio Gambaletta
967b6be118 ar8327: Add workarounds for AR8337 switch.
RGMII RX delay setting needs to be always specified for AR8337 to
avoid port 5 RX hang on high traffic / flood conditions.

Also, the HOL registers that set per-port and per-packet-priority
buffer sizes are updated with the reduced values suggested by the
QCA switch team.

Finally, AR8327 reserved register fixups are disabled for the AR8337.

This patch is adapted from the Code Aurora QSDK, but with magic
values mapped to proper defines.

Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
2017-03-30 09:48:52 +02:00
Karl Vogel
5d4aecee3e dnsmasq: use logical interface name for dhcp relay config
The relay section should use the logical interface name and
not the linux network device name directly. This to be
consistent with other sections of the dnsmasq config where
'interface' means the logical interface.

Signed-off-by: Karl Vogel <karl.vogel@gmail.com>
2017-03-29 21:04:35 +02:00
John Crispin
95c333a3b5 ar71xx: drop default CONSOLE values
Compex boards dont need to set these as they are default.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-29 09:22:46 +02:00
John Crispin
4f5776932b fstools: update to latest git HEAD
20c16fc cmake: Make blockd link against libjson-c
92b4c2c libfstools: add basic documentation of mount functions

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-29 09:19:59 +02:00
Christian Mehlis
be11ce8f26 ar71xx: move Compex WPJ342 to generic build target
Signed-off-by: Christian Mehlis <christian@m3hlis.de>
2017-03-29 09:04:08 +02:00
Christian Mehlis
0af487033e ar71xx: move Compex WPJ344 to generic build target
Signed-off-by: Christian Mehlis <christian@m3hlis.de>
2017-03-29 09:04:08 +02:00
Christian Mehlis
f5ece7326a ar71xx: move Compex WPJ531 to generic build target
Signed-off-by: Christian Mehlis <christian@m3hlis.de>
2017-03-29 09:04:08 +02:00
Christian Mehlis
f940fe8964 ar71xx: move Compex WPJ558 to generic build target
Signed-off-by: Christian Mehlis <christian@m3hlis.de>
2017-03-29 09:04:08 +02:00
Philip Prindeville
513dff3cca kernel: add w83627hf-wdt watchdog timer module
This is a 3rd party chipset which is not present on all Intel
reference designs, so make it a module rather than baked in (this
will also alleviate conflicts with drivers which also detect some
of the same chipsets).

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-03-29 08:21:09 +02:00
Philip Prindeville
22ee675f04 kernel: kmod packaging for Intel 10G ethernet ixgbe driver
A lot of Ivybridge and Haswell servers have the 82598/82599 Ethernet
controllers.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2017-03-29 08:00:14 +02:00
Yousong Zhou
8fb39f1682 firewall: document rules for IPSec ESP/ISAKMP with 'name' option
These are recommended practices by REC-22 and REC-24 of RFC6092:
"Recommended Simple Security Capabilities in Customer Premises Equipment
(CPE) for Providing Residential IPv6 Internet Service"

Fixes FS#640

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-28 17:43:58 +08:00
Thomas Reifferscheid
17f60b1cd2 ipq8064: fix dwc3-of-simple module unloading
Without patch unloading the dwc3-of-simple module went stuck after
successfully removing hcd.1 during the hcd.0 removal:

root@LEDE:/# rmmod dwc3-of-simple
[   21.391846] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   21.391931] usb usb4: USB disconnect, device number 1
[   21.397038] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   21.401111] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   21.406685] usb usb3: USB disconnect, device number 1
[   21.412848] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   21.417248] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   21.422521] usb usb2: USB disconnect, device number 1
followed by nothing.

Sometimes a stall CPU was detected, or a kernel panic,
or a reboot occurred after a couple of minutes.

At the same time unloading the dwc3 module followed by dwc3-of-simple
module was working repeatedly.

root@LEDE:/# rmmod dwc3
[   53.827328] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   53.827412] usb usb4: USB disconnect, device number 1
[   53.832630] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   53.836452] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   53.842314] usb usb3: USB disconnect, device number 1
[   53.848412] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   53.852542] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   53.857882] usb usb2: USB disconnect, device number 1
[   53.863956] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[   53.867875] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   53.873696] usb usb1: USB disconnect, device number 1
[   53.879742] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
root@LEDE:/# rmmod dwc3-of-simple
root@LEDE:/#

For the non-working case, the code was stuck in a readl() in
http://lxr.free-electrons.com/source/drivers/usb/host/xhci.c#L91
because
http://lxr.free-electrons.com/source/drivers/usb/dwc3/dwc3-of-simple.c#L126
was disabling the wrong clocks when removing hcd.1 (it was disabling
the clock of hcd.0). That's why the readl() went stuck when removing
hcd.0

The patch however addresses the clock assignment from the .dtsi
file. Most probably it went into openwrt here:
https://dev.openwrt.org/browser/trunk/target/linux/ipq806x/patches-3.18/101-ARM-qcom-add-USB-nodes-to-ipq806x-ap148.patch?rev=45261
copied from Qualcomms attempt here: https://lkml.org/lkml/2015/11/20/116

Now unloading and repeated module loading is working just fine,
no matter if you'd remove dwc3-of-simple or dwc3.

root@LEDE:/# rmmod dwc3-of-simple
[   24.089679] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   24.089765] usb usb4: USB disconnect, device number 1
[   24.094856] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   24.098963] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   24.104522] usb usb3: USB disconnect, device number 1
[   24.111194] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   24.115086] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   24.120396] usb usb2: USB disconnect, device number 1
[   24.126503] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[   24.130347] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   24.135948] usb usb1: USB disconnect, device number 1
[   24.142085] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
root@LEDE:/#

Fixes: dwc3-of-simple module unloading

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-03-28 09:03:55 +02:00
Thomas Reifferscheid
c75f059b0c ipq8064: Fix dwc3 module unloading
Allow module unloading by fixing a mistake.
qcom_dwc3_phy_write_readback() is expecting (phy, offset, mask, value)
while the mistake was calling it with       (phy, offset, value, mask)

The patch is swapping value and mask.

Without the patch unloading the dwc3 module was showing a
write to QSCRATCH failed and repeated module loading was
failing:

root@LEDE:/# rmmod dwc3
[   19.167998] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   19.168084] usb usb4: USB disconnect, device number 1
[   19.173371] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   19.177134] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   19.182960] usb usb3: USB disconnect, device number 1
[   19.189023] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   19.192989] qcom-dwc3-usb-phy 110f8830.phy: write: 8000000 to QSCRATCH: 0 FAILED
[   19.199064] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   19.205912] usb usb2: USB disconnect, device number 1
[   19.211611] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[   19.215905] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   19.221751] usb usb1: USB disconnect, device number 1
[   19.227307] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
[   19.231795] qcom-dwc3-usb-phy 100f8830.phy: write: 8000000 to QSCRATCH: 0 FAILED
root@LEDE:/# modprobe dwc3
[   29.583343] phy phy-100f8830.phy.4: phy init failed --> -110
[   29.583399] dwc3 10000000.dwc3: failed to initialize core
[   29.588169] dwc3: probe of 10000000.dwc3 failed with error -110
[   29.652943] phy phy-110f8830.phy.2: phy init failed --> -110
[   29.652988] dwc3 11000000.dwc3: failed to initialize core
[   29.657735] dwc3: probe of 11000000.dwc3 failed with error -110
root@LEDE:/#

With patch repeated module unloading and loading is working good:
root@LEDE:/# rmmod dwc3
[   22.622214] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   22.622298] usb usb4: USB disconnect, device number 1
[   22.627401] xhci-hcd xhci-hcd.1.auto: USB bus 4 deregistered
[   22.631492] xhci-hcd xhci-hcd.1.auto: remove, state 1
[   22.637054] usb usb3: USB disconnect, device number 1
[   22.643721] xhci-hcd xhci-hcd.1.auto: USB bus 3 deregistered
[   22.647421] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   22.652910] usb usb2: USB disconnect, device number 1
[   22.659219] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[   22.662768] xhci-hcd xhci-hcd.0.auto: remove, state 1
[   22.668604] usb usb1: USB disconnect, device number 1
[   22.674803] xhci-hcd xhci-hcd.0.auto: USB bus 1 deregistered
root@LEDE:/# modprobe dwc3
[   25.404592] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[   25.404694] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[   25.409444] xhci-hcd xhci-hcd.0.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x00010010
[   25.416589] xhci-hcd xhci-hcd.0.auto: irq 168, io mem 0x10000000
[   25.426509] hub 1-0:1.0: USB hub found
[   25.431626] hub 1-0:1.0: 1 port detected
[   25.435472] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[   25.439206] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[   25.444573] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[   25.452926] hub 2-0:1.0: USB hub found
[   25.460420] hub 2-0:1.0: 1 port detected
[   25.525037] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[   25.525099] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 3
[   25.529750] xhci-hcd xhci-hcd.1.auto: hcc params 0x0228f065 hci version 0x100 quirks 0x00010010
[   25.537002] xhci-hcd xhci-hcd.1.auto: irq 169, io mem 0x11000000
[   25.546583] hub 3-0:1.0: USB hub found
[   25.551997] hub 3-0:1.0: 1 port detected
[   25.555734] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[   25.559621] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 4
[   25.564942] usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
[   25.573063] hub 4-0:1.0: USB hub found
[   25.580842] hub 4-0:1.0: 1 port detected
root@LEDE:/#

Fixes: dwc3 module unloading

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-03-28 09:02:38 +02:00
Hannu Nyman
c69a89fe23 mac80211: ath10k: allow failure getting board id via otp
ath10k tries to fetch board id via otp, but that fails for many chips
like QCA988x, QCA9984 etc. Recent commit cc189c0b7f removed the earlier
hack that had allowed QCA radios to work, as that hack was incompatible
with the new wifi chips being introduced to the source tree.

Restore functionality for the existing wifi chips by modifying the
return value of the 'board id via otp' function to a value that is recognised
as a harmless error, so that name evaluation continues by using the board file.

Patch originally suggested by Christian Lamparter in forum discussion.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-03-28 08:50:18 +02:00
John Crispin
0f4600c275 ramips: fix pcie irq mapping for mt7621 on v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-28 08:50:13 +02:00
Rafał Miłecki
2ebfdabfbd bcm53xx: put kernel into TRX when building initramfs images
Many (most?) devices can't boot raw kernel using tftp and probably none
allows flashing it. It's way more usable to have TRX with kernel
containing initrams as such an image can be actually flashed.

An exception are Buffalo devices which have recovery mode with support
for booting kernels over TFTP. For them keep building default images.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-27 10:41:36 +02:00
Leon M. George
6c937df749 ar71xx: wpj531: fix GPIOs for LED
/sys/devices/platform/leds-gpio/leds/ was not initialised with working LEDs.

Signed-off-by: Leon M. George <leon@georgemail.eu>
2017-03-27 08:36:32 +02:00
Thomas Reifferscheid
e52117354c ipq8064: enable 2nd USB port on R7500
Makes use of the syscon tcsr and enables both USB ports. Cleans up
qcom-ipq8064.dtsi from previous attempts.

Fixes FS#497

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-03-27 08:15:37 +02:00
Shane Peelar
8f2e52b7bc kernel: Fix F2FS module dependencies
F2FS depends on the crc32_generic module (NOT crc32c_generic)

Signed-off-by: Shane Peelar <lookatyouhacker@gmail.com>
2017-03-27 08:11:20 +02:00
Shane Peelar
89765693a0 kernel: Add kmod-crypto-crc32 (crc32_generic.ko)
This is needed for F2FS support (it depends on crc32_generic,
not crc32c_generic).

Signed-off-by: Shane Peelar <lookatyouhacker@gmail.com>
2017-03-27 08:10:28 +02:00
Paul Wassi
55920643b1 package/boot/uboot-kirkwood: fix build errors for nsa310 and nsa325
With upstream changes, the last update to U-Boot 2017.03
broke the nsa310 and nsa325 targets. Also fix some redefines.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-03-27 08:09:00 +02:00
Stefan Koch
49acec5b5f lantiq: align falcon code with ar9-vr9 code
Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-27 08:05:53 +02:00
Stefan Koch
001a50d314 lantiq: cleanup code ar9-vr9 parts
- remove unused code within 500-ar9_vr9.patch
- fixed return of IFX_ERROR (solves SIGSEGV in asterisk at failure)
- align it a bit with 400-falcon.patch
- remove 600-kernel-4.9.patch since changed parts
  are removed during cleanup

Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-27 08:05:53 +02:00
Pavel Kubelun
9ac4c1dcee ipq806x: tsens: convert degrees to millicelsius
Current driver shows temp in full degrees while other apps await it
to be in millidegrees.

Initially the driver represents termal data in millidegrees but then
it gets divided by TSENS_FACTOR. So lets just set it to '1'.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-03-27 08:05:10 +02:00
Pavel Kubelun
dc32d0a53c ipq806x: add ipq806x specific tsens driver
Current upstream driver doesnt fully support ipq806x devices
ipq806x has 11 sensors, the upstream one doesn't allow to check
sensors 0-4, only 5-10.

A specific driver for ipq806x has been found in Qualcomm SDK repo.

https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=c089e464cd7ce652419a0dc44d7959ce4d24b8a5
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=c23d94b702c4182862e7f5051a2b7d00bb922a29
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=742f3684b62a6b9f082cb49404b1a92dc0b16bf5
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=c0a9b2e2a382c152fa128f5b864c800dd6dfb311

Merging it into LEDE with this commit.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-03-27 08:05:10 +02:00
Hauke Mehrtens
02fe942337 kernel: add arm64 erratums into config
Deactivate all the ARM64 erratums by default. The target code should
activate them if needed. This fixes a problem with a new erratum added
in kernel 4.9.17 breaking brcm2708.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-26 19:20:33 +02:00
Hauke Mehrtens
6c1657623f lantiq: update spi driver to upstream version
These patches are backported from upstream Linux kernel.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-26 15:58:17 +02:00
Hauke Mehrtens
fb7ea71c15 kernel: update kernel 4.9 to 4.9.17
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-26 12:23:19 +02:00
Hauke Mehrtens
88b125e9a4 kernel: update kernel 4.4 to 4.4.56
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-26 12:23:12 +02:00
Matthias Schiffer
ea1855949b iw: enable MESH ID in scan output
Make scan output useful for 802.11s meshes. The common print_ssid function
is used, so this doesn't add any additional code.

Based-on-patch-by: Jan-Tarek Butt <tarek@ring0.de>
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-03-25 13:46:21 +01:00
Yousong Zhou
f3474ca130 busybox: vi: backporting patches to fix ZZ and :x command
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-25 13:18:10 +08:00
Rafał Miłecki
313197d707 brcm2708: backport upstream ARM dts commits
This gets us in sync with dts from kernel 4.11. Two patches were already
backported earlier.
I decided to use 03x prefix as it's kind of similar to the 3xx prefix:
3xx - architecture specific patches
It isn't any documented or strict rule though. We don't need to stick to
it if we hit any problems.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-24 19:52:00 +01:00
Stefan Koch
322a7226d3 lantiq: vr9 fxs support: remove unused wdog declarations and initializers
modify 0152-lantiq-VPE.patch from
commit e0229a16b0 ("lantiq: added support for VPE1")

- remove wdog function declarations from header (asm/vpe.h)
- remove wdog command line init functions (vpe.c)

Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-24 08:09:39 +01:00
Stefan Koch
c9783dd728 lantiq: vr9 fxs support: remove soft-watchdog functionality
- remove patched header (vpe.h) because kernel
  already provides one (asm/vpe.h)
- remove module softdog_vpe since watchdog functionality is unused
- remove module softdog_vpe from Makefile

Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-24 08:09:39 +01:00
Stefan Koch
aadd629c07 lantiq: remove residual watchdog parts from ltq-vmmc
modify 500-ar9_vr9.patch from
commit 29367aac42 ("lantiq: ltq-vmmc add support for ar9-vr9")

- remove unused dependencies to external watchdog functions
  (wdog setup is already disabled)
- using header file from kernel (asm/vpe.h) instead patched file (vpe.h)
- cleanup whitspace warning

Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-24 08:09:39 +01:00
Mathias Kresin
c59469b908 ramips: fix Xiaomi MiWiFi Nano firmware partition size
Even the commit message of the patch adding support for the MiWiFi Nano
says that a 16 MB flash chip is used. Extend the firmware partition to
make use of all available flash space.

Fixes: FS#622

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-24 08:09:39 +01:00
Mathias Kresin
e3c88f4964 ath10k-firmware: do not select the qca988x by default
Do not select the qca988x by default as soon as kmod-ath10k is
selected. We do support more ath10k chips than the qca988x in the
meantime, so this dependency doesn't make sense any longer.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-24 08:09:39 +01:00
Mathias Kresin
86a0cbb333 treewide: select ath10k firmware explicit
Do not rely on the default firmware selected by ath10k.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-24 08:09:39 +01:00
Thomas Reifferscheid
b69807e2b2 ipq806x: fix Netgear X4 R7500 ath10k firmware selection
Netgear X4 R7500 comes with a QCA988X. Select a firmware that matches
the ath10k chipset

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-03-24 08:09:39 +01:00
Mathias Kresin
e4c53c751e lantiq: fix pci with kernel 4.9
Commit 23dac14d058f ("MIPS: PCI: Use struct list_head lists") changed
the controller list from reverse to straight order. Use the last entry
in the controller list to get the fist conroller of the system.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-24 08:09:39 +01:00
Mathias Kresin
2f8d086baa kernel: add MIPS pci fix send upstream
Upstream commit 23dac14d058f ("MIPS: PCI: Use struct list_head lists")
changed the controller list from reverse to straight order without
taking care of the changed order for the scan of the recorded PCI
controllers.

Traverse the list in reverse order to restore the former behaviour.

This patches fixes the following PCI error on lantiq:

  pci 0000:01:00.0: BAR 0: error updating (0x1c000004 != 0x000000)

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-24 08:09:39 +01:00
Rafał Miłecki
fce21ae4cc brcm2708: rename all patches from raspberrypi git tree to use 950 prefix
Right now all brcm2708 patches are extracted from the non-mainline
raspberrypi/linux git tree. Many of them are hacks and/or are unneeded
in LEDE. Raspberry Pi is getting better and better mainline support so
it would be nice to finally start maintaining patches in a cleaner way:
1) Backport patches accepted in upstream tree
2) Start using upstream drivers
3) Pick only these patches that are needed for more complete support

Handling above tasks requires grouping patches - ideally using the same
prefixes as generic ones. It means we should rename existing patches to
use some high prefix. This will allow e.g. use 0xx for backported code.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-03-24 08:06:35 +01:00
Yousong Zhou
46e390322a gdb: fix invalid sigprocmask call
Fixes FS#637

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-24 11:10:22 +08:00
Piotr Dymacz
597c9f0be5 ar71xx: image: fix indentation
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-23 22:02:47 +01:00
Piotr Dymacz
4436979c83 ar71xx: add support for P&W R602N and CPE505N
P&W (full name: Shenzhen Progress&Win Technologies) R602N (could be also
labeled as R602F, R602, etc.) is a simple N300 router with 5-port
10/100 Mbps switch, non-detachable antennas and USB.

CPE505 is an outdoor CPE with PoE support and detachable antennas.

Both devices are based on Qualcomm/Atheros QCA9531 v2.

Common specification:

- 650/597/216 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH
- UART (J2) header on PCB

R602N specification:

- 5x 10/100 Mbps Ethernet
- 1x USB 2.0
- 2T2R 2.4 GHz with external LNA and PA (SE2576L), up to 28 dBm
- 2x external, non-detachable antennas
- 7x LED, 1x button

CPE505N specification:

- 2x 10/100 Mbps Ethernet (both ports support passive PoE 12-24 V)
- 2T2R 2.4 GHz with external LNA and PA (SKY65174-21), up to 30 dBm
- 2x external, detachable antennas (RP-SMA connectors)
- 1x RGB LED, 2x LEDs (in RJ45 sockets), 1x button

Flash instructions:

It seems that there are many different versions of the firmware which
these devices are shipped with. The generic/standard one is based on
some modified OpenWrt and LEDE firmware can be flashed directly from
vendor's webgui or with sysupgrade (root password is "admin123").

Before flashing, make sure (use "fw_printenv") that the kernel load
address in your device is set to "0x9f050000" (bootcmd variable is
"bootm 0x9f050000"). If your device uses different load address, you
should first change it, under vendor's firmware, with command:

fw_setenv bootcmd "bootm 0x9f050000 || bootm OLD_ADDRESS"

Where OLD_ADDRESS is previous kernel load address (in CPE505 version
I got access to, it was "0x9fe80000"). This will allow you to use
both the vendor's and LEDE firmware.

If version of your device contains empty U-Boot environment (you will
get information about this after issuing "fw_printenv"), you should
use U-Boot, serial line access and TFTP to perform firmware upgrade:

1. tftp 0x80060000 lede-ar71xx-generic-...-squashfs-sysupgrade.bin
2. erase 0x9f050000 +$filesize
3. cp.b $fileaddr 0x9f050000 $filesize
4. setenv bootcmd "bootm 0x9f050000 || bootm OLD_ADDRESS"
5. saveenv && reset

These devices contain also web recovery mode inside U-Boot. It can be
started with pressing the reset button for around 3 seconds just after
the device powerup. Web recovery panel is available on "192.168.10.9"
and to be able to use it, IP on your PC must be set to "192.168.10.10".

Make sure to change kernel load address before using recovery mode or
the U-Boot will not be able to load LEDE firmware.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-23 17:59:47 +01:00
Vaclav Svoboda
0d9adb4832 ar71xx: add support for TP-LINK TL-WR840N v2 and v3
This patch adds support for the TP-LINK TL-WR840N v2 and v3.

- SoC: Qualcomm QCA9533-BL3A (650 MHz)
- RAM: 32 MiB (Zentel A3S56D40GTP)
- Flash: 4 MiB
   (v2: Macronix MX 25L323F)
   (v3: Winbond 25Q32FVSIG)
- LAN: 4x 100M
- WAN: 1x 100M

Signed-off-by: Vaclav Svoboda <svoboda@neng.cz>
2017-03-23 09:41:15 +01:00
Ryan Mounce
978998628f ar71xx: add support for MikroTik hAP ac
This patch adds initial support for the MikroTik RouterBOARD hAP ac
(RB962UiGS-5HacT2HnT).

All functions are supported except:
-SFP cage (eth1) is not working
-WLAN LEDs are not working

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-03-23 09:35:14 +01:00
Ryan Mounce
540edf7045 ar71xx: add support for MikroTik hAP ac lite
This patch adds support for the MikroTik RouterBOARD hAP ac lite
(RB952Ui-5ac2nD).

The hAP ac lite is nearly identical to the hAP, with an added QCA9887
5GHz radio. The 2.4GHz radio ID is also changed in the hAP ac lite.

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-03-23 09:35:14 +01:00
John Crispin
dce3b0057b ramips: fix mt7621 boot on v4.9
v4.9 CM code has a few bugs on this HW. Disable the GCR register access
during boot. This caused a cpu stall.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-23 09:18:42 +01:00
John Crispin
666bfc6fb5 Revert "ipq806x: make the dwc3 driver and required phy drivers built-in"
This reverts commit d5b10bb560.

This caused boot errors on some ipq8 boards

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-23 08:29:44 +01:00
Hans Dedecker
4d5b5c82e1 odhcp6c: update to git HEAD version
0463b05 dhcpv6: rebind capability support in reconfigure message (rfc6644)
53767fc dhcpv6: respect renew end point when handling reconfigure message
dd892e2 dhcpv6: calculate T1, T2 and T3 in a more sane manner
8a6ca6e md5: use libubox md5 library as local implementation
89822de dhcpv6: don't return renew msg in case of invalid msg type in reconfigure msg
4160c0e treewide: align coding style

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-22 21:59:29 +01:00
Felix Fietkau
09ae540cd4 ath9k: fix power limits on init
The tx power applied by set_txpower is limited by the CTL (conformance
test limit) entries in the EEPROM. These can change based on the user
configured regulatory domain.
Depending on the EEPROM data this can cause the tx power to become too
limited, if the original regdomain CTLs impose lowr limits than the CTLs
of the user configured regdomain.

To fix this issue, set the initial channel limits without any CTL
restrictions and only apply the CTL at run time when setting the channel
and the real tx power.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 20:49:29 +01:00
Felix Fietkau
79a768a90f ath: do not apply broken power limits with ATH_USER_REGD
If a device uses the default EEPROM code, typically only the main CTLs
are valid, and they do not apply properly when switching to a different
regulatory domain. If the regdomain deviates from the EEPROM one, force
the world roaming regdomain to ensure that power limits are sane

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 20:49:28 +01:00
Felix Fietkau
89118da865 build: fix STAMP_PREPARED with quilt
quilt.mk needs to be included first, to ensure that STAMP_PREPARED does
not include the hash if quilt is used.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 20:17:20 +01:00
Felix Fietkau
c5e245a475 util-linux: re-enable parallel builds
The original build error in 'more' seems to be gone

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 14:38:48 +01:00
Felix Fietkau
0aee976135 util-linux: unconditionally enable ncursesw support
The build dependency is unconditional, and some components might fail if
ncurses is not available

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 14:38:48 +01:00
Daniel Engberg
cf9812dd52 utils/util-linux: Update to 2.29.2
Update util-linux to 2.29.2
Remote 0001-fix-uClibc-ng-scanf-check.patch as it's been merged upstream.
Refresh patches
Change ncurses to ncursesw to fix compilation and avoid confusion

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [remove faulty dependency changes]
2017-03-22 14:38:48 +01:00
Rafał Miłecki
cfc5b35dd4 kernel: disable DRM_HISI_KIRIN and USB_DWC3_OF_SIMPLE
They were triggering config prompts on brcm2710.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-22 14:22:35 +01:00
Rafał Miłecki
bf381f8f63 kernel: fix builds with kmod-drm-vc4 and CONFIG_SPI enabled
This fixes:
Samsung LD9040 RGB/SPI panel (DRM_PANEL_SAMSUNG_LD9040) [N/m] (NEW) aborted!

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-22 12:22:33 +01:00
John Crispin
aa729bcf14 Revert "utils/util-linux: Update to 2.29.2"
This reverts commit eac1a54857.

This patch caused the builders to blow up.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 12:14:08 +01:00
Daniel Engberg
8a4208d5af utils/f2fs-tools: Update to 1.8.0
Update f2fs-tools to 1.8.0
Refresh patches
Remove selinux patch, use configure argument instead.
Switch to xz tarball
Adjust url to avoid redirects

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-22 11:52:39 +01:00
Felix Fietkau
9b940fe80d x86: enable ACPI support for the Geode subtarget
Most or all newer Geode device have ACPI hardware support
Should fix FS#577

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:51:24 +01:00
Felix Fietkau
ca44b9a0d4 pistachio: remove custom board detection override
Use device tree based model string

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Felix Fietkau
c0e8108b70 pistachio: fix indentation in image makefile
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Felix Fietkau
eb98bf605e pistachio: remove pistachio_board_name, use the generic function
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Ian Pozella
0d271cef80 target: add pistachio
The Pistachio target is a MIPS interaptiv based SoC developed by
Imagination Technologies. It includes blocks for i2c, spi, audio,
usb and WiFi.

This also adds the base support for the 'Creator Ci40 (marduk)'
device which uses the Pistachio SoC to create an IoT hub by
including Bluetooth, WiFi and 6lowpan on one board. Additionally 2x
Mikrobus ports are available to expand with further RF technologies
or add sensors. You can find out more here http://creatordev.io.

Note, this commit is just the initial board support hence the
following are not expected to work yet:
 * WiFi
 * Bluetooth
 * 6lowpan
 * Audio
 * Mikrobus uarts, user leds (clock dependency of 6lowpan chip)

The aim of this commit is to essentially have the same level of
support that currently exists in the mainline kernel.

Signed-off-by: Abhijit Mahajani <Abhijit.Mahajani@imgtec.com>
Signed-off-by: Francois Berder <francois.berder@imgtec.com>
Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com>
Signed-off-by: Mayank Sirotiya <Mayank.Sirotiya@imgtec.com>
Signed-off-by: Sean Kelly <Sean.Kelly@imgtec.com>
2017-03-22 11:43:22 +01:00
Ian Pozella
52c17bff3c pistachio: add 4.9 kernel support
This adds kernel support for the Pistachio SoC and the Marduk (Ci40)
board which uses it.

Much of the code for Pistachio has been upstreamed however some
patches are still required to boot from the Marduk board:
 * spi bug fixes
 * dma bug fixes
 * pistachio internal clock tree bug fixes
 * spi-nand implementation
 * dts based mtd device naming scheme
 * dts backports and bug fixes

Signed-off-by: Abhijit Mahajani <Abhijit.Mahajani@imgtec.com>
Signed-off-by: Francois Berder <francois.berder@imgtec.com>
Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com>
2017-03-22 11:43:22 +01:00
Felix Fietkau
370d740647 kernel: do not try to copy vmlinux out of arch/$(ARCH)/boot
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Felix Fietkau
fd93f81fd8 lantiq: remove lantiq_board_model, it is unused
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:22 +01:00
Felix Fietkau
7e798dab56 lantiq: remove lantiq_board_name, use the generic function instead
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:21 +01:00
Felix Fietkau
aa95d6cd20 lantiq: move lantiq_board_detect() to 03_preinit_board.sh
It is only used there

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:21 +01:00
Felix Fietkau
ec99142474 base-files: add generic board_name function to functions.sh
This will be used to replace all those nasty board specific scripts
that do basically the same thing

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:21 +01:00
Felix Fietkau
76cc264364 busybox: enable the "ip neigh" command (FS#618)
It is useful for creating static ARP entries.
Adds about 1.9 KiB after gzip on MIPS.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 11:43:21 +01:00
Vittorio Gambaletta
8301e61365 mac80211: Fix race condition leading to wifi interfaces not coming up at boot sometimes.
In the drv_mac80211_setup function, mac80211_interface_cleanup
is called to ask the kernel to delete all existing interfaces
for the phy that is being configured via netlink.

Later in the first function, mac80211_prepare_vif is called to
set up the new interfaces as required.

But sometimes, when mac80211_prepare_vif (and so the relevant
`iw phy x interface add y` command) runs, the kernel might still
be cleaning up the old interface with the same ifname. It usually
takes very few time to do that; possibly a few milliseconds of
sleep in the script after detecting this error condition could be
enough, but the busybox sh does not support sub-second sleep
intervals.

When this happens, iw obviously fails to create the new interface;
and the following message is printed in the system log, followed by
subsequent failure messages from hostapd in case this would have been
an AP interface.

Tue Mar 14 04:21:57 2017 daemon.notice netifd: radio1 (2767): command failed: Too many open files in system (-23)

This was a long-standing issue existing since at least OpenWrt Backfire,
and today I finally managed to debug and (hopefully) solve it.
It was happening very few times on most devices; but it was happening
a lot more frequently on fast platforms with multiple radios, such as
the powerpc-based dual-ath9k-radio tl-wdr4900-v1.

Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
2017-03-22 11:42:43 +01:00
John Crispin
3a3564ead5 ipq806x: remove v4.4 support
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
John Crispin
ef6c4cc4ee ipq806x: set v4.9 as default
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
Christian Lamparter
fa03d441e9 firmware: add custom IPQ wifi board definitions
On the ath10k-devel ML Michael Kazior stated:

"board-2 is a key-value store of actual board files.
Some devices, notably qca61x4 hw3+ and qca4019 need
distinct board files to be uploaded. Otherwise they
fail in various ways." [0].

Later on Rajkumar Manoharan explained:

"In QCA4019 platform, only radio specific calibration
(pre-cal-data) is stored in flash. Board specific contents
are read from board-2.bin. For each radio appropriate board
data should be loaded. To fetch correct board data from
board-2.bin bundle, pre-cal/radio specific caldata should
be loaded first to get proper board id.

|My understanding until now was that:
|
| * pre-cal data + board-2.bin info == actual calibration data

Correct." [1].
The standard board-2.bin from the ath10k-firmware-qca4019
barely works on the RT-AC58U. Especially 5GHz clients fail
to connect at all and if they do, they have very low
throughput even right next to the router.

Currently, the solution for this problem is to supply a
custom board-2.bin for every device.

To implement this feature, this method makes use of:
Rafał Miłecki's "base-files: add support for overlaying
rootfs content". This comes with a few limitations:
1. Since there can only be one board-2.bin at the right
   location, there can only one board overwrite installed
   at any time. (All packages CONFLICT with each other.
   It's also not possible to "builtin" multiple package.)

2. updating ath10k-firmware-qca4019 will also replace
   the board-2.bin. For this cases the user needs to
   manually reinstall the wifi-board package once the
   ath10k-firmware-qca4019 is updated.

To create the individual board-2.bin: Use the ath10k-bdencoder
utility from the qca-swiss-army-knife repository:
<https://github.com/qca/qca-swiss-army-knife>
The raw board.bin files have to be extracted from the
vendor's source GPL.tar archieves.

Signed-off-by: Alexis Green <agreen@cococorp.com>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-03-22 09:45:18 +01:00
Christian Lamparter
aa47f5623a firmware: add IPQ fritz-tools FW extraction tool
Adds tools to access tffs3 and pre-calibration data required for ipq4019
based FritBoxes.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-03-22 09:45:18 +01:00
John Crispin
d5b10bb560 ipq806x: make the dwc3 driver and required phy drivers built-in
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
John Crispin
7dc5617173 ipq806x: enable QCE hardware crypto inside the kernel
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
Christian Lamparter
1cb406d019 ipq806x: add ipq4019 fritz4040 support
This patch adds support for AVM FRITZ!Box 4040.

hardware highlights:

SOC:	IPQ4018 / QCA Dakota
CPU:	Quad-Core ARMv7 Processor rev 5 (v7l) Cortex-A7
DRAM:	256 MiB Nanya NT5CC128M16IP
FLASH:	32 MiB MXIC MX25L25635FMI
ETH:	Qualcomm Atheros QCA8075 Gigabit Switch (4 x LAN, 1 x WAN)
USB:	1 x 3.0 (via Synopsys DesignWare DWC3 controller in the SoC)
	1 x 2.0 (via Synopsys DesignWare DWC3 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
INPUT:	one WLAN and one WPS button
LEDS:	Power, WAN/Internet, WIFI, INFO (red and amber) and LAN.
Serial:
	WARNING: The serial port needs a TTL/RS-232 v3.3 level converter!
        The Serial setting is 115200-8-N-1. The SoC's serial port is right
	next to the MXIC FLASH chip. The board has a unpopulated 1x4 0.1"
	header for it. Use a multimeter to figure out the pinout!

This board currently needs an additional u-boot image in order to boot
properly. Booting with EVA isn't possible ATM.

Install Procedure:
 0. It's highly recommended to connect to the serial port.
    The serial settings are listed above.
 1. install a u-boot image for AVM Fritz!Box 4040
    (see <https://github.com/chunkeey/FritzBox-4040-UBOOT/releases> and
    <https://github.com/chunkeey/FritzBox-4040-UBOOT/blob/master/upload-to-f4040.sh>)
 2. upload the initramfs.itb image via tftp (u-boot listens to
    192.168.1.1 - use binary transfer mode!)
 3. connect to the FB4040 and use sysupgrade sysupgrade.bin
    to install the image.

Works:
	- Switch and Ethernet (99%)
        - Buttons (WLAN, WPS)
        - FLASH (1 x 32MiB NOR Chip)
        - WLAN2G and WLAN5G
        - CPUFREQ scaling
        - PRNG
        - serial
        - Crypto Accelerator
        - sysupgrade (Read the flash instructions to avoid bricking)
        - full LEDE Install (Read the flash instructions to avoid bricking)
	- LEDs (Power, WAN, Info (red and amber), LAN)
          The LEDs are connected to the QCA8075 LED ports.
	  The AR40xx driver contains a gpio-controller to
	  handle these special "GPIOs".
        - USB Both 3.0 and 2.0 ports
        - many packages from other ARMv7 boards
          (This does include the RaspberryPi Model 2!)
        - ...

Not planned:
	- WAN<->LAN short-cut
	- Qualcomm Secure Execution Environment
        - ...

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
Christian Lamparter
c2d50bdeb3 ipq806x: add ipq4019 support
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
Felix Fietkau
5c617aec05 uboot-fritz4040: add an ipq806x u-boot for FritzBox 4040
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-22 09:45:18 +01:00
Christian Lamparter
93aa860405 procd: nand: make it possible to configure kernel and ubi partition
With this patch, the nand.sh script no longer overwrites
CI_KERNELPART and CI_UBIPART if they have been set before.

This allows platforms specify alternative values for these
variables.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-03-22 09:45:18 +01:00
Christian Lamparter
cc189c0b7f mac80211: enable ath10k AHB support for QCA4019
This patch enables the ATH10K_AHB support for the QCA4019
devices on the AHB bus.

This patch also removes 936-ath10k_skip_otp_check.patch
because it breaks the AHB device identification.
"Patch is wrong. I find it frustrating OpenWRT/LEDE doesn't
try to work with upstream on ixing these things right."

[1] <https://www.mail-archive.com/ath10k@lists.infradead.org/msg05896.html>

It also limits ath10k memory hunger (This is a problem with 128MiB RAM)

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-03-22 09:45:18 +01:00
Christian Lamparter
b015a841fc ath10k-firmware: firmware package for QCA4019 devices
This patch adds a new firmware package to ath10k-firmware
called ath10k-firmware-qca4019.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-03-22 09:45:18 +01:00
Christian Lamparter
6c344e39cd ath10k-firmware: bump to latest version
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2017-03-22 09:45:18 +01:00
John Crispin
eb3ac8281b include: add KERNEL_LOAD_ADDR to TARGET_VARS
This will allow us to override the variable from within a Device template.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-22 09:45:18 +01:00
Martin Schiller
06c49dbccf openvpn: add extra respawn parameters
This change protects the openvpn instances to be marked as "in a crash
loop" and thereby the connection retries will run infinitely.

When the remote site of an openvpn connection goes down for some time
(network failure etc.) the openvpn instance in an openwrt/lede device
should not stop retrying to establish the connection.

With the current limit of 5 retries, there is a user interaction
required, which isn't really what you want when the device should
simply do everything to keep the vpn connection up.

Signed-off-by: Martin Schiller <ms@dev.tdt.de>
2017-03-22 09:41:52 +01:00
Daniel Engberg
fd95397ee3 utils/tcpdump: Rework URLs
Add actual mirror and use main site as last resport
Source: http://www.tcpdump.org/mirrors.html

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-22 09:16:23 +01:00
Daniel Engberg
7dc2a581b9 libs/libpcap: Rework URLs
Add mirror and use main site as last resort.
Source: http://www.tcpdump.org/mirrors.html

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-22 09:16:23 +01:00
Daniel Engberg
eac1a54857 utils/util-linux: Update to 2.29.2
Update util-linux to 2.29.2
Remote 0001-fix-uClibc-ng-scanf-check.patch as it's been merged upstream.
Refresh patches
Change ncurses to ncursesw to fix compilation and avoid confusion

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-22 09:16:23 +01:00
Daniel Engberg
480a6aec98 libs/openssl: Refresh mirror list
Refresh mirror list, some doesn't offer OpenSSL and add main site as last resort.
Source: https://www.openssl.org/source/mirror.html

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-22 09:16:23 +01:00
Rafał Miłecki
61eeb21545 kernel: fix builds with kmod-drm-vc4 and kmod-backlight enabled
This fixes:
JDI LT070ME05000 WUXGA DSI panel (DRM_PANEL_JDI_LT070ME05000) [N/m/?] (NEW) aborted!

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-22 08:49:33 +01:00
Rafał Miłecki
fbf89732c4 brcm2708: add kmod-drm-vc4 package
It includes vc4 driver for Broadcom VideoCore IV GPU.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 23:44:24 +01:00
Rafał Miłecki
106ae11edf umdns: update to the version 2017-03-21
This includes following changes:
480d7bc Fix sending unicast questions on cache expire
a0403cd Keep source sockaddr for every cached DNS record
1478293 Fix code freeing cached non-A(AAA) records too early
9f1cc22 Fix replying to "QU" questions received on unicast interface
943bedb Fix reading port of incoming packets
c725494 Use MCAST_PORT define for port 5353
ce7e9e9 Use one define for DNS-Based Service Discovery service name
e1bacef Drop entries cached for interface we're going to delete
496aeba Fix comment typo in cache_gc_timer
f89986b Fix refreshing cached A(AAA) records that expire

Previous updates made umdns work as expected on startup but there were
still many bugs. They were mostly related to runtime - cache management
and requests + responses. E.g. umdns was never able to send question on
DNS record expire. It was also ignoring all incoming unicast questions.

Since these issues are quite serious it makes sense to backport this
update to the stable branch.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 23:14:55 +01:00
Hans Dedecker
ebdbbb5f99 netifd: update to git HEAD version
a032166 interface-ip: set prefix indicator flag when IPv6 prefix lifetime changes
b4f8984 system-linux: parse vti specific settings as nested json data object
7e3b89a system-linux: parse gre specific settings as nested json data object

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-21 22:59:34 +01:00
Hans Dedecker
071355dd5c vti: add vti specific settings as nested json object
Add vti specific settings ikey and okey as a nested data json object

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-21 22:59:08 +01:00
Hans Dedecker
3a5bacdc7d gre: add gre specific settings as nested json object
Add gre specific settings ikey, okey, iseqno, oseqno, icsum
and ocsum as a nested data json object

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-21 22:58:43 +01:00
Rafał Miłecki
13006712ea mac80211: brcmfmac: backport patches pushed on 2017-03-20
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 10:45:30 +01:00
Rafał Miłecki
8fae77fc9b kernel: update bcma including recent changes for 4.12
This adds support for describing GPIO chips placed on PCIe cards. Thanks
to this we get working 2.4 GHz LED on Tenda AC9.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 09:58:05 +01:00
Rafał Miłecki
e41e1e6a2a kernel: move disabling DRM symbols to the config file
This is the standard way we handle this. Please note (it seems) I could
drop few symbols as they are hidden under (disabled) DRM_LEGACY now.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 08:22:56 +01:00
Rafał Miłecki
35c596b66c kernel: video: add kmod-i2c-core dependency to kmod-drm
For targets with i2c not built-in this fixes following error:
Package kmod-drm is missing dependencies for the following libraries:
i2c-core.ko

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 07:24:19 +01:00
Rafał Miłecki
b4d5132a35 kernel: disable CONFIG_BCM_IPROC_ADC by default
This fixes compiling issue on bcm53xx target with kmod-iio-core:
Broadcom IPROC ADC driver (BCM_IPROC_ADC) [N/m/?] (NEW)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-21 07:16:42 +01:00
Hauke Mehrtens
7c7ea09004 include: Add nomips16 CPU_SUBTYPE
This can be used to indicate that a target does not support the optional mips16
extension even when it is a mips32r2 or later CPU.

This will generate a separate toolchain and a separate package folder,
e.g. mips_24kc_nomips16

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2017-03-20 22:04:45 +01:00
Hauke Mehrtens
d5a770f2c1 scripts: only generate config from feature flag if fully match
Without this change the code checked if the string was contained in the
feature option and not if the string matches the complete word. This only
removes the nand option from the omap24xx target, the other changes are
only removing options which were added twice.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
2017-03-20 22:04:41 +01:00
Daniel Engberg
0685f2a66c tools/upx: Remove from repo
Remove upx from repo, it hasn't been used for a very long time and serves little to no purpose.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:26:35 +01:00
Daniel Engberg
cc5721c3b8 lzo: Update to 2.10
Update lzo to 2.10

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:25:49 +01:00
Daniel Engberg
17987b9fa4 iperf3: Update to 3.1.7
Update iperf3 to 3.1.7

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:25:33 +01:00
Daniel Engberg
80246ce67e tools/coreutils: Update to 8.27
Update coreutils to 8.27

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:24:34 +01:00
Daniel Engberg
e45ee66149 tools/libressl: Update to 2.5.1
Update libressl to 2.5.1

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:24:13 +01:00
Daniel Engberg
49ded28027 tools/dosfstools: Update to 4.1
Update to 4.1
Remove 0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smal.patch
as it's included in upstream repo.
Refresh patch

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:24:05 +01:00
Daniel Engberg
31be46e169 toolchain/binutils: Add binutils 2.28
Add binutils 2.28 to repo

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:23:58 +01:00
Paul Wassi
c95c3165b9 package/boot: update uboot-kirkwood to 2017.03
Bump uboot-kirkwood to upstream release 2017.03

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
2017-03-20 08:19:35 +01:00
Furong Xu
2fd1a3e912 ramips: clean kernel config symbol conflicts for MT7688 PWM
pwm-mediatek should be selected in Other Modules submenu, not default to yes.

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-03-20 08:17:34 +01:00
Daniel Engberg
65d2800bd6 tools/sed: Update to 4.4
Update sed to 4.4

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-20 08:15:27 +01:00
Vaclav Svoboda
6b9c25e927 ramips: fix switch port mapping for ZBT-WE2026
This patch fixes switch port mapping for Zbtlink ZBT-WE2026.

Signed-off-by: Vaclav Svoboda <svoboda@neng.cz>
2017-03-20 08:13:56 +01:00
Hannu Nyman
3f9eadf599 ipq806x: support independent core clocks in cpufreq with kernel 4.9+
Add back support for the independent_clocks definition that has been
removed between kernel 4.4 and 4.9 by upstream commits
eb96924acddc709db58221c210ca05cd9effb1df and
e86eee6bc2aaa6b3637f6497b26beee09a91bde9

* extend the new cpufreq_dt_platform_data definition in cpufreq-dt.h
* revert the removal of its usage in cpufreq-dt.c
* use new cpufreq-dt.h in qcom-cpufreq.c

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-03-20 08:12:49 +01:00
Pavel Kubelun
ef4ca01d6f ipq806x: route gpio interrupts to APPS processor through scm firmware
For IPQ806x targets, TZ protects the registers that are used to
configure the routing of interrupts to a target processor.
To resolve this, this patch uses scm call to route GPIO interrupts
to application processor. Also the scm call interface is changed.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-03-20 08:11:29 +01:00
Pavel Kubelun
0d89650db1 ipq806x: remove scm firmware clocks
At the moment as a workaround definition for scm firmware in DT is used as if it is
apq8064 board. This leads to incomplete scm firmware initialization and as a result
cpuidle driver fails to configure.

By design unlike other qcom boards ipq do not use clocks to connect to scm.

Considering this we're removing from DT and scm driver clocks for ipq boards.

As a result cpuidle does not produce errors about failed configuration anymore.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-03-20 08:11:29 +01:00
Yousong Zhou
312b9dcd65 iproute2: fix ip monitor can't work when NET_NS is not enabled
The bug appeared in v4.1.0 and was fixed since v4.8.0

Fixes FS#620

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-19 12:41:13 +08:00
Rafał Miłecki
0694d08c84 bcm53xx: switch to kernel 4.9
With iproc regression fixed and GIC interrupts in DTS updated it seems
we can safely start using 4.9.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-18 23:00:56 +01:00
Felix Fietkau
aab0b0704a build: fix high cpu usage / hang in prereq-build.mk
host-build.mk should not be included for prereq

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-18 21:50:46 +01:00
Rafał Miłecki
3a2e735b96 bcm53xx: backport BCM5301X patches
This fixes GIC interrupts (required before switching to 4.9), adds few
new entires & introduces DTS for Archer C5.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-18 18:32:53 +01:00
Philip Prindeville
8e0775197a dnsmasq: don't point --resolv-file to default location unconditionally
If noresolv is set, we should not generate a --resolv-file parameter.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> [minor cleanup]
2017-03-18 17:37:24 +01:00
Vitaly Chekryzhev
01337ba472 build: add devel option to store build config in firmware
Store config.seed in firmware /etc/build.config

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-03-18 12:08:04 +01:00
Vitaly Chekryzhev
3ceb0fa7c5 build: prepare config.seed before package compilation
Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-03-18 12:08:04 +01:00
Stijn Tintel
b03b293079 lldpd: bump to 0.9.6
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-03-18 12:08:03 +01:00
Felix Fietkau
315afb92eb mt76: update to the latest version, fixes Mesh/IBSS crypto support
9f02db7 mt76x2: fall back to software crypto for IBSS/Mesh per-sta GTK
4a54ab3 mt7603: fall back to software crypto for IBSS/Mesh per-sta GTK
712b8e8 mac80211: claim RSN IBSS support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-17 13:56:58 +01:00
Mathias Kresin
66146a223e perf: fix build with kernel 4.9
The musl workaround isn't required anymore and causes build errors with
kernel 4.9 when applied.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-17 08:58:50 +01:00
Oswald Buddenhagen
6a82f4006c lantiq: Shortcut non-pppoa interfaces in dsl_notify
No need to query 'up' and 'auto' when they are not going to be used.

Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
2017-03-17 08:58:50 +01:00
Vaclav Svoboda
815cc2a69a ramips: add support for Zbtlink ZBT-WE2026
This patch adds support for the Zbtlink ZBT-WE2026.

Specification:
- SoC: MediaTek MT7620N (580MHz)
- RAM: 64 MiB
- Flash: 8 MiB SPI
- LAN: 4x100M
- WAN: 1x100M

Installation through bootloader webserver:
- With the power unplugged press and hold reset button.
- Plug power and hold reset button until LED starts to blink.
- Install sysupgrade image using web interface on 192.168.1.1.

Signed-off-by: Vaclav Svoboda <svoboda@neng.cz>
2017-03-17 08:58:50 +01:00
Stefan Koch
443e67a459 lantiq: vr9 fxs support: fixed check of SMP state within vpe-mt.c
SMP state is generally affected by
- CONFIG_SMP build-time kernel configuration option and
- 'nosmp' runtime kernel commandline option

The SMP state within vpe-mt.c is determined by CONFIG_SMP option.
A runtime check is needed if VPE functionality
should be used with a kernel image that supports SMP.

This fix introduces a check for 'nosmp' command line option
if CONFIG_SMP kernel configuration option is enabled.

Note: This patch is needed to use lantiq FXS if CONFIG_MIPS_MT_SMP
(that activates CONFIG_SMP) is enabled within kernel configuration
and the 'nosmp' command line argument is given to disable SMP at runtime.

Without this patch CONFIG_MIPS_MT_SMP must be disabled before using FXS.
With this patch setting the 'nosmp' parameter is enough.

In general, concurrent usage of FXS and SMP
is incompatible and will cause kernel panics.

Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-17 08:58:50 +01:00
Hans Dedecker
53b84e4e2b odhcp6c: update to git HEAD version
7e0d8b8 CMakeLists: don't enable libubox md5 implementation by default

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-16 21:42:15 +01:00
Felix Fietkau
afc1675833 kernel: do not build modules.order
It is not needed for anything on the system and skipping this saves some
build time, especially in cases where there is nothing to do.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-16 19:14:24 +01:00
Felix Fietkau
1f12a3daaa kernel: speed up build system by getting rid of redundant work
KERNELRELEASE contains a $(shell) call which is evaluated over and over
again.
The call to checksyscalls.sh is unnecessary for LEDE and also takes a
few seconds to complete.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-16 19:14:09 +01:00
Felix Fietkau
a9c96ef0ac build: improve performance by avoiding lazy-eval for make shell calls
Avoids lots of redundant calls to mkhash on things like
package/kernel/linux

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-16 19:13:47 +01:00
Felix Fietkau
6bada71e51 kernel: add missing config symbols for 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-16 11:29:03 +01:00
Jing Qiu
4475da968a kernel: Fix the incorrect i_nlink count after jffs2's RENAME_EXCHANGE operations.
The problem is caused by the incorrect handling of the parent inode's
i_nlink count for the dentry to be RENAME_EXCHANGED. There are 3 cases
to consider. Assume we want to RENAME_EXCHANGE struct dentry *a and
struct dentry *b, and inode_a is pointed to by dentry_a, inode_b is
pointed to by dentry_b:

1. If inode_a is a directory, but inode_b isn't, then we must decrease
   the i_nlink count of old_dir_i, and increase the i_nlink of new_dir_i.
2. If inode_a isn't a directory, but inode_b is a directory, then we
   must increase the i_nlink of old_dir_i, and decrease the i_nlink count
   of new_dir_i.
3. If the types of inode_a and inode_b are the same, we don't change the
   i_nlink for either old_dir_i or new_dir_i.

Signed-off-by: Jing Qiu <aqiu0720@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-16 11:28:40 +01:00
Ryan Mounce
8b12e62e9c mac80211: Update wireless-regdb to master-2017-03-07
The short log of changes since the 2016-06-10 release is below.

Jouni Malinen (1):
      wireless-regdb: Remove DFS requirement for India (IN)

Ryan Mounce (1):
      wireless-regdb: Update rules for Australia (AU) and add 60GHz rules

Seth Forshee (2):
      wireless-regdb: Update 5 GHz rules for Canada
      wireless-regdb: update regulatory.bin based on preceding changes

Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
2017-03-16 11:28:35 +01:00
Rafał Miłecki
425f958830 x86: image: drop duplicated copy of bzImage into vmlinuz
It's already done once few lines earlier in the Image/Build/iso.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-16 11:28:33 +01:00
Alexey Brodkin
51d9ac61c7 libnl: Fix building with uClibc
uClibc doesn't implement strerror_l() and thus libnl starting from
3.2.29 couldn't be compiled with it any longer, see
6c2d111177

To work-around that problem we'll just do a check on strerror_l()
availability during configuration and if it's not there just fall back
to locale-less strerror().

Patch for libnl is alreadfy merged upstream, see
e15966ac7f
and once the next libnl release happens this one must be removed from
Lede/OpenWrt.

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Cc: Felix Fietkau <nbd@nbd.name>
Cc: John Crispin <john@phrozen.org>
Cc: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-16 11:28:28 +01:00
Piotr Dymacz
f9a1f322d2 brcm63xx: diag.sh: use common status_led_blink_* functions
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-15 23:15:19 +01:00
Piotr Dymacz
5cc96c0953 ar7: diag.sh: use common status_led_* functions
Switch to the common LED related status_led_blink_* functions in
set_state() as it's done in most of other targets.

Also, use "status_led_on" instead of "status_led_set_heartbeat"
and incorrect "status_led_set_on" in the "done" state.

Moreover, remove outdated comment from the script.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-15 23:14:54 +01:00
Piotr Dymacz
6e44f47a90 sysntpd: restore support for peer-less (standalone) mode
ntpd from Busybox supports peer-less (standalone) mode when it's started
with option -l and without any peer provided with option -p. In this
mode ntpd uses local time as reference and acts as stratum 1 server.

This mode can be used in isolated networks, where Internet access and/or
other NTP server/s are not available, but the device has some other way
of getting correct time, like e.g. GPS (ugps supports setting local time
by default).

Support for this mode was incorrectly disabled/removed in:
1527f96ca6

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2017-03-15 23:05:00 +01:00
Thibaut VARENE
e1f3cf7ede ar71xx: mikrotik: prepend "RouterBOARD" to machine name for NOR devices
When the device name doesn't already contain "RouterBOARD", this patch adds
this string to the machine name.

Most NOR devices already have "RouterBOARD" in their hardware-stored device name,
but not all of them.

This patch also makes the code more robust against buffer overflows.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-03-15 23:00:52 +01:00
Thibaut VARENE
e3dc036cbf ar71xx: add support for RB LHG 5nD
This patch adds support for the MikroTik RouterBOARD LHG 5
https://routerboard.com/RBLHG-5nD

Specifications:
- SoC: Atheros AR9344 (600MHz)
- RAM: 64MB
- Storage: 16MB NOR SPI flash
- Wireless: builtin AR9344 5GHz, 2x2:2
- Ethernet: 1x100M

Initial flash via initramfs, like all other RB devices.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-03-15 23:00:52 +01:00
Daniel Engberg
902590e175 curl: Adjust URLs
Update mirror list, add main site as last resort
Source: https://github.com/curl/curl-www/blob/master/latest.pl

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-03-15 22:49:09 +01:00
Hauke Mehrtens
b6a8b43dd2 toolchain: add musl libc.so to external toolchain
musl provides a /lib/libc.so file which should be integrated into the libc
package when the external toolchain with musl is used.

Signed-off-by: Hauke Mehrtens <hauke.mehrtens@intel.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2017-03-15 22:31:11 +01:00
Felix Fietkau
64170ab925 mt76: update to the latest version, improves mt7603 support
03e44dc mt76x2: remove unnecessary headroom check
cc70498 mt76x2: clarify queue selection field
b056a78 dma: fix endian issue in mt76_dma_get_buf
f020a60 mt7603: support loading the entire EEPROM from OTP
29b08d3 mt7603: fix endian issue in mt7603_mcu_set_timing
dce8aac mt7603: fix endian issue in mt7603_mac_fill_rx
f22273b mt7603: init WTBL entry before setting capabilities
da8e796 mt7603: check wtbl busy status and stop/start tx queues when clearing sta entry
e54add5 mt7603: move napi/tasklet enable/disable outside of the locked section
59ce2b4 mt7603: set tx vif own MAC index (needed for beacons)
93ce124 mt7603: enable beacons for other virtual interfaces
c91e660 mt7603: set secondary beacon time offsets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-15 20:56:37 +01:00
Jo-Philipp Wich
48ae44d033 opkg: gracefully handle missing $PATH, fix build warnings
Update to latest Git in order to import the following fixes:

cfe46c7 opkg_active_list_test: mark functions static, swap strcmp() with memcmp()
0b60d6a libopkg_test: mark functions static, remove unused opkg_test()
28b5e15 pkg_parse: fix bad message level for opkg_msg() call
d9e5814 pkg_parse: remove unused variable in pkg_parse_line()
1654bcc pkg_parse: remove const requirement from pkg_parse_line()
53e199e pkg_hash: remove unused variable in pkg_hash_load_feeds()
da8d599 pkg_depends: add missing parse_replacelist() prototype
f0c0a80 opkg_utils: add missing header
e450488 libopkg: remove unused progress parameters from opkg_download()
f4a55d1 libopkg: remove unused progress callback
7cbc466 libopkg: remove unused variable from opkg_install_package()
6fbf8a9 libbb: remove unused variables
7975c73 libbb: change gzip_read() buffer argument to void *
6e28563 libbb: fix gzip_thread() warnings
1ff2475 libopkg/opkg_cmd.c: more robust PATH handling
5dc3e33 libopkg: specify "/bin/sh" instead of "sh"

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-15 01:57:19 +01:00
Felix Fietkau
2f09a1e3c9 iwcap: fix handling kill signal during dump
Do not run another loop iteration before checking the stop flag

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-14 13:29:03 +01:00
Michael Marley
51130b9927 kernel: Add intel_idle driver to x86_64 build
This driver supports CPU-specific idle features on recent Intel
processors.  It does not conflict with the ACPI idle driver and
that driver will continue to be used for unsupported and non-Intel
processors.

Signed-off-by: Michael Marley <michael@michaelmarley.com>
2017-03-14 13:28:04 +01:00
Michael Marley
39df43b9e5 kernel: Add coretemp driver to x86_64 build
The x86_64 build already has the k10temp driver for AMD processors
built in, so this patch adds the coretemp driver for the same
functionality on Intel processors.

Signed-off-by: Michael Marley <michael@michaelmarley.com>
2017-03-14 13:28:04 +01:00
Felix Fietkau
772ec02a46 kernel: add missing config symbols for 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-14 13:28:04 +01:00
Rafał Miłecki
8eac991899 umdns: update to the version 2017-03-14
This includes 3 cleanups:
fd5a160 Don't cache hosts as services
80dd246 Refresh DNS records A and AAAA directly
6515101 Access cached records (instead of services) to read list of hosts

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-14 12:00:25 +01:00
Felix Fietkau
894ee9510b ipq806x: fix ethernet DMA parameters with linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 21:42:47 +01:00
Felix Fietkau
7ffaf71d53 ipq806x: fix pcie with linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 21:10:31 +01:00
Hauke Mehrtens
c481774298 curl: update to version 7.53.1
This fixes the following security problem:
* CVE-2017-2629 SSL_VERIFYSTATUS ignored

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-13 21:03:07 +01:00
Hauke Mehrtens
7b52278154 mbedtls: update to version 2.4.2
This fixes the following security problems:
* CVE-2017-2784: Freeing of memory allocated on stack when validating a public key with a secp224k1 curve
* SLOTH vulnerability
* Denial of Service through Certificate Revocation List

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-13 20:04:32 +01:00
Ian Pozella
7c9c9fdd87 kernel: tpm: add Infineon i2c support
(based on openwrt "kernel: add tpm support")

Signed-off-by: Ian Pozella <Ian.Pozella@imgtec.com>
2017-03-13 14:20:47 +01:00
Stefan Koch
d4203dfa55 lantiq: vr9 fxs support: fixed check of SMP state within vpe-mt.c
SMP state is generally affected by
- CONFIG_SMP build-time kernel configuration option and
- 'nosmp' runtime kernel commandline option

The SMP state within vpe-mt.c is determined by CONFIG_SMP option.
A runtime check is needed if VPE functionality
should be used with a kernel image that supports SMP.

This fix introduces a check for 'nosmp' command line option
if CONFIG_SMP kernel configuration option is enabled.

Note: This patch is needed to use lantiq FXS if CONFIG_MIPS_MT_SMP
(that activates CONFIG_SMP) is enabled within kernel configuration
and the 'nosmp' command line argument is given to disable SMP at runtime.

Without this patch CONFIG_MIPS_MT_SMP must be disabled before using FXS.
With this patch setting the 'nosmp' parameter is enough.

In general, concurrent usage of FXS and SMP
is incompatible and will cause kernel panics.

Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
2017-03-13 14:20:47 +01:00
Felix Fietkau
5267ff2b6a ipq806x: re-enable the RAM clock for gcc on 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 13:40:57 +01:00
Felix Fietkau
2029167b56 ipq806x: fix crash on 4.9 if the rpm clock probe happens before cpuidle init
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 13:40:56 +01:00
Felix Fietkau
2a4baf3e79 ipq806x: fix NAND support for linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 13:40:56 +01:00
Felix Fietkau
6006227cb7 ipq806x: do not allocate coherent memory in dma engine hotpath
The available amount of coherent DMA memory is very limited. On Linux
4.4 this issue was worked around by increasing the pool size.

It turns out that using coherent memory here is completely unnecessary.
This change reworks the driver code to use kzalloc+dma_map_single
instead.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 13:40:56 +01:00
John Crispin
1adf51702e ipq806x: clean up patches, port missing patches from 4.4
Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 13:40:55 +01:00
John Crispin
99b6aefd63 ipq806x: sync 4.9 kernel config with 4.4
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-13 13:40:46 +01:00
Felix Fietkau
a531d37fab ipq806x: clean up dts patching in 4.9
Do not patch upstream files, overwrite them entirely. The upstream files
are buggy for a number of devices and this significantly simplifies the
patch structure

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-13 13:33:51 +01:00
Felix Fietkau
ddf577b0b2 ipq806x: enable cmdline mangle on 4.9 (like on 4.4)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-13 13:33:50 +01:00
Felix Fietkau
0d6494daf5 image.mk: force kernel rebuild on every run
DTS dependencies are not processed correctly so makes it safer against
poentially stale builds

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-13 13:33:50 +01:00
Daniel Gonzalez Cabanelas
080c6fa476 ar71xx: WNDR4300: Fix network vlan IDs
The Netgear WNDR4300 has the VLAN IDs flipped in LuCi, fix it.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-03-13 00:13:18 +01:00
Daniel Gonzalez Cabanelas
ad9ad376bb ar71xx: WNDR4300: Fix switch HW controlled LEDs
The Netgear WNDR4300, equipped with an Atheros AR8327 Gigabit Switch,
has two LEDs on each port for monitoring LAN activity, but it currently
only uses one. Fix the configuration to use both.

The patch provides this new configuration:
- green LED: 1 Gbps link, 4Hz blink frequency
- amber LED: 10/100 Mbps link. 4Hz for 100Mbps, 2Hz for 10Mbps

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-03-13 00:12:07 +01:00
Piotr Dymacz
09862bb006 ar71xx: fix Wallys DR344 ethernet MAC addresses offsets
Without this fix, ethernet interfaces on Wallys DR344 use random MAC
addresses.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 23:52:19 +01:00
Piotr Dymacz
7e38ce2e7d ar71xx: base-files: few minor cleanups in lib/ar71xx.sh
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 23:47:59 +01:00
Piotr Dymacz
c2b5206c80 ar71xx: base-files: fix boards order in lib/ar71xx.sh
Keep everything within case statements in alphabetical order.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 23:47:59 +01:00
Piotr Dymacz
d9bc3e6882 ar71xx: base-files: shorten case statement patterns in lib/ar71xx.sh
At now there is no general rule about what part of (or whole) machine
name string should be used for board name assignment/detection and every
target handles this in a different way.

For most of the boards in ar71xx we already use only part of the string,
generally without the vendor name.

This shortens wildcards patterns in case statement for board name
assignment, wherever possible (e.g. where it won't be misleading).

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 23:47:59 +01:00
Piotr Dymacz
4f09837cdf ar71xx: base-files: always use double quotes in lib/ar71xx.sh
Be consistent and always use double quotes for case statement patterns,
as in other targets. With this approach it should be less confusing for
users adding support for new devices.

Also, be consistent with MikroTik boards wildcard pattern.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 23:43:17 +01:00
Piotr Dymacz
589b37e8b5 ar71xx: base-files: fix indentation in lib/ar71xx.sh
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 17:39:12 +01:00
Piotr Dymacz
e213647399 ar71xx: fix machine name for several devices
Be consistent with form and format of the vendor name.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-12 17:39:12 +01:00
Shuanglin Liu
53ef20f65a ar71xx: add support for Rockeetech AP531B0
Specification:
- SoC: Qualcomm Atheros QCA9531 (650/400/216 MHz (CPU/DDR/AHB))
- RAM: 64 MiB DDR2
- Storage: 16 MiB of flash (optional 16 MiB second flash)
- Wireless: built into QCA9531 (Honey Bee), PHY modes b/g/n
- Ethernet: 1x100M (port0) 1x100M (port 4)
- PCI-E: x1
- SIMcard slot: x1
- USB 2.0 port: x1 (optional)
- Ext GPIO pin: x8
- UART for serial console: x1
- External watchdog: x1 (optional)
- Power supply: 9-48V (DC jack/passive PoE)

Installation through tftp:
- Copy <Firmware Image Name> into tftp directory
- Connect board via ttl port and Ethernet port
- Boot the AP531B0
- When "Autobooting in 1 seconds" appears press Enter
- Set serverip and ipaddr appropriate
  (e.g. setenv serverip 192.168.88.10;setenv ipaddr 192.168.88.1)
- Enter "tftp 0x8050000 <Firmware Image Name>"
- Enter "erase 0x9f050000 +$filesize"
- Enter "cp.b 0x80500000 0x9f050000 $filesize"
- Enter "reset"

Signed-off-by: Shuanglin Liu <roboidler@gmail.com>
2017-03-12 17:38:31 +01:00
Alberto Bursi
3183015e1e github: include pull request template
This text is used by GitHub to remind important things to
people sending PRs through the GitHub's web interface.
See here for more information
https://github.com/blog/2111-issue-and-pull-request-templates

It links to the wiki page about submission rules.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-03-12 17:38:31 +01:00
Rafał Miłecki
cd0f9900a4 bcm53xx: parepare for building more Linksys images
We still can't enable them by default without proper TRX support.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-12 16:24:13 +01:00
Hauke Mehrtens
31c6452107 kernel: update kernel 4.4 to 4.4.53
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-12 15:46:02 +01:00
Hauke Mehrtens
9a065fcfec kernel: update kernel 4.9 to 4.9.14
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-12 15:45:50 +01:00
Rafał Miłecki
f5d403488e x86: image: drop unneeded grub call
It appears there isn't any Image/Build/grub/* define so this step looks
redundant.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-12 15:06:52 +01:00
Rafał Miłecki
9a267e6a4b x86: image: drop unused ROOTDELAY variable
It's unused since commit 7427007193 ("x86: remove the olpc subtarget,
it has been unmaintained for a long time").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-12 15:06:52 +01:00
Tim Harvey
b2255f3621 imx6: add DSA driver for MV88E6176 switch
The MV88E6176 switch is present on the GW16083 and the GW5904

As of a5c32a1f19 these drivers are to be
enabled static in per-target kernels.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-03-12 15:06:52 +01:00
Tim Harvey
5f458bf7f8 imx6: add support for GW5904
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-03-12 15:06:51 +01:00
Tim Harvey
35d761c0c5 imx6: added fixfdt to bootscript
If a 'fixfdt' uboot script exists, execute it prior to bootm to allow
easy bootloader env based fdt fixups and tweaks

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-03-12 15:06:51 +01:00
Tim Harvey
028350907e imx6: add missing dtb for imx6dl-gw553x
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-03-12 15:06:51 +01:00
Tim Harvey
4cc70d8610 imx6: fix USB for 4.9 kernel
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-03-12 15:06:50 +01:00
Felix Fietkau
055e9dfb58 xtables-addons: fix build error on ARC
The kernel unconditionally pulls in a header file that defines
'current', which conflicts with the lua extension code.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-12 15:06:50 +01:00
Kevin Darbyshire-Bryant
2cf00b640d ccache: update to 3.3.4
Update from 3.3.2 to 3.3.4 & refresh patches.

Remove 110-disable-assembler-support as ccache now understands the
'.incbin' directive.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-03-12 15:06:50 +01:00
Tim Harvey
08371a2db7 kernel: fix phy aneg crash
Fix a kernel crash caused when CONFIG_FIXED_PHY used for fixed phy drivers
in phy-add-aneg-done-function patch.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2017-03-12 11:58:45 +01:00
Mathias Kresin
11eac705c5 ramips: sort mt7620 image file alphabetical
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-12 09:28:19 +01:00
Joseph C. Lehner
de33a4cef0 ramips: add support for Netgear EX3700
Specifications:
* SoC: MT7620A
* RAM: 64 MB DDR
* Flash: 8MB NOR SPI flash
* WiFi: MT7612E (5Ghz) and builtin MT7620A (2.4GHz)
* LAN: 1x100M

The -factory images can be flashed from the device's web
interface or via nmrpflash.

Co-authored-by: Paul Oranje <por@xs4all.nl>
Signed-off-by: Paul Oranje <por@xs4all.nl>
Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-03-12 09:28:19 +01:00
Joseph C. Lehner
2c2fc50d06 build: make NETGEAR_REGION optional in netgear-chk
This patch makes specifying NETGEAR_REGION optional, in which case
mkchkimage will default to region 1 (WW).

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-03-12 09:28:19 +01:00
Hanqing Wong
38bee61dab ramips: add support for Netgear R6220
This patch adds support for the Netgear R6220, aka Netgear AC1200 and
R6220-100NAS.

Specification:
- SoC: MediaTek MT7621ST (880 MHz)
- Falsh: 128 MiB (Macronix MX30LF1G08AA-TI)
- RAM: 128 MiB (Nanya NT5CB64M16FP-DH)
- Wireless: MediaTek MT7603EN b/g/n , MediaTek MT7612EN an+ac
- LAN speed: 10/100/1000
- LAN ports: 4
- WAN speed: 10/100/1000
- WAN ports: 1
- Serial baud rate of Bootloader and factory firmware: 57600

Installation through telnet:
- Copy kernel.bin and rootfs.bin to a USB flash disk, plug to usb port
  on the router.
- Enable telnet with link: http://192.168.1.1/setup.cgi?todo=debug
  (login if required, default: admin password)
- You will see "Debug Enabled!"
- Telnet 192.168.1.1 and login with "root"
- ls /mnt/shares/ to find out path of your USB disk. 'myUdisk' for
  example.
- cd /mnt/shares/myUdisk
- mtd_write write rootfs.bin Rootfs
- mtd_write write kernel.bin Kernel
- reboot

nmrpflash can be used to recover to the netgear firmware if a broken
image was flashed.

Signed-off-by: Hanqing Wong <hquu@outlook.com>
2017-03-12 09:28:05 +01:00
Daniel Golle
562484f25c rt2x00: mt7620: make fixes requested upstream
Introduce RT6352 instead of matching against RF7620.
Clean up channel setting rfvals.
Port bandwidth filter calibration.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-03-11 20:47:13 +01:00
Álvaro Fernández Rojas
d3a2068b8d mac80211: mwifiex-sdio: select DRIVER_11AC_SUPPORT
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-11 19:32:34 +01:00
Álvaro Fernández Rojas
a856c8a824 mac80211: mwifiex-pcie: select DRIVER_11AC_SUPPORT
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-11 19:32:32 +01:00
Álvaro Fernández Rojas
26d1b66895 mac80211: mwifiex-sdio: select kmod-mmc instead of PCI_SUPPORT
Should fix buildbot issues.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-11 19:32:14 +01:00
Henryk Heisig
6674aa9798 mvebu: wrt3200acm enable SDIO interface
add mwifiex-sdio package to wrt3200acm

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-03-11 14:16:28 +01:00
Henryk Heisig
fb436f49ad mac80211: add support for Marvell 802.11n/802.11ac SDIO Wireless cards
This adds option to build kernel module and firmware packages
for a Marvell 8887 SDIO Wireless device

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-03-11 14:16:28 +01:00
Mathias Kresin
73eb5c74a1 lantiq: use the P2812HNUF* wan port as wan
The port is labeled as wan and was only used as lan port because of the
"tx ring full" issues fixed with 8f02f7c.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-11 13:45:06 +01:00
Mathias Kresin
cd8b20931e lantiq: xrx200: use vlan for ethernet wan port
Using the lantiq,wan device tree property for one interface node and
the lantiq,switch device tree property for another interface node at
the same time was never intended/isn't supported at the moment.

The property is meant to be used in two phy operation mode where one
phy is assigned to an interface without lantiq,* device tree property
and the other phy is assigned to an interface with the lantiq,wan
device property to have two netdevs.

If both properties are used at the same time, the lantiq,wan interface
is shown as independent netdev but not able to operate independent. The
port needs to be managed via swconfig. These dependency is not obvious
and fooled already a lot of users.

Add a default WAN vlan for xrx200 devices having an ethernet WAN port
and remove the lantiq,wan device tree property. Leave it up to the user
to set the ethernet WAN port as default WAN interface or to use this
port as additional LAN port.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-11 13:45:00 +01:00
Mathias Kresin
0f01253b25 base-files: always set proto passed to _ucidef_set_interface()
Overwrite an already set proto if a new one is passed to
_ucidef_set_interface() similar to what is done for the interface.

It is required when using ""ucidef_set_interface_wan 'ptm0' 'pppoe'"
after some initial wan interface configuration is already done by
ucidef_add_switch.

The "json_is_a protocol string" guard is meant to not reset an earlier
set interface proto in case something like
"ucidef_set_interface_lan 'eth0'" is used afterwards.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-11 13:45:00 +01:00
Mathias Kresin
715b066419 lantiq: fix broadcasts and vlans in two iface mode
The two phy operation mode where one phy is assigned to an interface
without lantiq,* device tree property and the other phy is assigned to
an interface with the lantiq,wan device property was broken with the
multicast package leaks between vlans fixes.

Move the multicast packages relevant portmap settings to the condition
which handles multicast packages for better readability.

Replace the priv->port_map based port_map only for the interface which
has the lantiq,switch device tree property set, to allow tagged
multicast packages in two phy mode where the lantiq,switch device tree
property isn't used.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-11 13:45:00 +01:00
Rafał Miłecki
cc3c50eb22 bcm53xx: prepare for building Archer C5 V2 image
Don't enable it yet as kernel needs to be updated first.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-11 12:33:53 +01:00
Rafał Miłecki
dfac808076 firmware-utils: tplink-safeloader: add support for Archer C5 V2
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-11 12:06:58 +01:00
Kristian Evensen
b11c51916c ramips: Improve Sanlinking D240 config
* The left most mini-PCIe slot (the one attached to SIM2) can be
power-cycled by setting GPIO 0 to high/low.

* The D240 only needs the MT76x2 module, so update makefile to reflect this.
Note that until the default mt7620 target is updated, then kmod-mt76 (and thus
kmod-mt7603) will be selected by default.

v2->v3:
* Indentation error.

v1->v2:
* Rename gpio and remove redundant comment (thanks Piotr Dymacz)

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-03-11 08:36:52 +01:00
Stijn Segers
0ad82375cd ar71xx: add ath10k driver and firmware for Netgear R6100 to firmware image
A Netgear R6100 owner reported the LEDE images lack the ath10k driver and firmware [1]. This patch adds both to the R6100 image.

[1] https://forum.lede-project.org/t/netgear-r6100-5ghz-wifi-not-working-after-initial-install/2222

Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
2017-03-11 08:30:56 +01:00
John Crispin
99d0633f24 kernel: add another missing TPM symbol
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-11 08:27:10 +01:00
Furong Xu
a93a48328d ramips: kmod-sdhci-mt7620: switch dependence to kmod-mmc
mtk-mmc/mtk_sd.ko only depends on mmc_core and mmc_block.
And, we remove kmod-sdhci dependence assignment from all related target devices.

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-03-11 08:19:37 +01:00
John Crispin
0e56151ab2 mediatek: fix ESW EINT pinctrl define
This got lost while bumping the target to v4.9 causing ethernet issues on
some boards.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-11 07:49:58 +01:00
Lucian Cristian
8e75efc0fb base-files: add submission service port
prevent postfix start failure fatal: 0.0.0.0:submission: Unrecognized service

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2017-03-11 05:53:33 +01:00
Rafał Miłecki
e58ea0a80d bcm53xx: use upstream fix for iproc regression
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-10 22:26:20 +01:00
Rafał Miłecki
0ebc681fe2 umdns: update to the 2017-03-10 version
This fixes crash in interface_start caused by freeing interface in
interface_free without stopping a timeout.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-10 11:59:29 +01:00
Matthias Schiffer
452f5446b8 vxlan: add new package for netifd VXLAN proto
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-03-10 01:23:50 +01:00
Matthias Schiffer
732645b075 netifd: update to git HEAD version
91810ec system-linux: add VXLAN support

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-03-10 00:38:12 +01:00
Daniel Golle
181bc02d2e rt2x00: mt7620: yet another beauty session
So here is another round of improvements for MT7620 WiFi.

This commit fixes a few significant issues related to TX_PWR_CFG_x and
TX_ALC and also makes the code more readable by adding register
descriptions for things added for MT7620 and use the usual bit-field
access macros and the now defined macros instead of plain bit-ops and
magic numbers.

Properly describe EEPROM_TARGET_POWER at word 0x68 (== byte 0xD0) and
thereby fix internal TXALC which would otherwise just read
out-of-bounds of the EEPROM map.

Split-out tx-power/ALC related stuff into an additional function.
Fix VCO calibration, it was carried out properly in the channel
switching but incomplete in the actual VCO calibration function.
Also there is no need to trigger VCO calibration in channel switching,
the VCO calibration function is already being called at this point.
Remove it from channel switching function to avoid redundant code.

The TX power calibration differs significantly from all other
Mediatek/Ralink chips: They finally allow 0.5dB steps stored as 8-bit
values for (almost) each bitrate -- and promptly ran out of space and
for some reason didn't want to change the EEPROM layout. The hence
opted for a scheme of sharing values for some adjecent bitrates and
a highly over-complicated (or obfuscated?) way to populate the
TX_PWR_CFG_x registers with the values stored in the EEPROM.
The code here now looks much less complicated than what you see in the
vendor's driver, however, it does the exact same thing:
bGpwrdeltaMinus is a constant and always TRUE, hence half of the
code was dead. Gpwrdelta is always 0 (rather than using the value read
from the EEPROM). What remains is some very grotesque effort to avoid
0x20, probably some hardware bug related to some misunderstanding of
what a singed 8-bit value is (imagine: if it was a signed 6-bit value
then someone could believe that 0x20 == 0x0). And then they didn't
clean it up once they later on anandonned that whole story of having a
constant offset for 40 MHz channels and just set the offset to be
constant 0 -- there is no effort for avoiding 0x20 for the 20 MHz
values stored in the EEPROM, hence that's probably just a forbidden
value in the EEPROM specs and won't appear anyway...
Anyway, the whole thing felt like solving some college math test
where in the end everything cancels out and the result equals 0 ;)
To make sure that channel bandwidth power compensation really doesn't
need to be taken care of, output a warning when the corresponding
value stored in the EEPROM is non-zero.

Also there is no apparent reason to refrain from initializing RFCSR
register 13, it doesn't fail what-so-ever.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-03-09 17:56:16 +01:00
Rafał Miłecki
edda26dc4f bcm53xx: fix memory corruption caused by iproc PCE controller driver
This is a simple revert of upstream patch for now.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-09 11:06:55 +01:00
Kevin Darbyshire-Bryant
3a06dd60eb dnsmasq: do not forward rfc6761 excluded domains
RFC 6761 defines a number of top level domains should not be forwarded
to the Internet's domain servers since they are not responsible for
those domains.

This change adds a list of domains that will be blocked when 'boguspriv'
is used and augments that which is already blocked by dnsmasq's notion
of 'local service' using '--bogus-priv' i.e. RFC 1918 private addresses
and IPv6 prefixes as defined in RFC 6303.

To make this configurable rather than hard coded in dnsmasq's init
script, a new file /usr/share/dnsmasq/rfc6761.conf is conditionally
included.

The default file matches the RFC 6761 recommendation along with a few
other top level domains that should not be forwarded to the Internet.

Compile & run tested Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-03-09 10:42:27 +01:00
Ansuel Smith
2261c9cc77 mvebu: add default sata trigger
Change dts file to add default sata trigger to sata led.

Backport upstream accepted patch to add sata trigger to device tree
source files already upstreamed.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[backport upstream accepted patch]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-03-08 19:06:04 +01:00
Ansuel Smith
3d0bd15056 mvebu: enable disk led trigger
As we have a disk led we enable the disk trigger that work with the easata port

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-03-08 19:06:04 +01:00
Alex Maclean
6254a2028c lantiq: add support for the Alpha ASL56026
The ASL56026 is a VDSL2 router with dual 100mbit ethernet,
also known as the ECI B-FOCuS V-2FUb/I.

CPU: Lantiq XRX268 v1.1 at 333MHz
Modem: Lantiq VRX208
RAM: 32MiB DDR2 at 167MHz
Flash: 8MiB NOR, Spansion S29GL064N90TF04

UART is at JP1:
Pin 1 TX
Pin 2 GND
Pin 3 +3.3V
Pin 4 NC
Pin 5 RX

Boot selection pins are exposed via several resistor jumpers:
boot_sel0 is at J15, on the rear of the board. Default is high.
boot_sel1 is at J3, next to the flash - it is also the flash CE# pin. Default is low.
boot_sel2 is at J12, directly below the SoC. Default is low.
boot_sel3 is at J16, on the rear of the board. Default is low.

The boot_sel pins should never be shorted, the jumper must be moved or
a lower value resistor used to change the pull (existing resistors are 4k7, 1k should work)

To install with the stock bootloader you must break the built in image selection process
which uses at least the following vars: f_upgrade_addr, f_upgrade2_addr, loadaddr, kernel_addr, activeregion, committedregion
This is done by setting loadaddr and both f_upgrade_addr vars to the same address:

	VR9 # setenv loadaddr 0xB0040000
	VR9 # setenv f_upgrade_addr 0xB0040000
	VR9 # setenv f_upgrade2_addr 0xB0040000
	VR9 # saveenv

Then flash the firmware image:

	VR9 # tftpboot 0x81000000 lede-lantiq-xrx200-ASL56026-squashfs-sysupgrade.bin
	VR9 # erase B0040000 +${filesize}
	VR9 # cp.b 0x81000000 0xB0040000 ${filesize}

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-03-08 19:06:04 +01:00
Alex Maclean
a9b74f9f81 lantiq: clarify VG3503J name
Append the ECI model to the device name, to avoid confusion with the
older model.

Signed-off-by: Alex Maclean <monkeh@monkeh.net>
2017-03-08 19:06:04 +01:00
Rafał Miłecki
154b3a6863 kernel: backport first bcma 4.12 patch for GPIO and of_node
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-08 16:55:21 +01:00
Felix Fietkau
92b5b360fe ipq806x: clean up dts patch
Move dts files to files/, remove useless patch chunks

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-08 14:38:22 +01:00
Felix Fietkau
2a3952bcd5 kernel: re-apply 300-arch-arm-force-ZRELADDR-on-arch-qcom.patch on 4.9 (FS#549)
Fixes memory corruption issues. See commit bdcba36442 for more
details.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-08 14:38:22 +01:00
Felix Fietkau
9f09bd6606 ipq806x: refresh patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-08 14:38:22 +01:00
Piotr Dymacz
b6e3b70790 ugps: fix and improve init script
The ugps tool expects device path in last argument. If it's provided
before other options, they won't be processed at all.

Additionally, make it possible to use absolute path for gps character
device in related uci configuration.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-03-08 13:32:24 +01:00
Rafał Miłecki
318f2d6101 kernel: fix of_node handling in LEDs core code
This backports fixes for setting of_node and making it possible to read
extra info from DT. This was partially fixed by:
[PATCH] leds: leds-gpio: Set of_node for created LED devices
but it didn't work during initialization.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-08 13:06:16 +01:00
Stijn Tintel
4124847772 brcm2708: detect Raspberry Pi Zero W
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-03-08 09:03:39 +01:00
Stijn Tintel
a8c2a719fa brcm2708: order boards and models alphabetically
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-03-08 09:03:27 +01:00
Jo-Philipp Wich
2543e986ad ramips: fix Linksys RE6500 switch port mapping
Properly map the internal switch ports to the proper LAN1..LAN4 labels.

Fixes #530.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-07 17:39:20 +01:00
Yousong Zhou
78f14c099d openvpn: move list of params and bools to a separate file
So that future patches for addition/removal of them can be more
readable

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-07 21:31:59 +08:00
Claudiu Brasovean
c70c6ac070 procd.sh: use parameterized respawn values
continue work started here: http://patchwork.ozlabs.org/patch/520859

Extend /etc/config/system with parameters to set the default respawn treshold and respawn timeout
	for procd launched services that have respawn enabled.
This results in cleaner init scripts, while making sure services have respawn parameters set.

Signed-off-by: Claudiu Brasovean <cbrasho@gmail.com>
2017-03-07 11:40:36 +01:00
Felix Fietkau
0504cd22aa ar71xx: fix build without CONFIG_NOP_USB_XCEIV (FS#593)
Open-code usb_phy_generic_register instead of calling it, since it is
really trivial. Avoid pulling CONFIG_NOP_USB_XCEIV into the kernel
config and add a proper dependency instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-07 11:37:50 +01:00
Felix Fietkau
f2516e53c1 kernel: fix usb chipidea controller support
If ehci platform driver is loaded before the chipidea controller driver,
both are competing for the same IO resources and the generic driver gets
used for the hardware. This results in USB device mode being
unavailable.
Split generic EHCI support code out of kmod-usb2, so that the chipidea
driver can be included without also pulling in the generic one. Also
rework the load order, so that the chipidea driver gets loaded first, in
case both are installed

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-07 11:37:50 +01:00
Felix Fietkau
2422f84b1b kernel: disable deprecated CONFIG_USB_EHCI_ATH79 symbol
USB_EHCI_HCD_PLATFORM is used instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-07 11:37:50 +01:00
Jo-Philipp Wich
64de1cb1fd ppp: propagate master peerdns setting to dynamic slave interface
Honour the parent interfaces peerdns option when spawning a virtual DHCPv6
interface in order to avoid pulling in IPv6 DNS servers when the user opted
to inhibit peer DNS servers in the configuration.

Fixes #597.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-07 11:26:39 +01:00
Hans Dedecker
a8e0816490 odhcpd: add loglevel uci option in odhcpd defaults
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-06 17:38:33 +01:00
Hans Dedecker
42e3053ee4 procd: update to git HEAD version
8f218f5 procd: service gets deleted when its last instance is freed
35209a0 procd: update modprobe path

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-06 17:37:25 +01:00
Hans Dedecker
28509d6809 odhcp6c: update to git HEAD version
c69555c dhcpv6: use PRIu64 print macro

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-03-06 17:37:01 +01:00
Jo-Philipp Wich
aedd5d5cb0 opkg: fix several package installation bugs
Update to latest Git in order to import the following fixes:

19070b6 unarchive: fix possible segmentation fault in deb_extract()
758527e pkg: forward "provided_by_hand" flag in pkg_merge()
1fdc2ca pkg: mark bit fields in pkg_t unsigned
15fc1ee opkg_cmd: avoid null pointer dereference in opkg_what_depends_conflicts_cmd()
439c89e opkg_cmd: fix endless loop in whatprovides/whatreplaces
0fb3e9f pkg_depends: propagate virtual provided detail flag to providers
793155f pkg_depends: fix unsatisfied dependency installation order
b1dc770 libopkg: fix some overly aggressive line wrapping in pkg_depends.c

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-06 13:02:35 +01:00
Felix Fietkau
697ff33771 kernel: fix whiteout rename on ubifs (FS#579)
This was apparently caused by some linux upstream merge damage

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-06 10:12:42 +01:00
Wojciech Jowsa
f223c4a923 ar71xx: set status led for the gl-* boards
Signed-off-by: Wojciech Jowsa <w.jowsa@radytek.com>
2017-03-06 07:50:11 +01:00
John Crispin
787cb58574 kernel: more tpm related symbols
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-06 07:16:50 +01:00
John Crispin
7e4b869c45 fstools: add blockd
this daemon replaces mountd.

Signed-off-by: John Crispin <john@phrozen.org>
2017-03-06 07:16:50 +01:00
John Crispin
6a772cb953 mountd: drop in favour of blockd
Signed-off-by: John Crispin <john@phrozen.org>
2017-03-06 07:16:50 +01:00
Florian Fainelli
cbfaba8f3f odhcpd: Bump to latest HEAD
Brings in the following change:

9eac2a896341 dhcpv6-ia: Check lockf return value

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-05 14:03:27 -08:00
Yousong Zhou
6c9345bd8c malta: restore "be" subtarget from being source-only
The malta "be" and "le" subtargets share the arch with many devices of
ar71xx and ramips.  They can be handy for testing, debugging, trying
both snapshot and release builds.

This commit makes the "be" subtarget part of the ci and release builds

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-03-05 16:34:17 +01:00
Florian Fainelli
7f0c95a7df toolchain: Allow external toolchains to specify libthread-db
We need to let external toolchains be able to specify the path and
specification file to the libthread-db POSIX thread debugging shared
libraries.

This fixes GDB not being able to be installed because it is depending on
libthread-db:

Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies
 * for gdb:
 *      libthread-db *
 * opkg_install_cmd: Cannot install package gdb.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-04 11:19:56 -08:00
Álvaro Fernández Rojas
6debeaab45 brcm2708: add support for the new Raspberry Pi Zero W
Support is experimental since I haven't got any device to test.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:41:34 +01:00
Álvaro Fernández Rojas
d35ce56496 brcm2708-gpu-fw: update to latest version
This is needed in order to add support for the new RPi Zero W

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:40:49 +01:00
Álvaro Fernández Rojas
baad22eed3 brcm2708: update linux 4.9 patches to latest version
As usual these patches were extracted and rebased from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.9.y

- Remove led1 from diag.sh for RPi3 since it causes boot issues.
- Fix modules.mk typos.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-03-04 19:37:50 +01:00
Kevin Darbyshire-Bryant
f229f4af31 kernel: update kernel 4.4 to 4.4.52
Bump kernel from 4.4.50 to 4.4.52

Refresh patches

Compile tested all 4.4. targets

Run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-03-03 18:17:47 +01:00
Jo-Philipp Wich
a92d977904 kernel: fix kmod-tpm-tis packaging
The tmp-tis module depends on tpm_tis_core.ko, so package this file as well.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-03 18:14:36 +01:00
Pavel Kubelun
4101020dfb ath10k-firmware: update qca9984 firmware
Bump qca9984 firmware.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-03-03 15:44:55 +01:00
Felix Fietkau
c8f7031ba7 ubox: update to the latest version
21a4bd0 kmodloader: modprobe: return 0 for loaded modules

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-03-03 12:01:54 +01:00
Florian Fainelli
9e740fa5a5 openssl: Use mkhash for STAMP_CONFIGURED
The current way of creating a STAMP_CONFIGURED filename for OpenSSL can
lead to an extremely long filename that makes touch unable to create it,
and fail the build.

Use mkhash to produce a hash against OPENSSL_OPTIONS which creates a
shortert stamp file,

Fixes #572

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:52 -08:00
Florian Fainelli
30159b3886 rssileds: Fix build with external toolchains
Pass down TARGET_CPPFLAGS for path to header files, and append the
libraries we depend on in TARGET_LDFLAGS. Put TARGET_LDFLAGS at the end
of the command line as is required by modern GCC/binutils.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:52 -08:00
Florian Fainelli
4aa1560de3 adb: Also pass TARGET_CPPFLAGS
Fixes build issues with external toolchains that do not have STAGING_DIR
in their default search path.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
fe8618a8fe swconfig: Link with libubox
Fixes linking failures observed with external toolchains:

/home/florian/dev/toolchains/stbgcc-4.8-1.5/bin/../lib/gcc/mipsel-linux-gnu/4.8.5/../../../../mipsel-linux-gnu/bin/ld:
warning: libubox.so, needed by
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so,
not found (try using -rpath or -rpath-link)
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_open_nested'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_parse'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blob_nest_end'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_add_field'

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
306ee64361 px5g: Fix TARGET_LDFLAGS and add TARGET_CPPFLAGS
Make sure we pass down TARGET_CPPFLAGS to let toolchains with no default
search paths to find the mbdetls headers, and override TARGET_LDFLAGS to
include libraries we are linking against.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
4c02435b9b omcproxy: Update to latest HEAD
Brings the following change:
1fe6f48f8a50 Cmake: Find libubox/list.h

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
c0b32b04c5 usbmode: Update to latest HEAD
Brings the following changes:

22f041e18df0 Extend StandardEject sequence to include LUN 1
61fdf7e9b1cc cmake: Search for libjson-c
2769852e76b5 cmake: Find libubox/blobmsg_json.h
8a47c4b6649f add TargetClass support

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:51 -08:00
Florian Fainelli
562ebe7982 bsdiff: Also pass down TARGET_CPPFLAGS
Fixes build with external toolchains not having STAGING_DIR in their
default search path(s).

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:50 -08:00
Florian Fainelli
9b2321f42d thc-ipv6: Allow overriding CFLAGS
thc-ipv6 did not allow an external environment to override CFLAGS, which
would lead to our CFLAGS not being passed properly (relro,
optimizations, etc...)

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-03-01 17:19:50 -08:00
Joseph C. Lehner
11356e4078 ramips: remove kmod-mt76* from EX2700 images
These modules are not needed by the EX2700, since it does not
have an external wifi chip (MT7620A is covered by rt2x00).

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-03-01 22:29:57 +01:00
Furong Xu
b65718ae14 ramips: rename patch file suffix from .c to .patch
Signed-off-by: Furong Xu <xfr@outlook.com>
2017-03-01 22:29:57 +01:00
Francois Goudal
9b35815f0f ramips: add support for Afoundry EW-1200
This device features both a 2.4 and 5Ghz radio, and supports
802.11a/b/g/n/ac modes.
It has 5 Gb-Ethernet ports and a USB 3.0 host port.

It is powered by the Mediatek MT7621 SoC, and the MT7602E and MT7612E wifi
chipsets, together with 128MB of RAM and 16 MB of SPI Flash.

The stock firmware is in fact based on some openwrt barrier breaker, with a
mediatek SDK kernel, and an afoundry custom made web interface (not LuCI
based).
Firmware update page on the stock web interface can not accept sysupgrade
images, it bricks the device.
At this point, the only working solution I found was to connect to the
serial console port (available on J4 header) and to use opkg to install
dropbear.
Then scp the sysupgrade file in the device's /tmp and run sysupgrade from
console without preserving configuration files.

Signed-off-by: Francois Goudal <francois@goudal.net>
2017-03-01 22:29:50 +01:00
Rafał Miłecki
23bf153ead kernel: fix earlycon by keeping __earlycon_table
Somewhere between 4.4 and 4.9 there was a change that made
OF_EARLYCON_DECLARE adding entries to the __earlycon_table instead of
__earlycon_of_table. We need to keep this table as well.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-01 15:40:17 +01:00
Rafał Miłecki
339de82347 mac80211: brcmfmac: always print error when PSM's watchdog fires
This error is important enough to be displayed even without debugging.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-01 07:10:48 +01:00
Rafał Miłecki
9209511d61 bcm53xx: backport Broadcom's iProc QSPI driver
This driver has been added instead of improving spi-bcm53xx. It has some
advantages: allows SPI speed control & hopefully doesn't have bug that
was stopping us from using multiple SPI messages for writing flash data.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-03-01 07:02:17 +01:00
Jo-Philipp Wich
ebf846b005 opkg: mark as essential (FS#571)
Flag the opkg package as essential to avoid accidential uninstalls of it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-03-01 03:06:40 +01:00
Alberto Bursi
ff42a8330b kirkwood: fix include in etc/board.d/02_network
the mtd_get_mac_ascii function called within this script requires the inclusion of /lib/functions/system.sh

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-28 23:46:02 +01:00
ZengFei Zhang
edae3479e6 ramips: add support for HiWiFi HC5962
This patch adds supports for the HiWiFi HC5962(gee4) http://www.hiwifi.com

Short specification:

 - MT7621AT + MT7612EN + 7603EN
 - 256MB DDR3 RAM
 - 128MB NAND flash
 - 1+3 x 1000M Ethernet
 - 1x USB 2.0 port. 1x USB 3.0 port.
 - reset button
 - UART pad on PCB (JP3: TX, RX, GND, 3.3V)

Flash instruction:

1, Download lede-ramips-mt7621-hc5962-squashfs-factory.bin
2, Login as root via SSH on 192.168.199.1 and then copy factory.bin(using wget or nc or...) to /tmp/
3, use the following commands:
   $ mtd write /tmp/lede-ramips-mt7621-hc5962-squashfs-factory.bin firmware
   $ mtd erase firmware_backup && reboot
After reboot you should be able to login as root via SSH on 192.168.1.1

Signed-off-by: ZengFei Zhang <zhangzengfei@kunteng.org>
2017-02-28 23:46:02 +01:00
Rafał Miłecki
2677b66f9b bcm53xx: backport accepted BCM5301X and BCM53573 patches
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-28 22:52:46 +01:00
Felix Fietkau
f9da6238e4 kernel: fix MIPS memory function optimization build error in decompressor
Fixes the following build error:
  CC      arch/mips/boot/compressed/decompress.o
  OBJCOPY arch/mips/boot/compressed/vmlinux.bin
  XZKERN  arch/mips/boot/compressed/vmlinux.bin.z
  OBJCOPY arch/mips/boot/compressed/piggy.o
  LD      vmlinuz
arch/mips/boot/compressed/decompress.o: In function `lzma2_lzma':
/tmp2/mehrtens/linux/arch/mips/boot/compressed/../../../../lib/xz/xz_dec_lzma2.c:884: undefined reference to `memmove'
make[1]: *** [vmlinuz] Error 1
make: *** [vmlinuz] Error 2

lib/decompress_unxz.c only defines its own memmove function if there is no
macro with the same name.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-28 20:22:10 +01:00
Hsing-Wang Liao
a29163faab wireless-tools: Change download url to github
Signed-off-by: Hsing-Wang Liao <kuoruan@gmail.com>
2017-02-28 20:22:10 +01:00
Rafał Miłecki
a732f69f85 bcm53xx: enable CLK_BCM_NSP for kernel 4.9
This is required to get booting kernel.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-28 16:43:51 +01:00
Daniel Gonzalez Cabanelas
1e4ee5a318 brcm63xx: CPVA502+: add SPROM wifi
Add SPROM wifi to the kernel board data.

After this fix, the wifi won't work anyway due the lack
of RAM memory (16 MB). It will throw a kernel panic
when loading the b43 drivers.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-02-28 13:18:28 +01:00
Daniel Gonzalez Cabanelas
c5138d943b brcm63xx: CPVA502+: fix userspace support
Fix board name typo, fix network configuration and add a led trigger.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-02-28 13:18:27 +01:00
Daniel Gonzalez Cabanelas
d371581a2a brcm63xx: CPVA502+: fix image generation
Fix typo, erase pointless option and allow to build the image.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-02-28 13:18:27 +01:00
Daniel Gonzalez Cabanelas
dc3537415c brcm63xx: CPVA502+: fix LEDs and buttons at DTS
Leds are wrong and a button is missing, fix them.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-02-28 13:18:27 +01:00
Daniel Gonzalez Cabanelas
377315de4d brcm63xx: fix external IRQ edge type sense
Fix the register for configuring rising/falling edge

Rising should be sense=1, and falling sense=0.
The old driver used these values, but the new one have
them flipped.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
2017-02-28 13:18:26 +01:00
Jonas Gorski
a1a0f3f275 kernel: sort generic configs
Use kconfig.pl to sort the generic configs and get rid of duplicate
entries.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-28 11:49:35 +01:00
Matthias Schiffer
5ef0854b11 rules.mk: make PKG_CONFIG_DEPENDS properly track string values
The confvar macro is adjusted to not only consider if a variable has a
value or not, but also the value itself. Instead of creating a string of
'y' and 'n' characters, all variable names and values are concatenated
and hashed.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-02-27 23:46:53 +01:00
John Crispin
d49ddcdfd2 kernel: add another missing TPM symbol
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-27 14:51:43 +01:00
Felix Fietkau
97212262d5 kernel: add missing TPM related config symbol for 3.18
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-27 14:51:52 +01:00
Felix Fietkau
891ed144ff lantiq: select kmod-mt7603 instead of kmod-mt76 for WBMR-300HPD
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-27 14:20:14 +01:00
Felix Fietkau
4babc62dbd kernel: fix TPM related config symbols for 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-27 13:55:36 +01:00
John Crispin
011798a0de kernel: add missing HW_RANDOM_TPM symbol
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-27 12:37:23 +01:00
Jonas Gorski
5e3fb70094 toolchain: unbreak glibc on MIPS
Binutils recently updated the ABI version to 5, which broke glibc, as it
refuses to load anything > 3. Upstream reverted the ABI version update,
so backport the commit.

Fixes the following error on boot:

/bin/sh: error while loading shared libraries: /lib/libcrypt.so.1: ELF file ABI version invalid
[    0.920077] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00
[    0.920077]
[    0.929450] Rebooting in 1 seconds..

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-27 12:15:45 +01:00
Wang JiaWei
d48cc5e044 ramips: add support for HiWiFi HC5661A
HC5661A is almost the same as HC5661 but MT7628AN is used instead of MT7620A.

- MT7628AN
- 128 MiB DDR2 RAM (W971GG6KB-25)
- 16 MiB SPI NOR flash (W25Q128)
- SD slot (not work yet)
- 1+4 x 100M Ethernet
- 802.11 b/g/n Wi-Fi
- 3 x LED
- 1 x button
- UART pad on PCB (JP1: TX, RX, GND, 3.3V)

The factory flash layout seems different from HC5661.
"hwf_config" is renamed to "oem" and its size changes to 0x20000.
It is modified accordingly in the dts file.

0x000000000000-0x000000030000 : "u-boot"
0x000000030000-0x000000040000 : "hw_panic"
0x000000040000-0x000000050000 : "Factory"
0x000000050000-0x000000160000 : "kernel"
0x000000160000-0x000000fc0000 : "rootfs"
0x000000bb0000-0x000000fc0000 : "rootfs_data"
0x000000fc0000-0x000000fe0000 : "oem"
0x000000fe0000-0x000000ff0000 : "bdinfo"
0x000000ff0000-0x000001000000 : "backup"
0x000000050000-0x000000fc0000 : "firmware"

To install LEDE, enabled the "developer mode",
which will *void your warranty* and open the SSH server at port 1022.

sysupgrade -n -F lede-ramips-mt7628-hc5661a-squashfs-sysupgrade.bin

SD slot:
- Tried to add modules kmod-sdhci kmod-sdhci-mt7620, and corresponding dts block.
- It will block WAN + 3xLAN ports, only one LAN works.
- I'm not sure why, everything else works fine.

Signed-off-by: Wang JiaWei <buaawjw@gmail.com>
2017-02-27 11:39:31 +01:00
Ansuel Smith
a0a9ba0464 kernel: update 4.9 to 4.9.13
refresh patch 630-packet_socket_type

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-02-27 11:39:31 +01:00
Chris Blake
3fcc4b656a kernel: Add TPM Module support
The following will enable the TPM kernel module, as well as support for
the atmel i2c TPM driver. Tested and confirmed working on an Aerohive
AP-121

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-02-27 11:39:23 +01:00
Thomas Reifferscheid
eb09d79c16 ipq806x: sanitize Dni image generation
The more straight forward approach for generating the pure and unpadded
kernel file which then can be used for initramfs straight.
Build options for factory.img and sysupgrade.tar are handeled
seperately.

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-02-26 13:32:26 +01:00
Felix Fietkau
b24d91faf1 kernel: enable hwmon-k10temp in the x86/64 kernel config instead of packaging it
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-26 13:31:51 +01:00
Etienne Haarsma
d90abebd06 tools/m4: update 1.4.18
Patch 100-fix-gets-removal.patch is removed because it's included in the new version.

Signed-off-by: Etienne Haarsma <bladeoner112@gmail.com>
2017-02-26 13:31:45 +01:00
Felix Fietkau
1f22957247 build: clean up redundant touching of the package install info file
Instead of using a separate .clean stamp file, remove the install info
file on compile, then append the install package list afterwards

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-26 13:31:44 +01:00
Felix Fietkau
9467ce42da build: get rid of host.mk
Defined required host related variables in toplevel.mk instead

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-26 13:31:44 +01:00
Felix Fietkau
be206eba3a build: get rid of FIND_L from host.mk
This was added for Mac OS X many years ago, but recent versions also
support find -L

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-26 13:31:44 +01:00
Alex Samorukov
ffa9f3d74b packge/boot/rbcfg: add new boot constants found in the recent Mikrotik devices
Signed-off-by: Alex Samorukov <samm@os2.kiev.ua>
2017-02-26 13:31:43 +01:00
Alif M. Ahmad
399cbbd127 grub2: update to 2.02~rc1
Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-02-26 13:31:32 +01:00
Thibaut VARENE
ed49d08762 ar71xx: mikrotik: erase firmware partition on SPI NOR devices in pre_upgrade()
On Mikrotik SPI NOR devices, the firmware partition must be erased when flashing
from stock firmware, otherwise leftover bits (in particular a kernel signature)
can trigger a boot loop.

When booted from initramfs (the only way to flash LEDE on these devices),
this patch unconditionally erases the firmware partition in the pre_upgrade()
stage for all supported SPI NOR devices.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-26 13:30:39 +01:00
Joseph C. Lehner
df36b5e1b3 ramips: include only kmod-mt76-core in EX2700 image
This patch frees up flash space on the EX2700, by
removing unused mt76 drivers and firmware.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-02-26 10:26:50 +01:00
Arvid E. Picciani
0d09c7281f ar71xx: Enable RB2011 TTY
Enables TTY on the Mikrotik RouterBoard RB2011*R*

Signed-off-by: Arvid E. Picciani <aep@exys.org>
2017-02-26 08:46:09 +01:00
Ansuel Smith
9c3e29033d kernel: update 4.9 to 4.9.12
Refresh generic patch

Compiled and tested WRT1900ACS

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-02-26 08:44:26 +01:00
Yangbo Lu
0e5d67d483 layerscape: add LS1043A Rev1.1 support
Backport kernel patches for LS1043A Rev1.1 support from upstream,
patchwork, and SDK. And update to latest u-boot to support LS1043A
Rev1.1.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-02-26 08:41:40 +01:00
Kevin Darbyshire-Bryant
c8ac9c09f9 iftop: bump to latest upstream
Drops a LEDE carried patch now upstream.
Convert to autotools.
A number of nits fixed upstream (dns & short packet handling most
notable)

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-02-26 08:41:08 +01:00
Yousong Zhou
699eedace0 relayd: fix making incomplete instance json data
Defer procd_open_instance only after validity check passed.

Fixes FS#541

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-02-25 20:16:59 +08:00
Yousong Zhou
699976e61d relayd: remove old start-stop-service related code
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-02-25 20:16:59 +08:00
Felix Fietkau
887347497f ubus: update to the latest version
c09e4f0 ubusd: fix incomplete copy of shared buf during queue-ing
453b87f cli: add support for subscribing to objects
6eb3c96 cli: do not use default timeout for listen
dfe3383 libubus: reset ctx->sock.error when doing ubus reconnect
34c6e81 cli: fix listen_timeout compile issue

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-25 11:15:09 +01:00
Ted Hess
23dff07148 libubox: Update to latest version
9d6305a utils: Change calloc_a() to return size_t aligned pointers

Signed-off-by: Ted Hess <thess@kitschensync.net>
2017-02-24 15:32:47 -05:00
Yousong Zhou
e8871d946a ubox: fix possible address alignment issue
Fixes FS#544

3dc78a4 kmodloader: don't store aliases info in struct module

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-02-24 21:35:32 +08:00
Yousong Zhou
9063544c30 ppp: ppp6-up: add executable permission bit
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-02-24 21:35:32 +08:00
Yousong Zhou
8d8ef24eeb mac80211: hwsim: select DRIVER_11AC_SUPPORT and DRIVER_11W_SUPPORT
This is required for default wireless configuration of malta target to
work out of the box again.  Fixes "77ece30e: hostapd: Add ability to
specify that that wireless driver supports 802.11ac"

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-02-24 21:35:31 +08:00
Felix Fietkau
3e41afda56 iw: sync nl80211.h with mac80211 package
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-24 12:17:45 +01:00
Hans Dedecker
ea24d87e7b odhcpd: update to git HEAD version (FS#397) (FS#481)
1b630f8 router: don't announce prefixes with valid lifetime equal to 0
ba0cac0 router: fix arithmetic exception fault
3495f17 router: allow RA prefix lifetime being set to leasetime value (FS#397)
e437ce9 treewide: simplify dhcp leasetime checking
942fb33 router: support ra_mininterval and ra_lifetime uci parameters (FS#397)
f913337 router.h: fix alignment style
4dc7edb Revert "odhcpd.h: fix alignment style"
62ea54f odhcpd.h: fix alignment style
a898ee5 config: make loglevel configurable via uci (FS#481)
51c756c odhcpd: display correct default log level in usage text
68ee0b5 treewide: define and use macro IN6_IS_ADDR_ULA
fa57225 ndp: deregister netlink event socket for non recoverable errors
ac70d28 odhcpd: fix white space errors

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-23 22:02:33 +01:00
Ben Kelly
df9e7b1b26 swconfig: Bugfix switch_port uci option parsing
When not defining 'device' or 'vlan' in relevant switch_port uci
sections, behaviour is inconsistent due to *devn, *port and *vlan
pointers not being zero initialized.

Signed-off-by: Ben Kelly <ben@benjii.net>
2017-02-23 16:52:17 +01:00
Alexandru Gagniuc
43b6d3f059 uboot-omap: Makefile: Include kernel.mk
This is needed for the definition of $(LINUX_DIR). This is used in
u-boot.mk to change the device-tree compiler to the dtc used by
linux.

Without this, the build will use the system dtc. This results in a
build failure when a dtc does not exist outside the buildroot.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
2017-02-23 16:43:01 +01:00
Felix Fietkau
eb4f70a3cd ar71xx: use common firmware partition for WNDAP360
Patch from https://github.com/openwrt/openwrt/pull/398

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-23 16:27:47 +01:00
Felix Fietkau
9edff13abd mac80211: disable potentially harmful PS software retry for A-MPDU sessions
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-23 16:26:33 +01:00
Felix Fietkau
942ac18c8a netifd: fix stopping netifd + interfaces
stop() is overwritten by rc.common, so implement stop_service instead.
While at it, remove the now unnecessary restart() override

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-23 16:26:23 +01:00
Joseph C. Lehner
b8ea9efc58 mt76: split kmod package
This patch splits `kmod-mt76` into three separate packages:
`kmod-mt76-core`, `kmod-mt76x2` and `kmod-mt7603`. By making
`kmod-mt76` a metapackage containing these new packages,
the previous behaviour of including all drivers and firmware
is left unchanged, unless explicitly unselected in
`DEVICE_PACKAGES`.

This splitting is especially beneficial for devices with
small flash chips, since the `kmod-mt76` package currently
requires ~160K on squashfs (after compression).

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup]
2017-02-23 15:56:57 +01:00
Felix Fietkau
735a27df81 lantiq: fix broadcast packets leaking on the wrong vlan on xrx200
The ethernet driver uses a port map override via special tag to control
the ports on which multicast packets are sent. This was added to work
around an issue in the switch that was occasionally leaking packets onto
the wrong vlan.
Unfortunately the change had some leftover lines that were overwrting
the port map with a list of all ports, thus always leaking packets onto
the wront vlan.

Fix this by only enabling the override with the VLAN port map and only
if a matching VLAN port map was actually found

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-23 12:58:49 +01:00
Kevin Darbyshire-Bryant
91a65f6c88 kernel: update kernel 4.4 to 4.4.50
Bump kernel from 4.4.49 to 4.4.50

Compile tested: All targets

Run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-02-23 10:40:21 +01:00
Jo-Philipp Wich
9e4555f58d opkg: fix stray printf() (#551)
Update to latest Git head to get rid of a stray printf() causing unwanted
output in the "opkg list-upgradable" command.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-23 09:49:43 +01:00
Felix Fietkau
1c8d155142 kernel: add missing config symbol for linux 3.18
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-22 23:20:30 +01:00
Felix Fietkau
4137b8b764 mac80211: rename patch to avoid duplicate number
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-22 22:52:47 +01:00
Martin Schiller
fdfde3eb21 libpcap: add optional netfilter support
This is needed to use the nflog interface with tcpdump

Signed-off-by: Martin Schiller <mschiller@tdt.de>
2017-02-22 22:52:30 +01:00
Thomas Reifferscheid
1d49b534f5 build: unsilence move command
The @ sign in front of the "mv" command was significantly suppressing
output to stdout. When reviewing the make/build logs it was tricking
me a whole lot and it mad me lose time. Removing the @ sign will get
stdout and logs right about what happened when.

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-02-22 22:52:20 +01:00
Thibaut VARENE
f6a52bf337 ar71xx: Enable mtdsplit support for RB SPI NOR devices
This patch enables mtdsplit for the MikroTik subtarget.
It converts mach-rbspi.c to use a single "firmware" partition.
Finally, it converts the SPI NOR profile to metadata images:
the original combined-image format is gone, the images are now
"standard" sysupgrade images with metadata appended.

Note: kernel2minor apparently pads the kernel container to erase-block
boundary, but this is undocumented behaviour, so we do not rely on it
and call pad-to anyway.

Note: in platform.sh, the boards are tested last in platform_check_image()
as this should eventually become the "*)" default case when more devices
switch to metadata images.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-22 22:52:20 +01:00
Thibaut VARENE
53c862705d ar71xx: remove bogus "rb*)" catch-all from platform.sh
This patch replaces a dangerous catch-all with the exhaustive list of devices.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-22 22:52:19 +01:00
Thibaut VARENE
890daca9e2 kernel: mtdsplit: Add support for Mikrotik NOR firmware
The RouterBOOT bootloader does not care where the kernel lives in the SPI
flash, all that matters is that the kernel is wrapped in the custom yaffs
container as generated by kernel2minor.

This container has a fixed signature as follows:
00000000  00 00 00 01 00 00 00 01  ff ff 6b 65 72 6e 65 6c  |..........kernel|

This patch adds mtdsplit support for identifying that signature and
triggering the search for the rootfs. rootfs is expected at EB boundary since
we use wget mtd_find_rootfs_from(). We make no use of the yaffs file size
field because it contains invalid data in the image generated by kernel2minor.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-22 22:52:19 +01:00
Kevin Darbyshire-Bryant
2c8cb0c572 dnsmasq: bump to dnsmasq v2.77test4
--bogus-priv now applies to IPv6 prefixes as specified in RFC6303 - this
is significantly friendlier to upstream servers.

CNAME fix in auth mode - A domain can only have a CNAME if it has no
other records

Drop 2 patches now included upstream.

Compile & run tested Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-02-22 22:38:12 +01:00
Jo-Philipp Wich
19720a6f03 opkg: fix handling conffiles in status lists
A missing list pointer initialization caused opkg to ignore conffile entries
from status files, breaking the conffile tracking on the target.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-22 13:48:16 +01:00
Stijn Tintel
5c49fecf72 Revert "kernel: ar8327/ar8337: disable ARL access code to avoid lockups (FS#384)"
This reverts commit ec1a695daa.

Revert the workaround, the problem was properly fixed in
2374549916.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-02-22 11:56:27 +01:00
Thomas Reifferscheid
e01b034cdc ipq806x: fix fakerootfs position
The fakeroot header is expected by the netgear bootloader in the last
64 bytes of the last block used by the uImage. With the current
linux-4.9 uImage being more than 128k smaller than the linux-4.4 uImage
the bootloader was unable to locate the rootfs ih_magic and was
refusing to load and start the kernel.

Fixes: FS#542

Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
2017-02-21 21:18:33 +01:00
Felix Fietkau
0aa46bf76a build: skip opkg host dependency within the SDK
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 20:43:40 +01:00
Felix Fietkau
f66a0c93b3 archs38: only calculate entry point address when necessary
$(eval) runs even during prereq check, which can cause bogus error
messages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 16:10:32 +01:00
Felix Fietkau
f77a1aac0b arc770: only calculate entry point address when necessary
$(eval) runs even during prereq check, which can cause bogus error
messages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 16:10:30 +01:00
Felix Fietkau
2a1ee042cd ubox: update to the latest version
c553354 cmake: fix typo
8973576 kmodloader: fix not being able to find some modules
fce9382 cmake: Check for getrandom system call

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 16:09:32 +01:00
Alif M. Ahmad
2712497442 x86_64: Add support for EFI framebuffer (FS#515)
CONFIG_FB_EFI and CONFIG_FB_SIMPLE are needed to display console text on
EFI framebuffer.

CONFIG_FB_EFI is needed when the kernel is directly launched via EFI
shell or EFI startup.nsh script.

CONFIG_FB_SIMPLE is needed when launching the kernel via grub2 efi. In
this case, grub2 has prepared a gfxterm framebuffer and the kernel just
need to use the already prepared grub's gfxterm framebuffer to display
console text.

Signed-off-by: Alif M. Ahmad <alive4ever@live.com>
2017-02-21 16:07:09 +01:00
Felix Fietkau
709d10e220 px5g: replace px5g-standalone with a statically linked variant of px5g-mbedtls
px5g-standalone only supports SHA1 for certificates, which is strongly
deprecated. The new px5g-standalone is about 27k bigger (compressed),
and has identical behavior to px5g-mbedtls (it uses SHA256).

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 16:05:42 +01:00
Felix Fietkau
7df0069bb5 mbedtls: add --function-sections and --data-sections to CFLAGS
This allows binaries that links these libraries statically to be reduced
by using --gc-sections on link

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 16:05:03 +01:00
Felix Fietkau
adeae0e02a build: move opkg host dependency from package/install to package/compile
Improves parallel build behavior, since it allows opkg to be built at
the same time as other packages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 13:03:20 +01:00
Felix Fietkau
294e908a2c cmake: skip build system check on compile
cmake checks the build system and its variables on its own to detect if
the makefiles need to be regenerated.
Unfortunately this can invalidate overrides passed in the
Build/Configure step. On non-Linux systems this breaks the build when
switching between targets of the same package architecture.

Fix this by forcibly disabling the build system check and relying on the
LEDE build system to take care of these things

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 13:03:20 +01:00
Felix Fietkau
e313a33024 build: allow building an individual subdir without dependencies using NO_DEPS=1
QUILT=1 had the same effect, but it is sometimes useful to be able to do
this without quilt

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-21 13:03:20 +01:00
Michal Sojka
b1f102b03e scripts/feeds: Reuse TOPDIR if defined in environment
The feeds script sets value of TOPDIR in a way that is inconsistent
with how toplevel Makefile sets it. The inconsistency manifests when I
use a "build directory" with symlinks to LEDE source (see below).

When make is invoked in such a directory, make's TOPDIR variable is
set to that directory, whereas scripts/feeds sets TOPDIR to the top of
LEDE source, which results in creating feeds directory inside the LEDE
source instead of in the build directory.

This patch changes the script so that it reuses the TOPDIR value form
the environment if it exists. The result is that 'make
package/symlinks' correctly fetches feeds to the build directory
instead in the source.

I use the following commands to create the build directory:

    ln -s $SRC/config config
    ln -s $SRC/Config.in Config.in
    ln -s $SRC/feeds.conf.default feeds.conf.default
    ln -s $SRC/include include
    ln -s $SRC/Makefile Makefile
    mkdir package
    ln -s $SRC/package/base-files package/base-files
    ln -s $SRC/package/boot package/boot
    ln -s $SRC/package/devel package/devel
    ln -s $SRC/package/firmware package/firmware
    ln -s $SRC/package/kernel package/kernel
    ln -s $SRC/package/libs package/libs
    ln -s $SRC/package/Makefile package/Makefile
    ln -s $SRC/package/network package/network
    ln -s $SRC/package/system package/system
    ln -s $SRC/package/utils package/utils
    ln -s $SRC/rules.mk rules.mk
    ln -s $SRC/scripts scripts
    ln -s $SRC/target target
    ln -s $SRC/toolchain toolchain
    ln -s $SRC/tools tools

This allows me to easily test changes in LEDE on multiple targets.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
2017-02-21 13:03:20 +01:00
Jo-Philipp Wich
55ffc38004 opkg: re-enable usign support
The switch to cmake caused the -DHAVE_USIGN flag to get lost, disabling
compilation of the correspondinf support code.

Update to latest Git head which enables usign support by default.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-20 15:32:58 +01:00
Stijn Tintel
ca8aee0c57 Revert "px5g-standalone: provide px5g via PROVIDES"
This reverts commit cc66f819b4.

This commit causes opkg to install px5g-standalone instead of px5g when
installing luci-ssl. As luci-ssl depends on mbedtls, using
px5g-standalone makes no sense. Next to that, it creates deprecated SHA1
certificates. Revert the commit to avoid pxg5-standalone to be
installed by accident.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-02-20 15:16:28 +01:00
Felix Fietkau
315498c163 libubox: fix host build on macOS
Use the defaults instead of a custom non-portable Host/Install section

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-20 14:57:20 +01:00
Rafał Miłecki
75b530a51b bcm53xx: add kernel 4.9 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-20 14:12:30 +01:00
Jo-Philipp Wich
aff2d5c856 hostapd: fix feature indication
- Fix eap test to work with standalone hostapd builds
 - Fix 11n test to check the correct define
 - Add 11ac, 11r and 11w tests

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-20 12:06:18 +01:00
Kevin Darbyshire-Bryant
0247314f7d dnsmasq: bump to dnsmasq v2.77test3
New test release (since test1) includes 2 LEDE patches that are
upstream and may be dropped, along with many spelling fixes.

Add forthcoming 2017 root zone trust anchor to trust-anchors.conf.

Backport 2 patches that just missed test3:

Reduce logspam of those domains handled locally 'local addresses only'
Implement RFC-6842 (Client-ids in DHCP replies)

Compile & run tested Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-02-20 10:21:42 +01:00
Weijie Gao
3ee793f601 ar71xx: fix vlan settings for some boards
For AR71XX devices, GMAC1 always connects port 0 of the built-in switch,
as the CPU port.

This patch sets correct vlan for some devices with wrong settings:
a) mark port 0 as CPU port, tagged
b) reverse port order, marking these ports untagged

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
2017-02-20 09:27:43 +01:00
Thibaut VARENE
6e4549138d ar71xx: Add more boards to the routerboard serial detection patch
This patch enables serial console on the 435 series and the 953gs.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-20 09:20:48 +01:00
Hsing-Wang Liao
2cfc40a8ad kernel: add Chinese codepages
Signed-off-by: Hsing-Wang Liao <kuoruan@gmail.com>
2017-02-20 09:13:52 +01:00
Alexandru Gagniuc
a4def18f29 uboot-omap: Update to u-boot v2017.01
Specifying USE_PRIVATE_LIBGCC is no longer needed, as it is the
default.

Patch 001 is removed, since it was already merged upstream. Patches
100 and 101 are removed because they do not appear to be needed
anymore, and they do not conform with the sign-off and commit message
procedures.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
2017-02-20 09:12:04 +01:00
Alexandru Gagniuc
b132d4fb91 uboot-omap: Do not hide bootloader packages
Because they were hidden, there was no way to disable the uboot
targets in menuconfig, so they had to be built every time. The omap
target is the only one to hide uboot packages. To be consistent with
the other targets, and have more control over the build, un-hide the
u-boot packages.

Note that the default behavior remains unchanged, as uboot will be
built unless explicitly disabled.

Signed-off-by: Alexandru Gagniuc <alex.g@adaptrum.com>
2017-02-20 09:12:04 +01:00
Thomas Roberts
f9278337cf ar71xx: add support for TL-WR802N Version 2
This patch adds support for the TP-Link TL-WR802N Version 2.

Specification:
- SoC: Qualcomm Atheros QCA9533 (560 MHz, MIPS 24Kc)
- RAM: 32 MiB
- Storage: 4 MiB of FLash on board
- Wireless: Built into QCA9533 (Honey Bee), PHY modes b/g/n
- Ethernet: 1x100M (port0)

Installation through OEM Web Interface:
- Connect to TL-WR802N by Ethernet or Wi-Fi
- Go to http://192.168.0.1 (default user is "admin" & password is "admin)
- Go to "System Tools -> Firmware Upgrade"
- Browse for firmware "*.factory-us.bin" or  "*.factory-eu.bin" for eu model
- Click upgrade

Installation through tftp:
Note: T_OUT, T_IN and GND on the board must be connected to USB TTL
      Serial Configuration 115200 8n1

- Boot the TL-WR802N
- When "Autobooting in 1 seconds" appears type "tpl" followed by enter
- Connect to the board Ethernet port
    (IPADDR: 192.168.1.1, ServerIP: 192.168.1.10)
- tftpboot 0x80000000 <Firmware Image Name>
- Record the result of "printenv bootcmd"
- Enter "erase <Result of 'printenv bootcmd'> +0x3c0000"
    (e.g erase 0x9f020000 +0x3c0000)
- Enter "cp.b 0x80000000 <Result of 'printenv bootcmd'> 0x3c0000"
    (e.g cp.b 0x80000000 0x9f020000 0x3c0000)
- Enter "bootm <Result of 'printenv bootcmd'>"
    (e.g bootm 0x9f020000)

Signed-off-by: Thomas Roberts <tom.p.roberts@gmail.com>
2017-02-20 09:10:17 +01:00
Jo-Philipp Wich
7c9f5c7e6b sdk: emit proper tag references for base URLs
Properly resolve symbolic tag names when constructing the base feed Git url
and avoid emitting "HEAD" references when building from detached commits.

Fixes #495, #501.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-19 20:47:49 +01:00
Jo-Philipp Wich
b65dc04712 opkg: switch to own fork to improve memory usage
Switch to our own fork of opkg to significantly reduce the required amount
of memory when updating lists or installing packages.

Preliminary tests showed a usage drop of about 90% during these operations,
from ~3.7MB with unmodified opkg to ~360KB with our custom fork.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-19 19:08:46 +01:00
Jo-Philipp Wich
84ceca5148 libubox: add host build
Our opkg fork requires libubox to build, so add a host build for it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-19 19:08:46 +01:00
Jo-Philipp Wich
08f9eb7954 firewall3: update to Git head to support xtables API level > 11
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-19 19:08:46 +01:00
Felix Fietkau
663f2a0864 gen-dependencies.sh: fix handling variations in "file" output
On some systems, file adds ", with debug info" after "not stripped"

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-19 16:56:18 +01:00
Felix Fietkau
b9b681c067 rstrip.sh: fix handling variations in "file" output
On some systems, file adds ", with debug info" after "not stripped"

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-19 16:56:17 +01:00
Mathias Kresin
bececcce86 lantiq: fix warning if ltq_atm modules are missing
Fixes the following warning on first boot if the ltq_atm modules are
not included in the image:

  ls: /lib/modules/4.4.49/ltq_atm*: No such file or directory

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-18 16:51:31 +01:00
Mathias Kresin
e88b36f4be lantiq: set the internet led interface according to wan interface
Use the nas0 interface for the netdev trigger as default. Use the ptm0
interface for xRX200 boards to match the default wan interface set in
02_network.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-18 16:51:31 +01:00
Mathias Kresin
044a4eafd5 lantiq: introduce lantiq_is_vdsl_system
Move the code to check if the current system is a system with vdsl
support to a dedicate function to make it reusable.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-18 16:51:31 +01:00
Mathias Kresin
cfd16ecc48 lantiq: fix ARV7519RW22 switch port indexing
Fixes FS#454.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-18 16:51:31 +01:00
Hans Dedecker
157b78779f odhcp6c: fix PKG_MIRROR_HASH
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-17 16:04:28 +01:00
Felix Fietkau
7df998bb6d uhttpd: use sha256 when generating certificates with openssl (FS#512)
Patch from attachment to FS#512

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-17 14:42:13 +01:00
Felix Fietkau
6c44ac286b libpcap: remove feature dependencies on kmod-* packages
USB support could be built into the kernel as well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-17 14:09:21 +01:00
Stijn Tintel
27040dbf89 dropbear: bump PKG_RELEASE
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-02-17 12:18:58 +01:00
Felix Fietkau
72327d1757 ar71xx: fix ethernet PLL configuration for QCA956x
QCA956x is configured like AR934x, not like the older chips.
Should fix ethernet hangs when using the WAN port without SGMII

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-17 12:16:13 +01:00
Henryk Heisig
d6baeb5c48 ar71xx: fix lan ports on archer C59 and C60
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-02-17 10:30:48 +01:00
David Woodhouse
ab20c638b6 x86: Set default baud rate on Geode images to 115200
Prior to commit 1496b95a0 ("x86: clean up default grub baudrate
settings") we had three different baud rates for the Geode targets:
19200 for net5501, 38400 for alix2, and 115200 for Geos.

It doesn't seem that there's a very good reason for varying from our
default 115200 baud, so let's make the Geode target do that instead.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2017-02-17 10:30:38 +01:00
David Woodhouse
d16f433e42 x86: Add Geos profile for Geode subtarget
This makes the Geode images actually useful again. The Geos profile
should include the relevant hardware for that board, and the Default
profile adds the via-rhine adapter which seems to have been present in
the net5501 and alix targets killed in commit 9e0759ea26 ("x86: merge
all geode based subtargets into one").

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2017-02-17 10:30:38 +01:00
Karol Dudek
58fc50f1b0 ar71xx: add support for 8devices Lima board
Lima is a module for the (IoE) internet of everything applications,
based on Qualcomm/Atheros QCA4531.

Specification:

- 650/600/216 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 32 MB of FLASH
- 2T2R 2.4 GHz
- 2x 10/100 Mbps Ethernet
- USB 2.0 Host
- PCIe
- UART for serial console
- 14x GPIO

Flash instruction:
1. Download lede-ar71xx-generic-lima-squashfs-sysupgrade.bin
and rename it to 8dev_recovery.bin
2. Binary file copy to USB stick and plug into slot USB
3. Press S2 (reset) button
4. Press and hold the S1 button by 5 seconds
5. Wait ~40 seconds to complete recovery

Tested on:

- Lima development kit

Signed-off-by: Karol Dudek <karoiz@sli.pl>
2017-02-17 10:19:09 +01:00
John Crispin
a4efc9965c mediatek: add more missing symbols
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-16 20:25:47 +01:00
John Crispin
bb255f7429 ipq806x: add v4.9 support
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-16 20:25:32 +01:00
John Crispin
04c4b6f7fd mediatek: add config file for v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-16 14:14:29 +01:00
Felix Fietkau
2bf9ea6a31 mvebu: add linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-16 17:17:15 +01:00
Günther Kelleter
2374549916 ar8216: flush ARL table during reset after init_globals
commit 33b72b8e0f
"ar8216: adjust ATU flushing in case of link changes"
introduced portwise flushing on link down events. Now the ARL table could
be in a chaotic state after boot where ar8xxx_sw_get_arl_table looped
forever (depending on the entries collected while booting).

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
2017-02-16 17:17:05 +01:00
John Crispin
53f5d59fa1 mediatek: bump to v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-16 09:53:30 +01:00
Furong Xu
f885edef5a ramips: fix the number of uarts for MT7688
Same as MT7621 and MT7628, MT7688 allows up to 3 uarts

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-02-16 09:09:37 +01:00
Furong Xu
00343e18f2 ramips: fix PWM pin mux conflict in dtsi
GPIO18 and GPIO19 on OMEGA2(+) should be GPIO mode, enable PWM lead to a conflict

[    0.290633] rt2880-pinmux pinctrl: pin io18 already requested by pinctrl; cannot claim for 10005000.pwm
[    0.299722] rt2880-pinmux pinctrl: pin-18 (10005000.pwm) status -22
[    0.305729] rt2880-pinmux pinctrl: could not request pin 18 (io18) from group pwm0  on device rt2880-pinmux
[    0.315131] mtk-pwm 10005000.pwm: Error applying setting, reverse things back

Keep PWM disabled.

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-02-16 09:09:09 +01:00
Cezary Jackiewicz
af59d3bda3 ugps: fix typo
Removing redundant spaces from the name of the option. Without fix:

root@LEDE:~# opkg install ugps
Installing ugps (2016-10-24-32a6b2b7-1) to root...
Downloading http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mips_24kc/base/ugps_2016-10-24-32a6b2b7-1_mips_24kc.ipk
Configuring ugps.
uci: Parse error (invalid character in name field) at line 3, byte 23
uci: Parse error (invalid character in name field) at line 3, byte 23
sh: out of range
root@LEDE:~# uci show gps
uci: Parse error (invalid character in name field) at line 3, byte 23

With this fix:

root@LEDE:~# uci show gps
gps.@gps[0]=gps
gps.@gps[0].tty='ttyACM0'
gps.@gps[0].adjust_time='1'

Signed-off-by: Cezary Jackiewicz <cezary@eko.one.pl>
2017-02-16 09:07:16 +01:00
Felix Fietkau
f44ae19e15 build: fix the toolchain rebuild check
- Check for changes in toolchain/ only
- Only replace the stamp file if it was changed
- Fix dependencies for staging dir prepare
- Move the stamp file to TOOLCHAIN_DIR

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-16 08:13:16 +01:00
Hauke Mehrtens
a11243578a kernel: update kernel 4.4 to version 4.4.49
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-16 00:46:29 +01:00
Hauke Mehrtens
236840eb47 kernel: update kernel 4.9 to version 4.9.10
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-16 00:46:23 +01:00
Mirko Parthey
d517f04343 brcm47xx: fix button inversion for Asus WL-500W
The Asus WL-500W buttons are active high,
but the software treats them as active low.
Fix the inverted logic.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-16 00:06:22 +01:00
Mirko Parthey
ac3a4e7ae2 brcm47xx: fix USB driver choice for Asus WL-500W
BCM4704 SoC has only USB 1.1 core:
ssb: Core 3 found: USB 1.1 Hostdev (cc 0x808, rev 0x03, vendor 0x4243)
but this device actually comes with two USB 2.0 ports.

It appears embedded controller isn't used but instead there are two PCI
attached controllers (next to the BCM4321 wireless card):
1106:3038 VT82xx/62xx UHCI USB 1.1 Controller
1106:3104 USB 2.0

Choose a set of USB drivers which actually support this hardware.

Signed-off-by: Mirko Parthey <mirko.parthey@web.de>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-15 23:43:19 +01:00
Felix Fietkau
bd3a5ca190 toolchain: force a full rebuild on buildbot if the toolchain changed
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-15 16:26:04 +01:00
Felix Fietkau
40374454f9 qos-scripts: fix module load commands (FS#438)
fq_codel is built-in, and xt_CONNMARK is provided by the xt_connmark
module

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-15 14:01:15 +01:00
Felix Fietkau
dce6eeccc0 build: skip headers install and config on make target/linux/prepare
This simplifies working with quilt on the kernel tree

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-15 12:35:17 +01:00
Felix Fietkau
1e1a0592f8 kernel: fix crashes on MIPS when loading kernel modules under memory pressure
When memory is tight, modules may need to be loaded into vmalloc()
space. The code then has to generate jump trampolines which enable
relocations between vmalloc space and physical address space.

The code had a bug that was freeing these trampolines even when the
module was successfully loaded.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-15 12:35:17 +01:00
Rafał Miłecki
2a6fbce121 mdns: update and rename package to the umdns
This update includes numerous small fixes for:
1) Interfaces setup
2) Packets parsing
3) Sending replies
Without this there were multiple problems with exchanging information
between (u)mdns and other implementations (including (u)mdns as well).

This also follows project rename to umdns which was required to avoid
confusion with Apple's mdnsd from mDNSResponder project.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-15 11:52:57 +01:00
Thibaut VARENE
748e701b74 ar71xx: add preliminary kernel support for several RB SPI NOR devices
The cAP 2nD, mAP 2nD and wAP 2nD apparently all share the same QCA953x/SPI-NOR
platform.

This patch adds preliminary kernel support based on init data used in
Mikrotik's linux-3.3.5 kernel patch. Since this is totally experimental and
untested, the necessary glue in base-files has not been added, the code is
provided as a starting point in case somebody with that hardware wants to help
getting it supported.

The cAP lite (cAPL 2nD) should also be supported once it is determined whether
or not it uses the same board identifier as the mAP lite.

Code has been successfully built and has no side effect (no impact on already
supported devices).

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:59 +01:00
Thibaut VARENE
b800453282 ar71xx: add new SPI NOR RB devices to the list of serial-enable patch
Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:59 +01:00
Thibaut VARENE
b2044a7f60 ar71xx: add support for RB750r2
This patch adds support for the MikroTik RouterBOARD hEX lite
https://routerboard.com/RB750r2

Specifications:
- SoC: Qualcomm QCA9531 (850MHz)
- RAM: 64MB
- Storage: 16MB NOR SPI flash
- Ethernet: 5x100M (1 PoE in)

This ethernet router is based on the same platform as the hEX PoE lite (it
shares the same board identifier), but has no USB and no PoE out.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:58 +01:00
Thibaut VARENE
19f42663d2 ar71xx: add support for RB750UPr2
This patch adds support for the MikroTik RouterBOARD hEX PoE lite
https://routerboard.com/RB750UPr2

Specifications:
- SoC: Qualcomm QCA9531 (650MHz)
- RAM: 64MB
- Storage: 16MB NOR SPI flash
- Ethernet: 5x100M (1 PoE in, 1 PoE out)
- USB: Type A

This ethernet router is based on the same platform as the wireless router hAP.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:58 +01:00
Thibaut VARENE
8cbb2ac633 ar71xx: add support for RB951Ui-2nD
This patch adds support for the MikroTik RouterBOARD hAP
https://routerboard.com/RB951Ui-2nD

Specifications:
- SoC: Qualcomm QCA9531 (650MHz)
- RAM: 64MB
- Storage: 16MB NOR SPI flash
- Wireless: builtin QCA9531, 2x2:2
- Ethernet: 5x100M (1 PoE in, 1 PoE out)
- USB: Type A

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:58 +01:00
Thibaut VARENE
b18bae37a4 ar71xx: provide support for RB-941-2nD via mach-rbspi.c
This patch implements support for the hAP lite in mach-rbspi.c

hAP lite was supported via mach-rb941.c, so this file is removed
as well as the corresponding build bits.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:57 +01:00
Thibaut VARENE
c59fa94eee ar71xx: add support for RB mAP L-2nD
This patch adds support for the MikroTik RouterBOARD mAP lite
https://routerboard.com/RBmAPL-2nD

Specifications:
- SoC: Qualcomm QCA9533 (650MHz)
- RAM: 64MB
- Storage: 16MB NOR SPI flash
- Wireless: builtin QCA9533, 2x2:2
- Ethernet: 1x100M

This is another 16M SPI NOR mikrotik device. The machine file is named
mach-rbspi.c because I plan to add support for several of the other spi-based
RouterBOARD devices in subsequent patches: they share most of the hardware
and thus the same codebase.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-15 11:28:57 +01:00
Ansuel Smith
d1a75c5161 ebtables: update to last commit
Refreshed patches

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
2017-02-15 11:28:57 +01:00
Jo-Philipp Wich
3bfcd21e4b feeds: add option to force feed update despite modified files
Implement a new flag "-f" for the feeds update command which causes the
script to fall back to a more agressive git update strategy in case there
are locally modified files in the feeds directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-15 10:07:00 +01:00
John Crispin
946d1dfb87 procd: update to latest git HEAD
5f91241 procd: add cancel_timeout on rc scripts when a runtime_timeout is specified
961dc69 procd: stop service using SIGKILL if SIGTERM failed to do so

Signed-off-by: John Crispin <john@phrozen.org>
2017-02-15 09:59:46 +01:00
Daniel Albers
cb801b052c hostapd: mv netifd.sh hostapd.sh
same name for the file on the host and target

Signed-off-by: Daniel Albers <daniel.albers@public-files.de>
2017-02-15 09:38:57 +01:00
Denis Osvald
d9a358d562 procd: fix default timeout for reload trigger actions
Default trigger action timeout was added to procd.sh in commit f88e3a4c0
(procd: add default timeout for reload trigger actions)
However, the timeout value was not placed under the correct JSON-script
array nesting level and thus did not apply.

To fix this and make the timeout actually apply to the reload triggers,
we place it in the correct scope, that is the per-trigger array.

Fixes: f88e3a4c0a
Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
2017-02-15 09:33:13 +01:00
Daniel Golle
d57223259b ramips: replace remaining instances of ralink, port-map
Some boards were apparently forgotten when ralink,portmap was renamed
to mediatek,portmap -- probably because they used the long obsolete
ralink,port-map attribute.
If this commit breaks ethernet wan/lan assignment, this is because
the port-map attribute wasn't actually parsed, you'll have to replace
"wllll" by "llllw" in the dts file belonging to that board (and send
a patch doing that!)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-02-15 09:12:40 +01:00
John Crispin
6cb0372d42 ramips: fix mt7621 ethernet support for v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-15 09:12:00 +01:00
John Crispin
38f9d08f57 kernel: add missing symbol for v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-15 09:11:11 +01:00
Chris Blake
9a6c932556 x86: Add board configs for the PC Engines APU2
This adds the default LED and network settings for the PC Engines APU2
when running under the x86 target.

[dwmw2: Change Ethernet port setup]
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-02-15 07:52:28 +01:00
David Woodhouse
add465f1be x86: Enable DIAG LED on Geos
Based on a patch from Chris Blake <chrisrblake93@gmail.com>, except let's
do it by using the LED configuration instead of hard-coding it for each
board type. And try using /bin/board_detect to do the default behaviour,
on the first boot where the config hasn't yet been generated.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2017-02-15 07:52:28 +01:00
Chris Blake
27a635f0b4 x86: Move Traverse Geos configs into x86 base-files
This change moves the files in 657418d to the root of the x86 target.
This is done in preperation for adding more devices under other
subtargets.

CC: David Woodhouse <dwmw2@infradead.org>

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-02-15 07:52:28 +01:00
Giuseppe Lippolis
35c60d18c5 ramips: export slic IRQ line in dwr-512
The DWR-512 embeds the hw slic device si3210. This device have the IRQ line
attached to the gpio1. This patch export the gpio1 with proper name and
parameters to the sysfs.

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-02-15 07:45:54 +01:00
Furong Xu
8d53e3721c tools: patch-image: fix file descriptor leak.
Maybe this is committed by mistake, fix it.

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-02-15 07:45:24 +01:00
John Crispin
c186a48fca octeon: only copy sysupgrade file if present
this caused

'mv: can't rename '/mnt/sysupgrade.tgz': No such file or directory'

when running sysupgrade -n

Signed-off-by: John Crispin <john@phrozen.org>
2017-02-15 06:36:21 +01:00
John Crispin
1753720261 octeon: bump to v4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-14 17:14:27 +01:00
Felix Fietkau
9dcb921d90 build: add buildbot specific config option for setting defaults
This can be used to tweak the buildbot behavior without having to change
buildbot's configuration.
It will also allow us to add more aggressive clean steps (e.g. on
toolchain changes), which would break developers' workflows if enable
by default.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-14 14:18:35 +01:00
Felix Fietkau
f5977c0c0a ramips: revert faulty 4.4 config change from 9c24227090
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-14 13:47:21 +01:00
Felix Fietkau
f533b94436 ar71xx: fix DEFAULT_PACKAGES for mikrotik devices
Include packages from the default profile for NAND devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-14 13:15:44 +01:00
Alexandru Gagniuc
6cce9557a0 ar71xx: Add support for D-Link EBR-2310 Rev. C
Add support for the EBR-2310, which is almost identical to the DIR-615
rev E4, without the wifi.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2017-02-14 12:27:14 +01:00
Alberto Bursi
3b90ed8c18 uboot-kirkwood: fix usb of nsa310b u-boot
fixes issue "nsa 310b u-boot can initialize usb but cannot
use usb storage so it cannot load files from usb"

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-14 12:26:20 +01:00
Piotr Dymacz
56561b9f51 ar71xx: add support for TP-Link TL-WA850RE v2
TP-Link TL-WA850RE v2 is a wall-plug N300 Wi-Fi range extender,
based on Qualcomm/Atheros QCA9533 v2.

Short specification:

- 550/391/195 MHz (CPU/DDR/AHB)
- 1x 10/100 Mbps Ethernet
- 32 MB of RAM (DDR1)
- 4 MB of FLASH
- 2T2R 2.4 GHz
- 2x internal antennas (embedded on PCB)
- 9x LED (all can be turned off with GPIO15), 2x button
- UART (J3) header on PCB

Flash instruction: use "factory" image directly in vendor GUI.

Warning: this device does not include any kind of recovery mechanism
in the bootloader and disassembling process is not trivial.

You can access vendor firmware over serial line using:
- login: root
- password: sohoadmin

Image was tested only in US version of the device, but should work
also with the same device version sold in other countries.

Available FLASH space, with LEDE trunk, is only 240 KB.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-14 12:25:33 +01:00
Furong Xu
a9fdb35740 ramips: Clean duplicated status property for Omega2 WMAC in dtsi
At the tail of dtsi, wmac is enabled twice, clean the first one

Signed-off-by: Furong Xu <xfr@outlook.com>
2017-02-14 12:19:56 +01:00
Giuseppe Lippolis
85766c8d70 ramips: fixed sms led polarity into dwr-512 DT
Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-02-14 12:19:35 +01:00
Thibaut VARENE
157353c210 ramips: WN3000RPv3: do not setup switch
The WN3000RPv3 is a repeater with a single ethernet port. Setting up the
switch, even to disable it, is unnecessary and possibly confusing.

Configure LAN as eth0 instead.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-14 12:19:12 +01:00
Pavel Kubelun
cdf51bf46a ath10k-firmware: update qca9984 firmware
Bump qca9984 firmware.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-02-14 12:18:51 +01:00
Sven Eckelmann
3d16c16eb6 ar71xx: Add missing device package om-watchdog for MR1750
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
391d498fe5 ar71xx: add OpenMesh A40 to OpenMesh A60 profile
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
d0061798a6 ar71xx: extract ath10k wifi board.bin for the OpenMesh A40 board
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
2696b0ec1e package/uboot-envtools: add OpenMesh A40 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
86364178d6 package/om-watchdog: add OpenMesh A40 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
c6e1bb2ace ar71xx: enable sysupgrade for the OpenMesh A40
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
640f9158e2 ar71xx: add user-space support for the OpenMesh A40
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
5e61a8331d ar71xx: add kernel support for the OpenMesh A40 board
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
5e50adeed3 ar71xx: create profile and build image for the OpenMesh A60 board
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
1330ff189b ar71xx: extract ath10k wifi board.bin for the OpenMesh A60 board
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
bddb243640 package/uboot-envtools: add OpenMesh a60 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
6bd9ba8d6d package/om-watchdog: add OpenMesh A60 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
fce57c4082 ar71xx: enable sysupgrade for the OpenMesh A60
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
8cc4d1e27b scripts/om-fwupgradecfg-gen.sh: add support for the A60
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
174605c467 ar71xx: add user-space support for the OpenMesh A60
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
417f9e7e82 ar71xx: add kernel support for the OpenMesh A60 board
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
88aa7eeee5 package/uboot-envtools: add OpenMesh OM2Pv4/-HSv4 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:05 +01:00
Sven Eckelmann
5035213dc8 package/om-watchdog: add OpenMesh OM2Pv4/-HSv4 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:04 +01:00
Sven Eckelmann
baaf0acded ar71xx: enable sysupgrade for the OpenMesh OM2Pv4/-HSv4
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:04 +01:00
Sven Eckelmann
bdfe4c1218 ar71xx: add user-space support for the OpenMesh OM2Pv4/-HSv4
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:04 +01:00
Sven Eckelmann
e1b50457b0 ar71xx: add kernel support for the OpenMesh OM2Pv4/-HSv4
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:04 +01:00
Sven Eckelmann
019276a9c6 ar71xx: Remove the v2/v3 from the OpenMesh profile names
The list of v2/v3 devices is getting longer and makes reading the names of
the profiles unnecessary hard.

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2017-02-14 12:18:04 +01:00
John Crispin
9c24227090 ramips: add v4.9 support
NAND support is missing

Signed-off-by: John Crispin <john@phrozen.org>
2017-02-14 12:17:52 +01:00
Ulrich Weber
d5221d5a41 ppp: honor ip6table for IPv6 PPP interfaces
as we do for IPv4 PPP interfaces. When we create the
dynamic IPv6 interface we should inherit ip6table from
main interface.

Signed-off-by: Ulrich Weber <ulrich.weber@riverbed.com>
2017-02-13 18:48:33 +01:00
Florian Eckert
bb9d2aa868 ppp: add pppoe-discovery to an independent package
pppoe-discovery performs the same discovery process as pppoe, but does
not initiate a session

Signed-off-by: Florian Eckert <Eckert.Florian@googlemail.com>
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-13 18:45:34 +01:00
Jonas Gorski
c0841b3c4e mvebu: append metadata to clearfog sd card images
Fixes the following issue:

root@LEDE:/# sysupgrade /tmp/lede-mvebu-armada-388-clearfog-sdcard.img.gz
Saving metaconfig...
Image metadata not found
Use sysupgrade -F to override this check when downgrading or flashing to vendor firmware
Image check 'fwtool_check_image' failed.
root@LEDE:/#

Acked-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-13 17:50:41 +01:00
Felix Fietkau
90728c796d sdk: clean scripts/config before packing tarball (FS#504)
Avoids shipping potentially incompatible object files and also reduces
the tarball size

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-13 11:46:14 +01:00
Felix Fietkau
fcea190b8b cns3xxx: disable watchdog until it is fixed
It has been reported to cause random reboots on some devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-13 11:30:56 +01:00
Felix Fietkau
fec57b40c3 kernel: add missing tracing related config symbols for linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-13 10:39:54 +01:00
John Crispin
60a52cd4b4 apm821xx: adds missing symbol to v4.9 default config
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-13 10:24:32 +01:00
David Pinilla Caparrós
a896611acd base-files: Added a deprecation notice on wifi detect
When running wifi detect, the user will be told on error output that
wifi detect is deprecated, that wifi config must be used instead. Also
the commit that changes it is referenced for further info.

Signed-off-by: David Pinilla Caparrós <dpinitux@gmail.com>
2017-02-13 10:24:32 +01:00
David Pinilla Caparrós
f6d3ea8c8a base-files: Add wifi config to wifi command usage
Since commit 5f8f8a3661 wifi detect does
not longer work and wifi config it's used to configure not yet
configured wireless devices.

This commit changes command usage to reflect that change.

Signed-off-by: David Pinilla Caparrós <dpinitux@gmail.com>
2017-02-13 10:24:32 +01:00
Giuseppe Lippolis
ec0f20212e ramips: added image size into dwr-512 DT
Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-02-13 10:24:32 +01:00
Yangbo Lu
3c01fd0119 layerscape: fix adjust_link for 10G & 2.5G
Added a linux-4.4 patch to fix adjust_link for 10G & 2.5G.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2017-02-13 10:24:32 +01:00
Chuanhong Guo
634328c0de ramips: correct switch configuration for Newifi D1
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2017-02-13 10:24:32 +01:00
Martin Blumenstingl
70395ae8cb lantiq: fix patching the wifi mac address on BTHOMEHUBV3A
The firmware hotplug script tries to read the mac address from a
partition with the name "uboot-env" which does not exist (instead it's
name is uboot_env). This broke calculation of the new checksum (after
patching the mac address) which resulted in ath9k refusing to use the
EEPROM data.

The original error reported by ath9k was:
PCI: Enabling device 0000:00:0e.0 (0000 -> 0002)
ath: phy0: Bad EEPROM checksum 0x2523
ath: phy0: Unable to initialize hardware; initialization status: -22
ath9k 0000:00:0e.0: Failed to initialize device

Fixes: a20616863d ("lantiq: use ath9k device tree bindings
binding/owl-loader")

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2017-02-13 07:57:15 +01:00
Hans Dedecker
4c09f99605 netifd: update to git HEAD version
f107656 netifd: Add option to configure locktime for each device
cdc0e80 interface: add prefix assignment priority support
6397f5e device: add veth support
6228d0f wireless: fix _wireless_add_process
7cc2f10 treewide: fix white space errors

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-12 18:12:47 +01:00
Felix Fietkau
f28eef4460 mac80211: refresh patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-12 15:57:37 +01:00
Koen Vandeputte
75216a76b0 mac80211: backport upstream fix for CSA in IBSS mode
Allows to change channels on-the-fly using CSA when using IBSS.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-12 15:57:37 +01:00
Thibaut VARENE
33154eaf41 ar71xx: fix platform_find_rootfspart()
platform_find_rootfspart() fails if the kernel partition comes before the
rootfs partition. The proposed patch fixes this while preserving what I
understand was the original idea: stop at first match.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-02-12 15:57:37 +01:00
Baptiste Jonglez
f938de7914 build: fix dependency of kernel_menuconfig target
When running "make kernel_menuconfig" in a clean tree, it fails with:

    make[1]: *** No rule to make target 'tools/quilt/install'.  Stop.

Replacing the dependency with 'tools/quilt/compile' fixes the issue (quilt
and all its prerequisites will be built, and quilt will be installed in
staging_dir).

Signed-off-by: Baptiste Jonglez <git@bitsofnetworks.org>
2017-02-12 14:53:29 +01:00
Felix Fietkau
764cd09dd8 ath9k: fix various issues in the airtime-fairness implementation
Effects of the bugs could include memory corruption, tx hangs, kernel
crahes, possibly other things as well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-12 14:27:41 +01:00
Hauke Mehrtens
5c651b029e kernel: fix kmod-rxrpc with kernel 4.9
rxkad will be build into af-rxrpc now and is of type boolean.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-12 13:55:45 +01:00
Martin Blumenstingl
0caffa60af kernel: fix compile error on linux 4.9 with CONFIG_KALLSYMS disabled
Upstream linux commit 7523e4dc5057e "module: use a structure to
encapsulate layout." moves some of the struct module members into a
separate struct module_layout.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2017-02-12 13:55:13 +01:00
Hauke Mehrtens
b1c2506a76 kernel: MIPS: IRQ Stack: Fix erroneous jal to plat_irq_dispatch
This backports the following fix to our mips IRQ stack patches:
https://patchwork.linux-mips.org/patch/15110/

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-12 01:41:43 +01:00
Hauke Mehrtens
136d4a0656 lantiq: fix section mismatch in PCIe driver
Do not put the probe function into the __init section, but use the normal
section. This fixes a section mismatch warning.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-12 01:29:41 +01:00
Hauke Mehrtens
2eed1179be ltq-ptm: use netif_trans_update() only for kernel >= 4.7
This fixes a bug introduced in commit c7ce9908bd
"ltq-ptm: fix build with kernel 4.9"

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-12 01:26:33 +01:00
Hauke Mehrtens
863e79f8d5 lantiq: add support for kernel 4.9
The following patches were dropped because they are already applied
upstream:
0012-pinctrl-lantiq-fix-up-pinmux.patch
0013-MTD-lantiq-xway-fix-invalid-operator.patch
0014-MTD-lantiq-xway-the-latched-command-should-be-persis.patch
0015-MTD-lantiq-xway-remove-endless-loop.patch
0016-MTD-lantiq-xway-add-missing-write_buf-and-read_buf-t.patch
0017-MTD-xway-fix-nand-locking.patch
0044-pinctrl-lantiq-introduce-new-dedicated-devicetree-bi.patch
0045-pinctrl-lantiq-Fix-GPIO-Setup-of-GPIO-Port3.patch
0046-pinctrl-lantiq-2-pins-have-the-wrong-mux-list.patch
0047-irq-fixes.patch
0047-mtd-plat-nand-pass-of-node.patch
0060-usb-dwc2-Add-support-for-Lantiq-ARX-and-XRX-SoCs.patch
0120-MIPS-lantiq-add-support-for-device-tree-file-from-bo.patch
0121-MIPS-lantiq-make-it-possible-to-build-in-no-device-t.patch
122-MIPS-store-the-appended-dtb-address-in-a-variable.patch

The PHY driver was reduced to the code adding the LED configuration,
the rest is already upstream:
0023-NET-PHY-adds-driver-for-lantiq-PHY11G.patch

The SPI driver was replaced with the version pending for upstream
inclusion:
New driver:
0090-spi-add-transfer_status-callback.patch
0091-spi-lantiq-ssc-add-support-for-Lantiq-SSC-SPI-controller.patch
Old driver:
0100-spi-add-support-for-Lantiq-SPI-controller.patch

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-11 23:44:13 +01:00
Hauke Mehrtens
ca9b9969fb ltq-vmmc: fix build with kernel 4.9
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-11 23:31:47 +01:00
Hauke Mehrtens
c7ce9908bd ltq-ptm: fix build with kernel 4.9
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-11 23:31:47 +01:00
Hauke Mehrtens
d61a799528 kernel: add missing config option for kernel 4.9
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-11 23:28:18 +01:00
Hauke Mehrtens
11215fb23c kernel: add rest controller option for kernel 4.9
Deactivate the reset controllers which could be activated on kernel 4.9
by default.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-11 23:28:13 +01:00
Felix Fietkau
6c6167621f glibc: update to version 2.25
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 21:18:42 +01:00
Felix Fietkau
bf867f7f84 glibc: override default rpath to /lib:/usr/lib
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 21:18:42 +01:00
Felix Fietkau
e9f76f0f46 cns3xxx: clean up patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 21:18:42 +01:00
Alberto Bursi
4383c13aee kirkwood: add ZyXEL NSA325 device
This patch add ZyXEL NSA325 2-Bay Media Server

The ZyXEL NSA325 device is a Kirkwood based NAS:

- SoC: Marvell 88F6702 1600Mhz
- SDRAM memory: 512MB DDR2 400Mhz
- Gigabit ethernet: Marvell Alaska
- Flash memory: 128MB
- 1 Power button
- 1 Power LED (blue)
- 5 Status LED (green/red)
- 1 Copy/Sync button
- 1 Reset button
- 2 SATA II ports (internal)
- 2 USB 2.0 ports (back)
- 1 USB 3.0 port (front)
- Fan (fixed speed)
- hardware watchdog in a mcu

Basically a bigger, more powerful version of NSA310,
installation is the same as they share the same flash layout.

A notable difference is that there is a hardware watchdog
in a mcu on the board, which is disabled by default in the LEDE u-boot.
The watchdog is also disabled with a GPIO activation through
raw register change when kwbooting or it would reset the board before
the new uboot was transferred.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [remove dead code]
2017-02-11 21:16:28 +01:00
Alberto Bursi
add1dd0081 uboot-kirkwood: add Zyxel NSA325 uboot
add uboot for NSA325

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-11 21:16:28 +01:00
Alberto Bursi
760185972f uboot-envtools: add nsa325 envs
adding nsa325 envs for consistency with other kirkwoods

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-11 21:16:28 +01:00
Alberto Bursi
f99178b6c0 kirkwood: cleanup nsa310b mac address extraction
switch nsa310b mac address reading to mtd_get_mac_ascii helper as
it seems the fw_env.config file is created way later than when
network is set up, when I tested I still had that file included
in the image through /files folder.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-11 21:16:28 +01:00
Christian Lamparter
9a9f2f97e6 apm821xx: add linux 4.9 apm821xx patches
This patch updates the apm821xx target to use the 4.9 kernel.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-02-11 20:57:56 +01:00
Felix Fietkau
9827c3e9b9 gdb: update to version 7.12.1, fix glibc 2.25 build issues
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 20:34:33 +01:00
Felix Fietkau
f4d9d7a26b glibc: use default PATCH_DIR
Version configuration is gone, so version specific patch directories are
not necessary either.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 20:34:26 +01:00
David Woodhouse
657418db68 x86: Add configuration back for Traverse Geos
When we merged all the Geode boards into one generic target, the default
network and LED configuration was lost. Put it back.

Fixes: 9e0759ea26 ("x86: merge all geode based subtargets into one")
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2017-02-11 20:34:07 +01:00
Felix Fietkau
dc4844b18b pppd: fix compile issues with glibc 2.25
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 19:33:35 +01:00
Felix Fietkau
e0e5f8ca2f kernel: fix linux 4.9 host tools portability issues
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 19:02:52 +01:00
Felix Fietkau
412e0bbf25 perf: avoid picking up a dependency on libunwind
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 18:07:37 +01:00
Felix Fietkau
9859a1d953 ugps: update to the latest version, fixes build error with glibc
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 18:07:32 +01:00
Felix Fietkau
c22255e50e tcpdump: fix tcpdump-mini build on glibc 2.25
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 18:07:24 +01:00
Felix Fietkau
de07a99447 fstools: update to the latest version
Fixes compatibility issues with glibc 2.25

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 18:07:18 +01:00
Felix Fietkau
2ffb80bc9f procd: update to the latest version
Fixes compatibility issues with glibc 2.25

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 18:07:11 +01:00
Alexey Brodkin
a3408a5271 toolchain/uclibc: Bump version to 1.0.22
Important change was made in 1.0.18: all sub-libs were merged
in one and only libc similarly to musl.

See [1] for more details.

To support that we had to remove refences to those sub-libs like
libpthread, libcrypt, libdl, libm, libutil etc.

[1] http://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=29ff9055c80efe77a7130767a9fcb3ab8c67e8ce

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
2017-02-11 15:38:39 +01:00
Alexey Brodkin
eed6c85b7f toolchain/uclibc: Fix unmanned configuration with "V=s"
Currently on attempt to configure uClibc with "V=s" user is prompted
to answer on configuration questions. Major inconvenience here is
build procedure get paused until user answers all questions.
That happens because not all symbols are defined in our .config.

Solution is as simple as usage of "olddefconfig" target instead of
simple "oldconfig". In that case default values get silently set
for symbols not defined by our .config explicitly.

We haven't noticed that subtle issue before because without "V=s"
what we do is "make oldconfig < /dev/null" which automatically
answers all questions :)

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
2017-02-11 15:38:32 +01:00
Felix Fietkau
b2c66724d7 toolchain: remove separate prepare/ step
It was a leftover from an old obsoleted dependency chain

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 15:38:16 +01:00
Tim Harvey
092f2c14bd imx6: move to Linux 4.9 kernel
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 15:38:11 +01:00
Felix Fietkau
38fcd2a865 build: remove libc version config code
We only support one version per libc type

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 15:37:55 +01:00
Felix Fietkau
73ea3c3f9c cns3xxx: add back watchdog support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 15:36:35 +01:00
Alexey Brodkin
0799de6d9e ARC: use -mcpu=XXX instead of obsolete -mXXX
-mXXX option is deprecated already in arc-2016.03 toolchain
and removed completely starting from arc-2016.09.

Direct replacement is -mcpu=XXX which is already supported by
arc-2016.03 used today in Lede.

With that change we'll be ready for ARC toolchain update still
keeping everything working with current tools.

Signed-off-by: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Cc: John Crispin <john@phrozen.org>
2017-02-11 06:53:25 +01:00
John Crispin
84e784671b kernel: add missing symbols to generic/config-4.9
Signed-off-by: John Crispin <john@phrozen.org>
2017-02-11 06:52:32 +01:00
John Crispin
4bdf3a33ad kernel: fix 304-mips_disable_fpu.patch for v4.9
the function prototype has changed, make the new stub consistent with this
change.

Signed-off-by: John Crispin <john@phrozen.org>
2017-02-11 06:52:32 +01:00
Joseph C. Sible
0bf85ef048 dropbear: enable SHA256 HMACs
The only HMACs currently available use MD5 and SHA1, both of which have known
weaknesses. We already compile in the SHA256 code since we use Curve25519
by default, so there's no significant size penalty to enabling this.

Signed-off-by: Joseph C. Sible <josephcsible@users.noreply.github.com>
2017-02-10 11:05:57 +01:00
Koen Vandeputte
2c416b1db0 cns3xxx: switch to linux 4.9
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-10 11:05:57 +01:00
Koen Vandeputte
1db4135e32 cns3xxx: add preliminary 4.9 support
Adds preliminary kernel 4.9 support for this target.

- Refreshed/Updated all patches

Added 3 new patches:
- 093 --> Add virtual PCI MMIO mapping
- 230 --> Remove deprecated code
- 240 --> Rework AT24 eeprom code to use the new NVMEM API

Compiled & tested on cns3xxx (gw2388)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-10 11:05:57 +01:00
Felix Fietkau
b96566aad4 build: drop circular dependency
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-10 11:05:57 +01:00
Felix Fietkau
e690280a16 mxs: enable nvmem support
fixes build error due to missing kernel config options

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-10 11:05:57 +01:00
Rafał Miłecki
db866154fc kernel: move upstream accepted bcm47xxpart TRX cleanups
Use 0xx prefix for accepted patches.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-10 08:30:16 +01:00
Rafał Miłecki
368cc8ef47 mac80211: update brcmfmac backporting brcmf_err cleanups
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-10 00:40:49 +01:00
Daniel Gonzalez Cabanelas
41ad9ed13a brcm63xx: Add Observa VH4032N support
Add support for the Observa Telecom VH4032N router.

This is another BCM6368 router, 128 MB RAM, 32MB flash and 3 USB
host ports.

The wifi chip is an onboard Broadcom BCM43222.

Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
[jonas.gorski: use gpio-hog instead of abusing ephy-reset]
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 22:02:45 +01:00
Hans Dedecker
be4842f5de odhcpd: update to git HEAD version (FS#396)
8df4253 ndp: harden netlink event socket error handling
b02f3e6 ndp: close proc file descriptor also during error handling
8a615ad npd: rework IPv6 relay logic (FS#396)
0129f79 config: restore interface defaults when cleaning interface

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-09 21:20:44 +01:00
Felix Fietkau
fe1e3622a2 build: make Host/Install/Default use Host/Compile/Default with an extra argument
Allows parallelizing compile steps that might be necessary during install

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 14:49:35 +01:00
Michal Sojka
202ae4cc6a build: Pass -iremap gcc option as a single argument
Passing -iremap argument separately causes problems with projects that
use scons and its ParseFlags function. Consider this SConscript
example:

    env = Environment()
    d = env.ParseFlags("-iremap one:two")

ParseFlags will interpret one:two as a file name and the returned dict
d will contain only "-iremap". When the -iremap is passed to the
compiler without an argument, compilation obviously fails.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
2017-02-09 14:49:34 +01:00
Felix Fietkau
7096ed58fd kernel: remove kmod packages for bridge, stp, llc and 8021q
Remove CONFIG_VLAN_8021Q overrides for two targets
These features are built into the kernel image for all targets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 14:49:34 +01:00
Felix Fietkau
0f5d17a7e6 toolchain/gcc: parallelize make install
If the staging dir was deleted, the build needs to recompile some files.
This change speeds up this corner case significantly

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 14:49:34 +01:00
Felix Fietkau
43332f513b toolchain/musl: parallelize make install
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 14:49:33 +01:00
Etienne Haarsma
0928b6d2ab cmake: update to version 3.7.2
Signed-off-by: Etienne Haarsma <bladeoner112@gmail.com>
2017-02-09 14:49:25 +01:00
Jonas Gorski
0127c480bb brcm63xx: Neufbox 6: fix switch by probing through DT
Probe the switch through DT instead of a platform device. This fixes
probe, as GPIO offsets are now properly accounted for.

Fixes the following issue:

[    0.802953] 8021q: 802.1Q VLAN Support v1.8
[    0.810518] rtl8366_smi: gpio_request failed for 18, err=-517

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:44 +01:00
Jonas Gorski
8b741d5cd1 brcm63xx: fix lzma loader for BCM6362
BCM6362 and BCM3380 seem to share the same PRID. Disable serial output
for them until we can find a way to tell them apart reliably.

Fixes: 8f3cfe4ba2 ("brcm63xx: lzma-loader: add BCM3380 support")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:44 +01:00
Paul Wassi
9d4f8ff4f6 brcm63xx: add support for Pirelli/ADB P.DG AV4202N
This patch adds support for the ADB P.DG AV4202N aka Pirelli PRG AV4202N.

Signed-off-by: Paul Wassi <p.wassi@gmx.at>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:44 +01:00
Jonas Gorski
31d5c5bc90 brcm63xx: setup internal switch leds for bcm6368
Setup the GPIO_MODE register bits for used internal switch port leds.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:44 +01:00
Jonas Gorski
c7f31b280f brcm63xx: do a full reset phy cycle
Make sure we do a proper reset of the phy, if the phy reset is defined.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:44 +01:00
Jonas Gorski
dd7079e79a brcm63xx: implement gpio_to_irq for bcm63xx-gpio
Add support for mapping some GPIO lines to IRQs. GPIO to IRQ mappings
were found out through experimentation, helped by having the GPIO as
output still toggling the IRQ input.

Based-on: http://patchwork.ozlabs.org/patch/660534/
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:43 +01:00
Jonas Gorski
94bbd1f057 brcm63xx: fix external interrupts on BCM6318
Setting the clear bit for an interrupt seems to cause interrupts to be
deasserted again immediately. So unset the bit for BCM6318 to allow
subsequent interrupts to still work.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2017-02-09 14:30:43 +01:00
Felix Fietkau
66a63d25c4 mac80211: fix build on linux 3.18
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 14:22:26 +01:00
Felix Fietkau
3cd7f43017 build: fix package build after deleting staging dir
Ensure that the <package>.provides files are always created

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 13:51:40 +01:00
Felix Fietkau
d826af2cbb build: make <subdir>/install opt-in, use it for target/ only
Fixes buildbot errors on running make target/install or
toolchain/install

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 13:51:35 +01:00
Ben Kelly
da0b9110fc uclibc++: patch bugfix erase() on derived __base_associative
When calling erase() on a containers derived from __base_associative
(e.g. multimap) and providing a pair of iterators a segfault will
occur.

Example code to reproduce:

	typedef std::multimap<int, int> testmap;
	testmap t;
	t.insert(std::pair<int, int>(1, 1));
	t.insert(std::pair<int, int>(2, 1));
	t.insert(std::pair<int, int>(3, 1));
	t.erase(t.begin(), t.end());

Signed-off-by: Ben Kelly <ben@benjii.net>
2017-02-09 12:26:55 +01:00
Alberto Bursi
a9d347c11c uboot-kirkwood: fix goflexhome/net bootcommand
Goflexhome/net use uImage, and to boot an uImage the u-boot
must use bootm command, not bootz.

Fixes the "i cannot boot LEDE with this u-boot" issue that I
found out myself with my goflexnet.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-09 12:26:48 +01:00
Alberto Bursi
a6ef5933f8 uboot-kirkwood: remove obsolete patches
all patches for CONFIG_SYS_GENERIC_BOARD are obsolete for
uboot 2016 sources.

Run-tested with the uboot of goflexnet, also the md5sum of
all other uboots is the same with or without these patches.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-02-09 12:26:42 +01:00
Daniel Engberg
2faa1edd91 iperf3: Update to 3.1.6
Update to 3.1.6

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-02-09 12:26:36 +01:00
Daniel Engberg
0af460b38c utils/e2fsprogs: Update to 1.43.4
* Update to 1.43.4
* Use xz tarball which saves about 2Mbyte in size

Changelog: http://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.43.4

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [use @KERNEL instead of hardcoded URL]
2017-02-09 12:26:25 +01:00
Felix Fietkau
849ced84f6 build: support make tools/<name>/install again
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-09 12:26:19 +01:00
Daniel Engberg
34ba64fe70 tools/e2fsprogs: Update to 1.43.4
* Update to 1.43.4
* Refresh patches
* xz tarball which saves about 2M in size

Changelog: http://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.43.4

Tested by Etienne Haarsma (ar71xx), Daniel Engberg (kirkwood)

Signed-off-by: Etienne Haarsma <bladeoner112@gmail.com>
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [use @KERNEL instead of harcoded URL]
2017-02-09 12:26:13 +01:00
Piotr Dymacz
f5416b0622 ar71xx: image: drop redundant CONSOLE assignment
Default CONSOLE value for ar71xx target is "ttyS0,115200", so there
is no need to specify the same value in device profiles.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-09 09:45:27 +01:00
Alexey Brodkin
aab344d227 arc770: backport upstream fix for unaligned access
This commit reverts 42f3c1f ("arc770: fix broken upstream change")
and simultaneously adds back-ported fix from Linus' tree:
a524c218bc94 ("ARC: [arcompact] brown paper bag bug in unaligned
access delay slot fixup").

Note mentioned patch will appear in stable trees soon as well so
IMHO there's not much sense in adding this separate patch in lede/master branch.
As well as we will get rid of it here in 17.01 once we bump 4.4 kernel here
later down the line.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@nbd.name>
Cc: John Crispin <john@phrozen.org>
Cc: Jo-Philipp Wich <jo@mein.io>
2017-02-09 09:14:45 +01:00
John Crispin
1f3de99547 procd: update to latest git HEAD
cdc3dab ujail: fix signal forwarding

Signed-off-by: John Crispin <john@phrozen.org>
2017-02-09 09:14:45 +01:00
Claudio Leite
290ca2ba46 ramips: fix AR670W partition alignment
mtdsplit_lzma requires that the rootfs be aligned to a block boundary.
Pad the kernel partition to make this so.

Signed-off-by: Claudio Leite <leitec@gmail.com>
2017-02-09 09:14:45 +01:00
Rafał Miłecki
76eb62e5af kernel: backport bcm47xxsflash support for reading 32 MiB flashes
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-09 08:41:23 +01:00
Daniel Golle
9eacb9d7fc rt2x00: mt7620: lots of improvements
This commit combines all the changes I've made on my staging tree
into a single commit fixing many issues with our patch for MT7620.

First of all, checkpatch.pl revealed numerous code style issues with
the patch, so fix all the white-space and commets. Also use
usleep_range instead of legacy timing and relax timing for VCO
calibration just like the vendor driver does.

Several line programming registers were commented out in the patch.
Originally this came from the features present but disabled by default
in the vendor's driver (RTMP_TEMPERATURE_CALIBRATION and
ADJUST_POWER_CONSUMPTION_SUPPORT). Remove the dead code for now, it can
easily be re-added if we actually intend to support those features.

Move values from mt7620_freqconfig type into the existing rf_channel
struct, this shouldn't be a new typedef and it is possible to use the
existing struct because rf_channel got 4 32-bit fields, so two of the
8-bit values from mt7620_freqconfig can easily be stored in the same
32-bit field.

Map values such that
Rdiv -> rf1
N    -> rf2
K    -> rf3[0:7]
D    -> rf3[8:15]
Ksd  -> rf4

This makes the channel switching logic already look a bit more like
what we are used to in rt2x00... Probably many of the read-modify-write
calls could still be replaced by macros intended for that.

iq calibration seems to be identical to RT5592, so just enable it.
Test shows that this improves things quite a lot, datarates went up
by a couple of megabits when running iperf, signal quality seems jumpy
in the first few seconds once a station connencts, the stabelizes on a
value significantly better than what it was before.

Add description to the patch and reference the original OpenWrt commit
by which it was added.

The patch now passes checkpatch.pl and can thus be discussed with the
upstream authors of the rt2x00 driver.

Funded-by: https://www.kickstarter.com/projects/1327597961/better-support-for-mt7620a-n-in-openwrt-lede/

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-02-08 22:21:26 +01:00
Álvaro Fernández Rojas
48b71a0b07 brcm2708: bcm2708: fix build
buildbot fails to build without regmap, which I couldn't reproduce locally.
Hopefully this fixes it.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 17:43:40 +01:00
Felix Fietkau
412cf4cc51 sdk: add missing change from r3328-f55c29e4c7
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-08 12:01:59 +01:00
Hans Dedecker
b516b38f2f odhcp6c: update to GIT head version
cfd986c odhcp6c: fix possible stack corruption when parsing proc if_inet6

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-08 11:12:39 +01:00
Álvaro Fernández Rojas
ba9dbc3dd5 brcm2708: add more patches for linux 4.9
Also removes unneeded wireless patches

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 09:59:53 +01:00
Álvaro Fernández Rojas
7ef713c9c4 brcm2708: bcm2710: add 64 bit support for Raspberry Pi 3
64 bit support for Raspberry Pi 3 is experimental. However, bcm2709 subtarget
should serve as a stable and compatible 32 bit support.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 00:41:51 +01:00
Álvaro Fernández Rojas
77a00027c3 brcm2708: bcm2709: add support for Raspberry Pi 3
This adds support for Raspberry Pi 3 on the bcm2709 subtarget, in order to
keep 32 bit image support when 64 bit support is added on bcm2710 subtarget.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 00:41:48 +01:00
Álvaro Fernández Rojas
de1f83097a generic: add missing symbols for linux 4.9
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-08 00:41:09 +01:00
Álvaro Fernández Rojas
fd94fa61a7 mac80211: brcmfmac: update Raspberry Pi patches for linux 4.9
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:16:26 +01:00
Álvaro Fernández Rojas
e9e52761d3 brcm2708: remove duplicated gzip from image generation
Images are now automatically gziped so remove custom image command

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:24 +01:00
Álvaro Fernández Rojas
d9d090e520 brcm2708: remove linux 4.4 support
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:21 +01:00
Álvaro Fernández Rojas
ada91d8a24 brcm2708: switch to linux 4.9
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:18 +01:00
Álvaro Fernández Rojas
96aa0c6b0b brcm2708: add linux 4.9 support
Patches from Raspberry Pi repo:
https://github.com/raspberrypi/linux/commits/rpi-4.9.y

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:16 +01:00
Álvaro Fernández Rojas
6b5c3fd055 kernel: of-mdio: add missing dependency for linux 4.9
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:13 +01:00
Álvaro Fernández Rojas
989a0b4846 generic: add missing kernel symbols
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 23:00:08 +01:00
Rafał Miłecki
2fd81681f9 bcm53xx: include Broadcom PHY driver in the kernel
Initial idea was to use package with this PHY driver for devices that
need it. Unfortunately this can't work as bgmac is built-in and PHY
probing happens before loading modules - it results in PHY subsystem
picking default (generic) PHY driver.

There were two ways of solving this:
1) Making bcm53xx use bgmac as module
xor
2) Built-in Broadcom PHY driver

After some quick discussion it seems we can simply built-in the driver
as increased kenel size is relatively small (1805 B).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-07 18:11:17 +01:00
Felix Fietkau
83ab1982b4 x86: remove linux 4.4 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-07 17:30:39 +01:00
Felix Fietkau
92bda4ae5c x86: switch to Linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-07 17:30:35 +01:00
Felix Fietkau
f55c29e4c7 build: remove libc version suffix from build/staging directories
Our supported libcs are ABI compatible across version upgrades

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-07 17:18:15 +01:00
Etienne Haarsma
fa85060698 toolchain/gdb: update to version 7.12.1
Update gdb to version 7.12.1.

GDB 7.12.1 brings the following fixes and enhancements over GDB 7.12:

   * PR tdep/20682 (aarch64 regression: gdb.cp/nextoverthrow.exp)
   * PR server/20733 (Failed to build aarch64_be-linux-gnu GDBserver)
   * PR tdep/20953 (GDB crashes after "set architecture rl78")
   * PR tdep/20954 (GDB crashes if "set architecture rx")
   * PR tdep/20955 (GDB internal error in cris-tdep.c)
   * PR build/20712 (gdb 7.12+ doesn't build as C++ on Solaris)
   * PR breakpoint/20653 (string_to_explicit_location has some weird code)
   * PR build/20753 (MinGW compilation errors due to strcasecmp)
   * PR gdb/20977 (GDB exception handling is broken on i686-w64-mingw32)
   * PR python/21048 (backtrace is broken on i686)
   * PR sim/20808 (mips sim build fails due to undefined SD/CPU variables)
   * PR sim/20809 (mips sim build fails for r3900 cpus)
   * PR gdb/20939 (GDB aborts

Signed-off-by: Etienne Haarsma <bladeoner112@gmail.com>
2017-02-07 17:18:07 +01:00
Felix Fietkau
b648e1c07f binutils: remove 2.25.1 support and leftovers of older versions
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-07 17:16:12 +01:00
Daniel Engberg
36cca3e436 toolchain/binutils: Switch to 2.27 as default version
Use 2.27 as default which is the current relese.
Makes it easier to get support and submit patches upstream if needed.

Tested on ar71xx, mt7621, kirkwood (arm)

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-02-07 17:16:11 +01:00
Rafał Miłecki
174ce4c56d kernel: update spi-nor in 4.9 to spi-nor tree version (next branch)
These are patches queued for 4.11. It adds support for even more hw and
removes some annoying WARN_ONCE.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-07 15:35:39 +01:00
Rafał Miłecki
6d5419d96a kernel: update spi-nor in 4.9 to version from Linus's tree (4.10)
This adds support for more devices.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-07 15:35:39 +01:00
Álvaro Fernández Rojas
deb15cb23c brcmfmac: improve Raspberry Pi 3 stability
- Really disable power management (wrong config flags).
- Disable internal roaming engine.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-07 15:17:44 +01:00
Rafał Miłecki
ec10bb18f5 bcm53xx: add missing system.sh include
It's needed for macaddr_add.

Fixes: 50efd403e6 ("bcm53xx: set WAN MAC address to don't share one with LAN interface")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-07 11:47:02 +01:00
Koen Vandeputte
4339e5ddb1 kernel: fix build error in mtdsplit driver
Add missing parentheses.
Fixes kernel build issue when using this driver.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-07 11:39:11 +01:00
Koen Vandeputte
597ea08038 cns3xxx: use proper macro's for ID handling
Compiled & tested on cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-07 11:39:08 +01:00
Felix Fietkau
2a4d2e4519 mac80211: fix ath9k kernel crash with linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-07 11:38:54 +01:00
Jo-Philipp Wich
ea269c37b8 ar71xx/ipq806x/mediatek/mvebu: fix network defaults
After "73d923e base-files: emit tagged switch configuration by default"
some default network configurations are broken because the lan and wan
ifnames are forcibly set to untagged netdevs.

Adjust the offending set_interfaces_lan_wan() calls to use the proper
tagged device names.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-07 09:32:28 +01:00
Jo-Philipp Wich
62bf0d4958 arc770: fix broken upstream change
Add a patch to revert upstream commit 9aed02feae57bf7a40cb04ea0e3017cb7a998db4
which introduces syntax errors.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-07 09:32:02 +01:00
Hauke Mehrtens
985c90d102 tcpdump: update to version 4.9.0
This fixes the following 41 security problems:
 + CVE-2016-7922: buffer overflow in print-ah.c:ah_print().
 + CVE-2016-7923: buffer overflow in print-arp.c:arp_print().
 + CVE-2016-7924: buffer overflow in print-atm.c:oam_print().
 + CVE-2016-7925: buffer overflow in print-sl.c:sl_if_print().
 + CVE-2016-7926: buffer overflow in print-ether.c:ethertype_print().
 + CVE-2016-7927: buffer overflow in print-802_11.c:ieee802_11_radio_print().
 + CVE-2016-7928: buffer overflow in print-ipcomp.c:ipcomp_print().
 + CVE-2016-7929: buffer overflow in print-juniper.c:juniper_parse_header().
 + CVE-2016-7930: buffer overflow in print-llc.c:llc_print().
 + CVE-2016-7931: buffer overflow in print-mpls.c:mpls_print().
 + CVE-2016-7932: buffer overflow in print-pim.c:pimv2_check_checksum().
 + CVE-2016-7933: buffer overflow in print-ppp.c:ppp_hdlc_if_print().
 + CVE-2016-7934: buffer overflow in print-udp.c:rtcp_print().
 + CVE-2016-7935: buffer overflow in print-udp.c:rtp_print().
 + CVE-2016-7936: buffer overflow in print-udp.c:udp_print().
 + CVE-2016-7937: buffer overflow in print-udp.c:vat_print().
 + CVE-2016-7938: integer overflow in print-zeromq.c:zmtp1_print_frame().
 + CVE-2016-7939: buffer overflow in print-gre.c, multiple functions.
 + CVE-2016-7940: buffer overflow in print-stp.c, multiple functions.
 + CVE-2016-7973: buffer overflow in print-atalk.c, multiple functions.
 + CVE-2016-7974: buffer overflow in print-ip.c, multiple functions.
 + CVE-2016-7975: buffer overflow in print-tcp.c:tcp_print().
 + CVE-2016-7983: buffer overflow in print-bootp.c:bootp_print().
 + CVE-2016-7984: buffer overflow in print-tftp.c:tftp_print().
 + CVE-2016-7985: buffer overflow in print-calm-fast.c:calm_fast_print().
 + CVE-2016-7986: buffer overflow in print-geonet.c, multiple functions.
 + CVE-2016-7992: buffer overflow in print-cip.c:cip_if_print().
 + CVE-2016-7993: a bug in util-print.c:relts_print() could cause a
      buffer overflow in multiple protocol parsers (DNS, DVMRP, HSRP, IGMP,
      lightweight resolver protocol, PIM).
 + CVE-2016-8574: buffer overflow in print-fr.c:frf15_print().
 + CVE-2016-8575: buffer overflow in print-fr.c:q933_print().
 + CVE-2017-5202: buffer overflow in print-isoclns.c:clnp_print().
 + CVE-2017-5203: buffer overflow in print-bootp.c:bootp_print().
 + CVE-2017-5204: buffer overflow in print-ip6.c:ip6_print().
 + CVE-2017-5205: buffer overflow in print-isakmp.c:ikev2_e_print().
 + CVE-2017-5341: buffer overflow in print-otv.c:otv_print().
 + CVE-2017-5342: a bug in multiple protocol parsers (Geneve, GRE, NSH,
      OTV, VXLAN and VXLAN GPE) could cause a buffer overflow in
      print-ether.c:ether_print().
 + CVE-2017-5482: buffer overflow in print-fr.c:q933_print().
 + CVE-2017-5483: buffer overflow in print-snmp.c:asn1_parse().
 + CVE-2017-5484: buffer overflow in print-atm.c:sig_print().
 + CVE-2017-5485: buffer overflow in addrtoname.c:lookup_nsap().
 + CVE-2017-5486: buffer overflow in print-isoclns.c:clnp_print().

The size of the package is only incread very little:
new size:
306430 tcpdump_4.9.0-1_mips_24kc.ipk
130324 tcpdump-mini_4.9.0-1_mips_24kc.ipk

old size:
302782 tcpdump_4.8.1-1_mips_24kc.ipk
129033 tcpdump-mini_4.8.1-1_mips_24kc.ipk

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-06 22:33:58 +01:00
Álvaro Fernández Rojas
196509b489 brcm2708-gpu-fw: update to latest version
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-06 22:24:57 +01:00
Álvaro Fernández Rojas
dab5a44067 brcm2708: update linux 4.4 patches to latest version
n
As usual these patches were extracted and rebased from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.4.y

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2017-02-06 22:24:42 +01:00
Rafał Miłecki
6b01f0f196 bcm53xx: set Netgear R8000 USB LEDs
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 20:24:19 +01:00
Rafał Miłecki
fb18c3c8ff bcm53xx: refresh Linux 4.4 config
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 17:21:09 +01:00
Rafał Miłecki
f24cb34239 bcm53xx: image: use one style of adding TARGET_DEVICES entries
It just makes code consistent. This trivial change may be a 17.01
candidate to provide simpler backporting experience.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 13:59:30 +01:00
Rafał Miłecki
e991b0d741 kernel: merge b53 API patch with the one handling all switch drivers
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 13:39:45 +01:00
Jo-Philipp Wich
46b02131d7 Revert "uClibc-ng: update to 1.0.21"
This reverts commit dde5c729ec.

The uClibc update was completely untested, does not build with Kernel 4.4 and
did not adjust the configuration to predeclare new config symbols.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-06 13:04:33 +01:00
Felix Fietkau
649e766a64 mac80211: update to wireless-testing 2017-01-31
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-06 12:27:12 +01:00
Felix Fietkau
91fce81df6 kernel: add missing config symbols for 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-06 11:56:57 +01:00
Felix Fietkau
478be1d371 kernel: fix crashlog build error on 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-06 11:56:57 +01:00
Felix Fietkau
9c18235b3a kernel: add compile fix for linux 4.9 on x86
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-06 11:56:57 +01:00
Rafał Miłecki
b008357960 kernel: port b53 to use kernel 4.5+ API
For backward 4.4 compatibility I added patch reverting my changes.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 11:28:54 +01:00
Rafał Miłecki
26bc05eda9 bcm53xx: move bcm47xx_sprom driver to 4.4 specific directory
In kernel 4.9 it's already present so we don't want to overwite it (with
older & API incompatible version).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 10:18:20 +01:00
Rafał Miłecki
2252627b0e bcm53xx: add Linux 4.9 patches
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 10:08:39 +01:00
Rafał Miłecki
75d48d80c7 bcm53xx: backport upstream DTS files for Linksys devices
We dont't build officialy images for them yet due to partitioning
issues.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-06 08:49:23 +01:00
Stijn Tintel
d2c4041f02 kernel: update kernel 4.4 to version 4.4.47
Refresh patches for all targets that support kernel 4.4.
Compile-tested on all targets that use kernel 4.4 and aren't marked
broken, except arc770 and arch38 due to broken toolchain.

Runtime-tested on ar71xx, octeon, ramips and x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-02-06 03:23:06 +01:00
Kevin Darbyshire-Bryant
3bef96ef18 dnsmasq: update to dnsmasq 2.77test1
Bump to dnsmasq 2.77test1 - this includes a number of fixes since 2.76
and allows dropping of 2 LEDE carried patches.

Notable fix in rrfilter code when talking to Nominum's DNS servers
especially with DNSSEC.

A patch to switch dnsmasq back to 'soft fail' for SERVFAIL responses
from dns servers is also included.  This mean dnsmasq tries all
configured servers before giving up.

A 'localise queries' enhancement has also been backported (it will
appear in test2/rc'n') this is especially important if using the
recently imported to LEDE 'use dnsmasq standalone' feature 9525743c

I have been following dnsmasq HEAD ever since 2.76 release.
Compile & Run tested: ar71xx, Archer C7 v2

Tested-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-02-05 22:26:23 +01:00
Eric Luehrsen
f9f6a21c81 dnsmasq: fix instances in dhcp_add()
ref commit 9525743c07
dnsmasq: make DHCPv6 viable for standalone dnsmasq install
Above commit broke instancing by missing filter_dnsmasq()
as part of the dhcp_add() execution.

Signed-off-by: Eric Luehrsen <ericluehrsen@hotmail.com>
2017-02-05 22:26:22 +01:00
Kristian Evensen
bb7068f26c ramips: add support for Sanlinking D240
The Sanlinking Technologies D240
(http://www.sanlinking.com/en/29-dual-4g-wifi-router.html) is basically the same
device as the ZBT WE826, so adding support for it in LEDE is straight forward.
The differences is that the D240 has two mini-PCIe slots (instead of one), blue
LEDs and supports PoE.

Specification:
* CPU: MT7620A
* 1x 10/100Mbps POE (802.3af/802.3at) Ethernet, 4x 10/100Mbps.
* 16 MB Flash.
* 128 MB RAM.
* 1x USB 2.0 port.
* 2x mini-PCIe slots.
* 2x SIM slots.
* 1x 2.4Ghz WIFI.
* 1x button.

Wifi, USB, switch and both mini-PCIe slots are working. I have not been able to
test the SD card reader.

The device comes pre-installed with an older version of OpenWRT, including Luci.
In order to install LEDE, you need to follow the existing procedure for updating
OpenWRT/LEDE using Luci. I.e., you need to access the UI and update the firmware
using the sysupgrade-image. Remember to select that you do not want to keep
existing settings. The default router address is 192.168.10.1 and
username/password admin/root (at least on my devices).

If you brick the device, the procedure for recovery is the same as for the
WE826. Please see the wiki page for that device for instructions.

Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
2017-02-05 22:23:28 +01:00
Felix Fietkau
40fb293f24 build: add missing wildcard for ignoring .pkgdir in dependency checks
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-05 22:17:30 +01:00
Arjen de Korte
07d5fc7ada dnsmasq: honor quietdhcp option for DHCPv6
Do not spam the syslog with DHCPv6 lease info if quietdhcp option
is selected. This already works for DHCPv4, make it work in the same
way for DHCPv6.

Signed-off-by: Arjen de Korte <build+lede@de-korte.org>
[Originally written by Arjen de Korte on GitHub but had issues providing
a SoB in correct format.]
Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-02-05 20:57:39 +01:00
Felix Fietkau
f791fb4af4 kernel: add linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Tim Harvey <tharvey@gateworks.com> [fixes]
2017-02-04 20:28:14 +01:00
Joseph C. Lehner
7d00cfe9bb build: centralize fakeroot code
This patch moves the fakeroot code required by some devices to
`image-commands.mk`.

Create the fakeroot on the fly by using the undocumented -s (skip copy)
parameter of mkimage.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
[remove unused NETGEAR_KERNEL_MAGIC, remove workarounds to have a dummy
rootfs for mkimage]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-04 13:46:48 +01:00
Mathias Kresin
c1eae7a7b8 ramips: fix Airlink AR725W device title
Gemtek is the ODM but the board was sold by Airlink101.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-04 13:46:48 +01:00
Mathias Kresin
1ba7fa652c ramips: fix Airlink AR725W factory image build
The factory image can't be bigger than 3328 KByte. If the image is
bigger than that, the gemtek-header tool throws an error and breaks
the build.

Make sure the output file to which the gemtek header should be added
exists and wasn't removed during the check-size step because of it
size. This will prevent hard errors in case the factory image is to big
similar to what is done for sysupgrade images.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-04 13:46:48 +01:00
Felix Fietkau
785f2a70da ubus: update to the latest version
Adds the following fixes:

91acde6 libubus: do not modify uloop_cancelled
763b9b2 libubus: reset ctx->sock.eof to fix reconnect issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-04 10:42:30 +01:00
Felix Fietkau
da93c15fd2 libubox: update to the latest version
Adds the following changes:

de3f14b uloop: add uloop_cancelling function
3b6181b utils: fix build on Mac OS X 10.12
7f671b1 blobmsg: add support for double
0fe1374 utils: add helper functions useful for allocating a ring buffer
8fc1c30 libubox: replace strtok with _r version.
4a9f74f libubox: allow reading out the pid of uloop process in lua
372e1e6 uloop: remove useless epoll data assignment
f9db1cb libubox: allow reading out the remaining time of a uloop timer in Lua

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-04 10:19:15 +01:00
Felix Fietkau
a5990b1a39 mt76: update to the latest version, fixes a MAC address handling regression
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-04 10:17:42 +01:00
Hannu Nyman
c980147527 ipq806x: fix wireless macs
Commit 71a39b8 ("ipq806x: Fix wireless support for Netgear Nighthawk X4S
D7800") added a trailing TAB char after the backslash which prevents
the assignment of the correct MACs for wifi devices.

Fixes: FS#451

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
[reworded commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-03 19:31:45 +01:00
Felix Fietkau
1a52d11d38 kernel: update phy drivers for 4.9
add backport patches for older kernels

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-03 12:35:44 +01:00
Felix Fietkau
402193baa1 kernel: update mtdsplit for linux 4.9
add backport patches for older kernels

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-03 12:35:44 +01:00
Felix Fietkau
eccb2e5e59 acx-mac80211: fix scan API error that could lead to a crash
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-03 12:35:44 +01:00
Rafał Miłecki
50efd403e6 bcm53xx: set WAN MAC address to don't share one with LAN interface
After analyzing numerous NVRAMs and vendor firmwares it seems the base
MAC address is used for LAN interface. WAN interface has different one
which sometimes is set directly in NVRAM and sometines needs to be
calculated.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-03 07:50:59 +01:00
Piotr Dymacz
a4d12aed30 ar71xx: image: fix DEVICE_TITLE for several devices
Be consistent with form and format of the vendor names.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-03 05:10:14 +01:00
Piotr Dymacz
c3ef8daff4 ar71xx: fix indentation in Kconfig.openwrt
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-03 05:10:14 +01:00
Piotr Dymacz
cc1fb9662c ar71xx: drop help sections from Kconfig.openwrt
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-03 05:10:14 +01:00
Piotr Dymacz
bed9729587 ar71xx: fix up mikrotik subtarget kernel config
Disable all devices which do not belong to the mikrotik subtarget.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-03 05:10:14 +01:00
Piotr Dymacz
670e14ed70 ar71xx: fix up nand subtarget kernel config
Disable all devices which do not belong to the nand subtarget.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-03 05:10:14 +01:00
Piotr Dymacz
4fe92554ac ar71xx: select ATH79_NVRAM only by boards actually use it
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2017-02-03 05:10:14 +01:00
Giuseppe Lippolis
f9f636b94e rt5350: added pcm interface in .dtsi
Added the missing audio pcm interface in the .dtsi file for the rt5350
device. The update has been verified from the data get from the datasheet
and is very similar to the mt7620a.dtsi

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2017-02-03 05:10:13 +01:00
Brandon Koepke
9df777d181 openvpn: adding key_direction to append_params.
key_direction shows up as an openvpn option in the user-interface but does not end up in the /var/etc/openvpn*.conf file. Adding it to the list here fixed the issue for me.

Signed-off-by: Brandon Koepke <bdkoepke@fastmail.com>
2017-02-03 05:10:09 +01:00
Mathias Kresin
a0888ecbaf generic: rtl8366rb: fix compatible string
Use a vendor prefix as it has to be for all not core driver. Update the
compatible string in the device tree files accordingly.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-03 00:46:03 +01:00
Mathias Kresin
2c4d81310f ramips: fix Sercomm NA930 compatible string
The Sercomm NA930 is not a mt7620a evaluation board and shouldn't use
the eval board compatible string.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-03 00:46:03 +01:00
Mathias Kresin
2281f9929b ramips: remove Planex CS-QR10 sound device tree node
The comptible string is neither added by any LEDE patch nor exists in
in the kernel. Drop the sound node which was obviously added
accidentally with 9195d8da ("ramips: DTS rework").

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-03 00:45:55 +01:00
Mathias Kresin
05b1fcc70b ramips: cleanup SPI flash device tree properties usage
Use only the jedec,spi-nor compatible string. Everything else either
never worked or is only support to keep compatibility.

Remove the linux,modalias property. It is obsolete since kernel 4.4.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-02 22:48:54 +01:00
André Valentin
063d5a61e5 generic: mtd: update settings of mx25u3235f
This patch enabled 4K, dual and quad read. Settings have been verified with
a real device.

Signed-off-by: André Valentin <avalentin@marcant.net>
2017-02-02 22:48:54 +01:00
André Valentin
8725d1cffa ipq806x: fixup nbg6817 internal mmc and switch configuration in DTS
The setting mmc-ddr-1_8v in the platform dts leads to read errors. The
device is unusable and system reboots in a loop. Because NBG6817 is the
only mmc device, I removed it in base dts.

The second change removes settings now present in base dts.

The third change references was a wrong conversion of constants in the switch settings.
Switch now initializes again.

Signed-off-by: André Valentin <avalentin@marcant.net>
2017-02-02 22:48:33 +01:00
Koen Vandeputte
3becadd56c kernel: bump to 4.4.46
Refreshed patches for all supported targets.

Compile-tested on ar71xx, cns3xxx, imx6, mt7621, oxnas and x86/64.
Run-tested on ar71xx, cns3xxx, imx6 and mt7621.

Tested-by: Stijn Segers <francesco.borromini@inventati.org>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-02 20:59:57 +01:00
Jo-Philipp Wich
c26ff034fc ubox: support quiet modprobe, support millisecond log timestamp accuracy
Update ubox to latest Git HEAD in order to import the following fixes:

ac2d43e kmodloader: support '-q' quiet option
f8d3d16 ubox: Add an option for more accurate timestamps in log

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 18:37:53 +01:00
Felix Fietkau
47540afa5d ath9k: add a warning to the tx99 config option
Lots of users try random stuff when they encounter any kind of
difficulty. I've had to debug a number of cases where people had enabled
this option for no reason. Hopefully this warning will reduce the number
of useless support cases.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-02 12:44:38 +01:00
Rafał Miłecki
b622f40249 mac80211: brcmfmac: backport wowlan netdetect fixes
I needed a moment to figure out relation between this patchset and the
nl80211: fix validation of scheduled scan info for wowlan netdetect

It appears nl80211 commit will go on top of brcmfmac changes so it's
safe to backport these patches.

One patch that was excluded is commit 2a2a5d1835b6 ("brcmfmac: add
.update_connect_params() callback") as it depends on missing commit
088e8df82f91 ("cfg80211: Add support to update connection parameters").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 11:35:46 +01:00
Rafał Miłecki
99d3774a3c mac80211: brcmfmac: backport PSM watchdog improvements
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 10:04:57 +01:00
Rafał Miłecki
4491979dc9 mac80211: brcmfmac: backport minor code cleanups
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 09:59:23 +01:00
Rafał Miłecki
2a1d8c1f79 mac80211: brcmfmac: backport 4.10 fixes & typo fix
This includes memory leak fix in initialization path.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 09:51:34 +01:00
Rafał Miłecki
863a06b0a4 mac80211: brcmfmac: backport scheduled scan cleanup and chip support
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 09:49:35 +01:00
Rafał Miłecki
4e611ac5df mac80211: brcmfmac: backport some old patches from 2016
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 09:45:59 +01:00
Rafał Miłecki
52be05e190 mac80211: rename brcmfmac patches to use higher prefix
There are more patches to backport that should go before these.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-02 09:39:31 +01:00
Hannu Nyman
eaf3fef946 ccache, samba36: fix samba.org addresses to use https
samba.org has started to enforce https and
currently plain http downloads with curl/wget fail,
so convert samba.org download links to use https.

Modernise links at the same time.

Also convert samba.org URL fields to have https.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-02-02 00:14:03 +01:00
Jo-Philipp Wich
68bef935d5 scripts: get_source_date_epoch.sh: fix mercurial support, add mtime fallback
Add a fallback case to get_source_date_epoch.sh which reports the modification
time of the script itself in case there is no SCM information available, e.g.
when downloading .tar.gz or .zip tarballs produced by Github.

Also fix the mercurial case while we're at it.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:50 +01:00
Eric Luehrsen
9525743c07 dnsmasq: make DHCPv6 viable for standalone dnsmasq install
dnsmasq has sufficient services to meet the needs of DHCP
and RA with IP6 for single router router users. This is
the most common use for consumer routers. Its reenforced
as most ISP tend to only DHCP-PD /64. dnsmasq has year
over year demonstrated great flexibility in its option
set, and support for off-standard DHCP clients.

odhcpd has enhanced capabilities focused on IP6 such
as DHCP/RA relay and NDP proxy. However, it is not as
flexible in its option set. odhcpd is not as forgiving
with off-standard DHCP clients. Some points may represent
a long term TODO list, but it is the state currently.

These changes make any such combination possible. Already
odhcpd can be set as the main dhcp server. Now odhcpd
can be removed or disabled and dnsmasq will take over
if DHCPv6 compiled in. The existing DHCPv6 and RA UCI
are translated into dnsmasq.conf. The changes focus on
'--dhcp-range', '--dhcp-host', and '--dhcp-options'.

DHCP host ID is least 16 bits [::1000-::FFFF], but
leaves low range for typical infrastructure assignments.
dnsmasq accepts DHCPv6 options in the tranditional
'--dhcp-option' put they must be prefixed 'option6:'.
dnsmasq will also discover SLAAC DNS entries from DHCPv4
clients MAC, and confirm with a ping at least renew.

Long term TODO include improving use of dnsmasq relay
options for DHCPv4 and DHCPv6 in parallel. It would also
be possible to preconfigure DHCP-PD in host-with-options
records for fixed infrastructure.

Signed-off-by: Eric Luehrsen <ericluehrsen@hotmail.com>
[Jo-Philipp Wich: emit proper IPv6 hostid format in dhcp-host directive]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:49 +01:00
Eric Luehrsen
1b4e3eda1b dnsmasq: expand 'add_local_hostname' fexibility including FQDN
ref commit 612e2276b4
ref commit ec63e3bf13

'option add_local_hostname' scripted implementation statically assigns
this host in auto generated host file at init. If IFUP or other signals
do not occur, then address changes are not tracked. The script doesn't
apply all the addresses at an interface. This may make logs obscure.
The script only puts the bare host name (maybe not FQDN) in host file,
but if '--exapandhosts' is enabled, then /etc/hosts entries will be
suffixed, and "127.0.0.1 localhost" becomes "localhost.lan".

dnsmasq provides an option to perform this function, but it is rather
greedy. '--interface-name=<name>,<iface>' will assign the name to all
IP on the specified interface (except link local). This is a useful
feature, but some setups depend on the original restrictive behavior.

'option add_local_fqdn' is added to enhance the feature set, but
if not entered or empty string, then it will default to original
option and behavior. This new option has a few settings. At each
increased setting the most detailed name becomes the PTR record:
0 - same as add_local_hostname 0 or disabled
1 - same as add_local_hostname 1
2 - assigns the bare host name to all IP w/ --dnsmasq-interface
3 - assigns the FQDN and host to all IP w/ --dnsmasq-interface
4 - assigns <iface>.<host>.<domain> and above w/ --dnsmasq-nterface

'option add_wan_fqdn' is added to run the same procedure on
inferred WAN intefaces. If an interface has 'config dhcp' and
'option ignore 1' set, then it is considered WAN. The original
option would only run on DHCP serving interfaces.

Signed-off-by: Eric Luehrsen <ericluehrsen@hotmail.com>
2017-02-02 00:13:49 +01:00
Tobias Wolf
bf2f09c005 ramips: Introduce CONFIG_MIPS_APPENDED_RAW_DTB to F5D8235 V1 (rt288x)
This activates the CONFIG_MIPS_APPENDED_RAW_DTB kernel configuration and
configures the F5D8235 V1 target to use append-dtb for kernel creation
instead of OWRTDTB.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
[Jo-Philipp Wich: rewrap commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:49 +01:00
Tobias Wolf
4f86692953 ramips: Introduce CONFIG_MIPS_APPENDED_RAW_DTB to arch/mips/ralink
This commit introduces CONFIG_MIPS_APPENDED_RAW_DTB as an alternative to
OWRTDTB. Both solutions can be used concurrently until all board
configurations have been changed.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
[Jo-Philipp Wich: rewrap commit message]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:49 +01:00
Jo-Philipp Wich
73d923ed6b base-files: emit tagged switch configuration by default
Instead of only using tagged CPU port configurations when more than one VLAN
is present on the switch, always emit tagged configurations unless a board
explicitely opts out of this behaviour by using the previously introduced
[0-9]u@netdev syntax.

Emitting default tagged configurations has the following benefits:

 - Relation of switch vlans to netdevs is easier to understand, especially
   for multi-cpu-port switches

 - Adding additional VLANs (e.g. to break out a LAN port for other purposes)
   becomes easier as users are not forced to change the existing untagged
   VLAN to tagged and the existing ifname notation from ethX to ethX.Y
   anymore, drastly reducing the likelyhood of soft-bricks.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:49 +01:00
Jo-Philipp Wich
770ac77cce brcm63xx: board.d: request untagged switch config where applicable
In order to prepare support for generating tagged switch configurations by
default, explicitely request untagged configs for boards which do not already
request tagging to retain default behaviour.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:49 +01:00
Jo-Philipp Wich
0d1765b4ba imagebuilder: make submake invocations less verbose
Use silent make invocations for sub-makes like build_image or checksum to
avoid bloating the IB output with non-status info.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-02-02 00:13:49 +01:00
Hans Dedecker
26923ab110 odhcp6c: fix PKG_SOURCE_URL
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-01 21:16:44 +01:00
Hans Dedecker
88173676b1 odhcpd: update to git HEAD version
3317c86 dhcpv6-ia: apply lease delete based on assignment bound state
df50429 odhcpd: properly handle netlink messages (FS#388)
83d72cf odhcpd: fix coding style

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-02-01 21:07:08 +01:00
Rafał Miłecki
49f9c06fde kernel: fix BCM54612E PHY support
This backports upstream commit 62e13097c46c ("net: phy: broadcom: rehook
BCM54612E specific init")

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-01 20:55:22 +01:00
Felix Fietkau
06bb0a89b7 ath10k-firmware: revert faulty PKG_SOURCE_DATE change from 7cb27b46
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 18:04:43 +01:00
Pavel Kubelun
b650112b65 ath10k-firmware: update qca9984 firmware and board data
Fixes firmware crash in rare cases and a bug
ath10k_pci 0001:01:00.0: received unexpected tx_fetch_ind event: in
push mode
for those who kept experiencing it after previous firmware update.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2017-02-01 18:00:39 +01:00
Felix Fietkau
dabdd123c9 mt76: update to the latest version
Uses upstream code to parse DT supported band/frequency information.
Update existing .dts files to the new format and remove unnecessary
overrides.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:55 +01:00
Felix Fietkau
2340de62a6 ramips: remove DT pcie nodes for GL-MT300A/N
These devices don't have a secondary wifi chip

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:54 +01:00
Felix Fietkau
0f19c1d6cf rtl8366_smi: add linux 4.4 compatibility
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:54 +01:00
Felix Fietkau
f6750db5dd ath10k-ct: depend on kmod-hwmon-core, it gets used when CONFIG_THERMAL is set
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:54 +01:00
Felix Fietkau
02586cb105 ath10k-ct: fix kernel api compatibility issues
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:54 +01:00
Felix Fietkau
f18f3c87f3 rotary-gpio-custom: depend on Linux 3.18 and 4.4 (will not work on newer kernels)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:53 +01:00
Felix Fietkau
a112786acb xtables-addons: update to version 2.12
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:53 +01:00
Ben Greear
7cb27b462c ath10k-ct: Support ath10k CT firmware for 9887 chipsets.
And, update support for 9880 chipsets.  The new firmware
fixes a regression with EAPOL 4/4 packets added in
a recent commit.

It also fixes a case where the firmware would improperly try
to use STBC when configured for 1x1 (as 9887 always is).

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-02-01 17:49:53 +01:00
Ben Greear
f9c6cc277f ath10k-ct: Fix performance of 2x2 hardware running 3x3 firmware.
The driver had a bug when calculating the rateset.  This resolves
that and allows full VHT mcs rates on 2x2 hardware.

Signed-off-by: Ben Greear <greearb@candelatech.com>
2017-02-01 17:49:53 +01:00
Felix Fietkau
185c37467e leds-apu2: add compatibility for linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:52 +01:00
Felix Fietkau
139eb6870b gpio-nct5104d: add compatibility for linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:52 +01:00
Felix Fietkau
71e86199ff lantiq: enable SMP for XRX200
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:49:01 +01:00
Magnus Kroken
289f2a8ce3 scripts/getver.sh: append short git hash based on upstream commit
The short git hash suffix printed by getver.sh is taken from the
latest local commit, change this to use the hash from latest
upstream commit if available. This is considered the intended
behavior based on commit message a642a11fac,
introducing getver.sh.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 17:48:45 +01:00
Felix Fietkau
70973dd30d gcc: remove obsolete uclibc patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 16:14:10 +01:00
Rafał Miłecki
58221d79d9 bcm53xx: fix LAN MAC address for devices that use eth2 originally
We override default Ethernet interface with eth0 which often uses random
MAC due to missing proper NVRAM entry. Fix this by manually assigning
MAC in the config.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-02-01 15:26:40 +01:00
Felix Fietkau
f204e0fc46 toolchain/gcc: reduce source directory size by about 420 MB
Remove gcc testsuite, ada and libjava (if not selected)

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 15:18:38 +01:00
Felix Fietkau
d86802acd8 build: keep recursive dependency check stampfiles up to date
Since the main stamp file depends on the _check stampfile, the _check
stampfile needs to be created on the first run as well.

Fixes spurious rebuilds with CONFIG_AUTOREBUILD=y

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-01 14:45:13 +01:00
Mathias Kresin
726e45dfe9 mvebu: fix usb port leds
All mvebu boards have three USB LEDs. The first one is used for the
USB1 port.

There are two LEDs related to the second USB port. The top (bar) LED
gets bright in case any USB device is connected to the second USB port.

If the connected device is an USB 3 (SuperSpeed) device, the small dot
LED bellow the "bar" LED gets also bright.

While at it, use a name for the USB LEDs that matches the names printed
on the case.

Fixes: FS#423, FS#425

Signed-off-by: Kabuli Chana <newtownbuild@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-02-01 07:46:50 +01:00
Rafał Miłecki
6a853776a5 kernel: backport bgmac support for external PHYs
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 22:04:08 +01:00
Rafał Miłecki
bde06ab26b kernel: use upstream accepted bgmac fix for BCM47186B0
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 22:04:08 +01:00
Rafał Miłecki
7583de2e8f kernel: rename bgmac patches to squeeze them
This is a pure rename without any changes. It makes maintaining bgmac
simpler and will hopefully make adding new kernel a bit easier.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 22:04:08 +01:00
Hans Dedecker
4d10030c3c odhcp6c: use LEDE_GIT in package source url
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-31 21:58:12 +01:00
Felix Fietkau
0089240796 mt76: update to the latest version
Fixes DFS detection false positive issues

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-31 21:29:02 +01:00
Rafał Miłecki
12288d450b kernel: update bcma to fix devm memory leaks
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 14:31:13 +01:00
Rafał Miłecki
1a14ffaf2b mac80211: start hostapd with logging wpa_printf messages to syslog
Some debugging/error messages are printed using wpa_printf and this
change allows finally reading them out of the syslog.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 13:55:38 +01:00
Rafał Miłecki
546b1a4d36 hostapd: enable support for logging wpa_printf messages to syslog
This will allow starting hostapd with the new -s parameter and finally
read all (error) messages from the syslog.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 13:55:26 +01:00
Felix Fietkau
33a840a3ff ath9k: remove the deaf rx path state check patch
This needs to be refined and reworked before we can safely leave it
enabled by default

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-31 11:44:36 +01:00
Felix Fietkau
bbbff619b9 mdns: update to the latest version
- fixes unaligned acccesses, causing DNS parsing issues on ARMv5
- fixes service timeout handling

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-31 11:24:19 +01:00
Felix Fietkau
74c09e714e download.pl: fix detecting download errors with curl
Avoid treating error pages as successfully downloaded content

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-31 11:24:19 +01:00
FUKAUMI Naoki
6b0b526a4f ramips: add support for Buffalo WCR-1166DS
Buffalo WCR-1166DS is a small wireless router with

 - MT7628AN + MT7612E
 - 64MiB DDR2 SDRAM
 - 16MiB SPI flash
 - 2T2R 11ac/a/b/g/n Wi-Fi
 - 2x 10/100M ethernet switch
 - 8x programmable LED
 - 3x button
 - UART pad on PCB (J2: 3.3V, GND, TX, RX)

factory image can be installed via stock web UI.

due to the "dual image" function in the bootloader, the second half of
the SPI flash ("firmware2" partition) cannot be used as a part of the
file system.

Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
2017-01-31 11:10:58 +01:00
FUKAUMI Naoki
3b5d29b96e bcm53xx: build factory images for WZR-900DHP series
only factory images for DHP-EU and DHP2-JP (fw ver. 2.x) are built.

this will not work for DHP-JP/AP/TW (fw ver. 1.x) because they use
different buffalo_csum() formula.

Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-31 11:10:53 +01:00
FUKAUMI Naoki
7faee1bc9f firmware-utils: improve tools for Buffalo DHP series
some of Buffalo DHP series use slightly different trx magic, buffalo-enc,
buffalo-tag, and factory image begin with 'bgn'.

this patch adds support for building those images.

Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
2017-01-31 10:55:02 +01:00
Felix Fietkau
bc32f7deb5 ramips: add missing DTS pcie node for WSR-600
Enables PCI bus and support for the MT7603 and RT5592 chips

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-31 10:27:38 +01:00
Hans Dedecker
4096d33ce4 odhcpd: use LEDE_GIT in package source url
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-30 22:27:30 +01:00
Stijn Tintel
456e1b6481 qemu: rename internal crypto/aes symbols
Qemu's local AES code defines symbols that conflict with
LibreSSL/OpenSSL's libcrypto. Rename them to avoid build problems.

See upstream commit c8d70e59738e672021926c7747af8ef9dea15c82.

Fixes FS#444.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-01-30 18:37:51 +01:00
Kevin Darbyshire-Bryant
bdd1fad9e3 iproute2: cake: update cake support
Updated cake's tc patch to match the official cake repository
formatting.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-01-30 16:30:41 +01:00
Kevin Darbyshire-Bryant
8a8fa29e20 kmod-sched-cake: Bump to latest version
wash, mpu & some memory optimisation have now made it to the official
cake repository.

Point LEDE to the official repository.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-01-30 16:30:41 +01:00
Hans Dedecker
542feafd90 odhcp6c: update to git HEAD version
c13b6a0 dhcpv6: fix white space error
e9d80cc dhcpv6: trigger restart of DHCPv6 state machine when not
		receiving statefull options
c7122ec update README
419fb63 dhcpv6: server unicast option support

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-30 15:11:47 +01:00
Felix Fietkau
727e244fae bcm53xx: suppress osafeloader info error messages during flashing
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-30 13:00:11 +01:00
Alexander Couzens
2711b94932 lantiq: fix unaligned access in xrx200_poll_rx()
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
2017-01-30 10:14:14 +01:00
Mathias Kresin
60fce1258c base-files: don't overwrite model name set by target
The condition is always true due to the literal string followed the
-n test parameter. A model name set by target scripts always gets
overwritten this way.

Change the condition to check for an already existing destination file
as it was before 5e85ae9 ("base-files: fix error message during boot").

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-30 08:55:41 +01:00
Rafał Miłecki
37b489fe04 hostapd: backport support for sending debug messages to the syslog
It wasn't possible to read hostapd wpa_printf messages unless running
hostapd manually. It was because hostapd was printing them using vprintf
and not directly to the syslog.

We were trying to workaround this problem by redirecting STDIN_FILENO
and STDOUT_FILENO but it was working only for the initialization phase.
As soon as hostapd did os_daemonize our solution stopped working.

Please note despite the subject this change doesn't affect debug level
messages only but just everything printed by hostapd with wpa_printf
including MSG_ERROR-s. This makes it even more important as reading
error messages can be quite useful for debugging.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-30 06:52:02 +01:00
Florian Fainelli
f3c5934981 rpcd: Explicitly link with lcrypt
Fixes build issues with some toolchains that don't add lcrypt in the default
search paths:

CMakeFiles/rpcd.dir/session.c.o: In function `rpc_login_test_password':
build_dir/target-mipsel-linux-gnu/rpcd-2016-12-03-0577cfc1/session.c:823: undefined reference to `crypt'
collect2: error: ld returned 1 exit status

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-01-29 11:51:02 -08:00
Florian Fainelli
200d932322 toolchain: Broaden the executable loader pattern
Some toolchains will produce executables with an interpreter that is e.g:
ld.so.1 (typically a symbolic link). Due to our current LIBC_SPEC_FILE value,
we would not be able to copy this symbolic link/file over to the rootfs and
executables would fail to load. Extend the search pattern to include all
ld*.so* files that could be needed.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-01-29 11:51:02 -08:00
Florian Fainelli
57657a7237 build: Suffix build directory with _$(LIBC) for external toolchains
For external toolchain, we also know the type of C library used, and the
toolchain triplet may not always be reflective of that, therefore make
$(TARGET_DIR_NAME) suffixed with _$(LIBC).

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-01-29 11:51:02 -08:00
Sergey Sergeev
74ea99b01d ledtrig-netdev: don't cancel work on events for different interfaces
This fixes logic bug(in function netdev_trig_notify) introduced in
0b2991a8ed commit.
Events triggered by different interfaces were stopping work queue so it
wasn't working for tx/rx mode.

Signed-off-by: Sergey Sergeev <adron@yapic.net>
2017-01-29 17:32:58 +01:00
Felix Fietkau
1533f1db92 ar71xx: add missing DEVICE_TITLE for mikrotik devices
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-29 17:32:48 +01:00
Magnus Kroken
84da2a677a busybox: update to 1.26.2
Refresh patches, delete patches that have been applied upstream.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [fix defaults]
2017-01-29 14:09:38 +01:00
Magnus Kroken
5d2a9d2a3a busybox: convert netmsg and lock applet to "new style" applet definition
The "new style" busybox applet approach moves all config and build
definitions related to an applet to its .c file. This makes the
patches easier to maintain, as they only add new files to the busybox
build directory, without modifying BusyBox files.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-01-29 14:09:36 +01:00
FUKAUMI Naoki
e5a0eb2af5 ar71xx: prepare jffs2 partition properly in factory.bin for BHR-4GRV2
"pad-rootfs" is required just after "append-rootfs".

Signed-off-by: FUKAUMI Naoki <naobsd@gmail.com>
2017-01-28 20:29:00 +01:00
Michael Heimpold
8af38c7001 mxs: remove stale references to obsolete kernel module packages
Commit 29443e2 (mxs: remove modules.mk, select drivers in the kernel config)
missed to remove these references, so cleanup it now.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2017-01-28 20:29:00 +01:00
Rafał Miłecki
5a164dd3c0 kernel: make BCM54210E PHY code work with 4.4
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-28 17:15:25 +01:00
Rafał Miłecki
c437df09c9 kernel: backport BCM54210E PHY support
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-28 17:09:13 +01:00
Mathias Kresin
271db9f18e lantiq: fix brnImage signature for the VGV7510KW22BRN images
The VGV7510KW22BRN and VGV7519BRN do not have the same brnImage
signature. It was accidentally changed with ba42c1d ("lantiq: un-macro
the image building code").

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-28 12:44:41 +01:00
Hauke Mehrtens
12db207e9b openssl: update to version 1.0.2k
This fixes the following security problems:
CVE-2017-3731: Truncated packet could crash via OOB read
CVE-2017-3732: BN_mod_exp may produce incorrect results on x86_64
CVE-2016-7055: Montgomery multiplication may produce incorrect results

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-01-27 23:38:17 +01:00
Koen Vandeputte
4d1515070b kernel: bump to 4.4.45
Refreshed patches for all supported targets.

Compiled & tested on cns3xxx & imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-01-27 23:17:49 +01:00
Mathias Kresin
893962bcf8 Revert "ar71xx: fix Archer C7 LED colour names"
This reverts commit e79ecb4c26.

The commit was incomplete and the issue that should be fixed isn't
that easy fixable. The Archer C7 mach file is used for the Archer C5,
WDR4900 and WDR7500 as well. Where the WDRs in compare to the Archer
do have blue LEDs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-27 22:16:24 +01:00
Felix Fietkau
9f7fc2376d kernel: mark nvmem as hidden, it is only used as a library for other modules
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 16:54:30 +01:00
Jo-Philipp Wich
475da81ec0 ixp4xx: put apex images into image staging directory
Do not put the apex images into the kernel build directory as this directory
might get removed after kernel updates while the apex packages InstallDev
recipe is not getting re-executed because it is still considered current,
leading to image build failures later on due to missing images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Jo-Philipp Wich
e0579aecf8 mxs: put u-boot images into image staging directory
Do not put the u-boot images into the kernel build directory as this directory
might get removed after kernel updates while the u-boot packages InstallDev
recipe is not getting re-executed because it is still considered current,
leading to image build failures later on due to missing images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Jo-Philipp Wich
7f9d537f21 oxnas: put u-boot images into image staging directory
Do not put the u-boot images into the kernel build directory as this directory
might get removed after kernel updates while the u-boot packages InstallDev
recipe is not getting re-executed because it is still considered current,
leading to image build failures later on due to missing images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Jo-Philipp Wich
cf3d1b61bf sunxi: put u-boot images into image staging directory
Do not put the u-boot images into the kernel build directory as this directory
might get removed after kernel updates while the u-boot packages InstallDev
recipe is not getting re-executed because it is still considered current,
leading to image build failures later on due to missing images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Jo-Philipp Wich
c6502ce3bb layerscape: put u-boot and ucode images into image staging directory
Do not put the u-boot and ucode images into the kernel build directory as this
directory might get removed after kernel updates while the u-boot packages
InstallDev recipe is not getting re-executed because it is still considered
current, leading to image build failures later on due to missing images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Jo-Philipp Wich
237bd36135 mvebu: put u-boot images into image staging directory
Do not put the u-boot images into the kernel build directory as this directory
might get removed after kernel updates while the u-boot packages InstallDev
recipe is not getting re-executed because it is still considered current,
leading to image build failures later on due to missing u-boot images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Jo-Philipp Wich
7d57db4d9b build: introduce STAGING_DIR_IMAGE
Introduce a new location STAGING_DIR_IMAGE which is intended to be used by
bootloader iamges and similar image-related artifacts.

This directory is guaranteed to be persistent across kernel upgrades which
might involve a removal of KERNEL_BUILD_DIR and is guranteed to be bundled
with the image builder.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-27 16:53:31 +01:00
Koen Vandeputte
6db7a013bd imx6: fix build error
This symbol is required when symbol SOC_IMX6 is also specified

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-01-27 16:51:44 +01:00
Koen Vandeputte
d99007d5a9 imx6: refresh kernel config
This key got moved to generic in commit:
7480d3309c

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-01-27 16:11:34 +01:00
Felix Fietkau
82d580e8b5 ath9k: fix up a refcount imbalance error in the IRQ related fix
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 15:43:28 +01:00
Chris Blake
fe12d51cd4 leds-apu2: Add PC Engines APU2 LED driver
This adds support for the PCB LEDs and Reset Button found on the PC
Engines APU2/APU3 embedded boards.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-01-27 11:18:27 +01:00
Felix Fietkau
9ed108e98b kernel: update kmod-* packaging and dependencies for linux 4.9
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 11:18:27 +01:00
Felix Fietkau
28af0f2fbd kernel: make kmod package dependencies forward compatible
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 11:18:27 +01:00
Felix Fietkau
0519bafbda netfilter.mk: prepare for linux 4.9 support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 11:18:27 +01:00
Felix Fietkau
7d985f0925 kernel: split up 980-arm_openwrt_machtypes.patch and move to target folders
This is only required for non-DT platforms

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 11:18:27 +01:00
Magnus Kroken
33f8f6c4d8 openvpn: add support for various new 2.4 configuration options
Updates to openvpn.init were included in early OpenVPN 2.4 patch
series, but got lost along the way and were never merged.

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2017-01-27 11:18:27 +01:00
Stijn Segers
20996edd68 Kernel: bump to 4.4.44
Bump kernel to 4.4.44. Compile-tested on ar71xx, ramips/mt7621 and x86/64.

.44 has been run-tested on the 17.01 branch here on ar71xx and mt7621.

Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
2017-01-27 11:18:27 +01:00
Koen Vandeputte
71f4d8a095 netfilter: re-enable TEE support for kernel 4.4
It got disabled in commit 4454a3fb63
but works nicely these days.

Tested on cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-01-27 11:18:27 +01:00
Toke Høiland-Jørgensen
d45f81d7b1 kmod-sched-core: Add HTB and TBF traffic shapers
HTB and TBF are the basic traffic shapers used by sqm-scripts. Moving
these into kmod-sched-core enables sqm-scripts to downgrade its
dependency from kmod-sched to kmod-sched-core, potentially making it
useful on devices with smaller flash sizes.

This adds around 30k to the size of kmod-sched-core (20k for sch_htb.ko
and 10k for sch_tbf.ko).

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2017-01-27 11:18:27 +01:00
Chris Blake
a5eee54fd3 gpio-nct5104d: Add nct5104d driver package
This adds support for the SuperIO chip nct5104d found on the PC Engines
APU boards, which allows for a handful of additional ports, such as 2x
additional UART pinouts, enabling an external watchdog (no driver for
this functionality yet), and 16 GPIO pins. More info can be found at
https://pcengines.ch/ht_gpio.htm

Thanks to @feckert for helping package this.

Cc: Florian Eckert <Eckert.Florian@googlemail.com>

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-01-27 11:18:27 +01:00
Chris Blake
e3271d545d x86/64: Enable GPIO sysfs & GPIO LED support
The following changes enables GPIO sysfs as well as the LEDS_GPIO option
within the kernel. This is required to enable LEDs over a GPIO
interface.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-01-27 11:18:27 +01:00
Joseph C. Lehner
f93a121533 ramips: cleanup mt7620 Netgear image code
1. Reuse functions defined in `image-commands.mk`
2. Rename fakeroot image

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-01-27 11:10:10 +01:00
Joseph C. Lehner
aeba0fe466 build: move append-file to image-commands.mk
Move it append-file to image-commands.mk so that it can used by other
targets as well.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-01-27 11:10:10 +01:00
Tobias Wolf
99eb6f97e5 ramips: enable rlt8366s Green Feature for F5D8235 V1
Enable the green feature for the board by default.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
2017-01-27 11:10:10 +01:00
Tobias Wolf
e2bd8b900f generic: rtl836x: add support for Green Feature
The GPL licensed source code of Belkin contains an ASIC based "Green
Feature". This change adds support for this Green Feature that can be
activated with an DTS option or swconfig.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
2017-01-27 11:10:10 +01:00
Tobias Wolf
d43046e0f6 ramips: add rlt8366s initvals to the F5D8235 V1 DTS
Before this change only port 4 of F5D8235 V1 worked at 1000Mpbs.

Comparing the current driver with the GPL_BELKIN_F5D8235-4_v1000
v1.01.24 sources showed that additional steps are required to set-up
the rlt8366s switch correctly.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
2017-01-27 11:10:10 +01:00
Tobias Wolf
30494598f8 generic: rtl8366s: add support support for initvals from DTS
This change provides the possibility to define per-device initvals in
the DTS file for a rlt8366s switch.

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
2017-01-27 11:10:10 +01:00
Mathias Kresin
e79ecb4c26 ar71xx: fix Archer C7 LED colour names
All LEDs on this board are green.

Fixes: FS#409

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-27 11:10:10 +01:00
Hans Dedecker
2ef3810f9e odhcpd: update to git HEAD version
c4f9ace odhcpd: decrease default log level to LOG_INFO
a6eadd7 odhcpd: rework IPv6 interface address dump
44965f1 odhcpd: extra syslog tracing

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-26 21:38:26 +01:00
Hans Dedecker
1b8fcd0135 netifd: update to git HEAD version
650758b interface-ip: route proto config support (FS#170)

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-26 21:38:05 +01:00
Yousong Zhou
034bed3707 base-files: uppercase default hostname: LEDE
The name will appear in shell prompt and LuCI page title.  Uppercase
letters seem to be more vigorous

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-01-26 18:10:10 +01:00
Yousong Zhou
d5de9264bb generic: keep module aliases inside .modinfo
It seems module aliases are actually essential info.  E.g. other modules
may call xt_request_find_match(NFPROTO_IPV{4,6}, "hashlimit", 1) and the
kernel will request user mode modprobe helper for ipt_hashlimit and
ip6t_hashlimit respectively which are aliases of xt_hashlimit.ko

Compile-tested for armvirt, there is nearly no size impact.

Before

    -rw-r--r-- 1 yousong yousong     304 Jan 10 17:37 config.seed
    -rw-r--r-- 1 yousong yousong    1634 Jan 11 11:07 lede-armvirt-default.manifest
    -rw-r--r-- 1 yousong yousong 1533647 Jan 11 11:07 lede-armvirt-default-rootfs.tar.gz
    -rw-r--r-- 1 yousong yousong 1802711 Jan 11 11:07 lede-armvirt-root.ext4.gz
    -rw-r--r-- 1 yousong yousong 1544597 Jan 11 11:07 lede-armvirt-rootfs.cpio.gz
    -rw-r--r-- 1 yousong yousong 1174984 Jan 11 11:07 lede-armvirt-root.squashfs.gz
    -rwxr-xr-x 1 yousong yousong 1654712 Jan 11 11:07 lede-armvirt-zImage
    -rwxr-xr-x 1 yousong yousong 2738296 Jan 11 11:07 lede-armvirt-zImage-initramfs
    drwxr-xr-x 2 yousong yousong    4096 Jan 10 17:35 packages
    -rw-r--r-- 1 yousong yousong     739 Jan 10 17:37 sha256sums

After

    -rw-r--r-- 1 yousong yousong     304 Jan 10 17:37 config.seed
    -rw-r--r-- 1 yousong yousong    1634 Jan 11 11:10 lede-armvirt-default.manifest
    -rw-r--r-- 1 yousong yousong 1533646 Jan 11 11:10 lede-armvirt-default-rootfs.tar.gz
    -rw-r--r-- 1 yousong yousong 1802711 Jan 11 11:10 lede-armvirt-root.ext4.gz
    -rw-r--r-- 1 yousong yousong 1544593 Jan 11 11:10 lede-armvirt-rootfs.cpio.gz
    -rw-r--r-- 1 yousong yousong 1174984 Jan 11 11:10 lede-armvirt-root.squashfs.gz
    -rwxr-xr-x 1 yousong yousong 1654736 Jan 11 11:10 lede-armvirt-zImage
    -rwxr-xr-x 1 yousong yousong 2738144 Jan 11 11:10 lede-armvirt-zImage-initramfs
    drwxr-xr-x 2 yousong yousong    4096 Jan 10 17:35 packages
    -rw-r--r-- 1 yousong yousong     739 Jan 10 17:37 sha256sums

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-01-26 18:07:38 +01:00
Jo-Philipp Wich
453343a834 ubox: import kmodloader fixes
Update ubox to latest Git head in order to import the following fixes:

14839f0 kmodloader: make insert_module() idempotent
6e3c6dc kmodloader: add module alias awareness
9371411 kmodloader: fix out-of-bound access when parsing .modinfo
a62c946 kmodloader: modprobe: skip possible command line arguments
46a4b5f kmodloader: log to kmsg when loading directories of modules
eacc426 kmodloader: remove redundant glob wildcard char
8488bb5 ubox: Initialize conditionally uninitialized variable
db070f1 ubox: Fix some memory leaks
acc48b5 kmodloader: Fix typo in error message

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26 18:07:37 +01:00
Yousong Zhou
81aeba9b7f ubox: install kernel module utilities to /sbin directory
This is how other Linux distributions are doing and kernel
modprobe_path[] of request_module() also has a default value of
/sbin/modprobe

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-01-26 18:07:37 +01:00
Bastian Bittorf
b54cbad6ef procd: update procd.sh to disallow signal-numbers, enforce signal-names
A given signal-name is now converted to the corresonding number. In general
it's good style to use names (readability) and it's more portable: signal
numbers can be architecture-dependent, so we are more safe giving names.

A real world example is signal 10, which is BUS on ramips and USR1 on PPC.

All users of 'procd_send_signal' must change their code to reflect this.

Signed-off-by: Bastian Bittorf <bb@npl.de>
2017-01-26 18:07:37 +01:00
Sven Roederer
c7a7e7c94e openvpn: ssl-enabled variants also provide a virtual openvpn-crypto package
When relying on x.509 certs for auth and / or encryption of traffic you can't
use package openvpn-nossl.
Just have your package depend on openvpn-crypto to have SSL-encryption and
X.509-support enabled in OpenVPN. If encryption / X.509 is not a must, use
virtual packge openvpn, which is provided by all OpenVPN-variants.

Signed-off-by: Sven Roederer <devel-sven@geroedel.de>
2017-01-26 18:07:37 +01:00
Etienne Haarsma
dde5c729ec uClibc-ng: update to 1.0.21
Signed-off-by: Etienne Haarsma <bladeoner112@gmail.com>
2017-01-26 18:07:37 +01:00
Vitaly Chekryzhev
9a53e1bdf9 ramips: ZyXEL Keenetic Omni/Omni2: export gpio usb power
Export gpio usb to allow power management of USB port.

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-01-26 16:39:08 +01:00
Vitaly Chekryzhev
0352cc6b19 ramips: ZyXEL Keenetic Viva: align factory images
ZyXEL web-flasher requires squashfs to be aligned to 64kb.

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-01-26 16:39:08 +01:00
Vitaly Chekryzhev
e8c265b2cc ramips: ZyXEL Keenetic Viva: export gpio usb power
Export gpio usb to allow power management of USB port.

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-01-26 16:39:08 +01:00
Matthias Schiffer
0c50ea6289 procd: update to latest git HEAD
0f58977 init: fix /tmp permissions on zram

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-26 16:19:45 +01:00
Kevin Darbyshire-Bryant
a40f3f90d6 iproute2: cake: add 'mpu' minimum packet length support
Add 'mpu' minimum length packet size parameter for scheduling/bandwidth
accounting.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-01-26 15:46:01 +01:00
Kevin Darbyshire-Bryant
e38bafb65a kmod-sched-cake: add 'mpu' minimum packet length support
Add 'mpu' minimum packet length for scheduling/bandwidth accounting
purposes.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-01-26 15:46:01 +01:00
Yo Abe
21b4625135 ramips: add ip17xx support to WLI-TX4-AG300N
ramips/rt288x WLI-TX4-AG300N was missing support for its 100Mbit switch which
should be included by default.

Signed-off-by: Yo Abe <abe.geel@gmail.com>
[Jo-Philipp Wich: picked from OpenWrt PR#359, rewrap commit msg, fix Sob]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26 14:41:31 +01:00
Steven Honson
c0ed04ce45 hostapd: default to wps_independent 1
Signed-off-by: Steven Honson <steven@honson.id.au>
2017-01-26 14:41:31 +01:00
Steven Honson
c0345d93a2 hostapd: expose wps_independent and ap_setup_locked as uci options
ap_setup_locked is named wps_ap_setup_locked in uci for consistency with other
wps related uci options.

Signed-off-by: Steven Honson <steven@honson.id.au>
2017-01-26 14:41:31 +01:00
Joseph C. Lehner
0cc04d05f6 ramips: fix EX2700 wireless mac
On some EX2700 devices, the MAC address from the eeprom data differs
from the actual MAC address. Fix that, and cleanup the DTS file
while we're at it.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-01-26 13:53:57 +01:00
Gabe Rodriguez
7ba589085a mwlwifi: Fixes rewritten history hash and latest version
The author of the upstream mwlwifi edited the history of the previous commit.
This commit not only fixes the updated hash but also sends in the latest
commits he made to the code which are mainly testing.

Signed-off-by: Gabe Rodriguez <lifehacksback@gmail.com>
2017-01-26 13:53:57 +01:00
Rafał Miłecki
f67b0276b6 kernel: update Broadcom PHY drivers
This commit adds 4 patches, one per kernel version that was used for
picking updates. This adds support for few new PHYs.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-26 12:24:09 +01:00
Wilco Baan Hofman
fa0ac030f5 Fix dependency for hostapd
Signed-off-by: Wilco Baan Hofman <wilco@baanhofman.nl>
2017-01-26 11:38:21 +01:00
Henryk Heisig
e39dc8d823 ar71xx: add support to TP-Link Archer C59v1 and C60v1
TP-Link Archer C59v1 is a dual-band AC1350 router, based on Qualcomm/Atheros
QCA9561+QCA9886.

Specification:

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

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

Specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB

Currently not working:
- Port LAN1 on C59, LAN4 on C60
- WiFi 5GHz (missing ath10k firmware for QCA9886 chip)
- Update from oficial web interface ( tplink-saveloader not support "product-info")

Flash instruction:
1. Set PC to fixed ip address 192.168.0.66
2. Download lede-ar71xx-generic-archer-cXX-v1-squashfs-factory.bin
and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.

Flash instruction under U-Boot, using UART:

1. tftp 0x81000000 lede-ar71xx-...-sysupgrade.bin
2. erase 0x9f020000 +$filesize
3. cp.b $fileaddr 0x9f020000 $filesize
4. reset

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
[Jo-Philipp Wich: remove duplicate ATH79_MACH_ARCHER_C59/C60_V1 entries]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26 11:38:21 +01:00
Henryk Heisig
eec0c41375 ar71xx: QCA956X: add missing register
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2017-01-26 11:38:20 +01:00
Qian Zheng
b822f29f25 ar71xx: fix netgear wndr3700 v1/v2, wndr3800/wndr3800ch switch port mapping
Signed-off-by: Qian Zheng <sotux82@gmail.com>
2017-01-26 11:38:20 +01:00
Qian Zheng
3d4069fb8e ar71xx: fix netgear wnr2000 v3 switch port mapping
Signed-off-by: Qian Zheng <sotux82@gmail.com>
[Jo-Philipp Wich: fix alphabetical order after merging with gl-ar300 case]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26 11:38:20 +01:00
Qian Zheng
810eb8d0ea ar71xx: fix tl-wr841n-v7 switch port mapping
Signed-off-by: Qian Zheng <sotux82@gmail.com>
[Jo-Philipp Wich: fix alphabetical order]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26 11:38:20 +01:00
Hannu Nyman
7ba2062744 opkg: clarify messages and errors related to downloads
Clarify opkg's messages related to downloads:

* more visible error message for package list download failure
* separate error message for signature file download error
* if wget returns 4, signal the network error more clearly
* remove '.' from end of filenames and URLs

* try signature check only if the package list was downloaded ok.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-01-26 11:38:20 +01:00
Jo-Philipp Wich
6cb8e30837 imagebuilder: properly escape single quotes in device titles
The name "Plat'Home OpenBlocks AX3" causes the imagebuilders "make info"
command to fail with:

    bash: -c: line 0: syntax error near unexpected token `('
    bash: -c: line 0: `echo;  [...]'
    Makefile:99: recipe for target '_call_info' failed

Properly escape single quotes to avoid breaking the echo commands.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-26 10:16:32 +01:00
Felix Fietkau
b94177e10f ath9k: add stability fixes for long standing hang issues (FS#13, #34, #373, #383)
The radio would stop communicating completely. This issue was easiest to
trigger on AR913x devices, e.g. the TP-Link TL-WR1043ND, but other
hardware was occasionally affected as well.

The most critical issue was a race condition in disabling/enabling IRQs
between the IRQ handler and the IRQ processing tasklet

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 16:25:48 +01:00
Felix Fietkau
4cacc1c5f5 mac80211: refresh patch
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 16:25:48 +01:00
Mirko Vogt
01205c3886 Add video feed to feeds.conf.default
Signed-off-by: Mirko Vogt <mirko-openwrt@nanl.de>
2017-01-25 16:04:39 +01:00
Rafał Miłecki
55ff15cfd5 bcm53xx: disable building Linksys EA6300 V1 image
This device has 2 TRX partitions (main one and failsafe one) and Linux
may not detect them properly failing to run userspace.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-25 10:50:27 +01:00
John Crispin
a68f6942bc mediatek: update the ethernet compat string
mt2701 is an earlier version of the ip core, so use that compat string as
baseline.

Signed-off-by: John Crispin <john@phrozen.org>
2017-01-25 08:44:53 +01:00
Mathias Kresin
b52932e773 uboot-lantiq: mark SPL variants as broken
All SPL variants are lzo compressed. The lzop binary is used for
compression but is not available in tools.

Additionally at least the NAND SPL support is broken and doesn't create
working bootloaders.

The fb3370 SPI NOR SPL enabled u-boot isn't required for LEDE since the
LEDE images are targeting the pre-installed EVA bootloader.

Mark these u-boot variants as well as the SPL variants for the
reference boards as broken till the lzma issues are fixed upstream and
we can use lzma instead of lzo compression.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-25 09:35:04 +01:00
Felix Fietkau
d974e5a235 uboot-lantiq: fix a tool portability issue
Use the standard off_t type instead of loff_t

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 08:29:16 +01:00
Felix Fietkau
b02c381b4b x86: fix sysupgrades on disks with 4k block size
Even when the disk uses 4k blocks, the partition table still uses units
of 512 byte sectors. Always use ibs=512 for the offsets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 08:13:15 +01:00
Alex Samorukov
d872b732e7 ar71xx: Fix mikrotik subtarget default profile for device profile selection
Signed-off-by: Alex Samorukov <samm@os2.kiev.ua>
2017-01-25 08:01:25 +01:00
Alex Samorukov
17401b3d5c ar71xx: improve Mikrotik hAP Lite device support
- remove CONFIG_MTD_SPI_NOR_USE_4K_SECTORS
- enable jffs2 support
- fix sysupgrade

Signed-off-by: Alex Samorukov <samm@os2.kiev.ua>
2017-01-25 08:00:11 +01:00
Sergey Sergeev
e2b8e9e0f3 tools: update kernel2minor to 0.24 version
Signed-off-by: Sergey Sergeev <adron@yapic.net>
2017-01-25 07:54:06 +01:00
Felix Fietkau
07c9bde0da mxs: fix image build issues
stage u-boot images in KERNEL_BUILD_DIR for building images
always select uboot-mxs

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 07:48:43 +01:00
Felix Fietkau
1c0addb156 u-boot.mk: add support for overriding DEFAULT
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 07:48:43 +01:00
Felix Fietkau
1e14f01ed6 u-boot.mk: add UBOOT_MAKE_FLAGS variable similar to MAKE_FLAGS
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-25 07:48:43 +01:00
Rafał Miłecki
1a83d4d30f brcm47xx: backport arch patch with Luxul devices support
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-24 20:33:45 +01:00
Florian Fainelli
25e2cf392a package-ipkg: Do not fail build without base-files
If the base-files package is not selected, we will fail executing the
very first postinst script:

make[3]: Leaving directory `/local/users/fainelli/openwrt/trunk'
cp -fpR
/local/users/fainelli/openwrt/trunk/build_dir/target-arm_xscale_musl-1.1.15_eabi/root-orion
/local/users/fainelli/openwrt/trunk/build_dir/target-arm_xscale_musl-1.1.15_eabi/root.orig-orion
./usr/lib/opkg/info/busybox.postinst: line 3:
/local/users/fainelli/openwrt/trunk/build_dir/target-arm_xscale_musl-1.1.15_eabi/root-orion/lib/functions.sh:
No such file or directory
./usr/lib/opkg/info/busybox.postinst: line 4: default_postinst: command
not found
postinst script ./usr/lib/opkg/info/busybox.postinst has failed with
exit code 127
make[2]: *** [package/install] Error 1

Check for the existence of lib/functions.sh, and if it does not exist,
just bail out gracefully.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2017-01-24 11:07:45 -08:00
Matthias Schiffer
86ccaf4c18 base-files: fix user creation on sysupgrade with few opkg control files
If only a single opkg control file exists (which can happen with
CONFIG_CLEAN_IPKG), grep would not print the file name by default. Instead
of forcing it using -H, we just switch to -l (print only file names) and
get rid of the cut.

Add -s to suppress an error message when no control files exist.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-24 19:08:41 +01:00
Matthias Schiffer
7e1fc09c4f include/rootfs.mk: keep Require-User lines with CONFIG_CLEAN_IPKG
Require-User is handled by /etc/uci-defaults/13_fix_group_user on first
boot, so we need to keep these when removing all opkg data with
CONFIG_CLEAN_IPKG.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-24 17:18:36 +01:00
Rafał Miłecki
4376e69473 mac80211: brcmfmac: don't use uninitialize mem for country codes
There was a bug in brcmfmac patch that could result in treating random
memory as source of country codes.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-24 16:55:21 +01:00
Felix Fietkau
6b013019f9 Add back the commit "ath9k: Add airtime fairness scheduler"
This reverts commit c296ba834d.
According to several reports, the issues with the airtime fairness
changes are gone in current versions.
It's time to re-apply the patch now.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:25 +01:00
Alberto Bursi
94676dd99d kirkwood: add ZyXEL NSA310b
The ZyXEL NSA310 device is a Kirkwood based NAS:

- SoC: Marvell 88F6702 1200Mhz
- SDRAM memory: 256MB DDR2 400Mhz
- Gigabit ethernet: Realtek (over pcie)
- Flash memory: 128MB
- 1 Power button
- 1 Power LED (blue)
- 5 Status LED (green/red)
- 1 Copy/Sync button
- 1 Reset button
- 2 SATA II port (1 internal and 1 external)
- 2 USB 2.0 ports (1 front and 1 back)
- Smart fan

The stock u-boot cannot read ubi so it should be replaced with the
LEDE/OpenWRT's u-boot or with a u-boot from here
https://github.com/mibodhi/u-boot-kirkwood

This device's boot ROM supports "kwboot" tool
(in mainline u-boot, built automatically if CONFIG_KIRKWOOD is declared)
that sends an uboot image to the board over serial connection, it is very easy to unbrick.

The stock bootloader can use usb and read from FAT filesystems,
so the installation process is simple, place the uboot file on a USB flashdrive
formatted as FAT (here it is "openwrt-kirkwood-nsa310.bin", then connect TTL
to the board and write the following commands in the bootloader console:

usb reset
fatload usb 0 0x1000000 openwrt-kirkwood-nsa310.bin
nand write 0x1000000 0x00000 0x100000
reset

Now you are rebooting in the new u-boot, write this in its console to install the firmware:

usb reset
fatload usb 0 0x2000000 lede-kirkwood-nsa310b-squashfs-factory.bin
nand erase.part ubi
nand write 0x2000000 ubi 0x600000

If your firmware file is bigger than 6 MiBs you should write its size in hex
instead of 0x600000 above, or remove that number entirely (it will take a while in this case).

If you are using another uboot that can read ubi, set mtdparts like this

mtdparts=mtdparts=orion_nand:0x00c0000(uboot),0x80000(uboot_env),0x7ec0000(ubi)

And set your bootcmd to be like this

bootcmd=run setenv bootargs; ubi part ubi; ubi read 0x800000 kernel; bootm 0x800000

Then you can install the firmware as described above.

After you installed (or configured) the u-boot for booting the firmware,
write the device's mac address in the ethaddr u-boot env.
The MAC address is usually on a sticker under the device (one of the two codes is the serial),
it should begin with "107BEF" as it is assigned to ZyXEL.

write in the u-boot console (use your MAC address instead of the example)

setenv ethaddr 10:7B:EF:00:00:00
saveenv

to save the mac address in the u-boot.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-01-24 16:21:25 +01:00
Alberto Bursi
55ecceb84e uboot-envtools: add nsa310b envs
accessing the u-boot's envs on this device is required to read the mac address.
These are the envs of the new u-boot, not of the stock one.

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-01-24 16:21:25 +01:00
Hans Geiblinger
a43c503ec4 mvebu: set fan_ctrl.sh only on mamba
Signed-off-by: Hans Geiblinger <cybrnook2002yahoo.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup]
2017-01-24 16:21:25 +01:00
Felix Fietkau
317bd88973 uboot-zynq: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:25 +01:00
Felix Fietkau
e018c4d7ab uboot-sunxi: clean up, switch to u-boot.mk
Instead of referencing u-boot packages from device profiles and having a
-all metapackage, make the u-boot packages hidden (they don't install to
bin/ anyway), and name the files in KERNEL_BUILD_DIR appropriately

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:25 +01:00
Felix Fietkau
9913c4eae4 uboot-pxa: remove package
support for pxa has been gone for a long time now

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:25 +01:00
Felix Fietkau
bb88ec947f uboot-oxnas: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:25 +01:00
Felix Fietkau
12bfa1c425 uboot-omap: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
ce997eb591 uboot-mxs: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
366c33962c uboot-mvebu: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
608d36e423 uboot-layerscape-32b: simplify the package, it does not build anything
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
0dbdc2a98d uboot-layerscape: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
605a03dade uboot-imx6: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
981ec49b90 uboot-at91: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
04cc026a7e uboot-kirkwood: switch to u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
83783f296a uboot-ar71xx: switch to using u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
b27241a1a1 uboot-lantiq: switch to using u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
31b16a3c7d build: add generic build template for u-boot packages
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Alberto Bursi
3d1b2b22d6 uboot-kirkwood: add uboot for nsa310b
this commit allows to make a standalone u-boot for nsa310b.

While both first-stage and second-stage u-boot work fine if
installed to flash or loaded with kwboot,
I could not get stock u-boot nor bodhi's u-boot to chainload
any second stage u-boot (I also tried with dockstar's uboot
that works fine on this device if loaded with kwboot).

Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
2017-01-24 16:21:24 +01:00
Jo-Philipp Wich
beb69e242e sdk: explicitely remove ccache directories when packing SDK
Upon first invocation, the ccache program will create the required directory
hierarchy so there is no point in shipping these empty directories.

Removing those paths also avoids shipping dangling symlinks in case the
directories got linked elsewhere, e.g. into a shared global cache.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-24 15:31:12 +01:00
Felix Fietkau
807461e11c build: make the touch .autoremove call non-fatal
Fixes build issues when there is nothing to do on the compile step (e.g.
with unselected packages).

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:55:55 +01:00
Felix Fietkau
ad85464f11 lantiq: remove CPU_TYPE:=mips32r2, it gets overwritten anyway
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:33:45 +01:00
Felix Fietkau
f4f8f4a180 x86: unify CPU_TYPE for legacy and geode
According to some reports, -march=pentium-mmx is a better choice for
older Geode CPUs than -march=geode anyway.

Bump the minimum architecture of the legacy target from i486 to
pentium-mmx. Anything older is not worth supporting anyway.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Felix Fietkau
94b6dc3a43 uml: mark as source-only
Get rid of a special case in the buildbot script

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Felix Fietkau
f781c8e11e malta: mark as source-only to avoid wasting build resources
The le64 and be64 subtargets do not share a package architecture with
any other targets, so they are pretty wasteful for a development-only
target.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Felix Fietkau
59a3108188 malta: move FEATURES to the target makefile
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Felix Fietkau
bfdc56d3a2 build: remove mips16 feature flag from target makefiles
It can be implicitly derived from the MIPS32 revision support in the
kernel configuration

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Felix Fietkau
cbbd71b6e5 build: remove obsolete mips32r2 CPU_TYPE
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Felix Fietkau
e9405aa8fd ramips/rt288x: switch CPU_TYPE to 24kc
While rt288x only has a MIPS 4KEc processor, it implements the MIPS32r2
architecture just like the 24Kc, so the instruction set should be 100%
compatible.
Switching it to 24kc allows it to share the package architecture with a
lot of other targets instead of creating a special case, saving
buildbot resources.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
Hans Dedecker
9993d80259 odhcpd: update to git HEAD version
e447ff9 router: fix compile issue on 64 bit systems

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-24 10:05:06 +01:00
Mathias Kresin
dc5ba0a48a packages: mark packages depending on a target as nonshared
The packages can't be build as shared packages due to the unmet
dependencies.

Fixes FS#418.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-24 09:45:05 +01:00
Mathias Kresin
36c13e5927 x86: drop ep80579-drivers
The subtarget on which the driver still depends was removed with
dee8986b95 because it was unmaintained
for a long time.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-24 09:45:05 +01:00
Felix Fietkau
053dc3b77a build: do not auto-clean packages where the autoremove step has not run
This avoids repeatedly unpacking and rebuilding packages that are
failing the build. Re-running the failing step should be much faster.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-23 22:04:17 +01:00
Hans Dedecker
fa66900eeb odhcpd: update to git HEAD version
237f1f4 router: convert syslog lifetime traces into LOG_INFO prio
da660c7 treewide: rework prio of syslog messages
0485580 ndp: code cleanup
c5040fe router: add syslog debug tracing for trouble shooting
df023ad treewide: use RELAYD_MAX_ADDRS as address array size
c8ac572 ndp: don't scan netlink attributes in case of netlink route
event

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-23 18:40:53 +01:00
Jo-Philipp Wich
633c35aaa4 hostapd: fix stray "out of range" shell errors in hostapd.sh
The hostapd_append_wpa_key_mgmt() procedure uses the possibly uninitialized
$ieee80211r and $ieee80211w variables in a numerical comparisation, leading
to stray "netifd: radio0 (0000): sh: out of range" errors in logread when
WPA-PSK security is enabled.

Ensure that those variables are substituted with a default value in order to
avoid emitting this (harmless) shell error.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-23 14:55:46 +01:00
Felix Fietkau
6699f58fdb build: use if-then to avoid non-zero return codes in bin/ packaging code
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-23 13:49:45 +01:00
Daniel Golle
1590b0fab0 6in4: add missing colon when setting default ca_path
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-01-23 13:41:18 +01:00
Felix Fietkau
fb07085218 build: fix bin/ package empty check
$(wildcard) is evaluated too early in the build process

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-23 12:41:49 +01:00
Felix Fietkau
afd2827c5c build: do not create empty directories in bin/
Some packages may not install any files

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-23 11:01:56 +01:00
Felix Fietkau
0e22d63775 build: fix CONFIG_AUTOREMOVE for packages with multiple variants
Calling the clean target removes all .ipk files and un-stages the
package. Add a new target just for clearing the build dir and call that
one instead of the full clean target

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-22 17:40:31 +01:00
Felix Fietkau
34ec245662 uboot-lantiq: fix build issue
Do not reference BIN_DIR in the package install section directly, use
$(1) instead.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-22 15:14:54 +01:00
Felix Fietkau
26ae7abc15 ubus: update to the latest version
Adds uloop related libubus fixes

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-22 14:41:00 +01:00
Felix Fietkau
664918d891 Revert "build: always run package/cleanup before package/compile"
This reverts commit 2990a21058.
This introduces a race condition, let's fix this in buildbot instead.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-22 13:47:40 +01:00
Felix Fietkau
2990a21058 build: always run package/cleanup before package/compile
Remove unnecessary stampfile indirection
Fixes an issue with the command sequence used by buildbot

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-22 13:31:54 +01:00
Jo-Philipp Wich
f798776188 libtool: don't clobber host libtool infrastructure
The libtool target package stages its files into the host staging directory
and moves the libltdl library parts from there into the target staging
directory afterwards.

By doing so, the package essentially renders the host libtool infrastructure
unusable, leading to the below error in subsequent package builds:

    libtoolize: $pkgltdldir is not a directory: `.../hostpkg/share/libtool`

Prevent this problem by using a dedicated libltdl install prefix in order to
avoid overwriting and moving away preexisting files belonging to tools/libtool.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-22 00:40:38 +01:00
Jo-Philipp Wich
f2e6e11af1 openvpn: let all openvpn variants provide a virtual openvpn package
Add PROVIDES:=openvpn to the default recipe in order to let all build variants
provide a virtual openvpn package.

The advantage of this approach is that downstream packages can depend on just
"openvpn" without having to require a specific flavor.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-21 23:05:32 +01:00
Felix Fietkau
f784b3e195 build: fix regression in handling ABI_VERSION
The code was updated without changing $$@ into the proper target
filename

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-21 18:30:51 +01:00
Kevin Darbyshire-Bryant
d9b1a55239 kmod-sched-cake: fix parameter passing kernel/user space
The last two parameters passed between user space tc and kernel space
sched-cake were transposed due to a merge mistake in a parameter header
file.

As such, using a packet overhead figure was likely to set cake to wash
packet DSCP values.  Similarly, the DSCP wash flag was used as an offset
to the displayed packet overhead value.

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2017-01-21 14:25:52 +01:00
Daniel Golle
b367eef21d mac80211: rt2x00: add support for external LNA on MT7620
Reported-by: Tom Psyborg <pozega.tomislav@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2017-01-20 16:09:52 +01:00
John Crispin
920ee1f707 Revert "tools: wrt400n: fix making factory images with kernel bigger than 1MB"
This reverts commit 5f9b20bc7d.

The builders were failing with a segfault when generating the image

Signed-off-by: John Crispin <john@phrozen.org>
2017-01-20 06:43:13 +01:00
John Crispin
236fcedc51 Revert "ar71xx: wrt400n: lift size limit on kernel and rootfs part"
This reverts commit 78c2ec0f47.

The builders were failing with a segfault when generating the image

Signed-off-by: John Crispin <john@phrozen.org>
2017-01-20 06:43:13 +01:00
John Crispin
54e980aa36 kernel: fix chipidea module dependencies
Signed-off-by: John Crispin <john@phrozen.org>
2017-01-20 06:43:13 +01:00
Felix Fietkau
2bc647e015 ubus: update to the latest version
- Adds support for passing file descriptors in ubus invoke requests
- Fixes clearing pending timers on ubus_shutdown()
- Fixes checking the amount of written data in ubusd
- Fixes an ubusd crash when trying to subscribe to system objects

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-20 11:36:23 +01:00
Jo-Philipp Wich
47c22c299c lede-keyring: bundle latest usign certificates
Includes the public usign certificates used by the 17.01.* release builds.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-20 10:10:55 +01:00
Jo-Philipp Wich
dab6338b47 sdk: fix Git URL detection
Instead of relying on complex sed patterns that trip up make syntax rules, use
GNU Makes builtin filter function to match desired URLs.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-20 10:10:54 +01:00
YuheiOKAWA
261415a660 ar71xx: add support for PQI Air Pen
SoC: AR9331
Ethernet x1, Wireless 2.4G, uSD card slot x1.
USB Power, include Li-Po Battery.

Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>

Changes in v2:
alphabetical ordering, tabs fron spaces.
2017-01-20 00:52:48 +01:00
Yousong Zhou
78c2ec0f47 ar71xx: wrt400n: lift size limit on kernel and rootfs part
While at it, convert to new build method

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-01-20 00:44:46 +01:00
Yousong Zhou
5f9b20bc7d tools: wrt400n: fix making factory images with kernel bigger than 1MB
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-01-20 00:44:26 +01:00
Conor O'Gorman
274546046d ar71xx: add Abicom SC1750 support
Support Abicom International Scorpion SC1750 Board

QCA9550 700MHz Extended Temperature Range
256MB DDR2
256MB Nand Flash
16MB Nor Flash
1x SFP, 1x PCIe
2x 10/100/1000 Ethernet
135x100 mm
802.11ng/g/b
802.11ac/an/a

Signed-off-by: Conor O'Gorman <i@conorogorman.net>
2017-01-20 00:40:40 +01:00
Conor O'Gorman
d38ffd8cd9 ar71xx: add Abicom SC450 support
Support Abicom International Scorpion SC450 Board

QCA9550 700MHz Extended Temperature Range
256MB DDR2
256MB NAND Flash
16MB NOR Flash
10/100/1000 Ethernet
15W Max, 3x3 Mode, Full Power TX Power
802.3-at POE+ & DC Input options
100x 85mm
USB
PCIe
SFP
GPIO/LED

Signed-off-by: Conor O'Gorman <i@conorogorman.net>
2017-01-20 00:40:33 +01:00
Conor O'Gorman
eb97f41fc2 ar71xx: add Abicom SC300M support
Support Abicom International Scorpion SC300M Module

QCA9550 700MHz Extended Temperature Range
256MB DDR2
256MB Nand Flash
16MB SPI Flash
802.11a/na/b/g/ng
GPIO x 22, USB x2, PCIe x2
10/100/1000 Ethernet
23dBm, Optional Onboard Antenna
DC Input, 8-20V DC
85 x 55 mm

Signed-off-by: Conor O'Gorman <i@conorogorman.net>
2017-01-20 00:40:27 +01:00
Vitaly Chekryzhev
07a02efd07 ramips: ZyXEL Keenetic series update wan mac
Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-01-20 00:39:30 +01:00
Vitaly Chekryzhev
65985e9ace ramips: ZyXEL Keenetic Omni align factory images
ZyXEL web-flasher requires squashfs to be aligned to 64kb.

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-01-20 00:39:30 +01:00
Vitaly Chekryzhev
f9d91a4ac7 ramips: correct keenetic-series switch index
Fix switch name typo

Signed-off-by: Vitaly Chekryzhev <13hakta@gmail.com>
2017-01-20 00:39:30 +01:00
Svetoslav Neykov
97b52593bc ar71xx: Chipidea USB device support
Changes the platform to use the Chipidea driver instead of the
generic USB host driver which has support for both host and
device modes (selected on boot).

The changes in 930-chipidea-pullup.patch are already in mainline.
I'll upstream 920-usb-chipidea-AR933x-platform-support.patch once I
can test the changes with a newer kernel.

Signed-off-by: Svetoslav Neykov <svetoslav@neykov.name>
2017-01-20 00:37:01 +01:00
Jiri Kastner
cf79e393f9 octeon: fix mtd partitions for erlite on cmdline
erlite mtdparts exposes boot0, boot1 and eeprom regions
as read/write.
this patch adds readonly flags, so these regions can't be
modified. same as it is already for ER profile.

Signed-off-by: Jiri Kastner <cz172638@gmail.com>
2017-01-20 00:35:46 +01:00
Jo-Philipp Wich
ada6d9feca sdk: avoid using private repository clone urls as base repo entry
Only consider the repository origin url as valid base feed entry if it is a
git://, http:// or https:// location.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-19 20:46:58 +01:00
Felix Fietkau
254ccf9f4c lantiq: fix an ethernet stability issue triggered by receving packets during boot
Disabling ethernet during reboot (only to enable it again when the
ethernet driver attaches) can put the chip into a faulty state where it
corrupts the header of all incoming packets.

This happens if packets arrive during the time window where the core is
disabled, and it can be easily reproduced by rebooting while sending a
flood ping to the broadcast address.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-19 14:25:44 +01:00
Felix Fietkau
5aa03e16a7 build: disable CONFIG_AUTOREMOVE for packages/tools where QUILT is used
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-19 13:30:22 +01:00
Felix Fietkau
bc73a7fd98 build: include CONFIG_AUTOREMOVE in HOST_STAMP_PREPARED
Fixes build issues when changing the CONFIG_AUTOREMOVE setting

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-19 13:04:30 +01:00
Felix Fietkau
24c06e2481 lantiq: fix spurious irq storm
Since the MIPS IRQ stack patches, lantiq devices were emitting a storm
of messages like this:

[  567.872172] Spurious IRQ: CAUSE=0x1100c300

Fix this by reworking the IRQ dispatch code

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-19 12:33:15 +01:00
Felix Fietkau
86a72765b9 build: include CONFIG_AUTOREMOVE in STAMP_PREPARED
Fixes build issues when changing the CONFIG_AUTOREMOVE setting

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-19 11:37:19 +01:00
Jo-Philipp Wich
1fb673ee12 build: fix triggering opkg/host compilation
Commit 131db36 "build: remove separate /install step for host builds" dropped
the package/*/host/install targets in favor to performing the install steps
within the compile target instead.

Adjust package/Makefile accordingly in order to prevent a missing
staging_dir/host/bin/opkg when staging package archives into the rootfs.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-19 02:44:08 +01:00
Matthias Schiffer
421a6d314a gettext-full: fix to use $STAGING_DIR_HOSTPKG instead of $STAGING_DIR/host
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-19 00:05:10 +01:00
Matthias Schiffer
40d3401f3b rules.mk: export STAGING_DIR_HOSTPKG
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-19 00:05:10 +01:00
Felix Fietkau
d98bb7e6b9 build: extend CONFIG_AUTOREMOVE to tools/
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:09 +01:00
Felix Fietkau
131db366a3 build: remove separate /install step for host builds
Reduces the number of recursive make invocations

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:09 +01:00
Felix Fietkau
7a523569f7 build: add support for automatically removing build dir contents during build
This is used to save space on buildbot instances.
If any part of a package needs to be rebuild, the whole package is
rebuilt from scratch. Stamp files are preserved to allow dependency
checks to work

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:08 +01:00
Felix Fietkau
c150a190f5 build: stage bin/ packages inside PKG_BUILD_DIR
This makes the build slightly more efficient by avoiding the need to
re-stage packages on every full build run.

It is also necessary for the upcoming CONFIG_AUTOREMOVE feature

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:08 +01:00
Felix Fietkau
87d9e3462d build: stage unstripped packages inside PKG_BUILD_DIR
This makes the build slightly more efficient by avoiding the need to
re-stage packages on every full build run.

It is also necessary for the upcoming CONFIG_AUTOREMOVE feature

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:08 +01:00
Felix Fietkau
8aa93dafc8 build: write ABI_VERSION file when staging the package
The make target does not rewrite the file if the contents didn't
change. This causes make to always consider the target old.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:08 +01:00
Felix Fietkau
9228d1c066 build: introduce extra targets that contain only proper dependencies
This can be used to check if targets like prepare or compile are up to date

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:08 +01:00
Felix Fietkau
6cf067d084 build: define common subdir targets in rules.mk
Reduce build system clutter and enable further rework

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-18 23:57:07 +01:00
Mirko Vogt
c99f881568 git-kernel: $(SUBDIR) should always be $(LINUX_VERSION)
Before SUBDIR was set to $(PATCHVER) which may
or may not include the minor version number of
the linux kernel version. Usually it doesn't.

So the git-clone'd linux kernel was packed without
the minor version number taken into account, which
broke further processing, as it expected the
extracted dir being named linux-$(LINUX_VERSION)
(=with minor version) rather than linux-$(PATCHVER)
(=without minor version).

Changing SUBDIR to $(LINUX_VERSION) creates
consistent behaviour here.

Signed-off-by: Mirko Vogt <mirko-openwrt@nanl.de>
2017-01-18 21:03:26 +01:00
Matthias Schiffer
3d71786154 build: move STAGING_DIR_HOSTPKG and BUILD_DIR_HOST back to a common directory for all targets
Using a single host package staging dir (and build dir) significantly speeds up
builds when multiple targets are built in succession, especially for large host
packages like NodeJS.

$(STAGING_DIR)/host is kept in addition to $(STAGING_DIR_HOSTPKG) in most
places; it is still used as destination for host files in Build/InstallDev.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-18 19:47:36 +01:00
Hans Dedecker
5f7a081553 base-files: add /etc/iproute2/rt_protos
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-18 13:15:28 +01:00
Thibaut VARENE
7fb11c8ed2 ramips: add support for Netgear WN3000RPv3
This patch adds support for the Netgear WN3000RPv3
http://www.netgear.com/support/product/wn3000rpv3.aspx

Specifications:
- SoC: MediaTek MT7620A (580MHz, ramips)
- RAM: 32MB DDR
- Storage: 8MB NOR SPI flash
- Wireless: builtin MT7620A, 2x2:2 with u.FL connectors
- Ethernet: 1x100M
- Serial: JP1 header, 57600-8N1
- Stock firmware based on OpenWRT Kamikaze

Like the EX2700, the bootloader expects a secondary image signature,
see https://forum.openwrt.org/viewtopic.php?pid=312577#p312577
This is why the same fakeroot image is used for the WN3000

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-01-18 12:06:16 +01:00
Thibaut VARENE
29d0ac35bd ar71xx: mark soft_config mtd part as writeable for RB-941-2nD
The soft_config partition must be writeable for rbcfg to be able to
enact changes to the routerboot configuration.
The read-only flag was a mistake in the initial patch. Removing it
brings mach-rb941.c in line with all other RB platforms.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-01-18 12:05:43 +01:00
Zhang Jingye
71a39b8690 ipq806x: Fix wireless support for Netgear Nighthawk X4S D7800
D7800 has a simular hardware to R7800 and uses dual QCA9980 for both 2.4GHz and 5GHz band.
However there is no proper initialization for them, which causes a kernel panic due to failed firmware loading.

This patch adds d7800 to ath10k caldata extraction list.
I can get two functional wireless bands after making change to it.

Signed-off-by: Zhang Jingye <934526987@qq.com>
2017-01-18 12:05:18 +01:00
BangLang Huang
2a7f669016 ramips: fix mac address of miwifi-mini
For the miwifi-mini, the offset of ethernet mac should be 0x28
which you can easyily dump from 'Factory' partition.

Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
2017-01-18 12:05:14 +01:00
Alexandru Ardelean
2b84dfafa4 tools/qemu: use default host configure rule ; set appropriate vars & args
Admittedly, this is my own OCD wanting to get rid of this.

Because I tried (a while back to upgrade QEMU to a newer version),
and (during that attempt) I tried to get rid of this.

Tested on Linux & Mac.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-01-18 08:54:58 +01:00
Joseph C. Lehner
6b5dab9469 ramips: simplify EX2700 network config
Don't create a vlan for the Netgear EX2700's only Ethernet port.

Signed-off-by: Joseph C. Lehner <joseph.c.lehner@gmail.com>
2017-01-18 08:54:58 +01:00
Rosen Penev
7967178cfc ramips: Add back sdhci-mt7620 driver to default config
The driver no longer causes kernel panics and CPU hangs.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2017-01-18 08:54:53 +01:00
Rafał Miłecki
b86a34efea bcm53xx: use accepted BCM5301X patches for R8000 and Luxul devices
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-18 07:49:52 +01:00
Rafał Miłecki
9200e168f2 mac80211: move (& update) upstream accepted brcmfmac patches
These 3 patches are now in wireless-drivers-next tree.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-18 07:49:52 +01:00
Jo-Philipp Wich
a68b1b9c8a sdk: do not strip static libraries
Do not strip static libraries shipped with the SDK in order to preserve the
archive index. If we strip the index of the shipped libraries, host programs
will fail to link these libraries with errors like:

    libssl.a: error adding symbols: Archive has no index; run ranlib to add one

The error was found while investigating a Python host build failure within
the SDK environment.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-18 03:18:53 +01:00
Hans Dedecker
0d1b329914 netifd: update to git HEAD version
a057f6e device: fix DEV_OPT_SENDREDIRECTS definition

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-01-17 14:06:48 +01:00
Jo-Philipp Wich
5faad30d5d build: properly pass CPP and CXX flags in HOST_MAKE_VARS
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-17 09:30:13 +01:00
Alexandru Ardelean
e9d20f1f87 build: introduce default HOST_MAKE_VARS for host-builds
Inspired/adapted from `package-defaults.mk` MAKE_VARS.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-01-17 09:18:45 +01:00
Alexandru Ardelean
968fa53197 tools/cmake: remove HOST_CONFIGURE_CMD and re-distribute the args & vars
The final semantic is the same, but this is a bit more correct.

Build tested on Windows 10 (yes, there is some
Ubuntu mode for Windows 10, and I've been also building LEDE
on it for a few weeks).

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-01-16 20:40:14 +01:00
Chris Blake
0d9f922230 x86: add kernel module for sp5100_tco watchdog
This change adds the sp5100_tco driver as a kernel module for the x86
target. Specifically, this can be used by the PCEngines APU2/APU3. The
reason for having this as a kernel module is to allow users to
load/unload it on demand, as the I2C interface on the APU2/APU3 will not
work while this module is loaded. More info can be found on GitHub at
https://github.com/riptidewave93/LEDE-APU2/pull/5#issuecomment-255667736

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-01-16 20:40:13 +01:00
Chris Blake
4fab08183b x86: Add sp5100_tco AMD patches
This adds the following patches to the x86 target:

sp5100_tco: Add AMD Mullins platform support
sp5100_tco: Add AMD Carrizo platform support
sp5100_tco: fix the device check for SB800 and later chipsets
watchdog: sp5100_tco: properly check for new register layouts

With these added, the sp5100_tco driver can then be used on newer AMD
platforms, such as the PCEngines APU2/APU3 boards.

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2017-01-16 20:40:13 +01:00
Felix Fietkau
371b382a40 x86: remove the xen_domu subtarget
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:13 +01:00
Felix Fietkau
1d6879eedd x86/generic: add xen DomU support
Copy the relevant config options from the xen_domu subtarget

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:13 +01:00
Felix Fietkau
00144d2730 ar71xx: fix up the kernel config for the mikrotik subtarget
Limit enabled devices to routerboards, disable all other devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:13 +01:00
Cezary Jackiewicz
05115e9656 ar71xx: fix network config for Mikrotik RB411U
Mikrotik RB411U has only one ethernet port - eth0. This patch allows to create
correct config with one lan section.

Signed-off-by: Cezary Jackiewicz <cezary@eko.one.pl>
2017-01-16 20:40:12 +01:00
Thibaut VARENE
3f7841a70a ar71xx: add support for RB-941-2nD
Add full support for Mikrotik RB-941-2nD (hAP lite)

Original patch by Sergey Sergeev <adron@yapic.net> and
more information is available here:
https://wiki.openwrt.org/toh/mikrotik/rb941_2nd
I updated and adapted the patch to apply cleanly to LEDE trunk
and added proper numbering for the switch ports (matching case
labels).
Tested working on actual hardware with the information
provided in the above webpage. Sysupgrade works.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Felix Fietkau
8ab057f5e4 kernel: remove yaffs2 support, it is no longer needed
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Felix Fietkau
21591a3361 adm5120: mark the rb1xx subtarget as broken
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Felix Fietkau
9db9072d67 ar71xx: convert mikrotik routerboard support to UBI
Remove the wget2nand script, drop the need for manual installation,
use sysupgrade instead.

There are now two different NAND images, one for 64 MiB flashes, the
other for >= 128 MiB

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Felix Fietkau
0e547400fb ar71xx: create a proper default profile for the mikrotik subtarget, drop other profiles
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Christian Lamparter
a8a5cb9595 musl: update musl to 1.1.16+ and switch to download from git
This patch updates musl to 1.1.16+ [0] and removes all the
backported patches. This is a major release and tagged as such.
For more information visit musl-libc.org or read the WHATSNEW.

Furthermore, this patch also changes musl to download directly
from git. This makes it easier to update musl in the future.

The patch custom Add-format-attribute-to-some-function-declarations.patch
was assigned a new 400- number. This should avoid confusion
since 0xx numbers are usually assigned to backports.

[0] <http://git.musl-libc.org/cgit/musl/commit/?id=769f53598e781ffc89191520f3f8a93cb58db91f>

Cc: Hannu Nyman <hannu.nyman@iki.fi>
Cc: Koen Vandeputte <koen.vandeputte@ncentric.com>
Cc: Jo-Philipp Wich <jo@mein.io>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
2017-01-16 20:40:00 +01:00
Daniel Engberg
da5d060ac9 zlib: Update to 1.2.11
Update to 1.2.11 as suggested by upstream
Also add SF as primary source and main site as fallback

Note: SF doesn't carry the 1.2.11 update yet.

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2017-01-16 19:52:07 +01:00
Jo-Philipp Wich
ec1a695daa kernel: ar8327/ar8337: disable ARL access code to avoid lockups (FS#384)
Running ar8327_get_arl_entry() early after boot leads to MDIO related system
lockups on several devices using this driver.

Since dumping the ARL table contens is an optional, uncritical feature, simply
disable the code for now.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-16 19:39:42 +01:00
Stijn Segers
b65572fee9 curl: fix HTTPS network timeouts with OpenSSL
Backport an upstream change to fix HTTPS timeouts with OpenSSL.
Upstream curl bug #1174.

Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
[Jo-Philipp Wich: reword commit message, rename patch to 001-*]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-16 19:39:42 +01:00
8540 changed files with 862452 additions and 884997 deletions

View File

@@ -1,13 +1,13 @@
This repository is a mirror of our main repo at https://git.lede-project.org/sources.git
This repository is a mirror of our main repo at https://git.openwrt.org/openwrt/openwrt.git
It is for reference only and is not active for checkins or for reporting issues.
All issues should be reported at: https://bugs.lede-project.org
All issues should be reported at: https://bugs.openwrt.org
Please do not open any NEW issue here - we will be closing the Github issues
capability in the near future.
We will continue to accept Pull Requests here as described in the repo description.
Close this now and click here: https://bugs.lede-project.org
Close this now and click here: https://bugs.openwrt.org
Thankyou for your co-operation.

8
.github/pull_request_template vendored Normal file
View File

@@ -0,0 +1,8 @@
Thanks for your contribution to OpenWrt!
To help keep the codebase consistent and readable,
and to help people review your contribution,
we ask you to follow the rules you find in the wiki at this link
https://openwrt.org/submitting-patches
Please remove this message before posting the pull request.

3
.gitignore vendored
View File

@@ -16,6 +16,7 @@
/overlay
/package/feeds
/package/openwrt-packages
/*.patch
key-build*
*.orig
*.rej
@@ -25,3 +26,5 @@ key-build*
.emacs.desktop*
TAGS*~
git-src
.project
.cproject

View File

@@ -4,7 +4,7 @@
# See /LICENSE for more information.
#
mainmenu "LEDE Configuration"
mainmenu "OpenWrt Configuration"
config MODULES
option modules

View File

@@ -14,11 +14,12 @@ export TOPDIR LC_ALL LANG TZ
empty:=
space:= $(empty) $(empty)
$(if $(findstring $(space),$(TOPDIR)),$(error ERROR: The path to the LEDE directory must not include any spaces))
$(if $(findstring $(space),$(TOPDIR)),$(error ERROR: The path to the OpenWrt directory must not include any spaces))
world:
include $(TOPDIR)/include/host.mk
DISTRO_PKG_CONFIG:=$(shell which -a pkg-config | grep -E '\/usr' | head -n 1)
export PATH:=$(TOPDIR)/staging_dir/host/bin:$(PATH)
ifneq ($(OPENWRT_BUILD),1)
_SINGLE=export MAKEFLAGS=$(space);
@@ -27,6 +28,8 @@ ifneq ($(OPENWRT_BUILD),1)
export OPENWRT_BUILD
GREP_OPTIONS=
export GREP_OPTIONS
CDPATH=
export CDPATH
include $(TOPDIR)/include/debug.mk
include $(TOPDIR)/include/depends.mk
include $(TOPDIR)/include/toplevel.mk
@@ -39,8 +42,8 @@ else
include tools/Makefile
include toolchain/Makefile
$(toolchain/stamp-install): $(tools/stamp-install)
$(target/stamp-compile): $(toolchain/stamp-install) $(tools/stamp-install) $(BUILD_DIR)/.prepared
$(toolchain/stamp-compile): $(tools/stamp-compile)
$(target/stamp-compile): $(toolchain/stamp-compile) $(tools/stamp-compile) $(BUILD_DIR)/.prepared
$(package/stamp-compile): $(target/stamp-compile) $(package/stamp-cleanup)
$(package/stamp-install): $(package/stamp-compile)
$(target/stamp-install): $(package/stamp-compile) $(package/stamp-install)
@@ -55,7 +58,7 @@ clean: FORCE
rm -rf $(BUILD_DIR) $(STAGING_DIR) $(BIN_DIR) $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES) $(BUILD_LOG_DIR) $(TOPDIR)/staging_dir/packages
dirclean: clean
rm -rf $(STAGING_DIR_HOST) $(TOOLCHAIN_DIR) $(BUILD_DIR_HOST) $(BUILD_DIR_TOOLCHAIN)
rm -rf $(STAGING_DIR_HOST) $(STAGING_DIR_HOSTPKG) $(TOOLCHAIN_DIR) $(BUILD_DIR_BASE)/host $(BUILD_DIR_BASE)/hostpkg $(BUILD_DIR_TOOLCHAIN)
rm -rf $(TMP_DIR)
ifndef DUMP_TARGET_DB
@@ -84,17 +87,36 @@ prereq: $(target/stamp-prereq) tmp/.prereq_packages
exit 1; \
fi
$(BIN_DIR)/profiles.json: FORCE
$(if $(CONFIG_JSON_OVERVIEW_IMAGE_INFO), \
WORK_DIR=$(BUILD_DIR)/json_info_files \
$(SCRIPT_DIR)/json_overview_image_info.py $@ \
)
json_overview_image_info: $(BIN_DIR)/profiles.json
checksum: FORCE
$(call sha256sums,$(BIN_DIR))
$(call sha256sums,$(BIN_DIR),$(CONFIG_BUILDBOT))
buildversion: FORCE
$(SCRIPT_DIR)/getver.sh > $(BIN_DIR)/version.buildinfo
feedsversion: FORCE
$(SCRIPT_DIR)/feeds list -fs > $(BIN_DIR)/feeds.buildinfo
diffconfig: FORCE
mkdir -p $(BIN_DIR)
$(SCRIPT_DIR)/diffconfig.sh > $(BIN_DIR)/config.seed
$(SCRIPT_DIR)/diffconfig.sh > $(BIN_DIR)/config.buildinfo
buildinfo: FORCE
$(_SINGLE)$(SUBMAKE) -r diffconfig buildversion feedsversion
prepare: .config $(tools/stamp-compile) $(toolchain/stamp-compile)
$(_SINGLE)$(SUBMAKE) -r buildinfo
prepare: .config $(tools/stamp-install) $(toolchain/stamp-install)
world: prepare $(target/stamp-compile) $(package/stamp-compile) $(package/stamp-install) $(target/stamp-install) FORCE
$(_SINGLE)$(SUBMAKE) -r package/index
$(_SINGLE)$(SUBMAKE) -r diffconfig
$(_SINGLE)$(SUBMAKE) -r json_overview_image_info
$(_SINGLE)$(SUBMAKE) -r checksum
.PHONY: clean dirclean prereq prepare world package/symlinks package/symlinks-install package/symlinks-clean

41
README
View File

@@ -1,29 +1,34 @@
This is the buildsystem for the LEDE Linux distribution.
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
Please use "make menuconfig" to choose your preferred
configuration for the toolchain and firmware.
This is the buildsystem for the OpenWrt Linux distribution.
You need to have installed gcc, binutils, bzip2, flex, python, perl, make,
find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers.
To build your own firmware you need a Linux, BSD or MacOSX system (case
sensitive filesystem required). Cygwin is unsupported because of the lack
of a case sensitive file system.
Run "./scripts/feeds update -a" to get all the latest package definitions
defined in feeds.conf / feeds.conf.default respectively
and "./scripts/feeds install -a" to install symlinks of all of them into
package/feeds/.
You need gcc, binutils, bzip2, flex, python, perl, make, find, grep, diff,
unzip, gawk, getopt, subversion, libz-dev and libc headers installed.
Use "make menuconfig" to configure your image.
1. Run "./scripts/feeds update -a" to obtain all the latest package definitions
defined in feeds.conf / feeds.conf.default
Simply running "make" will build your firmware.
It will download all sources, build the cross-compile toolchain,
the kernel and all choosen applications.
2. Run "./scripts/feeds install -a" to install symlinks for all obtained
packages into package/feeds/
To build your own firmware you need to have access to a Linux, BSD or MacOSX system
(case-sensitive filesystem required). Cygwin will not be supported because of
the lack of case sensitiveness in the file system.
3. Run "make menuconfig" to select your preferred configuration for the
toolchain, target system & firmware packages.
4. Run "make" to build your firmware. This will download all sources, build
the cross-compile toolchain and then cross-compile the Linux kernel & all
chosen applications for your target system.
Sunshine!
Your LEDE Community
http://www.lede-project.org
Your OpenWrt Community
http://www.openwrt.org

View File

@@ -7,6 +7,14 @@
menu "Global build settings"
config JSON_OVERVIEW_IMAGE_INFO
bool "Create JSON info file overview per target"
default BUILDBOT
help
Create a JSON info file called profiles.json in the target
directory containing machine readable list of built profiles
and resulting images.
config ALL_NONSHARED
bool "Select all target specific packages by default"
select ALL_KMODS
@@ -34,14 +42,27 @@ menu "Global build settings"
bool "Cryptographically signed package lists"
default y
config SIGNATURE_CHECK
bool "Enable signature checking in opkg"
default SIGNED_PACKAGES
comment "General build options"
config TESTING_KERNEL
bool "Use the testing kernel version"
depends on HAS_TESTING_KERNEL
default n
help
If the target supports a newer kernel version than the default,
you can use this config option to enable it
config DISPLAY_SUPPORT
bool "Show packages that require graphics support (local or remote)"
default n
config BUILD_PATENTED
default y
default n
bool "Compile with support for patented functionality"
help
When this option is disabled, software which provides patented functionality
@@ -68,6 +89,20 @@ menu "Global build settings"
This removes all ipkg/opkg status data files from the target directory
before building the root filesystem.
config IPK_FILES_CHECKSUMS
bool
prompt "Record files checksums in package metadata"
default n
help
This makes file checksums part of package metadata. It increases size
but provides you with pkg_check command to check for flash coruptions.
config INCLUDE_CONFIG
bool "Include build configuration in firmware" if DEVEL
default n
help
If enabled, config.buildinfo will be stored in /etc/build.config of firmware.
config COLLECT_KERNEL_DEBUG
bool
prompt "Collect kernel debug information"
@@ -78,10 +113,12 @@ menu "Global build settings"
Useful for release builds, so that kernel issues can be debugged offline
later.
comment "Kernel build options"
menu "Kernel build options"
source "config/Config-kernel.in"
endmenu
comment "Package build options"
config DEBUG
@@ -176,6 +213,22 @@ menu "Global build settings"
this per package by adding PKG_CHECK_FORMAT_SECURITY:=0 in the package
Makefile.
config PKG_ASLR_PIE
bool
prompt "User space ASLR PIE compilation"
select BUSYBOX_DEFAULT_PIE
default n
help
Add -fPIC to CFLAGS and -specs=hardened-build-ld to LDFLAGS.
This enables package build as Position Independent Executables (PIE)
to protect against "return-to-text" attacks. This belongs to the
feature of Address Space Layout Randomisation (ASLR), which is
implemented by the kernel and the ELF loader by randomising the
location of memory allocations. This makes memory addresses harder
to predict when an attacker is attempting a memory-corruption exploit.
You can disable this per package by adding PKG_ASLR_PIE:=0 in the package
Makefile.
choice
prompt "User space Stack-Smashing Protection"
depends on USE_MUSL
@@ -186,11 +239,11 @@ menu "Global build settings"
bool "None"
config PKG_CC_STACKPROTECTOR_REGULAR
bool "Regular"
select SSP_SUPPORT if !USE_MUSL
select GCC_LIBSSP if !USE_MUSL
depends on KERNEL_CC_STACKPROTECTOR_REGULAR
config PKG_CC_STACKPROTECTOR_STRONG
bool "Strong"
select SSP_SUPPORT if !USE_MUSL
select GCC_LIBSSP if !USE_MUSL
depends on !GCC_VERSION_4_8
depends on KERNEL_CC_STACKPROTECTOR_STRONG
endchoice
@@ -210,6 +263,14 @@ menu "Global build settings"
bool "Strong"
endchoice
config KERNEL_STACKPROTECTOR
bool
default KERNEL_CC_STACKPROTECTOR_REGULAR || KERNEL_CC_STACKPROTECTOR_STRONG
config KERNEL_STACKPROTECTOR_STRONG
bool
default KERNEL_CC_STACKPROTECTOR_STRONG
choice
prompt "Enable buffer-overflows detection (FORTIFY_SOURCE)"
default PKG_FORTIFY_SOURCE_1

View File

@@ -39,6 +39,14 @@ menuconfig DEVEL
help
Automatically rebuild packages when their files change.
config AUTOREMOVE
bool "Automatic removal of build directories" if DEVEL
default n
help
Automatically delete build directories after make target completed.
This allows you to symlink build_dir into a scratch location, e.g. a ramdisk,
which does not have enough space to keep a complete build_dir.
config BUILD_SUFFIX
string "Build suffix to append to the target BUILD_DIR variable" if DEVEL
default ""
@@ -82,15 +90,21 @@ menuconfig DEVEL
In this instance, the --reference option of git clone will
be used thus creating a quick local clone of your repo.
config KERNEL_GIT_BRANCH
string "Enter git branch to clone" if DEVEL
config KERNEL_GIT_REF
string "Enter git ref at which to checkout" if DEVEL
depends on (KERNEL_GIT_CLONE_URI != "")
default ""
help
Enter the branch name to checkout after cloning the git repository.
In this instance, the --branch option of git clone will be used.
Enter the git ref at which to checkout the git repository
after it is cloned, and before making it a tar-ball.
It can be a git hash or a branch name.
If unused, the clone's repository HEAD will be checked-out.
config KERNEL_GIT_MIRROR_HASH
string "Enter hash of Git kernel tree source checkout tarball" if DEVEL
depends on (KERNEL_GIT_CLONE_URI != "")
default ""
config BUILD_LOG
bool "Enable log files during build process" if DEVEL
help

View File

@@ -14,9 +14,11 @@ menu "Target Images"
choice
prompt "Compression"
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_lantiq
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_mpc85xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
default TARGET_INITRAMFS_COMPRESSION_NONE
depends on TARGET_ROOTFS_INITRAMFS
help
@@ -51,6 +53,13 @@ menu "Target Images"
help
Kernel uses specified external cpio as INITRAMFS_SOURCE.
config TARGET_INITRAMFS_FORCE
bool "Force"
depends on TARGET_ROOTFS_INITRAMFS
default n
help
Ignore the initramfs passed by the bootloader.
comment "Root filesystem archives"
config TARGET_ROOTFS_CPIOGZ
@@ -141,6 +150,7 @@ menu "Target Images"
int "Block size (in KiB)"
depends on TARGET_ROOTFS_SQUASHFS
default 64 if LOW_MEMORY_FOOTPRINT
default 1024 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT)
default 256
menuconfig TARGET_ROOTFS_UBIFS
@@ -188,14 +198,12 @@ menu "Target Images"
config GRUB_CONSOLE
bool "Use Console Terminal (in addition to Serial)"
depends on GRUB_IMAGES
default n if (TARGET_x86_generic_Soekris45xx || TARGET_x86_generic_Soekris48xx || TARGET_x86_net5501 || TARGET_x86_geos || TARGET_x86_alix2)
default y
config GRUB_SERIAL
string "Serial port device"
depends on GRUB_IMAGES
default "hvc0" if TARGET_x86_xen_domu
default "ttyS0" if ! TARGET_x86_xen_domu
default "ttyS0"
config GRUB_BAUDRATE
int "Serial port baud rate"
@@ -211,7 +219,6 @@ menu "Target Images"
config GRUB_BOOTOPTS
string "Extra kernel boot options"
depends on GRUB_IMAGES
default "xencons=hvc" if TARGET_x86_xen_domu
help
If you don't know, just leave it blank.
@@ -222,16 +229,24 @@ menu "Target Images"
help
If you don't know, 5 seconds is a reasonable default.
config GRUB_TITLE
string "Title for the menu entry in GRUB"
depends on GRUB_IMAGES
default "OpenWrt"
help
This is the title of the GRUB menu entry.
If unspecified, it defaults to OpenWrt.
config VDI_IMAGES
bool "Build VirtualBox image files (VDI)"
depends on TARGET_x86 || TARGET_x86_64
depends on TARGET_x86
select GRUB_IMAGES
select TARGET_IMAGES_PAD
select PACKAGE_kmod-e1000
config VMDK_IMAGES
bool "Build VMware image files (VMDK)"
depends on TARGET_x86 || TARGET_x86_64
depends on TARGET_x86
select GRUB_IMAGES
select TARGET_IMAGES_PAD
select PACKAGE_kmod-e1000
@@ -242,7 +257,7 @@ menu "Target Images"
config TARGET_IMAGES_GZIP
bool "GZip images"
depends on TARGET_IMAGES_PAD || TARGET_ROOTFS_EXT4FS
depends on TARGET_IMAGES_PAD || TARGET_ROOTFS_EXT4FS || TARGET_x86
default y
comment "Image Options"
@@ -251,12 +266,14 @@ menu "Target Images"
config TARGET_KERNEL_PARTSIZE
int "Kernel partition size (in MB)"
depends on GRUB_IMAGES
depends on GRUB_IMAGES || USES_BOOT_PART
default 8 if TARGET_apm821xx_sata
default 20 if TARGET_brcm2708
default 16
config TARGET_ROOTFS_PARTSIZE
int "Root filesystem partition size (in MB)"
depends on GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532 || TARGET_mvebu || TARGET_uml
depends on GRUB_IMAGES || USES_ROOTFS_PART || TARGET_ROOTFS_EXT4FS || TARGET_omap || TARGET_rb532 || TARGET_sunxi || TARGET_uml
default 256
help
Select the root filesystem partition size.

View File

@@ -6,6 +6,7 @@
config KERNEL_BUILD_USER
string "Custom Kernel Build User Name"
default "builder" if BUILDBOT
default ""
help
Sets the Kernel build user string, which for example will be returned
@@ -14,6 +15,7 @@ config KERNEL_BUILD_USER
config KERNEL_BUILD_DOMAIN
string "Custom Kernel Build Domain Name"
default "buildhost" if BUILDBOT
default ""
help
Sets the Kernel build domain string, which for example will be
@@ -31,7 +33,7 @@ config KERNEL_CRASHLOG
config KERNEL_SWAP
bool "Support for paging of anonymous memory (swap)"
default y
default y if !SMALL_FLASH
config KERNEL_DEBUG_FS
bool "Compile the kernel with debug filesystem enabled"
@@ -42,15 +44,20 @@ config KERNEL_DEBUG_FS
write to these files. Many common debugging facilities, such as
ftrace, require the existence of debugfs.
config KERNEL_MIPS_FPU_EMULATOR
bool "Compile the kernel with MIPS FPU Emulator"
default y if TARGET_pistachio
depends on (mips || mipsel || mips64 || mips64el)
config KERNEL_ARM_PMU
bool
default n
depends on (arm || arm64)
depends on (arm || aarch64)
config KERNEL_PERF_EVENTS
bool
bool "Compile the kernel with performance events and counters"
default n
select KERNEL_ARM_PMU if (arm || arm64)
select KERNEL_ARM_PMU if (arm || aarch64)
config KERNEL_PROFILING
bool "Compile the kernel with profiling enabled"
@@ -60,6 +67,27 @@ config KERNEL_PROFILING
Enable the extended profiling support mechanisms used by profilers such
as OProfile.
config KERNEL_TASKSTATS
bool "Compile the kernel with task resource/io statistics and accounting"
default n
help
Enable the collection and publishing of task/io statistics and
accounting. Enable this option to enable i/o monitoring in system
monitors.
if KERNEL_TASKSTATS
config KERNEL_TASK_DELAY_ACCT
def_bool y
config KERNEL_TASK_IO_ACCOUNTING
def_bool y
config KERNEL_TASK_XACCT
def_bool y
endif
config KERNEL_KALLSYMS
bool "Compile the kernel with symbol table information"
default y if !SMALL_FLASH
@@ -107,7 +135,7 @@ config KERNEL_DEBUG_KERNEL
config KERNEL_DEBUG_INFO
bool "Compile the kernel with debug information"
default y
default y if !SMALL_FLASH
select KERNEL_DEBUG_KERNEL
help
This will compile your kernel and modules with debug information.
@@ -166,6 +194,10 @@ config KERNEL_KPROBE_EVENT
bool
default y if KERNEL_KPROBES
config KERNEL_KPROBE_EVENTS
bool
default y if KERNEL_KPROBES
config KERNEL_AIO
bool "Compile the kernel with asynchronous IO support"
default n
@@ -200,7 +232,7 @@ config KERNEL_COREDUMP
config KERNEL_ELF_CORE
bool "Enable process core dump support"
select KERNEL_COREDUMP
default y
default y if !SMALL_FLASH
config KERNEL_PROVE_LOCKING
bool "Enable kernel lock checking"
@@ -231,6 +263,16 @@ config KERNEL_RELAY
config KERNEL_KEXEC
bool "Enable kexec support"
config KERNEL_PROC_VMCORE
bool
config KERNEL_CRASH_DUMP
depends on i386 || x86_64 || arm || armeb
select KERNEL_KEXEC
select KERNEL_PROC_VMCORE
bool "Enable support for kexec crashdump"
default y
config USE_RFKILL
bool "Enable rfkill support"
default RFKILL_SUPPORT
@@ -244,7 +286,7 @@ config KERNEL_DEVTMPFS
default n
help
devtmpfs is a simple, kernel-managed /dev filesystem. The kernel creates
devices nodes for all registered devices ti simplify boot, but leaves more
devices nodes for all registered devices to simplify boot, but leaves more
complex tasks to userspace (e.g. udev).
if KERNEL_DEVTMPFS
@@ -483,6 +525,20 @@ if KERNEL_CGROUPS
CONFIG_CFQ_GROUP_IOSCHED=y; for enabling throttling policy, set
CONFIG_BLK_DEV_THROTTLING=y.
if KERNEL_BLK_CGROUP
config KERNEL_CFQ_GROUP_IOSCHED
bool "Proportional weight of disk bandwidth in CFQ"
config KERNEL_BLK_DEV_THROTTLING
bool "Enable throttling policy"
default y if TARGET_brcm2708
config KERNEL_BLK_DEV_THROTTLING_LOW
bool "Block throttling .low limit interface support (EXPERIMENTAL)"
depends on KERNEL_BLK_DEV_THROTTLING
endif
config KERNEL_DEBUG_BLK_CGROUP
bool "Enable Block IO controller debugging"
default n
@@ -597,6 +653,17 @@ config KERNEL_SECCOMP
help
Build kernel with support for seccomp.
#
# IPv4 configuration
#
config KERNEL_IP_MROUTE
bool "Enable IPv4 multicast routing"
default y
help
Multicast routing requires a multicast routing daemon in
addition to kernel support.
#
# IPv6 configuration
#
@@ -613,7 +680,11 @@ if KERNEL_IPV6
def_bool y
config KERNEL_IPV6_MROUTE
def_bool y
bool "Enable IPv6 multicast routing"
default y
help
Multicast routing requires a multicast routing daemon in
addition to kernel support.
config KERNEL_IPV6_PIMSM_V2
def_bool n
@@ -704,7 +775,7 @@ menu "Filesystem ACL and attr support options"
select KERNEL_FS_POSIX_ACL
default y if USE_FS_ACL_ATTR
config KERNEL_HFSPLUG_FS_POSIX_ACL
config KERNEL_HFSPLUS_FS_POSIX_ACL
bool "Enable POSIX ACL for HFS+ Filesystems"
select KERNEL_FS_POSIX_ACL
default y if USE_FS_ACL_ATTR
@@ -755,3 +826,30 @@ config KERNEL_DEVKMEM
Say Y here if you want to support the /dev/kmem device. The
/dev/kmem device is rarely used, but can be used for certain
kind of kernel debugging operations.
config KERNEL_SQUASHFS_FRAGMENT_CACHE_SIZE
int "Number of squashfs fragments cached"
default 2 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT)
default 3
#
# compile optimiziation setting
#
choice
prompt "Compiler optimization level"
default KERNEL_CC_OPTIMIZE_FOR_SIZE if SMALL_FLASH
config KERNEL_CC_OPTIMIZE_FOR_PERFORMANCE
bool "Optimize for performance"
help
This is the default optimization level for the kernel, building
with the "-O2" compiler flag for best performance and most
helpful compile-time warnings.
config KERNEL_CC_OPTIMIZE_FOR_SIZE
bool "Optimize for size"
help
Enabling this option will pass "-Os" instead of "-O2" to
your compiler resulting in a smaller kernel.
endchoice

View File

@@ -1,4 +1,5 @@
src-git packages https://git.lede-project.org/feed/packages.git^40da7ecf21ffe1f3523ffa430c406e1db58ce3d4
src-git luci https://git.lede-project.org/project/luci.git^7bf036750081787e01339c82865ad45fca6520ef
src-git routing https://git.lede-project.org/feed/routing.git^d09478290f72c6e58833b65baf14d9173eaf98e1
src-git telephony https://git.lede-project.org/feed/telephony.git^95498e75db5c6741cd53f8746ffc1473c72b6e5d
src-git packages https://git.openwrt.org/feed/packages.git^2974079d3db786fe5da00c10f1d80e79b0112093
src-git luci https://git.openwrt.org/project/luci.git^51f55b58b75b189f4f8810a827ca27a959e2192d
src-git routing https://git.openwrt.org/feed/routing.git^02b4dbfcb7b8f8b566940847d22d5a6f229d2e66
src-git telephony https://git.openwrt.org/feed/telephony.git^6e019c94d0fa7162548d528bf4ba060a61f8cb59
src-git freifunk https://github.com/freifunk/openwrt-packages.git^73454e6fe1bdc902c69ca0079d979fdb94d6fb1f

View File

@@ -39,7 +39,9 @@ define autoreconf
[ -e $(p)/config.rpath ] || \
ln -s $(SCRIPT_DIR)/config.rpath $(p)/config.rpath; \
touch NEWS AUTHORS COPYING ABOUT-NLS ChangeLog; \
$(AM_TOOL_PATHS) $(STAGING_DIR_HOST)/bin/autoreconf -v -f -i -s \
$(AM_TOOL_PATHS) \
LIBTOOLIZE='$(STAGING_DIR_HOST)/bin/libtoolize --install' \
$(STAGING_DIR_HOST)/bin/autoreconf -v -f -i -s \
$(if $(word 2,$(3)),--no-recursive) \
-B $(STAGING_DIR_HOST)/share/aclocal \
$(patsubst %,-I %,$(5)) \
@@ -75,7 +77,7 @@ define autoreconf_target
$(strip $(call autoreconf, \
$(PKG_BUILD_DIR), $(PKG_REMOVE_FILES), \
$(PKG_AUTOMAKE_PATHS), $(PKG_LIBTOOL_PATHS), \
$(STAGING_DIR)/host/share/aclocal $(STAGING_DIR)/usr/share/aclocal $(PKG_MACRO_PATHS)))
$(STAGING_DIR)/host/share/aclocal $(STAGING_DIR_HOSTPKG)/share/aclocal $(STAGING_DIR)/usr/share/aclocal $(PKG_MACRO_PATHS)))
endef
define patch_libtool_target
@@ -105,14 +107,14 @@ ifneq ($(filter patch-libtool,$(PKG_FIXUP)),)
endif
ifneq ($(filter libtool,$(PKG_FIXUP)),)
PKG_BUILD_DEPENDS += libtool libintl libiconv
PKG_BUILD_DEPENDS += libtool gettext libiconv
ifeq ($(filter no-autoreconf,$(PKG_FIXUP)),)
Hooks/Configure/Pre += autoreconf_target
endif
endif
ifneq ($(filter libtool-ucxx,$(PKG_FIXUP)),)
PKG_BUILD_DEPENDS += libtool libintl libiconv
PKG_BUILD_DEPENDS += libtool gettext libiconv
ifeq ($(filter no-autoreconf,$(PKG_FIXUP)),)
Hooks/Configure/Pre += autoreconf_target
endif

View File

@@ -7,8 +7,8 @@ ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
endif
CMAKE_BINARY_DIR = $(PKG_BUILD_DIR)$(if $(CMAKE_BINARY_SUBDIR),/$(CMAKE_BINARY_SUBDIR))
CMAKE_SOURCE_DIR = $(PKG_BUILD_DIR)
HOST_CMAKE_SOURCE_DIR = $(HOST_BUILD_DIR)
CMAKE_SOURCE_DIR = $(PKG_BUILD_DIR)$(if $(CMAKE_SOURCE_SUBDIR),/$(CMAKE_SOURCE_SUBDIR))
HOST_CMAKE_SOURCE_DIR = $(HOST_BUILD_DIR)$(if $(CMAKE_SOURCE_SUBDIR),/$(CMAKE_SOURCE_SUBDIR))
MAKE_PATH = $(firstword $(CMAKE_BINARY_SUBDIR) .)
ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
@@ -22,19 +22,29 @@ ifeq ($(CONFIG_CCACHE),)
CMAKE_CXX_COMPILER:=$(call cmake_tool,$(TARGET_CXX))
CMAKE_C_COMPILER_ARG1:=
CMAKE_CXX_COMPILER_ARG1:=
CMAKE_HOST_C_COMPILER:=$(HOSTCC)
CMAKE_HOST_CXX_COMPILER:=$(HOSTCXX)
CMAKE_HOST_C_COMPILER_ARG1:=
CMAKE_HOST_CXX_COMPILER_ARG1:=
else
CCACHE:=$(STAGING_DIR_HOST)/bin/ccache
CMAKE_C_COMPILER:=$(CCACHE)
CMAKE_C_COMPILER_ARG1:=$(TARGET_CC_NOCACHE)
CMAKE_CXX_COMPILER:=$(CCACHE)
CMAKE_CXX_COMPILER_ARG1:=$(TARGET_CXX_NOCACHE)
CMAKE_HOST_C_COMPILER:=$(CCACHE)
CMAKE_HOST_C_COMPILER_ARG1:=$(HOSTCC_NOCACHE)
CMAKE_HOST_CXX_COMPILER:=$(CCACHE)
CMAKE_HOST_CXX_COMPILER_ARG1:=$(HOSTCXX_NOCACHE)
endif
CMAKE_AR:=$(call cmake_tool,$(TARGET_AR))
CMAKE_NM:=$(call cmake_tool,$(TARGET_NM))
CMAKE_RANLIB:=$(call cmake_tool,$(TARGET_RANLIB))
CMAKE_FIND_ROOT_PATH:=$(STAGING_DIR)/usr;$(TOOLCHAIN_DIR)$(if $(CONFIG_EXTERNAL_TOOLCHAIN),;$(CONFIG_TOOLCHAIN_ROOT))
CMAKE_HOST_FIND_ROOT_PATH:=$(STAGING_DIR)/host;$(STAGING_DIR_HOST)
CMAKE_HOST_FIND_ROOT_PATH:=$(STAGING_DIR)/host;$(STAGING_DIR_HOSTPKG);$(STAGING_DIR_HOST)
CMAKE_SHARED_LDFLAGS:=-Wl,-Bsymbolic-functions
define Build/Configure/Default
@@ -90,6 +100,12 @@ define Host/Configure/Default
LDFLAGS="$(HOST_LDFLAGS)" \
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$(CMAKE_HOST_C_COMPILER)" \
-DCMAKE_C_COMPILER_ARG1="$(CMAKE_HOST_C_COMPILER_ARG1)" \
-DCMAKE_CXX_COMPILER="$(CMAKE_HOST_CXX_COMPILER)" \
-DCMAKE_CXX_COMPILER_ARG1="$(CMAKE_HOST_CXX_COMPILER_ARG1)" \
-DCMAKE_ASM_COMPILER="$(CMAKE_HOST_C_COMPILER)" \
-DCMAKE_ASM_COMPILER_ARG1="$(CMAKE_HOST_C_COMPILER_ARG1)" \
-DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" \
-DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" \
-DCMAKE_EXE_LINKER_FLAGS:STRING="$(HOST_LDFLAGS)" \
@@ -103,6 +119,7 @@ define Host/Configure/Default
-DCMAKE_INSTALL_PREFIX=$(HOST_BUILD_PREFIX) \
-DCMAKE_PREFIX_PATH=$(HOST_BUILD_PREFIX) \
-DCMAKE_SKIP_RPATH=TRUE \
-DCMAKE_INSTALL_LIBDIR=lib \
$(CMAKE_HOST_OPTIONS) \
$(HOST_CMAKE_SOURCE_DIR) \
)

View File

@@ -11,7 +11,7 @@
# 3: tempfile for file listings
# 4: find options
DEP_FINDPARAMS := -x "*/.svn*" -x ".*" -x "*:*" -x "*\!*" -x "* *" -x "*\\\#*" -x "*/.*_check" -x "*/.*.swp"
DEP_FINDPARAMS := -x "*/.svn*" -x ".*" -x "*:*" -x "*\!*" -x "* *" -x "*\\\#*" -x "*/.*_check" -x "*/.*.swp" -x "*/.pkgdir*"
find_md5=find $(wildcard $(1)) -type f $(patsubst -x,-and -not -path,$(DEP_FINDPARAMS) $(2)) | mkhash md5
@@ -20,6 +20,7 @@ define rdep
.SILENT: $(2)_check
$(2): $(2)_check
check-depends: $(2)_check
ifneq ($(wildcard $(2)),)
$(2)_check::
@@ -46,3 +47,8 @@ endif
endef
ifeq ($(filter .%,$(MAKECMDGOALS)),$(if $(MAKECMDGOALS),$(MAKECMDGOALS),x))
define rdep
$(2): $(2)_check
endef
endif

View File

@@ -19,17 +19,23 @@ endif
DOWNLOAD_RDEP=$(STAMP_PREPARED) $(HOST_STAMP_PREPARED)
define dl_method_git
$(if $(filter https://github.com/% git://github.com/%,$(1)),github_archive,git)
endef
# Try to guess the download method from the URL
define dl_method
$(strip \
$(if $(2),$(2), \
$(if $(filter @APACHE/% @GITHUB/% @GNOME/% @GNU/% @KERNEL/% @SF/% @SAVANNAH/% ftp://% http://% https://% file://%,$(1)),default, \
$(if $(filter git://%,$(1)),git, \
$(if $(filter svn://%,$(1)),svn, \
$(if $(filter cvs://%,$(1)),cvs, \
$(if $(filter hg://%,$(1)),hg, \
$(if $(filter sftp://%,$(1)),bzr, \
unknown \
$(if $(filter git,$(2)),$(call dl_method_git,$(1),$(2)),
$(if $(2),$(2), \
$(if $(filter @APACHE/% @GITHUB/% @GNOME/% @GNU/% @KERNEL/% @SF/% @SAVANNAH/% ftp://% http://% https://% file://%,$(1)),default, \
$(if $(filter git://%,$(1)),$(call dl_method_git,$(1),$(2)), \
$(if $(filter svn://%,$(1)),svn, \
$(if $(filter cvs://%,$(1)),cvs, \
$(if $(filter hg://%,$(1)),hg, \
$(if $(filter sftp://%,$(1)),bzr, \
unknown \
) \
) \
) \
) \
@@ -49,13 +55,18 @@ define dl_pack
$(if $(dl_pack/$(call ext,$(1))),$(dl_pack/$(call ext,$(1))),$(dl_pack/unknown))
endef
define dl_tar_pack
$(TAR) --numeric-owner --owner=0 --group=0 --sort=name $$$${TAR_TIMESTAMP:+--mtime="$$$$TAR_TIMESTAMP"} -c $(2) | $(call dl_pack,$(1))
$(TAR) --numeric-owner --owner=0 --group=0 --mode=a-s --sort=name \
$$$${TAR_TIMESTAMP:+--mtime="$$$$TAR_TIMESTAMP"} -c $(2) | $(call dl_pack,$(1))
endef
ifdef CHECK
check_escape=$(subst ','\'',$(1))
#')
# $(1): suffix of the F_, C_ variables, e.g. hash_deprecated, hash_mismatch, etc.
# $(2): filename
# $(3): expected hash value
# $(4): var name of the the form: {PKG_,Download/<name>:}{,MIRROR_}{HASH,MIRROR_HASH}
check_warn_nofix = $(info $(shell printf "$(_R)WARNING: %s$(_N)" '$(call check_escape,$(call C_$(1),$(2),$(3),$(4)))'))
ifndef FIXUP
check_warn = $(check_warn_nofix)
@@ -71,11 +82,17 @@ F_hash_mismatch = $(F_hash_deprecated)
F_hash_missing = $(SCRIPT_DIR)/fixup-makefile.pl $(CURDIR)/Makefile add-hash $(3) $(call gen_sha256sum,$(1))
endif
# $(1): filename
# $(2): expected hash value
# $(3): var name of the the form: {PKG_,Download/<name>:}{,MIRROR_}{HASH,MIRROR_HASH}
C_download_missing = $(1) is missing, please run make download before re-running this check
C_hash_mismatch = $(3) does not match $(1) hash $(call gen_sha256sum,$(1))
C_hash_deprecated = $(3) uses deprecated hash, set to $(call gen_sha256sum,$(1))
C_hash_missing = $(3) is missing, set to $(call gen_sha256sum,$(1))
# $(1): filename
# $(2): expected hash value
# $(3): var name of the the form: {PKG_,Download/<name>:}{,MIRROR_}{HASH,MIRROR_HASH}
check_hash = \
$(if $(wildcard $(DL_DIR)/$(1)), \
$(if $(filter-out x,$(2)), \
@@ -116,6 +133,9 @@ define DownloadMethod/default
)
endef
# $(1): "check"
# $(2): "PKG_" if <name> as in Download/<name> is "default", otherwise "Download/<name>:"
# $(3): shell command sequence to do the download
define wrap_mirror
$(if $(if $(MIRROR),$(filter-out x,$(MIRROR_HASH))),$(SCRIPT_DIR)/download.pl "$(DL_DIR)" "$(FILE)" "$(MIRROR_HASH)" "" || ( $(3) ),$(3)) \
$(if $(filter check,$(1)), \
@@ -159,23 +179,41 @@ endef
define DownloadMethod/git
$(call wrap_mirror,$(1),$(2), \
echo "Checking out files from the git repository..."; \
mkdir -p $(TMP_DIR)/dl && \
cd $(TMP_DIR)/dl && \
rm -rf $(SUBDIR) && \
[ \! -d $(SUBDIR) ] && \
git clone $(OPTS) $(URL) $(SUBDIR) && \
(cd $(SUBDIR) && git checkout $(VERSION) && \
git submodule update --init --recursive) && \
echo "Packing checkout..." && \
export TAR_TIMESTAMP=`cd $(SUBDIR) && git log -1 --format='@%ct'` && \
rm -rf $(SUBDIR)/.git && \
$(call dl_tar_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
rm -rf $(SUBDIR); \
$(call DownloadMethod/rawgit) \
)
endef
define DownloadMethod/github_archive
$(call wrap_mirror,$(1),$(2), \
$(SCRIPT_DIR)/dl_github_archive.py \
--dl-dir="$(DL_DIR)" \
--url="$(URL)" \
--version="$(VERSION)" \
--subdir="$(SUBDIR)" \
--source="$(FILE)" \
--hash="$(MIRROR_HASH)" \
|| ( $(call DownloadMethod/rawgit) ); \
)
endef
# Only intends to be called as a submethod from other DownloadMethod
define DownloadMethod/rawgit
echo "Checking out files from the git repository..."; \
mkdir -p $(TMP_DIR)/dl && \
cd $(TMP_DIR)/dl && \
rm -rf $(SUBDIR) && \
[ \! -d $(SUBDIR) ] && \
git clone $(OPTS) $(URL) $(SUBDIR) && \
(cd $(SUBDIR) && git checkout $(VERSION) && \
git submodule update --init --recursive) && \
echo "Packing checkout..." && \
export TAR_TIMESTAMP=`cd $(SUBDIR) && git log -1 --format='@%ct'` && \
rm -rf $(SUBDIR)/.git && \
$(call dl_tar_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
rm -rf $(SUBDIR);
endef
define DownloadMethod/bzr
$(call wrap_mirror,$(1),$(2), \
echo "Checking out files from the bzr repository..."; \
@@ -251,6 +289,7 @@ endef
define Download/default
FILE:=$(PKG_SOURCE)
URL:=$(PKG_SOURCE_URL)
URL_FILE:=$(PKG_SOURCE_URL_FILE)
SUBDIR:=$(PKG_SOURCE_SUBDIR)
PROTO:=$(PKG_SOURCE_PROTO)
$(if $(PKG_SOURCE_MIRROR),MIRROR:=$(filter 1,$(PKG_MIRROR)))

View File

@@ -6,35 +6,21 @@
# See /LICENSE for more information.
#
-include $(TMP_DIR)/.packagesubdirs
-include $(TMP_DIR)/.packageauxvars
FEEDS_INSTALLED:=$(notdir $(wildcard $(TOPDIR)/package/feeds/*))
FEEDS_AVAILABLE:=$(sort $(FEEDS_INSTALLED) $(shell $(SCRIPT_DIR)/feeds list -n))
FEEDS_ENABLED:=$(foreach feed,$(FEEDS_AVAILABLE),$(if $(CONFIG_FEED_$(feed)),$(feed)))
FEEDS_DISABLED:=$(filter-out $(FEEDS_ENABLED),$(FEEDS_AVAILABLE))
FEEDS_AVAILABLE:=$(sort $(FEEDS_INSTALLED) $(shell $(SCRIPT_DIR)/feeds list -n 2>/dev/null))
PACKAGE_SUBDIRS=$(PACKAGE_DIR)
ifneq ($(CONFIG_PER_FEED_REPO),)
PACKAGE_SUBDIRS += $(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/base
ifneq ($(CONFIG_PER_FEED_REPO_ADD_DISABLED),)
PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_AVAILABLE),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
else
PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_ENABLED),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
endif
PACKAGE_SUBDIRS += $(foreach FEED,$(FEEDS_AVAILABLE),$(OUTPUT_DIR)/packages/$(ARCH_PACKAGES)/$(FEED))
endif
PACKAGE_DIR_ALL := $(TOPDIR)/staging_dir/packages/$(BOARD)
opkg_package_files = $(wildcard \
$(foreach dir,$(PACKAGE_SUBDIRS), \
$(foreach pkg,$(1), $(dir)/$(pkg)_*.ipk)))
PKG_CONFIG_DEPENDS += \
CONFIG_PER_FEED_REPO \
CONFIG_PER_FEED_REPO_ADD_DISABLED \
CONFIG_PER_FEED_REPO_ADD_COMMENTED \
$(foreach feed,$(FEEDS_INSTALLED),CONFIG_FEED_$(feed))
# 1: package name
define FeedPackageDir
$(strip $(if $(CONFIG_PER_FEED_REPO), \
@@ -47,10 +33,16 @@ endef
# 1: destination file
define FeedSourcesAppend
( \
echo "src/gz %n_core %U/targets/%S/packages"; \
echo 'src/gz %d_core %U/targets/%S/packages'; \
$(strip $(if $(CONFIG_PER_FEED_REPO), \
$(foreach feed,base $(FEEDS_ENABLED),echo "src/gz %n_$(feed) %U/packages/%A/$(feed)";) \
$(if $(CONFIG_PER_FEED_REPO_ADD_DISABLED), \
$(foreach feed,$(FEEDS_DISABLED),echo "$(if $(CONFIG_PER_FEED_REPO_ADD_COMMENTED),# )src/gz %n_$(feed) %U/packages/%A/$(feed)";)))) \
echo 'src/gz %d_base %U/packages/%A/base'; \
$(foreach feed,$(FEEDS_AVAILABLE), \
$(if $(CONFIG_FEED_$(feed)), \
echo '$(if $(filter m,$(CONFIG_FEED_$(feed))),# )src/gz %d_$(feed) %U/packages/%A/$(feed)';)))) \
) >> $(1)
endef
# 1: package name
define GetABISuffix
$(if $(filter-out kmod-%,$(1)),$(if $(Package/$(1)/abiversion),$(if $(filter %0 %1 %2 %3 %4 %5 %6 %7 %8 %9,$(1)),-)$(Package/$(1)/abiversion)))
endef

View File

@@ -0,0 +1,2 @@
*self_spec:
+ %{no-pie|static|r|shared:;:-pie}

View File

@@ -6,6 +6,7 @@
#
PKG_CHECK_FORMAT_SECURITY ?= 1
PKG_ASLR_PIE ?= 1
PKG_SSP ?= 1
PKG_FORTIFY_SOURCE ?= 1
PKG_RELRO ?= 1
@@ -15,6 +16,12 @@ ifdef CONFIG_PKG_CHECK_FORMAT_SECURITY
TARGET_CFLAGS += -Wformat -Werror=format-security
endif
endif
ifdef CONFIG_PKG_ASLR_PIE
ifeq ($(strip $(PKG_ASLR_PIE)),1)
TARGET_CFLAGS += $(FPIC)
TARGET_LDFLAGS += $(FPIC) -specs=$(INCLUDE_DIR)/hardened-ld-pie.specs
endif
endif
ifdef CONFIG_PKG_CC_STACKPROTECTOR_REGULAR
ifeq ($(strip $(PKG_SSP)),1)
TARGET_CFLAGS += -fstack-protector

View File

@@ -19,22 +19,23 @@ else
HOST_JOBS?=$(if $(HOST_BUILD_PARALLEL),$(HOST_MAKE_J),-j1)
endif
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/unpack.mk
include $(INCLUDE_DIR)/depends.mk
include $(INCLUDE_DIR)/quilt.mk
BUILD_TYPES += host
HOST_STAMP_PREPARED=$(HOST_BUILD_DIR)/.prepared$(if $(HOST_QUILT)$(DUMP),,$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),)))
HOST_STAMP_PREPARED=$(HOST_BUILD_DIR)/.prepared$(if $(HOST_QUILT)$(DUMP),,$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))_$(call confvar,CONFIG_AUTOREMOVE $(HOST_PREPARED_DEPENDS)))
HOST_STAMP_CONFIGURED:=$(HOST_BUILD_DIR)/.configured
HOST_STAMP_BUILT:=$(HOST_BUILD_DIR)/.built
HOST_BUILD_PREFIX:=$(if $(IS_PACKAGE_BUILD),$(STAGING_DIR_HOSTPKG),$(STAGING_DIR_HOST))
HOST_BUILD_PREFIX?=$(if $(IS_PACKAGE_BUILD),$(STAGING_DIR_HOSTPKG),$(STAGING_DIR_HOST))
HOST_STAMP_INSTALLED:=$(HOST_BUILD_PREFIX)/stamp/.$(PKG_NAME)_installed
override MAKEFLAGS=
include $(INCLUDE_DIR)/autotools.mk
_host_target:=$(if $(HOST_QUILT),,.)
Host/Patch:=$(Host/Patch/Default)
ifneq ($(strip $(HOST_UNPACK)),)
define Host/Prepare/Default
@@ -51,6 +52,7 @@ endef
HOST_CONFIGURE_VARS = \
CC="$(HOSTCC)" \
CFLAGS="$(HOST_CFLAGS)" \
CXX="$(HOSTCXX)" \
CPPFLAGS="$(HOST_CPPFLAGS)" \
LDFLAGS="$(HOST_LDFLAGS)" \
CONFIG_SHELL="$(SHELL)"
@@ -126,11 +128,11 @@ ifneq ($(if $(HOST_QUILT),,$(CONFIG_AUTOREBUILD)),)
endif
define Host/Exports/Default
$(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR_HOST)/share/aclocal $$(STAGING_DIR_HOST)/share/aclocal-* $(if $(IS_PACKAGE_BUILD),$$(STAGING_DIR)/host/share/aclocal $$(STAGING_DIR)/host/share/aclocal-*)),-I $$(p))
$(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR_HOST)/share/aclocal $$(STAGING_DIR_HOST)/share/aclocal-* $(if $(IS_PACKAGE_BUILD),$$(STAGING_DIR)/host/share/aclocal $$(STAGING_DIR_HOSTPKG)/share/aclocal $$(STAGING_DIR)/host/share/aclocal-*)),-I $$(p))
$(1) : export STAGING_PREFIX=$$(HOST_BUILD_PREFIX)
$(1) : export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig:$$(HOST_BUILD_PREFIX)/lib/pkgconfig
$(1) : export PKG_CONFIG_LIBDIR=$$(HOST_BUILD_PREFIX)/lib/pkgconfig
$(1) : export CCACHE_DIR:=$(STAGING_DIR_HOST)/ccache
$(if $(CONFIG_CCACHE),$(1) : export CCACHE_DIR:=$(STAGING_DIR_HOST)/ccache)
$(if $(HOST_CONFIG_SITE),$(1) : export CONFIG_SITE:=$(HOST_CONFIG_SITE))
$(if $(IS_PACKAGE_BUILD),$(1) : export PATH=$$(TARGET_PATH_PKG))
endef
@@ -173,32 +175,36 @@ ifndef DUMP
touch $(HOST_STAMP_BUILT)
touch $$@
$(call DefaultTargets,$(patsubst %,host-%,$(DEFAULT_SUBDIR_TARGETS)))
ifndef STAMP_BUILT
prepare: host-prepare
compile: host-compile
install: host-install
clean: host-clean
update: host-update
refresh: host-refresh
$(foreach t,$(DEFAULT_SUBDIR_TARGETS),
$(t): host-$(t)
.$(t): .host-$(t)
)
clean-build: host-clean-build
endif
host-prepare: $(HOST_STAMP_PREPARED)
host-configure: $(HOST_STAMP_CONFIGURED)
host-compile: $(HOST_STAMP_BUILT) $(if $(STAMP_BUILT),$(HOST_STAMP_INSTALLED))
host-install: $(HOST_STAMP_INSTALLED)
host-clean: FORCE
$(DL_DIR)/$(FILE): FORCE
$(_host_target)host-prepare: $(HOST_STAMP_PREPARED)
$(_host_target)host-configure: $(HOST_STAMP_CONFIGURED)
$(_host_target)host-compile: $(HOST_STAMP_BUILT) $(HOST_STAMP_INSTALLED)
host-install: host-compile
host-clean-build: FORCE
rm -rf $(HOST_BUILD_DIR) $(HOST_STAMP_BUILT)
host-clean: host-clean-build
$(call Host/Clean)
$(call Host/Uninstall)
rm -rf $(HOST_BUILD_DIR) $(HOST_STAMP_INSTALLED) $(HOST_STAMP_BUILT)
rm -rf $(HOST_STAMP_INSTALLED)
ifneq ($(CONFIG_AUTOREMOVE),)
host-compile:
$(FIND) $(HOST_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' | \
$(XARGS) rm -rf
endif
endef
download:
prepare:
compile:
install:
clean:
endif
define HostBuild

View File

@@ -1,46 +0,0 @@
#
# Copyright (C) 2007-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
TMP_DIR ?= $(TOPDIR)/tmp
ifeq ($(if $(TARGET_BUILD),,$(DUMP)),)
-include $(TMP_DIR)/.host.mk
endif
ifneq ($(__host_inc),1)
__host_inc:=1
export PATH:=$(TOPDIR)/staging_dir/host/bin:$(PATH)
try-run = $(shell set -e; \
TMP_F="$(TMP_DIR)/try-run.$$$$.tmp"; \
if ($(1)) >/dev/null 2>&1; then echo "$(2)"; else echo "$(3)"; fi; \
rm -f "$$TMP_F"; \
)
host-cc-option = $(call try-run, \
$(HOSTCC) $(HOST_CFLAGS) $(1) -c -xc /dev/null -o "$$TMP_F",$(1),$(2) \
)
.PRECIOUS: $(TMP_DIR)/.host.mk
$(TMP_DIR)/.host.mk: $(TOPDIR)/include/host.mk
@mkdir -p $(TMP_DIR)
@( \
HOST_OS=`uname`; \
case "$$HOST_OS" in \
Linux) HOST_ARCH=`uname -m`;; \
Darwin) HOST_ARCH=`uname -m`;; \
*) HOST_ARCH=`uname -p`;; \
esac; \
GNU_HOST_NAME=`gcc -dumpmachine`; \
[ -z "$$GNU_HOST_NAME" -o "$$HOST_OS" = "Darwin" ] && \
GNU_HOST_NAME=`$(TOPDIR)/scripts/config.guess`; \
echo "HOST_OS:=$$HOST_OS" > $@; \
echo "HOST_ARCH:=$$HOST_ARCH" >> $@; \
echo "GNU_HOST_NAME:=$$GNU_HOST_NAME" >> $@; \
) >/dev/null 2>/dev/null
endif

View File

@@ -7,31 +7,121 @@ define Build/uImage
mkimage -A $(LINUX_KARCH) \
-O linux -T kernel \
-C $(1) -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-n '$(if $(UIMAGE_NAME),$(UIMAGE_NAME),$(call toupper,$(LINUX_KARCH)) LEDE Linux-$(LINUX_VERSION))' -d $@ $@.new
-n '$(if $(UIMAGE_NAME),$(UIMAGE_NAME),$(call toupper,$(LINUX_KARCH)) $(VERSION_DIST) Linux-$(LINUX_VERSION))' -d $@ $@.new
mv $@.new $@
endef
define Build/buffalo-enc
$(eval product=$(word 1,$(1)))
$(eval version=$(word 2,$(1)))
$(eval args=$(wordlist 3,$(words $(1)),$(1)))
$(STAGING_DIR_HOST)/bin/buffalo-enc \
-p $(product) -v $(version) $(args) \
-i $@ -o $@.new
mv $@.new $@
endef
define Build/buffalo-enc-tag
$(call Build/buffalo-enc,'' '' -S 152 $(1))
endef
define Build/buffalo-tag-dhp
$(eval product=$(word 1,$(1)))
$(eval region=$(word 2,$(1)))
$(eval language=$(word 3,$(1)))
$(STAGING_DIR_HOST)/bin/buffalo-tag \
-d 0x01000000 -w 1 \
-a $(BUFFALO_TAG_PLATFORM) \
-v $(BUFFALO_TAG_VERSION) -m $(BUFFALO_TAG_MINOR) \
-b $(product) -p $(product) \
-r $(region) -r $(region) -l $(language) \
-I $@ -o $@.new
mv $@.new $@
endef
define Build/buffalo-dhp-image
$(STAGING_DIR_HOST)/bin/mkdhpimg $@ $@.new
mv $@.new $@
endef
define Build/eva-image
$(STAGING_DIR_HOST)/bin/lzma2eva $(KERNEL_LOADADDR) $(KERNEL_LOADADDR) $@ $@.new
mv $@.new $@
endef
define Build/seama
$(STAGING_DIR_HOST)/bin/seama -i $@ \
-m "dev=/dev/mtdblock/$(SEAMA_MTDBLOCK)" -m "type=firmware"
mv $@.seama $@
endef
define Build/seama-seal
$(STAGING_DIR_HOST)/bin/seama -i $@ -s $@.seama \
-m "signature=$(SEAMA_SIGNATURE)"
mv $@.seama $@
endef
define Build/zyxel-ras-image
let \
newsize="$(subst k,* 1024,$(RAS_ROOTFS_SIZE))"; \
$(STAGING_DIR_HOST)/bin/mkrasimage \
-b $(RAS_BOARD) \
-v $(RAS_VERSION) \
-r $@ \
-s $$newsize \
-o $@.new \
$(if $(findstring separate-kernel,$(word 1,$(1))),-k $(IMAGE_KERNEL)) \
&& mv $@.new $@
endef
define Build/netgear-chk
$(STAGING_DIR_HOST)/bin/mkchkimg \
-o $@.new \
-k $@ \
-b $(NETGEAR_BOARD_ID) \
-r $(NETGEAR_REGION)
$(if $(NETGEAR_REGION),-r $(NETGEAR_REGION),)
mv $@.new $@
endef
define Build/netgear-dni
$(STAGING_DIR_HOST)/bin/mkdniimg \
-B $(NETGEAR_BOARD_ID) -v LEDE.$(REVISION) \
-B $(NETGEAR_BOARD_ID) -v $(VERSION_DIST).$(firstword $(subst -, ,$(REVISION))) \
$(if $(NETGEAR_HW_ID),-H $(NETGEAR_HW_ID)) \
-r "$(1)" \
-i $@ -o $@.new
mv $@.new $@
endef
define Build/append-squashfs-fakeroot-be
rm -rf $@.fakefs $@.fakesquashfs
mkdir $@.fakefs
$(STAGING_DIR_HOST)/bin/mksquashfs-lzma \
$@.fakefs $@.fakesquashfs \
-noappend -root-owned -be -nopad -b 65536 \
$(if $(SOURCE_DATE_EPOCH),-fixed-time $(SOURCE_DATE_EPOCH))
cat $@.fakesquashfs >> $@
endef
define Build/append-string
echo -n $(1) >> $@
endef
# append a fake/empty uImage header, to fool bootloaders rootfs integrity check
# for example
define Build/append-uImage-fakehdr
touch $@.fakehdr
$(STAGING_DIR_HOST)/bin/mkimage \
-A $(LINUX_KARCH) -O linux -T $(1) -C none \
-n '$(VERSION_DIST) fake $(1)' \
-d $@.fakehdr \
-s \
$@.fakehdr
cat $@.fakehdr >> $@
endef
define Build/tplink-safeloader
-$(STAGING_DIR_HOST)/bin/tplink-safeloader \
-B $(TPLINK_BOARD_NAME) \
-$(STAGING_DIR_HOST)/bin/tplink-safeloader \
-B $(TPLINK_BOARD_ID) \
-V $(REVISION) \
-k $(IMAGE_KERNEL) \
-r $@ \
@@ -42,8 +132,7 @@ define Build/tplink-safeloader
endef
define Build/append-dtb
$(call Image/BuildDTB,$(if $(DEVICE_DTS_DIR),$(DEVICE_DTS_DIR),$(DTS_DIR))/$(DEVICE_DTS).dts,$@.dtb)
cat $@.dtb >> $@
cat $(KDIR)/image-$(firstword $(DEVICE_DTS)).dtb >> $@
endef
define Build/install-dtb
@@ -59,6 +148,7 @@ define Build/fit
-D $(DEVICE_NAME) -o $@.its -k $@ \
$(if $(word 2,$(1)),-d $(word 2,$(1))) -C $(word 1,$(1)) \
-a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config@1") \
-A $(LINUX_KARCH) -v $(LINUX_VERSION)
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
@mv $@.new $@
@@ -74,10 +164,20 @@ define Build/lzma-no-dict
endef
define Build/gzip
gzip -9n -c $@ $(1) > $@.new
gzip -f -9n -c $@ $(1) > $@.new
@mv $@.new $@
endef
define Build/zip
mkdir $@.tmp
mv $@ $@.tmp/$(1)
zip -j -X \
$(if $(SOURCE_DATE_EPOCH),--mtime="$(SOURCE_DATE_EPOCH)") \
$@ $@.tmp/$(if $(1),$(1),$@)
rm -rf $@.tmp
endef
define Build/jffs2
rm -rf $(KDIR_TMP)/$(DEVICE_NAME)/jffs2 && \
mkdir -p $(KDIR_TMP)/$(DEVICE_NAME)/jffs2/$$(dirname $(1)) && \
@@ -125,6 +225,10 @@ define Build/append-ubi
rm $@.tmp
endef
define Build/append-uboot
dd if=$(UBOOT_PATH) >> $@
endef
define Build/pad-to
dd if=$@ of=$@.new bs=$(1) conv=sync
mv $@.new $@
@@ -150,6 +254,11 @@ define Build/pad-offset
mv $@.new $@
endef
define Build/xor-image
$(STAGING_DIR_HOST)/bin/xorimage -i $@ -o $@.xor $(1)
mv $@.xor $@
endef
define Build/check-size
@[ $$(($(subst k,* 1024,$(subst m, * 1024k,$(1))))) -ge "$$(stat -c%s $@)" ] || { \
echo "WARNING: Image file $@ is too big" >&2; \
@@ -165,6 +274,45 @@ define Build/combined-image
@mv $@.new $@
endef
define Build/linksys-image
$(TOPDIR)/scripts/linksys-image.sh \
"$(call param_get_default,type,$(1),$(DEVICE_NAME))" \
$@ $@.new
mv $@.new $@
endef
define Build/openmesh-image
$(TOPDIR)/scripts/om-fwupgradecfg-gen.sh \
"$(call param_get_default,ce_type,$(1),$(DEVICE_NAME))" \
"$@-fwupgrade.cfg" \
"$(call param_get_default,kernel,$(1),$(IMAGE_KERNEL))" \
"$(call param_get_default,rootfs,$(1),$@)"
$(TOPDIR)/scripts/combined-ext-image.sh \
"$(call param_get_default,ce_type,$(1),$(DEVICE_NAME))" "$@" \
"$@-fwupgrade.cfg" "fwupgrade.cfg" \
"$(call param_get_default,kernel,$(1),$(IMAGE_KERNEL))" "kernel" \
"$(call param_get_default,rootfs,$(1),$@)" "rootfs"
endef
define Build/qsdk-ipq-factory-nand
$(TOPDIR)/scripts/mkits-qsdk-ipq-image.sh \
$@.its ubi $@
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
@mv $@.new $@
endef
define Build/qsdk-ipq-factory-nor
$(TOPDIR)/scripts/mkits-qsdk-ipq-image.sh \
$@.its hlos $(IMAGE_KERNEL) rootfs $(IMAGE_ROOTFS)
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
@mv $@.new $@
endef
define Build/senao-header
$(STAGING_DIR_HOST)/bin/mksenaofw $(1) -e $@ -o $@.new
mv $@.new $@
endef
define Build/sysupgrade-tar
sh $(TOPDIR)/scripts/sysupgrade-tar.sh \
--board $(if $(BOARD_NAME),$(BOARD_NAME),$(DEVICE_NAME)) \
@@ -173,22 +321,59 @@ define Build/sysupgrade-tar
$@
endef
define Build/tplink-v1-header
$(STAGING_DIR_HOST)/bin/mktplinkfw \
-c -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -L $(KERNEL_LOADADDR) \
-E $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-m $(TPLINK_HEADER_VERSION) -N "$(VERSION_DIST)" -V $(REVISION) \
-k $@ -o $@.new $(1)
@mv $@.new $@
endef
define Build/tplink-v2-header
$(STAGING_DIR_HOST)/bin/mktplinkfw2 \
-c -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -L $(KERNEL_LOADADDR) \
-E $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
-w $(TPLINK_HWREVADD) -F "$(TPLINK_FLASHLAYOUT)" \
-T $(TPLINK_HVERSION) -V "ver. 2.0" \
-k $@ -o $@.new $(1)
@mv $@.new $@
endef
define Build/tplink-v2-image
$(STAGING_DIR_HOST)/bin/mktplinkfw2 \
-H $(TPLINK_HWID) -W $(TPLINK_HWREV) \
-w $(TPLINK_HWREVADD) -F "$(TPLINK_FLASHLAYOUT)" \
-T $(TPLINK_HVERSION) -V "ver. 2.0" -a 0x4 -j \
-k $(IMAGE_KERNEL) -r $(IMAGE_ROOTFS) -o $@.new $(1)
cat $@.new >> $@
rm -rf $@.new
endef
json_quote=$(subst ','\'',$(subst ",\",$(1)))
#")')
metadata_devices=$(if $(1),$(subst "$(space)","$(comma)",$(strip $(foreach v,$(1),"$(call json_quote,$(v))"))))
metadata_json = \
'{ $(if $(IMAGE_METADATA),$(IMAGE_METADATA)$(comma)) \
"metadata_version": "1.0", \
"supported_devices":[$(call metadata_devices,$(1))], \
"version": { \
"dist": "$(call json_quote,$(VERSION_DIST))", \
"version": "$(call json_quote,$(VERSION_NUMBER))", \
"revision": "$(call json_quote,$(REVISION))", \
"board": "$(call json_quote,$(BOARD))" \
"target": "$(call json_quote,$(TARGETID))", \
"board": "$(call json_quote,$(if $(BOARD_NAME),$(BOARD_NAME),$(DEVICE_NAME)))" \
} \
}'
define Build/append-metadata
$(if $(SUPPORTED_DEVICES),echo $(call metadata_json,$(SUPPORTED_DEVICES)) | fwtool -I - $@)
$(if $(SUPPORTED_DEVICES),-echo $(call metadata_json,$(SUPPORTED_DEVICES)) | fwtool -I - $@)
[ ! -s "$(BUILD_KEY)" -o ! -s "$(BUILD_KEY).ucert" -o ! -s "$@" ] || { \
cp "$(BUILD_KEY).ucert" "$@.ucert" ;\
usign -S -m "$@" -s "$(BUILD_KEY)" -x "$@.sig" ;\
ucert -A -c "$@.ucert" -x "$@.sig" ;\
fwtool -S "$@.ucert" "$@" ;\
}
endef
define Build/kernel2minor

View File

@@ -8,7 +8,6 @@
override TARGET_BUILD=
include $(INCLUDE_DIR)/prereq.mk
include $(INCLUDE_DIR)/kernel.mk
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/version.mk
include $(INCLUDE_DIR)/image-commands.mk
@@ -19,10 +18,8 @@ ifndef IB
endif
include $(INCLUDE_DIR)/image-legacy.mk
ifdef TARGET_PER_DEVICE_ROOTFS
include $(INCLUDE_DIR)/rootfs.mk
endif
include $(INCLUDE_DIR)/feeds.mk
include $(INCLUDE_DIR)/rootfs.mk
override MAKE:=$(_SINGLE)$(SUBMAKE)
override NO_TRACE_MAKE:=$(_SINGLE)$(NO_TRACE_MAKE)
@@ -137,12 +134,13 @@ endef
define Image/BuildKernel/MkuImage
mkimage -A $(ARCH) -O linux -T kernel -C $(1) -a $(2) -e $(3) \
-n '$(call toupper,$(ARCH)) LEDE Linux-$(LINUX_VERSION)' -d $(4) $(5)
-n '$(call toupper,$(ARCH)) $(VERSION_DIST) Linux-$(LINUX_VERSION)' -d $(4) $(5)
endef
define Image/BuildKernel/MkFIT
$(TOPDIR)/scripts/mkits.sh \
-D $(1) -o $(KDIR)/fit-$(1).its -k $(2) $(if $(3),-d $(3)) -C $(4) -a $(5) -e $(6) \
-c $(if $(DEVICE_DTS_CONFIG),$(DEVICE_DTS_CONFIG),"config@1") \
-A $(LINUX_KARCH) -v $(LINUX_VERSION)
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $(KDIR)/fit-$(1).its $(KDIR)/fit-$(1)$(7).itb
endef
@@ -154,6 +152,32 @@ ifdef CONFIG_TARGET_IMAGES_GZIP
endef
endif
# Disable noisy checks by default as in upstream
ifeq ($(strip $(call kernel_patchver_ge,4.7.0)),1)
DTC_FLAGS += -Wno-unit_address_vs_reg
endif
ifeq ($(strip $(call kernel_patchver_ge,4.12.0)),1)
DTC_FLAGS += \
-Wno-unit_address_vs_reg \
-Wno-simple_bus_reg \
-Wno-unit_address_format \
-Wno-pci_bridge \
-Wno-pci_device_bus_num \
-Wno-pci_device_reg
endif
ifeq ($(strip $(call kernel_patchver_ge,4.17.0)),1)
DTC_FLAGS += \
-Wno-avoid_unnecessary_addr_size \
-Wno-alias_paths
endif
ifeq ($(strip $(call kernel_patchver_ge,4.18.0)),1)
DTC_FLAGS += \
-Wno-graph_child_address \
-Wno-graph_port \
-Wno-unique_unit_address
endif
# $(1) source dts file
# $(2) target dtb file
# $(3) extra CPP flags
@@ -162,10 +186,11 @@ define Image/BuildDTB
$(TARGET_CROSS)cpp -nostdinc -x assembler-with-cpp \
-I$(DTS_DIR) \
-I$(DTS_DIR)/include \
-I$(LINUX_DIR)/include/ \
-undef -D__DTS__ $(3) \
-o $(2).tmp $(1)
$(LINUX_DIR)/scripts/dtc/dtc -O dtb \
-i$(dir $(1)) $(4) \
-i$(dir $(1)) $(DTC_FLAGS) $(4) \
-o $(2) $(2).tmp
$(RM) $(2).tmp
endef
@@ -204,21 +229,21 @@ define Image/mkfs/squashfs
$(STAGING_DIR_HOST)/bin/mksquashfs4 $(call mkfs_target_dir,$(1)) $@ \
-nopad -noappend -root-owned \
-comp $(SQUASHFSCOMP) $(SQUASHFSOPT) \
-processors 1 \
$(if $(SOURCE_DATE_EPOCH),-fixed-time $(SOURCE_DATE_EPOCH))
-processors 1
endef
# $(1): board name
# $(2): rootfs type
# $(3): kernel image
# $(4): compat string
ifneq ($(CONFIG_NAND_SUPPORT),)
define Image/Build/SysupgradeNAND
mkdir -p "$(KDIR_TMP)/sysupgrade-$(1)/"
echo "BOARD=$(1)" > "$(KDIR_TMP)/sysupgrade-$(1)/CONTROL"
[ -z "$(2)" ] || $(CP) "$(KDIR)/root.$(2)" "$(KDIR_TMP)/sysupgrade-$(1)/root"
[ -z "$(3)" ] || $(CP) "$(3)" "$(KDIR_TMP)/sysupgrade-$(1)/kernel"
mkdir -p "$(KDIR_TMP)/sysupgrade-$(if $(4),$(4),$(1))/"
echo "BOARD=$(if $(4),$(4),$(1))" > "$(KDIR_TMP)/sysupgrade-$(if $(4),$(4),$(1))/CONTROL"
[ -z "$(2)" ] || $(CP) "$(KDIR)/root.$(2)" "$(KDIR_TMP)/sysupgrade-$(if $(4),$(4),$(1))/root"
[ -z "$(3)" ] || $(CP) "$(3)" "$(KDIR_TMP)/sysupgrade-$(if $(4),$(4),$(1))/kernel"
(cd "$(KDIR_TMP)"; $(TAR) cvf \
"$(BIN_DIR)/$(IMG_PREFIX)-$(1)-$(2)-sysupgrade.tar" sysupgrade-$(1) \
"$(BIN_DIR)/$(IMG_PREFIX)-$(1)-$(2)-sysupgrade.tar" sysupgrade-$(if $(4),$(4),$(1)) \
$(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)") \
)
endef
@@ -260,16 +285,13 @@ define Image/mkfs/ext4
endef
define Image/Manifest
$(STAGING_DIR_HOST)/bin/opkg \
--offline-root $(TARGET_DIR) \
--add-arch all:100 \
--add-arch $(if $(ARCH_PACKAGES),$(ARCH_PACKAGES),$(BOARD)):200 list-installed > \
$(call opkg,$(TARGET_DIR_ORIG)) list-installed > \
$(BIN_DIR)/$(IMG_PREFIX)$(if $(PROFILE_SANITIZED),-$(PROFILE_SANITIZED)).manifest
endef
ifdef CONFIG_TARGET_ROOTFS_TARGZ
define Image/Build/targz
$(TAR) -cp --numeric-owner --owner=0 --group=0 --sort=name \
$(TAR) -cp --numeric-owner --owner=0 --group=0 --mode=a-s --sort=name \
$(if $(SOURCE_DATE_EPOCH),--mtime="@$(SOURCE_DATE_EPOCH)") \
-C $(TARGET_DIR)/ . | gzip -9n > $(BIN_DIR)/$(IMG_PREFIX)$(if $(PROFILE_SANITIZED),-$(PROFILE_SANITIZED))-rootfs.tar.gz
endef
@@ -282,8 +304,8 @@ ifdef CONFIG_TARGET_ROOTFS_CPIOGZ
endif
mkfs_packages = $(filter-out @%,$(PACKAGES_$(call param_get,pkg,pkg=$(target_params))))
mkfs_packages_add = $(filter-out -%,$(mkfs_packages))
mkfs_packages_remove = $(patsubst -%,%,$(filter -%,$(mkfs_packages)))
mkfs_packages_add = $(foreach pkg,$(filter-out -%,$(mkfs_packages)),$(pkg)$(call GetABISuffix,$(pkg)))
mkfs_packages_remove = $(foreach pkg,$(patsubst -%,%,$(filter -%,$(mkfs_packages))),$(pkg)$(call GetABISuffix,$(pkg)))
mkfs_cur_target_dir = $(call mkfs_target_dir,pkg=$(target_params))
opkg_target = \
@@ -304,7 +326,7 @@ target-dir-%: FORCE
$(call opkg_package_files,$(mkfs_packages_add)))
-$(CP) -T $(mkfs_cur_target_dir).opkg/ $(mkfs_cur_target_dir)/etc/opkg/
rm -rf $(mkfs_cur_target_dir).opkg $(mkfs_cur_target_dir).conf
$(call prepare_rootfs,$(mkfs_cur_target_dir))
$(call prepare_rootfs,$(mkfs_cur_target_dir),$(TOPDIR)/files)
$(KDIR)/root.%: kernel_prepare
$(call Image/mkfs/$(word 1,$(target_params)),$(target_params))
@@ -324,6 +346,7 @@ define Device/Init
CMDLINE:=
IMAGES :=
ARTIFACTS :=
IMAGE_PREFIX := $(IMG_PREFIX)-$(1)
IMAGE_NAME = $$(IMAGE_PREFIX)-$$(1)-$$(2)
KERNEL_PREFIX = $$(IMAGE_PREFIX)
@@ -351,6 +374,7 @@ define Device/Init
FS_OPTIONS/ubifs = $$(MKUBIFS_OPTS)
DEVICE_DTS :=
DEVICE_DTS_CONFIG :=
DEVICE_DTS_DIR :=
BOARD_NAME :=
@@ -359,15 +383,18 @@ define Device/Init
IMAGE_METADATA :=
FILESYSTEMS := $(TARGET_FILESYSTEMS)
UBOOT_PATH := $(STAGING_DIR_IMAGE)/uboot-$(1)
DEFAULT :=
endef
DEFAULT_DEVICE_VARS := \
DEVICE_NAME KERNEL KERNEL_INITRAMFS KERNEL_SIZE KERNEL_INITRAMFS_IMAGE \
DEVICE_DTS DEVICE_DTS_DIR BOARD_NAME CMDLINE \
UBOOTENV_IN_UBI KERNEL_IN_UBI \
BLOCKSIZE PAGESIZE SUBPAGESIZE VID_HDR_OFFSET \
UBINIZE_OPTS UIMAGE_NAME UBINIZE_PARTS \
SUPPORTED_DEVICES IMAGE_METADATA
DEVICE_NAME KERNEL KERNEL_INITRAMFS KERNEL_INITRAMFS_IMAGE KERNEL_SIZE \
CMDLINE UBOOTENV_IN_UBI KERNEL_IN_UBI BLOCKSIZE PAGESIZE SUBPAGESIZE \
VID_HDR_OFFSET UBINIZE_OPTS UBINIZE_PARTS MKUBIFS_OPTS DEVICE_DTS \
DEVICE_DTS_CONFIG DEVICE_DTS_DIR BOARD_NAME UIMAGE_NAME SUPPORTED_DEVICES \
IMAGE_METADATA KERNEL_ENTRY KERNEL_LOADADDR UBOOT_PATH
define Device/ExportVar
$(1) : $(2):=$$($(2))
@@ -395,6 +422,7 @@ endef
define Device/Check/Common
_PROFILE_SET = $$(strip $$(foreach profile,$$(PROFILES) DEVICE_$(1),$$(call DEVICE_CHECK_PROFILE,$$(profile))))
DEVICE_PACKAGES += $$(call extra_packages,$$(DEVICE_PACKAGES))
ifdef TARGET_PER_DEVICE_ROOTFS
$$(eval $$(call merge_packages,_PACKAGES,$$(DEVICE_PACKAGES) $$(call DEVICE_EXTRA_PACKAGES,$(1))))
ROOTFS_ID/$(1) := $$(if $$(_PROFILE_SET),$$(call mkfs_packages_id,$$(_PACKAGES)))
@@ -434,7 +462,27 @@ define Device/Build/compile
endef
ifndef IB
define Device/Build/dtb
ifndef BUILD_DTS_$(1)
BUILD_DTS_$(1) := 1
$(KDIR)/image-$(1).dtb: FORCE
$(call Image/BuildDTB,$(strip $(2))/$(strip $(3)).dts,$$@)
image_prepare: $(KDIR)/image-$(1).dtb
endif
endef
endif
define Device/Build/kernel
$$(eval $$(foreach dts,$$(DEVICE_DTS), \
$$(call Device/Build/dtb,$$(notdir $$(dts)), \
$$(if $$(DEVICE_DTS_DIR),$$(DEVICE_DTS_DIR),$$(DTS_DIR)), \
$$(dts) \
) \
))
$(KDIR)/$$(KERNEL_NAME):: image_prepare
$$(_TARGET): $$(if $$(KERNEL_INSTALL),$(BIN_DIR)/$$(KERNEL_IMAGE))
$(call Device/Export,$$(KDIR_KERNEL_IMAGE),$(1))
@@ -453,8 +501,11 @@ endef
define Device/Build/image
GZ_SUFFIX := $(if $(filter %dtb %gz,$(2)),,$(if $(and $(findstring ext4,$(1)),$(CONFIG_TARGET_IMAGES_GZIP)),.gz))
$$(_TARGET): $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2))$$(GZ_SUFFIX)
$$(_TARGET): $(if $(CONFIG_JSON_OVERVIEW_IMAGE_INFO), \
$(BUILD_DIR)/json_info_files/$(call IMAGE_NAME,$(1),$(2)).json, \
$(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2))$$(GZ_SUFFIX))
$(eval $(call Device/Export,$(KDIR)/tmp/$(call IMAGE_NAME,$(1),$(2)),$(1)))
ROOTFS/$(1)/$(3) := \
$(KDIR)/root.$(1)$$(strip \
$$(if $$(FS_OPTIONS/$(1)),+fs=$$(call param_mangle,$$(FS_OPTIONS/$(1)))) \
@@ -477,6 +528,36 @@ define Device/Build/image
$(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2)): $(KDIR)/tmp/$(call IMAGE_NAME,$(1),$(2))
cp $$^ $$@
$(BUILD_DIR)/json_info_files/$(call IMAGE_NAME,$(1),$(2)).json: $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2))$$(GZ_SUFFIX)
@mkdir -p $$(shell dirname $$@)
DEVICE_ID="$(DEVICE_NAME)" \
BIN_DIR="$(BIN_DIR)" \
IMAGE_NAME="$(IMAGE_NAME)" \
IMAGE_TYPE=$(word 1,$(subst ., ,$(2))) \
IMAGE_PREFIX="$(IMAGE_PREFIX)" \
DEVICE_TITLE="$(DEVICE_TITLE)" \
DEVICE_PACKAGES="$(DEVICE_PACKAGES)" \
TARGET="$(BOARD)" \
SUBTARGET="$(if $(SUBTARGET),$(SUBTARGET),generic)" \
VERSION_NUMBER="$(VERSION_NUMBER)" \
VERSION_CODE="$(VERSION_CODE)" \
SUPPORTED_DEVICES="$(SUPPORTED_DEVICES)" \
$(TOPDIR)/scripts/json_add_image_info.py $$@
endef
define Device/Build/artifact
$$(_TARGET): $(BIN_DIR)/$(IMAGE_PREFIX)-$(1)
$(eval $(call Device/Export,$(KDIR)/tmp/$(IMAGE_PREFIX)-$(1)))
$(KDIR)/tmp/$(IMAGE_PREFIX)-$(1): $$(KDIR_KERNEL_IMAGE)
@rm -f $$@
$$(call concat_cmd,$(ARTIFACT/$(1)))
.IGNORE: $(BIN_DIR)/$(IMAGE_PREFIX)-$(1)
$(BIN_DIR)/$(IMAGE_PREFIX)-$(1): $(KDIR)/tmp/$(IMAGE_PREFIX)-$(1)
cp $$^ $$@
endef
define Device/Build
@@ -489,12 +570,19 @@ define Device/Build
$$(eval $$(foreach image,$$(IMAGES), \
$$(foreach fs,$$(filter $(TARGET_FILESYSTEMS),$$(FILESYSTEMS)), \
$$(call Device/Build/image,$$(fs),$$(image),$(1)))))
$$(eval $$(foreach artifact,$$(ARTIFACTS), \
$$(call Device/Build/artifact,$$(artifact))))
endef
define Device/DumpInfo
Target-Profile: DEVICE_$(1)
Target-Profile-Name: $(DEVICE_TITLE)
Target-Profile-Packages: $(DEVICE_PACKAGES)
Target-Profile-hasImageMetadata: $(if $(foreach image,$(IMAGES),$(findstring append-metadata,$(IMAGE/$(image)))),1,0)
Target-Profile-SupportedDevices: $(SUPPORTED_DEVICES)
$(if $(DEFAULT),Target-Profile-Default: $(DEFAULT))
Target-Profile-Description:
$(DEVICE_DESCRIPTION)
@@
@@ -541,10 +629,11 @@ define BuildImage
image_prepare: compile
mkdir -p $(BIN_DIR) $(KDIR)/tmp
rm -rf $(BUILD_DIR)/json_info_files
$(call Image/Prepare)
legacy-images-prepare-make: image_prepare
$(MAKE) legacy-images-prepare
$(MAKE) legacy-images-prepare BIN_DIR="$(BIN_DIR)"
else
image_prepare:
@@ -568,7 +657,7 @@ define BuildImage
legacy-images-make: install-images
$(call Image/mkfs/ubifs/legacy)
$(MAKE) legacy-images
$(MAKE) legacy-images BIN_DIR="$(BIN_DIR)"
install: install-images
$(call Image/Manifest)

View File

@@ -4,7 +4,6 @@
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/prereq.mk
include $(INCLUDE_DIR)/depends.mk
@@ -12,7 +11,7 @@ ifneq ($(DUMP),1)
all: compile
endif
KERNEL_FILE_DEPENDS=$(GENERIC_PATCH_DIR) $(PATCH_DIR) $(GENERIC_FILES_DIR) $(FILES_DIR)
KERNEL_FILE_DEPENDS=$(GENERIC_BACKPORT_DIR) $(GENERIC_PATCH_DIR) $(GENERIC_HACK_DIR) $(PATCH_DIR) $(GENERIC_FILES_DIR) $(FILES_DIR)
STAMP_PREPARED=$(LINUX_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,$(KERNEL_FILE_DEPENDS),)))
STAMP_CONFIGURED:=$(LINUX_DIR)/.configured
include $(INCLUDE_DIR)/download.mk
@@ -51,14 +50,10 @@ ifneq ($(strip $(CONFIG_KERNEL_GIT_LOCAL_REPOSITORY)),"")
KERNEL_GIT_OPTS+=--reference $(CONFIG_KERNEL_GIT_LOCAL_REPOSITORY)
endif
ifneq ($(strip $(CONFIG_KERNEL_GIT_BRANCH)),"")
KERNEL_GIT_OPTS+=--branch $(CONFIG_KERNEL_GIT_BRANCH)
endif
define Download/git-kernel
URL:=$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI))
PROTO:=git
VERSION:=$(CONFIG_KERNEL_GIT_BRANCH)
VERSION:=$(CONFIG_KERNEL_GIT_REF)
FILE:=$(LINUX_SOURCE)
SUBDIR:=linux-$(LINUX_VERSION)
OPTS:=$(KERNEL_GIT_OPTS)
@@ -105,7 +100,7 @@ define BuildKernel
$(KERNEL_BUILD_DIR)/symtab.h: FORCE
rm -f $(KERNEL_BUILD_DIR)/symtab.h
touch $(KERNEL_BUILD_DIR)/symtab.h
+$(MAKE) $(KERNEL_MAKEOPTS) vmlinux
+$(KERNEL_MAKE) vmlinux
find $(LINUX_DIR) $(STAGING_DIR_ROOT)/lib/modules -name \*.ko | \
xargs $(TARGET_CROSS)nm | \
awk '$$$$1 == "U" { print $$$$2 } ' | \
@@ -136,10 +131,16 @@ define BuildKernel
$(Kernel/Configure)
touch $$@
$(LINUX_DIR)/.modules: export STAGING_PREFIX=$$(STAGING_DIR_HOST)
$(LINUX_DIR)/.modules: export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig
$(LINUX_DIR)/.modules: export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
$(LINUX_DIR)/.modules: $(STAMP_CONFIGURED) $(LINUX_DIR)/.config FORCE
$(Kernel/CompileModules)
touch $$@
$(LINUX_DIR)/.image: export STAGING_PREFIX=$$(STAGING_DIR_HOST)
$(LINUX_DIR)/.image: export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig
$(LINUX_DIR)/.image: export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
$(LINUX_DIR)/.image: $(STAMP_CONFIGURED) $(if $(CONFIG_STRIP_KERNEL_EXPORTS),$(KERNEL_BUILD_DIR)/symtab.h) FORCE
$(Kernel/CompileImage)
$(Kernel/CollectDebug)
@@ -160,7 +161,9 @@ define BuildKernel
rm -f $(LINUX_DIR)/.config.prev
rm -f $(STAMP_CONFIGURED)
$(LINUX_RECONF_CMD) > $(LINUX_DIR)/.config
$(_SINGLE)$(MAKE) -C $(LINUX_DIR) $(KERNEL_MAKEOPTS) HOST_LOADLIBES="-L$(STAGING_DIR_HOST)/lib -lncurses" $$@
$(_SINGLE)$(KERNEL_MAKE) \
$(if $(findstring Darwin,$(HOST_OS)),HOST_LOADLIBES="-L$(STAGING_DIR_HOST)/lib -lncurses") \
$$@
$(LINUX_RECONF_DIFF) $(LINUX_DIR)/.config > $(LINUX_RECONFIG_TARGET)
install: $(LINUX_DIR)/.image

View File

@@ -5,26 +5,6 @@
# See /LICENSE for more information.
#
ifneq ($(SOURCE_DATE_EPOCH),)
ifndef DUMP
KBUILD_BUILD_TIMESTAMP:=$(shell perl -e 'print scalar gmtime($(SOURCE_DATE_EPOCH))')
endif
endif
KERNEL_MAKEOPTS := -C $(LINUX_DIR) \
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
CROSS_COMPILE="$(KERNEL_CROSS)" \
ARCH="$(LINUX_KARCH)" \
KBUILD_HAVE_NLS=no \
KBUILD_BUILD_USER="$(call qstrip,$(CONFIG_KERNEL_BUILD_USER))" \
KBUILD_BUILD_HOST="$(call qstrip,$(CONFIG_KERNEL_BUILD_DOMAIN))" \
KBUILD_BUILD_TIMESTAMP="$(KBUILD_BUILD_TIMESTAMP)" \
KBUILD_BUILD_VERSION="0" \
HOST_LOADLIBES="-L$(STAGING_DIR_HOST)/lib" \
CONFIG_SHELL="$(BASH)" \
$(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
$(if $(PKG_BUILD_ID),LDFLAGS_MODULE=--build-id=0x$(PKG_BUILD_ID))
ifdef CONFIG_STRIP_KERNEL_EXPORTS
KERNEL_MAKEOPTS += \
EXTRA_LDSFLAGS="-I$(KERNEL_BUILD_DIR) -include symtab.h"
@@ -36,29 +16,27 @@ ifneq (,$(KERNEL_CC))
KERNEL_MAKEOPTS += CC="$(KERNEL_CC)"
endif
ifdef CONFIG_USE_SPARSE
KERNEL_MAKEOPTS += C=1 CHECK=$(STAGING_DIR_HOST)/bin/sparse
endif
ifneq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
KERNEL_MAKEOPTS += LOCALVERSION=
endif
export HOST_EXTRACFLAGS=-I$(STAGING_DIR_HOST)/include
# defined in quilt.mk
Kernel/Patch:=$(Kernel/Patch/Default)
ifneq (,$(findstring .xz,$(LINUX_SOURCE)))
LINUX_CAT:=xzcat
else
LINUX_CAT:=zcat
endif
ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
define Kernel/Prepare/Default
xzcat $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
$(LINUX_CAT) $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
$(Kernel/Patch)
$(if $(QUILT),touch $(LINUX_DIR)/.quilt_used)
endef
else
define Kernel/Prepare/Default
xzcat $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
$(LINUX_CAT) $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
endef
endif
else
@@ -91,6 +69,7 @@ ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
$(call Kernel/SetInitramfs/PreConfigure)
echo 'CONFIG_INITRAMFS_ROOT_UID=$(shell id -u)' >> $(LINUX_DIR)/.config
echo 'CONFIG_INITRAMFS_ROOT_GID=$(shell id -g)' >> $(LINUX_DIR)/.config
echo "$(if $(CONFIG_TARGET_INITRAMFS_FORCE),CONFIG_INITRAMFS_FORCE=y,# CONFIG_INITRAMFS_FORCE is not set)" >> $(LINUX_DIR)/.config
echo "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_NONE),CONFIG_INITRAMFS_COMPRESSION_NONE=y,# CONFIG_INITRAMFS_COMPRESSION_NONE is not set)" >> $(LINUX_DIR)/.config
echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_GZIP),CONFIG_INITRAMFS_COMPRESSION_GZIP=y\nCONFIG_RD_GZIP=y,# CONFIG_INITRAMFS_COMPRESSION_GZIP is not set\n# CONFIG_RD_GZIP is not set)" >> $(LINUX_DIR)/.config
echo -e "$(if $(CONFIG_TARGET_INITRAMFS_COMPRESSION_BZIP2),CONFIG_INITRAMFS_COMPRESSION_BZIP2=y\nCONFIG_RD_BZIP2=y,# CONFIG_INITRAMFS_COMPRESSION_BZIP2 is not set\n# CONFIG_RD_BZIP2 is not set)" >> $(LINUX_DIR)/.config
@@ -106,6 +85,7 @@ define Kernel/SetNoInitramfs
mv $(LINUX_DIR)/.config.set $(LINUX_DIR)/.config.old
grep -v INITRAMFS $(LINUX_DIR)/.config.old > $(LINUX_DIR)/.config.set
echo 'CONFIG_INITRAMFS_SOURCE=""' >> $(LINUX_DIR)/.config.set
echo '# CONFIG_INITRAMFS_FORCE is not set' >> $(LINUX_DIR)/.config.set
endef
define Kernel/Configure/Default
@@ -124,7 +104,7 @@ define Kernel/Configure/Default
cp $(LINUX_DIR)/.config.set $(LINUX_DIR)/.config; \
cp $(LINUX_DIR)/.config.set $(LINUX_DIR)/.config.prev; \
}
$(_SINGLE) [ -d $(LINUX_DIR)/user_headers ] || $(MAKE) $(KERNEL_MAKEOPTS) INSTALL_HDR_PATH=$(LINUX_DIR)/user_headers headers_install
$(_SINGLE) [ -d $(LINUX_DIR)/user_headers ] || $(KERNEL_MAKE) INSTALL_HDR_PATH=$(LINUX_DIR)/user_headers headers_install
grep '=[ym]' $(LINUX_DIR)/.config.set | LC_ALL=C sort | mkhash md5 > $(LINUX_DIR)/.vermagic
endef
@@ -134,7 +114,7 @@ endef
define Kernel/CompileModules/Default
rm -f $(LINUX_DIR)/vmlinux $(LINUX_DIR)/System.map
+$(MAKE) $(KERNEL_MAKEOPTS) modules
+$(KERNEL_MAKE) modules
endef
OBJCOPY_STRIP = -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id
@@ -150,7 +130,7 @@ define Kernel/CopyImage
$(KERNEL_CROSS)objcopy $(OBJCOPY_STRIP) -S $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux$(1).elf; \
$(CP) $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux$(1).debug; \
$(foreach k, \
$(if $(KERNEL_IMAGES),$(KERNEL_IMAGES),$(filter-out dtbs,$(KERNELNAME))), \
$(if $(KERNEL_IMAGES),$(KERNEL_IMAGES),$(filter-out vmlinux dtbs,$(KERNELNAME))), \
$(CP) $(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/$(IMAGES_DIR)/$(k) $(KERNEL_BUILD_DIR)/$(k)$(1); \
) \
}
@@ -158,7 +138,7 @@ endef
define Kernel/CompileImage/Default
rm -f $(TARGET_DIR)/init
+$(MAKE) $(KERNEL_MAKEOPTS) $(if $(KERNELNAME),$(KERNELNAME),all) modules
+$(KERNEL_MAKE) $(if $(KERNELNAME),$(KERNELNAME),all) modules
$(call Kernel/CopyImage)
endef
@@ -167,7 +147,7 @@ define Kernel/CompileImage/Initramfs
$(call Kernel/Configure/Initramfs)
$(CP) $(GENERIC_PLATFORM_DIR)/other-files/init $(TARGET_DIR)/init
rm -rf $(KERNEL_BUILD_DIR)/linux-$(LINUX_VERSION)/usr/initramfs_data.cpio*
+$(MAKE) $(KERNEL_MAKEOPTS) $(if $(KERNELNAME),$(KERNELNAME),all) modules
+$(KERNEL_MAKE) $(if $(KERNELNAME),$(KERNELNAME),all) modules
$(call Kernel/CopyImage,-initramfs)
endef
else

View File

@@ -2,15 +2,31 @@
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .43
LINUX_VERSION-4.4 = .153
ifdef CONFIG_TESTING_KERNEL
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c
LINUX_KERNEL_HASH-4.4.153 = 0f2355515c22ca705600043bedc75218c68dcb8ab528f57f67851fbcb8545402
LINUX_VERSION-4.14 = .209
LINUX_KERNEL_HASH-4.14.209 = cb02465cc8f1972cc14707b25d779c8668d220c39e68a24bb23afd4c58182b9c
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
ifneq ($(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
LINUX_VERSION:=$(call sanitize_uri,$(call remove_uri_prefix,$(CONFIG_KERNEL_GIT_CLONE_URI)))
ifeq ($(call qstrip,$(CONFIG_KERNEL_GIT_REF)),)
CONFIG_KERNEL_GIT_REF:=HEAD
endif
LINUX_VERSION:=$(LINUX_VERSION)-$(call sanitize_uri,$(CONFIG_KERNEL_GIT_REF))
else
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
endif
ifdef KERNEL_TESTING_PATCHVER
LINUX_TESTING_VERSION:=$(KERNEL_TESTING_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_TESTING_PATCHVER)))
endif
endif
split_version=$(subst ., ,$(1))
merge_version=$(subst $(space),.,$(1))

View File

@@ -10,6 +10,12 @@ CHECK:=1
DUMP:=1
endif
ifneq ($(SOURCE_DATE_EPOCH),)
ifndef DUMP
KBUILD_BUILD_TIMESTAMP:=$(shell perl -e 'print scalar gmtime($(SOURCE_DATE_EPOCH))')
endif
endif
ifeq ($(__target_inc),)
ifndef CHECK
include $(INCLUDE_DIR)/target.mk
@@ -46,24 +52,32 @@ else
LINUX_VERMAGIC:=$(strip $(shell cat $(LINUX_DIR)/.vermagic 2>/dev/null))
LINUX_VERMAGIC:=$(if $(LINUX_VERMAGIC),$(LINUX_VERMAGIC),unknown)
LINUX_UNAME_VERSION:=$(if $(word 3,$(subst ., ,$(KERNEL_BASE))),$(KERNEL_BASE),$(KERNEL_BASE).0)
LINUX_UNAME_VERSION:=$(KERNEL_BASE)
ifneq ($(findstring -rc,$(LINUX_VERSION)),)
LINUX_UNAME_VERSION:=$(LINUX_UNAME_VERSION)-$(strip $(lastword $(subst -, ,$(LINUX_VERSION))))
endif
MODULES_SUBDIR:=lib/modules/$(LINUX_UNAME_VERSION)
TARGET_MODULES_DIR := $(LINUX_TARGET_DIR)/$(MODULES_SUBDIR)
LINUX_KERNEL:=$(KERNEL_BUILD_DIR)/vmlinux
LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.xz
TESTING:=$(if $(findstring -rc,$(LINUX_VERSION)),/testing,)
ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
LINUX_SITE:=@KERNEL/linux/kernel/v$(word 1,$(subst ., ,$(KERNEL_BASE))).x$(TESTING)
ifneq (,$(findstring -rc,$(LINUX_VERSION)))
LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.gz
else
LINUX_SOURCE:=linux-$(LINUX_VERSION).tar.xz
endif
ifneq (,$(findstring -rc,$(LINUX_VERSION)))
LINUX_SITE:=https://git.kernel.org/torvalds/t
else ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
LINUX_SITE:=@KERNEL/linux/kernel/v$(word 1,$(subst ., ,$(KERNEL_BASE))).x
else
LINUX_UNAME_VERSION:=$(strip $(shell cat $(LINUX_DIR)/include/config/kernel.release 2>/dev/null))
endif
MODULES_SUBDIR:=lib/modules/$(LINUX_UNAME_VERSION)
TARGET_MODULES_DIR:=$(LINUX_TARGET_DIR)/$(MODULES_SUBDIR)
ifneq ($(TARGET_BUILD),1)
PKG_BUILD_DIR ?= $(KERNEL_BUILD_DIR)/$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
PKG_BUILD_DIR ?= $(KERNEL_BUILD_DIR)/$(if $(BUILD_VARIANT),$(PKG_NAME)-$(BUILD_VARIANT)/)$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
endif
endif
@@ -77,6 +91,8 @@ else ifneq (,$(findstring $(ARCH) , armeb ))
LINUX_KARCH := arm
else ifneq (,$(findstring $(ARCH) , mipsel mips64 mips64el ))
LINUX_KARCH := mips
else ifneq (,$(findstring $(ARCH) , powerpc64 ))
LINUX_KARCH := powerpc
else ifneq (,$(findstring $(ARCH) , sh2 sh3 sh4 ))
LINUX_KARCH := sh
else ifneq (,$(findstring $(ARCH) , i386 x86_64 ))
@@ -85,61 +101,88 @@ else
LINUX_KARCH := $(ARCH)
endif
KERNEL_MAKE = $(MAKE) $(KERNEL_MAKEOPTS)
KERNEL_MAKE_FLAGS = \
HOSTCFLAGS="$(HOST_CFLAGS) -Wall -Wmissing-prototypes -Wstrict-prototypes" \
CROSS_COMPILE="$(KERNEL_CROSS)" \
ARCH="$(LINUX_KARCH)" \
KBUILD_HAVE_NLS=no \
KBUILD_BUILD_USER="$(call qstrip,$(CONFIG_KERNEL_BUILD_USER))" \
KBUILD_BUILD_HOST="$(call qstrip,$(CONFIG_KERNEL_BUILD_DOMAIN))" \
KBUILD_BUILD_TIMESTAMP="$(KBUILD_BUILD_TIMESTAMP)" \
KBUILD_BUILD_VERSION="0" \
HOST_LOADLIBES="-L$(STAGING_DIR_HOST)/lib" \
CONFIG_SHELL="$(BASH)" \
$(if $(findstring c,$(OPENWRT_VERBOSE)),V=1,V='') \
$(if $(PKG_BUILD_ID),LDFLAGS_MODULE=--build-id=0x$(PKG_BUILD_ID)) \
cmd_syscalls=
ifeq ($(call qstrip,$(CONFIG_EXTERNAL_KERNEL_TREE))$(call qstrip,$(CONFIG_KERNEL_GIT_CLONE_URI)),)
KERNEL_MAKE_FLAGS += \
KERNELRELEASE=$(LINUX_VERSION)
endif
KERNEL_MAKEOPTS := -C $(LINUX_DIR) $(KERNEL_MAKE_FLAGS)
ifdef CONFIG_USE_SPARSE
KERNEL_MAKEOPTS += C=1 CHECK=$(STAGING_DIR_HOST)/bin/sparse
endif
ifeq ($(HOST_OS),Darwin)
export SKIP_STACK_VALIDATION:=1
endif
PKG_EXTMOD_SUBDIRS ?= .
define populate_module_symvers
@mkdir -p $(PKG_INFO_DIR)
cat /dev/null > $(PKG_INFO_DIR)/$(PKG_NAME).symvers; \
for subdir in $(PKG_EXTMOD_SUBDIRS); do \
cat $(PKG_INFO_DIR)/*.symvers 2>/dev/null > $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers; \
done
endef
define collect_module_symvers
for subdir in $(PKG_EXTMOD_SUBDIRS); do \
realdir=$$$$(readlink -f $(PKG_BUILD_DIR)); \
grep -F $(PKG_BUILD_DIR) $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers >> $(PKG_BUILD_DIR)/Module.symvers.tmp; \
[ "$(PKG_BUILD_DIR)" = "$$$$realdir" ] || \
grep -F $$$$realdir $(PKG_BUILD_DIR)/$$$$subdir/Module.symvers >> $(PKG_BUILD_DIR)/Module.symvers.tmp; \
done; \
sort -u $(PKG_BUILD_DIR)/Module.symvers.tmp > $(PKG_BUILD_DIR)/Module.symvers; \
mv $(PKG_BUILD_DIR)/Module.symvers $(PKG_INFO_DIR)/$(PKG_NAME).symvers
endef
define KernelPackage/hooks
ifneq ($(PKG_NAME),kernel)
Hooks/Compile/Pre += populate_module_symvers
Hooks/Compile/Post += collect_module_symvers
endif
define KernelPackage/hooks
endef
endef
define KernelPackage/Defaults
FILES:=
AUTOLOAD:=
MODPARAMS:=
PKGFLAGS+=nonshared
endef
# 1: name
# 2: install prefix
# 3: module priority prefix
# 4: required for boot
# 5: module list
define ModuleAutoLoad
$(SH_FUNC) \
export modules=; \
probe_module() { \
local mods="$$$$$$$$1"; \
local boot="$$$$$$$$2"; \
local mod; \
shift 2; \
for mod in $$$$$$$$mods; do \
mkdir -p $(2)/etc/modules.d; \
echo "$$$$$$$$mod" >> $(2)/etc/modules.d/$(1); \
done; \
if [ -e $(2)/etc/modules.d/$(1) ]; then \
if [ "$$$$$$$$boot" = "1" -a ! -e $(2)/etc/modules-boot.d/$(1) ]; then \
mkdir -p $(2)/etc/modules-boot.d; \
ln -s ../modules.d/$(1) $(2)/etc/modules-boot.d/; \
fi; \
modules="$$$$$$$${modules:+$$$$$$$$modules }$$$$$$$$mods"; \
fi; \
}; \
add_module() { \
local priority="$$$$$$$$1"; \
local mods="$$$$$$$$2"; \
local boot="$$$$$$$$3"; \
local mod; \
shift 3; \
for mod in $$$$$$$$mods; do \
mkdir -p $(2)/etc/modules.d; \
echo "$$$$$$$$mod" >> $(2)/etc/modules.d/$$$$$$$$priority-$(1); \
done; \
if [ -e $(2)/etc/modules.d/$$$$$$$$priority-$(1) ]; then \
if [ "$$$$$$$$boot" = "1" -a ! -e $(2)/etc/modules-boot.d/$$$$$$$$priority-$(1) ]; then \
mkdir -p $(2)/etc/modules-boot.d; \
ln -s ../modules.d/$$$$$$$$priority-$(1) $(2)/etc/modules-boot.d/; \
fi; \
modules="$$$$$$$${modules:+$$$$$$$$modules }$$$$$$$$priority-$(1)"; \
fi; \
}; \
$(3) \
if [ -n "$$$$$$$$modules" ]; then \
modules="$$$$$$$$(echo "$$$$$$$$modules" | tr ' ' '\n' | sort | uniq | paste -s -d' ' -)"; \
mkdir -p $(2)/etc/modules.d; \
mkdir -p $(2)/CONTROL; \
echo "#!/bin/sh" > $(2)/CONTROL/postinst-pkg; \
echo "[ -z \"\$$$$$$$$IPKG_INSTROOT\" ] || exit 0" >> $(2)/CONTROL/postinst-pkg; \
echo ". /lib/functions.sh" >> $(2)/CONTROL/postinst-pkg; \
echo "insert_modules $$$$$$$$modules" >> $(2)/CONTROL/postinst-pkg; \
chmod 0755 $(2)/CONTROL/postinst-pkg; \
fi
$(if $(5), \
mkdir -p $(2)/etc/modules.d; \
($(foreach mod,$(5), \
echo "$(mod)$(if $(MODPARAMS.$(mod)), $(MODPARAMS.$(mod)),$(if $(MODPARAMS), $(MODPARAMS)))"; )) > $(2)/etc/modules.d/$(3)$(1); \
$(if $(4), \
mkdir -p $(2)/etc/modules-boot.d; \
ln -sf ../modules.d/$(3)$(1) $(2)/etc/modules-boot.d/;))
endef
ifeq ($(DUMP)$(TARGET_BUILD),)
@@ -192,10 +235,10 @@ $(call KernelPackage/$(1)/config)
endif
$(call KernelPackage/depends)
$(call KernelPackage/hooks)
ifneq ($(if $(filter-out %=y %=n %=m,$(KCONFIG)),$(filter m y,$(foreach c,$(filter-out %=y %=n %=m,$(KCONFIG)),$($(c)))),.),)
ifneq ($(strip $(FILES)),)
define Package/kmod-$(1)/install
define Package/kmod-$(1)/install
@for mod in $$(call version_filter,$$(FILES)); do \
if grep -q "$$$$$$$${mod##$(LINUX_DIR)/}" "$(LINUX_DIR)/modules.builtin"; then \
echo "NOTICE: module '$$$$$$$$mod' is built-in."; \
@@ -207,10 +250,9 @@ $(call KernelPackage/$(1)/config)
exit 1; \
fi; \
done;
$(call ModuleAutoLoad,$(1),$$(1),$(AUTOLOAD))
$(call ModuleAutoLoad,$(1),$$(1),$(filter-out 0-,$(word 1,$(AUTOLOAD))-),$(filter-out 0,$(word 2,$(AUTOLOAD))),$(sort $(wordlist 3,99,$(AUTOLOAD))))
$(call KernelPackage/$(1)/install,$$(1))
endef
endif
endef
$(if $(CONFIG_PACKAGE_kmod-$(1)),
else
compile: $(1)-disabled
@@ -224,17 +266,23 @@ $(call KernelPackage/$(1)/config)
endif
$$(eval $$(call BuildPackage,kmod-$(1)))
$$(IPKG_kmod-$(1)): $$(wildcard $$(FILES))
$$(IPKG_kmod-$(1)): $$(wildcard $$(call version_filter,$$(FILES)))
endef
version_filter=$(if $(findstring @,$(1)),$(shell $(SCRIPT_DIR)/package-metadata.pl version_filter $(KERNEL_PATCHVER) $(1)),$(1))
# 1: priority (optional)
# 2: module list
# 3: boot flag
define AutoLoad
add_module "$(1)" "$(call version_filter,$(2))" "$(3)";
$(if $(1),$(1),0) $(if $(3),1,0) $(call version_filter,$(2))
endef
# 1: module list
# 2: boot flag
define AutoProbe
probe_module "$(call version_filter,$(1))" "$(2)";
$(call AutoLoad,,$(1),$(2))
endef
version_field=$(if $(word $(1),$(2)),$(word $(1),$(2)),0)

View File

@@ -30,9 +30,10 @@ endef
# core
# kernel only
$(eval $(if $(NF_KMOD),$(call nf_add,NF_REJECT,CONFIG_NF_REJECT_IPV4, $(P_V4)nf_reject_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT,CONFIG_IP_NF_IPTABLES, $(P_V4)ip_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT,CONFIG_NETFILTER_XTABLES, $(P_XT)x_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT,CONFIG_NF_REJECT_IPV4, $(P_V4)nf_reject_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_CORE,CONFIG_NETFILTER_XTABLES, $(P_XT)xt_tcpudp),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_CORE,CONFIG_IP_NF_FILTER, $(P_V4)iptable_filter),))
@@ -79,26 +80,34 @@ $(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_MATCH_CONNTRACK, $(P_XT)x
$(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_MATCH_CONNBYTES, $(P_XT)xt_connbytes))
$(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_MATCH_CONNLIMIT, $(P_XT)xt_connlimit))
$(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_CONNCOUNT, $(P_XT)nf_conncount))
$(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_CONNMARK, $(P_XT)xt_connmark))
$(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_MATCH_HELPER, $(P_XT)xt_helper))
$(eval $(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_MATCH_RECENT, $(P_XT)xt_recent))
$(eval $(if $(NF_KMOD),,$(call nf_add,IPT_CONNTRACK_EXTRA,CONFIG_NETFILTER_XT_CONNMARK, $(P_XT)xt_CONNMARK)))
#conntrack-label
$(eval $(call nf_add,IPT_CONNTRACK_LABEL,CONFIG_NETFILTER_XT_MATCH_CONNLABEL, $(P_XT)xt_connlabel))
# extra
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE, $(if $(NF_KMOD),$(P_XT)xt_addrtype,$(P_XT)ipt_addrtype)))
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_OWNER, $(P_XT)xt_owner))
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_PHYSDEV, $(P_XT)xt_physdev))
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_PKTTYPE, $(P_XT)xt_pkttype))
$(eval $(call nf_add,IPT_EXTRA,CONFIG_NETFILTER_XT_MATCH_QUOTA, $(P_XT)xt_quota))
#$(eval $(call nf_add,IPT_EXTRA,CONFIG_IP_NF_TARGET_ROUTE, $(P_V4)ipt_ROUTE))
# physdev
$(eval $(call nf_add,IPT_PHYSDEV,CONFIG_NETFILTER_XT_MATCH_PHYSDEV, $(P_XT)xt_physdev))
# filter
$(eval $(call nf_add,IPT_FILTER,CONFIG_NETFILTER_XT_MATCH_STRING, $(P_XT)xt_string))
$(eval $(call nf_add,IPT_FILTER,CONFIG_NETFILTER_XT_MATCH_BPF, $(P_XT)xt_bpf))
# ipopt
@@ -138,14 +147,18 @@ $(eval $(call nf_add,IPT_IPSEC,CONFIG_IP_NF_MATCH_AH, $(P_V4)ipt_ah))
$(eval $(call nf_add,IPT_IPSEC,CONFIG_NETFILTER_XT_MATCH_ESP, $(P_XT)xt_esp))
$(eval $(call nf_add,IPT_IPSEC,CONFIG_NETFILTER_XT_MATCH_POLICY, $(P_XT)xt_policy))
# flow offload support
$(eval $(call nf_add,IPT_FLOW,CONFIG_NETFILTER_XT_TARGET_FLOWOFFLOAD, $(P_XT)xt_FLOWOFFLOAD))
# IPv6
# kernel only
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT6,CONFIG_IP6_NF_IPTABLES, $(P_V6)ip6_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT6,CONFIG_NF_REJECT_IPV6, $(P_V6)nf_reject_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_REJECT6,CONFIG_NF_REJECT_IPV6, $(P_V6)nf_reject_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK6,CONFIG_NF_DEFRAG_IPV6, $(P_V6)nf_defrag_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_IPT6,CONFIG_IP6_NF_IPTABLES, $(P_V6)ip6_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK,CONFIG_NF_DEFRAG_IPV6, $(P_V6)nf_defrag_ipv6, ge 4.19),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK6,CONFIG_NF_DEFRAG_IPV6, $(P_V6)nf_defrag_ipv6, lt 4.19),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_CONNTRACK6,CONFIG_NF_CONNTRACK_IPV6, $(P_V6)nf_conntrack_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_FILTER, $(P_V6)ip6table_filter),))
@@ -174,10 +187,10 @@ $(eval $(call nf_add,IPT_IPV6_EXTRA,CONFIG_IP6_NF_MATCH_RT, $(P_V6)ip6t_rt))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT, $(P_XT)nf_nat),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_REDIRECT, $(P_XT)nf_nat_redirect, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_IPV4, $(P_V4)nf_nat_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_MASQUERADE_IPV4, $(P_V4)nf_nat_masquerade_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_MASQUERADE_IPV4, $(P_V4)nf_nat_masquerade_ipv4, lt 4.18),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT6,CONFIG_NF_NAT_IPV6, $(P_V6)nf_nat_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT6,CONFIG_NF_NAT_MASQUERADE_IPV6, $(P_V6)nf_nat_masquerade_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT6,CONFIG_NF_NAT_MASQUERADE_IPV6, $(P_V6)nf_nat_masquerade_ipv6, lt 4.18),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_NETFILTER_XT_NAT, $(P_XT)xt_nat),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_IP_NF_NAT, $(P_V4)iptable_nat),))
@@ -247,7 +260,11 @@ $(eval $(call nf_add,IPT_DEBUG,CONFIG_NETFILTER_XT_TARGET_TRACE, $(P_XT)xt_TRACE
# tproxy
$(eval $(call nf_add,IPT_TPROXY,CONFIG_NETFILTER_XT_MATCH_SOCKET, $(P_XT)xt_socket))
$(eval $(call nf_add,IPT_TPROXY,CONFIG_NF_SOCKET_IPV4, $(P_V4)nf_socket_ipv4, ge 4.10))
$(eval $(call nf_add,IPT_TPROXY,CONFIG_NF_SOCKET_IPV6, $(P_V6)nf_socket_ipv6, ge 4.10))
$(eval $(call nf_add,IPT_TPROXY,CONFIG_NETFILTER_XT_TARGET_TPROXY, $(P_XT)xt_TPROXY))
$(eval $(call nf_add,IPT_TPROXY,CONFIG_NF_TPROXY_IPV4, $(P_V4)nf_tproxy_ipv4, ge 4.18))
$(eval $(call nf_add,IPT_TPROXY,CONFIG_NF_TPROXY_IPV6, $(P_V6)nf_tproxy_ipv6, ge 4.18))
# led
$(eval $(call nf_add,IPT_LED,CONFIG_NETFILTER_XT_TARGET_LED, $(P_XT)xt_LED))
@@ -262,6 +279,10 @@ $(eval $(if $(NF_KMOD),$(call nf_add,IPT_TEE,CONFIG_NF_DUP_IPV6, $(P_V6)nf_dup_i
$(eval $(call nf_add,IPT_U32,CONFIG_NETFILTER_XT_MATCH_U32, $(P_XT)xt_u32))
# checksum
$(eval $(call nf_add,IPT_CHECKSUM,CONFIG_NETFILTER_XT_TARGET_CHECKSUM, $(P_XT)xt_CHECKSUM))
# netlink
@@ -313,31 +334,48 @@ $(eval $(call nf_add,EBTABLES_WATCHERS,CONFIG_BRIDGE_EBT_NFQUEUE, $(P_EBT)ebt_nf
# nftables
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES, $(P_XT)nf_tables),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_INET, $(P_XT)nf_tables_inet),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_INET, $(P_XT)nf_tables_inet, lt 4.17),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_EXTHDR, $(P_XT)nft_exthdr),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_META, $(P_XT)nft_meta),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_NUMGEN, $(P_XT)nft_numgen, ge 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CT, $(P_XT)nft_ct),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_RBTREE, $(P_XT)nft_rbtree),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_HASH, $(P_XT)nft_hash),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_SET_RBTREE, $(P_XT)nft_set_rbtree, ge 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_RBTREE, $(P_XT)nft_rbtree, lt 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_SET_HASH, $(P_XT)nft_set_hash, ge 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_HASH, $(P_XT)nft_hash, lt 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_COUNTER, $(P_XT)nft_counter),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_LOG, $(P_XT)nft_log),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_LIMIT, $(P_XT)nft_limit),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REJECT, $(P_XT)nft_reject $(P_V4)nft_reject_ipv4 $(P_V6)nft_reject_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REJECT_INET, $(P_XT)nft_reject_inet),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV4, $(P_V4)nf_tables_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV4, $(P_V4)nf_tables_ipv4, lt 4.17),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV4, $(P_V4)nft_chain_route_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV6, $(P_V6)nf_tables_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV6, $(P_V6)nf_tables_ipv6, lt 4.17),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV6, $(P_V6)nft_chain_route_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REDIR, $(P_XT)nft_redir, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_QUOTA, $(P_XT)nft_quota, ge 4.9.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_ARP,CONFIG_NF_TABLES_ARP, $(P_V4)nf_tables_arp, lt 4.17),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_BRIDGE,CONFIG_NF_TABLES_BRIDGE, $(P_EBT)nf_tables_bridge, lt 4.17),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_BRIDGE,CONFIG_NFT_BRIDGE_META, $(P_EBT)nft_meta_bridge),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_BRIDGE,CONFIG_NFT_BRIDGE_REJECT, $(P_EBT)nft_reject_bridge),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_NAT, $(P_XT)nft_nat),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_CHAIN_NAT_IPV4, $(P_V4)nft_chain_nat_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_REDIR_IPV4, $(P_V4)nft_redir_ipv4, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_REDIR_IPV6, $(P_V6)nft_redir_ipv6, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ, $(P_XT)nft_masq),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ_IPV4, $(P_V4)nft_masq_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ_IPV6, $(P_V6)nft_masq_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_REDIR_IPV6, $(P_V6)nft_redir_ipv6, ge 3.19.0),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_MASQ_IPV6, $(P_V6)nft_masq_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB, $(P_XT)nft_fib),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_INET, $(P_XT)nft_fib_inet),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_IPV4, $(P_V4)nft_fib_ipv4),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_IPV6, $(P_V6)nft_fib_ipv6),))
# userland only
IPT_BUILTIN += $(NF_IPT-y) $(NF_IPT-m)
@@ -347,7 +385,9 @@ IPT_BUILTIN += $(NF_CONNTRACK6-y)
IPT_BUILTIN += $(IPT_CONNTRACK-y)
IPT_BUILTIN += $(IPT_CONNTRACK_EXTRA-y)
IPT_BUILTIN += $(IPT_EXTRA-y)
IPT_BUILTIN += $(IPT_PHYSDEV-y)
IPT_BUILTIN += $(IPT_FILTER-y)
IPT_BUILTIN += $(IPT_FLOW-y) $(IPT_FLOW-m)
IPT_BUILTIN += $(IPT_IPOPT-y)
IPT_BUILTIN += $(IPT_IPRANGE-y)
IPT_BUILTIN += $(IPT_CLUSTER-y)

View File

@@ -23,7 +23,7 @@ else
endif
PKG_CONFIG_DEPENDS += CONFIG_BUILD_NLS
PKG_BUILD_DEPENDS += !BUILD_NLS:libiconv !BUILD_NLS:libintl
PKG_BUILD_DEPENDS += !BUILD_NLS:libiconv !BUILD_NLS:gettext
ICONV_DEPENDS:=+BUILD_NLS:libiconv-full
ICONV_CFLAGS:=-I$(ICONV_PREFIX)/include

View File

@@ -10,6 +10,7 @@ ifeq ($(DUMP),)
ifeq ($(if $(VARIANT),$(BUILD_VARIANT)),$(VARIANT))
ifdef Package/$(1)/install
ifneq ($(CONFIG_PACKAGE_$(1))$(DEVELOPER),)
$(_pkg_target)compile: $(PKG_BUILD_DIR)/.pkgdir/$(1).installed
compile: install-bin-$(1)
else
compile: $(1)-disabled
@@ -19,10 +20,19 @@ ifeq ($(DUMP),)
endif
endif
install-bin-$(1): $(STAMP_BUILT)
rm -rf $(BIN_DIR)/$(1)
$(INSTALL_DIR) $(BIN_DIR)/$(1)
$(call Package/$(1)/install,$(BIN_DIR)/$(1))
$(PKG_BUILD_DIR)/.pkgdir/$(1).installed: $(STAMP_BUILT)
rm -rf $(PKG_BUILD_DIR)/.pkgdir/$(1) $$@
mkdir -p $(PKG_BUILD_DIR)/.pkgdir/$(1)
$(call Package/$(1)/install,$(PKG_BUILD_DIR)/.pkgdir/$(1))
touch $$@
install-bin-$(1): $(PKG_BUILD_DIR)/.pkgdir/$(1).installed
rm -rf $(BIN_DIR)/$(1)
-rmdir $(PKG_BUILD_DIR)/.pkgdir/$(1) >/dev/null 2>/dev/null
if [ -d $(PKG_BUILD_DIR)/.pkgdir/$(1) ]; then \
$(INSTALL_DIR) $(BIN_DIR)/$(1) && \
$(CP) $(PKG_BUILD_DIR)/.pkgdir/$(1)/. $(BIN_DIR)/$(1)/; \
fi
clean-$(1):
rm -rf $(BIN_DIR)/$(1)

View File

@@ -5,7 +5,7 @@
# See /LICENSE for more information.
#
PKG_DEFAULT_DEPENDS = +libc +SSP_SUPPORT:libssp +USE_GLIBC:librt +USE_GLIBC:libpthread
PKG_DEFAULT_DEPENDS = +libc +GCC_LIBSSP:libssp +USE_GLIBC:librt +USE_GLIBC:libpthread
ifneq ($(PKG_NAME),toolchain)
PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS) $(filter-out $(PKG_DEFAULT_DEPENDS),$(2)))
@@ -56,6 +56,9 @@ define Package/Default
VARIANT:=
DEFAULT_VARIANT:=
USERID:=
ALTERNATIVES:=
LICENSE:=$(PKG_LICENSE)
LICENSE_FILES:=$(PKG_LICENSE_FILES)
endef
Build/Patch:=$(Build/Patch/Default)

View File

@@ -7,47 +7,39 @@
ifneq ($(DUMP),)
dumpinfo: FORCE
define Config/template
Preconfig: $(1)
Preconfig-Type: $(2)
Preconfig-Default: $(3)
Preconfig-Label: $(4)
define SOURCE_INFO
$(if $(PKG_BUILD_DEPENDS),Build-Depends: $(PKG_BUILD_DEPENDS)
)$(if $(HOST_BUILD_DEPENDS),Build-Depends/host: $(HOST_BUILD_DEPENDS)
)$(if $(BUILD_TYPES),Build-Types: $(BUILD_TYPES)
)
endef
define Config
Preconfig/$(1) = $$(call Config/template,$(1),$(2),$(3),$(4))
preconfig_$$(1) += $(1)
endef
define Dumpinfo/Package
$(info Package: $(1)
$(info $(SOURCE_INFO)Package: $(1)
$(if $(MENU),Menu: $(MENU)
)$(if $(SUBMENU),Submenu: $(SUBMENU)
)$(if $(SUBMENUDEP),Submenu-Depends: $(SUBMENUDEP)
)$(if $(DEFAULT),Default: $(DEFAULT)
)$(if $(findstring $(PREREQ_CHECK),1),Prereq-Check: 1
)Version: $(VERSION)
Depends: $(call PKG_FIXUP_DEPENDS,$(1),$(DEPENDS))
$(if $(ABI_VERSION),ABIVersion: $(ABI_VERSION)
)Depends: $(call PKG_FIXUP_DEPENDS,$(1),$(DEPENDS))
Conflicts: $(CONFLICTS)
Menu-Depends: $(MDEPENDS)
Provides: $(PROVIDES)
$(if $(VARIANT),Build-Variant: $(VARIANT)
$(if $(DEFAULT_VARIANT),Default-Variant: $(VARIANT)
))$(if $(PKG_BUILD_DEPENDS),Build-Depends: $(PKG_BUILD_DEPENDS)
)$(if $(HOST_BUILD_DEPENDS),Build-Depends/host: $(HOST_BUILD_DEPENDS)
)$(if $(BUILD_TYPES),Build-Types: $(BUILD_TYPES)
)Section: $(SECTION)
))Section: $(SECTION)
Category: $(CATEGORY)
$(if $(filter nonshared,$(PKGFLAGS)),,Repository: $(if $(FEED),$(FEED),base)
)Title: $(TITLE)
Maintainer: $(MAINTAINER)
$(if $(USERID),Require-User: $(USERID)
)Source: $(PKG_SOURCE)
$(if $(PKG_LICENSE),License: $(PKG_LICENSE)
)$(if $(PKG_LICENSE_FILES),LicenseFiles: $(PKG_LICENSE_FILES)
$(if $(LICENSE),License: $(LICENSE)
)$(if $(LICENSE_FILES),LicenseFiles: $(LICENSE_FILES)
)Type: $(if $(Package/$(1)/targets),$(Package/$(1)/targets),$(if $(PKG_TARGETS),$(PKG_TARGETS),ipkg))
$(if $(KCONFIG),Kernel-Config: $(KCONFIG)
)$(if $(BUILDONLY),Build-Only: $(BUILDONLY)
@@ -59,33 +51,11 @@ $(if $(URL),$(URL)
$(if $(Package/$(1)/config),Config:
$(Package/$(1)/config)
@@
)$(foreach pc,$(preconfig_$(1)),
$(Preconfig/$(pc))))
))
SOURCE_INFO :=
endef
define Feature/Default
TARGET_NAME:=
TARGET_TITLE:=
PRIORITY:=
NAME:=
endef
define Feature
$(eval $(Feature/Default))
$(eval $(Feature/$(1)))
$(if $(DUMP),$(call Dumpinfo/Feature,$(1)))
endef
define Dumpinfo/Feature
$(info Feature: $(TARGET_NAME)_$(1)
Target-Name: $(TARGET_NAME)
Target-Title: $(TARGET_TITLE)
Feature-Name: $(NAME)
$(if $(PRIORITY),Feature-Priority: $(PRIORITY)
)Feature-Description:
$(Feature/$(1)/description)
@@
)
endef
dumpinfo: FORCE
$(if $(SOURCE_INFO),$(info $(SOURCE_INFO)))
endif

View File

@@ -13,6 +13,9 @@ endif
IPKG_BUILD:= \
$(SCRIPT_DIR)/ipkg-build -c -o 0 -g 0
IPKG_REMOVE:= \
$(SCRIPT_DIR)/ipkg-remove
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg
# 1: package name
@@ -32,7 +35,8 @@ PARENR :=)
dep_split=$(subst :,$(space),$(1))
dep_rem=$(subst !,,$(subst $(strip $(PARENL)),,$(subst $(strip $(PARENR)),,$(word 1,$(call dep_split,$(1))))))
dep_confvar=$(strip $(foreach cond,$(subst ||, ,$(call dep_rem,$(1))),$(CONFIG_$(cond))))
dep_and=dep_and_res:=$$(and $(subst $(space),$(comma),$(foreach cond,$(subst &&, ,$(1)),$$(CONFIG_$(cond)))))
dep_confvar=$(strip $(foreach cond,$(subst ||, ,$(call dep_rem,$(1))),$(eval $(call dep_and,$(cond)))$(dep_and_res)))
dep_pos=$(if $(call dep_confvar,$(1)),$(call dep_val,$(1)))
dep_neg=$(if $(call dep_confvar,$(1)),,$(call dep_val,$(1)))
dep_if=$(if $(findstring !,$(1)),$(call dep_neg,$(1)),$(call dep_pos,$(1)))
@@ -90,8 +94,9 @@ _endef=endef
ifeq ($(DUMP),)
define BuildTarget/ipkg
ABIV_$(1):=$(call GetABISuffix,$(1))
PDIR_$(1):=$(call FeedPackageDir,$(1))
IPKG_$(1):=$$(PDIR_$(1))/$(1)_$(VERSION)_$(PKGARCH).ipk
IPKG_$(1):=$$(PDIR_$(1))/$(1)$$(ABIV_$(1))_$(VERSION)_$(PKGARCH).ipk
IDIR_$(1):=$(PKG_BUILD_DIR)/ipkg-$(PKGARCH)/$(1)
KEEP_$(1):=$(strip $(call Package/$(1)/conffiles))
@@ -106,25 +111,21 @@ ifeq ($(DUMP),)
ifdef do_install
ifneq ($(CONFIG_PACKAGE_$(1))$(DEVELOPER),)
IPKGS += $(1)
compile: $$(IPKG_$(1)) $(PKG_INFO_DIR)/$(1).provides $(STAGING_DIR_ROOT)/stamp/.$(1)_installed
ifneq ($(ABI_VERSION),)
compile: $(PKG_INFO_DIR)/$(1).version
endif
$(_pkg_target)compile: $$(IPKG_$(1)) $(PKG_INFO_DIR)/$(1).provides $(PKG_BUILD_DIR)/.pkgdir/$(1).installed
prepare-package-install: $$(IPKG_$(1))
compile: $(STAGING_DIR_ROOT)/stamp/.$(1)_installed
else
$(if $(CONFIG_PACKAGE_$(1)),$$(info WARNING: skipping $(1) -- package not selected))
endif
.PHONY: $(PKG_INSTALL_STAMP).$(1)
compile: $(PKG_INSTALL_STAMP).$(1)
$(PKG_INSTALL_STAMP).$(1):
if [ -f $(PKG_INSTALL_STAMP).clean ]; then \
rm -f \
$(PKG_INSTALL_STAMP) \
$(PKG_INSTALL_STAMP).clean; \
fi
ifeq ($(CONFIG_PACKAGE_$(1)),y)
echo "$(1)" >> $(PKG_INSTALL_STAMP)
compile: $(PKG_INSTALL_STAMP).$(1)
endif
$(PKG_INSTALL_STAMP).$(1): prepare-package-install
echo "$(1)" >> $(PKG_INSTALL_STAMP)
else
$(if $(CONFIG_PACKAGE_$(1)),$$(warning WARNING: skipping $(1) -- package has no install section))
endif
endif
@@ -140,34 +141,36 @@ ifeq ($(DUMP),)
$(eval $(call BuildIPKGVariable,$(1),prerm,-pkg,1))
$(eval $(call BuildIPKGVariable,$(1),postrm,,1))
$(STAGING_DIR_ROOT)/stamp/.$(1)_installed : export PATH=$$(TARGET_PATH_PKG)
$(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(STAMP_BUILT)
rm -rf $(STAGING_DIR_ROOT)/tmp-$(1)
mkdir -p $(STAGING_DIR_ROOT)/stamp $(STAGING_DIR_ROOT)/tmp-$(1)
$(call Package/$(1)/install,$(STAGING_DIR_ROOT)/tmp-$(1))
$(call Package/$(1)/install_lib,$(STAGING_DIR_ROOT)/tmp-$(1))
$(call locked,$(CP) $(STAGING_DIR_ROOT)/tmp-$(1)/. $(STAGING_DIR_ROOT)/,root-copy)
rm -rf $(STAGING_DIR_ROOT)/tmp-$(1)
$(PKG_BUILD_DIR)/.pkgdir/$(1).installed : export PATH=$$(TARGET_PATH_PKG)
$(PKG_BUILD_DIR)/.pkgdir/$(1).installed: $(STAMP_BUILT)
rm -rf $$@ $(PKG_BUILD_DIR)/.pkgdir/$(1)
mkdir -p $(PKG_BUILD_DIR)/.pkgdir/$(1)
$(call Package/$(1)/install,$(PKG_BUILD_DIR)/.pkgdir/$(1))
$(call Package/$(1)/install_lib,$(PKG_BUILD_DIR)/.pkgdir/$(1))
touch $$@
$(PKG_INFO_DIR)/$(1).version: $$(IPKG_$(1))
echo '$(ABI_VERSION)' | cmp -s - $$@ || \
echo '$(ABI_VERSION)' > $$@
$(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(PKG_BUILD_DIR)/.pkgdir/$(1).installed
mkdir -p $(STAGING_DIR_ROOT)/stamp
$(if $(ABI_VERSION),echo '$(ABI_VERSION)' | cmp -s - $(PKG_INFO_DIR)/$(1).version || echo '$(ABI_VERSION)' > $(PKG_INFO_DIR)/$(1).version)
$(call locked,$(CP) $(PKG_BUILD_DIR)/.pkgdir/$(1)/. $(STAGING_DIR_ROOT)/,root-copy)
touch $$@
Package/$(1)/DEPENDS := $$(call mergelist,$$(filter-out @%,$$(IDEPEND_$(1))))
Package/$(1)/DEPENDS := $$(call mergelist,$$(foreach dep,$$(filter-out @%,$$(IDEPEND_$(1))),$$(dep)$$(call GetABISuffix,$$(dep))))
ifneq ($$(EXTRA_DEPENDS),)
Package/$(1)/DEPENDS := $$(EXTRA_DEPENDS)$$(if $$(Package/$(1)/DEPENDS),$$(comma) $$(Package/$(1)/DEPENDS))
endif
$(_define) Package/$(1)/CONTROL
Package: $(1)
Package: $(1)$$(ABIV_$(1))
Version: $(VERSION)
$$(call addfield,Depends,$$(Package/$(1)/DEPENDS)
)$$(call addfield,Conflicts,$$(call mergelist,$(CONFLICTS))
)$$(call addfield,Provides,$$(call mergelist,$(PROVIDES))
)$$(call addfield,Provides,$$(call mergelist,$$(filter-out $(1)$$(ABIV_$(1)),$(PROVIDES)$$(if $$(ABIV_$(1)), $(1) $(foreach provide,$(PROVIDES),$(provide)$$(call GetABISuffix,$(provide))))))
)$$(call addfield,Alternatives,$$(call mergelist,$(ALTERNATIVES))
)$$(call addfield,Source,$(SOURCE)
)$$(call addfield,License,$$(PKG_LICENSE)
)$$(call addfield,LicenseFiles,$$(PKG_LICENSE_FILES)
)$$(call addfield,SourceName,$(1)
)$$(call addfield,License,$(LICENSE)
)$$(call addfield,LicenseFiles,$(LICENSE_FILES)
)$$(call addfield,Section,$(SECTION)
)$$(call addfield,Require-User,$(USERID)
)$(if $(filter hold,$(PKG_FLAGS)),Status: unknown hold not-installed
@@ -177,12 +180,11 @@ $$(call addfield,Depends,$$(Package/$(1)/DEPENDS)
Installed-Size: 0
$(_endef)
$(PKG_INFO_DIR)/$(1).provides: $$(IPKG_$(1))
$$(IPKG_$(1)) : export CONTROL=$$(Package/$(1)/CONTROL)
$$(IPKG_$(1)) : export DESCRIPTION=$$(Package/$(1)/description)
$$(IPKG_$(1)) : export PATH=$$(TARGET_PATH_PKG)
$$(IPKG_$(1)): $(STAMP_BUILT) $(INCLUDE_DIR)/package-ipkg.mk
@rm -rf $$(IDIR_$(1)) $$(call opkg_package_files,$(1))
$(PKG_INFO_DIR)/$(1).provides $$(IPKG_$(1)): $(STAMP_BUILT) $(INCLUDE_DIR)/package-ipkg.mk
@rm -rf $$(IDIR_$(1)) $$(if $$(call opkg_package_files,$(1)*),; $$(IPKG_REMOVE) $(1) $$(call opkg_package_files,$(1)*))
mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/CONTROL $(PKG_INFO_DIR)
$(call Package/$(1)/install,$$(IDIR_$(1)))
$(if $(Package/$(1)/install-overlay),mkdir -p $(PACKAGE_DIR) $$(IDIR_$(1))/rootfs-overlay)
@@ -200,6 +202,15 @@ $(_endef)
$(CheckDependencies)
$(RSTRIP) $$(IDIR_$(1))
ifneq ($$(CONFIG_IPK_FILES_CHECKSUMS),)
(cd $$(IDIR_$(1)); \
( \
find . -type f \! -path ./CONTROL/\* -exec sha256sum \{\} \; 2> /dev/null | \
sed 's|\([[:blank:]]\)\./|\1/|' > $$(IDIR_$(1))/CONTROL/files-sha256 \
) || true \
)
endif
(cd $$(IDIR_$(1))/CONTROL; \
( \
echo "$$$$CONTROL"; \
@@ -241,7 +252,7 @@ $(_endef)
@[ -f $$(IPKG_$(1)) ]
$(1)-clean:
$$(if $$(call opkg_package_files,$(1)),rm -f $$(call opkg_package_files,$(1)))
$$(if $$(call opkg_package_files,$(1)*),$$(IPKG_REMOVE) $(1) $$(call opkg_package_files,$(1)*))
clean: $(1)-clean

View File

@@ -11,7 +11,7 @@ all: $(if $(DUMP),dumpinfo,$(if $(CHECK),check,compile))
include $(INCLUDE_DIR)/download.mk
PKG_BUILD_DIR ?= $(BUILD_DIR)/$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
PKG_BUILD_DIR ?= $(BUILD_DIR)/$(if $(BUILD_VARIANT),$(PKG_NAME)-$(BUILD_VARIANT)/)$(PKG_NAME)$(if $(PKG_VERSION),-$(PKG_VERSION))
PKG_INSTALL_DIR ?= $(PKG_BUILD_DIR)/ipkg-install
PKG_BUILD_PARALLEL ?=
PKG_USE_MIPS16 ?= 1
@@ -37,46 +37,13 @@ endif
include $(INCLUDE_DIR)/hardening.mk
include $(INCLUDE_DIR)/prereq.mk
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/unpack.mk
include $(INCLUDE_DIR)/depends.mk
include $(INCLUDE_DIR)/quilt.mk
find_library_dependencies = $(wildcard $(patsubst %,$(STAGING_DIR)/pkginfo/%.version, \
$(filter-out $(BUILD_PACKAGES),$(foreach dep, \
$(filter-out @%, $(patsubst +%,%,$(1))), \
$(if $(findstring :,$(dep)), \
$(word 2,$(subst :,$(space),$(dep))), \
$(dep) \
) \
))))
PKG_DIR_NAME:=$(lastword $(subst /,$(space),$(CURDIR)))
STAMP_NO_AUTOREBUILD=$(wildcard $(PKG_BUILD_DIR)/.no_autorebuild)
PREV_STAMP_PREPARED:=$(if $(STAMP_NO_AUTOREBUILD),$(wildcard $(PKG_BUILD_DIR)/.prepared*))
ifneq ($(PREV_STAMP_PREPARED),)
STAMP_PREPARED:=$(PREV_STAMP_PREPARED)
CONFIG_AUTOREBUILD:=
else
STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))$(call confvar,$(PKG_PREPARED_DEPENDS)))
ifneq ($(wildcard $(TOPDIR)/git-src/$(PKG_NAME)/.git),)
USE_GIT_SRC_CHECKOUT:=1
QUILT:=1
endif
STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
STAMP_CONFIGURED_WILDCARD=$(PKG_BUILD_DIR)/.configured_*
STAMP_BUILT:=$(PKG_BUILD_DIR)/.built
STAMP_INSTALLED:=$(STAGING_DIR)/stamp/.$(PKG_DIR_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),)_installed
STAGING_FILES_LIST:=$(PKG_DIR_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),).list
define CleanStaging
rm -f $(STAMP_INSTALLED)
@-(\
cd "$(STAGING_DIR)"; \
if [ -f packages/$(STAGING_FILES_LIST) ]; then \
cat packages/$(STAGING_FILES_LIST) | xargs -r rm -f 2>/dev/null; \
fi; \
)
endef
ifneq ($(if $(CONFIG_SRC_TREE_OVERRIDE),$(wildcard ./git-src)),)
USE_GIT_TREE:=1
QUILT:=1
@@ -88,6 +55,57 @@ ifneq ($(wildcard $(PKG_BUILD_DIR)/.source_dir),)
QUILT:=1
endif
include $(INCLUDE_DIR)/quilt.mk
find_library_dependencies = \
$(wildcard $(patsubst %,$(STAGING_DIR)/pkginfo/%.version, \
$(sort $(foreach dep4, \
$(sort $(foreach dep3, \
$(sort $(foreach dep2, \
$(sort $(foreach dep1, \
$(sort $(foreach dep0, \
$(Package/$(1)/depends), \
$(Package/$(dep0)/depends) $(dep0) \
)), \
$(Package/$(dep1)/depends) $(dep1) \
)), \
$(Package/$(dep2)/depends) $(dep2) \
)), \
$(Package/$(dep3)/depends) $(dep3) \
)), \
$(Package/$(dep4)/depends) $(dep4) \
)), \
))
PKG_DIR_NAME:=$(lastword $(subst /,$(space),$(CURDIR)))
STAMP_NO_AUTOREBUILD=$(wildcard $(PKG_BUILD_DIR)/.no_autorebuild)
PREV_STAMP_PREPARED:=$(if $(STAMP_NO_AUTOREBUILD),$(wildcard $(PKG_BUILD_DIR)/.prepared*))
ifneq ($(PREV_STAMP_PREPARED),)
STAMP_PREPARED:=$(PREV_STAMP_PREPARED)
CONFIG_AUTOREBUILD:=
else
STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))_$(call confvar,CONFIG_AUTOREMOVE $(PKG_PREPARED_DEPENDS)))
endif
STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
STAMP_CONFIGURED_WILDCARD=$(PKG_BUILD_DIR)/.configured_*
STAMP_BUILT:=$(PKG_BUILD_DIR)/.built
STAMP_INSTALLED:=$(STAGING_DIR)/stamp/.$(PKG_DIR_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),)_installed
STAGING_FILES_LIST:=$(PKG_DIR_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),).list
define CleanStaging
rm -f $(STAMP_INSTALLED)
@-(\
if [ -f $(STAGING_DIR)/packages/$(STAGING_FILES_LIST) ]; then \
$(SCRIPT_DIR)/clean-package.sh \
"$(STAGING_DIR)/packages/$(STAGING_FILES_LIST)" \
"$(STAGING_DIR)"; \
fi; \
)
endef
PKG_INSTALL_STAMP:=$(PKG_INFO_DIR)/$(PKG_DIR_NAME).$(if $(BUILD_VARIANT),$(BUILD_VARIANT),default).install
include $(INCLUDE_DIR)/package-defaults.mk
@@ -96,6 +114,8 @@ include $(INCLUDE_DIR)/package-ipkg.mk
include $(INCLUDE_DIR)/package-bin.mk
include $(INCLUDE_DIR)/autotools.mk
_pkg_target:=$(if $(QUILT),,.)
override MAKEFLAGS=
CONFIG_SITE:=$(INCLUDE_DIR)/site/$(ARCH)
CUR_MAKEFILE:=$(filter-out Makefile,$(firstword $(MAKEFILE_LIST)))
@@ -113,11 +133,28 @@ ifeq ($(DUMP)$(filter prereq clean refresh update,$(MAKECMDGOALS)),)
endif
endif
ifdef USE_GIT_SRC_CHECKOUT
define Build/Prepare/Default
mkdir -p $(PKG_BUILD_DIR)
ln -s $(TOPDIR)/git-src/$(PKG_NAME)/.git $(PKG_BUILD_DIR)/.git
( cd $(PKG_BUILD_DIR); \
git checkout .; \
git submodule update --recursive; \
git submodule foreach git config --unset core.worktree; \
git submodule foreach git checkout .; \
)
endef
endif
ifdef USE_GIT_TREE
define Build/Prepare/Default
mkdir -p $(PKG_BUILD_DIR)
ln -s $(CURDIR)/git-src $(PKG_BUILD_DIR)/.git
( cd $(PKG_BUILD_DIR); git checkout .)
( cd $(PKG_BUILD_DIR); \
git checkout .; \
git submodule update --recursive; \
git submodule foreach git config --unset core.worktree; \
git submodule foreach git checkout .; \
)
endef
endif
ifdef USE_SOURCE_DIR
@@ -130,19 +167,25 @@ ifdef USE_SOURCE_DIR
endif
define Build/Exports/Default
$(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR)/usr/share/aclocal $$(STAGING_DIR)/usr/share/aclocal-* $$(STAGING_DIR)/host/share/aclocal $$(STAGING_DIR)/host/share/aclocal-*),-I $$(p))
$(1) : export ACLOCAL_INCLUDE=$$(foreach p,$$(wildcard $$(STAGING_DIR)/usr/share/aclocal $$(STAGING_DIR)/usr/share/aclocal-* $$(STAGING_DIR_HOSTPKG)/share/aclocal $$(STAGING_DIR_HOSTPKG)/share/aclocal-* $$(STAGING_DIR)/host/share/aclocal $$(STAGING_DIR)/host/share/aclocal-*),-I $$(p))
$(1) : export STAGING_PREFIX=$$(STAGING_DIR)/usr
$(1) : export PATH=$$(TARGET_PATH_PKG)
$(1) : export CONFIG_SITE:=$$(CONFIG_SITE)
$(1) : export PKG_CONFIG_PATH:=$$(PKG_CONFIG_PATH)
$(1) : export PKG_CONFIG_LIBDIR:=$$(PKG_CONFIG_PATH)
$(1) : export CCACHE_DIR:=$(STAGING_DIR)/ccache
$(if $(CONFIG_CCACHE),$(1) : export CCACHE_DIR:=$(STAGING_DIR)/ccache)
endef
Build/Exports=$(Build/Exports/Default)
define Build/CoreTargets
STAMP_PREPARED:=$$(STAMP_PREPARED)
STAMP_CONFIGURED:=$$(STAMP_CONFIGURED)
$(if $(QUILT),$(Build/Quilt))
$(call Build/Autoclean)
$(call DefaultTargets)
$(DL_DIR)/$(FILE): FORCE
download:
$(foreach hook,$(Hooks/Download),
@@ -153,6 +196,7 @@ define Build/CoreTargets
$(STAMP_PREPARED): $(STAMP_PREPARED_DEPENDS)
@-rm -rf $(PKG_BUILD_DIR)
@mkdir -p $(PKG_BUILD_DIR)
touch $$@_check
$(foreach hook,$(Hooks/Prepare/Pre),$(call $(hook))$(sep))
$(Build/Prepare)
$(foreach hook,$(Hooks/Prepare/Post),$(call $(hook))$(sep))
@@ -160,15 +204,17 @@ define Build/CoreTargets
$(call Build/Exports,$(STAMP_CONFIGURED))
$(STAMP_CONFIGURED): $(STAMP_PREPARED) $(STAMP_CONFIGURED_DEPENDS)
rm -f $(STAMP_CONFIGURED_WILDCARD)
$(CleanStaging)
$(foreach hook,$(Hooks/Configure/Pre),$(call $(hook))$(sep))
$(Build/Configure)
$(foreach hook,$(Hooks/Configure/Post),$(call $(hook))$(sep))
rm -f $(STAMP_CONFIGURED_WILDCARD)
touch $$@
$(call Build/Exports,$(STAMP_BUILT))
$(STAMP_BUILT): $(STAMP_CONFIGURED) $(STAMP_BUILT_DEPENDS)
rm -f $$@
touch $$@_check
$(foreach hook,$(Hooks/Compile/Pre),$(call $(hook))$(sep))
$(Build/Compile)
$(foreach hook,$(Hooks/Compile/Post),$(call $(hook))$(sep))
@@ -203,31 +249,31 @@ define Build/CoreTargets
touch $$@
ifdef Build/InstallDev
compile: $(STAMP_INSTALLED)
$(_pkg_target)compile: $(STAMP_INSTALLED)
endif
prepare: $(STAMP_PREPARED)
configure: $(STAMP_CONFIGURED)
dist: $(STAMP_CONFIGURED)
distcheck: $(STAMP_CONFIGURED)
$(_pkg_target)prepare: $(STAMP_PREPARED)
$(_pkg_target)configure: $(STAMP_CONFIGURED)
$(_pkg_target)dist: $(STAMP_CONFIGURED)
$(_pkg_target)distcheck: $(STAMP_CONFIGURED)
ifneq ($(CONFIG_AUTOREMOVE),)
compile:
-touch -r $(PKG_BUILD_DIR)/.built $(PKG_BUILD_DIR)/.autoremove 2>/dev/null >/dev/null
$(FIND) $(PKG_BUILD_DIR) -mindepth 1 -maxdepth 1 -not '(' -type f -and -name '.*' -and -size 0 ')' -and -not -name '.pkgdir' | \
$(XARGS) rm -rf
endif
endef
define Build/DefaultTargets
$(if $(USE_SOURCE_DIR)$(USE_GIT_TREE),,$(if $(strip $(PKG_SOURCE_URL)),$(call Download,default)))
$(if $(USE_SOURCE_DIR)$(USE_GIT_TREE)$(USE_GIT_SRC_CHECKOUT),,$(if $(strip $(PKG_SOURCE_URL)),$(call Download,default)))
$(if $(DUMP),,$(Build/CoreTargets))
define Build/DefaultTargets
endef
endef
define Build/IncludeOverlay
$(eval -include $(wildcard $(TOPDIR)/overlay/*/$(PKG_DIR_NAME).mk))
define Build/IncludeOverlay
endef
endef
define BuildPackage
$(Build/IncludeOverlay)
$(eval $(Package/Default))
$(eval $(Package/$(1)))
@@ -242,7 +288,7 @@ endef
endif
BUILD_PACKAGES += $(1)
$(STAMP_PREPARED): $$(if $(QUILT)$(DUMP),,$(call find_library_dependencies,$(DEPENDS)))
$(STAMP_PREPARED): $$(if $(QUILT)$(DUMP),,$(call find_library_dependencies,$(1)))
$(foreach FIELD, TITLE CATEGORY SECTION VERSION,
ifeq ($($(FIELD)),)
@@ -281,25 +327,26 @@ Build/DistCheck=$(call Build/DistCheck/Default,)
.PHONY: prepare-package-install
prepare-package-install:
@mkdir -p $(PKG_INFO_DIR)
@touch $(PKG_INSTALL_STAMP).clean
@rm -f $(PKG_INSTALL_STAMP)
@echo "$(filter-out essential nonshared,$(PKG_FLAGS))" > $(PKG_INSTALL_STAMP).flags
$(PACKAGE_DIR):
mkdir -p $@
dumpinfo:
download:
prepare:
configure:
compile: prepare-package-install
compile:
.install: .compile
install: compile
clean: FORCE
force-clean-build: FORCE
rm -rf $(PKG_BUILD_DIR)
clean-build: $(if $(wildcard $(PKG_BUILD_DIR)/.autoremove),force-clean-build)
clean: force-clean-build
$(CleanStaging)
$(call Build/UninstallDev,$(STAGING_DIR),$(STAGING_DIR_HOST))
$(Build/Clean)
rm -f $(STAGING_DIR)/packages/$(STAGING_FILES_LIST) $(STAGING_DIR_HOST)/packages/$(STAGING_FILES_LIST)
rm -rf $(PKG_BUILD_DIR)
dist:
$(Build/Dist)

View File

@@ -7,8 +7,6 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/prereq.mk
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/host-build.mk
SHELL:=sh
PKG_NAME:=Build dependency
@@ -20,41 +18,35 @@ $(eval $(call TestHostCommand,working-make, \
$(MAKE) -v | grep -E 'Make (3\.8[1-9]|3\.9[0-9]|[4-9]\.)'))
$(eval $(call TestHostCommand,case-sensitive-fs, \
LEDE can only be built on a case-sensitive filesystem, \
OpenWrt can only be built on a case-sensitive filesystem, \
rm -f $(TMP_DIR)/test.*; touch $(TMP_DIR)/test.fs; \
test ! -f $(TMP_DIR)/test.FS))
$(eval $(call TestHostCommand,proper-umask, \
Please build with umask 022 - other values produce broken packages, \
umask | grep -xE 00[012][012]))
umask | grep -xE 0?0[012][012]))
$(eval $(call SetupHostCommand,gcc, \
Please install the GNU C Compiler (gcc), \
$(CC) --version | grep gcc, \
gcc --version | grep gcc, \
gcc49 --version | grep gcc, \
gcc48 --version | grep gcc, \
gcc47 --version | grep gcc, \
gcc46 --version | grep gcc, \
gcc --version | grep Apple.LLVM ))
Please install the GNU C Compiler (gcc) 4.8 or later, \
$(CC) -dumpversion | grep -E '^(4\.[8-9]|[5-9]\.?|10\.?)', \
gcc -dumpversion | grep -E '^(4\.[8-9]|[5-9]\.?|10\.?)', \
gcc --version | grep -E 'Apple.(LLVM|clang)' ))
$(eval $(call TestHostCommand,working-gcc, \
Please reinstall the GNU C Compiler - it appears to be broken, \
\nPlease reinstall the GNU C Compiler (4.8 or later) - \
it appears to be broken, \
echo 'int main(int argc, char **argv) { return 0; }' | \
gcc -x c -o $(TMP_DIR)/a.out -))
$(eval $(call SetupHostCommand,g++, \
Please install the GNU C++ Compiler (g++), \
$(CXX) --version | grep g++, \
g++ --version | grep g++, \
g++49 --version | grep g++, \
g++48 --version | grep g++, \
g++47 --version | grep g++, \
g++46 --version | grep g++, \
g++ --version | grep Apple.LLVM ))
Please install the GNU C++ Compiler (g++) 4.8 or later, \
$(CXX) -dumpversion | grep -E '^(4\.[8-9]|[5-9]\.?|10\.?)', \
g++ -dumpversion | grep -E '^(4\.[8-9]|[5-9]\.?|10\.?)', \
g++ --version | grep -E 'Apple.(LLVM|clang)' ))
$(eval $(call TestHostCommand,working-g++, \
Please reinstall the GNU C++ Compiler - it appears to be broken, \
\nPlease reinstall the GNU C++ Compiler (4.8 or later) - \
it appears to be broken, \
echo 'int main(int argc, char **argv) { return 0; }' | \
g++ -x c++ -o $(TMP_DIR)/a.out - -lstdc++ && \
$(TMP_DIR)/a.out))
@@ -70,11 +62,6 @@ else
zlib_link_flags := -lz
endif
$(eval $(call TestHostCommand,zlib, \
Please install a static zlib. (Missing libz.a or zlib.h), \
echo 'int main(int argc, char **argv) { gzdopen(0, "rb"); return 0; }' | \
gcc -include zlib.h -x c -o $(TMP_DIR)/a.out - $(zlib_link_flags)))
$(eval $(call TestHostCommand,perl-thread-queue, \
Please install the Perl Thread::Queue module, \
perl -MThread::Queue -e 1))
@@ -123,9 +110,9 @@ $(eval $(call SetupHostCommand,getopt, \
getopt -o t --long test -- --test | grep '^ *--test *--'))
$(eval $(call SetupHostCommand,stat,Cannot find a file stat utility, \
gnustat -c%s $(TMP_DIR)/.host.mk, \
gstat -c%s $(TMP_DIR)/.host.mk, \
stat -c%s $(TMP_DIR)/.host.mk))
gnustat -c%s $(TOPDIR)/Makefile, \
gstat -c%s $(TOPDIR)/Makefile, \
stat -c%s $(TOPDIR)/Makefile))
$(eval $(call SetupHostCommand,unzip,Please install 'unzip', \
unzip 2>&1 | grep zipfile, \
@@ -140,10 +127,12 @@ $(eval $(call SetupHostCommand,wget,Please install GNU 'wget', \
$(eval $(call SetupHostCommand,perl,Please install Perl 5.x, \
perl --version | grep "perl.*v5"))
$(eval $(call CleanupPython3))
$(eval $(call SetupHostCommand,python,Please install Python 2.x, \
python2.7 -V 2>&1 | grep Python, \
python2 -V 2>&1 | grep Python, \
python -V 2>&1 | grep Python))
python2.7 -V 2>&1 | grep 'Python 2.7', \
python2 -V 2>&1 | grep 'Python 2', \
python -V 2>&1 | grep 'Python 2'))
$(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.7.12.2, \
git --exec-path | xargs -I % -- grep -q -- --recursive %/git-submodule))

View File

@@ -66,6 +66,18 @@ define RequireHeader
$$(eval $$(call Require,$(1),$(2)))
endef
define CleanupPython3
define Require/python3-cleanup
if [ -f "$(STAGING_DIR_HOST)/bin/python" ] && \
$(STAGING_DIR_HOST)/bin/python -V 2>&1 | \
grep -q 'Python 3'; then \
rm $(STAGING_DIR_HOST)/bin/python; \
fi
endef
$$(eval $$(call Require,python3-cleanup))
endef
define QuoteHostCommand
'$(subst ','"'"',$(strip $(1)))'
endef
@@ -90,7 +102,8 @@ define SetupHostCommand
for cmd in $(call QuoteHostCommand,$(3)) $(call QuoteHostCommand,$(4)) \
$(call QuoteHostCommand,$(5)) $(call QuoteHostCommand,$(6)) \
$(call QuoteHostCommand,$(7)) $(call QuoteHostCommand,$(8)) \
$(call QuoteHostCommand,$(9)); do \
$(call QuoteHostCommand,$(9)) $(call QuoteHostCommand,$(10)) \
$(call QuoteHostCommand,$(11)) $(call QuoteHostCommand,$(12)); do \
if [ -n "$$$$$$$$cmd" ]; then \
bin="$$$$$$$$(PATH="$(subst $(space),:,$(filter-out $(STAGING_DIR_HOST)/%,$(subst :,$(space),$(PATH))))" \
which "$$$$$$$${cmd%% *}")"; \

View File

@@ -4,22 +4,43 @@
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
ifneq ($(if $(DUMP),1,$(__quilt_inc)),1)
__quilt_inc:=1
ifeq ($(TARGET_BUILD),1)
PKG_BUILD_DIR:=$(LINUX_DIR)
endif
ifneq ($(filter host-refresh refresh,$(MAKECMDGOALS)),)
override QUILT=1
override HOST_QUILT=1
endif
ifneq ($(PKG_BUILD_DIR),)
QUILT?=$(if $(wildcard $(PKG_BUILD_DIR)/.quilt_used),y)
ifneq ($(QUILT),)
STAMP_CHECKED:=$(PKG_BUILD_DIR)/.quilt_checked
override CONFIG_AUTOREBUILD=
override CONFIG_AUTOREMOVE=
quilt-check: $(STAMP_CHECKED)
endif
endif
ifneq ($(HOST_BUILD_DIR),)
HOST_QUILT?=$(if $(findstring command,$(origin QUILT)),$(QUILT),$(if $(wildcard $(HOST_BUILD_DIR)/.quilt_used),y))
ifneq ($(HOST_QUILT),)
HOST_STAMP_CHECKED:=$(HOST_BUILD_DIR)/.quilt_checked
override CONFIG_AUTOREBUILD=
override CONFIG_AUTOREMOVE=
host-quilt-check: $(HOST_STAMP_CHECKED)
endif
endif
ifneq ($(if $(DUMP),1,$(__quilt_inc)),1)
__quilt_inc:=1
PATCH_DIR?=./patches
FILES_DIR?=./files
HOST_PATCH_DIR?=$(PATCH_DIR)
HOST_FILES_DIR?=$(FILES_DIR)
ifeq ($(MAKECMDGOALS),refresh)
override QUILT=1
override HOST_QUILT=1
endif
QUILT_CMD:=quilt --quiltrc=-
define filter_series
@@ -59,24 +80,6 @@ define HostPatchDir
$(call PatchDir/$(if $(strip $(HOST_QUILT)),Quilt,Default),$(strip $(1)),$(strip $(2)),$(strip $(3)))
endef
ifneq ($(PKG_BUILD_DIR),)
QUILT?=$(if $(wildcard $(PKG_BUILD_DIR)/.quilt_used),y)
ifneq ($(QUILT),)
STAMP_CHECKED:=$(PKG_BUILD_DIR)/.quilt_checked
override CONFIG_AUTOREBUILD=
quilt-check: $(STAMP_CHECKED)
endif
endif
ifneq ($(HOST_BUILD_DIR),)
HOST_QUILT?=$(if $(findstring command,$(origin QUILT)),$(QUILT),$(if $(wildcard $(HOST_BUILD_DIR)/.quilt_used),y))
ifneq ($(HOST_QUILT),)
HOST_STAMP_CHECKED:=$(HOST_BUILD_DIR)/.quilt_checked
override CONFIG_AUTOREBUILD=
host-quilt-check: $(HOST_STAMP_CHECKED)
endif
endif
define Host/Patch/Default
$(if $(HOST_QUILT),rm -rf $(HOST_BUILD_DIR)/patches; mkdir -p $(HOST_BUILD_DIR)/patches)
$(call HostPatchDir,$(HOST_BUILD_DIR),$(HOST_PATCH_DIR),)
@@ -91,11 +94,17 @@ endef
kernel_files=$(foreach fdir,$(GENERIC_FILES_DIR) $(FILES_DIR),$(fdir)/.)
define Kernel/Patch/Default
$(if $(QUILT),rm -rf $(PKG_BUILD_DIR)/patches; mkdir -p $(PKG_BUILD_DIR)/patches)
$(if $(QUILT),rm -rf $(LINUX_DIR)/patches; mkdir -p $(LINUX_DIR)/patches)
$(if $(kernel_files),$(CP) $(kernel_files) $(LINUX_DIR)/)
find $(LINUX_DIR)/ -name \*.rej -or -name \*.orig | $(XARGS) rm -f
$(call PatchDir,$(PKG_BUILD_DIR),$(GENERIC_PATCH_DIR),generic/)
$(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR),platform/)
if [ -d $(GENERIC_PLATFORM_DIR)/patches$(if $(wildcard $(GENERIC_PLATFORM_DIR)/patches-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER)) ]; then \
echo "generic patches directory is present. please move your patches to the pending directory" ; \
exit 1; \
fi
$(call PatchDir,$(LINUX_DIR),$(GENERIC_BACKPORT_DIR),generic-backport/)
$(call PatchDir,$(LINUX_DIR),$(GENERIC_PATCH_DIR),generic/)
$(call PatchDir,$(LINUX_DIR),$(GENERIC_HACK_DIR),generic-hack/)
$(call PatchDir,$(LINUX_DIR),$(PATCH_DIR),platform/)
endef
define Quilt/RefreshDir
@@ -121,7 +130,9 @@ define Quilt/Refresh/Kernel
echo "All kernel patches must start with either generic/ or platform/"; \
false; \
}
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(GENERIC_BACKPORT_DIR),generic-backport/)
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(GENERIC_PATCH_DIR),generic/)
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(GENERIC_HACK_DIR),generic-hack/)
$(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR),platform/)
endef

View File

@@ -1,5 +1,3 @@
include $(INCLUDE_DIR)/feeds.mk
ifdef CONFIG_USE_MKLIBS
define mklibs
rm -rf $(TMP_DIR)/mklibs-progs $(TMP_DIR)/mklibs-out
@@ -63,10 +61,11 @@ ifdef CONFIG_CLEAN_IPKG
endif
define prepare_rootfs
@if [ -d $(TOPDIR)/files ]; then \
$(call file_copy,$(TOPDIR)/files/.,$(1)); \
fi
$(if $(2),@if [ -d '$(2)' ]; then \
$(call file_copy,$(2)/.,$(1)); \
fi)
@mkdir -p $(1)/etc/rc.d
@mkdir -p $(1)/var/lock
@( \
cd $(1); \
for script in ./usr/lib/opkg/info/*.postinst; do \
@@ -79,7 +78,13 @@ define prepare_rootfs
done; \
for script in ./etc/init.d/*; do \
grep '#!/bin/sh /etc/rc.common' $$script >/dev/null || continue; \
IPKG_INSTROOT=$(1) $$(which bash) ./etc/rc.common $$script enable; \
if ! echo " $(3) " | grep -q " $$(basename $$script) "; then \
IPKG_INSTROOT=$(1) $$(which bash) ./etc/rc.common $$script enable; \
echo "Enabling" $$(basename $$script); \
else \
IPKG_INSTROOT=$(1) $$(which bash) ./etc/rc.common $$script disable; \
echo "Disabling" $$(basename $$script); \
fi; \
done || true \
)
$(if $(SOURCE_DATE_EPOCH),sed -i "s/Installed-Time: .*/Installed-Time: $(SOURCE_DATE_EPOCH)/" $(1)/usr/lib/opkg/status)
@@ -87,8 +92,11 @@ define prepare_rootfs
@-find $(1) -name .svn | $(XARGS) rm -rf
@-find $(1) -name .git | $(XARGS) rm -rf
@-find $(1) -name '.#*' | $(XARGS) rm -f
rm -rf $(1)/tmp/*
rm -f $(1)/usr/lib/opkg/lists/*
rm -f $(1)/usr/lib/opkg/info/*.postinst*
rm -f $(1)/var/lock/*.lock
rm -rf $(1)/boot
$(call clean_ipkg,$(1))
$(call mklibs,$(1))
endef

View File

@@ -3,8 +3,6 @@ TMP_DIR:=$(TOPDIR)/tmp
all: $(TMP_DIR)/.$(SCAN_TARGET)
include $(TOPDIR)/include/host.mk
SCAN_TARGET ?= packageinfo
SCAN_NAME ?= package
SCAN_DIR ?= package
@@ -12,10 +10,24 @@ TARGET_STAMP:=$(TMP_DIR)/info/.files-$(SCAN_TARGET).stamp
FILELIST:=$(TMP_DIR)/info/.files-$(SCAN_TARGET)-$(SCAN_COOKIE)
OVERRIDELIST:=$(TMP_DIR)/info/.overrides-$(SCAN_TARGET)-$(SCAN_COOKIE)
export PATH:=$(TOPDIR)/staging_dir/host/bin:$(PATH)
ifeq ($(SCAN_NAME),target)
SCAN_DEPS=image/Makefile profiles/*.mk $(TOPDIR)/include/kernel*.mk $(TOPDIR)/include/target.mk image/*.mk
else
SCAN_DEPS=$(TOPDIR)/include/package*.mk
endif
ifeq ($(IS_TTY),1)
define progress
ifneq ($(strip $(NO_COLOR)),1)
define progress
printf "\033[M\r$(1)" >&2;
endef
endef
else
define progress
printf "\r$(1)" >&2;
endef
endif
else
define progress
:;

26
include/site/powerpc64 Normal file
View File

@@ -0,0 +1,26 @@
#!/bin/sh
. $TOPDIR/include/site/linux
ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
ac_cv_sizeof_char=1
ac_cv_sizeof_char_p=8
ac_cv_sizeof_double=8
ac_cv_sizeof_float=4
ac_cv_sizeof_int=4
ac_cv_sizeof_long=8
ac_cv_sizeof_long_double=16
ac_cv_sizeof_long_int=8
ac_cv_sizeof_long_long=8
ac_cv_sizeof_long_long_int=8
ac_cv_sizeof_short=2
ac_cv_sizeof_short_int=2
ac_cv_sizeof_signed_char=1
ac_cv_sizeof_unsigned_char=1
ac_cv_sizeof_unsigned_int=4
ac_cv_sizeof_unsigned_long=8
ac_cv_sizeof_unsigned_long_int=8
ac_cv_sizeof_unsigned_long_long_int=8
ac_cv_sizeof_unsigned_short=2
ac_cv_sizeof_unsigned_short_int=2
ac_cv_sizeof_void_p=8

View File

@@ -9,7 +9,7 @@ ifeq ($(MAKECMDGOALS),prereq)
SUBTARGETS:=prereq
PREREQ_ONLY:=1
else
SUBTARGETS:=clean download prepare compile install update refresh prereq dist distcheck configure check
SUBTARGETS:=$(DEFAULT_SUBDIR_TARGETS)
endif
subtarget-default = $(filter-out ., \
@@ -29,6 +29,11 @@ endef
lastdir=$(word $(words $(subst /, ,$(1))),$(subst /, ,$(1)))
diralias=$(if $(findstring $(1),$(call lastdir,$(1))),,$(call lastdir,$(1)))
subdir_make_opts = \
-r -C $(1) \
BUILD_SUBDIR="$(1)" \
BUILD_VARIANT="$(4)"
# 1: subdir
# 2: target
# 3: build type
@@ -38,26 +43,36 @@ log_make = \
$(if $(BUILD_LOG), \
set -o pipefail; \
mkdir -p $(BUILD_LOG_DIR)/$(1)$(if $(4),/$(4));) \
$$(SUBMAKE) -r -C $(1) $(if $(3),$(3)-)$(2) \
BUILD_SUBDIR="$(1)" \
BUILD_VARIANT="$(4)" \
$(SCRIPT_DIR)/time.pl "time: $(1)$(if $(4),/$(4))/$(if $(3),$(3)-)$(2)" \
$$(SUBMAKE) $(subdir_make_opts) $(if $(3),$(3)-)$(2) \
$(if $(BUILD_LOG),SILENT= 2>&1 | tee $(BUILD_LOG_DIR)/$(1)$(if $(4),/$(4))/$(if $(3),$(3)-)$(2).txt)
ifdef CONFIG_AUTOREMOVE
rebuild_check = \
@-$$(NO_TRACE_MAKE) $(subdir_make_opts) check-depends >/dev/null 2>/dev/null; \
$(if $(BUILD_LOG),mkdir -p $(BUILD_LOG_DIR)/$(1)$(if $(4),/$(4));) \
$$(NO_TRACE_MAKE) $(if $(BUILD_LOG),-d) -q $(subdir_make_opts) .$(if $(3),$(3)-)$(2) \
> $(if $(BUILD_LOG),$(BUILD_LOG_DIR)/$(1)$(if $(4),/$(4))/check-$(if $(3),$(3)-)$(2).txt,/dev/null) 2>&1 || \
$$(SUBMAKE) $(subdir_make_opts) clean-build >/dev/null 2>/dev/null
endif
# Parameters: <subdir>
define subdir
$(call warn,$(1),d,D $(1))
$(foreach bd,$($(1)/builddirs),
$(call warn,$(1),d,BD $(1)/$(bd))
$(foreach target,$(SUBTARGETS),
$(foreach target,$(SUBTARGETS) $($(1)/subtargets),
$(foreach btype,$(buildtypes-$(bd)),
$(call warn_eval,$(1)/$(bd),t,T,$(1)/$(bd)/$(btype)/$(target): $(if $(QUILT),,$($(1)/$(bd)/$(btype)/$(target)) $(call $(1)//$(btype)/$(target),$(1)/$(bd)/$(btype))))
$(call warn_eval,$(1)/$(bd),t,T,$(1)/$(bd)/$(btype)/$(target): $(if $(NO_DEPS)$(QUILT),,$($(1)/$(bd)/$(btype)/$(target)) $(call $(1)//$(btype)/$(target),$(1)/$(bd)/$(btype))))
$(call log_make,$(1)/$(bd),$(target),$(btype),$(filter-out __default,$(variant))) \
$(if $(findstring $(bd),$($(1)/builddirs-ignore-$(btype)-$(target))), || $(call ERROR,$(1), ERROR: $(1)/$(bd) [$(btype)] failed to build.))
$(if $(call diralias,$(bd)),$(call warn_eval,$(1)/$(bd),l,T,$(1)/$(call diralias,$(bd))/$(btype)/$(target): $(1)/$(bd)/$(btype)/$(target)))
)
$(call warn_eval,$(1)/$(bd),t,T,$(1)/$(bd)/$(target): $(if $(QUILT),,$($(1)/$(bd)/$(target)) $(call $(1)//$(target),$(1)/$(bd))))
$(call warn_eval,$(1)/$(bd),t,T,$(1)/$(bd)/$(target): $(if $(NO_DEPS)$(QUILT),,$($(1)/$(bd)/$(target)) $(call $(1)//$(target),$(1)/$(bd))))
$(foreach variant,$(if $(BUILD_VARIANT),$(BUILD_VARIANT),$(if $(strip $($(1)/$(bd)/variants)),$($(1)/$(bd)/variants),$(if $($(1)/$(bd)/default-variant),$($(1)/$(bd)/default-variant),__default))),
$(if $(BUILD_LOG),@mkdir -p $(BUILD_LOG_DIR)/$(1)/$(bd)/$(filter-out __default,$(variant)))
$(if $($(1)/autoremove),$(call rebuild_check,$(1)/$(bd),$(target),,$(filter-out __default,$(variant))))
$(call log_make,$(1)/$(bd),$(target),,$(filter-out __default,$(variant))) \
$(if $(findstring $(bd),$($(1)/builddirs-ignore-$(target))), || $(call ERROR,$(1), ERROR: $(1)/$(bd) failed to build$(if $(filter-out __default,$(variant)), (build variant: $(variant))).))
)
@@ -67,7 +82,7 @@ define subdir
)
)
)
$(foreach target,$(SUBTARGETS),$(call subtarget,$(1),$(target)))
$(foreach target,$(SUBTARGETS) $($(1)/subtargets),$(call subtarget,$(1),$(target)))
endef
ifndef DUMP_TARGET_DB

View File

@@ -13,11 +13,11 @@ __target_inc=1
DEVICE_TYPE?=router
# Default packages - the really basic set
DEFAULT_PACKAGES:=base-files libc libgcc busybox dropbear mtd uci opkg netifd fstools uclient-fetch logd
DEFAULT_PACKAGES:=base-files libc libgcc busybox dropbear mtd uci opkg netifd fstools uclient-fetch logd urandom-seed urngd
# For nas targets
DEFAULT_PACKAGES.nas:=block-mount fdisk lsblk mdadm
# For router targets
DEFAULT_PACKAGES.router:=dnsmasq iptables ip6tables ppp ppp-mod-pppoe firewall odhcpd odhcp6c
DEFAULT_PACKAGES.router:=dnsmasq iptables ip6tables ppp ppp-mod-pppoe firewall odhcpd-ipv6only odhcp6c kmod-ipt-offload
DEFAULT_PACKAGES.bootloader:=
ifneq ($(DUMP),)
@@ -51,11 +51,15 @@ else
endif
endif
ifneq ($(filter 4.9,$(KERNEL_PATCHVER)),)
DEFAULT_PACKAGES.router:=$(filter-out kmod-ipt-offload,$(DEFAULT_PACKAGES.router))
endif
# Add device specific packages (here below to allow device type set from subtarget)
DEFAULT_PACKAGES += $(DEFAULT_PACKAGES.$(DEVICE_TYPE))
filter_packages = $(filter-out -% $(patsubst -%,%,$(filter -%,$(1))),$(1))
extra_packages = $(if $(filter wpad-mini wpad nas,$(1)),iwinfo)
extra_packages = $(if $(filter wpad-mini wpad-basic wpad-basic-wolfssl wpad nas,$(1)),iwinfo)
define ProfileDefault
NAME:=
@@ -68,6 +72,7 @@ define Profile
$(eval $(call ProfileDefault))
$(eval $(call Profile/$(1)))
dumpinfo : $(call shexport,Profile/$(1)/Description)
PACKAGES := $(filter-out -%,$(PACKAGES))
DUMPINFO += \
echo "Target-Profile: $(1)"; \
$(if $(PRIORITY), echo "Target-Profile-Priority: $(PRIORITY)"; ) \
@@ -104,7 +109,9 @@ ifneq ($(TARGET_BUILD)$(if $(DUMP),,1),)
endif
GENERIC_PLATFORM_DIR := $(TOPDIR)/target/linux/generic
GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/patches$(if $(wildcard $(GENERIC_PLATFORM_DIR)/patches-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER))
GENERIC_BACKPORT_DIR := $(GENERIC_PLATFORM_DIR)/backport$(if $(wildcard $(GENERIC_PLATFORM_DIR)/backport-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER))
GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/pending$(if $(wildcard $(GENERIC_PLATFORM_DIR)/pending-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER))
GENERIC_HACK_DIR := $(GENERIC_PLATFORM_DIR)/hack$(if $(wildcard $(GENERIC_PLATFORM_DIR)/hack-$(KERNEL_PATCHVER)),-$(KERNEL_PATCHVER))
GENERIC_FILES_DIR := $(foreach dir,$(wildcard $(GENERIC_PLATFORM_DIR)/files $(GENERIC_PLATFORM_DIR)/files-$(KERNEL_PATCHVER)),"$(dir)")
__config_name_list = $(1)/config-$(KERNEL_PATCHVER) $(1)/config-default
@@ -167,7 +174,7 @@ ifeq ($(DUMP),1)
CPU_CFLAGS_mips64 = -mips64 -mtune=mips64 -mabi=64
CPU_CFLAGS_24kc = -mips32r2 -mtune=24kc
CPU_CFLAGS_74kc = -mips32r2 -mtune=74kc
CPU_CFLAGS_octeon = -march=octeon -mabi=64
CPU_CFLAGS_octeonplus = -march=octeon+ -mabi=64
endif
ifeq ($(ARCH),i386)
CPU_TYPE ?= pentium
@@ -176,25 +183,6 @@ ifeq ($(DUMP),1)
endif
ifneq ($(findstring arm,$(ARCH)),)
CPU_TYPE ?= xscale
CPU_CFLAGS_arm920t = -mcpu=arm920t
CPU_CFLAGS_arm926ej-s = -mcpu=arm926ej-s
CPU_CFLAGS_arm1136j-s = -mcpu=arm1136j-s
CPU_CFLAGS_arm1176jzf-s = -mcpu=arm1176jzf-s
CPU_CFLAGS_cortex-a5 = -mcpu=cortex-a5
CPU_CFLAGS_cortex-a7 = -mcpu=cortex-a7
CPU_CFLAGS_cortex-a8 = -mcpu=cortex-a8
CPU_CFLAGS_cortex-a9 = -mcpu=cortex-a9
CPU_CFLAGS_cortex-a15 = -mcpu=cortex-a15
CPU_CFLAGS_cortex-a53 = -mcpu=cortex-a53
CPU_CFLAGS_fa526 = -mcpu=fa526
CPU_CFLAGS_mpcore = -mcpu=mpcore
CPU_CFLAGS_xscale = -mcpu=xscale
ifeq ($(CONFIG_SOFT_FLOAT),)
CPU_CFLAGS_neon = -mfpu=neon
CPU_CFLAGS_vfp = -mfpu=vfp
CPU_CFLAGS_vfpv3 = -mfpu=vfpv3-d16
CPU_CFLAGS_neon-vfpv4 = -mfpu=neon-vfpv4
endif
endif
ifeq ($(ARCH),powerpc)
CPU_CFLAGS_603e:=-mcpu=603e
@@ -203,20 +191,24 @@ ifeq ($(DUMP),1)
CPU_CFLAGS_440:=-mcpu=440
CPU_CFLAGS_464fp:=-mcpu=464fp
endif
ifeq ($(ARCH),powerpc64)
CPU_TYPE ?= powerpc64
CPU_CFLAGS_powerpc64:=-mcpu=powerpc64
endif
ifeq ($(ARCH),sparc)
CPU_TYPE = sparc
CPU_CFLAGS_ultrasparc = -mcpu=ultrasparc
endif
ifeq ($(ARCH),aarch64)
CPU_TYPE ?= armv8-a
CPU_CFLAGS_armv8-a = -mcpu=armv8-a
CPU_TYPE ?= generic
CPU_CFLAGS_generic = -mcpu=generic
CPU_CFLAGS_cortex-a53 = -mcpu=cortex-a53
endif
ifeq ($(ARCH),arc)
CPU_TYPE ?= arc700
CPU_CFLAGS += -matomic
CPU_CFLAGS_arc700 = -marc700
CPU_CFLAGS_archs = -marchs
CPU_CFLAGS_arc700 = -mcpu=arc700
CPU_CFLAGS_archs = -mcpu=archs
endif
ifneq ($(CPU_TYPE),)
ifndef CPU_CFLAGS_$(CPU_TYPE)
@@ -233,6 +225,9 @@ ifeq ($(DUMP),1)
.SILENT: $(TMP_CONFIG)
.PRECIOUS: $(TMP_CONFIG)
ifdef KERNEL_TESTING_PATCHVER
FEATURES += testing-kernel
endif
ifneq ($(CONFIG_OF),)
FEATURES += dt
endif
@@ -291,6 +286,7 @@ define BuildTargets/DumpCurrent
echo 'Target-Optimization: $(if $(CFLAGS),$(CFLAGS),$(DEFAULT_CFLAGS))'; \
echo 'CPU-Type: $(CPU_TYPE)$(if $(CPU_SUBTYPE),+$(CPU_SUBTYPE))'; \
echo 'Linux-Version: $(LINUX_VERSION)'; \
$(if $(LINUX_TESTING_VERSION),echo 'Linux-Testing-Version: $(LINUX_TESTING_VERSION)';) \
echo 'Linux-Release: $(LINUX_RELEASE)'; \
echo 'Linux-Kernel-Arch: $(LINUX_KARCH)'; \
$(if $(SUBTARGET),,$(if $(DEFAULT_SUBTARGET), echo 'Default-Subtarget: $(DEFAULT_SUBTARGET)'; )) \

View File

@@ -6,12 +6,13 @@
#
override CONFIG_AUTOREBUILD=
override CONFIG_AUTOREMOVE=
REAL_STAGING_DIR_HOST:=$(STAGING_DIR_HOST)
STAGING_DIR_HOST:=$(TOOLCHAIN_DIR)
HOST_BUILD_PREFIX:=$(TOOLCHAIN_DIR)
BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/hardening.mk
HOST_STAMP_PREPARED=$(HOST_BUILD_DIR)/.prepared

View File

@@ -25,6 +25,9 @@ export SOURCE_DATE_EPOCH
export GIT_CONFIG_PARAMETERS='core.autocrlf=false'
export GIT_ASKPASS:=/bin/true
export MAKE_JOBSERVER=$(filter --jobserver%,$(MAKEFLAGS))
export GNU_HOST_NAME:=$(shell $(TOPDIR)/scripts/config.guess)
export HOST_OS:=$(shell uname)
export HOST_ARCH:=$(shell uname -m)
# prevent perforce from messing with the patch utility
unexport P4PORT P4USER P4CONFIG P4CLIENT
@@ -79,15 +82,15 @@ _ignore = $(foreach p,$(IGNORE_PACKAGES),--ignore $(p))
prepare-tmpinfo: FORCE
@+$(MAKE) -r -s staging_dir/host/.prereq-build $(PREP_MK)
mkdir -p tmp/info
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="packageinfo" SCAN_DIR="package" SCAN_NAME="package" SCAN_DEPS="$(TOPDIR)/include/package*.mk $(TOPDIR)/overlay/*/*.mk" SCAN_DEPTH=5 SCAN_EXTRA=""
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="targetinfo" SCAN_DIR="target/linux" SCAN_NAME="target" SCAN_DEPS="image/Makefile profiles/*.mk $(TOPDIR)/include/kernel*.mk $(TOPDIR)/include/target.mk" SCAN_DEPTH=2 SCAN_EXTRA="" SCAN_MAKEOPTS="TARGET_BUILD=1"
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="packageinfo" SCAN_DIR="package" SCAN_NAME="package" SCAN_DEPTH=5 SCAN_EXTRA=""
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="targetinfo" SCAN_DIR="target/linux" SCAN_NAME="target" SCAN_DEPTH=2 SCAN_EXTRA="" SCAN_MAKEOPTS="TARGET_BUILD=1"
for type in package target; do \
f=tmp/.$${type}info; t=tmp/.config-$${type}.in; \
[ "$$t" -nt "$$f" ] || ./scripts/$${type}-metadata.pl $(_ignore) config "$$f" > "$$t" || { rm -f "$$t"; echo "Failed to build $$t"; false; break; }; \
done
[ tmp/.config-feeds.in -nt tmp/.packagesubdirs ] || ./scripts/feeds feed_config > tmp/.config-feeds.in
[ tmp/.config-feeds.in -nt tmp/.packageauxvars ] || ./scripts/feeds feed_config > tmp/.config-feeds.in
./scripts/package-metadata.pl mk tmp/.packageinfo > tmp/.packagedeps || { rm -f tmp/.packagedeps; false; }
./scripts/package-metadata.pl subdirs tmp/.packageinfo > tmp/.packagesubdirs || { rm -f tmp/.packagesubdirs; false; }
./scripts/package-metadata.pl pkgaux tmp/.packageinfo > tmp/.packageauxvars || { rm -f tmp/.packageauxvars; false; }
touch $(TOPDIR)/tmp/.build
.config: ./scripts/config/conf $(if $(CONFIG_HAVE_DOT_CONFIG),,prepare-tmpinfo)
@@ -96,11 +99,19 @@ prepare-tmpinfo: FORCE
$(_SINGLE)$(NO_TRACE_MAKE) menuconfig $(PREP_MK); \
fi
ifneq ($(DISTRO_PKG_CONFIG),)
scripts/config/mconf: export PATH:=$(dir $(DISTRO_PKG_CONFIG)):$(PATH)
endif
scripts/config/mconf:
@$(_SINGLE)$(SUBMAKE) -s -C scripts/config all CC="$(HOSTCC_WRAPPER)"
$(eval $(call rdep,scripts/config,scripts/config/mconf))
scripts/config/qconf:
@$(_SINGLE)$(SUBMAKE) -s -C scripts/config qconf \
CC="$(HOSTCC_WRAPPER)" \
DISTRO-PKG-CONFIG="$(DISTRO_PKG_CONFIG)"
scripts/config/conf:
@$(_SINGLE)$(SUBMAKE) -s -C scripts/config conf CC="$(HOSTCC_WRAPPER)"
@@ -133,11 +144,17 @@ menuconfig: scripts/config/mconf prepare-tmpinfo FORCE
[ -L .config ] && export KCONFIG_OVERWRITECONFIG=1; \
$< Config.in
xconfig: scripts/config/qconf prepare-tmpinfo FORCE
if [ \! -e .config -a -e $(HOME)/.openwrt/defconfig ]; then \
cp $(HOME)/.openwrt/defconfig .config; \
fi
$< Config.in
prepare_kernel_conf: .config FORCE
ifeq ($(wildcard staging_dir/host/bin/quilt),)
prepare_kernel_conf:
@+$(SUBMAKE) -r tools/quilt/install
@+$(SUBMAKE) -r tools/quilt/compile
else
prepare_kernel_conf: ;
endif
@@ -145,6 +162,10 @@ endif
kernel_oldconfig: prepare_kernel_conf
$(_SINGLE)$(NO_TRACE_MAKE) -C target/linux oldconfig
ifneq ($(DISTRO_PKG_CONFIG),)
kernel_menuconfig: export PATH:=$(dir $(DISTRO_PKG_CONFIG)):$(PATH)
kernel_nconfig: export PATH:=$(dir $(DISTRO_PKG_CONFIG)):$(PATH)
endif
kernel_menuconfig: prepare_kernel_conf
$(_SINGLE)$(NO_TRACE_MAKE) -C target/linux menuconfig
@@ -153,7 +174,6 @@ kernel_nconfig: prepare_kernel_conf
staging_dir/host/.prereq-build: include/prereq-build.mk
mkdir -p tmp
rm -f tmp/.host.mk
@$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f $(TOPDIR)/include/prereq-build.mk prereq 2>/dev/null || { \
echo "Prerequisite check failed. Use FORCE=1 to override."; \
false; \

104
include/u-boot.mk Normal file
View File

@@ -0,0 +1,104 @@
PKG_NAME ?= u-boot
ifndef PKG_SOURCE_PROTO
PKG_SOURCE = $(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL = \
https://sources.openwrt.org \
ftp://ftp.denx.de/pub/u-boot
endif
PKG_BUILD_DIR = $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_TARGETS := bin
PKG_FLAGS:=nonshared
PKG_LICENSE:=GPL-2.0 GPL-2.0+
PKG_LICENSE_FILES:=Licenses/README
PKG_BUILD_PARALLEL:=1
export GCC_HONOUR_COPTS=s
define Package/u-boot/install/default
$(CP) $(patsubst %,$(PKG_BUILD_DIR)/%,$(UBOOT_IMAGE)) $(1)/
endef
Package/u-boot/install = $(Package/u-boot/install/default)
define U-Boot/Init
BUILD_TARGET:=
BUILD_SUBTARGET:=
BUILD_DEVICES:=
NAME:=
DEPENDS:=
HIDDEN:=
DEFAULT:=
VARIANT:=$(1)
UBOOT_CONFIG:=$(1)
UBOOT_IMAGE:=u-boot.bin
endef
TARGET_DEP = TARGET_$(BUILD_TARGET)$(if $(BUILD_SUBTARGET),_$(BUILD_SUBTARGET))
UBOOT_MAKE_FLAGS = \
HOSTCC="$(HOSTCC)" \
HOSTCFLAGS="$(HOST_CFLAGS) $(HOST_CPPFLAGS) -std=gnu11" \
HOSTLDFLAGS="$(HOST_LDFLAGS)"
define Build/U-Boot/Target
$(eval $(call U-Boot/Init,$(1)))
$(eval $(call U-Boot/Default,$(1)))
$(eval $(call U-Boot/$(1),$(1)))
define Package/u-boot-$(1)
SECTION:=boot
CATEGORY:=Boot Loaders
TITLE:=U-Boot for $(NAME)
VARIANT:=$(VARIANT)
DEPENDS:=@!IN_SDK $(DEPENDS)
HIDDEN:=$(HIDDEN)
ifneq ($(BUILD_TARGET),)
DEPENDS += @$(TARGET_DEP)
ifneq ($(BUILD_DEVICES),)
DEFAULT := y if ($(TARGET_DEP)_Default \
$(patsubst %,|| $(TARGET_DEP)_DEVICE_%,$(BUILD_DEVICES)) \
$(patsubst %,|| $(patsubst TARGET_%,TARGET_DEVICE_%,$(TARGET_DEP))_DEVICE_%,$(BUILD_DEVICES)))
endif
endif
$(if $(DEFAULT),DEFAULT:=$(DEFAULT))
URL:=http://www.denx.de/wiki/U-Boot
endef
define Package/u-boot-$(1)/install
$$(Package/u-boot/install)
endef
endef
define Build/Configure/U-Boot
+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) $(UBOOT_CONFIGURE_VARS) $(UBOOT_CONFIG)_config
endef
DTC=$(wildcard $(LINUX_DIR)/scripts/dtc/dtc)
define Build/Compile/U-Boot
+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
CROSS_COMPILE=$(TARGET_CROSS) \
$(if $(DTC),DTC="$(DTC)") \
$(UBOOT_MAKE_FLAGS)
endef
define BuildPackage/U-Boot/Defaults
Build/Configure/Default = $$$$(Build/Configure/U-Boot)
Build/Compile/Default = $$$$(Build/Compile/U-Boot)
endef
define BuildPackage/U-Boot
$(eval $(call BuildPackage/U-Boot/Defaults))
$(foreach type,$(if $(DUMP),$(UBOOT_TARGETS),$(BUILD_VARIANT)), \
$(eval $(call Build/U-Boot/Target,$(type)))
)
$(eval $(call Build/DefaultTargets))
$(foreach type,$(if $(DUMP),$(UBOOT_TARGETS),$(BUILD_VARIANT)), \
$(call BuildPackage,u-boot-$(type))
)
endef

View File

@@ -58,18 +58,13 @@ ifeq ($(strip $(UNPACK_CMD)),)
UNPACK_CMD=gzip -dc $(DL_DIR)/$(PKG_SOURCE) | $(TAR_CMD)
endif
endif
ifneq ($(strip $(CRLF_WORKAROUND)),)
CRLF_CMD := && find $(PKG_BUILD_DIR) -type f -print0 | xargs -0 perl -pi -e 's!\r$$$$!!g'
else
CRLF_CMD :=
endif
endif
ifdef PKG_BUILD_DIR
PKG_UNPACK ?= $(SH_FUNC) $(call UNPACK_CMD,$(PKG_BUILD_DIR)) $(call CRLF_CMD,$(PKG_BUILD_DIR))
PKG_UNPACK ?= $(SH_FUNC) $(call UNPACK_CMD,$(PKG_BUILD_DIR))
endif
ifdef HOST_BUILD_DIR
HOST_UNPACK ?= $(SH_FUNC) $(call UNPACK_CMD,$(HOST_BUILD_DIR)) $(call CRLF_CMD,$(HOST_BUILD_DIR))
HOST_UNPACK ?= $(SH_FUNC) $(call UNPACK_CMD,$(HOST_BUILD_DIR))
endif
endif # PKG_SOURCE

View File

@@ -54,7 +54,7 @@ ifeq ($(findstring s,$(OPENWRT_VERBOSE)),)
else
SILENT:=>/dev/null $(if $(findstring w,$(OPENWRT_VERBOSE)),,2>&1)
export QUIET:=1
SUBMAKE=cmd() { $(SILENT) $(MAKE) -s $$* < /dev/null || { echo "make $$*: build failed. Please re-run make with -j1 V=s to see what's going on"; false; } } 8>&1 9>&2; cmd
SUBMAKE=cmd() { $(SILENT) $(MAKE) -s "$$@" < /dev/null || { echo "make $$*: build failed. Please re-run make with -j1 V=s or V=sc for a higher verbosity level to see what's going on"; false; } } 8>&1 9>&2; cmd
endif
.SILENT: $(MAKECMDGOALS)

View File

@@ -10,13 +10,11 @@
# REVISION:=x
# SOURCE_DATE_EPOCH:=x
RELEASE:=Reboot
PKG_CONFIG_DEPENDS += \
CONFIG_VERSION_HOME_URL \
CONFIG_VERSION_BUG_URL \
CONFIG_VERSION_NUMBER \
CONFIG_VERSION_CODE \
CONFIG_VERSION_NICK \
CONFIG_VERSION_REPO \
CONFIG_VERSION_DIST \
CONFIG_VERSION_MANUFACTURER \
@@ -25,43 +23,40 @@ PKG_CONFIG_DEPENDS += \
CONFIG_VERSION_SUPPORT_URL \
CONFIG_VERSION_HWREV \
qstrip_escape=$(subst ','\'',$(call qstrip,$(1)))
#'
sanitize = $(call tolower,$(subst _,-,$(subst $(space),-,$(1))))
VERSION_NUMBER:=$(call qstrip_escape,$(CONFIG_VERSION_NUMBER))
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),17.01.6)
VERSION_NUMBER:=$(call qstrip,$(CONFIG_VERSION_NUMBER))
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),19.07.5)
VERSION_CODE:=$(call qstrip_escape,$(CONFIG_VERSION_CODE))
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),r3979-2252731af4)
VERSION_CODE:=$(call qstrip,$(CONFIG_VERSION_CODE))
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),r11257-5090152ae3)
VERSION_NICK:=$(call qstrip_escape,$(CONFIG_VERSION_NICK))
VERSION_NICK:=$(if $(VERSION_NICK),$(VERSION_NICK),$(RELEASE))
VERSION_REPO:=$(call qstrip,$(CONFIG_VERSION_REPO))
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),http://downloads.openwrt.org/releases/19.07.5)
VERSION_REPO:=$(call qstrip_escape,$(CONFIG_VERSION_REPO))
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),http://downloads.lede-project.org/releases/17.01.6)
VERSION_DIST:=$(call qstrip_escape,$(CONFIG_VERSION_DIST))
VERSION_DIST:=$(if $(VERSION_DIST),$(VERSION_DIST),LEDE)
VERSION_DIST:=$(call qstrip,$(CONFIG_VERSION_DIST))
VERSION_DIST:=$(if $(VERSION_DIST),$(VERSION_DIST),OpenWrt)
VERSION_DIST_SANITIZED:=$(call sanitize,$(VERSION_DIST))
VERSION_MANUFACTURER:=$(call qstrip_escape,$(CONFIG_VERSION_MANUFACTURER))
VERSION_MANUFACTURER:=$(if $(VERSION_MANUFACTURER),$(VERSION_MANUFACTURER),LEDE)
VERSION_MANUFACTURER:=$(call qstrip,$(CONFIG_VERSION_MANUFACTURER))
VERSION_MANUFACTURER:=$(if $(VERSION_MANUFACTURER),$(VERSION_MANUFACTURER),OpenWrt)
VERSION_MANUFACTURER_URL:=$(call qstrip_escape,$(CONFIG_VERSION_MANUFACTURER_URL))
VERSION_MANUFACTURER_URL:=$(if $(VERSION_MANUFACTURER_URL),$(VERSION_MANUFACTURER_URL),http://lede-project.org/)
VERSION_MANUFACTURER_URL:=$(call qstrip,$(CONFIG_VERSION_MANUFACTURER_URL))
VERSION_MANUFACTURER_URL:=$(if $(VERSION_MANUFACTURER_URL),$(VERSION_MANUFACTURER_URL),https://openwrt.org/)
VERSION_BUG_URL:=$(call qstrip_escape,$(CONFIG_VERSION_BUG_URL))
VERSION_BUG_URL:=$(if $(VERSION_BUG_URL),$(VERSION_BUG_URL),http://bugs.lede-project.org/)
VERSION_BUG_URL:=$(call qstrip,$(CONFIG_VERSION_BUG_URL))
VERSION_BUG_URL:=$(if $(VERSION_BUG_URL),$(VERSION_BUG_URL),https://bugs.openwrt.org/)
VERSION_SUPPORT_URL:=$(call qstrip_escape,$(CONFIG_VERSION_SUPPORT_URL))
VERSION_SUPPORT_URL:=$(if $(VERSION_SUPPORT_URL),$(VERSION_SUPPORT_URL),http://forum.lede-project.org/)
VERSION_HOME_URL:=$(call qstrip,$(CONFIG_VERSION_HOME_URL))
VERSION_HOME_URL:=$(if $(VERSION_HOME_URL),$(VERSION_HOME_URL),https://openwrt.org/)
VERSION_PRODUCT:=$(call qstrip_escape,$(CONFIG_VERSION_PRODUCT))
VERSION_SUPPORT_URL:=$(call qstrip,$(CONFIG_VERSION_SUPPORT_URL))
VERSION_SUPPORT_URL:=$(if $(VERSION_SUPPORT_URL),$(VERSION_SUPPORT_URL),https://forum.openwrt.org/)
VERSION_PRODUCT:=$(call qstrip,$(CONFIG_VERSION_PRODUCT))
VERSION_PRODUCT:=$(if $(VERSION_PRODUCT),$(VERSION_PRODUCT),Generic)
VERSION_HWREV:=$(call qstrip_escape,$(CONFIG_VERSION_HWREV))
VERSION_HWREV:=$(call qstrip,$(CONFIG_VERSION_HWREV))
VERSION_HWREV:=$(if $(VERSION_HWREV),$(VERSION_HWREV),v0)
define taint2sym
@@ -88,25 +83,29 @@ VERSION_TAINTS := $(strip $(foreach taint,$(VERSION_TAINT_SPECS), \
PKG_CONFIG_DEPENDS += $(foreach taint,$(VERSION_TAINT_SPECS),$(call taint2sym,$(taint)))
VERSION_SED:=$(SED) 's,%U,$(VERSION_REPO),g' \
-e 's,%V,$(VERSION_NUMBER),g' \
-e 's,%v,\L$(subst $(space),_,$(VERSION_NUMBER)),g' \
-e 's,%C,$(VERSION_CODE),g' \
-e 's,%c,\L$(subst $(space),_,$(VERSION_CODE)),g' \
-e 's,%N,$(VERSION_NICK),g' \
-e 's,%n,\L$(subst $(space),_,$(VERSION_NICK)),g' \
-e 's,%D,$(VERSION_DIST),g' \
-e 's,%d,\L$(subst $(space),_,$(VERSION_DIST)),g' \
-e 's,%R,$(REVISION),g' \
-e 's,%T,$(BOARD),g' \
-e 's,%S,$(BOARD)/$(if $(SUBTARGET),$(SUBTARGET),generic),g' \
-e 's,%A,$(ARCH_PACKAGES),g' \
-e 's,%t,$(VERSION_TAINTS),g' \
-e 's,%M,$(VERSION_MANUFACTURER),g' \
-e 's,%m,$(VERSION_MANUFACTURER_URL),g' \
-e 's,%b,$(VERSION_BUG_URL),g' \
-e 's,%s,$(VERSION_SUPPORT_URL),g' \
-e 's,%P,$(VERSION_PRODUCT),g' \
-e 's,%h,$(VERSION_HWREV),g'
# escape commas, backslashes, squotes, and ampersands for sed
define sed_escape
$(subst &,\&,$(subst $(comma),\$(comma),$(subst ','\'',$(subst \,\\,$(1)))))
endef
#'
VERSION_SED_SCRIPT:=$(SED) 's,%U,$(call sed_escape,$(VERSION_REPO)),g' \
-e 's,%V,$(call sed_escape,$(VERSION_NUMBER)),g' \
-e 's,%v,\L$(call sed_escape,$(subst $(space),_,$(VERSION_NUMBER))),g' \
-e 's,%C,$(call sed_escape,$(VERSION_CODE)),g' \
-e 's,%c,\L$(call sed_escape,$(subst $(space),_,$(VERSION_CODE))),g' \
-e 's,%D,$(call sed_escape,$(VERSION_DIST)),g' \
-e 's,%d,\L$(call sed_escape,$(subst $(space),_,$(VERSION_DIST))),g' \
-e 's,%R,$(call sed_escape,$(REVISION)),g' \
-e 's,%T,$(call sed_escape,$(BOARD)),g' \
-e 's,%S,$(call sed_escape,$(BOARD)/$(if $(SUBTARGET),$(SUBTARGET),generic)),g' \
-e 's,%A,$(call sed_escape,$(ARCH_PACKAGES)),g' \
-e 's,%t,$(call sed_escape,$(VERSION_TAINTS)),g' \
-e 's,%M,$(call sed_escape,$(VERSION_MANUFACTURER)),g' \
-e 's,%m,$(call sed_escape,$(VERSION_MANUFACTURER_URL)),g' \
-e 's,%b,$(call sed_escape,$(VERSION_BUG_URL)),g' \
-e 's,%u,$(call sed_escape,$(VERSION_HOME_URL)),g' \
-e 's,%s,$(call sed_escape,$(VERSION_SUPPORT_URL)),g' \
-e 's,%P,$(call sed_escape,$(VERSION_PRODUCT)),g' \
-e 's,%h,$(call sed_escape,$(VERSION_HWREV)),g'
VERSION_SED_SCRIPT:=$(subst '\'','\'\\\\\'\'',$(VERSION_SED))

View File

@@ -7,11 +7,12 @@
curdir:=package
include $(INCLUDE_DIR)/feeds.mk
include $(INCLUDE_DIR)/rootfs.mk
-include $(TMP_DIR)/.packagedeps
$(curdir)/autoremove:=1
$(curdir)/builddirs:=$(sort $(package-) $(package-y) $(package-m))
$(curdir)/builddirs-install:=.
$(curdir)/builddirs-default:=. $(sort $(package-y) $(package-m))
$(curdir)/builddirs-prereq:=. $(sort $(prereq-y) $(prereq-m))
ifdef CHECK_ALL
@@ -56,23 +57,26 @@ $(curdir)/merge:
$(curdir)/merge-index: $(curdir)/merge
(cd $(PACKAGE_DIR_ALL) && $(SCRIPT_DIR)/ipkg-make-index.sh . 2>&1 > Packages; )
$(curdir)/install: $(TMP_DIR)/.build $(curdir)/system/opkg/host/compile $(curdir)/merge $(if $(CONFIG_TARGET_PER_DEVICE_ROOTFS),$(curdir)/merge-index)
ifndef SDK
$(curdir)/compile: $(curdir)/system/opkg/host/compile
endif
$(curdir)/install: $(TMP_DIR)/.build $(curdir)/merge $(if $(CONFIG_TARGET_PER_DEVICE_ROOTFS),$(curdir)/merge-index)
- find $(STAGING_DIR_ROOT) -type d | $(XARGS) chmod 0755
rm -rf $(TARGET_DIR) $(TARGET_DIR_ORIG)
[ -d $(TARGET_DIR)/tmp ] || mkdir -p $(TARGET_DIR)/tmp
mkdir -p $(TARGET_DIR)/tmp
$(call opkg,$(TARGET_DIR)) install \
$(call opkg_package_files,$(shell cat $(PACKAGE_INSTALL_FILES) 2>/dev/null))
$(call opkg_package_files,$(foreach pkg,$(shell cat $(PACKAGE_INSTALL_FILES) 2>/dev/null),$(pkg)$(call GetABISuffix,$(pkg))))
@for file in $(PACKAGE_INSTALL_FILES); do \
[ -s $$file.flags ] || continue; \
for flag in `cat $$file.flags`; do \
$(call opkg,$(TARGET_DIR)) flag $$flag `cat $$file`; \
done; \
done || true
@-$(MAKE) package/preconfig
$(CP) $(TARGET_DIR) $(TARGET_DIR_ORIG)
$(call prepare_rootfs,$(TARGET_DIR))
$(call prepare_rootfs,$(TARGET_DIR),$(TOPDIR)/files)
$(curdir)/index: FORCE
@echo Generating package index...
@@ -80,8 +84,12 @@ $(curdir)/index: FORCE
mkdir -p $$d; \
cd $$d || continue; \
$(SCRIPT_DIR)/ipkg-make-index.sh . 2>&1 > Packages.manifest; \
grep -vE '^(Maintainer|LicenseFiles|Source|Require)' Packages.manifest > Packages && \
gzip -9nc Packages > Packages.gz; \
grep -vE '^(Maintainer|LicenseFiles|Source|SourceName|Require)' Packages.manifest > Packages; \
case "$$(((64 + $$(stat -L -c%s Packages)) % 128))" in 110|111) \
$(call ERROR_MESSAGE,WARNING: Applying padding in $$d/Packages to workaround usign SHA-512 bug!); \
{ echo ""; echo ""; } >> Packages;; \
esac; \
gzip -9nc Packages > Packages.gz; \
); done
ifdef CONFIG_SIGNED_PACKAGES
@echo Signing package index...
@@ -92,8 +100,6 @@ ifdef CONFIG_SIGNED_PACKAGES
); done
endif
$(curdir)/preconfig:
$(curdir)/flags-install:= -j1
$(eval $(call stampfile,$(curdir),package,prereq,.config))

View File

@@ -9,17 +9,23 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
include $(INCLUDE_DIR)/version.mk
include $(INCLUDE_DIR)/feeds.mk
PKG_NAME:=base-files
PKG_RELEASE:=173.6
PKG_RELEASE:=204.2
PKG_FLAGS:=nonshared
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
PKG_BUILD_DEPENDS:=usign/host
PKG_BUILD_DEPENDS:=usign/host ucert/host
PKG_LICENSE:=GPL-2.0
# Extend depends from version.mk
PKG_CONFIG_DEPENDS += CONFIG_SIGNED_PACKAGES CONFIG_TARGET_INIT_PATH CONFIG_TARGET_PREINIT_DISABLE_FAILSAFE
PKG_CONFIG_DEPENDS += \
CONFIG_SIGNED_PACKAGES CONFIG_TARGET_INIT_PATH CONFIG_TARGET_PREINIT_DISABLE_FAILSAFE \
CONFIG_NAND_SUPPORT \
CONFIG_CLEAN_IPKG \
CONFIG_PER_FEED_REPO \
$(foreach feed,$(FEEDS_AVAILABLE),CONFIG_FEED_$(feed))
include $(INCLUDE_DIR)/package.mk
@@ -31,8 +37,8 @@ endif
define Package/base-files
SECTION:=base
CATEGORY:=Base system
DEPENDS:=+netifd +libc +procd +jsonfilter +SIGNED_PACKAGES:usign +SIGNED_PACKAGES:lede-keyring +fstools +fwtool
TITLE:=Base filesystem for Lede
DEPENDS:=+netifd +libc +procd +jsonfilter +SIGNED_PACKAGES:usign +SIGNED_PACKAGES:openwrt-keyring +NAND_SUPPORT:ubi-utils +fstools +fwtool
TITLE:=Base filesystem for OpenWrt
URL:=http://openwrt.org/
VERSION:=$(PKG_RELEASE)-$(REVISION)
endef
@@ -43,6 +49,7 @@ define Package/base-files/conffiles
/etc/config/system
/etc/crontabs/
/etc/dropbear/
/etc/ethers
/etc/group
/etc/hosts
/etc/inittab
@@ -57,8 +64,6 @@ define Package/base-files/conffiles
/etc/shadow
/etc/shells
/etc/sysctl.conf
/etc/sysctl.d/
/etc/sysctl.d/local.conf
/etc/sysupgrade.conf
$(call $(TARGET)/conffiles)
endef
@@ -98,6 +103,9 @@ ifdef CONFIG_SIGNED_PACKAGES
[ -s $(BUILD_KEY) -a -s $(BUILD_KEY).pub ] || \
$(STAGING_DIR_HOST)/bin/usign -G -s $(BUILD_KEY) -p $(BUILD_KEY).pub -c "Local build key"
[ -s $(BUILD_KEY).ucert ] || \
$(STAGING_DIR_HOST)/bin/ucert -I -c $(BUILD_KEY).ucert -p $(BUILD_KEY).pub -s $(BUILD_KEY)
endef
define Package/base-files/install-key
@@ -107,9 +115,16 @@ ifdef CONFIG_SIGNED_PACKAGES
endef
endif
ifeq ($(CONFIG_NAND_SUPPORT),)
define Package/base-files/nand-support
rm -f $(1)/lib/upgrade/nand.sh
endef
endif
define Package/base-files/install
$(CP) ./files/* $(1)/
$(Package/base-files/install-key)
$(Package/base-files/nand-support)
if [ -d $(GENERIC_PLATFORM_DIR)/base-files/. ]; then \
$(CP) $(GENERIC_PLATFORM_DIR)/base-files/* $(1)/; \
fi
@@ -122,7 +137,7 @@ define Package/base-files/install
fi; \
)
$(VERSION_SED) \
$(VERSION_SED_SCRIPT) \
$(1)/etc/banner \
$(1)/etc/openwrt_version \
$(1)/usr/lib/os-release
@@ -156,7 +171,7 @@ define Package/base-files/install
mkdir -p $(1)/root
$(LN) /proc/mounts $(1)/etc/mtab
rm -f $(1)/var
$(LN) /tmp $(1)/var
$(LN) tmp $(1)/var
mkdir -p $(1)/etc
$(LN) /tmp/resolv.conf /tmp/TZ /tmp/localtime $(1)/etc/
@@ -171,6 +186,17 @@ define Package/base-files/install
echo "$$$${conffile##$(1)}" >> $(1)/CONTROL/conffiles; \
fi \
done
$(if $(CONFIG_INCLUDE_CONFIG), \
echo -e "# Build configuration for board $(BOARD)/$(SUBTARGET)/$(PROFILE)\n" >$(1)/etc/build.config; \
cat $(BIN_DIR)/config.buildinfo >>$(1)/etc/build.config)
$(if $(CONFIG_CLEAN_IPKG),, \
mkdir -p $(1)/etc/opkg; \
$(call FeedSourcesAppend,$(1)/etc/opkg/distfeeds.conf); \
$(VERSION_SED_SCRIPT) $(1)/etc/opkg/distfeeds.conf)
$(if $(CONFIG_IPK_FILES_CHECKSUMS), \
rm -f $(1)/sbin/pkg_check,)
endef
ifneq ($(DUMP),1)

View File

@@ -15,17 +15,21 @@ generate_static_network() {
set network.loopback.proto='static'
set network.loopback.ipaddr='127.0.0.1'
set network.loopback.netmask='255.0.0.0'
delete network.globals
set network.globals='globals'
set network.globals.ula_prefix='auto'
EOF
[ -e /proc/sys/net/ipv6 ] && {
uci -q batch <<-EOF
delete network.globals
set network.globals='globals'
set network.globals.ula_prefix='auto'
EOF
}
if json_is_a dsl object; then
json_select dsl
if json_is_a atmbridge object; then
json_select atmbridge
local vpi vci encaps payload
json_get_vars vpi vci encaps payload
local vpi vci encaps payload nameprefix
json_get_vars vpi vci encaps payload nameprefix
uci -q batch <<-EOF
delete network.atm
set network.atm='atm-bridge'
@@ -33,6 +37,7 @@ generate_static_network() {
set network.atm.vci='$vci'
set network.atm.encaps='$encaps'
set network.atm.payload='$payload'
set network.atm.nameprefix='$nameprefix'
EOF
json_select ..
fi
@@ -80,12 +85,16 @@ generate_network() {
set network.$1.proto='none'
EOF
[ -n "$macaddr" ] && uci -q batch <<-EOF
delete network.$1_dev
set network.$1_dev='device'
set network.$1_dev.name='$ifname'
set network.$1_dev.macaddr='$macaddr'
EOF
if [ -n "$macaddr" ]; then
for name in $ifname; do
uci -q batch <<-EOF
delete network.$1_${name/./_}_dev
set network.$1_${name/./_}_dev='device'
set network.$1_${name/./_}_dev.name='$name'
set network.$1_${name/./_}_dev.macaddr='$macaddr'
EOF
done
fi
case "$protocol" in
static)
@@ -101,21 +110,23 @@ generate_network() {
set network.$1.proto='static'
set network.$1.ipaddr='$ipad'
set network.$1.netmask='$netm'
set network.$1.ip6assign='60'
EOF
[ -e /proc/sys/net/ipv6 ] && uci set network.$1.ip6assign='60'
;;
dhcp)
# fixup IPv6 slave interface if parent is a bridge
[ "$type" = "bridge" ] && ifname="br-$1"
uci -q batch <<-EOF
set network.$1.proto='dhcp'
delete network.${1}6
set network.${1}6='interface'
set network.${1}6.ifname='$ifname'
set network.${1}6.proto='dhcpv6'
EOF
uci set network.$1.proto='dhcp'
[ -e /proc/sys/net/ipv6 ] && {
uci -q batch <<-EOF
delete network.${1}6
set network.${1}6='interface'
set network.${1}6.ifname='$ifname'
set network.${1}6.proto='dhcpv6'
EOF
}
;;
pppoe)
@@ -123,12 +134,16 @@ generate_network() {
set network.$1.proto='pppoe'
set network.$1.username='username'
set network.$1.password='password'
set network.$1.ipv6='1'
delete network.${1}6
set network.${1}6='interface'
set network.${1}6.ifname='@${1}'
set network.${1}6.proto='dhcpv6'
EOF
[ -e /proc/sys/net/ipv6 ] && {
uci -q batch <<-EOF
set network.$1.ipv6='1'
delete network.${1}6
set network.${1}6='interface'
set network.${1}6.ifname='@${1}'
set network.${1}6.proto='dhcpv6'
EOF
}
;;
esac
}
@@ -202,7 +217,8 @@ generate_switch() {
json_select switch
json_select "$key"
json_get_vars enable reset blinkrate cpu_port
json_get_vars enable reset blinkrate cpu_port \
ar8xxx_mib_type ar8xxx_mib_poll_interval
uci -q batch <<-EOF
add network switch
@@ -210,6 +226,8 @@ generate_switch() {
set network.@switch[-1].reset='$reset'
set network.@switch[-1].enable_vlan='$enable'
set network.@switch[-1].blinkrate='$blinkrate'
set network.@switch[-1].ar8xxx_mib_type='$ar8xxx_mib_type'
set network.@switch[-1].ar8xxx_mib_poll_interval='$ar8xxx_mib_poll_interval'
EOF
generate_switch_vlans_ports "$1"
@@ -223,7 +241,7 @@ generate_static_system() {
uci -q batch <<-EOF
delete system.@system[0]
add system system
set system.@system[-1].hostname='LEDE'
set system.@system[-1].hostname='OpenWrt'
set system.@system[-1].timezone='UTC'
set system.@system[-1].ttylogin='0'
set system.@system[-1].log_size='64'
@@ -233,10 +251,10 @@ generate_static_system() {
set system.ntp='timeserver'
set system.ntp.enabled='1'
set system.ntp.enable_server='0'
add_list system.ntp.server='0.lede.pool.ntp.org'
add_list system.ntp.server='1.lede.pool.ntp.org'
add_list system.ntp.server='2.lede.pool.ntp.org'
add_list system.ntp.server='3.lede.pool.ntp.org'
add_list system.ntp.server='0.openwrt.pool.ntp.org'
add_list system.ntp.server='1.openwrt.pool.ntp.org'
add_list system.ntp.server='2.openwrt.pool.ntp.org'
add_list system.ntp.server='3.openwrt.pool.ntp.org'
EOF
if json_is_a system object; then
@@ -355,11 +373,12 @@ generate_led() {
;;
switch)
local port_mask speed_mask
json_get_vars port_mask speed_mask
local port_mask speed_mask mode
json_get_vars port_mask speed_mask mode
uci -q batch <<-EOF
set system.$cfg.port_mask='$port_mask'
set system.$cfg.speed_mask='$speed_mask'
set system.$cfg.mode='$mode'
EOF
;;

View File

@@ -1,10 +1,8 @@
_________
/ /\ _ ___ ___ ___
/ LE / \ | | | __| \| __|
/ DE / \ | |__| _|| |) | _|
/________/ LE \ |____|___|___/|___| lede-project.org
\ \ DE /
\ LE \ / -----------------------------------------------------------
\ DE \ / %N (%V, %C)
\________\/ -----------------------------------------------------------
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
%D %V, %C
-----------------------------------------------------

View File

@@ -1,4 +1,50 @@
#!/bin/sh
# Copyright (C) 2006-2009 OpenWrt.org
# Copyright (C) 2006-2019 OpenWrt.org
set_state() { :; }
. /lib/functions/leds.sh
boot="$(get_dt_led boot)"
failsafe="$(get_dt_led failsafe)"
running="$(get_dt_led running)"
upgrade="$(get_dt_led upgrade)"
set_led_state() {
status_led="$boot"
case "$1" in
preinit)
status_led_blink_preinit
;;
failsafe)
status_led_off
[ -n "$running" ] && {
status_led="$running"
status_led_off
}
status_led="$failsafe"
status_led_blink_failsafe
;;
preinit_regular)
status_led_blink_preinit_regular
;;
upgrade)
[ -n "$running" ] && {
status_led="$running"
status_led_off
}
status_led="$upgrade"
status_led_blink_preinit_regular
;;
done)
status_led_off
[ -n "$running" ] && {
status_led="$running"
status_led_on
}
;;
esac
}
set_state() {
[ -n "$boot" -o -n "$failsafe" -o -n "$running" -o -n "$upgrade" ] && set_led_state "$1"
}

View File

@@ -0,0 +1,6 @@
#
# Lookup man 5 ethers for syntax documentation
#
# Examples :
# 02:00:11:22:33:44 OpenWrt.lan
# 02:00:11:22:33:44 192.168.1.1

View File

@@ -2,6 +2,7 @@ root:x:0:
daemon:x:1:
adm:x:4:
mail:x:8:
dialout:x:20:
audio:x:29:
www-data:x:33:
ftp:x:55:

View File

@@ -1,7 +1,7 @@
#!/bin/sh
if [ "$ACTION" = add ]; then
for CONF in /etc/sysctl.conf /etc/sysctl.d/*.conf; do
for CONF in /etc/sysctl.d/*.conf /etc/sysctl.conf; do
[ ! -f "$CONF" ] && continue;
sed -ne "/^[[:space:]]*net\..*\.$DEVICENAME\./p" "$CONF" | \
sysctl -e -p - | logger -t sysctl

View File

@@ -2,7 +2,7 @@
# Copyright (C) 2006-2011 OpenWrt.org
START=10
STOP=98
STOP=90
uci_apply_defaults() {
. /lib/functions/system.sh

View File

@@ -1,7 +1,7 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2015 OpenWrt.org
START=98
START=94
STOP=10
USE_PROCD=1
@@ -22,10 +22,16 @@ load_gpio_switch()
echo "$gpio_pin" >/sys/class/gpio/export
# we need to wait a bit until the GPIO appears
[ -d "$gpio_path" ] || sleep 1
echo out >"$gpio_path/direction"
}
# write 0 or 1 to the "value" field
{ [ "$value" = "0" ] && echo "0" || echo "1"; } >"$gpio_path/value"
# direction attribute only exists if the kernel supports changing the
# direction of a GPIO
if [ -e "${gpio_path}/direction" ]; then
# set the pin to output with high or low pin value
{ [ "$value" = "0" ] && echo "low" || echo "high"; } >"$gpio_path/direction"
else
{ [ "$value" = "0" ] && echo "0" || echo "1"; } >"$gpio_path/value"
fi
}
service_triggers()

View File

@@ -20,7 +20,7 @@ load_led() {
config_get trigger $1 trigger "none"
config_get dev $1 dev
config_get ports $1 port
config_get mode $1 mode "link"
config_get mode $1 mode
config_get_bool default $1 default "nil"
config_get delayon $1 delayon
config_get delayoff $1 delayoff
@@ -71,7 +71,11 @@ load_led() {
"netdev")
[ -n "$dev" ] && {
echo $dev > /sys/class/leds/${sysfs}/device_name
echo $mode > /sys/class/leds/${sysfs}/mode
for m in $mode; do
[ -e "/sys/class/leds/${sysfs}/$m" ] && \
echo 1 > /sys/class/leds/${sysfs}/$m
done
echo $interval > /sys/class/leds/${sysfs}/interval
}
;;
@@ -109,6 +113,8 @@ load_led() {
config_get speed_mask $1 speed_mask
[ -n "$speed_mask" ] && \
echo $speed_mask > /sys/class/leds/${sysfs}/speed_mask
[ -n "$mode" ] && \
echo "$mode" > /sys/class/leds/${sysfs}/mode
;;
esac
}

View File

@@ -26,11 +26,19 @@ apply_defaults() {
net.ipv6.ip6frag_high_thresh="$frag_high_thresh" \
net.netfilter.nf_conntrack_frag6_low_thresh="$frag_low_thresh" \
net.netfilter.nf_conntrack_frag6_high_thresh="$frag_high_thresh"
# first set default, then all interfaces to avoid races with appearing interfaces
if [ -d /proc/sys/net/ipv6/conf ]; then
echo 0 > /proc/sys/net/ipv6/conf/default/accept_ra
for iface in /proc/sys/net/ipv6/conf/*/accept_ra; do
echo 0 > "$iface"
done
fi
}
start() {
apply_defaults
for CONF in /etc/sysctl.conf /etc/sysctl.d/*.conf; do
[ -f "$CONF" ] && sysctl -p "$CONF" -e >&-
for CONF in /etc/sysctl.d/*.conf /etc/sysctl.conf; do
[ -f "$CONF" ] && sysctl -e -p "$CONF" >&-
done
}

View File

@@ -6,8 +6,8 @@ USE_PROCD=1
validate_system_section()
{
uci_validate_section system system "${1}" \
'hostname:string:lede' \
uci_load_validate system system "$1" "$2" \
'hostname:string:OpenWrt' \
'conloglevel:uinteger' \
'buffersize:uinteger' \
'timezone:string:UTC' \
@@ -15,11 +15,7 @@ validate_system_section()
}
system_config() {
local cfg="$1"
local hostname conloglevel buffersize timezone zonename
validate_system_section "${1}" || {
[ "$2" = 0 ] || {
echo "validation failed"
return 1
}
@@ -36,7 +32,7 @@ system_config() {
reload_service() {
config_load system
config_foreach system_config system
config_foreach validate_system_section system system_config
}
service_triggers()

View File

@@ -1,7 +1,12 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
STOP=99
STOP=90
restart() {
:
}
stop() {
sync
/bin/umount -a -d -r

View File

@@ -0,0 +1,8 @@
# lookup table for ematch kinds
1 cmp
2 nbyte
3 u32
4 meta
7 canid
8 ipset
9 ipt

View File

@@ -1,8 +1,7 @@
DISTRIB_ID='%D'
DISTRIB_RELEASE='%V'
DISTRIB_REVISION='%R'
DISTRIB_CODENAME='%n'
DISTRIB_TARGET='%S'
DISTRIB_ARCH='%A'
DISTRIB_DESCRIPTION='%D %N %V %C'
DISTRIB_DESCRIPTION='%D %V %C'
DISTRIB_TAINTS='%t'

View File

@@ -14,7 +14,11 @@ export HOME=$(grep -e "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6)
export HOME=${HOME:-/root}
export PS1='\u@\h:\w\$ '
[ "$TERM" = "xterm" ] && export PS1='\[\e]0;\u@\h: \w\a\]'$PS1
case "$TERM" in
xterm*|rxvt*)
export PS1='\[\e]0;\u@\h: \w\a\]'$PS1
;;
esac
[ -x /bin/more ] || alias more=less
[ -x /usr/bin/vim ] && alias vi=vim || alias vim=vi

View File

@@ -0,0 +1,12 @@
#!/bin/sh
[ "${ACTION}" = "released" ] || exit 0
if [ "$SEEN" -ge 5 ]
then
echo "REBOOT" > /dev/console
sync
reboot
fi
return 0

View File

@@ -23,6 +23,7 @@ reload() {
restart() {
trap '' TERM
stop "$@"
trap - TERM
start "$@"
}
@@ -41,14 +42,15 @@ disable() {
}
enable() {
err=1
name="$(basename "${initscript}")"
disable
[ -n "$START" -o -n "$STOP" ] || {
echo "/etc/init.d/$name does not have a START or STOP value"
return 1
}
[ "$START" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}"
[ "$STOP" ] && ln -s "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/K${STOP}${name##K[0-9][0-9]}"
[ "$START" ] && \
ln -sf "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/S${START}${name##S[0-9][0-9]}" && \
err=0
[ "$STOP" ] && \
ln -sf "../init.d/$name" "$IPKG_INSTROOT/etc/rc.d/K${STOP}${name##K[0-9][0-9]}" && \
err=0
return $err
}
enabled() {
@@ -88,6 +90,10 @@ service_triggers() {
return 0
}
service_data() {
return 0
}
service_running() {
return 0
}
@@ -122,12 +128,17 @@ ${INIT_TRACE:+set -x}
}
stop() {
procd_lock
stop_service "$@"
procd_kill "$(basename ${basescript:-$initscript})" "$1"
if eval "type service_stopped" 2>/dev/null >/dev/null; then
service_stopped
fi
}
reload() {
if eval "type reload_service" 2>/dev/null >/dev/null; then
procd_lock
reload_service "$@"
else
start

View File

@@ -29,8 +29,8 @@ kerberos 88/tcp kerberos5 krb5 kerberos-sec
kerberos 88/udp kerberos5 krb5 kerberos-sec
pop3 110/tcp
pop3 110/udp
sunrpc 111/tcp
sunrpc 111/udp
sunrpc 111/tcp rpcbind
sunrpc 111/udp rpcbind
auth 113/tcp ident
sftp 115/tcp
nntp 119/tcp

View File

@@ -1,30 +1 @@
kernel.panic=3
kernel.core_pattern=/tmp/%e.%t.%p.%s.core
net.ipv4.conf.default.arp_ignore=1
net.ipv4.conf.all.arp_ignore=1
net.ipv4.ip_forward=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.icmp_ignore_bogus_error_responses=1
net.ipv4.igmp_max_memberships=100
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_keepalive_time=120
net.ipv4.tcp_syncookies=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_sack=1
net.ipv4.tcp_dsack=1
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.all.forwarding=1
net.netfilter.nf_conntrack_acct=1
net.netfilter.nf_conntrack_checksum=0
net.netfilter.nf_conntrack_max=16384
net.netfilter.nf_conntrack_tcp_timeout_established=7440
net.netfilter.nf_conntrack_udp_timeout=60
net.netfilter.nf_conntrack_udp_timeout_stream=180
# disable bridge firewalling by default
net.bridge.bridge-nf-call-arptables=0
net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0
# Defaults are configured in /etc/sysctl.d/* and can be customized in this file

View File

@@ -0,0 +1,27 @@
# Do not edit, changes to this file will be lost on upgrades
# /etc/sysctl.conf can be used to customize sysctl settings
kernel.panic=3
kernel.core_pattern=/tmp/%e.%t.%p.%s.core
fs.suid_dumpable=2
fs.protected_hardlinks=1
fs.protected_symlinks=1
net.core.bpf_jit_enable=1
net.ipv4.conf.default.arp_ignore=1
net.ipv4.conf.all.arp_ignore=1
net.ipv4.ip_forward=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.icmp_ignore_bogus_error_responses=1
net.ipv4.igmp_max_memberships=100
net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_keepalive_time=120
net.ipv4.tcp_syncookies=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_sack=1
net.ipv4.tcp_dsack=1
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.all.forwarding=1

View File

@@ -1,16 +0,0 @@
#!/bin/sh
if [ ! -f "/rom/etc/sysctl.conf" ] || cmp -s "/rom/etc/sysctl.conf" "/etc/sysctl.conf"; then
exit 0
fi
fingerprint="$(md5sum /etc/sysctl.conf)"
fingerprint="${fingerprint%% *}"
if [ "$fingerprint" = "1b05ebb41f72cb84e5510573cd4aca26" ] || \
[ "$fingerprint" = "62deb895be1a7f496040187b7c930e4e" ]; then
logger -t migrate-sysctl "Updating sysctl.conf to use current defaults"
cp "/rom/etc/sysctl.conf" "/etc/sysctl.conf"
fi
exit 0

View File

@@ -57,16 +57,16 @@ config () {
export ${NO_EXPORT:+-n} CONFIG_NUM_SECTIONS=$(($CONFIG_NUM_SECTIONS + 1))
name="${name:-cfg$CONFIG_NUM_SECTIONS}"
append CONFIG_SECTIONS "$name"
[ -n "$NO_CALLBACK" ] || config_cb "$cfgtype" "$name"
export ${NO_EXPORT:+-n} CONFIG_SECTION="$name"
export ${NO_EXPORT:+-n} "CONFIG_${CONFIG_SECTION}_TYPE=$cfgtype"
config_set "$CONFIG_SECTION" "TYPE" "${cfgtype}"
[ -n "$NO_CALLBACK" ] || config_cb "$cfgtype" "$name"
}
option () {
local varname="$1"; shift
local value="$*"
export ${NO_EXPORT:+-n} "CONFIG_${CONFIG_SECTION}_${varname}=$value"
config_set "$CONFIG_SECTION" "${varname}" "${value}"
[ -n "$NO_CALLBACK" ] || option_cb "$varname" "$*"
}
@@ -81,7 +81,7 @@ list() {
config_set "$CONFIG_SECTION" "${varname}_ITEM$len" "$value"
config_set "$CONFIG_SECTION" "${varname}_LENGTH" "$len"
append "CONFIG_${CONFIG_SECTION}_${varname}" "$value" "$LIST_SEP"
list_cb "$varname" "$*"
[ -n "$NO_CALLBACK" ] || list_cb "$varname" "$*"
}
config_unset() {
@@ -92,7 +92,7 @@ config_unset() {
# config_get <section> <option>
config_get() {
case "$3" in
"") eval echo "\${CONFIG_${1}_${2}:-\${4}}";;
"") eval echo "\"\${CONFIG_${1}_${2}:-\${4}}\"";;
*) eval export ${NO_EXPORT:+-n} -- "${1}=\${CONFIG_${2}_${3}:-\${4}}";;
esac
}
@@ -113,11 +113,8 @@ config_set() {
local section="$1"
local option="$2"
local value="$3"
local old_section="$CONFIG_SECTION"
CONFIG_SECTION="$section"
option "$option" "$value"
CONFIG_SECTION="$old_section"
export ${NO_EXPORT:+-n} "CONFIG_${section}_${option}=${value}"
}
config_foreach() {
@@ -153,34 +150,29 @@ config_list_foreach() {
done
}
insert_modules() {
for m in $*; do
if [ -f /etc/modules.d/$m ]; then
sed 's/^[^#]/insmod &/' /etc/modules.d/$m | ash 2>&- || :
else
modprobe $m || :
fi
done
}
default_prerm() {
local root="${IPKG_INSTROOT}"
local name
local pkgname="$(basename ${1%.*})"
local ret=0
name=$(basename ${1%.*})
[ -f "$root/usr/lib/opkg/info/${name}.prerm-pkg" ] && . "$root/usr/lib/opkg/info/${name}.prerm-pkg"
if [ -f "$root/usr/lib/opkg/info/${pkgname}.prerm-pkg" ]; then
( . "$root/usr/lib/opkg/info/${pkgname}.prerm-pkg" )
ret=$?
fi
local shell="$(which bash)"
for i in `cat "$root/usr/lib/opkg/info/${name}.list" | grep "^/etc/init.d/"`; do
for i in $(grep -s "^/etc/init.d/" "$root/usr/lib/opkg/info/${pkgname}.list"); do
if [ -n "$root" ]; then
${shell:-/bin/sh} "$root/etc/rc.common" "$root$i" disable
else
if [ "$PKG_UPGRADE" != "1" ]; then
"$i" disable
fi
"$i" stop || /bin/true
"$i" stop
fi
done
return $ret
}
add_group_and_user() {
@@ -202,7 +194,7 @@ add_group_and_user() {
if [ -n "$gname" ] && [ -n "$gid" ]; then
group_exists "$gname" || group_add "$gname" "$gid"
elif [ -n "$gname" ]; then
group_add_next "$gname"; gid=$?
gid="$(group_add_next "$gname")"
fi
if [ -n "$uname" ]; then
@@ -221,6 +213,7 @@ add_group_and_user() {
default_postinst() {
local root="${IPKG_INSTROOT}"
local pkgname="$(basename ${1%.*})"
local filelist="/usr/lib/opkg/info/${pkgname}.list"
local ret=0
add_group_and_user "${pkgname}"
@@ -235,20 +228,29 @@ default_postinst() {
rm -fR $root/rootfs-overlay/
fi
if [ -z "$root" ] && grep -q -s "^/etc/uci-defaults/" "/usr/lib/opkg/info/${pkgname}.list"; then
. /lib/functions/system.sh
[ -d /tmp/.uci ] || mkdir -p /tmp/.uci
for i in $(sed -ne 's!^/etc/uci-defaults/!!p' "/usr/lib/opkg/info/${pkgname}.list"); do (
cd /etc/uci-defaults
[ -f "$i" ] && . ./"$i" && rm -f "$i"
) done
uci commit
if [ -z "$root" ]; then
if grep -m1 -q -s "^/etc/modules.d/" "$filelist"; then
kmodloader
fi
if grep -m1 -q -s "^/etc/sysctl.d/" "$filelist"; then
/etc/init.d/sysctl restart
fi
if grep -m1 -q -s "^/etc/uci-defaults/" "$filelist"; then
. /lib/functions/system.sh
[ -d /tmp/.uci ] || mkdir -p /tmp/.uci
for i in $(grep -s "^/etc/uci-defaults/" "$filelist"); do
( [ -f "$i" ] && cd "$(dirname $i)" && . "$i" ) && rm -f "$i"
done
uci commit
fi
rm -f /tmp/luci-indexcache
fi
[ -n "$root" ] || rm -f /tmp/luci-indexcache 2>/dev/null
local shell="$(which bash)"
for i in $(grep -s "^/etc/init.d/" "$root/usr/lib/opkg/info/${pkgname}.list"); do
for i in $(grep -s "^/etc/init.d/" "$root$filelist"); do
if [ -n "$root" ]; then
${shell:-/bin/sh} "$root/etc/rc.common" "$root$i" enable
else
@@ -292,9 +294,7 @@ group_add() {
[ -f "${IPKG_INSTROOT}/etc/group" ] || return 1
[ -n "$IPKG_INSTROOT" ] || lock /var/lock/group
echo "${name}:x:${gid}:" >> ${IPKG_INSTROOT}/etc/group
rc=$?
[ -n "$IPKG_INSTROOT" ] || lock -u /var/lock/group
return $rc
}
group_exists() {
@@ -304,14 +304,17 @@ group_exists() {
group_add_next() {
local gid gids
gid=$(grep -s "^${1}:" ${IPKG_INSTROOT}/etc/group | cut -d: -f3)
[ -n "$gid" ] && return $gid
if [ -n "$gid" ]; then
echo $gid
return
fi
gids=$(cat ${IPKG_INSTROOT}/etc/group | cut -d: -f3)
gid=100
while [ -n "$(echo $gids | grep $gid)" ] ; do
gid=65536
while [ -n "$(echo "$gids" | grep "^$gid$")" ] ; do
gid=$((gid + 1))
done
group_add $1 $gid
return $gid
echo $gid
}
group_add_user() {
@@ -334,8 +337,8 @@ user_add() {
local rc
[ -z "$uid" ] && {
uids=$(cat ${IPKG_INSTROOT}/etc/passwd | cut -d: -f3)
uid=100
while [ -n "$(echo $uids | grep $uid)" ] ; do
uid=65536
while [ -n "$(echo "$uids" | grep "^$uid$")" ] ; do
uid=$((uid + 1))
done
}
@@ -344,9 +347,7 @@ user_add() {
[ -n "$IPKG_INSTROOT" ] || lock /var/lock/passwd
echo "${name}:x:${uid}:${gid}:${desc}:${home}:${shell}" >> ${IPKG_INSTROOT}/etc/passwd
echo "${name}:x:0:0:99999:7:::" >> ${IPKG_INSTROOT}/etc/shadow
rc=$?
[ -n "$IPKG_INSTROOT" ] || lock -u /var/lock/passwd
return $rc
}
user_exists() {

View File

@@ -1,6 +1,20 @@
#!/bin/sh
# Copyright (C) 2013 OpenWrt.org
get_dt_led() {
local label
local ledpath
local basepath="/proc/device-tree"
local nodepath="$basepath/aliases/led-$1"
[ -f "$nodepath" ] && ledpath=$(cat "$nodepath")
[ -n "$ledpath" ] && \
label=$(cat "$basepath$ledpath/label" 2>/dev/null) || \
label=$(cat "$basepath$ledpath/chan-name" 2>/dev/null)
echo "$label"
}
led_set_attr() {
[ -f "/sys/class/leds/$1/$2" ] && echo "$3" > "/sys/class/leds/$1/$2"
}

View File

@@ -0,0 +1,39 @@
#!/bin/sh
. /lib/functions.sh
migrate_led_sysfs() {
local cfg="$1"; shift
local tuples="$@"
local sysfs
local name
config_get sysfs ${cfg} sysfs
config_get name ${cfg} name
[ -z "${sysfs}" ] && return
for tuple in ${tuples}; do
local old=${tuple%=*}
local new=${tuple#*=}
local new_sysfs
new_sysfs=$(echo ${sysfs} | sed "s/${old}/${new}/")
[ "${new_sysfs}" = "${sysfs}" ] && continue
uci set system.${cfg}.sysfs="${new_sysfs}"
logger -t led-migration "sysfs option of LED \"${name}\" updated to ${new_sysfs}"
done;
}
migrate_leds() {
config_load system
config_foreach migrate_led_sysfs led "$@"
}
migrations_apply() {
local realm="$1"
[ -n "$(uci changes ${realm})" ] && uci -q commit ${realm}
}

View File

@@ -6,10 +6,16 @@
__network_ifstatus() {
local __tmp
[ -z "$__NETWORK_CACHE" ] && \
export __NETWORK_CACHE="$(ubus call network.interface dump)"
[ -z "$__NETWORK_CACHE" ] && {
__tmp="$(ubus call network.interface dump 2>&1)"
case "$?" in
4) : ;;
0) export __NETWORK_CACHE="$__tmp" ;;
*) echo "$__tmp" >&2 ;;
esac
}
__tmp="$(jsonfilter ${4:+-F "$4"} ${5:+-l "$5"} -s "$__NETWORK_CACHE" -e "$1=@.interface${2:+[@.interface='$2']}$3")"
__tmp="$(jsonfilter ${4:+-F "$4"} ${5:+-l "$5"} -s "${__NETWORK_CACHE:-{}}" -e "$1=@.interface${2:+[@.interface='$2']}$3")"
[ -z "$__tmp" ] && \
unset "$1" && \
@@ -265,6 +271,16 @@ network_is_up()
# 2: interface
network_get_protocol() { __network_ifstatus "$1" "$2" ".proto"; }
# determine the uptime of the given logical interface
# 1: destination variable
# 2: interface
network_get_uptime() { __network_ifstatus "$1" "$2" ".uptime"; }
# determine the metric of the given logical interface
# 1: destination variable
# 2: interface
network_get_metric() { __network_ifstatus "$1" "$2" ".metric"; }
# determine the layer 3 linux network device of the given logical interface
# 1: destination variable
# 2: interface

View File

@@ -1,5 +1,17 @@
# Copyright (C) 2006-2013 OpenWrt.org
get_mac_binary() {
local path="$1"
local offset="$2"
if ! [ -e "$path" ]; then
echo "get_mac_binary: file $path not found!" >&2
return
fi
hexdump -v -n 6 -s $offset -e '5/1 "%02x:" 1/1 "%02x"' $path 2>/dev/null
}
find_mtd_chardev() {
local INDEX=$(find_mtd_index "$1")
local PREFIX=/dev/mtd
@@ -8,8 +20,7 @@ find_mtd_chardev() {
echo "${INDEX:+$PREFIX$INDEX}"
}
mtd_get_mac_ascii()
{
mtd_get_mac_ascii() {
local mtdname="$1"
local key="$2"
local part
@@ -27,18 +38,36 @@ mtd_get_mac_ascii()
[ -n "$mac_dirty" ] && macaddr_canonicalize "$mac_dirty"
}
mtd_get_mac_text() {
local mtdname=$1
local offset=$2
local part
local mac_dirty
part=$(find_mtd_part "$mtdname")
if [ -z "$part" ]; then
echo "mtd_get_mac_text: partition $mtdname not found!" >&2
return
fi
if [ -z "$offset" ]; then
echo "mtd_get_mac_text: offset missing!" >&2
return
fi
mac_dirty=$(dd if="$part" bs=1 skip="$offset" count=17 2>/dev/null)
# "canonicalize" mac
[ -n "$mac_dirty" ] && macaddr_canonicalize "$mac_dirty"
}
mtd_get_mac_binary() {
local mtdname="$1"
local offset="$2"
local part
part=$(find_mtd_part "$mtdname")
if [ -z "$part" ]; then
echo "mtd_get_mac_binary: partition $mtdname not found!" >&2
return
fi
hexdump -v -n 6 -s $offset -e '5/1 "%02x:" 1/1 "%02x"' $part 2>/dev/null
get_mac_binary "$part" "$offset"
}
mtd_get_mac_binary_ubi() {
@@ -50,12 +79,7 @@ mtd_get_mac_binary_ubi() {
local ubidev=$(nand_find_ubi $CI_UBIPART)
local part=$(nand_find_volume $ubidev $1)
if [ -z "$part" ]; then
echo "mtd_get_mac_binary: ubi volume $mtdname not found!" >&2
return
fi
hexdump -v -n 6 -s $offset -e '5/1 "%02x:" 1/1 "%02x"' /dev/$part 2>/dev/null
get_mac_binary "/dev/$part" "$offset"
}
mtd_get_part_size() {
@@ -80,22 +104,19 @@ macaddr_add() {
echo $oui:$nic
}
macaddr_setbit_la()
{
macaddr_setbit_la() {
local mac=$1
printf "%02x:%s" $((0x${mac%%:*} | 0x02)) ${mac#*:}
}
macaddr_2bin()
{
macaddr_2bin() {
local mac=$1
echo -ne \\x${mac//:/\\x}
}
macaddr_canonicalize()
{
macaddr_canonicalize() {
local mac="$1"
local canon=""

View File

@@ -27,30 +27,33 @@ json_select_object() {
json_select "$1"
}
_ucidef_set_interface() {
local name="$1"
local iface="$2"
local proto="$3"
ucidef_set_interface() {
local network=$1; shift
json_select_object "$name"
json_add_string ifname "$iface"
[ -z "$network" ] && return
if ! json_is_a protocol string || [ -n "$proto" ]; then
case "$proto" in
static|dhcp|none|pppoe) : ;;
*)
case "$name" in
lan) proto="static" ;;
wan) proto="dhcp" ;;
*) proto="none" ;;
esac
;;
json_select_object network
json_select_object "$network"
while [ -n "$1" ]; do
local opt=$1; shift
local val=$1; shift
[ -n "$opt" -a -n "$val" ] || break
json_add_string "$opt" "$val"
done
if ! json_is_a protocol string; then
case "$network" in
lan) json_add_string protocol static ;;
wan) json_add_string protocol dhcp ;;
*) json_add_string protocol none ;;
esac
json_add_string protocol "$proto"
fi
json_select ..
json_select ..
}
ucidef_set_board_id() {
@@ -66,31 +69,19 @@ ucidef_set_model_name() {
}
ucidef_set_interface_lan() {
json_select_object network
_ucidef_set_interface lan "$@"
json_select ..
ucidef_set_interface "lan" ifname "$1" protocol "${2:-static}"
}
ucidef_set_interface_wan() {
json_select_object network
_ucidef_set_interface wan "$@"
json_select ..
ucidef_set_interface "wan" ifname "$1" protocol "${2:-dhcp}"
}
ucidef_set_interfaces_lan_wan() {
local lan_if="$1"
local wan_if="$2"
json_select_object network
_ucidef_set_interface lan "$lan_if"
_ucidef_set_interface wan "$wan_if"
json_select ..
}
ucidef_set_interface_raw() {
json_select_object network
_ucidef_set_interface "$@"
json_select ..
ucidef_set_interface_lan "$lan_if"
ucidef_set_interface_wan "$wan_if"
}
_ucidef_add_switch_port() {
@@ -160,7 +151,7 @@ _ucidef_finish_switch_roles() {
json_select ..
json_select ..
if [ $n_vlan -gt $n_cpu -o ${need_tag:-0} -eq 1 ]; then
if [ ${need_tag:-0} -eq 1 -o ${want_untag:-0} -ne 1 ]; then
num="${num}t"
device="${device}.${index}"
fi
@@ -185,12 +176,25 @@ _ucidef_finish_switch_roles() {
devices="${devices:+$devices }$device"
fi
json_select ..
_ucidef_set_interface "$role" "$devices"
json_select ..
ucidef_set_interface "$role" ifname "$devices"
done
}
ucidef_set_ar8xxx_switch_mib() {
local name="$1"
local type="$2"
local interval="$3"
json_select_object switch
json_select_object "$name"
json_add_int ar8xxx_mib_type $type
json_add_int ar8xxx_mib_poll_interval $interval
json_select ..
json_select ..
}
ucidef_add_switch() {
local name="$1"; shift
local port num role device index need_tag prev_role
@@ -300,18 +304,7 @@ ucidef_set_interface_macaddr() {
local network="$1"
local macaddr="$2"
json_select_object network
json_select "$network"
[ $? -eq 0 ] || {
json_select ..
return
}
json_add_string macaddr "$macaddr"
json_select ..
json_select ..
ucidef_set_interface "$network" macaddr "$macaddr"
}
ucidef_add_atm_bridge() {
@@ -319,6 +312,7 @@ ucidef_add_atm_bridge() {
local vci="$2"
local encaps="$3"
local payload="$4"
local nameprefix="$5"
json_select_object dsl
json_select_object atmbridge
@@ -326,6 +320,7 @@ ucidef_add_atm_bridge() {
json_add_int vci "$vci"
json_add_string encaps "$encaps"
json_add_string payload "$payload"
json_add_string nameprefix "$nameprefix"
json_select ..
json_select ..
}
@@ -358,19 +353,59 @@ ucidef_add_vdsl_modem() {
json_select ..
}
ucidef_set_led_netdev() {
ucidef_set_led_ataport() {
_ucidef_set_led_trigger "$1" "$2" "$3" ata"$4"
}
_ucidef_set_led_common() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local dev="$4"
local mode="${5:-link tx rx}"
json_select_object led
json_select_object "$1"
json_add_string name "$name"
json_add_string type netdev
json_add_string sysfs "$sysfs"
}
ucidef_set_led_default() {
local default="$4"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string default "$default"
json_select ..
json_select ..
}
ucidef_set_led_gpio() {
local gpio="$4"
local inverted="$5"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string trigger "$trigger"
json_add_string type gpio
json_add_int gpio "$gpio"
json_add_boolean inverted "$inverted"
json_select ..
json_select ..
}
ucidef_set_led_ide() {
_ucidef_set_led_trigger "$1" "$2" "$3" ide-disk
}
ucidef_set_led_netdev() {
local dev="$4"
local mode="${5:-link tx rx}"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string type netdev
json_add_string device "$dev"
json_add_string mode "$mode"
json_select ..
@@ -378,24 +413,109 @@ ucidef_set_led_netdev() {
json_select ..
}
ucidef_set_led_oneshot() {
_ucidef_set_led_timer $1 $2 $3 "oneshot" $4 $5
}
ucidef_set_led_portstate() {
local port_state="$4"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string trigger port_state
json_add_string type portstate
json_add_string port_state "$port_state"
json_select ..
json_select ..
}
ucidef_set_led_rssi() {
local iface="$4"
local minq="$5"
local maxq="$6"
local offset="${7:-0}"
local factor="${8:-1}"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string type rssi
json_add_string name "$name"
json_add_string iface "$iface"
json_add_string minq "$minq"
json_add_string maxq "$maxq"
json_add_string offset "$offset"
json_add_string factor "$factor"
json_select ..
json_select ..
}
ucidef_set_led_switch() {
local trigger_name="$4"
local port_mask="$5"
local speed_mask="$6"
local mode="$7"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string trigger "$trigger_name"
json_add_string type switch
json_add_string mode "$mode"
json_add_string port_mask "$port_mask"
json_add_string speed_mask "$speed_mask"
json_select ..
json_select ..
}
_ucidef_set_led_timer() {
local trigger_name="$4"
local delayon="$5"
local delayoff="$6"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string type "$trigger_name"
json_add_string trigger "$trigger_name"
json_add_int delayon "$delayon"
json_add_int delayoff "$delayoff"
json_select ..
json_select ..
}
ucidef_set_led_timer() {
_ucidef_set_led_timer $1 $2 $3 "timer" $4 $5
}
_ucidef_set_led_trigger() {
local trigger_name="$4"
_ucidef_set_led_common "$1" "$2" "$3"
json_add_string trigger "$trigger_name"
json_select ..
json_select ..
}
ucidef_set_led_usbdev() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local dev="$4"
json_select_object led
_ucidef_set_led_common "$1" "$2" "$3"
json_select_object "$1"
json_add_string name "$name"
json_add_string type usb
json_add_string sysfs "$sysfs"
json_add_string device "$dev"
json_select ..
json_select ..
}
ucidef_set_led_usbhost() {
_ucidef_set_led_trigger "$1" "$2" "$3" usb-host
}
ucidef_set_led_usbport() {
local obj="$1"
local name="$2"
@@ -404,12 +524,9 @@ ucidef_set_led_usbport() {
shift
shift
json_select_object led
_ucidef_set_led_common "$obj" "$name" "$sysfs"
json_select_object "$obj"
json_add_string name "$name"
json_add_string type usbport
json_add_string sysfs "$sysfs"
json_select_array ports
for port in "$@"; do
json_add_string port "$port"
@@ -421,171 +538,7 @@ ucidef_set_led_usbport() {
}
ucidef_set_led_wlan() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local trigger="$4"
json_select_object led
json_select_object "$1"
json_add_string name "$name"
json_add_string type trigger
json_add_string sysfs "$sysfs"
json_add_string trigger "$trigger"
json_select ..
json_select ..
}
ucidef_set_led_switch() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local trigger="$4"
local port_mask="$5"
local speed_mask="$6"
json_select_object led
json_select_object "$1"
json_add_string name "$name"
json_add_string type switch
json_add_string sysfs "$sysfs"
json_add_string trigger "$trigger"
json_add_string port_mask "$port_mask"
json_add_string speed_mask "$speed_mask"
json_select ..
json_select ..
}
ucidef_set_led_portstate() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local port_state="$4"
json_select_object led
json_select_object "$1"
json_add_string name "$name"
json_add_string type portstate
json_add_string sysfs "$sysfs"
json_add_string trigger port_state
json_add_string port_state "$port_state"
json_select ..
json_select ..
}
ucidef_set_led_default() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local default="$4"
json_select_object led
json_select_object "$1"
json_add_string name "$name"
json_add_string sysfs "$sysfs"
json_add_string default "$default"
json_select ..
json_select ..
}
ucidef_set_led_gpio() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local gpio="$4"
local inverted="$5"
json_select_object led
json_select_object "$1"
json_add_string type gpio
json_add_string name "$name"
json_add_string sysfs "$sysfs"
json_add_string trigger "$trigger"
json_add_int gpio "$gpio"
json_add_boolean inverted "$inverted"
json_select ..
json_select ..
}
ucidef_set_led_ide() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
json_select_object led
json_select_object "$1"
json_add_string name "$name"
json_add_string sysfs "$sysfs"
json_add_string trigger ide-disk
json_select ..
json_select ..
}
__ucidef_set_led_timer() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local trigger="$4"
local delayon="$5"
local delayoff="$6"
json_select_object led
json_select_object "$1"
json_add_string type "$trigger"
json_add_string name "$name"
json_add_string sysfs "$sysfs"
json_add_int delayon "$delayon"
json_add_int delayoff "$delayoff"
json_select ..
json_select ..
}
ucidef_set_led_oneshot() {
__ucidef_set_led_timer $1 $2 $3 "oneshot" $4 $5
}
ucidef_set_led_timer() {
__ucidef_set_led_timer $1 $2 $3 "timer" $4 $5
}
ucidef_set_led_rssi() {
local cfg="led_$1"
local name="$2"
local sysfs="$3"
local iface="$4"
local minq="$5"
local maxq="$6"
local offset="$7"
local factor="$8"
json_select_object led
json_select_object "$1"
json_add_string type rssi
json_add_string name "$name"
json_add_string iface "$iface"
json_add_string sysfs "$sysfs"
json_add_string minq "$minq"
json_add_string maxq "$maxq"
json_add_string offset "$offset"
json_add_string factor "$factor"
json_select ..
json_select ..
_ucidef_set_led_trigger "$1" "$2" "$3" "$4"
}
ucidef_set_rssimon() {
@@ -601,7 +554,6 @@ ucidef_set_rssimon() {
json_select ..
json_select ..
}
ucidef_add_gpio_switch() {

View File

@@ -113,7 +113,7 @@ preinit_ip() {
preinit_config_board
fi
preinit_net_echo "Doing Lede Preinit\n"
preinit_net_echo "Doing OpenWrt Preinit\n"
}
preinit_ip_deconfig() {

View File

@@ -82,7 +82,7 @@ fs_wait_for_key () {
failsafe_wait() {
FAILSAFE=
[ "$pi_preinit_no_failsafe" == "y" ] && {
[ "$pi_preinit_no_failsafe" = "y" ] && {
fs_wait_for_key "" "" $fs_failsafe_wait_timeout
return
}

View File

@@ -5,8 +5,12 @@
run_failsafe_hook() {
[ "$pi_preinit_no_failsafe" = "y" ] && return
if [ "$FAILSAFE" = "true" ]; then
lock /tmp/.failsafe
boot_run_hook failsafe
lock -w /tmp/.failsafe
while [ ! -e /tmp/sysupgrade ]; do
lock -w /tmp/.failsafe
done
exit
fi
}

View File

@@ -8,10 +8,13 @@ failsafe_netlogin () {
}
failsafe_shell() {
lock /tmp/.failsafe
ash --login
echo "Please reboot system when done with failsafe network logins"
while true; do sleep 1; done
local console="$(sed -e 's/ /\n/g' /proc/cmdline | grep '^console=' | head -1 | sed -e 's/^console=//' -e 's/,.*//')"
[ -n "$console" ] || console=console
[ -c "/dev/$console" ] || return 0
while true; do
ash --login <"/dev/$console" >"/dev/$console" 2>"/dev/$console"
sleep 1
done &
}
boot_hook_add failsafe failsafe_netlogin

View File

@@ -2,147 +2,39 @@
RAM_ROOT=/tmp/root
export BACKUP_FILE=sysupgrade.tgz # file extracted by preinit
[ -x /usr/bin/ldd ] || ldd() { LD_TRACE_LOADED_OBJECTS=1 $*; }
libs() { ldd $* 2>/dev/null | sed -r 's/(.* => )?(.*) .*/\2/'; }
install_file() { # <file> [ <file> ... ]
local target dest dir
for file in "$@"; do
if [ -L "$file" ]; then
target="$(readlink -f "$file")"
dest="$RAM_ROOT/$file"
[ ! -f "$dest" ] && {
dir="$(dirname "$dest")"
mkdir -p "$dir"
ln -s "$target" "$dest"
}
file="$target"
fi
dest="$RAM_ROOT/$file"
[ -f $file -a ! -f $dest ] && {
dir="$(dirname $dest)"
[ -f "$file" -a ! -f "$dest" ] && {
dir="$(dirname "$dest")"
mkdir -p "$dir"
cp $file $dest
cp "$file" "$dest"
}
done
}
install_bin() { # <file> [ <symlink> ... ]
install_bin() {
local src files
src=$1
files=$1
[ -x "$src" ] && files="$src $(libs $src)"
install_file $files
shift
for link in "$@"; do {
dest="$RAM_ROOT/$link"
dir="$(dirname $dest)"
mkdir -p "$dir"
[ -f "$dest" ] || ln -s $src $dest
}; done
}
supivot() { # <new_root> <old_root>
/bin/mount | grep "on $1 type" 2>&- 1>&- || /bin/mount -o bind $1 $1
mkdir -p $1$2 $1/proc $1/sys $1/dev $1/tmp $1/overlay && \
/bin/mount -o noatime,move /proc $1/proc && \
pivot_root $1 $1$2 || {
/bin/umount -l $1 $1
return 1
}
/bin/mount -o noatime,move $2/sys /sys
/bin/mount -o noatime,move $2/dev /dev
/bin/mount -o noatime,move $2/tmp /tmp
/bin/mount -o noatime,move $2/overlay /overlay 2>&-
return 0
}
run_ramfs() { # <command> [...]
install_bin /bin/busybox /bin/ash /bin/sh /bin/mount /bin/umount \
/sbin/pivot_root /sbin/reboot /bin/sync /bin/dd /bin/grep \
/bin/cp /bin/mv /bin/tar /usr/bin/md5sum "/usr/bin/[" /bin/dd \
/bin/vi /bin/ls /bin/cat /usr/bin/awk /usr/bin/hexdump \
/bin/sleep /bin/zcat /usr/bin/bzcat /usr/bin/printf /usr/bin/wc \
/bin/cut /usr/bin/printf /bin/sync /bin/mkdir /bin/rmdir \
/bin/rm /usr/bin/basename /bin/kill /bin/chmod /usr/bin/find \
/bin/mknod
install_bin /bin/uclient-fetch /bin/wget
install_bin /sbin/mtd
install_bin /sbin/mount_root
install_bin /sbin/snapshot
install_bin /sbin/snapshot_tool
install_bin /usr/sbin/ubiupdatevol
install_bin /usr/sbin/ubiattach
install_bin /usr/sbin/ubiblock
install_bin /usr/sbin/ubiformat
install_bin /usr/sbin/ubidetach
install_bin /usr/sbin/ubirsvol
install_bin /usr/sbin/ubirmvol
install_bin /usr/sbin/ubimkvol
install_bin /usr/sbin/partx
install_bin /usr/sbin/losetup
install_bin /usr/sbin/mkfs.ext4
for file in $RAMFS_COPY_BIN; do
install_bin ${file//:/ }
done
install_file /etc/resolv.conf /lib/*.sh /lib/functions/*.sh /lib/upgrade/*.sh $RAMFS_COPY_DATA
[ -L "/lib64" ] && ln -s /lib $RAM_ROOT/lib64
supivot $RAM_ROOT /mnt || {
echo "Failed to switch over to ramfs. Please reboot."
exit 1
}
/bin/mount -o remount,ro /mnt
/bin/umount -l /mnt
grep /overlay /proc/mounts > /dev/null && {
/bin/mount -o noatime,remount,ro /overlay
/bin/umount -l /overlay
}
# spawn a new shell from ramdisk to reduce the probability of cache issues
exec /bin/busybox ash -c "$*"
}
kill_remaining() { # [ <signal> ]
local sig="${1:-TERM}"
echo -n "Sending $sig to remaining processes ... "
local my_pid=$$
local my_ppid=$(cut -d' ' -f4 /proc/$my_pid/stat)
local my_ppisupgraded=
grep -q upgraded /proc/$my_ppid/cmdline >/dev/null && {
local my_ppisupgraded=1
}
local stat
for stat in /proc/[0-9]*/stat; do
[ -f "$stat" ] || continue
local pid name state ppid rest
read pid name state ppid rest < $stat
name="${name#(}"; name="${name%)}"
local cmdline
read cmdline < /proc/$pid/cmdline
# Skip kernel threads
[ -n "$cmdline" ] || continue
if [ $$ -eq 1 ] || [ $my_ppid -eq 1 ] && [ -n "$my_ppisupgraded" ]; then
# Running as init process, kill everything except me
if [ $pid -ne $$ ] && [ $pid -ne $my_ppid ]; then
echo -n "$name "
kill -$sig $pid 2>/dev/null
fi
else
case "$name" in
# Skip essential services
*procd*|*ash*|*init*|*watchdog*|*ssh*|*dropbear*|*telnet*|*login*|*hostapd*|*wpa_supplicant*|*nas*|*relayd*) : ;;
# Killable process
*)
if [ $pid -ne $$ ] && [ $ppid -ne $$ ]; then
echo -n "$name "
kill -$sig $pid 2>/dev/null
fi
;;
esac
fi
done
echo ""
}
run_hooks() {
@@ -175,28 +67,31 @@ v() {
[ "$VERBOSE" -ge 1 ] && echo "$@"
}
json_string() {
local v="$1"
v="${v//\\/\\\\}"
v="${v//\"/\\\"}"
echo "\"$v\""
}
rootfs_type() {
/bin/mount | awk '($3 ~ /^\/$/) && ($5 !~ /rootfs/) { print $5 }'
}
get_image() { # <source> [ <command> ]
local from="$1"
local conc="$2"
local cmd
local cmd="$2"
case "$from" in
http://*|ftp://*) cmd="wget -O- -q";;
*) cmd="cat";;
esac
if [ -z "$conc" ]; then
local magic="$(eval $cmd \"$from\" 2>/dev/null | dd bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"')"
if [ -z "$cmd" ]; then
local magic="$(dd if="$from" bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"')"
case "$magic" in
1f8b) conc="zcat";;
425a) conc="bzcat";;
1f8b) cmd="zcat";;
425a) cmd="bzcat";;
*) cmd="cat";;
esac
fi
eval "$cmd \"$from\" 2>/dev/null ${conc:+| $conc}"
cat "$from" 2>/dev/null | $cmd
}
get_magic_word() {
@@ -208,35 +103,53 @@ get_magic_long() {
}
export_bootdevice() {
local cmdline uuid disk uevent line
local cmdline bootdisk rootpart uuid blockdev uevent line class
local MAJOR MINOR DEVNAME DEVTYPE
if read cmdline < /proc/cmdline; then
case "$cmdline" in
*block2mtd=*)
disk="${cmdline##*block2mtd=}"
disk="${disk%%,*}"
bootdisk="${cmdline##*block2mtd=}"
bootdisk="${bootdisk%%,*}"
;;
*root=*)
disk="${cmdline##*root=}"
disk="${disk%% *}"
rootpart="${cmdline##*root=}"
rootpart="${rootpart%% *}"
;;
esac
case "$disk" in
PARTUUID=[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]-02)
uuid="${disk#PARTUUID=}"
uuid="${uuid%-02}"
for disk in $(find /dev -type b); do
set -- $(dd if=$disk bs=1 skip=440 count=4 2>/dev/null | hexdump -v -e '4/1 "%02x "')
case "$bootdisk" in
/dev/*)
uevent="/sys/class/block/${bootdisk##*/}/uevent"
;;
esac
case "$rootpart" in
PARTUUID=[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]-[a-f0-9][a-f0-9])
uuid="${rootpart#PARTUUID=}"
uuid="${uuid%-[a-f0-9][a-f0-9]}"
for blockdev in $(find /dev -type b); do
set -- $(dd if=$blockdev bs=1 skip=440 count=4 2>/dev/null | hexdump -v -e '4/1 "%02x "')
if [ "$4$3$2$1" = "$uuid" ]; then
uevent="/sys/class/block/${disk##*/}/uevent"
uevent="/sys/class/block/${blockdev##*/}/uevent"
break
fi
done
;;
/dev/*)
uevent="/sys/class/block/${disk##*/}/uevent"
uevent="/sys/class/block/${rootpart##*/}/../uevent"
;;
0x[a-f0-9][a-f0-9][a-f0-9] | 0x[a-f0-9][a-f0-9][a-f0-9][a-f0-9] | \
[a-f0-9][a-f0-9][a-f0-9] | [a-f0-9][a-f0-9][a-f0-9][a-f0-9])
rootpart=0x${rootpart#0x}
for class in /sys/class/block/*; do
while read line; do
export -n "$line"
done < "$class/uevent"
if [ $((rootpart/256)) = $MAJOR -a $((rootpart%256)) = $MINOR ]; then
uevent="$class/../uevent"
fi
done
;;
esac
@@ -271,7 +184,7 @@ export_partdevice() {
}
hex_le32_to_cpu() {
[ "$(echo 01 | hexdump -v -n 2 -e '/2 "%x"')" == "3031" ] && {
[ "$(echo 01 | hexdump -v -n 2 -e '/2 "%x"')" = "3031" ] && {
echo "${1:0:2}${1:8:2}${1:6:2}${1:4:2}${1:2:2}"
return
}
@@ -308,14 +221,9 @@ get_partitions() { # <device> <filename>
fi
}
jffs2_copy_config() {
if grep rootfs_data /proc/mtd >/dev/null; then
# squashfs+jffs2
mtd -e rootfs_data jffs2write "$CONF_TAR" rootfs_data
else
# jffs2
mtd jffs2write "$CONF_TAR" rootfs
fi
indicate_upgrade() {
. /etc/diag.sh
set_state upgrade
}
# Flash firmware to MTD partition
@@ -324,32 +232,10 @@ jffs2_copy_config() {
# $(2): (optional) pipe command to extract firmware, e.g. dd bs=n skip=m
default_do_upgrade() {
sync
if [ "$SAVE_CONFIG" -eq 1 ]; then
get_image "$1" "$2" | mtd $MTD_CONFIG_ARGS -j "$CONF_TAR" write - "${PART_NAME:-image}"
if [ -n "$UPGRADE_BACKUP" ]; then
get_image "$1" "$2" | mtd $MTD_ARGS $MTD_CONFIG_ARGS -j "$UPGRADE_BACKUP" write - "${PART_NAME:-image}"
else
get_image "$1" "$2" | mtd write - "${PART_NAME:-image}"
get_image "$1" "$2" | mtd $MTD_ARGS write - "${PART_NAME:-image}"
fi
}
do_upgrade() {
v "Performing system upgrade..."
if type 'platform_do_upgrade' >/dev/null 2>/dev/null; then
platform_do_upgrade "$ARGV"
else
default_do_upgrade "$ARGV"
fi
if [ "$SAVE_CONFIG" -eq 1 ] && type 'platform_copy_config' >/dev/null 2>/dev/null; then
platform_copy_config
fi
v "Upgrade completed"
[ -n "$DELAY" ] && sleep "$DELAY"
ask_bool 1 "Reboot" && {
v "Rebooting system..."
umount -a
reboot -f
sleep 5
echo b 2>/dev/null >/proc/sysrq-trigger
}
[ $? -ne 0 ] && exit 1
}

View File

@@ -0,0 +1,25 @@
#!/bin/sh
. /lib/functions.sh
include /lib/upgrade
v "Performing system upgrade..."
if type 'platform_do_upgrade' >/dev/null 2>/dev/null; then
platform_do_upgrade "$IMAGE"
else
default_do_upgrade "$IMAGE"
fi
if [ -n "$UPGRADE_BACKUP" ] && type 'platform_copy_config' >/dev/null 2>/dev/null; then
platform_copy_config
fi
v "Upgrade completed"
sleep 1
v "Rebooting system..."
umount -a
reboot -f
sleep 5
echo b 2>/dev/null >/proc/sysrq-trigger

View File

@@ -1,5 +1,27 @@
fwtool_pre_upgrade() {
fwtool -q -i /dev/null "$1"
fwtool_check_signature() {
[ $# -gt 1 ] && return 1
[ ! -x /usr/bin/ucert ] && {
if [ "$REQUIRE_IMAGE_SIGNATURE" = 1 ]; then
return 1
else
return 0
fi
}
if ! fwtool -q -s /tmp/sysupgrade.ucert "$1"; then
echo "Image signature not found"
[ "$REQUIRE_IMAGE_SIGNATURE" = 1 -a "$FORCE" != 1 ] && {
echo "Use sysupgrade -F to override this check when downgrading or flashing to vendor firmware"
}
[ "$REQUIRE_IMAGE_SIGNATURE" = 1 ] && return 1
return 0
fi
fwtool -q -T -s /dev/null "$1" | \
ucert -V -m - -c "/tmp/sysupgrade.ucert" -P /etc/opkg/keys
return $?
}
fwtool_check_image() {

View File

@@ -5,10 +5,13 @@
. /lib/functions.sh
# 'kernel' partition on NAND contains the kernel
CI_KERNPART="kernel"
CI_KERNPART="${CI_KERNPART:-kernel}"
# 'ubi' partition on NAND contains UBI
CI_UBIPART="ubi"
CI_UBIPART="${CI_UBIPART:-ubi}"
# 'rootfs' partition on NAND contains the rootfs
CI_ROOTPART="${CI_ROOTPART:-rootfs}"
ubi_mknod() {
local dir="$1"
@@ -99,14 +102,14 @@ nand_restore_config() {
local ubidev=$( nand_find_ubi $CI_UBIPART )
local ubivol="$( nand_find_volume $ubidev rootfs_data )"
[ ! "$ubivol" ] &&
ubivol="$( nand_find_volume $ubidev rootfs )"
ubivol="$( nand_find_volume $ubidev $CI_ROOTPART )"
mkdir /tmp/new_root
if ! mount -t ubifs /dev/$ubivol /tmp/new_root; then
echo "mounting ubifs $ubivol failed"
rmdir /tmp/new_root
return 1
fi
mv "$1" "/tmp/new_root/sysupgrade.tgz"
mv "$1" "/tmp/new_root/$BACKUP_FILE"
umount /tmp/new_root
sync
rmdir /tmp/new_root
@@ -142,8 +145,8 @@ nand_upgrade_prepare_ubi() {
}
fi
local kern_ubivol="$( nand_find_volume $ubidev kernel )"
local root_ubivol="$( nand_find_volume $ubidev rootfs )"
local kern_ubivol="$( nand_find_volume $ubidev $CI_KERNPART )"
local root_ubivol="$( nand_find_volume $ubidev $CI_ROOTPART )"
local data_ubivol="$( nand_find_volume $ubidev rootfs_data )"
# remove ubiblock device of rootfs
@@ -157,13 +160,13 @@ nand_upgrade_prepare_ubi() {
fi
# kill volumes
[ "$kern_ubivol" ] && ubirmvol /dev/$ubidev -N kernel || true
[ "$root_ubivol" ] && ubirmvol /dev/$ubidev -N rootfs || true
[ "$kern_ubivol" ] && ubirmvol /dev/$ubidev -N $CI_KERNPART || true
[ "$root_ubivol" ] && ubirmvol /dev/$ubidev -N $CI_ROOTPART || true
[ "$data_ubivol" ] && ubirmvol /dev/$ubidev -N rootfs_data || true
# update kernel
if [ "$has_kernel" = "1" ]; then
if ! ubimkvol /dev/$ubidev -N kernel -s $kernel_length; then
if ! ubimkvol /dev/$ubidev -N $CI_KERNPART -s $kernel_length; then
echo "cannot create kernel volume"
return 1;
fi
@@ -176,7 +179,7 @@ nand_upgrade_prepare_ubi() {
else
root_size_param="-s $rootfs_length"
fi
if ! ubimkvol /dev/$ubidev -N rootfs $root_size_param; then
if ! ubimkvol /dev/$ubidev -N $CI_ROOTPART $root_size_param; then
echo "cannot create rootfs volume"
return 1;
fi
@@ -194,7 +197,7 @@ nand_upgrade_prepare_ubi() {
nand_do_upgrade_success() {
local conf_tar="/tmp/sysupgrade.tgz"
sync
[ -f "$conf_tar" ] && nand_restore_config "$conf_tar"
echo "sysupgrade successful"
@@ -231,38 +234,31 @@ nand_upgrade_ubifs() {
local rootfs_length=`(cat $1 | wc -c) 2> /dev/null`
nand_upgrade_prepare_ubi "$rootfs_length" "ubifs" "0" "0"
local ubidev="$( nand_find_ubi "$CI_UBIPART" )"
local root_ubivol="$(nand_find_volume $ubidev rootfs)"
local root_ubivol="$(nand_find_volume $ubidev $CI_ROOTPART)"
ubiupdatevol /dev/$root_ubivol -s $rootfs_length $1
nand_do_upgrade_success
}
nand_board_name() {
if type 'platform_nand_board_name' >/dev/null 2>/dev/null; then
platform_nand_board_name
return
fi
cat /tmp/sysinfo/board_name
}
nand_upgrade_tar() {
local tar_file="$1"
local board_name="$(nand_board_name)"
local kernel_mtd="$(find_mtd_index $CI_KERNPART)"
local kernel_length=`(tar xf $tar_file sysupgrade-$board_name/kernel -O | wc -c) 2> /dev/null`
local rootfs_length=`(tar xf $tar_file sysupgrade-$board_name/root -O | wc -c) 2> /dev/null`
local board_dir=$(tar tf $tar_file | grep -m 1 '^sysupgrade-.*/$')
board_dir=${board_dir%/}
local rootfs_type="$(identify_tar "$tar_file" sysupgrade-$board_name/root)"
local kernel_length=`(tar xf $tar_file ${board_dir}/kernel -O | wc -c) 2> /dev/null`
local rootfs_length=`(tar xf $tar_file ${board_dir}/root -O | wc -c) 2> /dev/null`
local rootfs_type="$(identify_tar "$tar_file" ${board_dir}/root)"
local has_kernel=1
local has_env=0
[ "$kernel_length" != 0 -a -n "$kernel_mtd" ] && {
tar xf $tar_file sysupgrade-$board_name/kernel -O | mtd write - $CI_KERNPART
tar xf $tar_file ${board_dir}/kernel -O | mtd write - $CI_KERNPART
}
[ "$kernel_length" = 0 -o ! -z "$kernel_mtd" ] && has_kernel=0
@@ -270,20 +266,20 @@ nand_upgrade_tar() {
local ubidev="$( nand_find_ubi "$CI_UBIPART" )"
[ "$has_kernel" = "1" ] && {
local kern_ubivol="$(nand_find_volume $ubidev kernel)"
tar xf $tar_file sysupgrade-$board_name/kernel -O | \
local kern_ubivol="$(nand_find_volume $ubidev $CI_KERNPART)"
tar xf $tar_file ${board_dir}/kernel -O | \
ubiupdatevol /dev/$kern_ubivol -s $kernel_length -
}
local root_ubivol="$(nand_find_volume $ubidev rootfs)"
tar xf $tar_file sysupgrade-$board_name/root -O | \
local root_ubivol="$(nand_find_volume $ubidev $CI_ROOTPART)"
tar xf $tar_file ${board_dir}/root -O | \
ubiupdatevol /dev/$root_ubivol -s $rootfs_length -
nand_do_upgrade_success
}
# Recognize type of passed file and start the upgrade process
nand_do_upgrade_stage2() {
nand_do_upgrade() {
local file_type=$(identify $1)
if type 'platform_nand_pre_upgrade' >/dev/null 2>/dev/null; then
@@ -299,45 +295,6 @@ nand_do_upgrade_stage2() {
esac
}
nand_upgrade_stage2() {
[ $1 = "nand" ] && {
[ -f "$2" ] && {
touch /tmp/sysupgrade
killall -9 telnetd
killall -9 dropbear
killall -9 ash
kill_remaining TERM
sleep 3
kill_remaining KILL
sleep 1
if [ -n "$(rootfs_type)" ]; then
v "Switching to ramdisk..."
run_ramfs ". /lib/functions.sh; include /lib/upgrade; nand_do_upgrade_stage2 $2"
else
nand_do_upgrade_stage2 $2
fi
return 0
}
echo "Nand upgrade failed"
exit 1
}
}
nand_upgrade_stage1() {
[ -f /tmp/sysupgrade-nand-path ] && {
path="$(cat /tmp/sysupgrade-nand-path)"
[ "$SAVE_CONFIG" != 1 -a -f "$CONF_TAR" ] &&
rm $CONF_TAR
ubus call system nandupgrade "{\"path\": \"$path\" }"
exit 0
}
}
# Check if passed file is a valid one for NAND sysupgrade. Currently it accepts
# 3 types of files:
# 1) UBI - should contain an ubinized image, header is checked for the proper
@@ -364,12 +321,3 @@ nand_do_platform_check() {
return 0
}
# Start NAND upgrade process
#
# $(1): file to be used for upgrade
nand_do_upgrade() {
echo -n $1 > /tmp/sysupgrade-nand-path
cp /sbin/upgraded /tmp/
nand_upgrade_stage1
}

View File

@@ -0,0 +1,137 @@
#!/bin/sh
. /lib/functions.sh
. /lib/functions/system.sh
export IMAGE="$1"
COMMAND="$2"
export INTERACTIVE=0
export VERBOSE=1
export CONFFILES=/tmp/sysupgrade.conffiles
RAMFS_COPY_BIN= # extra programs for temporary ramfs root
RAMFS_COPY_DATA= # extra data files
include /lib/upgrade
supivot() { # <new_root> <old_root>
/bin/mount | grep "on $1 type" 2>&- 1>&- || /bin/mount -o bind $1 $1
mkdir -p $1$2 $1/proc $1/sys $1/dev $1/tmp $1/overlay && \
/bin/mount -o noatime,move /proc $1/proc && \
pivot_root $1 $1$2 || {
/bin/umount -l $1 $1
return 1
}
/bin/mount -o noatime,move $2/sys /sys
/bin/mount -o noatime,move $2/dev /dev
/bin/mount -o noatime,move $2/tmp /tmp
/bin/mount -o noatime,move $2/overlay /overlay 2>&-
return 0
}
switch_to_ramfs() {
for binary in \
/bin/busybox /bin/ash /bin/sh /bin/mount /bin/umount \
pivot_root mount_root reboot sync kill sleep \
md5sum hexdump cat zcat bzcat dd tar \
ls basename find cp mv rm mkdir rmdir mknod touch chmod \
'[' printf wc grep awk sed cut \
mtd partx losetup mkfs.ext4 \
ubiupdatevol ubiattach ubiblock ubiformat \
ubidetach ubirsvol ubirmvol ubimkvol \
snapshot snapshot_tool \
$RAMFS_COPY_BIN
do
local file="$(which "$binary" 2>/dev/null)"
[ -n "$file" ] && install_bin "$file"
done
install_file /etc/resolv.conf /lib/*.sh /lib/functions/*.sh /lib/upgrade/*.sh /lib/upgrade/do_stage2 /usr/share/libubox/jshn.sh $RAMFS_COPY_DATA
[ -L "/lib64" ] && ln -s /lib $RAM_ROOT/lib64
supivot $RAM_ROOT /mnt || {
echo "Failed to switch over to ramfs. Please reboot."
exit 1
}
/bin/mount -o remount,ro /mnt
/bin/umount -l /mnt
grep /overlay /proc/mounts > /dev/null && {
/bin/mount -o noatime,remount,ro /overlay
/bin/umount -l /overlay
}
}
kill_remaining() { # [ <signal> [ <loop> ] ]
local loop_limit=10
local sig="${1:-TERM}"
local loop="${2:-0}"
local run=true
local stat
local proc_ppid=$(cut -d' ' -f4 /proc/$$/stat)
echo -n "Sending $sig to remaining processes ... "
while $run; do
run=false
for stat in /proc/[0-9]*/stat; do
[ -f "$stat" ] || continue
local pid name state ppid rest
read pid name state ppid rest < $stat
name="${name#(}"; name="${name%)}"
# Skip PID1, our parent, ourself and our children
[ $pid -ne 1 -a $pid -ne $proc_ppid -a $pid -ne $$ -a $ppid -ne $$ ] || continue
local cmdline
read cmdline < /proc/$pid/cmdline
# Skip kernel threads
[ -n "$cmdline" ] || continue
echo -n "$name "
kill -$sig $pid 2>/dev/null
[ $loop -eq 1 ] && run=true
done
let loop_limit--
[ $loop_limit -eq 0 ] && {
echo
echo "Failed to kill all processes."
exit 1
}
done
echo
}
indicate_upgrade
killall -9 telnetd
killall -9 dropbear
killall -9 ash
kill_remaining TERM
sleep 3
kill_remaining KILL 1
sleep 1
if [ -n "$IMAGE" ] && type 'platform_pre_upgrade' >/dev/null 2>/dev/null; then
platform_pre_upgrade "$IMAGE"
fi
if [ -n "$(rootfs_type)" ]; then
echo "Switching to ramdisk..."
switch_to_ramfs
fi
# Exec new shell from ramfs
exec /bin/busybox ash -c "$COMMAND"

View File

@@ -0,0 +1,130 @@
#!/bin/sh
#
# Package checksums checking script
# (C) 2018 CZ.NIC, z.s.p.o.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
ERRFATAL="no"
QUIET="yes"
MISSING=""
SUMMARY=""
NL="
"
# Arguments parsing
while expr "x$1" : "x-" > /dev/null; do
if [ "x$1" = "x-s" ]; then
ERRFATAL="yes"
shift
elif [ "x$1" = "x-v" ]; then
QUIET=" no"
shift
else
echo "Usage: $(basename $0) [-s] [-v] [pkg1 pkg2 ...]"
echo
echo " -s Stop on first change"
echo " -v Verbose"
if [ "x$1" = "x-h" ]; then
exit 0
else
echo
echo "ERROR: Unknown option '$1'"
exit 1
fi
fi
done
# Check all packages by default
if [ -z "$1" ]; then
set $(cd /usr/lib/opkg/info/; for i in *.files-sha256sum; do basename $i .files-sha256sum; done)
fi
# Iterate over packages
while [ "$1" ]; do
if [ \! -f "/usr/lib/opkg/info/$1.files-sha256sum" ]; then
if [ "$ERRFATAL" = no ]; then
echo " * No checksums for $1 - skipping"
echo
else
echo " * No checksums for $1 - exiting"
exit 1
fi
if [ -z "$MISSING" ]; then
MISSING="$1"
else
MISSING="$MISSING, $1"
fi
shift
continue
fi
[ $QUIET = yes ] || echo " * Checking package $1:"
ERR=""
CHECK="`sha256sum -c /usr/lib/opkg/info/$1.files-sha256sum 2> /dev/null`"
# Are the changed files config files?
if [ $? -ne 0 ] && [ "`cat "/usr/lib/opkg/info/$1.files-sha256sum"`" ]; then
NEWCHECK="`echo "$CHECK" | grep '^.*: OK$'`"
for i in `echo "$CHECK" | sed -n 's|^\(.*\): FAILED$|\1|p'`; do
if [ "`grep "^$i\$" "/usr/lib/opkg/info/$1.conffiles" 2> /dev/null`" ] || \
[ "`echo "$i" | grep "^/etc/uci-defaults/"`" ]; then
NEWCHECK="${NEWCHECK}${NL}${i}: CONFIGURED"
else
NEWCHECK="${NEWCHECK}${NL}${i}: FAILED"
ERR="y"
fi
done
CHECK="$NEWCHECK"
fi
# Do we have changed files or not?
if [ -z "$ERR" ]; then
[ $QUIET = yes ] || [ -z "`cat "/usr/lib/opkg/info/$1.files-sha256sum"`" ] || echo "$CHECK" | sed 's|^| - |'
[ $QUIET = yes ] || echo " * Package $1 is ok"
[ $QUIET = yes ] || echo
else
if [ $QUIET = yes ]; then
echo " * Changes found in package $1:"
echo "$CHECK" | sed -n 's|^\(.*:[[:blank:]]*FAILED\)$| - \1|p'
else
echo "$CHECK" | sed 's|^| - |'
echo " * Changes found in package $1!"
fi
if [ "$ERRFATAL" = yes ]; then
echo
echo "Exiting on first change found!"
exit 1
fi
for i in `echo "$CHECK" | sed -n 's|^\(.*\): FAILED$|\1|p'`; do
SUMMARY="${SUMMARY}${NL} - $1: $i"
done
echo
fi
shift
done
# If there are changed files, report them
if [ "$SUMMARY" ]; then
echo "Some packages contain changed files!"
echo "Maybe something worth looking into?"
echo "Here is the list of packages and changed files:"
echo "$SUMMARY"
fi
if [ "$MISSING" ]; then
echo "Following packages are missing checksums: $MISSING"
fi
if [ "$MISSING" ] || [ "$SUMMARY" ]; then
exit 1
fi

View File

@@ -1,17 +1,20 @@
#!/bin/sh
. /lib/functions.sh
. /lib/functions/system.sh
. /usr/share/libubox/jshn.sh
# initialize defaults
RAMFS_COPY_BIN="" # extra programs for temporary ramfs root
RAMFS_COPY_DATA="" # extra data files
export MTD_ARGS=""
export MTD_CONFIG_ARGS=""
export INTERACTIVE=0
export VERBOSE=1
export SAVE_CONFIG=1
export SAVE_OVERLAY=0
export SAVE_OVERLAY_PATH=
export SAVE_PARTITIONS=1
export DELAY=
export SAVE_INSTALLED_PKGS=0
export SKIP_UNCHANGED=0
export CONF_IMAGE=
export CONF_BACKUP_LIST=0
export CONF_BACKUP=
@@ -20,26 +23,29 @@ export NEED_IMAGE=
export HELP=0
export FORCE=0
export TEST=0
export UMOUNT_ETCBACKUP_DIR=0
# parse options
while [ -n "$1" ]; do
case "$1" in
-i) export INTERACTIVE=1;;
-d) export DELAY="$2"; shift;;
-v) export VERBOSE="$(($VERBOSE + 1))";;
-q) export VERBOSE="$(($VERBOSE - 1))";;
-n) export SAVE_CONFIG=0;;
-c) export SAVE_OVERLAY=1;;
-c) export SAVE_OVERLAY=1 SAVE_OVERLAY_PATH=/etc;;
-o) export SAVE_OVERLAY=1 SAVE_OVERLAY_PATH=/;;
-p) export SAVE_PARTITIONS=0;;
-k) export SAVE_INSTALLED_PKGS=1;;
-u) export SKIP_UNCHANGED=1;;
-b|--create-backup) export CONF_BACKUP="$2" NEED_IMAGE=1; shift;;
-r|--restore-backup) export CONF_RESTORE="$2" NEED_IMAGE=1; shift;;
-l|--list-backup) export CONF_BACKUP_LIST=1; break;;
-l|--list-backup) export CONF_BACKUP_LIST=1;;
-f) export CONF_IMAGE="$2"; shift;;
-F|--force) export FORCE=1;;
-T|--test) export TEST=1;;
-h|--help) export HELP=1; break;;
-*)
echo "Invalid option: $1"
echo "Invalid option: $1" >&2
exit 1
;;
*) break;;
@@ -49,22 +55,27 @@ done
export CONFFILES=/tmp/sysupgrade.conffiles
export CONF_TAR=/tmp/sysupgrade.tgz
export ETCBACKUP_DIR=/etc/backup
export INSTALLED_PACKAGES=${ETCBACKUP_DIR}/installed_packages.txt
export ARGV="$*"
export ARGC="$#"
IMAGE="$1"
[ -z "$ARGV" -a -z "$NEED_IMAGE" -o $HELP -gt 0 ] && {
[ -z "$IMAGE" -a -z "$NEED_IMAGE" -a $CONF_BACKUP_LIST -eq 0 -o $HELP -gt 0 ] && {
cat <<EOF
Usage: $0 [<upgrade-option>...] <image file or URL>
$0 [-q] [-i] <backup-command> <file>
$0 [-q] [-i] [-c] [-u] [-o] [-k] <backup-command> <file>
upgrade-option:
-d <delay> add a delay before rebooting
-f <config> restore configuration from .tar.gz (file or url)
-i interactive mode
-c attempt to preserve all changed files in /etc/
-o attempt to preserve all changed files in /, except those
from packages but including changed confs.
-u skip from backup files that are equal to those in /rom
-n do not save configuration over reflash
-p do not attempt to restore the partition table after flash.
-k include in backup a list of current installed packages at
$INSTALLED_PACKAGES
-T | --test
Verify image and config .tar.gz but do not actually flash.
-F | --force
@@ -90,7 +101,7 @@ EOF
exit 1
}
[ -n "$ARGV" -a -n "$NEED_IMAGE" ] && {
[ -n "$IMAGE" -a -n "$NEED_IMAGE" ] && {
cat <<-EOF
-b|--create-backup and -r|--restore-backup do not perform a firmware upgrade.
Do not specify both -b|-r and a firmware image.
@@ -120,63 +131,140 @@ list_changed_conffiles() {
done
}
add_uci_conffiles() {
add_conffiles() {
local file="$1"
( find $(sed -ne '/^[[:space:]]*$/d; /^#/d; p' \
/etc/sysupgrade.conf /lib/upgrade/keep.d/* 2>/dev/null) \
-type f -o -type l 2>/dev/null;
\( -type f -o -type l \) $find_filter 2>/dev/null;
list_changed_conffiles ) | sort -u > "$file"
return 0
}
add_overlayfiles() {
local file="$1"
if [ -d /overlay/upper ]; then
local overlaydir="/overlay/upper"
else
local overlaydir="/overlay"
local packagesfiles=$1.packagesfiles
touch "$packagesfiles"
if [ "$SAVE_OVERLAY_PATH" = / ]; then
local conffiles=$1.conffiles
local keepfiles=$1.keepfiles
list_conffiles | cut -f2 -d ' ' | sort -u > "$conffiles"
# backup files from /etc/sysupgrade.conf and /lib/upgrade/keep.d, but
# ignore those aready controlled by opkg conffiles
find $(sed -ne '/^[[:space:]]*$/d; /^#/d; p' \
/etc/sysupgrade.conf /lib/upgrade/keep.d/* 2>/dev/null) \
\( -type f -o -type l \) 2>/dev/null | sort -u |
grep -h -v -x -F -f $conffiles > "$keepfiles"
# backup conffiles, but only those changed if '-u'
[ $SKIP_UNCHANGED = 1 ] &&
list_changed_conffiles | sort -u > "$conffiles"
# do not backup files from packages, except those listed
# in conffiles and keep.d
{
find /usr/lib/opkg/info -type f -name "*.list" -exec cat {} \;
find /usr/lib/opkg/info -type f -name "*.control" -exec sed \
-ne '/^Alternatives/{s/^Alternatives: //;s/, /\n/g;p}' {} \; |
cut -f2 -d:
} | grep -v -x -F -f $conffiles |
grep -v -x -F -f $keepfiles | sort -u > "$packagesfiles"
rm -f "$keepfiles" "$conffiles"
fi
find $overlaydir/etc/ -type f -o -type l | sed \
-e 's,^/overlay\/upper/,/,' \
-e 's,^/overlay/,/,' \
-e '\,/META_[a-zA-Z0-9]*$,d' \
-e '\,/functions.sh$,d' \
# busybox grep bug when file is empty
[ -s "$packagesfiles" ] || echo > $packagesfiles
( cd /overlay/upper/; find .$SAVE_OVERLAY_PATH \( -type f -o -type l \) $find_filter | sed \
-e 's,^\.,,' \
-e '\,^/etc/board.json$,d' \
-e '\,/[^/]*-opkg$,d' \
> "$file"
-e '\,^/etc/urandom.seed$,d' \
-e "\,^$INSTALLED_PACKAGES$,d" \
-e '\,^/usr/lib/opkg/.*,d' \
) | grep -v -x -F -f $packagesfiles > "$file"
rm -f "$packagesfiles"
return 0
}
# hooks
sysupgrade_image_check="fwtool_check_image platform_check_image"
sysupgrade_pre_upgrade="fwtool_pre_upgrade"
[ $SAVE_OVERLAY = 0 -o ! -d /overlay/etc ] && \
sysupgrade_init_conffiles="add_uci_conffiles" || \
if [ $SAVE_OVERLAY = 1 ]; then
[ ! -d /overlay/upper/etc ] && {
echo "Cannot find '/overlay/upper/etc', required for '-c'" >&2
exit 1
}
sysupgrade_init_conffiles="add_overlayfiles"
else
sysupgrade_init_conffiles="add_conffiles"
fi
find_filter=""
if [ $SKIP_UNCHANGED = 1 ]; then
[ ! -d /rom/ ] && {
echo "'/rom/' is required by '-u'"
exit 1
}
find_filter='( ( -exec test -e /rom/{} ; -exec cmp -s /{} /rom/{} ; ) -o -print )'
fi
include /lib/upgrade
[ "$1" = "nand" ] && nand_upgrade_stage2 $@
do_save_conffiles() {
local conf_tar="${1:-$CONF_TAR}"
local conf_tar="$1"
[ -z "$(rootfs_type)" ] && {
echo "Cannot save config while running from ramdisk."
echo "Cannot save config while running from ramdisk." >&2
ask_bool 0 "Abort" && exit
rm -f "$conf_tar"
return 0
}
run_hooks "$CONFFILES" $sysupgrade_init_conffiles
ask_bool 0 "Edit config file list" && vi "$CONFFILES"
if [ "$SAVE_INSTALLED_PKGS" -eq 1 ]; then
echo "${INSTALLED_PACKAGES}" >> "$CONFFILES"
mkdir -p "$ETCBACKUP_DIR"
# Avoid touching filesystem on each backup
RAMFS="$(mktemp -d -t sysupgrade.XXXXXX)"
mkdir -p "$RAMFS/upper" "$RAMFS/work"
mount -t overlay overlay -o lowerdir=$ETCBACKUP_DIR,upperdir=$RAMFS/upper,workdir=$RAMFS/work $ETCBACKUP_DIR &&
UMOUNT_ETCBACKUP_DIR=1 || {
echo "Cannot mount '$ETCBACKUP_DIR' as tmpfs to avoid touching disk while saving the list of installed packages." >&2
ask_bool 0 "Abort" && exit
}
# Format: pkg-name<TAB>{rom,overlay,unkown}
# rom is used for pkgs in /rom, even if updated later
find /usr/lib/opkg/info -name "*.control" \( \
\( -exec test -f /rom/{} \; -exec echo {} rom \; \) -o \
\( -exec test -f /overlay/upper/{} \; -exec echo {} overlay \; \) -o \
\( -exec echo {} unknown \; \) \
\) | sed -e 's,.*/,,;s/\.control /\t/' > ${INSTALLED_PACKAGES}
fi
v "Saving config files..."
[ "$VERBOSE" -gt 1 ] && TAR_V="v" || TAR_V=""
tar c${TAR_V}zf "$conf_tar" -T "$CONFFILES" 2>/dev/null
if [ "$?" -ne 0 ]; then
echo "Failed to create the configuration backup."
rm -f "$conf_tar"
exit 1
fi
[ "$UMOUNT_ETCBACKUP_DIR" -eq 1 ] && {
umount "$ETCBACKUP_DIR"
rm -rf "$RAMFS"
}
rm -f "$CONFFILES"
}
if [ $CONF_BACKUP_LIST -eq 1 ]; then
add_uci_conffiles "$CONFFILES"
run_hooks "$CONFFILES" $sysupgrade_init_conffiles
[ "$SAVE_INSTALLED_PKGS" -eq 1 ] && echo ${INSTALLED_PACKAGES} >> "$CONFFILES"
cat "$CONFFILES"
rm -f "$CONFFILES"
exit 0
@@ -189,7 +277,7 @@ fi
if [ -n "$CONF_RESTORE" ]; then
if [ "$CONF_RESTORE" != "-" ] && [ ! -f "$CONF_RESTORE" ]; then
echo "Backup archive '$CONF_RESTORE' not found."
echo "Backup archive '$CONF_RESTORE' not found." >&2
exit 1
fi
@@ -199,37 +287,63 @@ if [ -n "$CONF_RESTORE" ]; then
fi
type platform_check_image >/dev/null 2>/dev/null || {
echo "Firmware upgrade is not implemented for this platform."
echo "Firmware upgrade is not implemented for this platform." >&2
exit 1
}
for check in $sysupgrade_image_check; do
( eval "$check \"\$ARGV\"" ) || {
if [ $FORCE -eq 1 ]; then
echo "Image check '$check' failed but --force given - will update anyway!"
break
else
echo "Image check '$check' failed."
exit 1
fi
}
done
case "$IMAGE" in
http://*|\
https://*)
wget -O/tmp/sysupgrade.img "$IMAGE" || exit 1
IMAGE=/tmp/sysupgrade.img
;;
esac
IMAGE="$(readlink -f "$IMAGE")"
case "$IMAGE" in
'')
echo "Image file not found." >&2
exit 1
;;
/tmp/*) ;;
*)
v "Image not in /tmp, copying..."
cp -f "$IMAGE" /tmp/sysupgrade.img
IMAGE=/tmp/sysupgrade.img
;;
esac
json_load "$(/usr/libexec/validate_firmware_image "$IMAGE")" || {
echo "Failed to check image"
exit 1
}
json_get_var valid "valid"
[ "$valid" -eq 0 ] && {
if [ $FORCE -eq 1 ]; then
echo "Image check failed but --force given - will update anyway!" >&2
else
echo "Image check failed." >&2
exit 1
fi
}
if [ -n "$CONF_IMAGE" ]; then
case "$(get_magic_word $CONF_IMAGE cat)" in
# .gz files
1f8b) ;;
*)
echo "Invalid config file. Please use only .tar.gz files"
echo "Invalid config file. Please use only .tar.gz files" >&2
exit 1
;;
esac
get_image "$CONF_IMAGE" "cat" > "$CONF_TAR"
export SAVE_CONFIG=1
elif ask_bool $SAVE_CONFIG "Keep config files over reflash"; then
[ $TEST -eq 1 ] || do_save_conffiles
[ $TEST -eq 1 ] || do_save_conffiles "$CONF_TAR"
export SAVE_CONFIG=1
else
[ $TEST -eq 1 ] || rm -f "$CONF_TAR"
export SAVE_CONFIG=0
fi
@@ -237,28 +351,27 @@ if [ $TEST -eq 1 ]; then
exit 0
fi
run_hooks "" $sysupgrade_pre_upgrade
install_bin /sbin/upgraded
v "Commencing upgrade. Closing all shell sessions."
# Some platforms/devices may want different sysupgrade process, e.g. without
# killing processes yet or calling ubus system upgrade method.
# This is needed e.g. on NAND devices where we just want to trigger stage1 at
# this point.
if type 'platform_pre_upgrade' >/dev/null 2>/dev/null; then
platform_pre_upgrade "$ARGV"
fi
COMMAND='/lib/upgrade/do_stage2'
ubus call system upgrade
touch /tmp/sysupgrade
if [ ! -f /tmp/failsafe ] ; then
kill_remaining TERM
sleep 3
kill_remaining KILL
fi
if [ -n "$(rootfs_type)" ]; then
v "Switching to ramdisk..."
run_ramfs '. /lib/functions.sh; include /lib/upgrade; do_upgrade'
if [ -n "$FAILSAFE" ]; then
printf '%s\x00%s\x00%s' "$RAM_ROOT" "$IMAGE" "$COMMAND" >/tmp/sysupgrade
lock -u /tmp/.failsafe
else
do_upgrade
force_attr=""
[ $FORCE -eq 1 ] && force_attr="\"force\": true,"
backup_attr=""
[ $SAVE_CONFIG -eq 1 ] && backup_attr="\"backup\": $(json_string $CONF_TAR),"
ubus call system sysupgrade "{
\"prefix\": $(json_string "$RAM_ROOT"),
\"path\": $(json_string "$IMAGE"),
$force_attr
$backup_attr
\"command\": $(json_string "$COMMAND"),
\"options\": {
\"save_partitions\": $SAVE_PARTITIONS
}
}"
fi

View File

@@ -6,7 +6,7 @@
usage() {
cat <<EOF
Usage: $0 [config|down|reload|status]
Usage: $0 [config|up|down|reload|status]
enables (default), disables or configures devices not yet configured.
EOF
exit 1
@@ -241,5 +241,6 @@ case "$1" in
reload) wifi_reload "$2";;
reload_legacy) wifi_reload_legacy "$2";;
--help|help) usage;;
*) ubus call network reload; wifi_updown "enable" "$2";;
''|up) ubus call network reload; wifi_updown "enable" "$2";;
*) usage; exit 1;;
esac

View File

@@ -1,18 +1,18 @@
NAME="%D"
VERSION="%V, %N"
VERSION="%V"
ID="%d"
ID_LIKE="lede openwrt"
PRETTY_NAME="%D %N %V"
PRETTY_NAME="%D %V"
VERSION_ID="%v"
HOME_URL="%m"
HOME_URL="%u"
BUG_URL="%b"
SUPPORT_URL="%s"
BUILD_ID="%R"
LEDE_BOARD="%S"
LEDE_ARCH="%A"
LEDE_TAINTS="%t"
LEDE_DEVICE_MANUFACTURER="%M"
LEDE_DEVICE_MANUFACTURER_URL="%m"
LEDE_DEVICE_PRODUCT="%P"
LEDE_DEVICE_REVISION="%h"
LEDE_RELEASE="%D %N %V %C"
OPENWRT_BOARD="%S"
OPENWRT_ARCH="%A"
OPENWRT_TAINTS="%t"
OPENWRT_DEVICE_MANUFACTURER="%M"
OPENWRT_DEVICE_MANUFACTURER_URL="%m"
OPENWRT_DEVICE_PRODUCT="%P"
OPENWRT_DEVICE_REVISION="%h"
OPENWRT_RELEASE="%D %V %C"

View File

@@ -1,5 +1,5 @@
#!/bin/sh
[ "$(uci -q get system.@system[0].ttylogin)" == 1 ] || exec /bin/ash --login
[ "$(uci -q get system.@system[0].ttylogin)" = 1 ] || exec /bin/ash --login
exec /bin/login

View File

@@ -0,0 +1,66 @@
#!/bin/sh
. /lib/functions.sh
. /lib/functions/system.sh
. /usr/share/libubox/jshn.sh
include /lib/upgrade
VALID=1
FORCEABLE=1
ALLOW_BACKUP=1
# Mark image as invalid but still possible to install
notify_firmware_invalid() {
VALID=0
}
# Mark image as broken (impossible to install)
notify_firmware_broken() {
VALID=0
FORCEABLE=0
}
# Mark image as incompatible with preserving a backup
notify_firmware_no_backup() {
ALLOW_BACKUP=0
}
# Add result of validation test
notify_firmware_test_result() {
local old_ns
json_set_namespace validate_firmware_image old_ns
json_add_boolean "$1" "$2"
json_set_namespace $old_ns
}
err_to_bool() {
[ "$1" -ne 0 ] && echo 0 || echo 1
}
fwtool_check_signature "$1" >&2
FWTOOL_SIGNATURE=$?
[ "$FWTOOL_SIGNATURE" -ne 0 ] && notify_firmware_invalid
fwtool_check_image "$1" >&2
FWTOOL_DEVICE_MATCH=$?
[ "$FWTOOL_DEVICE_MATCH" -ne 0 ] && notify_firmware_invalid
json_set_namespace validate_firmware_image old_ns
json_init
json_add_object "tests"
json_add_boolean fwtool_signature "$(err_to_bool $FWTOOL_SIGNATURE)"
json_add_boolean fwtool_device_match "$(err_to_bool $FWTOOL_DEVICE_MATCH)"
# Call platform_check_image() here so it can add its test
# results and still mark image properly.
json_set_namespace $old_ns
platform_check_image "$1" >&2 || notify_firmware_invalid
json_set_namespace validate_firmware_image old_ns
json_close_object
json_add_boolean valid "$VALID"
json_add_boolean forceable "$FORCEABLE"
json_add_boolean allow_backup "$ALLOW_BACKUP"
json_dump -i
json_set_namespace $old_ns

View File

@@ -158,18 +158,11 @@ if VERSIONOPT
config VERSION_DIST
string
prompt "Release distribution"
default "LEDE"
default "OpenWrt"
help
This is the name of the release distribution.
If unspecified, it defaults to OpenWrt.
config VERSION_NICK
string
prompt "Release version nickname"
help
This is the release codename embedded in the image.
If unspecified, it defaults to the name of source branch.
config VERSION_NUMBER
string
prompt "Release version number"
@@ -190,7 +183,7 @@ if VERSIONOPT
config VERSION_REPO
string
prompt "Release repository"
default "http://downloads.lede-project.org/releases/17.01.6"
default "http://downloads.openwrt.org/releases/19.07.5"
help
This is the repository address embedded in the image, it defaults
to the trunk snapshot repo; the url may contain the following placeholders:
@@ -199,18 +192,22 @@ if VERSIONOPT
%v .. Configured release version number or "snapshot", lowercase
%C .. Configured release revision code or value of %R, uppercase
%c .. Configured release revision code or value of %R, lowercase
%N .. Release name, uppercase
%n .. Release name, lowercase
%D .. Distribution name or "Lede", uppercase
%d .. Distribution name or "lede", lowercase
%D .. Distribution name or "OpenWrt", uppercase
%d .. Distribution name or "openwrt", lowercase
%T .. Target name
%S .. Target/Subtarget name
%A .. Package architecture
%t .. Build taint flags, e.g. "no-all busybox"
%M .. Manufacturer name or "Lede"
%M .. Manufacturer name or "OpenWrt"
%P .. Product name or "Generic"
%h .. Hardware revision or "v0"
config VERSION_HOME_URL
string
prompt "Release Homepage"
help
This is the release version homepage
config VERSION_MANUFACTURER
string
prompt "Manufacturer name"
@@ -277,18 +274,4 @@ menuconfig PER_FEED_REPO
If set, a separate repository is generated within bin/*/packages/
for the core packages and each enabled feed.
config PER_FEED_REPO_ADD_DISABLED
bool "Add available but not enabled feeds to opkg.conf"
default y
depends on PER_FEED_REPO
help
Add not installed or disabled feeds from feeds.conf to opkg.conf.
config PER_FEED_REPO_ADD_COMMENTED
bool "Comment out not enabled feeds"
default !BUILDBOT
depends on PER_FEED_REPO && PER_FEED_REPO_ADD_DISABLED
help
Add not enabled feeds as commented out source lines to opkg.conf.
source "tmp/.config-feeds.in"

View File

@@ -13,7 +13,7 @@ PKG_VERSION:=1.6.9
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://downloads.openwrt.org/sources/
PKG_SOURCE_URL:=https://downloads.openwrt.org/sources/
PKG_HASH:=1d2bc04c2c6bb3d2d6c1916b6dc559cda2b1ecb045d7801fd49af6af4234abeb
PKG_TARGETS:=bin
@@ -27,7 +27,6 @@ define Package/apex
DEPENDS:=@TARGET_ixp4xx
DEFAULT:=y
TITLE:=Boot loader for NSLU2, FSG3, NAS100D and others
URL:=http://wiki.buici.com/wiki/Apex_Bootloader
endef
define build_apex
@@ -56,7 +55,8 @@ define Package/apex/install
endef
define Build/InstallDev
$(CP) $(PKG_BUILD_DIR)/out/*.bin $(KERNEL_BUILD_DIR)
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(CP) $(PKG_BUILD_DIR)/out/*.bin $(STAGING_DIR_IMAGE)/
endef
$(eval $(call BuildPackage,apex))

View File

@@ -0,0 +1,51 @@
#
# Copyright (C) 2017 Hauke Mehrtens
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=arm-trusted-firmware-sunxi
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=https://github.com/ARM-software/arm-trusted-firmware
PKG_SOURCE_DATE:=2018-10-02
PKG_SOURCE_VERSION:=dbc8d9496ead9ecdd7c2a276b542a4fbbbf64027
PKG_MIRROR_HASH:=c81521a27b86f606e927b4e346286540b862828c8d49292eae1f5c6adfc24001
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=license.md
PKG_MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
include $(INCLUDE_DIR)/package.mk
define Package/arm-trusted-firmware-sunxi
SECTION:=boot
CATEGORY:=Boot Loaders
TITLE:=ARM Trusted Firmware for Allwinner
DEPENDS:=@TARGET_sunxi_cortexa53
endef
export GCC_HONOUR_COPTS=s
MAKE_VARS = \
CROSS_COMPILE="$(TARGET_CROSS)"
MAKE_FLAGS += \
PLAT=sun50i_a64 \
bl31
define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(CP) $(PKG_BUILD_DIR)/build/sun50i_a64/release/bl31.bin $(STAGING_DIR_IMAGE)/bl31.bin
endef
define Package/arm-trusted-firmware-sunxi/install
endef
$(eval $(call BuildPackage,arm-trusted-firmware-sunxi))

View File

@@ -0,0 +1,128 @@
#
# Copyright (C) 2016 Microchip Technology Inc.
# <Sandeepsheriker.mallikarjun@microchip.com>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=at91bootstrap
PKG_VERSION:=v3.8.10
PKG_RELEASE:=
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/linux4sam/at91bootstrap.git
PKG_SOURCE_VERSION:=04efa5500d60a0211d14b6ee60df7ce0a828704d
PKG_BUILD_DIR = \
$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
include at91bootstrap.mk
include $(INCLUDE_DIR)/package.mk
define AT91Bootstrap/Default
BUILD_TARGET:=at91
HIDDEN:=1
AT91BOOTSTRAP_IMAGE:=at91bootstrap.bin
endef
define AT91Bootstrap/sama5d2_xplaineddf_uboot
TITLE:=AT91Bootstrap for SAMA5D2 Xplained board (SPI Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define AT91Bootstrap/sama5d2_xplaineddf_qspi_uboot
TITLE:=AT91Bootstrap for SAMA5D2 Xplained board (QSPI Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define AT91Bootstrap/sama5d2_xplainedsd_uboot
TITLE:=AT91Bootstrap for SAMA5D2 Xplained board (SDcard/EMMC)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define AT91Bootstrap/sama5d3_xplainednf_uboot
TITLE:=AT91Bootstrap for SAMA5D3 Xplained board (Nand Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d3_xplained
endef
define AT91Bootstrap/sama5d3_xplainedsd_uboot
TITLE:=AT91Bootstrap for SAMA5D3 Xplained board (SDcard)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d3_xplained
endef
define AT91Bootstrap/sama5d4_xplainednf_uboot_secure
TITLE:=AT91Bootstrap for SAMA5D4 Xplained board (Nand Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define AT91Bootstrap/sama5d4_xplaineddf_uboot_secure
TITLE:=AT91Bootstrap for SAMA5D4 Xplained board (SPI Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define AT91Bootstrap/sama5d4_xplainedsd_uboot_secure
TITLE:=AT91Bootstrap for SAMA5D4 Xplained board (SDcard)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define AT91Bootstrap/sama5d27_som1_eksd_uboot
TITLE:=AT91Bootstrap for SAMA5D27 SOM1 Ek (SDcard0)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define AT91Bootstrap/sama5d27_som1_eksd1_uboot
TITLE:=AT91Bootstrap for SAMA5D27 SOM1 Ek (SDcard1)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define AT91Bootstrap/sama5d27_som1_ekqspi_uboot
TITLE:=AT91Bootstrap for SAMA5D27 SOM1 Ek (QSPI Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define AT91Bootstrap/sama5d2_ptc_eknf_uboot
TITLE:=AT91Bootstrap for SAMA5D2 PTC EK (Nand Flash)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_ptc_ek
endef
define AT91Bootstrap/sama5d2_ptc_eksd_uboot
TITLE:=AT91Bootstrap for SAMA5D2 PTC EK (SDCard)
BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_ptc_ek
endef
AT91BOOTSTRAP_TARGETS := \
sama5d2_xplaineddf_uboot \
sama5d2_xplaineddf_qspi_uboot \
sama5d2_xplainedsd_uboot \
sama5d3_xplainednf_uboot \
sama5d3_xplainedsd_uboot \
sama5d4_xplainednf_uboot_secure \
sama5d4_xplaineddf_uboot_secure \
sama5d4_xplainedsd_uboot_secure \
sama5d27_som1_eksd_uboot \
sama5d27_som1_ekqspi_uboot \
sama5d2_ptc_eknf_uboot \
sama5d2_ptc_eksd_uboot
define Build/Compile
+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
CROSS_COMPILE=$(TARGET_CROSS)
endef
$(eval $(call BuildPackage/AT91Bootstrap))

View File

@@ -0,0 +1,88 @@
PKG_TARGETS := bin
PKG_FLAGS:=nonshared
export GCC_HONOUR_COPTS=s
define Package/at91bootstrap/install/default
$(CP) -avL $(PKG_BUILD_DIR)/binaries/at91bootstrap.bin $(1)/
endef
Package/at91bootstrap/install = $(Package/at91bootstrap/install/default)
define AT91Bootstrap/Init
BUILD_TARGET:=
BUILD_SUBTARGET:=
BUILD_DEVICES:=
NAME:=
DEPENDS:=
HIDDEN:=
DEFAULT:=
VARIANT:=$(1)
AT91BOOTSTRAP_CONFIG:=$(1)
endef
TARGET_DEP = TARGET_$(BUILD_TARGET)$(if $(BUILD_SUBTARGET),_$(BUILD_SUBTARGET))
AT91BOOTSTRAP_MAKE_FLAGS = \
HOSTCC="$(HOSTCC)" \
HOSTCFLAGS="$(HOST_CFLAGS) $(HOST_CPPFLAGS)" \
HOSTLDFLAGS=""
define Build/AT91Bootstrap/Target
$(eval $(call AT91Bootstrap/Init,$(1)))
$(eval $(call AT91Bootstrap/Default,$(1)))
$(eval $(call AT91Bootstrap/$(1),$(1)))
define Package/at91bootstrap-$(1)
SECTION:=boot
CATEGORY:=Boot Loaders
TITLE:= .$(NAME)
VARIANT:=$(VARIANT)
DEPENDS:=@!IN_SDK $(DEPENDS)
HIDDEN:=$(HIDDEN)
ifneq ($(BUILD_TARGET),)
DEPENDS += @$(TARGET_DEP)
ifneq ($(BUILD_DEVICES),)
DEFAULT := y if ($(TARGET_DEP)_Default \
$(patsubst %,|| $(TARGET_DEP)_DEVICE_%,$(BUILD_DEVICES)) \
$(patsubst %,|| $(patsubst TARGET_%,TARGET_DEVICE_%, \
$(TARGET_DEP))_DEVICE_%,$(BUILD_DEVICES)))
endif
endif
$(if $(DEFAULT),DEFAULT:=$(DEFAULT))
URL:=https://www.at91.com/linux4sam/bin/view/Linux4SAM/AT91Bootstrap
endef
define Package/at91bootstrap-$(1)/install
$$(Package/at91bootstrap/install)
endef
endef
define Build/Configure/AT91Bootstrap
+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
$(AT91BOOTSTRAP_CONFIG)_defconfig
endef
define Build/Compile/AT91Bootstrap
+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
CROSS_COMPILE=$(TARGET_CROSS) \
$(AT91BOOTSTRAP_MAKE_FLAGS)
endef
define BuildPackage/AT91Bootstrap/Defaults
Build/Configure/Default = $$$$(Build/Configure/AT91Bootstrap)
Build/Compile/Default = $$$$(Build/Compile/AT91Bootstrap)
endef
define BuildPackage/AT91Bootstrap
$(eval $(call BuildPackage/AT91Bootstrap/Defaults))
$(foreach type,$(if $(DUMP),$(AT91BOOTSTRAP_TARGETS),$(BUILD_VARIANT)), \
$(eval $(call Build/AT91Bootstrap/Target,$(type)))
)
$(eval $(call Build/DefaultTargets))
$(foreach type,$(if $(DUMP),$(AT91BOOTSTRAP_TARGETS),$(BUILD_VARIANT)), \
$(call BuildPackage,at91bootstrap-$(type))
)
endef

View File

@@ -12,7 +12,7 @@ PKG_VERSION:=20080329
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://andrzejekiert.ovh.org/software/fconfig/
PKG_SOURCE_URL:=https://downloads.openwrt.org/sources
PKG_HASH:=4ff0e8f07e35e46b705c0dbe9d9544ede01ea092a69e3f7db03e55a3f2bb8eb7
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
@@ -24,20 +24,12 @@ define Package/fconfig
CATEGORY:=Utilities
SUBMENU:=Boot Loaders
TITLE:=RedBoot configuration editor
URL:=http://andrzejekiert.ovh.org/software.html.en
endef
define Package/fconfig/description
displays and (if writable) also edits the RedBoot configuration.
endef
define Build/Configure
endef
define Build/Compile
$(call Build/Compile/Default)
endef
define Package/fconfig/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/fconfig $(1)/usr/sbin/

View File

@@ -9,8 +9,9 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=grub
PKG_CPE_ID:=cpe:/a:gnu:grub2
PKG_VERSION:=2.02
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/grub
@@ -32,7 +33,7 @@ define Package/grub2
SECTION:=boot
TITLE:=GRand Unified Bootloader
URL:=http://www.gnu.org/software/grub/
DEPENDS:=@TARGET_x86||TARGET_x86_64
DEPENDS:=@TARGET_x86
endef
define Package/grub2-editenv
@@ -41,7 +42,7 @@ define Package/grub2-editenv
SUBMENU:=Boot Loaders
TITLE:=Grub2 Environment editor
URL:=http://www.gnu.org/software/grub/
DEPENDS:=@TARGET_x86||TARGET_x86_64
DEPENDS:=@TARGET_x86
endef
define Package/grub2-editenv/description
@@ -59,7 +60,8 @@ CONFIGURE_ARGS += \
--disable-nls \
--disable-device-mapper \
--disable-libzfs \
--disable-grub-mkfont
--disable-grub-mkfont \
--with-platform=none
HOST_CONFIGURE_VARS += \
grub_build_mkfont_excuse="don't want fonts"

View File

@@ -0,0 +1,71 @@
From 563b1da6e6ae7af46cc8354cadb5dab416989f0a Mon Sep 17 00:00:00 2001
From: Michael Chang <mchang@suse.com>
Date: Mon, 26 Mar 2018 16:52:34 +0800
Subject: Fix packed-not-aligned error on GCC 8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
When building with GCC 8, there are several errors regarding packed-not-aligned.
./include/grub/gpt_partition.h:79:1: error: alignment 1 of struct grub_gpt_partentry is less than 8 [-Werror=packed-not-aligned]
This patch fixes the build error by cleaning up the ambiguity of placing
aligned structure in a packed one. In "struct grub_btrfs_time" and "struct
grub_gpt_part_type", the aligned attribute seems to be superfluous, and also
has to be packed, to ensure the structure is bit-to-bit mapped to the format
laid on disk. I think we could blame to copy and paste error here for the
mistake. In "struct efi_variable", we have to use grub_efi_packed_guid_t, as
the name suggests. :)
Signed-off-by: Michael Chang <mchang@suse.com>
Tested-by: Michael Chang <mchang@suse.com>
Tested-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
---
grub-core/fs/btrfs.c | 2 +-
include/grub/efiemu/runtime.h | 2 +-
include/grub/gpt_partition.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/grub-core/fs/btrfs.c b/grub-core/fs/btrfs.c
index 4849c1ceb..be195448d 100644
--- a/grub-core/fs/btrfs.c
+++ b/grub-core/fs/btrfs.c
@@ -175,7 +175,7 @@ struct grub_btrfs_time
{
grub_int64_t sec;
grub_uint32_t nanosec;
-} __attribute__ ((aligned (4)));
+} GRUB_PACKED;
struct grub_btrfs_inode
{
diff --git a/include/grub/efiemu/runtime.h b/include/grub/efiemu/runtime.h
index 9b6b729f4..36d2dedf4 100644
--- a/include/grub/efiemu/runtime.h
+++ b/include/grub/efiemu/runtime.h
@@ -29,7 +29,7 @@ struct grub_efiemu_ptv_rel
struct efi_variable
{
- grub_efi_guid_t guid;
+ grub_efi_packed_guid_t guid;
grub_uint32_t namelen;
grub_uint32_t size;
grub_efi_uint32_t attributes;
diff --git a/include/grub/gpt_partition.h b/include/grub/gpt_partition.h
index 1b32f6725..9668a68c3 100644
--- a/include/grub/gpt_partition.h
+++ b/include/grub/gpt_partition.h
@@ -28,7 +28,7 @@ struct grub_gpt_part_type
grub_uint16_t data2;
grub_uint16_t data3;
grub_uint8_t data4[8];
-} __attribute__ ((aligned(8)));
+} GRUB_PACKED;
typedef struct grub_gpt_part_type grub_gpt_part_type_t;
#define GRUB_GPT_PARTITION_TYPE_EMPTY \
--
cgit v1.1-33-g03f6

Some files were not shown because too many files have changed in this diff Show More