openwrt/openwrt.git
3 years agokernel: 5.4: fix patches after wireguard backport
Ilya Lipnitskiy [Fri, 19 Feb 2021 16:04:26 +0000 (08:04 -0800)]
kernel: 5.4: fix patches after wireguard backport

No major problems, just a minor Kconfig fix and a refresh.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agokernel: 5.4: import wireguard backport
Jason A. Donenfeld [Fri, 19 Feb 2021 13:29:04 +0000 (14:29 +0100)]
kernel: 5.4: import wireguard backport

Rather than using the clunky, old, slower wireguard-linux-compat out of
tree module, this commit does a patch-by-patch backport of upstream's
wireguard to 5.4. This specific backport is in widespread use, being
part of SUSE's enterprise kernel, Oracle's enterprise kernel, Google's
Android kernel, Gentoo's distro kernel, and probably more I've forgotten
about. It's definately the "more proper" way of adding wireguard to a
kernel than the ugly compat.h hell of the wireguard-linux-compat repo.
And most importantly for OpenWRT, it allows using the same module
configuration code for 5.10 as for 5.4, with no need for bifurcation.

These patches are from the backport tree which is maintained in the
open here: https://git.zx2c4.com/wireguard-linux/log/?h=backport-5.4.y
I'll be sending PRs to update this as needed.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
3 years agokernel: 5.10: wireguard: backport 5.12-rc1 changes in net.git
Jason A. Donenfeld [Wed, 24 Feb 2021 12:15:08 +0000 (13:15 +0100)]
kernel: 5.10: wireguard: backport 5.12-rc1 changes in net.git

These will eventually make their way to 5.10, but it could be a while.

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=ee576c47db60432c37e54b1e2b43a8ca6d3a8dca
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=5a0598695634a6bb4126818902dd9140cd9df8b6
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=99fff5264e7ab06f45b0ad60243475be0a8d0559
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=8b5553ace83cced775eefd0f3f18b5c6214ccf7a
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=bce2473927af8de12ad131a743f55d69d358c0b9

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
[Rename 082-wireguard-kconfig... to 083-wireguard-kconfig...]
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agozynq: Enable CONFIG_KERNEL_MODE_NEON
Ilya Lipnitskiy [Fri, 19 Feb 2021 23:41:42 +0000 (15:41 -0800)]
zynq: Enable CONFIG_KERNEL_MODE_NEON

This flag is set on all other platforms. And Zynq 7000 SoC does have
NEON support:
https://www.xilinx.com/support/documentation/application_notes/xapp1206-boost-sw-performance-zynq7soc-w-neon.pdf

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agodownload: add mirror alias for Debian
David Bauer [Sat, 20 Feb 2021 20:17:26 +0000 (21:17 +0100)]
download: add mirror alias for Debian

Add an alias for Debian packages and download them from the Debian
mirror redirector.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agodownload: use mirror redirector for GNOME downloads
David Bauer [Sat, 20 Feb 2021 18:18:32 +0000 (19:18 +0100)]
download: use mirror redirector for GNOME downloads

Use the GNOME mirror redirector as the primary download source for GNOME
packages.

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agompc85xx: remove fdt.bin image
David Bauer [Fri, 26 Feb 2021 12:16:01 +0000 (13:16 +0100)]
mpc85xx: remove fdt.bin image

When converting the fdt binary to be created as an artifact, the image
receipt was dropped but the entry in the target images list was not.

Fixes commit 1e41de2f48e2 ("mpc85xx: convert TL-WDR4900 v1 to simpleImage")

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoramips: add support for ZTE MF283+
Lech Perczak [Sat, 6 Feb 2021 12:56:46 +0000 (13:56 +0100)]
ramips: add support for ZTE MF283+

ZTE MF283+ is a dual-antenna LTE category 4 router, based on Ralink
RT3352 SoC, and built-in ZTE P685M PCIe MiniCard LTE modem.

Hardware highlighs:
- CPU: MIPS24KEc at 400MHz,
- RAM: 64MB DDR2,
- Flash: 16MB SPI,
- Ethernet: 4 10/100M port switch with VLAN support,
- Wireless: Dual-stream 802.11n (RT2860), with two internal antennas,
- WWAN: Built-in ZTE P685M modem, with two internal antennas and two
  switching SMA connectors for external antennas,
- FXS: Single ATA, with two connectors marked PHONE1 and PHONE2,
  internally wired in parallel by 0-Ohm resistors, handled entirely by
  internal WWAN modem.
- USB: internal miniPCIe slot for modem,
  unpopulated USB A connector on PCB.
- SIM slot for the WWAN modem.
- UART connector for the console (unpopulated) at 3.3V,
  pinout: 1: VCC, 2: TXD, 3: RXD, 4: GND,
  settings: 57600-8-N-1.
- LEDs: Power (fixed), WLAN, WWAN (RGB),
  phone (bicolor, controlled by modem), Signal,
  4 link/act LEDs for LAN1-4.
- Buttons: WPS, reset.

Installation:
As the modem is, for most of the time, provided by carriers, there is no
possibility to flash through web interface, only built-in FOTA update
and TFTP recovery are supported.

There are two installation methods:
(1) Using serial console and initramfs-kernel - recommended, as it
allows you to back up original firmware, or
(2) Using TFTP recovery - does not require disassembly.

(1) Using serial console:
To install OpenWrt, one needs to disassemble the
router and flash it via TFTP by using serial console:
- Locate unpopulated 4-pin header on the top of the board, near buttons.
- Connect UART adapter to the connector. Use 3.3V voltage level only,
  omit VCC connection. Pin 1 (VCC) is marked by square pad.
- Put your initramfs-kernel image in TFTP server directory.
- Power-up the device.
- Press "1" to load initramfs image to RAM.
- Enter IP address chosen for the device (defaults to 192.168.0.1).
- Enter TFTP server IP address (defaults to 192.168.0.22).
- Enter image filename as put inside TFTP server - something short,
  like firmware.bin is recommended.
- Hit enter to load the image. U-boot will store above values in
  persistent environment for next installation.
- If you ever might want to return to vendor firmware,
  BACK UP CONTENTS OF YOUR FLASH NOW.
  For this router, commonly used by mobile networks,
  plain vendor images are not officially available.
  To do so, copy contents of each /dev/mtd[0-3], "firmware" - mtd3 being the
  most important, and copy them over network to your PC. But in case
  anything goes wrong, PLEASE do back up ALL OF THEM.
- From under OpenWrt just booted, load the sysupgrade image to tmpfs,
  and execute sysupgrade.

(2) Using TFTP recovery
- Set your host IP to 192.168.0.22 - for example using:
sudo ip addr add 192.168.0.22/24 dev <interface>
- Set up a TFTP server on your machine
- Put the sysupgrade image in TFTP server root named as 'root_uImage'
  (no quotes), for example using tftpd:
  cp openwrt-ramips-rt305x-zte_mf283plus-squashfs-sysupgrade.bin /srv/tftp/root_uImage
- Power on the router holding BOTH Reset and WPS buttons held for around
  5 seconds, until after WWAN and Signal LEDs blink.
- Wait for OpenWrt to start booting up, this should take around a
  minute.

Return to original firmware:
Here, again there are two possibilities are possible, just like for
installation:
(1) Using initramfs-kernel image and serial console
(2) Using TFTP recovery

(1) Using initramfs-kernel image and serial console
- Boot OpenWrt initramfs-kernel image via TFTP the same as for
  installation.
- Copy over the backed up "firmware.bin" image of "mtd3" to /tmp/
- Use "mtd write /tmp/firmware.bin /dev/mtd3", where firmware.bin is
  your backup taken before OpenWrt installation, and /dev/mtd3 is the
  "firmware" partition.

(2) Using TFTP recovery
- Follow the same steps as for installation, but replacing 'root_uImage'
  with firmware backup you took during installation, or by vendor
  firmware obtained elsewhere.

A few quirks of the device, noted from my instance:
- Wired and wireless MAC addresses written in flash are the same,
  despite being in separate locations.
- Power LED is hardwired to 3.3V, so there is no status LED per se, and
  WLAN LED is controlled by WLAN driver, so I had to hijack 3G/4G LED
  for status - original firmware also does this in bootup.
- FXS subsystem and its LED is controlled by the
  modem, so it work independently of OpenWrt.
  Tested to work even before OpenWrt booted.
  I managed to open up modem's shell via ADB,
  and found from its kernel logs, that FXS and its LED is indeed controlled
  by modem.
- While finding LEDs, I had no GPL source drop from ZTE, so I had to probe for
  each and every one of them manually, so this might not be complete -
  it looks like bicolor LED is used for FXS, possibly to support
  dual-ported variant in other device sharing the PCB.
- Flash performance is very low, despite enabling 50MHz clock and fast
  read command, due to using 4k sectors throughout the target. I decided
  to keep it at the moment, to avoid breaking existing devices - I
  identified one potentially affected, should this be limited to under
  4MB of Flash. The difference between sysupgrade durations is whopping
  3min vs 8min, so this is worth pursuing.

In vendor firmware, WWAN LED behaviour is as follows, citing the manual:
- red - no registration,
- green - 3G,
- blue - 4G.
Blinking indicates activity, so netdev trigger mapped from wwan0 to blue:wwan
looks reasonable at the moment, for full replacement, a script similar to
"rssileds" would need to be developed.

Behaviour of "Signal LED" in vendor firmware is as follows:
- Off - no signal,
- Blinking - poor coverage
- Solid - good coverage.

A few more details on the built-in LTE modem:
Modem is not fully supported upstream in Linux - only two CDC ports
(DIAG and one for QMI) probe. I sent patches upstream to add required device
IDs for full support.
The mapping of USB functions is as follows:
- CDC (QCDM) - dedicated to comunicating with proprietary Qualcomm tools.
- CDC (PCUI) - not supported by upstream 'option' driver yet. Patch
  submitted upstream.
- CDC (Modem) - Exactly the same as above
- QMI - A patch is sent upstream to add device ID, with that in place,
  uqmi did connect successfully, once I selected correct PDP context
  type for my SIM (IPv4-only, not default IPv4v6).
- ADB - self-explanatory, one can access the ADB shell with a device ID
  added to 51-android.rules like so:

SUBSYSTEM!="usb", GOTO="android_usb_rules_end"
LABEL="android_usb_rules_begin"
SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", ATTR{idProduct}=="1275", ENV{adb_user}="yes"
ENV{adb_user}=="yes", MODE="0660", GROUP="plugdev", TAG+="uaccess"
LABEL="android_usb_rules_end"

While not really needed in OpenWrt, it might come useful if one decides to
move the modem to their PC to hack it further, insides seem to be pretty
interesting. ADB also works well from within OpenWrt without that. O
course it isn't needed for normal operation, so I left it out of
DEVICE_PACKAGES.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
[remove kmod-usb-ledtrig-usbport, take merged upstream patches]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomvebu: add LED support for GL.iNet GL-MV1000
Jeff Collins [Thu, 25 Feb 2021 16:11:58 +0000 (11:11 -0500)]
mvebu: add LED support for GL.iNet GL-MV1000

This patch enables LED support for the GL.iNet GL-MV1000

Signed-off-by: Jeff Collins <jeffcollins9292@gmail.com>
[add SPDX identifier on new file, add aliases, minor cosmetic issues]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: fix USB power on TP-Link TL-WR810N v1
Tom Stöveken [Thu, 25 Feb 2021 18:49:10 +0000 (19:49 +0100)]
ath79: fix USB power on TP-Link TL-WR810N v1

Before: Kernel reported "usb_vbus: disabling" and the USB was not
        providing power
After:  USB power is switched on, peripheral is powered from the
        device

Signed-off-by: Tom Stöveken <tom@naaa.de>
[squash and tidy up]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm53xx: backport more upstream dts stuff from kernel 5.11
Rafał Miłecki [Thu, 25 Feb 2021 19:45:02 +0000 (20:45 +0100)]
bcm53xx: backport more upstream dts stuff from kernel 5.11

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobcm53xx: backport Linksys Panamera (EA9500) patches
Vivek Unune [Fri, 13 Nov 2020 13:39:43 +0000 (08:39 -0500)]
bcm53xx: backport Linksys Panamera (EA9500) patches

These patches have been already accepted.

302-ARM-dts-BCM5301X-Update-Northstar-pinctrl-binding.patch had to
be updated.

[rmilecki: use actual upstream accepted patches
           replace v5.10 with v5.11 to match actual upstream kernel
           recover dropped part of the pinctrl compatible patch
           update filenames
           refresh patches]

Signed-off-by: Vivek Unune <npcomplete13@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobcm53xx: group dts backports by upstream kernel version
Rafał Miłecki [Thu, 25 Feb 2021 18:34:21 +0000 (19:34 +0100)]
bcm53xx: group dts backports by upstream kernel version

It's a simple renaming thing.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
3 years agobmips: dts: fix syscon-reboot nodes
Álvaro Fernández Rojas [Thu, 25 Feb 2021 19:33:38 +0000 (20:33 +0100)]
bmips: dts: fix syscon-reboot nodes

Using regmap with phandles is deprecated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobmips: add BCM63268 timer clock and reset support
Álvaro Fernández Rojas [Thu, 25 Feb 2021 19:08:39 +0000 (20:08 +0100)]
bmips: add BCM63268 timer clock and reset support

We need this to fix USB support on BCM63268.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobmips: rewrite pin controllers
Álvaro Fernández Rojas [Wed, 24 Feb 2021 20:28:08 +0000 (21:28 +0100)]
bmips: rewrite pin controllers

This is needed in order to upstream them.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agotreewide: rename IMAGE_PREFIX/IMAGE_NAME to DEVICE_IMG_*
Adrian Schmutzler [Mon, 22 Feb 2021 14:55:43 +0000 (15:55 +0100)]
treewide: rename IMAGE_PREFIX/IMAGE_NAME to DEVICE_IMG_*

We so far had two variables IMG_PREFIX and IMAGE_PREFIX with
different content. Since these names are obviously quite
confusing, this patch renames the latter to DEVICE_IMG_PREFIX,
as it's a device-dependent variable, while IMG_PREFIX is only
(sub)target-dependent.

For consistency, also rename IMAGE_NAME to DEVICE_IMG_NAME, as
that's a device-dependent variable as well.

Cc: Paul Spooren <mail@aparcar.org>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomediatek: switch to use seperate ramdisk for initramfs images
Daniel Golle [Thu, 25 Feb 2021 14:51:41 +0000 (14:51 +0000)]
mediatek: switch to use seperate ramdisk for initramfs images

MediaTek targets always use U-Boot's modern uImage.FIT format which
allows bundling several blobs into a single file including hashes,
descriptions and more. In fact, we are already using that to bundle
the Flattened Device Tree blob with the kernel on this and many
other targets.
In the same fashion, we can now make use of the newly introduced
support for building seperate ramdisk to uImage.FIT with a dedicated
initrd blob checked and loaded by U-Boot instead of embedding the
cpio archive into the kernel itself.
This allows for having larger ramdisks, choosing ramdisk compression
independently of kernel compression (while only kernel is decompressed
by the bootloader) and for more easily replacing or modifying the
filesystem contained in an initramfs image.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agooxnas: add experimental support for Linux 5.10
Daniel Golle [Thu, 18 Feb 2021 17:59:12 +0000 (17:59 +0000)]
oxnas: add experimental support for Linux 5.10

PCIe still reports link-down for some reason, RAID fails to assemble
despite SATA looking good (maybe a generic problem with RAID?)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoimage: improve Kconfig for seperate ramdisk option
Daniel Golle [Thu, 25 Feb 2021 14:13:50 +0000 (14:13 +0000)]
image: improve Kconfig for seperate ramdisk option

* show only if target supports it (ie. seperate_ramdisk feature set)
* select XZ compression by default of ramdisk is seperate

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoath79: enable UART node for GL-USB150
Adrian Schmutzler [Thu, 25 Feb 2021 14:09:17 +0000 (15:09 +0100)]
ath79: enable UART node for GL-USB150

This was overlooked when adding support for this device.
(It has recently been discovered that this was the only device in
ath79 having &uart disabled.)

Fixes: acc62630132c ("ath79: add support for GL.iNet GL-USB150")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoimage: remove bogus mkimage command
Daniel Golle [Thu, 25 Feb 2021 14:06:14 +0000 (14:06 +0000)]
image: remove bogus mkimage command

That was a left-over from testing and should not have made it into the
tree. Remove it.

Fixes: 330bd380e8 ("image: allow building FIT and uImage with ramdisk")
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agokernel: bump 5.4 to 5.4.100
John Audia [Tue, 23 Feb 2021 16:06:10 +0000 (11:06 -0500)]
kernel: bump 5.4 to 5.4.100

Ran update_kernel.sh in a fresh clone without any existing toolchains.

Build system: x86_64
Build-tested: ipq806x/R7800
Run-tested: ipq806x/R7800

No dmesg regressions, everything functional

Signed-off-by: John Audia <graysky@archlinux.us>
[refresh again]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobuild: avoid generating JSON info on missing image
David Bauer [Wed, 24 Feb 2021 20:38:15 +0000 (21:38 +0100)]
build: avoid generating JSON info on missing image

Previously, build would fail for targets containing devices with not
initramfs image (such as mpc85xx-p1010). Only generate the JSON image
info for the initramfs image when we have one to avoid breaking the
builds.

Fixes commit d3140d052964 ("build/json: generate json file for initramfs")

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agortl8812au-ct: fix PKG_MIRROR_HASH
David Bauer [Wed, 24 Feb 2021 20:30:41 +0000 (21:30 +0100)]
rtl8812au-ct: fix PKG_MIRROR_HASH

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agomediatek: mt7622-bananapi-bpi-r64-rootdisk rebase to upstream dts
Oskari Lemmela [Wed, 24 Feb 2021 19:10:38 +0000 (21:10 +0200)]
mediatek: mt7622-bananapi-bpi-r64-rootdisk rebase to upstream dts

simplify maintaining mt7622-bananapi-bpi-r64-rootdisk.dts by
storing only differences between upstream dts

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
3 years agomediatek: mt7622: fix bpi-r64 emmc f2fs overlay
Oskari Lemmela [Wed, 24 Feb 2021 19:10:37 +0000 (21:10 +0200)]
mediatek: mt7622: fix bpi-r64 emmc f2fs overlay

f2fs tools are needed for generating f2fs overlay.
vfat modules are used for recovery mounting.

Fixes: f72a2b004c3 ("mediatek: add bpi-r64 emmc support")
Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
3 years agomediatek: mt7622: enable support for f2fs overlay
Oskari Lemmela [Wed, 24 Feb 2021 19:10:36 +0000 (21:10 +0200)]
mediatek: mt7622: enable support for f2fs overlay

f2fs filesystem and loop device support are needed for f2fs
overlay over squashfs.

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
3 years agomediatek: mt7622: add missing CONFIG_MMC_BLK
Oskari Lemmela [Wed, 24 Feb 2021 19:10:35 +0000 (21:10 +0200)]
mediatek: mt7622: add missing CONFIG_MMC_BLK

CONFIG_MMC_BLK enables block devices for SD/eMMC

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
3 years agoarm-trusted-firmware-mediatek: correct location of PKG_LICENSE
Daniel Golle [Wed, 24 Feb 2021 18:55:56 +0000 (18:55 +0000)]
arm-trusted-firmware-mediatek: correct location of PKG_LICENSE

As PKG_LICENSE is originally set by include/trusted-firmware-a.mk it
can only be appended after that. Hence move that line below the
include to actually make sense.
(cosmetical change, already slipped into openwrt-21.02 branch)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agokernel: bump version 5.10 to 5.10.18
Kabuli Chana [Tue, 23 Feb 2021 17:29:49 +0000 (10:29 -0700)]
kernel: bump version 5.10 to 5.10.18

update kernel version, refresh current patchset

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
[rebase/refresh]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobmips: add SPI accepted PM patches
Álvaro Fernández Rojas [Wed, 24 Feb 2021 17:20:04 +0000 (18:20 +0100)]
bmips: add SPI accepted PM patches

These patches have been accepted upstream.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoimx-bootlets: refresh patches
Adrian Schmutzler [Wed, 24 Feb 2021 15:15:02 +0000 (16:15 +0100)]
imx-bootlets: refresh patches

Tidy this up a little.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: create common DTSI for Senao qca955x APs
Adrian Schmutzler [Wed, 24 Feb 2021 12:14:12 +0000 (13:14 +0100)]
ath79: create common DTSI for Senao qca955x APs

This creates a shared DTSI for qca955x Senao/Engenius APs with
concatenated firmware partition/okli loader:

 - EAP1200H
 - EnstationAC v1

To make this usable for future boards with 32 MB flash as well,
split the partitions node already.

Suggested-by: Michael Pratt <mcpratt@pm.me>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: rename 'engenius' Makefile definitions to 'senao'
Michael Pratt [Fri, 12 Feb 2021 18:24:32 +0000 (13:24 -0500)]
ath79: rename 'engenius' Makefile definitions to 'senao'

These recipes and definitions can apply
to devices from other vendors
with PCB boards or SDK produced by Senao
not only the brand Engenius

possible examples:
Extreme Networks, WatchGuard, OpenMesh,
Fortinet, ALLNET, OCEDO, Plasma Cloud, devolo, etc.

so rename all of these items
and move DEVICE_VENDOR from common to generic/tiny.mk

Signed-off-by: Michael Pratt <mcpratt@pm.me>
3 years agozlib: properly split patches
Adrian Schmutzler [Wed, 24 Feb 2021 10:53:03 +0000 (11:53 +0100)]
zlib: properly split patches

This package had two patches (with two headers etc.) in one file,
which would have quilt merging them during a refresh.

Separate these patches into two files, as the original intent seems
to be having them separate.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobase-files: remove unneeded '$' signs in nand.sh
Daniel Golle [Wed, 24 Feb 2021 11:40:50 +0000 (11:40 +0000)]
base-files: remove unneeded '$' signs in nand.sh

When using Shell arithmetric evaluation via $((..)) the variables in
the expression do not need to be prefixed by the '$' sign.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoath79: create common DTSI for Senao ar934x APs
Adrian Schmutzler [Mon, 15 Feb 2021 16:30:59 +0000 (17:30 +0100)]
ath79: create common DTSI for Senao ar934x APs

This creates a shared DTSI for ar934x Senao/Engenius APs:

 - EAP300 v2
 - ENS202EXT v1
 - EAP600
 - ECB600

Since ar9341/ar9344 have different configuration, this new file
mostly contains the partitioning.

Suggested-by: Michael Pratt <mcpratt@pm.me>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: create common DTSI for Senao ar724x APs
Adrian Schmutzler [Mon, 15 Feb 2021 16:41:36 +0000 (17:41 +0100)]
ath79: create common DTSI for Senao ar724x APs

This creates a shared DTSI for ar724x Senao/Engenius APs:

 - ENH202 v1
 - EAP350 v1
 - ECB350 v1

Since ar7240/ar7242 have different configuration, this new file
mostly contains the partitioning.

Suggested-by: Michael Pratt <mcpratt@pm.me>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoath79: enable UART in SoC DTSI files
Adrian Schmutzler [Wed, 24 Feb 2021 00:52:34 +0000 (01:52 +0100)]
ath79: enable UART in SoC DTSI files

The uart node is enabled on all devices except one (GL-USB150 *).
Thus, let's not have a few hundred nodes to enable it, but do not
disable it in the first place.

Where the majority of devices is using it, also move the serial0
alias to the DTSI.

*) Since GL-USB150 even defines serial0 alias, the missing uart
   is probably just a mistake. Anyway, disable it for now so this
   patch stays cosmetic.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokirkwood: set testing kernel version to 5.10
Sungbo Eo [Wed, 17 Feb 2021 14:33:04 +0000 (23:33 +0900)]
kirkwood: set testing kernel version to 5.10

Tested on Pogoplug V4.

Linksys EA3500 will not build with buildbot settings and should be
disabled when the target is switched, unless the image size is
reduced again.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[add EA3500 comment]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokirkwood: update config for kernel 5.10
Sungbo Eo [Wed, 17 Feb 2021 13:27:47 +0000 (22:27 +0900)]
kirkwood: update config for kernel 5.10

Update config with make kernel_oldconfig.

CONFIG_SATA_PMP=y is added manually as done for 5.4.
This should be resolved properly in a separate issue.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
[add back CONFIG_SATA_PMP, rebase/refresh]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agokirkwood: refresh patches for kernel 5.10
Sungbo Eo [Wed, 17 Feb 2021 12:36:25 +0000 (21:36 +0900)]
kirkwood: refresh patches for kernel 5.10

Refresh patches to make them apply to kernel 5.10.
The removed patch has been merged upstream.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
3 years agokirkwood: copy files to kernel 5.10
Sungbo Eo [Wed, 17 Feb 2021 12:17:03 +0000 (21:17 +0900)]
kirkwood: copy files to kernel 5.10

Copy config and patches to kernel 5.10.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
3 years agokernel: add further missing symbols
Adrian Schmutzler [Tue, 23 Feb 2021 21:41:13 +0000 (22:41 +0100)]
kernel: add further missing symbols

CONFIG_NET_DSA_MV88E6XXX_PTP was simply missing in generic config.

CONFIG_I2C_PXA_SLAVE was previously enabled via i2c-pxa package,
but got removed there without moving the symbol to generic config.

Fixes: dd13add3ceed ("kernel: i2c-pxa: remove slave")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agosysupgrade-nand: allow limiting rootfs_data by setting env variable
Daniel Golle [Wed, 17 Feb 2021 15:17:49 +0000 (15:17 +0000)]
sysupgrade-nand: allow limiting rootfs_data by setting env variable

Check if firmware environment variable 'rootfs_data_max' exists and is
set to a numerical value greater than 0. If so, limit rootfs_data
volume to that size instead of using the maximum available size.

This is useful on devices with lots of flash where users may want to
have eg. a volume for persistent logs and statistics or for external
applications/containers. Persistence on rootfs overlay is limited by
the size of memory available during the sysugprade process as that
data needs to be copied to RAM while the volume is being recreated
during sysupgrade. Hence it is unsuitable for keeping larger amounts
of data accross upgrade which makes additional volume(s) for
application data desirable.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoimage: allow building FIT and uImage with ramdisk
Daniel Golle [Sun, 21 Feb 2021 14:19:26 +0000 (14:19 +0000)]
image: allow building FIT and uImage with ramdisk

Instead of embedding the initrd cpio archive into the kernel, allow
for having an external ramdisk added to the FIT or uImage.
This is useful to overcome kernel size limitations present in many
stock bootloaders, as the ramdisk is then loaded seperately and doesn't
add to the kernel size. Hence we can have larger ramdisks to host ie.
installers with all binaries to flash included (or a web-based
firmware selector).
In terms of performance and total size the differences are neglectible.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoimage: add support for building FIT image with filesystem
Daniel Golle [Mon, 15 Feb 2021 14:37:17 +0000 (14:37 +0000)]
image: add support for building FIT image with filesystem

Allow for single (external-data) FIT image to hold kernel, dtb and
squashfs. In that way, the bootloader verifies the system integrity
including the rootfs, because what's the point of checking that the
hash of the kernel is correct if it won't boot in case of squashfs
being corrupted? Better allow bootloader to check everything needed
to make it at least up to failsafe mode. As a positive side effect
this change also makes the sysupgrade process on nand potentially
much easier as it is now.
In short: mkimage has a parameter '-E' which allows generating FIT
images with 'external' data rather than embedding the data into the
device-tree blob itself. In this way, the FIT structure itself remains
small and can be parsed easily (rather than having to page around
megabytes of image content). This patch makes use of that and adds
support for adding sub-images of type 'filesystem' which are used to
store the squashfs. Now U-Boot can verify the whole OS and the new
partition parsers added in the Linux kernel can detect the filesystem
sub-images, create partitions for them, and select the active rootfs
volume based on the configuration in FIT (passing configuration via
device tree could be implemented easily at a later stage).

This new FIT partition parser works for NOR flash (on top of mtdblock),
NAND flash (on top of ubiblock) as well as classic block devices
(ie. eMMC, SDcard, SATA, NVME, ...).
It could even be used to mount such FIT images via `losetup -P` on a
user PC if this patch gets included in Linux upstream one day ;)

Signed-off-by: John Crispin <john@phrozen.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agopcre: disable C++ bindings
Rosen Penev [Thu, 21 Jan 2021 05:38:03 +0000 (21:38 -0800)]
pcre: disable C++ bindings

Nothing uses them. Allows to simplify the Makefile.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years agoramips: remove obsolete mx25l25635f compatible hack
DENG Qingfang [Tue, 2 Feb 2021 08:10:32 +0000 (16:10 +0800)]
ramips: remove obsolete mx25l25635f compatible hack

The kernel bump to 5.4 has removed the mx25l25635f hack, and the
mx25l25635f compatible is no longer required.

Signed-off-by: DENG Qingfang <dqfext@gmail.com>
3 years agoppp: Update to version 2.4.9
Hauke Mehrtens [Sun, 3 Jan 2021 02:29:02 +0000 (03:29 +0100)]
ppp: Update to version 2.4.9

Upstream integrated multiple patches from Distributions and did other
changes:
* rp-pppoe.so was renamed to pppoe.so
* Converted to ANSI C

The following patches were applied upstream:
* 100-debian_ip-ip_option.patch
* 101-debian_close_dev_ppp.patch
* 103-debian_fix_link_pidfile.patch
* 106-debian_stripMSdomain.patch
* 107-debian_pppoatm_wildcard.patch
* 110-debian_defaultroute.patch
* 202-no_strip.patch

Compilation with musl libc was fixed upstream so
140-pppoe_compile_fix.patch is not needed any more

Parts of the 203-opt_flags.patch patch were applied in a different way
upstream.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
3 years agoopenssl: always build with GOST engine support
Eneas U de Queiroz [Thu, 18 Feb 2021 00:50:08 +0000 (21:50 -0300)]
openssl: always build with GOST engine support

The packages feed has a proposed package for a GOST engine, which needs
support from the main openssl library.  It is a default option in
OpenSSL.  All that needs to be done here is to not disable it.

Package increases by a net 1-byte, so it is not really really worth
keeping this optional.

This commit also includes a commented-out example engine configuration
in openssl.cnf, as it is done for other available engines.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
3 years agoramips: overwrite reset gpio properties in DIR-860L DTS
Stijn Segers [Thu, 18 Feb 2021 13:10:57 +0000 (14:10 +0100)]
ramips: overwrite reset gpio properties in DIR-860L DTS

As suggested by Sergio, this adds GPIOs 19 and 8 explicitly into the
DIR-860L DTS, so the PCI-E ports get reset and the N radio (radio1)
on PCI-E port 1 comes up reliably.

Fixes the following error that popped up in dmesg:

    [    1.638942] mt7621-pci 1e140000.pcie: pcie1 no card, disable it (RST & CLK)

Suggested-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Signed-off-by: Stijn Segers <foss@volatilesystems.org>
Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
3 years agouboot-envtools: add support for ZyXEL GS-1900-8HP v1 and v2
Stijn Segers [Thu, 18 Feb 2021 23:22:26 +0000 (00:22 +0100)]
uboot-envtools: add support for ZyXEL GS-1900-8HP v1 and v2

This adds the necessary nuts and bolts for the uboot settings for both the ZyXEL GS1900-8HP v1 and v2.

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
3 years agoramips: mt7621: enable SX150x driver
Sander Vanheule [Sat, 20 Feb 2021 13:45:26 +0000 (14:45 +0100)]
ramips: mt7621: enable SX150x driver

The Netgear R6800 and R6700v2 devices have a Semtech SX1503 GPIO
expander controlling the device LEDs. This expander was initially
supported on 4.14, but support was lost in the transition to 5.4.

Since this driver cannot be built as a kernel module, enable it in the
kernel config for all mt7621 devices.

Run-tested on a Netgear R6800.

Cc: Stijn Segers <foss@volatilesystems.org>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Tested-by: Stijn Segers <foss@volatilesystems.org>
3 years agowolfssl: bump to v4.7.0-stable
Eneas U de Queiroz [Sun, 21 Feb 2021 21:33:30 +0000 (18:33 -0300)]
wolfssl: bump to v4.7.0-stable

Biggest fix for this version is CVE-2021-3336, which has already been
applied here.  There are a couple of low severity security bug fixes as
well.

Three patches are no longer needed, and were removed; the one remaining
was refreshed.

This tool shows no ABI changes:
https://abi-laboratory.pro/index.php?view=objects_report&l=wolfssl&v1=4.6.0&v2=4.7.0

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
3 years agokernel: DSA roaming fix for Marvell mv88e6xxx
DENG Qingfang [Mon, 22 Feb 2021 05:38:11 +0000 (13:38 +0800)]
kernel: DSA roaming fix for Marvell mv88e6xxx

Marvell mv88e6xxx switch series cannot perform MAC learning from
CPU-injected (FROM_CPU) DSA frames, which results in 2 issues.
- excessive flooding, due to the fact that DSA treats those addresses
as unknown
- the risk of stale routes, which can lead to temporary packet loss

Backport those patch series from netdev mailing list, which solve these
issues by adding and clearing static entries to the switch's FDB.

Add a hack patch to set default VID to 1 in port_fdb_{add,del}. Otherwise
the static entries will be added to the switch's private FDB if VLAN
filtering disabled, which will not work.

The switch may generate an "ATU violation" warning when a client moves
from the CPU port to a switch port because the static ATU entry added by
DSA core still points to the CPU port. DSA core will then clear the static
entry so it is not fatal. Disable the warning so it will not confuse users.

Link: https://lore.kernel.org/netdev/20210106095136.224739-1-olteanv@gmail.com/
Link: https://lore.kernel.org/netdev/20210116012515.3152-1-tobias@waldekranz.com/
Ref: https://gitlab.nic.cz/turris/turris-build/-/issues/165
Signed-off-by: DENG Qingfang <dqfext@gmail.com>
3 years agoautotools.mk: fix gettext fixup
Rosen Penev [Wed, 17 Feb 2021 10:51:10 +0000 (02:51 -0800)]
autotools.mk: fix gettext fixup

The update to gettext 0.21 broke packages that use autotools and
gettext because the sed line was failing with the new version. Fix with
a better sed expression.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years agokernel: add symbol CONFIG_POWER_RESET_LINKSTATION
Adrian Schmutzler [Tue, 23 Feb 2021 18:23:06 +0000 (19:23 +0100)]
kernel: add symbol CONFIG_POWER_RESET_LINKSTATION

Add symbol to generic config (this was added between 5.4 and 5.10),
and remove it from the targets where it was added by kernel_oldconfig
in the meantime.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agogeneric: add missing symbols
David Bauer [Mon, 22 Feb 2021 01:00:02 +0000 (02:00 +0100)]
generic: add missing symbols

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agowireguard: don't build on Linux 5.10
Ilya Lipnitskiy [Mon, 22 Feb 2021 00:03:12 +0000 (16:03 -0800)]
wireguard: don't build on Linux 5.10

There are efforts underway to bring wireguard in-tree for Linux 5.4 and
to have a common build infrastructure for both 5.4 and 5.10 for
kmod-wireguard[0]. Until then, restrict kmod-wireguard to build only on
Linux 5.4, because the wireguard-compat package will not build on Linux
5.10.

[0]: https://github.com/openwrt/openwrt/pull/3885

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agokernel: 5.10: fix kmod build failures
Ilya Lipnitskiy [Fri, 19 Feb 2021 16:21:24 +0000 (08:21 -0800)]
kernel: 5.10: fix kmod build failures

Modify existing modules to reflect their new location in Linux 5.10. Add
missing dependenices.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
[enable CRYPTO_USER_API_ENABLE_OBSOLETE; add kmod-crypto-hash dependency
to usb-net-rtl8152]
Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agokernel: 5.10: fix rtl8812au-ct build
Ilya Lipnitskiy [Fri, 19 Feb 2021 00:34:43 +0000 (16:34 -0800)]
kernel: 5.10: fix rtl8812au-ct build

Pull in upstream:
https://github.com/greearb/rtl8812AU_8821AU_linux/commit/c8d243936fed0c5fe1d77a06b36d26f41c8c46f4
https://github.com/greearb/rtl8812AU_8821AU_linux/commit/1e9689c89fa627d2d764ba0e8359fd444fe8458f

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
3 years agoarm-trusted-firmware-mediatek: use @OPENWRT mirror for blobs
Daniel Golle [Tue, 23 Feb 2021 18:02:40 +0000 (18:02 +0000)]
arm-trusted-firmware-mediatek: use @OPENWRT mirror for blobs

Now that mirrors have picked it up, switch to using the @OPENWRT
mirror instead of hosting those files on Github.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoramips: improve gpio control for Phicomm PSG1218
Shiji Yang [Mon, 22 Feb 2021 16:10:45 +0000 (00:10 +0800)]
ramips: improve gpio control for Phicomm PSG1218

Description:
1. From key and led config setting, we can find only "uartf" and "i2c" are used
as gpio by check mt7620 datasheet. It's time to remove unused pin group.

2. PSG1218 only have three led, so we can remove ethernet led pinctrl. refer to
Phicomm K2G.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
3 years agomvebu: add 5.10 as a testing kernel
Rui Salvaterra [Mon, 22 Feb 2021 17:37:14 +0000 (17:37 +0000)]
mvebu: add 5.10 as a testing kernel

Keep 5.4 as stable until further validation.

Tested on Turris Omnia (Rui Salvaterra) and ESPRESSObin v5 (Tomasz
Maciej Nowak). Cortex-A{53,72} subtargets are only build-tested.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[added comment about tests]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomvebu: fix the Turris Omnia device tree
Rui Salvaterra [Mon, 22 Feb 2021 17:37:13 +0000 (17:37 +0000)]
mvebu: fix the Turris Omnia device tree

Enable and fix hardware buffer management. Also fix the IRQ storm caused by a
misconfiguration of the PCA9538 interrupt pin.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
3 years agomvebu: fix the patch numbering
Rui Salvaterra [Mon, 22 Feb 2021 17:37:12 +0000 (17:37 +0000)]
mvebu: fix the patch numbering

Make each logical patch group numbering contiguous.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[add kernel version to backport]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomvebu: refresh 5.10 kconfigs/patches
Rui Salvaterra [Mon, 22 Feb 2021 17:37:11 +0000 (17:37 +0000)]
mvebu: refresh 5.10 kconfigs/patches

Also delete already upstreamed patches/changes.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
3 years agomvebu: remove upstreamed DTS files in 5.10
Adrian Schmutzler [Tue, 23 Feb 2021 10:43:33 +0000 (11:43 +0100)]
mvebu: remove upstreamed DTS files in 5.10

Some armada-3720-espressobin-* files have been upstreamed, move
these to files-5.4.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomvebu: copy 5.4 patches/kconfigs to 5.10
Rui Salvaterra [Mon, 22 Feb 2021 17:37:09 +0000 (17:37 +0000)]
mvebu: copy 5.4 patches/kconfigs to 5.10

Just a simple copy, no refresh yet.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[do not duplicate files]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agomvebu: refresh the 5.4 kernel configs
Rui Salvaterra [Mon, 22 Feb 2021 17:37:08 +0000 (17:37 +0000)]
mvebu: refresh the 5.4 kernel configs

Remove the implicit/inherited symbols. While not strictly necessary, this will
make reviewing the diff between 5.4 and 5.10 easier.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
3 years agokernel: 5.10: add further generic kconfig symbols
Rui Salvaterra [Mon, 22 Feb 2021 17:37:07 +0000 (17:37 +0000)]
kernel: 5.10: add further generic kconfig symbols

This will make the specific kconfig smaller.

Reviewed-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Tested-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[improved commit title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobmips: fix SMP CPU mapping
Álvaro Fernández Rojas [Tue, 23 Feb 2021 14:25:13 +0000 (15:25 +0100)]
bmips: fix SMP CPU mapping

SMP isn't supported on BCM6358 since it has a shared TLB. Some boards boot
with CPU #1 instead of CPU #0, and this is currently not supported do to a
smp-bmips bug.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobmips: switch to accepted upstream patch
Álvaro Fernández Rojas [Tue, 23 Feb 2021 14:22:27 +0000 (15:22 +0100)]
bmips: switch to accepted upstream patch

This patch has been accepted and is going to be in linux v5.12.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobmips: rename upstream patches
Álvaro Fernández Rojas [Tue, 23 Feb 2021 14:14:41 +0000 (15:14 +0100)]
bmips: rename upstream patches

These patches were applied in linux v5.11, not v5.12.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoprocd: update to git HEAD
Daniel Golle [Tue, 23 Feb 2021 13:16:23 +0000 (13:16 +0000)]
procd: update to git HEAD

 2be57ed cosmetics: provide compatible system info on Aarch64
 37eed13 system: expose if system was booted from initramfs

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agoarm-trusted-firmware-mediatek: bring back package
Daniel Golle [Wed, 10 Feb 2021 02:47:53 +0000 (02:47 +0000)]
arm-trusted-firmware-mediatek: bring back package

 * use binary provided by MediaTek to work-around 'bromimage' issue
 * refactor Makefile
 * add mt7622 1c variants (using binaries provided by MTK)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
3 years agobmips: bcm6358: add watchdog
Álvaro Fernández Rojas [Tue, 23 Feb 2021 11:57:28 +0000 (12:57 +0100)]
bmips: bcm6358: add watchdog

Watchdog node was missing in commit 029093a302.

Fixes: 029093a302c9 ("bmips: add new target")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobmips: remove unneeded downstream serial patch
Álvaro Fernández Rojas [Tue, 23 Feb 2021 11:34:27 +0000 (12:34 +0100)]
bmips: remove unneeded downstream serial patch

Disabling CONFIG_SERIAL_8250 makes the upstream serial driver work OOB.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm63xx: pinctrl: fix BCM6348 groups
Daniel González Cabanelas [Tue, 19 May 2020 13:56:29 +0000 (15:56 +0200)]
bcm63xx: pinctrl: fix BCM6348 groups

The current driver has some troubles:
 - Some groupings are wrong.
 - The pinctrl group0 owns pins never used (at least in Openwrt) for any
   pinmux. The driver hijacks all the pins on the group avoiding any other
   use, spite they're free. I.e. for buttons, causing this kernel error:
   [  4.735928] gpio-keys-polled keys: unable to claim gpio 479, err=-22
   [  4.742642] gpio-keys-polled: probe of keys failed with error -22
 - Minor errors about groupings on the documentation
 - Missing "diag" grouping in dtsi
 - Wrong groupings in dtsi

Fix it by setting the correct groups.
And relax the pin capturing, letting the gpios belonging to any group to
be used for other purposes like buttons. This was the behavior with stock
firmwares and old OpenWrt versions which never caused any trouble.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
3 years agobmips: bcm6358: fix EHCI/OHCI kernel panics
Álvaro Fernández Rojas [Tue, 23 Feb 2021 09:52:06 +0000 (10:52 +0100)]
bmips: bcm6358: fix EHCI/OHCI kernel panics

ARCH_HAS_SYNC_DMA_FOR_CPU_ALL is causing kernel panics when EHCI or OHCI are
enabled.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoimx6: remove redundant IMAGE_NAME
Adrian Schmutzler [Mon, 22 Feb 2021 15:12:48 +0000 (16:12 +0100)]
imx6: remove redundant IMAGE_NAME

IMAGE_NAME is set twice for ventana, and the second value
actually matches the default in image.mk. Remove both.

Fixes: ded905ce431b ("imx6: extend cubox support to hummingboard,
add support for building full images")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agotreewide: remove redundant KERNEL_PREFIX definitions
Paul Spooren [Mon, 22 Feb 2021 03:56:53 +0000 (17:56 -1000)]
treewide: remove redundant KERNEL_PREFIX definitions

The variables KERNEL_INITRAMFS_PREFIX and KERNEL_PREFIX are already
defined in include/image.mk and don't have to be redefined in the
target Makefiles.

Signed-off-by: Paul Spooren <mail@aparcar.org>
[also cover imx6]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobmips: split base-files into subtargets
Adrian Schmutzler [Mon, 22 Feb 2021 18:02:35 +0000 (19:02 +0100)]
bmips: split base-files into subtargets

Like done for several targets already, splitting base-files into
subtarget will provide smaller images due to more specific
distribution of files per subtarget and allow to use default cases
more effectively.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobmips: add JFFS2 unaligned access patch
Álvaro Fernández Rojas [Mon, 22 Feb 2021 20:36:11 +0000 (21:36 +0100)]
bmips: add JFFS2 unaligned access patch

This patch is also needed on bmips if SMP is enabled.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobmips: bcm6368: fix bcm2835-rng
Álvaro Fernández Rojas [Mon, 22 Feb 2021 20:34:39 +0000 (21:34 +0100)]
bmips: bcm6368: fix bcm2835-rng

IPSEC needs a reset before using its HW RNG.
Otherwise, the numbers generated won't be random at all.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoramips: fix Phicomm PSG1218A switch port labels
Shiji Yang [Mon, 22 Feb 2021 16:02:30 +0000 (00:02 +0800)]
ramips: fix Phicomm PSG1218A switch port labels

The lan port sequence was reversed compared to the labels.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
[improve commit title/message]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoramips: move aliases to the top in SoC DTSI files
Adrian Schmutzler [Mon, 22 Feb 2021 17:44:31 +0000 (18:44 +0100)]
ramips: move aliases to the top in SoC DTSI files

The aliases node is expected as one of the first entries, and
having it there matches alphabetic sorting as well.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agoramips: drop redundant definitions of serial0 in aliases
Adrian Schmutzler [Mon, 22 Feb 2021 17:43:58 +0000 (18:43 +0100)]
ramips: drop redundant definitions of serial0 in aliases

These were redefines of the same value already set in the SoC dtsi
files.

Reported-by: Shiji Yang <yangshiji66@qq.com>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobmips: add new target
Álvaro Fernández Rojas [Sun, 21 Feb 2021 09:00:18 +0000 (10:00 +0100)]
bmips: add new target

This target has full device tree support, thus reducing the number of
patches needed for bcm63xx, in which there's a patch for every board.

The intention is to start with a minimal amount of downstream patches and
start upstreaming all of them.

Current status:
 - Enabling EHCI/OHCI on BCM6358 causes a kernel panic.
 - BCM63268 lacks Timer Clocks/Reset support.
 - No PCI/PCIe drivers.
 - No ethernet drivers.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm63xx: limit name metadata to model name
Álvaro Fernández Rojas [Mon, 22 Feb 2021 17:07:02 +0000 (18:07 +0100)]
bcm63xx: limit name metadata to model name

Since there are only 16 characters available, on most cases the vendor name
will fit in the metadata, but the model name won't fit.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoimage: add ModelNameLimit16
Álvaro Fernández Rojas [Mon, 22 Feb 2021 17:04:16 +0000 (18:04 +0100)]
image: add ModelNameLimit16

This script returns the model name limited to 16 characters.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agobcm63xx-cferam: select for bmips target
Álvaro Fernández Rojas [Sun, 17 May 2020 15:24:47 +0000 (17:24 +0200)]
bcm63xx-cferam: select for bmips target

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agomtd: fixtrx: support CFE imagetag on bmips target
Álvaro Fernández Rojas [Sun, 17 May 2020 15:24:47 +0000 (17:24 +0200)]
mtd: fixtrx: support CFE imagetag on bmips target

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agokernel: mtdsplit: add support for BCM63XX CFE firmware
Álvaro Fernández Rojas [Sun, 17 May 2020 15:24:47 +0000 (17:24 +0200)]
kernel: mtdsplit: add support for BCM63XX CFE firmware

Broadcom CFE bootloader relies on a tag for identifying the current firmware,
such as version, image start address, kernel address and size, rootfs size,
board id, signatures, etc.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agoramips: correct/add Phicomm K2x WAN/label MAC address
Shiji Yang [Mon, 22 Feb 2021 15:44:18 +0000 (23:44 +0800)]
ramips: correct/add Phicomm K2x WAN/label MAC address

Phicomm K2G:
add missing label_mac

Phicomm PSG1218A & PSG1218B:
The previous wan mac was set as factory@0x28 +1 (originally based
on the default case for the ramips target), but the correct wan mac
is factory@0x28 -1, being equal to factory@0x2e.

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
[minor commit title/message adjustments]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
3 years agobcm63xx: bcm63268: fix GPIO interrupts
Álvaro Fernández Rojas [Mon, 22 Feb 2021 08:04:04 +0000 (09:04 +0100)]
bcm63xx: bcm63268: fix GPIO interrupts

pinctrl should rely on external interrupt controller for GPIO interrupts.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
3 years agogeneric: add missing symbol
David Bauer [Sun, 21 Feb 2021 22:47:39 +0000 (23:47 +0100)]
generic: add missing symbol

Signed-off-by: David Bauer <mail@david-bauer.net>
3 years agoath79: enable Regulator support for target
David Bauer [Sun, 21 Feb 2021 22:41:53 +0000 (23:41 +0100)]
ath79: enable Regulator support for target

Regulator support was enabled on all subtargets except for ath79-nand.
With Kernel 5.10, AT803x requires Regulator support, thus enabling on
the complete target, as ath79-nand requires AT803x.

While this is only required on Kernel 5.10, enable it also on 5.4. We
have no major size-constraint, so enabling it on 5.4 allows us to clean
up the occurences in the subtarget configuration.

Signed-off-by: David Bauer <mail@david-bauer.net>