Commit Graph

24498 Commits

Author SHA1 Message Date
Rafał Miłecki
05dbfe616d bcm4908: use accepted 5.13 DTS patches
Some patches were slightly cleaned up. One things worth mentioning is
that adding:
phy-mode = "rgmii"
broke SF2 driver. It made it access random register breaking switch
setup.

That's why this commit also adds a quick sf2 fix.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-14 22:54:45 +01:00
Rafał Miłecki
98d456a14e bcm53xx: backport first 5.13 DTS changes
This adds NVMEM bindings that are needed for proper booting on Linksys
devices.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-14 19:11:05 +01:00
Tony Ambardar
8391781389 x86: support kernel 5.10
Add linux 5.10 as testing kernel, copy generic/subtarget configs and target
patches from 5.4.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>

x86: update target patches for kernel 5.10

Refresh all patches while also dropping:
    800-hwmon-w83627ehf-dont-claim-nct677x.patch

which is now upstreamed as:
    3207408ab4cb ("hwmon: (w83627ehf) remove nct6775 and nct6776 support")

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>

x86: refresh 5.10 target config

Refresh config using "make kernel_oldconfig".

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>

x86: refresh and test all subtarget configs

Refresh configs using "make kernel_oldconfig CONFIG_TARGET=subtarget".

Build and run-tested using QEMU: x86/64, x86/legacy, x86/generic.
Build-tested only: x86/geode.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
[squashed commits]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2021-03-14 17:52:49 +00:00
Tony Ambardar
95a3741d17 kernel: support new mdio_devres.ko module in 5.10
Add kmod-mdio-devres package and kernel config symbol, and update related
kmod-r8169 and kmod-ixgbe package dependencies.

Build tested module dependencies on x86/64 with CONFIG_ALL_KMODS=y.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2021-03-14 17:52:49 +00:00
Tony Ambardar
736edf9dea kernel: add missing config symbols for 5.10
Update generic config to add missing options that prompt during builds.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2021-03-14 17:52:49 +00:00
Álvaro Fernández Rojas
ecc058b6a0 bmips: minor ethernet driver cleanups and fixes
Add some minor ethernet driver cleanups and fixes to improve code quality.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-14 16:21:27 +01:00
Álvaro Fernández Rojas
4a81b00a05 bmips: reorganize patches
Rename and reorganize backported patches.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-14 16:21:27 +01:00
Hauke Mehrtens
e6ba970b6e realtek: Add ZyXEL GS1900-8
The ZyXEL GS1900-8 is a 8 port switch without any PoE functionality or
SFP ports, but otherwise similar to the other GS1900 switches.

Specifications
--------------
* Device:    ZyXEL GS1900-8 v1.2
* SoC:       Realtek RTL8380M 500 MHz MIPS 4KEc
* Flash:     Macronix MX25L12835F 16 MiB
* RAM:       Nanya NT5TU128M8GE-AC 128 MiB DDR2 SDRAM
* Ethernet:  8x 10/100/1000 Mbit
* LEDs:      1 PWR LED (green, not configurable)
             1 SYS LED (green, configurable)
             8 ethernet port status LEDs (green, SoC controlled)
* Buttons:   1 on-off glide switch at the back (not configurable)
             1 reset button at the right side, behind the air-vent
               (not configurable)
             1 reset button on front panel (configurable)
* Power      12V 1A barrel connector
* UART:      1 serial header (JP2) with populated standard pin connector on
             the left side of the PCB, towards the back. Pins are labelled:
             + VCC (3.3V)
             + TX (really RX)
             + RX (really TX)
             + GND
             the labelling is done from the usb2serial connector's point of
             view, so RX/ TX are mixed up.

Serial connection parameters for both devices: 115200 8N1.

Installation
------------
Instructions are identical to those for the GS1900-10HP and GS1900-8HP.

* Configure your client with a static 192.168.1.x IP (e.g. 192.168.1.10).
* Set up a TFTP server on your client and make it serve the initramfs
  image.
* Connect serial, power up the switch, interrupt U-boot by hitting the
  space bar, and enable the network:
  > rtk network on
* Since the GS1900-10HP is a dual-partition device, you want to keep the
  OEM firmware on the backup partition for the time being. OpenWrt can
  only boot off the first partition anyway (hardcoded in the DTS). To
  make sure we are manipulating the first partition, issue the following
  commands:
  > setsys bootpartition 0
  > savesys
* Download the image onto the device and boot from it:
  > tftpboot 0x84f00000 192.168.1.10:openwrt-realtek-generic-zyxel_gs1900-8-initramfs-kernel.bin
  > bootm
* Once OpenWrt has booted, scp the sysupgrade image to /tmp and flash it:
  > sysupgrade /tmp/openwrt-realtek-generic-zyxel_gs1900-8-squashfs-sysupgrade.bin

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-03-14 15:07:30 +01:00
Hauke Mehrtens
c6c8d597e1 realtek: Add generic zyxel_gs1900 image definition
Add a new common device definition for the Zyxel GS1900 line of
switches.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-03-14 15:03:00 +01:00
Álvaro Fernández Rojas
28dcb74de3 bmips: add experimental ethernet support
This adds experimental ethernet support for BCM6318, BCM6328, BCM6362, BCM6368
and BCM63268.
BCM6358 needs a different driver, so there's no support for now.

Working devices:
- Comtrend AR-5315u
- Comtrend AR-5387un
- Comtrend VR-3025u
- Comtrend VR-3032u

Not working devices:
- Netgear DGND3700 v2 (no idea on how the external switch is connected)
- Huawei HG556a ver B (BCM6358 needs a separate driveer)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-14 12:05:17 +01:00
Daniel González Cabanelas
b0235c0d8d mvebu: LS421DE: make cosmetics changes in dts file
Make some cosmetic changes in the Buffalo LinkStation LS421DE NAS:
  - Delete pointless #xxx-cells
  - bootargs: replace earlyprintk with earlycon and remove unneeded args.
  - Separate pinmux nodes with empty lines.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2021-03-13 20:15:29 +00:00
Kabuli Chana
1cd098784e kernel: bump 5.10 to 5.10.23
update kernel to 5.10.23, rebase patches, deleted upstreamed patch:

target/linux/generic/backport-5.10/830-v5.12-0001-net-usb-qmi_wwan-support-ZTE-P685M-modem.patch

compile / test - mvebu / mamba, rango

Signed-off-by: Kabuli Chana <newtownBuild@gmail.com>
[refresh again]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-13 17:06:42 +01:00
John Audia
e7fa97b326 kernel: bump 5.4 to 5.4.105
Ran update_kernel.sh in a fresh clone without any existing toolchains.

Removed upstreamed generic-backports:
  830-v5.12-0001-net-usb-qmi_wwan-support-ZTE-P685M-modem.patch
  831-v5.9-usbip-tools-fix-build-error-for-multiple-definition.patch
  755-v5.8-net-dsa-add-GRO-support-via-gro_cells.patch

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>
Tested-by: Curtis Deptuck <curtdept@me.com> [x86/64]
[squash patches]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-13 17:06:35 +01:00
Daniel Golle
1a7ef2c3cf
mediatek: image: don't use 'M' unit as dd may not support that
dd on Mac OS X apparently fails when using 'M' unit for bs.
dd: bs: illegal numeric value
Use 'k' unit instead for 'pad-to' to fix that.

Reported-by: Georgi Valkov <gvalkov@abv.bg>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-13 15:36:57 +00:00
Rafał Miłecki
9530b9bb78 bcm47xx: make WGT634U NVRAM patch apply again
Fixes: 1c48eee5b2 ("kernel: backport Broadcom NVRAM driver cleanups")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-12 21:09:11 +01:00
Felix Fietkau
3d1ea0d77f kernel: add compatibility with upstream threaded NAPI patch
Enable threading if dev->threaded is set. This will be used to bring mt76 back
in sync with upstream

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2021-03-12 20:23:52 +01:00
Felix Fietkau
0d5bf53197 kernel: update 5.10 flow offload patches
Includes PPPoE support and VLAN related fixes

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2021-03-12 20:23:52 +01:00
Rafał Miłecki
e90e75b12c kernel: add pending mtd patches adding NVMEM support
It's meant to provide upstream support for mtd & NVMEM. It's required
e.g. for reading MAC address from mtd partition content. It seems to be
in a final shape so it's worth testing.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-12 18:49:46 +01:00
Rafał Miłecki
deceb03993 kernel: move mtd ofpart accepted patch
Move upstream patch to the backport directory.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-12 18:32:01 +01:00
Rafał Miłecki
b2b75e1939 kernel: add two more missed 5.10 backports
Those were added to 5.4 but missed while introducing 5.10 kernel.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-12 18:31:58 +01:00
Rafał Miłecki
baf04eed02 bcm53xx: initialize NVRAM from NVMEM driver
NVRAM access may be needed early in boot process. Reading it using mtd
happens quite late in the init process. Add NVRAM initialization to the
NVMEM driver which comes up early and depends on IO mapping only.

This is required by Linksys devices which use NVRAM content for proper
partitioning (detecting current firmware partition).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-12 18:22:18 +01:00
Rafał Miłecki
1c48eee5b2 kernel: backport Broadcom NVRAM driver cleanups
Refactoring of bcm47xx_nvram driver. It's used by bcm47xx and bcm53xx.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-12 18:08:41 +01:00
Álvaro Fernández Rojas
36b404a226 bmips: switch to upstream bcm2835-rng reset patch
This patch has been accepted upstream.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-12 14:29:51 +01:00
Bjørn Mork
ba220ad2fd realtek: drop ethtool log noise
Demote a number of debugging printk's to pr_debug to avoid log
nosie.  Several of these functions are called as a result of
userspace activity.  This can cause a lot of log noise when
userspace does periodic polling.

Most of this could probably be removed completely, but let's
keep it for now since these drivers are still in development.

Signed-off-by: Bjørn Mork <bjorn@mork.no>
Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-03-12 00:46:00 +02:00
Rafał Miłecki
01b1b37528 bcm53xx: backport NVMEM NVRAM driver
It supports NVRAM access described using DT binding. Right now NVRAM
data is exposed using /sys/bus/nvmem/ only.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-10 23:23:47 +01:00
Rafał Miłecki
af8a49a4be Revert "bcm53xx: add support for reading NVRAM based on DT mapping"
This reverts commit b0376462c1. Those
changes were rejected and were replaced with an NVMEM driver.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-10 22:29:15 +01:00
Álvaro Fernández Rojas
76d5677c75 bmips: automatically detect RAM size
Introduce new patch for automatically detecting RAM size.
Some boards have a different amount of RAM depending on the HW revision.
Therefore, automatically detecting the RAM size instead of hard-coding it will
reduce the number of device definitions.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-08 17:48:45 +01:00
Álvaro Fernández Rojas
a128904723 bmips: improve CPU frequency patch
Fixes BCM6358 address and calculations.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-08 17:48:45 +01:00
Daniel González Cabanelas
a48ef37747 bcm63xx: AD1018-nor: add NAND flash
The Sercomm AD1018 has a NAND flash. We recently added support for NANDs
in this target.

Use the internal NAND as additional storage.

Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
2021-03-08 12:45:10 +01:00
Álvaro Fernández Rojas
101491ae4a bmips: dts: comestic changes
Improve and refactor device tree files.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-08 10:42:25 +01:00
Álvaro Fernández Rojas
45180e862c bmips: remove unneeded console from bootargs
console parameter is no longer needed after latest procd update.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-08 10:12:42 +01:00
Álvaro Fernández Rojas
a3b863dc9f bmips: automatically detect CPU frequency
Some BCM63xx SoCs support multiple CPU frequencies depending on HW
configuration.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-08 09:45:32 +01:00
Daniel Golle
7e7218d133 mediatek: remove no longer needed sysupgrade hack
Keeping configuration is now handled in fstools like for other types
of flash as well.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-07 18:27:12 +00:00
Adrian Schmutzler
c6652a7c94 mediatek: mt7622: remove execute bit and shebang from 01_leds
This was added recently and thus overlooked in 85b1f4d8ca
("treewide: remove execute bit and shebang from board.d files").

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-06 20:23:48 +01:00
Daniel Golle
e991c1b8a2 ipq806x: work-around borked QCA SDK bootloader
The bootloader of many ipq806x boards seems to require the config node
of the FIT image to be 'config@1' (or a secific different value).
This requirement used to be implicitely satisfied because OpenWrt used
to also call the configuration node inside a FIT image 'config@1'.
However, as recent U-Boot now prohibits the use of the '@' symbol as
part of node names, this was changed by
commit 5ec60cbe9d ("scripts: mkits.sh: replace @ with - in nodes")
Explicitely restore the default name of the configuration node to
'config@1' on ipq806x.
(ipq807x is unaffected as DEVICE_DTS_CONFIG default is set
"config@hk01" in target/linux/ipq807x/image/Makefile)

Reported-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-06 19:05:53 +00:00
Daniel Golle
9690836344 ipq40xx: work-around borked QCA SDK bootloader
The bootloader of many ipq40xx boards seems to require the config node
of the FIT image to be 'config@1' (or a secific different value).
This requirement used to be implicitely satisfied because OpenWrt used
to also call the configuration node inside a FIT image 'config@1'.
However, as recent U-Boot now prohibits the use of the '@' symbol as
part of node names, this was changed by
commit 5ec60cbe9d ("scripts: mkits.sh: replace @ with - in nodes")
Explicitely restore the default name of the configuration node to
'config@1' on ipq40xx.

Reported-by: Chen Minqiang <ptpt52@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-06 19:05:53 +00:00
Daniel Golle
8dd0215676 mediatek: disable RTC on Bananapi R64 and refresh patches
The in-SoC RTC of the Bananapi R64 is more disruptive than useful
without a battery connected. Disable it to not have Linux use the
RTC provided time 2000-01-01 00:00:00 after power-loss.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-06 18:40:04 +00:00
Adrian Schmutzler
9397b22df1 treewide: make AddDepends/usb-serial selective
Make packages depending on usb-serial selective, so we do not have
to add kmod-usb-serial manually for every device.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-06 12:38:38 +01:00
Adrian Schmutzler
85b1f4d8ca treewide: remove execute bit and shebang from board.d files
So far, board.d files were having execute bit set and contained a
shebang. However, they are just sourced in board_detect, with an
apparantly unnecessary check for execute permission beforehand.

Replace this check by one for existance and make the board.d files
"normal" files, as would be expected in /etc anyway.

Note:

This removes an apparantly unused '#!/bin/sh /etc/rc.common' in
target/linux/bcm47xx/base-files/etc/board.d/01_network

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-06 11:30:06 +01:00
Ilya Lipnitskiy
b021642cac ramips: 5.10: refresh configs
Run-tested on Ubiquiti EdgeRouter X.

Compile tested on all other subtargets.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 11:24:12 +01:00
Ilya Lipnitskiy
10267e1729 ramips: 5.10: port and refresh patches, ralink drv
Enable testing kernel.

Fix compile errors by using new kernel APIs.

Fix fuzz by manually editing patches to ensure the code goes in the
right place.

For 721-NET-no-auto-carrier-off-support.patch, revert upstream commit
a307593a6 to keep the OpenWrt ralink driver operational.

Add mt7621-pci-phy patch to select REGMAP_MMIO as discussed in PR #3693
and #3952.

Run automatic quilt refresh on the rest.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 11:24:12 +01:00
Ilya Lipnitskiy
ef1e652016 ramips: 5.10: rename patches to follow guide
Rename patches to follow the 3-digit classification from the OpenWrt
Developer Guide.

https://openwrt.org/docs/guide-developer/build-system/use-patches-with-buildsystem#naming_patches

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 11:24:12 +01:00
Ilya Lipnitskiy
3149d8e7be ramips: 5.10: delete upstreamed patches
0098-disable_cm.patch is not needed because upstream fixed CM handling.

The rest are straightforward removals of upstreamed patches.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 11:24:12 +01:00
Ilya Lipnitskiy
eda836e390 ramips: 5.10: copy patches from 5.4
Strict copy, no changes made.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 11:24:12 +01:00
Ilya Lipnitskiy
a9966793e8 ramips: copy config-5.4 to config-5.10
Strict copy, no changes made.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 11:24:12 +01:00
Adrian Schmutzler
cc4ee2eeb4 Revert "ramips: add support for kernel 5.10"
This reverts commit b4aad29a1d.

This was accidentally folded into a single commit. Remove it and
apply it properly again.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-06 11:23:38 +01:00
Ilya Lipnitskiy
2629d2d5b1 apm821xx, mt7621, oxnas, rockchip, zynq: remove PLUGIN_HOSTCC
This config symbol should not be defined in target configs.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 03:52:33 +00:00
Ilya Lipnitskiy
89744dc741 kernel: generic: filter out CONFIG_PLUGIN_HOSTCC
It appears to be an automatic Kconfig symbol that varies depending on
the host platform. There is no need to define it in target configs, so
filter it out.

Also sort config-filter entries alphabetically.

Cc: Adrian Schmutzler <mail@adrianschmutzler.de>
Cc: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-06 03:52:33 +00:00
Ilya Lipnitskiy
b4aad29a1d
ramips: add support for kernel 5.10
Enable testing kernel.

Delete upstreamed patches:
 0098-disable_cm.patch can be dropped, upstream fixed CM handling.

Fix compile errors by using new kernel APIs.

Fix fuzz by manually editing patches to ensure the code goes in the
right place.

For 721-NET-no-auto-carrier-off-support.patch, revert upstream commit
a307593a6 to keep the OpenWrt ralink driver operational.

Add mt7621-pci-phy patch to select REGMAP_MMIO as discussed in PR #3693
and #3952.

Rename patches to follow the 3-digit classification from the OpenWrt
Developer Guide.

Run automatic quilt refresh.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-05 23:55:51 +00:00
Ilya Lipnitskiy
38ba1f9b4c
ramips: 5.4: refresh configs
Automatic refresh by running make kernel_oldconfig on each target.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-05 23:55:46 +00:00
Christian Lamparter
be23f9818a apm821xx: add support for kernel 5.10 for testing
This patch copies over refreshed patches from 5.4.

 - dropped crypto patches (they got upstreamed)

 - dropped renesas USB 3 firmware loader (they got upstreamed)

 - NAND now needs extra device-properties for ECC settings.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2021-03-05 22:47:14 +01:00
Daniel Golle
ca14dfb06b
mediatek: mt7622: bpi-r64: allow MAC addresses to be inherited
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-05 20:13:59 +00:00
Rui Salvaterra
3a187fa718 kernel: bump 5.10 to 5.10.20
Also add a new kconfig symbol (CONFIG_KCMP) to the generic config,
disabling the SYS_kcmp syscall (it was split from
CONFIG_CHECKPOINT_RESTORE, which is disabled by default, so the
previous behaviour is kept).

Removed (upstreamed) patches:
  070-net-icmp-pass-zeroed-opts-from-icmp-v6-_ndo_send-bef.patch
  081-wireguard-device-do-not-generate-ICMP-for-non-IP-pac.patch
  082-wireguard-queueing-get-rid-of-per-peer-ring-buffers.patch
  083-wireguard-kconfig-use-arm-chacha-even-with-no-neon.patch
  830-v5.12-0002-usb-serial-option-update-interface-mapping-for-ZTE-P685M.patch

Manually rebased patches:
  313-helios4-dts-status-led-alias.patch
  104-powerpc-mpc85xx-change-P2020RDB-dts-file-for-OpenWRT.patch

Run tested:
  ath79 (TL-WDR3600)
  mvebu (Turris Omnia)

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2021-03-05 20:35:01 +01:00
Rafał Miłecki
8d24da1470 bcm4908: prepare to support TP-Link Archer C2300 V1
It's a BCM4906 based device (2 CPU cores). It has 512 MiB of RAM, 4 LAN
ports, 1 WAN port, 2 USB ports, NAND flash. WiFi unknown at this point.

Flashing is possible using CFE only, proper image will be worked on
later.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-05 14:56:50 +01:00
Ilya Lipnitskiy
fc61a87c29 generic: config-5.10: add missing symbols
Add symbols missing after latest crypto.mk and WireGuard changes.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-05 14:41:14 +01:00
Rui Salvaterra
0eef8402ee kernel: backport GCC 10 usbip build fix for 5.4
From the original commit message:

"With GCC 10, building usbip triggers error for multiple definition
of 'udev_context', in:
- libsrc/vhci_driver.c:18 and
- libsrc/usbip_host_common.c:27.

Declare as extern the definition in libsrc/usbip_host_common.c."

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2021-03-05 14:41:14 +01:00
Luis Araneda
1b287ed1a3 kernel: remove symbols from 5.10 no longer present on upstream
REFCOUNT_FULL was removed for linux 5.5:
commit fb041bb7c0a9 (locking/refcount: Consolidate implementations of refcount_t)

COMMON_CLK_VERSATILE was removed on linux 5.8:
commit 5f55f1fb187d (clk: versatile: Fix kconfig dependency on COMMON_CLK_VERSATILE)

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2021-03-05 14:41:14 +01:00
Sieng Piaw Liew
63aad66ddf bcm63xx: rename upstreamed patch
Patch to fix kernel panic was recently accepted upstream so rename patch
and add acked lines to reflect that.

Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
(add the same patch for v5.10)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-05 12:41:45 +01:00
Daniel González Cabanelas
cfa43f8119 kernel: b53: update the BCM5365 UID in the fixup
The BCM5365 UID was updated in the driver, but we should also update it in the
fixup.

Fixes: cbcac4fde8 ("kernel: b53: update the BCM5365 UID")
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
(Ammend commit description, add Fixes tag)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-05 12:20:48 +01:00
Álvaro Fernández Rojas
bac74aff5e bcm27xx: bcm2711: disable HW_RANDOM_BCM2835
This driver is only present on BCM2708, BCM2709 and BCM2710.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-05 12:13:45 +01:00
Ilya Lipnitskiy
58ad113087 ramips: rename mtk-hsdma to hsdma-mt7621
Follows upstream rename:
https://lore.kernel.org/driverdev-devel/20210130034507.2115280-1-ilya.lipnitskiy@gmail.com/

Fixes ramips builds on 5.4.102

Cc: John Audia <graysky@archlinux.us>
Cc: David Bauer <mail@david-bauer.net>
Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-03-04 23:43:02 -10:00
Robert Marko
7f2d9ccd09 ipq40xx: net: phy: qca807x: fix GPIO driver
While rebasing into setting bits instead of magic values,
I accidentally forgot to actually set the force bit.

Without it using the pins as GPIO-s did not actually work.

Fixes: b5c93ed ("ipq40xx: add Qualcomm QCA807x driver")

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2021-03-05 00:28:35 +01:00
David Bauer
18a9eff0f6 ath79: enable AT803X PHY for kernel 5.10
The config symbol for the AT803x device driver was lost when adding
kernel 5.10.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-03-05 00:03:57 +01:00
David Bauer
82b9713ce8 ath79: replace chipselect workaround with a proper patch
Debugging the SPI CS issue with kernel 5.10 resulted in a better
understanding for the root cause and a proper patch with a better
explanation.

Exchange the old hack patch with a more efficient (and upstreamable)
solution.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-03-05 00:03:47 +01:00
Jason A. Donenfeld
196f3d586f kernel-5.4: bump to 5.4.102 and refresh patches
5.4.102 backported a lot of stuff that our WireGuard backport already
did, in addition to other patches we had, so those patches were
removed from that part of the series. In the process other patches were
refreshed or reworked to account for upstream changes.

This commit involved `update_kernel.sh -v -u 5.4`.

Cc: John Audia <graysky@archlinux.us>
Cc: David Bauer <mail@david-bauer.net>
Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-03-04 22:06:53 +01:00
Daniel Golle
1d412235a5 mediatek: mt7622: check firmware metadata
All mt7622 devices except for the UBI-variant of the mt7622-rfb1 carry
metadata appended to the sysupgrade image.
Add it for the mt7622-rfb1-ubi as well and check it on sysupgrade to
avoid accidentally flashing firmware for the wrong device (or variant
or future DEVICE_COMPAT_VERSION).

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-04 02:57:19 +00:00
Petr Štetiar
5e0b9dbe8a kernel: generic: add further missing symbols
Compile testing i.mx6 with ALL_KMODS=y, PACKAGE_perf=y and bunch of
tracing/probing symbols has unveiled bunch of missing config options so
add them.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2021-03-03 22:51:39 +01:00
Petr Štetiar
da6c5b6db2 imx6: add 5.10 as testing kernel
So anyone interested can help with testing.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2021-03-03 22:51:39 +01:00
Petr Štetiar
26ae69fd03 imx6: refresh kernel config with 5.10 symbols
Just by running `make kernel_oldconfig` and unsetting following options
manually as those cores are cortex-a7 based and thus irrelevant for the
currently default cortex-a9 used cores.

 CONFIG_CLK_IMX6SL is not set
 CONFIG_CLK_IMX6SX is not set
 CONFIG_CLK_IMX6UL is not set

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2021-03-03 22:51:39 +01:00
Petr Štetiar
354549aaa2 imx6: copy kernel 5.4 config and patches to 5.10
So the changes are visible in the next step. Removed upstreamed patches.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2021-03-03 22:51:39 +01:00
Oskari Lemmela
60d2623cc5 mediatek: mt7622: change image generation
- set only one EFI system partition
- use shorter path for DEVICE_DTS file

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
2021-03-03 01:00:23 +00:00
Oskari Lemmela
0234881f31 mediatek: mt7622: use ptgen generated MBR header
mt7622 uses MBR partition for booting from SD card.
Add hybrid MBR entry with boot flag after PMBR entry.

Signed-off-by: Oskari Lemmela <oskari@lemmela.net>
2021-03-03 01:00:23 +00:00
Álvaro Fernández Rojas
05a2fcc1b3 bmips: switch to upstream brcmnand patch
This patch has been accepted upstream for v5.13.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-02 18:05:32 +01:00
Jason A. Donenfeld
1265dbafcd kernel-5.10: backport chacha non block size optimizations
These make a big difference when doing WireGuard with small armv7
routers, and the 5.4 backport already has it.

Suggested-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Cc: David Bauer <mail@david-bauer.net>
Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-03-02 10:54:38 +01:00
Jason A. Donenfeld
d540725871 kernel-5.4: backport fd16931a2f51 for chacha neon
Without this patch, the chacha block counter is not incremented on neon
rounds, resulting in incorrect calculations and corrupt packets.

This also switches to using `--no-numbered --zero-commit` so that future
diffs are smaller.

Reported-by: Hans Geiblinger <cybrnook2002@yahoo.com>
Reviewed-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Cc: David Bauer <mail@david-bauer.net>
Cc: Petr Štetiar <ynezz@true.cz>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-03-02 09:30:22 +01:00
Rafał Miłecki
b0376462c1 bcm53xx: add support for reading NVRAM based on DT mapping
This is required for devices that use NVRAM data for detecting currently
used firmware partition (e.g. Linksys devices).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-02 09:07:46 +01:00
Daniel Golle
bb98ddc47b mediatek: mt7622: make sure image generation can run in parallel
The previous approach of referencing artifacts in follow-up artifacts
can't work with parallel builds in the current way image.mk is built.
Refactor things so this is not needed.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-02 01:41:31 +00:00
Daniel Golle
a3288c35ef mediatek: mt7622: blue LED should be active high as well
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-01 21:46:38 +00:00
Daniel Golle
2151d89713 mediatek: mt7622: bpi-r64: fix sysupgrade on empty disk
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-01 19:35:08 +00:00
Daniel Golle
ded54ae196 mediatek: mt7622: bpi-r64: simplify eMMC install procedure
Write everything needed for eMMC install into the gaps between
partitions on SD card. In that way, installation to eMMC only needs
the SD card, no additional files need to be loaded via TFTP any more.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-01 19:33:46 +00:00
Rafał Miłecki
7a7b2fd809 kernel: add the latest mtd patch extending ofpart parser
This adds the latest version of ofpart commit. It hopefully
1. Doesn't break compilation
2. Doesn't break partitioning
(this time).

It's required to implement fixed partitioning with some quirks. It's
required by bcm53xx, bcm4908, kirkwood, lantiq and mvebu.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-01 18:18:38 +01:00
Álvaro Fernández Rojas
584ce6b2a0 bmips: switch to upstream SMP CPU mappings patch
The patch has been accepted upstream with some minor modifications.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-01 17:26:59 +01:00
Daniel Golle
8e7392b18e mediatek: mt7622: enable CONFIG_SPI_MTK_NOR
Somehow this got disabled in the transition to 5.10.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-01 11:57:08 +00:00
Daniel Golle
aaa0203ad4 mediatek: mt7622: rename mt7622-ubi to mt7622-rfb1-ubi
This profile is meant to be used on MT7622 rfb1 AP, indicate that in
the name to make things less confusing.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-03-01 11:57:02 +00:00
Rafał Miłecki
acbea54bc2 bcm4908: backport Ethernet driver fixes from the 5.12
The most noticeable one is fix for RX stopping on high traffic.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2021-03-01 08:15:48 +01:00
Daniel Golle
ebcb4f1d0a
treewide: fix spelling 'seperate' -> 'separate'
This popular spelling mistake was also introduced by myself lately.
Fix it everywhere.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-02-28 23:59:21 +00:00
Pawel Dembicki
0d062b6246 mpc85xx: p2020: Fix nand driver probe
At this moment driver start fail with error:
[    3.771991] fsl,elbc-fcm-nand: probe of ffa00000.nand failed with error -22

elbc-fcm-nand driver use legacy method of ecc mode detection. It detect hw/sw
ecc mode when system configure it to "none". [1]

This patch adds 'nand-ecc-mode = "none"' propoerty to use generic driver
ecc mode detection.

[1] https://elixir.bootlin.com/linux/v5.10.18/source/drivers/mtd/nand/raw/fsl_elbc_nand.c#L730

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2021-03-01 00:34:23 +01:00
Pawel Dembicki
1d3b1171ae mpc85xx: add testing kernel 5.10
Subtargets p1010 and p1020 have already added.

Compile and run tested on: P2020RDB

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2021-03-01 00:34:23 +01:00
Pawel Dembicki
76649fd06d mpc85xx: p2020: fix cfi-nor detection
At this moment p2020rdb has broken images, because NOR memory connected
to eLBC bus isn't detected.

In 642b1e8dbed7 linux tree commit, config dependencies of MTD_PHYSMAP_OF
was changed and now MTD_PHYSMAP is required.

This patch adds MTD_PHYSMAP option to kernel config in p2020 subtarget
and fix booting of p2020rdb.

Fixes: 13b1db795f ("mpc85xx: add support for kernel 5.4")

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2021-03-01 00:34:23 +01:00
Alberto Bursi
788ec9a7cf x86: add support for AWS T3 instances
Amazon AWS T3 cloud instances require kernel support
for the Elastic Fabric Adapter to access storage
and for Elastic Network Adapter to use network
interfaces.

Since the Fabric Adapter is needed to access
root filesystem, enable in x86_64 kernel.

Elastic Network Adapter goes in a module,
and add this module to default list in x86_64.
The module is set to AutoLoad because AutoProbe does
not seem to load it.

Signed-off-by: Alberto Bursi <bobafetthotmail@gmail.com>
2021-03-01 00:34:23 +01:00
Shiji Yang
df1e5d6463 ramips: fix partition layout of hiwifi hc5x61
Changes:
 * Increase "oem" partition size from 0x10000 to 0x20000
 * Correct partition lables, synchronize with official firmware

Evidence:
It should be the same as hiwifi hc5x61a and the fact indeed the
case. Here is part of dmesg boot log read from official firmware:
[    1.470000] Creating 7 MTD partitions on "raspi":
[    1.470000] 0x000000000000-0x000000030000 : "u-boot"
[    1.480000] 0x000000030000-0x000000040000 : "hw_panic"
[    1.490000] 0x000000040000-0x000000050000 : "Factory"
[    1.490000] 0x000000fc0000-0x000000fe0000 : "oem"
[    1.500000] 0x000000fe0000-0x000000ff0000 : "bdinfo"
[    1.510000] 0x000000ff0000-0x000001000000 : "backup"
[    1.510000] 0x000000050000-0x000000fc0000 : "firmware"

Signed-off-by: Shiji Yang <yangshiji66@qq.com>
2021-03-01 00:34:23 +01:00
Rui Salvaterra
6fe6b631ef mvebu/omnia: fix the device tree
Backport [1] and fix [2] hardware buffer management. Also fix the IRQ storm
caused by a misconfiguration of the PCA9538 interrupt pin [3].

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/arm/boot/dts/armada-385-turris-omnia.dts?id=018b88eee1a2efda26ed2f09aab33ccdc40ef18f
[2] https://lore.kernel.org/linux-arm-kernel/20210217153038.1068170-1-rsalvaterra@gmail.com/
[3] https://lore.kernel.org/linux-arm-kernel/20210220231144.32325-1-kabel@kernel.org/

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2021-03-01 00:34:22 +01:00
Mathias Kresin
5662f5b114 lantiq: vr9: set the usb led trigger via devicetree
Assign the usbdev trigger via devicetree and drop the userspace
handling of the usb leds.

Drop the now unused userspace helper code as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-03-01 00:19:58 +01:00
Mathias Kresin
23dd786734 lantiq: set maximum kernel size
These boards have a fixed size kernel partition but do not limit the
kernel size during image building.

Disable image building for both boards as well, since the kernel of the
last release as well as master are to big to fit into the 2 MByte kernel
partition.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2021-03-01 00:19:58 +01:00
Mathias Kresin
7995a93744 lantiq: ARV752DPW22: set the usb led trigger via devicetree
Assign the usbdev trigger via devicetree and drop the userspace
handling of the usb leds

Add the PCI attached usb controller as trigger sources for the usb led
as well.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2021-03-01 00:19:58 +01:00
Adrian Schmutzler
cfd1a40583 octeon: re-enable CONFIG_CAVIUM_CN63XXP1 and EdgeRouter image
The symbol CONFIG_CAVIUM_CN63XXP1 was disabled during the bump to
4.19 (see Fixes:) with the following reason:

  No supported hardware uses CN63XXP1 and it causes "slight decrease
  in performance"

However, it later turned out that the edgerouter image needed it,
which led to having the device disabled in [1].
Still, dropping support of a device seems a harsh action for just
removing a "slight" decrease in performance from the other devices.

Thus, this enables CONFIG_CAVIUM_CN63XXP1 again, and essentially
restores the situation present until (including) kernel 4.14 on
this target.

For OpenWrt as a platform, it seems more desirable to support all
devices (and have them tested regularly via the snapshots) in this
case.
Users interested in maximum performance might still just remove
the symbol again in their local build.

[1] 3824fa26d2 ("octeon: disable edgerouter image")

Fixes: 6c22545225 ("target/octeon: Add Linux 4.19 support")

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-02-28 21:55:22 +01:00
Adrian Schmutzler
5ad49ca029 octeon: refresh config for kernel 5.4
Simple run of 'make kernel_oldconfig'

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-02-28 21:55:22 +01:00
David Bauer
024c81adb8 mediatek: add missing 5.10 patches
These patches are required for the Ubiquiti UniFi 6 LR to work. They
were already present for kernel 5.4 but got lost when adding 5.10
support.

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-02-28 12:17:48 +01:00
Daniel Golle
dfa0a38d1f mediatek: rework support for BananaPi BPi-R64
**What's new**

 * Bring support for the Bananapi BPi-R64 to the level desirable for
   a nice hackable routerboard.
 * Use ARM Trusted Firmware A from source. (goodbye binary preloader)
 * Use Das U-Boot from source. (see previous commit)
 * Assemble SD-card image using OpenWrt image-commands.
   (no gen_sd_cruz_foo.sh added, this is not Raspbian)
 * Updated kernel options to support root filesystem.
 * Updated DTS to match OpenWrt LAN ports, known LEDs, buttons, ...
 * Detect root device, handle sysupgrade, config restore, ...
 * Wire up (known) LEDs and buttons in OpenWrt-fashion.
 * Build one set of images from SD-card and eMMC.
 * Hopefully provide a good example of how things can be done right
   from scratch.

**Installation and images**

 * Have an empty SD-card at hand
 * Write stuff to the card, as root (card device is /dev/mmcblkX)
   - write header, gpt, bl2, atf, u-boot and recovery kernel:
     `cat *bpi-r64-boot-sdcard.img *bpi-r64-initramfs-recovery.fit > /dev/mmcblkX`
   - rescan partitions:
     `blockdev --rereadpt /dev/mmcblkX`
   - write main system to production partition:
     `cat *bpi-r64-squashfs-sysupgrade.fit > /dev/mmcblkXp5`

 * Installation to eMMC works using SD-card bootloader via TFTP
   When running OpenWrt of SD-card, issue this to trigger installation
   to eMMC:
   `fw_setenv bootcmd run emmc_init`
   Be prepared to serve the content of bin/targets/mediatek/mt7622 on
   TFTP server address 192.168.1.254.

**What's missing**

 * The red LED is always on, probably a hardware bug.
 * AHCI (probably needs DTS changes)
 * Ship SD-card image ready with every needed for eMMC install.
 * The eMMC has a second, currently unused boot partition. This would
   be ideal to store the WiFi EEPROM and Ethernet MAC address(es).
   @sinovoip ideas?

Thanks to Thomas Hühn @thuehn for providing the hardware!

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-02-28 04:15:44 +00:00
Daniel Golle
0235186182 mediatek: add alternative UBI NAND layout for Linksys E8450
The vendor flash layout of the Linksys E8450 is problematic as it uses
the SPI-NAND chip without any wear-leveling while at the same time
wasting a lot of space for padding.
Use an all-UBI layout instead, storing the kernel+dtb+squashfs in
uImage.FIT standard format in UBI volume 'fit', the read-write
overlay in UBI volume 'rootfs_data' as well as reduntant U-Boot
environments 'ubootenv' and 'ubootenv2', and a 'recovery'
kernel+dtb+initramfs uImage.FIT for dual-boot.

** WARNING **
THIS PROCEDURE CAN EASILY BRICK YOUR DEVICE PERMANENTLY IF NOT CARRIED
OUT VERY CAREFULLY AND EXACTLY AS DESCRIBED!

Step 0

 * Configure your PC to have the static IPv4 address 192.168.1.254/24
 * Provide bin/targets/mediatek/mt7622 via TFTP

Now continue EITHER with step 1A or 1B, depending on your preference
(and on having serial console wired up or not).

Step 1A (Using the vendor web interface (or non-UBI OpenWrt install))

In order to update to the new bootloader and UBI-based firmware,
use the web browser of your choice to open the routers web-interface
accessible on http://192.168.1.1

 * Navigate to
   'Configuration' -> 'Administration' -> 'Firmware Upgrade'

 * Upload the file
    openwrt-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery.itb
   and proceed with the upgrade.

 * Once OpenWrt comes up, use SCP to upload the new bootloader files to
   /tmp on the router:
    *-mt7622-linksys_e8450-ubi-preloader.bin
    *-mt7622-linksys_e8450-ubi-bl31-uboot.fip

 * Connect via SSH as you will now need to replace the bootloader in
   the Flash.

    ssh root@192.168.1.1
    (the usual warnings)

 * First of all, backup all the flash now:

    for mtd in /dev/mtdblock*; do
     dd if=$mtd of=/tmp/$(basename $mtd);
    done

 * Then use SCP to copy /tmp/mtdblock* from the router and keep them
   safe. You will need them should you ever want to return to the
   factory firmware!

 * Now flow the uploaded files:
    mtd -e /dev/mtd0 write /tmp/*linksys_e8450-ubi-preloader.bin /dev/mtd0
    mtd -e /dev/mtd1 write /tmp/*linksys_e8450-ubi-bl31-uboot.fip /dev/mtd1

   If and only if both writes look like the completed successfully
   reboot the router. Now continue with step 2.

Step 1B (Using the vendor bootloader serial console)

 * Use the serial to backup all /dev/mtd* devices before using the
   stock firmware (you got root shell when connected to serial).

 * Then reboot and select 'U-Boot Console' in the boot menu.

 * Copy the following lines, one by one:

tftpboot 0x40080000 openwrt-mediatek-mt7622-linksys_e8450-ubi-preloader.bin
tftpboot 0x40100000 openwrt-mediatek-mt7622-linksys_e8450-ubi-bl31-uboot.fip
nand erase 0x0 0x180000
nand write 0x40080000 0x0 0x180000
reset

Now continue with step 2

Step 2

Once the new bootchain comes up, the loader will initialize UBI and the
ubootenv volumes. It will then of course fail to find any bootable
volume and hence resort to load kernel via TFTP from server
192.168.1.254 while giving itself the address 192.168.1.1

The requested file is called
openwrt-mediatek-mt7622-linksys_e8450-ubi-initramfs-recovery.itb
and your TFTP server should provide exactly that :)
It will be written to UBI as recovery image and booted.
You can then continue and flash the production OS image, either
by using sysupgrade in the booted initramfs recovery OS, or by using
the bootloader menu and TFTP.

That's it. Go ahead and mess around with a bootchain built almost
completely from source (only DRAM calibration blobs are fitted in bl2,
and the irreplacable on-chip ROM loader remains, of course).
And enjoy U-Boot built with many great features out-of-the-box.

You can access the bootloader environment from within OpenWrt using the
'fw_printenv' and 'fw_setenv' commands. Don't be afraid, once you got
the new bootchain installed the device should be fairly unbrickable
(holding reset button before and during power-on resets things and
allows reflashing recovery image via TFTP)

Special thanks to @dvn0 (Devan Carpenter) for providing amazingly fast
infra for test-builds, allowing for `make clean ; make -j$(nproc)` in
less than two minutes :)

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-02-28 01:23:48 +00:00