openwrt/staging/xback.git
4 years agogeneric: rtl8367b: add definition of debug reg
Chuanhong Guo [Mon, 16 Mar 2020 08:04:09 +0000 (16:04 +0800)]
generic: rtl8367b: add definition of debug reg

This commit adds definition of DEBUG0 and DEBUG1 registers and replace
magic values with proper register modifying.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
4 years agomac80211: do not try to setup hostapd-managed interfaces.
Oldřich Jedlička [Mon, 16 Mar 2020 20:00:51 +0000 (21:00 +0100)]
mac80211: do not try to setup hostapd-managed interfaces.

For virtual access points (when multiple SSIDs are used for one
physical AP), there exist one physical network interface and
multiple virtual interfaces, which are fully under control of
hostapd. When networking is setup, the script
`/lib/netifd/wireless/mac80211.sh` is called, which tries to bring
the interface up by a call to `ip link set dev <iface> up`. This
call might fail for virtual APs, because the virtual interface
might not have been created by hostapd yet. There are some artifical
delays in the script most probably to handle this, but when DFS
channel availability check on 5GHz band is issued, hostapd can
delay creating virtual interfaces by a minute.

In order to fix this (or work around it), do not try to bring the
interface up (this is responsibility of hostapd anyway) and
do not try to set txpower on the virtual interface.

Fixes FS#2698.

Signed-off-by: Oldřich Jedlička <oldium.pro@gmail.com>
4 years agox86: make crashdump works
Chen Minqiang [Thu, 11 Jul 2019 14:34:03 +0000 (22:34 +0800)]
x86: make crashdump works

1. KERNEL_CRASH_DUMP should depends on KERNEL_PROC_KCORE (kexec use it)
2. select crashkernel mem size by totalmem
   mem <= 256M disable crashkernel by default
   mem >= 4G use 256M for crashkernel
   mem >= 8G use 512M for crashkernel
   default use 128M
3. set BOOT_IMAGE in kdump.init
4. resolve a "Unhandled rela relocation: R_X86_64_PLT32" error

Tested on x86_64

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
4 years agoreadline: needs host depend on ncurses to build
Jan Kardell [Fri, 20 Mar 2020 13:32:23 +0000 (14:32 +0100)]
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>
4 years agooxnas: backport patch fixing hang after reboot
Daniel Golle [Thu, 19 Mar 2020 22:37:17 +0000 (22:37 +0000)]
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>
4 years agotoolchain: Update GCC 9 to version 9.3.0
Hauke Mehrtens [Sun, 15 Mar 2020 17:32:56 +0000 (18:32 +0100)]
toolchain: Update GCC 9 to version 9.3.0

The removed patch is included in GCC 9.3.0.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agotoolchain: Update GCC 8 to version 8.4.0
Hauke Mehrtens [Sun, 15 Mar 2020 17:12:26 +0000 (18:12 +0100)]
toolchain: Update GCC 8 to version 8.4.0

The removed patch is included in GCC 8.4.0.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agocryptodev-linux: Fix error when compiling with 5.4 kernel
Jeffery To [Tue, 17 Mar 2020 14:27:13 +0000 (22:27 +0800)]
cryptodev-linux: Fix error when compiling with 5.4 kernel

Currently, cryptodev-linux fails to compile with a
'"crypto_givcipher_type" undefined' error for targets on the 5.4 kernel,
e.g. armvirt[1].

This backports an upstream patch[2] that fixes this error.

[1]: https://downloads.openwrt.org/snapshots/faillogs/aarch64_generic/base/cryptodev-linux/compile.txt
[2]: https://github.com/cryptodev-linux/cryptodev-linux/commit/f971e0cd4a0ebe59fb2e8e17240399bf6901b09b

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
4 years agohostapd: fix segfault in wpa_supplicant ubus
Daniel Golle [Wed, 18 Mar 2020 17:58:43 +0000 (18:58 +0100)]
hostapd: fix segfault in wpa_supplicant ubus

When introducing ubus reload support, ubus initialization was moved
to the service level instead of being carried out when adding a BSS
configuration. While this works when using wpa_supplicant in that way,
it breaks the ability to run wpa_supplicant on the command line, eg.
for debugging purposes.
Fix that by re-introducing ubus context intialization when adding
configuration.

Reported-by: @PolynomialDivision https://github.com/openwrt/openwrt/pull/2417
Fixes: 60fb4c92b6 ("hostapd: add ubus reload")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agoath79: add support for TP-Link Archer D7/D7b v1
Davide Fioravanti [Sun, 19 Jan 2020 20:05:31 +0000 (21:05 +0100)]
ath79: add support for TP-Link Archer D7/D7b v1

TP-Link Archer D7 v1 is a dual-band AC1750 router + modem.
The router section is based on Qualcomm/Atheros QCA9558 + QCA9880.
The "DSL" section is based on BCM6318 but it's currently not supported.

The Archer D7b seems to differ from the Archer D7 only in the
partition table.

Router section - 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
4x 10/100/1000 Mbps Ethernet
7x LED, 2x button
UART header on PCB

Known issues:

- Broadband LED (missing GPIO - probably driven by the BCM6318)
- Internet LED (missing GPIO - probably driven by the BCM6318)
- WIFI LED (working only for one interface at a time, while in the
  OEM firmware works for both wifi interfaces; thus, this patch does
  not set a trigger by default)
- DSL not working (eth0)

UART connection
---------------
J1 HEADER (Qualcomm CPU)
. VCC
. GND
. RX
O TX

J41 HEADER (Broadcom CPU)
. VCC
. GND
. RX
O TX

The following instructions require a connection to the J1 UART header
and are tested for the Archer D7 v1.
For the Archer D7b v1, names should be changed accordingly.

Flash instructions under U-Boot, using UART
------------------------------------------
 1. Press "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:
tftpboot 0x81000000 openwrt-ath79-generic-tplink_archer-d7-v1-squashfs-sysupgrade.bin
erase 0x9f020000 +f90000
cp.b 0x81000000 0x9f020000 0xf90000
reset

Initramfs instructions under U-Boot for testing, using UART
----------------------------------------------------------
 1. Press "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:
tftpboot 0x81000000 openwrt-ath79-generic-tplink_archer-d7-v1-initramfs-kernel.bin
bootm 0x81000000
 4. Here you can backup the original firmware and/or flash the sysupgrade openwrt if you want

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_D7v1_1.6.0_0.9.1_up_boot(160216)_2016-02-16_15.55.48.bin)
 3. Remove the U-Boot and the Broadcom image part from the file.
    Issue the following command:
dd if="Archer_D7v1_1.6.0_0.9.1_up_boot(160216)_2016-02-16_15.55.48.bin" of="Archer_D7v1_1.6.0_0.9.1_up_boot(160216)_2016-02-16_15.55.48.bin.mod" skip=257 bs=512 count=31872
 4. Double check the .mod file size. It must be 16318464 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_D7v1_1.6.0_0.9.1_up_boot(160216)_2016-02-16_15.55.48.bin.mod
erase 0x9f020000 +f90000
cp.b 0x81000000 0x9f020000 0xf90000
reset

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
[cosmetic DTS changes, remove TPLINK_HWREVADD := 0, do not use two
phyXtpt at once, add missing buttons, minor commit message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoath79: add support for TP-Link Archer C60 v3
Adrian Schmutzler [Wed, 12 Feb 2020 13:43:15 +0000 (14:43 +0100)]
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>
4 years agoath79: rename ubnt_bullet-m to ubnt_bullet-m-ar7241
Russell Senior [Wed, 11 Mar 2020 01:06:03 +0000 (18:06 -0700)]
ath79: rename ubnt_bullet-m to ubnt_bullet-m-ar7241

Since there exists another variant of the Bullet M with AR7240 SoC
under the same name, this patch introduces the SoC into the device
name to be able to distinguish these variants.

Signed-off-by: Russell Senior <russell@personaltelco.net>
[add commit message, adjust model in DTS, fix 02_network and
SUPPORTED_DEVICES]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoath79: generalize ubnt_xm dtsi for ar7240 and ar7241
Russell Senior [Wed, 11 Mar 2020 01:06:02 +0000 (18:06 -0700)]
ath79: generalize ubnt_xm dtsi for ar7240 and ar7241

* Prepare to support the AR7240 variant of ubiquiti bullet m, by
  reorganizing the related dtsi files.

* Distribute SOC variable across ubnt-xm devices.

Signed-off-by: Russell Senior <russell@personaltelco.net>
4 years agobcm27xx: enable THERMAL_WRITABLE_TRIPS on bcm2710 and bcm2711
Bjørn Mork [Mon, 16 Mar 2020 19:39:29 +0000 (20:39 +0100)]
bcm27xx: enable THERMAL_WRITABLE_TRIPS on bcm2710 and bcm2711

The PoE hat supported on the RPi 3B+ and 4B comes with a rather
loud fan, tripped in two steps by the brcmstb_thermal
thermal_zone driver.  Enabling writable trip points allow
users to adjust the fan trip points according to their
preferred temp/noise ratio.

This setting is enabled on most other targets with similar
thermal_zone controlled cooling devices.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
4 years agoramips: do not add metadata to factory images
Mathias Kresin [Sun, 5 Jan 2020 08:19:37 +0000 (09:19 +0100)]
ramips: do not add metadata to factory images

The image metadata are openwrt specific and not required for factory
images.

Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agolantiq: kernel 5.4: enable JFFS2
Mathias Kresin [Tue, 17 Mar 2020 19:36:39 +0000 (20:36 +0100)]
lantiq: kernel 5.4: enable JFFS2

We do not build images with a jffs2 rootfs, but jffs2 is still used as
filesystem for the rootfs_data.

Fixes: e3eaf578082e ("lantiq: kernel 5.4: debloat kernel config")
Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agoath79: fix execute bit for 02_network on mikrotik subtarget
Adrian Schmutzler [Tue, 17 Mar 2020 18:24:29 +0000 (19:24 +0100)]
ath79: fix execute bit for 02_network on mikrotik subtarget

When creating the mikrotik subtarget, the execute bit on 02_network
was not set. Fix it.

Fixes: a66eee63368e ("ath79: add mikrotik subtarget")
Reported-by: Christopher Hill <ch6574@gmail.com>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoath79: get rid of BOARD_NAME for Mikrotik RouterBOARD
Adrian Schmutzler [Wed, 26 Feb 2020 14:53:30 +0000 (15:53 +0100)]
ath79: get rid of BOARD_NAME for Mikrotik RouterBOARD

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_nand().

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.

By that, BOARD_NAME is obsolete now for this device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoar71xx: remove hard-coded folder name from Mikrotik RB upgrade
Adrian Schmutzler [Wed, 26 Feb 2020 17:24:55 +0000 (18:24 +0100)]
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>
4 years agoath79: add mikrotik subtarget
Roger Pueyo Centelles [Fri, 28 Feb 2020 15:01:02 +0000 (16:01 +0100)]
ath79: add mikrotik subtarget

This commit creates the ath79/mikrotik subtarget in order to support
MikroTik devices based on Qualcomm Atheros MIPS SoCs.

MikroTik devices need a couple of specific features: the split MiNOR
firmware MTD format, which is not used by other devices, and the 4k
sector erase size on SPI NOR storage, which can not be added to the
ath79/generic and ath79/nand subtargets now.

Additionally, the commit moves the two MikroTik devices already in
the generic and nand subtargets to this new one.

Tested on the RB922 board and the wAP AC router.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
4 years agohostapd: fix pointer cast warnings
Leon M. George [Thu, 12 Mar 2020 23:02:37 +0000 (00:02 +0100)]
hostapd: fix pointer cast warnings

Signed-off-by: Leon M. George <leon@georgemail.eu>
4 years agohostapd: remove trailing whitespace
Leon M. George [Thu, 12 Mar 2020 21:56:58 +0000 (22:56 +0100)]
hostapd: remove trailing whitespace

Signed-off-by: Leon M. George <leon@georgemail.eu>
4 years agooxnas: enable sata on Pogoplug V3/Pro
Sungbo Eo [Tue, 17 Mar 2020 08:34:27 +0000 (17:34 +0900)]
oxnas: enable sata on Pogoplug V3/Pro

Pogoplug V3/Pro has an interanl SATA port. To use it, DTS sata node should be
enabled, and kmod-ata-oxnas-sata package needs to be installed.

Fixes: FS#2542
Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agotegra: switch to kernel 5.4
Tomasz Maciej Nowak [Mon, 16 Mar 2020 18:32:10 +0000 (19:32 +0100)]
tegra: switch to kernel 5.4

Build the latest kernel by default, since testing did not show any
regressions.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
[fix merge conflict in tegra/Makefile]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agotegra: refresh patches and kernel config for 5.4
Tomasz Maciej Nowak [Mon, 16 Mar 2020 18:32:09 +0000 (19:32 +0100)]
tegra: refresh patches and kernel config for 5.4

This commit also disables Trusted Foundations firmware support as this
feature won't be used by any device.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
[fix merge conflict in tegra/Makefile]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agotegra: copy kernel config and patches for 5.4
Tomasz Maciej Nowak [Mon, 16 Mar 2020 18:32:08 +0000 (19:32 +0100)]
tegra: copy kernel config and patches for 5.4

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
4 years agokernel: move TEO governor to generic config
Tomasz Maciej Nowak [Mon, 16 Mar 2020 18:32:07 +0000 (19:32 +0100)]
kernel: move TEO governor to generic config

This new symbol popped up in few places. Disable it in generic config.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
[fixed merge conflict in generic/config-5.4]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agomxs: fix user led for OLinuXino boards
Michael Heimpold [Mon, 16 Mar 2020 21:47:44 +0000 (22:47 +0100)]
mxs: fix user led for OLinuXino boards

More testing after kernel upgrade to 5.4 uncovered a regression: the user
led is not present anymore due to a pin mux "collision" in device tree.

A patch sent to upstream kernel was accepted now. Integrate this
pending fix as platform specific patch so that user led is available again.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
4 years agozynq: switch to kernel 5.4
Luis Araneda [Fri, 13 Mar 2020 03:23:13 +0000 (00:23 -0300)]
zynq: switch to kernel 5.4

Use kernel 5.4 by default

compile-tested: all devices from target
run-tested: Digilent Zybo Z7-20

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
4 years agozynq: refresh kernel 5.4 config
Luis Araneda [Fri, 13 Mar 2020 03:23:12 +0000 (00:23 -0300)]
zynq: refresh kernel 5.4 config

By running make kernel_oldconfig and selecting relevant options

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
4 years agozynq: copy config from kernel 4.19 to 5.4
Luis Araneda [Fri, 13 Mar 2020 03:23:11 +0000 (00:23 -0300)]
zynq: copy config from kernel 4.19 to 5.4

Refreshed kernel 4.19 config before copying the file

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
4 years agolantiq: kernel 5.4: debloat kernel config
Mathias Kresin [Thu, 12 Mar 2020 09:41:20 +0000 (10:41 +0100)]
lantiq: kernel 5.4: debloat kernel config

The etop driver is used by all targets except xrx200.

Remove the UBIFS compression support for zlib and zstd from the xway
subtarget. The hardware is EOL for a long time and it's unlikely to ever
see a board shipped with an UBIFS using these compression methods.

Remove the JFFS2 support. Support for jjfs2 images was dropped years
ago.

It shrinks the compressed kernel up to 130 KByte.

Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agolantiq: add Linux 5.4 support as testing kernel version
Mathias Kresin [Wed, 10 Jul 2019 10:29:03 +0000 (12:29 +0200)]
lantiq: add Linux 5.4 support as testing kernel version

Switch to the mainline Lantiq PCIe PHY driver and update the vr9.dtsi
accordingly.

The Lantiq IRQ SMP support added upstream required changes to the SoC
dtsi as well.

Following changes are made to the Lantiq kernel patches:

  0005-lantiq_etop-pass-struct-device-to-DMA-API-functions.patch
  0006-MIPS-lantiq-pass-struct-device-to-DMA-API-functions.patch
    applied upstream

  0008-MIPS-lantiq-backport-old-timer-code.patch
    access_ok API update because it lost it's type (which was the first)
    parameter in upstream commit 96d4f267e40f95 ("Remove 'type' argument
    from access_ok() function")

  0024-MIPS-lantiq-autoselect-soc-rev-matching-fw.patch
    merged into 0026-MIPS-lantiq-Add-GPHY-Firmware-loader.patch

  0024-MIPS-lantiq-revert-DSA-switch-driver-PMU-clock-chang.patch
    revert upstream changes required for upstream xrx200 ethernet and
    xrx200 (DSA) switch driver but breaking our driver

  0026-MIPS-lantiq-Add-GPHY-Firmware-loader.patch
    required for our driver but dropped upstream, add former upstream
    version

  0028-NET-lantiq-various-etop-fixes.patch
    now has to use the phy_set_max_speed API instead of modifying
    phydev->supported. Also call ltq_dma_enable_irq() in
    ltq_etop_open() based on upstream commit cc973aecf0b054 ("MIPS:
    lantiq: Do not enable IRQs in dma open")

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
4 years agolantiq: linux 5.4: remove support for the linux,mtd-name OF property
Martin Blumenstingl [Sat, 29 Feb 2020 21:44:55 +0000 (22:44 +0100)]
lantiq: linux 5.4: remove support for the linux,mtd-name OF property

This is referenced in two .dts but never actually used from userspace.
Drop support for this property because it's not used and because it
makes updating to Linux 5.4 harder (as the patch doesn't apply anymore).

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
4 years agolantiq: copy target to kernel 5.4
Mathias Kresin [Sun, 1 Mar 2020 07:09:19 +0000 (08:09 +0100)]
lantiq: copy target to kernel 5.4

Duplicate kernel 4.19 config and patches for kernel 5.4.

Duplicate the devicetree source files as well, they need kernel 5.4
specific adjustments.

Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agolantiq: ltq-tapi: fix compilation with newer Linux kernels
Martin Blumenstingl [Sat, 29 Feb 2020 21:38:26 +0000 (22:38 +0100)]
lantiq: ltq-tapi: fix compilation with newer Linux kernels

Compiling the ltq-tapi driver against Linux 5.4 results in a compile
error complaining that the size of struct sched_param is not known.
Switch the existing "sched/types.h" include to reference
include/uapi/linux/sched/types.h to fix compilation against Linux 5.4.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
4 years agolantiq: ltq-deu: fix compatibility with Linux 5.3+
Martin Blumenstingl [Sat, 29 Feb 2020 20:17:21 +0000 (21:17 +0100)]
lantiq: ltq-deu: fix compatibility with Linux 5.3+

Upstream commit 84ede58dfcd1d ("crypto: hash - remove
CRYPTO_ALG_TYPE_DIGEST") drops the CRYPTO_ALG_TYPE_DIGEST define because
it has the same value as CRYPTO_ALG_TYPE_HASH. This was the case for
earlier kernels as well. Switch to CRYPTO_ALG_TYPE_HASH to fix building
against Linux 5.4.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
4 years agolantiq: ltq-vdsl: fix compilation with Linux 5.0+
Martin Blumenstingl [Sat, 29 Feb 2020 21:36:29 +0000 (22:36 +0100)]
lantiq: ltq-vdsl: fix compilation with Linux 5.0+

Upstream commit e4b92b108c6cd6 ("timekeeping: remove obsolete time
accessors") removed do_gettimeofday(). In Linux 4.19 this was only a
wrapper around ktime_get_real_ts64(). Use ktime_get_real_ts64() now that
the wrapper is gone to fix compilation against Linux 5.4.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
4 years agoltq-adsl: fix compilation with Linux 5.0+
Mathias Kresin [Tue, 3 Mar 2020 23:39:59 +0000 (00:39 +0100)]
ltq-adsl: fix compilation with Linux 5.0+

Upstream commit e4b92b108c6cd6 ("timekeeping: remove obsolete time
accessors") removed do_gettimeofday(). In Linux 4.19 this was only a
wrapper around ktime_get_real_ts64(). Use ktime_get_real_ts64() now that
the wrapper is gone to fix compilation against Linux 5.4.

Move the ifxmips_mei_interface header to the include directory, it can't
be found otherwise during compilation. The reason for the changed
behaviour is not yet clear, however having header files in an include
directory is more straight forward.

To use the of_device_id struct, the mod_devicetable header need to be
included. Instead of including this header, include the of_platform
header, which includes the mod_devicetable on its own.

Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agoltq-atm: add Linux 5.0+ compatibility
Mathias Kresin [Sun, 7 Jul 2019 15:13:18 +0000 (17:13 +0200)]
ltq-atm: add Linux 5.0+ compatibility

Upstream commit 96d4f267e40f95 ("Remove 'type' argument from access_ok()
function") removes the first argument to access_ok.
Adjust the code so it builds with Linux 5.4.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agokernel: kmod-serial-8250: fix linux 5.3 dependencies
Mathias Kresin [Mon, 16 Mar 2020 20:16:07 +0000 (21:16 +0100)]
kernel: kmod-serial-8250: fix linux 5.3 dependencies

Beginning with linux 5.3, kmod-serial-8250 uses functions provided by
serial_mctrl_gpio.ko if GPIO support is enabled.

Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agogeneric: make all phy drivers kernel 5.0 compatible
Mathias Kresin [Sun, 7 Jul 2019 09:15:05 +0000 (11:15 +0200)]
generic: make all phy drivers kernel 5.0 compatible

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

Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agolantiq: vgv7510kw22: fix missing wireless
Mathias Kresin [Sun, 15 Mar 2020 22:54:47 +0000 (23:54 +0100)]
lantiq: vgv7510kw22: fix missing wireless

For some reason pin 7 (gphy0_led1_pins) need to be set to output prior
to loading the PCI driver. Otherwise the wireless doesn't appear on the
PCI bus. Of course, it doesn't make much sense, since pin 7 is used to
drive the LAN1 led.

It can either be done by setting the pins function to GPHY or GPIO +
direction output. However, the pinctrl driver doesn't provide a way to
switch a pin to GPIO. It is done indirectly by the pinctrl driver at the
time a GPIO is requested (requesting a GPIO always resets the function
to GPIO).

Do it via pinmux driver, as it is always loaded first. Use the GPHY
function as it's the pins intended purpose for this board.

Fixes: FS#2895
Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agotreewide: remove maintainer variable from targets
Petr Štetiar [Wed, 11 Mar 2020 14:04:37 +0000 (15:04 +0100)]
treewide: remove maintainer variable from targets

There is no such role as target maintainer anymore, one should always
send corresponding changes for the review and anyone from the commiters
is allowed to merge them or eventually use the hand break and NACK them.

Lets make it clear, that it is solely a community doing the maintenance
tasks.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Acked-by: Piotr Dymacz <pepe2k@gmail.com>
4 years agoipq40xx: 5.4: fix ethernet driver
Robert Marko [Tue, 3 Mar 2020 19:19:31 +0000 (20:19 +0100)]
ipq40xx: 5.4: fix ethernet driver

In 5.4 kernel old u32 array way of setting network features was dropped and linkmode is now the only way.
So lets migrate the EDMA driver to support linkmode.
Also, old get/set settings API for ethtool is also dropped so lets convert to new ksettings API while at it as it demands linkmode.

Now, gigabit works properly as well as ethtool.
Previously you would get this in ethtool:
root@OpenWrt:/# ethtool eth1
Settings for eth1:
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000000 (0)

        Link detected: yes

Now, features are properly advertised:
root@OpenWrt:/# ethtool eth1
Settings for eth1:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
                                             1000baseT/Full
        Link partner advertised pause frame use: No
        Link partner advertised auto-negotiation: No
        Link partner advertised FEC modes: Not reported
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 4
        Transceiver: internal
        Auto-negotiation: on
        MDI-X: Unknown
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000000 (0)

        Link detected: yes

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
4 years agoipq40xx: 5.4: fix networking PHY driver
Robert Marko [Tue, 3 Mar 2020 19:19:30 +0000 (20:19 +0100)]
ipq40xx: 5.4: fix networking PHY driver

In 5.4 kernel old u32 array way of setting network features was dropped and linkmode is now the only way.
So lets migrate the PHY driver to support linkmode.
Also, now in order for gigabit to work, PHY driver needs to advertise PHY_GBIT_FEATURES instead of PHY_BASIC_FEATURES

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
4 years agoipq40xx: 5.4: fix of_get_mac_address obsolete usage OOPs
Petr Štetiar [Mon, 16 Mar 2020 08:43:00 +0000 (09:43 +0100)]
ipq40xx: 5.4: fix of_get_mac_address obsolete usage OOPs

of_get_mac_address returns valid pointer or ERR_PTR since 5.2 via commit
d01f449c008a ("of_net: add NVMEM support to of_get_mac_address") so the
patch fixes following OOPs on nbg6617:

 Unable to handle kernel paging request at virtual address ffffffed
 CPU: 1 PID: 1 Comm: swapper/0 Not tainted 5.4.24 #0
 PC is at edma_axi_probe+0x444/0x1114
 LR is at bus_find_device+0x88/0x9c

Where the PC can be resolved to:

 >>> l *edma_axi_probe+0x444
 0xc067be5c is in edma_axi_probe (./include/linux/string.h:378).

 >>> l *edma_axi_probe+0x43f
 0xc067be57 is in edma_axi_probe (drivers/net/ethernet/qualcomm/essedma/edma_axi.c:936)

Which leads to the following code fragment:

 935  mac_addr = of_get_mac_address(pnp);
 936  if (mac_addr)
 937      memcpy(edma_netdev[idx_mac]->dev_addr, mac_addr, ETH_ALEN);

Where using mac_addr=0xffffffed (-ENODEV) as source address in memcpy()
is causing the OOPs.

Acked-by: John Crispin <john@phrozen.org>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agosunxi: add testing 5.4 kernel
Aleksander Jan Bajkowski [Mon, 9 Mar 2020 21:58:32 +0000 (22:58 +0100)]
sunxi: add testing 5.4 kernel

Add 5.4 as testing kernel.

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agosunxi: move common options from subtargets into target kconfig
Aleksander Jan Bajkowski [Tue, 10 Mar 2020 21:59:20 +0000 (22:59 +0100)]
sunxi: move common options from subtargets into target kconfig

These new options are common for all subtargets and can be moved into target kconfig.

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agosunxi: refresh config for all subtargets
Aleksander Jan Bajkowski [Tue, 10 Mar 2020 21:50:17 +0000 (22:50 +0100)]
sunxi: refresh config for all subtargets

This was done by executing these command for all subtargets:

$ time make -j9 kernel_oldconfig CONFIG_TARGET=subtarget

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agosunxi: remove old symbols from 5.4 kconfig
Aleksander Jan Bajkowski [Tue, 10 Mar 2020 21:39:59 +0000 (22:39 +0100)]
sunxi: remove old symbols from 5.4 kconfig

These options only exist earlier kernel versions.

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agosunxi: remove options that are already in generic kconfig
Aleksander Jan Bajkowski [Tue, 10 Mar 2020 21:25:22 +0000 (22:25 +0100)]
sunxi: remove options that are already in generic kconfig

These options are already definied in generic 5.4 kconfig.

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agokernel: move disabled symbols into generic kconfig
Aleksander Jan Bajkowski [Mon, 9 Mar 2020 21:57:31 +0000 (22:57 +0100)]
kernel: move disabled symbols into generic kconfig

Move some disabled kconfig options found in sunxi kconfig into generic.

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agosunxi: make patches apply cleanly on 5.4
Aleksander Jan Bajkowski [Mon, 9 Mar 2020 21:56:07 +0000 (22:56 +0100)]
sunxi: make patches apply cleanly on 5.4

These patches are already in mainline 5.4 kernel:
* 010-v5.3-drivers-ata-ahci_sunxi-Increased-SATA-AHCI-DMA-TX-RX.patch
* 101-arm64-dts-allwinner-a64-Enable-A64-timer-workaround.patch

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agosunxi: copy config and patches from 4.19 to 5.4
Aleksander Jan Bajkowski [Mon, 2 Mar 2020 18:32:34 +0000 (19:32 +0100)]
sunxi: copy config and patches from 4.19 to 5.4

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agokernel: sort generic configuration
Aleksander Jan Bajkowski [Thu, 12 Mar 2020 22:40:51 +0000 (23:40 +0100)]
kernel: sort generic configuration

This was done by executing these commands:

$ ./scripts/kconfig.pl '+' target/linux/generic/config-4.19 /dev/null > target/linux/generic/config-4.19-new
$ mv target/linux/generic/config-4.19-new target/linux/generic/config-4.19

$ ./scripts/kconfig.pl '+' target/linux/generic/config-5.4 /dev/null > target/linux/generic/config-5.4-new
$ mv target/linux/generic/config-5.4-new target/linux/generic/config-5.4

Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
4 years agox86: switch to 5.4 kernel
Petr Štetiar [Wed, 11 Mar 2020 11:21:49 +0000 (12:21 +0100)]
x86: switch to 5.4 kernel

Seems to be working fine on apu2 and QEMU, it's 99.9% upstream stuff
anyway. Lets start wider userbase testing.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agoimx6: switch to 5.4 kernel
Petr Štetiar [Wed, 11 Mar 2020 11:21:49 +0000 (12:21 +0100)]
imx6: switch to 5.4 kernel

Seems to be working fine, it's 99.9% upstream stuff anyway. Lets start
wider userbase testing.

Cc: Tim Harvey <tharvey@gateworks.com>
Cc: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agorpcd: fix respawn settings
Petr Štetiar [Thu, 5 Mar 2020 08:33:52 +0000 (09:33 +0100)]
rpcd: fix respawn settings

Commit 432ec292ccc8 ("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: 432ec292ccc8 ("rpcd: add respawn param")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agocurl: bump to 7.69.1
Hans Dedecker [Mon, 16 Mar 2020 20:26:33 +0000 (21:26 +0100)]
curl: bump to 7.69.1

For changes in 7.69.1; see https://curl.haxx.se/changes.html#7_69_1

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agobcm27xx: sync 5.4 patches with RPi Foundation
Álvaro Fernández Rojas [Mon, 16 Mar 2020 19:41:03 +0000 (20:41 +0100)]
bcm27xx: sync 5.4 patches with RPi Foundation

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
4 years agowwan: fix hotplug event handling
Rozhuk Ivan [Sat, 16 Nov 2019 02:11:10 +0000 (05:11 +0300)]
wwan: 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]
4 years agocomgt: fix hotplug event handling
Rozhuk Ivan [Sat, 16 Nov 2019 02:10:05 +0000 (05:10 +0300)]
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]
4 years agonetifd: update to latest git HEAD
Hans Dedecker [Mon, 16 Mar 2020 19:56:30 +0000 (20:56 +0100)]
netifd: update to latest git HEAD

dbdef93 interface-ip: transfer prefix route ownership for deprecated ipv6addr to kernel

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agobcm27xx: switch to 5.4 kernel
Petr Štetiar [Mon, 16 Mar 2020 09:19:19 +0000 (10:19 +0100)]
bcm27xx: switch to 5.4 kernel

Been running it for a few days on RPi0W PMS sensor node and on RPi4.
Lets start wider userbase testing.

Cc: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
4 years agoipq806x: read both WG2600HP MAC addresses from flash
Yanase Yuki [Mon, 16 Mar 2020 08:42:38 +0000 (17:42 +0900)]
ipq806x: read both WG2600HP MAC addresses from flash

WG2600HP has its WLAN MAC addresses at PRODUCTDATA 0xc and 0x12, so
use them both directly.

Signed-off-by: Yanase Yuki <dev@zpc.sakura.ne.jp>
[commit title/message clarification]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agoipq806x: remove useless case within default case for upgrade
Adrian Schmutzler [Mon, 16 Mar 2020 15:34:07 +0000 (16:34 +0100)]
ipq806x: remove useless case within default case for upgrade

The default case will catch anything left, there is no need to
explicitly add any device to it.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agolibnftnl: bump to 1.1.5
Kevin Darbyshire-Bryant [Mon, 16 Mar 2020 09:07:36 +0000 (09:07 +0000)]
libnftnl: bump to 1.1.5

Solve missing references to nftnl_set_list_lookup_byname when building
iptables with Nftables support enabled (CONFIG_IPTABLES_NFTABLES)

Bump the ABI version to force everything to match.

/Users/kevin/wrt/staging_dir/toolchain-x86_64_gcc-9.2.0_musl/lib/gcc/x86_64-openwrt-linux-musl/9.2.0/../../../../x86_64-openwrt-linux-musl/bin/ld: xtables_nft_multi-nft-bridge.o: in function `nft_bridge_parse_lookup':
nft-bridge.c:(.text.nft_bridge_parse_lookup+0xcd): undefined reference to `nftnl_set_list_lookup_byname'
/Users/kevin/wrt/staging_dir/toolchain-x86_64_gcc-9.2.0_musl/lib/gcc/x86_64-openwrt-linux-musl/9.2.0/../../../../x86_64-openwrt-linux-musl/bin/ld: xtables_nft_multi-nft-cache.o: in function `nftnl_set_list_cb':
nft-cache.c:(.text.nftnl_set_list_cb+0x80): undefined reference to `nftnl_set_list_lookup_byname'
/Users/kevin/wrt/staging_dir/toolchain-x86_64_gcc-9.2.0_musl/lib/gcc/x86_64-openwrt-linux-musl/9.2.0/../../../../x86_64-openwrt-linux-musl/bin/ld: xtables_nft_multi-nft-cache.o: in function `fetch_set_cache':
nft-cache.c:(.text.fetch_set_cache+0x10a): undefined reference to `nftnl_set_list_lookup_byname'
collect2: error: ld returned 1 exit status
make[6]: *** [xtables-nft-multi] Error 1
make[5]: *** [all] Error 2
make[4]: *** [all-recursive] Error 1
make[3]: *** [all] Error 2
make[2]: *** [/Users/kevin/wrt/build_dir/target-x86_64_musl/linux-x86_64/iptables-1.8.4/.built] Error 2
make[2]: Leaving directory `/Users/kevin/wrt/package/network/utils/iptables'

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
4 years agokernel: make kmod-i2c-mux selected by dependent modules
Sungbo Eo [Mon, 16 Mar 2020 05:55:40 +0000 (14:55 +0900)]
kernel: make kmod-i2c-mux selected by dependent modules

Currently kmod-i2c-mux-* will not get into images unless kmod-i2c-mux is added
to DEVICE_PACKAGES as well. By changing the dependencies from "depends on" to
"select", we do not have the issue anymore.

Furthermore, we can remove most occurrences of the package from DEVICE_PACKAGES
and similar variables, as it is now pulled by dependent modules such as:
- kmod-i2c-mux-pca954x

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: rework 02_network
Sungbo Eo [Sun, 15 Mar 2020 17:42:38 +0000 (02:42 +0900)]
oxnas: rework 02_network

Just like other targets do, introduce two setup functions for interfaces and
MAC addresses.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: use dt-bindings macros for GPIO
Sungbo Eo [Sun, 15 Mar 2020 11:56:40 +0000 (20:56 +0900)]
oxnas: use dt-bindings macros for GPIO

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: merge Pogoplug V3 DTS patches into one file
Sungbo Eo [Sun, 15 Mar 2020 11:44:05 +0000 (20:44 +0900)]
oxnas: merge Pogoplug V3 DTS patches into one file

As it seeems these patches are for OpenWrt and they are not going to be merged
to mainline, let's merge them to improve maintainability.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: sort kernel configs
Sungbo Eo [Sun, 15 Mar 2020 11:31:30 +0000 (20:31 +0900)]
oxnas: sort kernel configs

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: remove duplicate config options
Sungbo Eo [Sun, 15 Mar 2020 11:39:36 +0000 (20:39 +0900)]
oxnas: remove duplicate config options

Remove symbols already covered by generic and target kernel configs.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: use AddDepends in modules.mk
Sungbo Eo [Sun, 15 Mar 2020 10:35:50 +0000 (19:35 +0900)]
oxnas: use AddDepends in modules.mk

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agooxnas: harmonize line breaks in ox820.mk
Sungbo Eo [Sun, 15 Mar 2020 10:33:43 +0000 (19:33 +0900)]
oxnas: harmonize line breaks in ox820.mk

Follow the guideline suggested in e417ff88f19b ("ramips: harmonize line breaks
in image Makefiles").

While at it, fix typos in the device title of Akitio MyCloud.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agolantiq: move mux for pins into subnodes
Mathias Kresin [Sun, 15 Mar 2020 20:26:23 +0000 (21:26 +0100)]
lantiq: move mux for pins into subnodes

The mux need to be defined in a subnode to be considered by the pinctrl
framework. These muxes aren't set as expected and might cause not
working subsystems.

Fixes: 8e7b573b7aa4 ("lantiq: dts: assign the PCI pins to the PCI controller node")
Fixes: dcb5e52209e5 ("lantiq: dts: assign the STP pins to the STP GPIO controller node")
Fixes: 660200e53d62 ("lantiq: dts: assign the GPHY LED pins to the Ethernet controller node")
Signed-off-by: Mathias Kresin <dev@kresin.me>
4 years agoiproute2: revert add libcap support, enabled in ip-full
Mathias Kresin [Thu, 5 Mar 2020 19:34:27 +0000 (20:34 +0100)]
iproute2: revert add libcap support, enabled in ip-full

This reverts commit a6da3f9ef746101b84a6f530f5a40de28341b69a.

The libcap isn't as optional as the commit messages suggests. A hard
dependency to the libcap package is added, which is only available in
the external packages feed. Therefore it is impossible to package
ip-full without having the external packages feed up and running, which
is a regression to the former behaviour.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agopkgconf: always retain -I and -L flags
Jo-Philipp Wich [Fri, 13 Mar 2020 14:54:50 +0000 (15:54 +0100)]
pkgconf: always retain -I and -L flags

The pkgconf fork filters -I and -L flag values from .pc files which match
pkgconf's builtin system directory value.

During configure, pkgconf derives the default system include and library
search path values from exec_prefix, which is set to staging_dir/host in
the host tool build phase.

Due to that, pkgconf will drop all -I and -L flags pointing to
staging_dir/host/include or staging_dir/host/lib, unless invoked with
--keep-system-cflags and --keep-system-libs respectively, breaking our
kernel libelf discovery / stack validation workarounds.

In order to inhibit the filtering, add --keep-system-cflags and
--keep-system-libs to our pkg-config shell wrapper.

Fixes: GH#2832
Fixes: 867298cf47 ("tools/pkg-config: Replace with pkgconf")
Ref: https://lists.infradead.org/pipermail/openwrt-devel/2020-March/022182.html
Ref: https://git.openwrt.org/fe43969336201f2cc7d103b68fd6e65989bee184
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Acked-by: Petr Štetiar <ynezz@true.cz>
4 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Sun, 15 Mar 2020 19:06:12 +0000 (20:06 +0100)]
odhcpd: update to latest git HEAD

6594c6b ubus: use dhcpv6 ia assignment flag
a90cc2e dhcpv6-ia: avoid setting lifetime to infinite for static assignments
bb07fa4 dhcpv4: avoid setting lifetime to infinite for static assignments

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
4 years agoiptables: update to 1.8.4
Kevin Darbyshire-Bryant [Tue, 31 Dec 2019 10:55:50 +0000 (10:55 +0000)]
iptables: update to 1.8.4

Bump to iptable 1.8.4 and address packaging issue as mentioned in the
original bump/revert cycle.

"This reverts commit 10cbc896c0a26aecff37261450c21f29fb5b99db.
The updated iptables package does not build due to the following error
encountered on the buildbots:
    cp: cannot stat '.../iptables-1.8.4/ipkg-install/usr/lib/libiptc.so.*': No such file or directory

The changelog mentions "build: remove -Wl,--no-as-needed and libiptc.so" so
it appears as if further packaging changes are needed beyond a simple
version bump."

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
4 years agoipq40xx: 5.4: enable NAND
Robert Marko [Sun, 15 Mar 2020 12:36:40 +0000 (13:36 +0100)]
ipq40xx: 5.4: enable NAND

Lets enable RAW NAND and Qcom NANDC drivers again in kernel 5.4.
They were dropped when 5.4 support was introduced due to upstream
changing the symbol names so refreshing was not enough.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
[cut long line in commit message, enabled BCH as well]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
4 years agoath79: fix missing watchdog core dependency for hwmon-sch5627
David Bauer [Sun, 15 Mar 2020 02:36:16 +0000 (03:36 +0100)]
ath79: fix missing watchdog core dependency for hwmon-sch5627

Fixes following error uncovered while building ath79/tiny on 5.4:

 Package kmod-hwmon-sch5627 is missing dependencies for the following
 libraries:
 watchdog.ko

See the similar commit e546e6252bb1 ("malta: fix missing watchdog core
dependency for hwmon-sch5627") for a detailed explanation.

Signed-off-by: David Bauer <mail@david-bauer.net>
4 years agomvebu: use generic diag.sh
Sungbo Eo [Wed, 11 Mar 2020 17:50:35 +0000 (02:50 +0900)]
mvebu: 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.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
Tested-by: Ansuel Smith <ansuelsmth@gmail.com> [wrt3200acm @ 5.4]
4 years agoath79: add correct phy-mode for QCA9563 boards
David Bauer [Sat, 14 Mar 2020 23:01:38 +0000 (00:01 +0100)]
ath79: add correct phy-mode for QCA9563 boards

The TP-Link RE450 as well as the UniFi AC series missed the phy-mode
property. Because of this, the incorrect MII phy-mode from the root dtsi
was used.

With Kernel 5.4, this leads to problems when used with a AR8033 PHY. The
bootloader seems to leave the fiber pages selected.

As there's not switch to copper pages happening in at803x_config_init
due to the incorrect phy-mode, the new at803x_read_status will interpret
the status of the SGMII side as the status of the copper side.

Signed-off-by: David Bauer <mail@david-bauer.net>
4 years agoapm821xx: 4.14: remove kernel config and patches
Christian Lamparter [Sat, 7 Mar 2020 15:58:32 +0000 (16:58 +0100)]
apm821xx: 4.14: remove kernel config and patches

This patch removes the 4.14 kernel support from the apm821xx target.
The 4.19 kernel has been available and stable for a while and the 5.4
kernel support has been tested successfully on real hardware as well.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
4 years agobuild: fix kernel 5.4 on macos
Kevin Darbyshire-Bryant [Fri, 13 Mar 2020 17:56:40 +0000 (17:56 +0000)]
build: fix kernel 5.4 on macos

As part of the kernel build process there are utilities built to run on
the host system that expect linux kernel headers to be available.
Unfortunately macos/darwin doesn't have these headers.

vdso2c requires types.h so provide a minimal stub to satisfy it.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
4 years agoath79: use downstream ag71xx for Kernel 5.4
David Bauer [Fri, 13 Mar 2020 00:07:39 +0000 (01:07 +0100)]
ath79: use downstream ag71xx for Kernel 5.4

The ag71xx driver from Linux 5.4 currently has various shortcomings
when used with OpenWrt compared to our downstream version.

For example, the upstream driver does not support modifying the ethernet
clock and configuring RGMII delays on the MAC side.

While we should certainly switch to the upstream driver, the amount of
necessary patches would make it cumbersome to work with. It's also
highly likely we won't be able to finish patching the upstream driver in
time for a Linux 5.4 release.

Tested on Siemens WS-AP3610.

CC: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: David Bauer <mail@david-bauer.net>
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
4 years agoprocd: update to latest git HEAD
Daniel Golle [Fri, 13 Mar 2020 19:06:03 +0000 (20:06 +0100)]
procd: update to latest git HEAD

77a6782 jail: mount-bind /etc/resolv.conf for non-netns jails

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agobase-files: convert leading spaces to tabs in functions.sh
Adrian Schmutzler [Fri, 13 Mar 2020 14:51:30 +0000 (15:51 +0100)]
base-files: convert leading spaces to tabs in functions.sh

Use tabs for indent consistently.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agokernel: make kmod-i2c-core selected by dependent modules
Sungbo Eo [Thu, 5 Mar 2020 14:42:18 +0000 (23:42 +0900)]
kernel: make kmod-i2c-core selected by dependent modules

Currently kmod-i2c-* will not get into images unless kmod-i2c-core is added to
DEVICE_PACKAGES as well. By changing the dependencies from "depends on" to
"select", we do not have the issue anymore.

Furthermore, we can remove most occurrences of the package from DEVICE_PACKAGES
and similar variables, as it is now pulled by dependent modules such as:
- kmod-hwmon-lm75
- kmod-i2c-gpio
- kmod-i2c-gpio-custom
- kmod-i2c-mux
- kmod-i2c-ralink

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[do not touch ar71xx]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agokernel: make kmod-hwmon-core selected by dependent modules
Sungbo Eo [Thu, 5 Mar 2020 14:22:47 +0000 (23:22 +0900)]
kernel: make kmod-hwmon-core selected by dependent modules

Currently kmod-hwmon-* will not get into images unless kmod-hwmon-core is added
to DEVICE_PACKAGES as well. By changing the dependencies from "depends on" to
"select", we do not have the issue anymore.

Furthermore, we can remove most occurrences of the package from DEVICE_PACKAGES
and similar variables, as it is now pulled by dependent modules such as:
- kmod-hwmon-gpiofan
- kmod-hwmon-lm63
- kmod-hwmon-lm75
- kmod-hwmon-lm85
- kmod-hwmon-lm90

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[do not touch ar71xx, adjust line wrapping]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agolayerscape: add kmod-i2c-mux to DEVICE_PACKAGES for traverse-ls1043
Sungbo Eo [Wed, 11 Mar 2020 02:27:59 +0000 (11:27 +0900)]
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>
4 years agoramips: add support for TOTOLINK A3
Sungbo Eo [Thu, 12 Mar 2020 19:19:32 +0000 (04:19 +0900)]
ramips: add support for TOTOLINK A3

TOTOLINK A3 is a clone of ipTIME A3. The only difference is the model name.

Specifications:
- SoC: MT7628AN
- RAM: DDR2 64MB
- Flash: SPI NOR 8MB
- WiFi:
  - 2.4GHz: SoC internal
  - 5GHz: MT7612EN
- Ethernet: 3x 10/100Mbps
  - Switch: SoC internal

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

Revert to stock firmware:
1.  Perform sysupgrade with stock image.

Tested on device by JasonHCH <hsuan670629@gmail.com>

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
4 years agoath79: add support for TP-Link TL-WR740N v5
Jun Su [Tue, 3 Mar 2020 09:33:40 +0000 (17:33 +0800)]
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]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
4 years agokernel: ifb: set default numifbs to 0
Kevin Darbyshire-Bryant [Wed, 22 Jan 2020 22:03:56 +0000 (22:03 +0000)]
kernel: ifb: set default numifbs to 0

By default on module load, 2 ifb interfaces are created and typically
remain unused, cluttering 'ip link' outputs and generally confusing
things.  sqm-scripts for example, creates its own ifb interface/s
instead of using these 2 defaults ifbs.

Tell the ifb module to not create any default ifbs on load via the
numifbs parameter.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
4 years agotools/cmake: Update to 3.16.5
Yufei Miao [Wed, 11 Mar 2020 05:38:53 +0000 (13:38 +0800)]
tools/cmake: Update to 3.16.5

Update cmake to 3.16.5

Signed-off-by: Yufei Miao <myf@myf.cloud>
4 years agoprocd: actually wire-up netns support
Daniel Golle [Thu, 12 Mar 2020 19:53:36 +0000 (20:53 +0100)]
procd: actually wire-up netns support

When support for network namespaces was added to procd, adding the
corresponding jail flag in procd.sh was ommitted. Add it now.

Fixes: 97a03a4760 ("procd: update to latest git HEAD")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
4 years agoath79: add back NAND symbols to NAND target
David Bauer [Thu, 12 Mar 2020 13:08:30 +0000 (14:08 +0100)]
ath79: add back NAND symbols to NAND target

The NAND config symbols were removed unintentionally while adding
support for Linux 5.4.

Add the respective symbols for v4.19 as well as v5.4.

Signed-off-by: David Bauer <mail@david-bauer.net>
4 years agoimx6: add support for GW5907/GW5910/GW5912/GW5913
Tim Harvey [Wed, 11 Mar 2020 15:02:58 +0000 (08:02 -0700)]
imx6: add support for GW5907/GW5910/GW5912/GW5913

This patch adds support for GW5907/GW5910/GW5912/GW5913 IMX6 based boards
from the Gateworks Ventana Family[A]:
- backport upstream dt patches from 5.6 to 4.19 and 5.4
- add dtb's to ventana images
- add board-name and network config

A. https://www.gateworks.com/products/imx6-single-board-computer-gateworks-ventana-family

Flashing instructions for Ventana boards:

Using pre-flashed bootloader:
- Use appropriate ubi image depending on board NAND to flash via bootloader:
openwrt-imx6-ventana-squashfs-nand.ubi - 2KiB page size
openwrt-imx6-ventana-large-squashfs-nand.ubi - 4KiB page size
http://trac.gateworks.com/wiki/linux/ubi

Using Gateworks JTAG dongle:
- Use Gateworks mkimage_jtag script to create a JTAG image comprised of
pre-built bootloader and ubi image:
http://trac.gateworks.com/wiki/jtag_instructions

Signed-off-by: Tim Harvey <tharvey@gateworks.com>