openwrt/staging/jow.git
6 years agoipq806x: drop ubifs support
Mathias Kresin [Sun, 14 Jan 2018 22:21:38 +0000 (23:21 +0100)]
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>
6 years agoipq806x: drop legacy image leftovers
Mathias Kresin [Sun, 14 Jan 2018 21:20:40 +0000 (22:20 +0100)]
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>
6 years agoipq806x: unset filesystem specific build command by default
Mathias Kresin [Sun, 14 Jan 2018 20:39:42 +0000 (21:39 +0100)]
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>
6 years agoipq806x: remove unnecessary filesystem specific build
Mathias Kresin [Sun, 14 Jan 2018 20:38:08 +0000 (21:38 +0100)]
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>
6 years agoipq806x: use bin file extension for sysupgrade-tar images
Mathias Kresin [Sun, 14 Jan 2018 21:03:41 +0000 (22:03 +0100)]
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>
6 years agouqmi: fix raw-ip mode for newer lte modems
Koen Vandeputte [Mon, 27 Nov 2017 17:31:30 +0000 (18:31 +0100)]
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>
6 years agoar71xx: image: rework EnGenius ENS202EXT factory image
Piotr Dymacz [Mon, 15 Jan 2018 12:30:19 +0000 (13:30 +0100)]
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>
6 years agotools: make-ext4fs: remove LEDE_GIT references
Jo-Philipp Wich [Sun, 14 Jan 2018 18:02:45 +0000 (19:02 +0100)]
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>
6 years agoomap24xx: remove referece to not existing kmod-usb-musb-tusb6010
Jo-Philipp Wich [Mon, 15 Jan 2018 12:09:05 +0000 (13:09 +0100)]
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>
6 years ago6rd: pass ipcalc as argument to eval
Hans Dedecker [Sat, 13 Jan 2018 10:05:46 +0000 (11:05 +0100)]
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>
6 years agoar71xx: add support for MikroTik RouterBOARD wAP G-5HacT2HnD (wAP AC)
Roger Pueyo Centelles [Mon, 8 Jan 2018 11:55:05 +0000 (12:55 +0100)]
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]

6 years agoar71xx: kernel: enable PCI on QCA9556 SoC
Roger Pueyo Centelles [Mon, 8 Jan 2018 11:30:28 +0000 (12:30 +0100)]
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>
6 years agoramips: add support for ALFA Network AC1200RM
Piotr Dymacz [Sat, 14 Oct 2017 08:44:39 +0000 (10:44 +0200)]
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>
6 years agouboot-envtools: add support for GL.iNet GL-AR750
Piotr Dymacz [Tue, 17 Oct 2017 21:32:11 +0000 (23:32 +0200)]
uboot-envtools: add support for GL.iNet GL-AR750

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for GL.iNet GL-AR750
Piotr Dymacz [Tue, 17 Oct 2017 21:30:01 +0000 (23:30 +0200)]
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>
6 years agoar71xx: image: move Sitecom WLR-8100 from legacy to generic
Piotr Dymacz [Thu, 23 Nov 2017 13:27:39 +0000 (14:27 +0100)]
ar71xx: image: move Sitecom WLR-8100 from legacy to generic

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: fix Sitecom WLR-8100 support
Davide Fioravanti [Sun, 19 Nov 2017 20:11:10 +0000 (21:11 +0100)]
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>
6 years agouboot-envtools: add support for ALFA Network R36A
Piotr Dymacz [Thu, 28 Dec 2017 10:08:22 +0000 (11:08 +0100)]
uboot-envtools: add support for ALFA Network R36A

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for ALFA Network R36A
Piotr Dymacz [Thu, 28 Dec 2017 10:07:54 +0000 (11:07 +0100)]
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>
6 years agoar71xx: add support for Teltonika RUT900
Piotr Dymacz [Sun, 15 Oct 2017 11:24:02 +0000 (13:24 +0200)]
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>
6 years agouboot-envtools: add support for ALFA Network N5Q
Piotr Dymacz [Fri, 5 Jan 2018 10:37:11 +0000 (11:37 +0100)]
uboot-envtools: add support for ALFA Network N5Q

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for ALFA Network N5Q
Piotr Dymacz [Fri, 5 Jan 2018 10:35:45 +0000 (11:35 +0100)]
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>
6 years agouboot-envtools: add support for ALFA Network AP91-5G
Piotr Dymacz [Mon, 18 Dec 2017 13:52:39 +0000 (14:52 +0100)]
uboot-envtools: add support for ALFA Network AP91-5G

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: add support for ALFA Network AP91-5G
Piotr Dymacz [Mon, 18 Dec 2017 13:51:28 +0000 (14:51 +0100)]
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>
6 years agoar71xx: base-files: cosmetic cleanups in preinit scripts
Piotr Dymacz [Sat, 13 Jan 2018 16:46:55 +0000 (17:46 +0100)]
ar71xx: base-files: cosmetic cleanups in preinit scripts

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agoar71xx: base-files: drop LED control from 05_set_iface_mac_ar71xx
Piotr Dymacz [Sat, 13 Jan 2018 16:38:19 +0000 (17:38 +0100)]
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>
6 years agoar71xx: base-files: fix boards order in 05_set_preinit_iface_ar71xx
Piotr Dymacz [Sat, 13 Jan 2018 16:08:45 +0000 (17:08 +0100)]
ar71xx: base-files: fix boards order in 05_set_preinit_iface_ar71xx

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
6 years agokernel: add missing config symbol
Stijn Tintel [Sun, 14 Jan 2018 18:50:39 +0000 (20:50 +0200)]
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>
6 years agokernel: add missing DRM symbols to generic config
Stijn Tintel [Sun, 14 Jan 2018 18:40:35 +0000 (20:40 +0200)]
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>
6 years agokernel: sort generic configs
Stijn Tintel [Sun, 14 Jan 2018 18:31:02 +0000 (20:31 +0200)]
kernel: sort generic configs

Use kconfig.pl to sort the generic kernel configs.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
6 years agokernel: move DRM_DEBUG_* symbols to generic config
Stijn Tintel [Sun, 14 Jan 2018 18:06:55 +0000 (20:06 +0200)]
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>
6 years agometadata: do not emit broken kconfig dependency statements
Jo-Philipp Wich [Sun, 14 Jan 2018 17:46:36 +0000 (18:46 +0100)]
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>
6 years agoscripts/feeds: fix install of packages with different source/binary names
Matthias Schiffer [Sun, 14 Jan 2018 16:07:28 +0000 (17:07 +0100)]
scripts/feeds: fix install of packages with different source/binary names

The logic for choice between source and binary packages was reversed.

Fixes: 52719c2b67af "metadata: scripts/feeds: distinguish between source
and binary packages, resolve virtual dependencies"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoar71xx: create new ar71xx/tiny subtarget for 4MB flash devices
Matthias Schiffer [Fri, 12 Jan 2018 15:36:13 +0000 (16:36 +0100)]
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>
6 years agoar71xx/generic: add generic- prefix to vendor-specific image Makefile snippets
Matthias Schiffer [Fri, 12 Jan 2018 00:42:11 +0000 (01:42 +0100)]
ar71xx/generic: add generic- prefix to vendor-specific image Makefile snippets

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoar71xx: reorganize kernel configuration
Matthias Schiffer [Fri, 12 Jan 2018 05:19:29 +0000 (06:19 +0100)]
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>
6 years agoar71xx: disable devicetree support
Matthias Schiffer [Wed, 10 Jan 2018 23:22:42 +0000 (00:22 +0100)]
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>
6 years agoath9k, ath10k(-ct): move spectral scan support under a separate config symbol
Matthias Schiffer [Wed, 10 Jan 2018 20:46:46 +0000 (21:46 +0100)]
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>
6 years agometadata: improve code readability by using (s)printf instead of string interpolation
Matthias Schiffer [Mon, 8 Jan 2018 17:47:04 +0000 (18:47 +0100)]
metadata: improve code readability by using (s)printf instead of string interpolation

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agoinclude/package-dumpinfo.mk: don't duplicate source package information for every...
Matthias Schiffer [Mon, 8 Jan 2018 14:02:38 +0000 (15:02 +0100)]
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>
6 years agobuild: remove obsolete "package feature" feature
Matthias Schiffer [Mon, 8 Jan 2018 11:31:03 +0000 (12:31 +0100)]
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>
6 years agometadata: scripts/feeds: distinguish between source and binary packages, resolve...
Matthias Schiffer [Thu, 11 Jan 2018 17:38:42 +0000 (18:38 +0100)]
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>
6 years agometadata: always resolve dependencies through provides list
Matthias Schiffer [Mon, 8 Jan 2018 11:17:30 +0000 (12:17 +0100)]
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>
6 years agometadata: simplify generation of build depends from runtime depends
Matthias Schiffer [Mon, 8 Jan 2018 10:07:37 +0000 (11:07 +0100)]
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>
6 years agometadata: handle target build depends together with host build depends
Matthias Schiffer [Sun, 7 Jan 2018 22:11:11 +0000 (23:11 +0100)]
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>
6 years agotreewide: fix build depends to refer to source package names
Matthias Schiffer [Sun, 7 Jan 2018 19:41:06 +0000 (20:41 +0100)]
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>
6 years agobuild: remove package preconfig feature
Matthias Schiffer [Sun, 7 Jan 2018 12:05:23 +0000 (13:05 +0100)]
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>
6 years agometadata: remove redundant fields from package hash
Matthias Schiffer [Sat, 6 Jan 2018 18:44:52 +0000 (19:44 +0100)]
metadata: remove redundant fields from package hash

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agometadata: replace %subdir hash with a path field in source packages
Matthias Schiffer [Sat, 6 Jan 2018 18:28:52 +0000 (19:28 +0100)]
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>
6 years agometadata: change pkg->{src} field to hold a reference
Matthias Schiffer [Sat, 6 Jan 2018 17:01:25 +0000 (18:01 +0100)]
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>
6 years agometadata: interate over source packages when generating Makefile
Matthias Schiffer [Sat, 6 Jan 2018 16:12:03 +0000 (17:12 +0100)]
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>
6 years agometadata: move 'builddepends' from binary to source packages
Matthias Schiffer [Sat, 6 Jan 2018 13:49:08 +0000 (14:49 +0100)]
metadata: move 'builddepends' from binary to source packages

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
6 years agometadata: move 'buildtypes' from binary to source packages
Matthias Schiffer [Sat, 6 Jan 2018 12:53:42 +0000 (13:53 +0100)]
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>
6 years agometadata: make srcpackage extensible
Matthias Schiffer [Thu, 4 Jan 2018 18:52:18 +0000 (19:52 +0100)]
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>
6 years agometadata: remove 'base-files' special case
Matthias Schiffer [Thu, 4 Jan 2018 17:19:28 +0000 (18:19 +0100)]
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>
6 years agofstools: update to latest git HEAD
John Crispin [Sat, 13 Jan 2018 15:28:42 +0000 (16:28 +0100)]
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>
6 years agoconfig: support new symbol intro'd in kernel 4.12
Koen Vandeputte [Thu, 11 Jan 2018 11:55:02 +0000 (12:55 +0100)]
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>
6 years agotarget: disable CONFIG_PROC_PAGE_MONITOR on most targets
Jo-Philipp Wich [Sat, 13 Jan 2018 13:46:11 +0000 (14:46 +0100)]
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>
6 years agoipq806x: add support for OpenMesh A42
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
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>
6 years agoipq806x: enable gpio watchdog support
Sven Eckelmann [Mon, 8 Jan 2018 17:28:51 +0000 (18:28 +0100)]
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>
6 years agoom-fwupgradecfg-gen.sh: add support for the A42
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
om-fwupgradecfg-gen.sh: add support for the A42

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
6 years agobuild: add image command for CE images
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
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>
6 years agocombined-ext-image.sh: generate image in temp dir
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
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>
6 years agouboot-envtools: add OpenMesh A42 support
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
uboot-envtools: add OpenMesh A42 support

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
6 years agoipq-wifi: add board-2.bin for OpenMesh A42
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
ipq-wifi: add board-2.bin for OpenMesh A42

Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
6 years agomac80211: ath10k: search DT for BDF variant info
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
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>
6 years agoipq806x: Sort occurrences of boardame alphabetically
Luis Araneda [Fri, 5 Jan 2018 13:11:16 +0000 (10:11 -0300)]
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>
6 years agoipq806x: convert to dt-based board-detection
Luis Araneda [Fri, 5 Jan 2018 13:00:11 +0000 (10:00 -0300)]
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>
6 years agoipq806x: sync image filename with dt compatible string
Luis Araneda [Sun, 31 Dec 2017 19:48:17 +0000 (16:48 -0300)]
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>
6 years agoipq806x: add a helper variable with the vendor name stripped
Luis Araneda [Thu, 28 Dec 2017 02:38:50 +0000 (23:38 -0300)]
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>
6 years agoipq806x: add missing dt compatible string to ap-dk04 board
Luis Araneda [Wed, 27 Dec 2017 02:39:39 +0000 (23:39 -0300)]
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>
6 years agoipq806x: drop partitial supported boards
Mathias Kresin [Mon, 8 Jan 2018 22:24:44 +0000 (23:24 +0100)]
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>
6 years agoarmvirt: Resync kernel configuration
Florian Fainelli [Fri, 12 Jan 2018 22:53:23 +0000 (14:53 -0800)]
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>
6 years agokernel: Add a bunch of missing symbols
Florian Fainelli [Fri, 12 Jan 2018 22:49:55 +0000 (14:49 -0800)]
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>
6 years agobcm53xx: rename SPI driver fix to use 0xx prefix as it was accepted
Rafał Miłecki [Fri, 12 Jan 2018 22:28:00 +0000 (23:28 +0100)]
bcm53xx: rename SPI driver fix to use 0xx prefix as it was accepted

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
6 years agobcm53xx: use upstream fix for PCI iproc driver regression
Rafał Miłecki [Fri, 12 Jan 2018 22:27:19 +0000 (23:27 +0100)]
bcm53xx: use upstream fix for PCI iproc driver regression

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
6 years agobase-files: sysupgrade: correct command help text
Kevin Darbyshire-Bryant [Fri, 12 Jan 2018 11:23:41 +0000 (11:23 +0000)]
base-files: sysupgrade: correct command help text

Commit 30f61a34b4cfd2c676fea4a919e089d6a77254e9 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>
6 years agoramips: fix cpuclock for the GB-PC1
Rosen Penev [Wed, 10 Jan 2018 02:50:44 +0000 (18:50 -0800)]
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>
6 years agoapm821xx: remove kernel 4.9 support
Christian Lamparter [Sun, 7 Jan 2018 20:27:52 +0000 (21:27 +0100)]
apm821xx: remove kernel 4.9 support

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 years agoapm821xx: switch to 4.14.x kernel
Christian Lamparter [Sun, 7 Jan 2018 20:27:51 +0000 (21:27 +0100)]
apm821xx: switch to 4.14.x kernel

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
6 years agoapm821xx: backport crypto4xx patches from 4.15
Christian Lamparter [Sun, 7 Jan 2018 20:27:50 +0000 (21:27 +0100)]
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>
6 years agoapm821xx: convert MR24 to use DT PHY defintion
Christian Lamparter [Sun, 7 Jan 2018 20:27:49 +0000 (21:27 +0100)]
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>
6 years agoapm821xx: add linux 4.14 apm821xx patches
Christian Lamparter [Sun, 7 Jan 2018 20:27:48 +0000 (21:27 +0100)]
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>
6 years agokmod-sched-cake: bump to latest cake bake
Kevin Darbyshire-Bryant [Mon, 8 Jan 2018 12:59:46 +0000 (12:59 +0000)]
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>
6 years agoat91: create device specific sdcard images
Hauke Mehrtens [Mon, 8 Jan 2018 22:58:40 +0000 (23:58 +0100)]
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>
6 years agokernel: bump 4.14 to 4.14.13
Kevin Darbyshire-Bryant [Wed, 10 Jan 2018 14:06:52 +0000 (14:06 +0000)]
kernel: bump 4.14 to 4.14.13

Refresh patches

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
6 years agokernel: bump 4.4 to 4.4.111
Kevin Darbyshire-Bryant [Wed, 10 Jan 2018 14:07:17 +0000 (14:07 +0000)]
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>
6 years agokernel: bump 4.9 to 4.9.76
Kevin Darbyshire-Bryant [Wed, 10 Jan 2018 14:07:41 +0000 (14:07 +0000)]
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>
6 years agobuild: fix restoring /etc/opkg with PER_DEVICE_ROOTFS
Jo-Philipp Wich [Wed, 10 Jan 2018 19:17:48 +0000 (20:17 +0100)]
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>
6 years agosdk: change base feed fallback to git.openwrt.org
Jo-Philipp Wich [Wed, 10 Jan 2018 22:53:45 +0000 (23:53 +0100)]
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>
6 years agobcm53xx: replace linux,part-probe with a proper partitions subnode
Rafał Miłecki [Thu, 11 Jan 2018 12:59:32 +0000 (13:59 +0100)]
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>
6 years agokernel: backport mtd implementation for "compatible" in "partitions" subnode
Rafał Miłecki [Thu, 11 Jan 2018 10:59:39 +0000 (11:59 +0100)]
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>
6 years agokernel: allow disabling multicast routing support
Matthias Schiffer [Wed, 10 Jan 2018 14:38:42 +0000 (15:38 +0100)]
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>
6 years agogeneric: unlock Winbond flash on boot
Matthias Schiffer [Tue, 9 Jan 2018 20:03:00 +0000 (21:03 +0100)]
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>
6 years agoebtables: update to latest git 2017-10-24
Matthias Schiffer [Tue, 9 Jan 2018 19:05:04 +0000 (20:05 +0100)]
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>
6 years agosunxi: enable missing config symbol
Jo-Philipp Wich [Thu, 11 Jan 2018 02:11:19 +0000 (03:11 +0100)]
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>
6 years agoomcproxy: silence fw3 warnings
Hans Dedecker [Mon, 8 Jan 2018 08:02:30 +0000 (09:02 +0100)]
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>
6 years agotreewide: replace LEDE_GIT with PROJECT_GIT
Jo-Philipp Wich [Fri, 5 Jan 2018 09:46:06 +0000 (10:46 +0100)]
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>
6 years agodownloads.mk: introduce name-agnostic PROJECT_GIT variable
Jo-Philipp Wich [Fri, 5 Jan 2018 09:43:55 +0000 (10:43 +0100)]
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>
6 years agonetifd: update dhcp.script to handle dynamic routing
Mogula Pranay [Tue, 9 Jan 2018 06:13:29 +0000 (11:43 +0530)]
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>