Commit Graph

411 Commits

Author SHA1 Message Date
Tianling Shen
73eac7e437
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-11-04 12:58:38 +08:00
Rafał Miłecki
066971615f kernel: backport v6.6 nvmem changes
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
(cherry picked from commit 52c365f055)
2023-11-02 09:37:19 +01:00
Tianling Shen
41facd7b24
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-09-28 11:01:47 +08:00
David Bauer
186747a169 mpc85xx: add Enterasys WS-AP3715i reset button
The reset button was missing from the Enterasys WS-AP3715i DTS.
Add the node required for making the reset button work.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 0e8641d3b0)
2023-09-27 23:14:05 +02:00
Tianling Shen
62e43c4d6f
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-09-27 10:14:47 +08:00
David Bauer
f4e4943d1a mpc85xx: drop WS-AP3715i label-mac
Label MAC detection does not work properly, as MAC address is assigned
on preinit. Thus, remove the label-mac definition.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit cd14b17cb0)
2023-09-26 14:33:05 +02:00
Tianling Shen
f39a48885c
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-09-21 21:20:14 +08:00
David Bauer
43e9cded06 mpc85xx: correct WS-AP3715i eth LED assignment
Ethernet LED assignments were incorrectly swapped. Fix the assignment
logic so the correct LED is illuminated for the LAN LEDs.

Signed-off-by: David Bauer <mail@david-bauer.net>
(cherry picked from commit 8037417744)
2023-09-21 01:11:11 +02:00
Tianling Shen
739467539f
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-09-11 09:54:11 +08:00
Christian Marangi
cf08db988b generic: backport initial LEDs hw control support
Backport initial LEDs hw control support. Currently this is limited to
only rx/tx and link events for the netdev trigger but the API got
accepted and the additional modes are working on and will be backported
later.

Refresh every patch and add the additional config flag for QCA8K new
LEDs support.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 0a4b309f41)
2023-09-04 23:00:34 +01:00
Tianling Shen
42b32ffddc
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-14 11:31:16 +08:00
Pawel Dembicki
95d5a99537 mpc85xx: add support for Aerohive BR200-WP
The following adds the Aerohive BR200-WP router to OpenWrt under
the mpc85xx/p1010 subtarget.

Hardware:
- SoC: Freescale P1011
- NOR: Intel JS28F512M29EWH 64MB
- Memory: 2x Nanya NT5TU64M16GG-AC 128MB (Total of 256MB)
- 2.4GHz WiFi: Atheros AR9390-AL1A
- Eth1: Atheros AR8035-A PoE
- 2x LEDs
- 1x Button
- PoE PSE

Flashing:
1. Hook into UART (9600 baud) and enter U-Boot. You may need to enter a
password of administrator or AhNf?d@ta06 if prompted.
2. Once in U-Boot, tftp boot the initramfs image:
   dhcp; setenv serverip 192.168.1.3;
   tftpboot 0x2004000 openwrt-mpc85xx-p1010-aerohive_br200-wp-initramfs-kernel.bin;
   bootm 0x2004000;
3. Once booted, scp over the sysupgrade file and sysupgrade the device
to flash LEDE to the NOR.

Note:

MAC assigns are taken from stock firmware:

Name        MAC addr      Mode       State Chan(Width) VLAN   Radio      Hive       SSID
-------- -------------- --------     ----- ----------- ---- ---------- ---------- ---------
Mgt0     08ea:44XX:XXc0    -           U     -            1     -        hive0        -
Eth0     08ea:44XX:XXc0 wan            U     -            -     -          -          -
Eth1     08ea:44XX:XXc2 access         D     -            -     -        hive0        -
Eth2     08ea:44XX:XXc3 access         D     -            -     -        hive0        -
Eth3     08ea:44XX:XXc4 access         D     -            -     -        hive0        -
Eth4     08ea:44XX:XXc5 access         D     -            -     -        hive0        -
Wifi0    08ea:44XX:XXd0 access         U     1(20MHz)     -  radio_ng0     -          -
Wifi0.1  08ea:44XX:XXd4 access         D     1(20MHz)     -  radio_ng0   hive0        -

Note2:
PoE PSE could be managed with `realtek-poe` package. Example port
config:

config port
        option enable   '1'
        option id       '4'
        option name     'lan2'
        option poe_plus '0'
        option priority '2'
config port
        option enable   '1'
        option id       '3'
        option name     'lan1'
        option poe_plus '0'
        option priority '1'

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
(switch@0 -> switch@10, Device's quickstart says LEDs are
amber and white => add function+color properties but keep
labels around, use pr_info)
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2023-05-14 00:08:35 +02:00
Tianling Shen
85d11b468b
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-05-12 19:20:08 +08:00
Nick Hainke
1d3e71bd97
treewide: remove files for building 5.10 kernel
All targets are bumped to 5.15. Remove the old 5.10 patches, configs
and files using:

  find target/linux -iname '*-5.10' -exec rm -r {} \;

Further, remove the 5.10 include.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-05-12 13:02:43 +02:00
Tianling Shen
509f51b342
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-04-30 09:39:22 +08:00
Hauke Mehrtens
0fc3a4aa10 kernel: Deactivate CONFIG_LEGACY_PTYS
The legacy (BSD) PTY support could open security problems in a system,
We do not need them in OpenWrt, deactivate this option in all targets.

Debian also deactivates this option.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-04-29 21:56:53 +02:00
Tianling Shen
c958bed9d5
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-04-10 18:37:10 +08:00
David Bauer
827a40502f mpc85xx: refresh patches
Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
765f66810a mpc85xx: add support for Enterasys WS-AP3715i
Hardware
--------

SoC:   NXP P1010 (1x e500 @ 800MHz)
RAM:   256M DDR3 (2x Samsung K4B1G1646G-BCH9)
FLASH: 32M NOR (Spansion S25FL256S)
BTN:   1x Reset
WiFi:  1x Atheros AR9590 2.4 bgn 3x3
       2x Atheros AR9590 5.0 an 3x3
ETH:   2x Gigabit Ethernet (Atheros AR8033 / AR8035)
UART:  115200 8N1 (RJ-45 Cisco)

Installation
------------
1. Grab the OpenWrt initramfs, rename it to ap3715.bin. Place it in
   the root directory of a TFTP server and serve it at
   192.168.1.66/24.

2. Connect to the serial port and boot the AP. Stop autoboot in U-Boot
   by pressing Enter when prompted. Credentials are identical to the one
   in the APs interface. By default it is admin / new2day.

3. Alter the bootcmd in U-Boot:

 $ setenv ramboot_openwrt "setenv ipaddr 192.168.1.1;
   setenv serverip 192.168.1.66; tftpboot 0x2000000 ap3715.bin; bootm"

 $ setenv boot_openwrt "sf probe 0; sf read 0x2000000 0x140000 0x1000000;
   bootm 0x2000000"

 $ setenv bootcmd "run boot_openwrt"

 $ saveenv

4. Boot the initramfs image

 $ run ramboot_openwrt

5. Transfer the OpenWrt sysupgrade image to the AP using SCP. Install
   using sysupgrade.

 $ sysupgrade -n <path-to-sysupgrade.bin>

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
f058dad1b6 mpc85xx: don't compress kernel image for WS-AP3825i
The kernel is already compressed with XZ by the bootwrapper, thus we
gain nothing by compressing it a second time.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
1d4d21481f mpc85xx: reserve upper 1MB of RAM for WS-AP3825i
The bootpage for the second core is placed by U-Boot in the upper 128k
of syste-memory.

This could either be a reserved-area or deducted from the total
system-memory. As only the latter is parsed by the bootwrapper, reduce
the available system memory for linux in order to preserve the bootpage
from being overwritten.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
e3f31ff20d mpc85xx: backport bootwrapper patch to kernel 5.10
Kernel 5.10 builds currently fail because the patch for using the
simpleImage bootwrapper were not added to 5.10.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
51046da7be mpc85xx: add properties normally added by U-Boot
This adds properties to PCIe as well as ethernet nodes which are
normally added by the Extreme Networks U-Boot.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
16e1bf509c mpc85xx: fix incorrect CPU node / properties
This adds properties normally filled by U-Boot. Also it fixes the node
name, which is incorrectly referring to a P1010 core.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
3d43d68333 mpc85xx: add localbus frequency for WS-AP3825i
This is normally filled by U-Boot.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
David Bauer
e81709af13 mpc85xx: add linux,stdout-path for WS-AP3825i
This is normally filled by U-Boot. Prevents double-printing of early
console messages. Also enables debug-output by the zImage wrapper.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-08 14:41:01 +02:00
Tianling Shen
9511eba447
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-04-06 18:48:00 +08:00
David Bauer
f003217ddf Revert "mpc85xx: remove Watchguard T10 MAC override"
This reverts commit aa4a9058fb.

The assumption the bootloader fills out the MAC-address is not
correct. The MAC-address has to be set from userspace based on
information found in the device_id partition.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-04-03 03:14:20 +02:00
Tianling Shen
a55043bb91
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-03-24 15:49:09 +08:00
Hauke Mehrtens
af5aa11017 mpc85xx: Refresh patches
Make the patches apply cleanly again.

Fixes: ed82189339 ("mpc85xx: use bootwrapper for ws-ap3825i")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-03-24 00:42:47 +01:00
Tianling Shen
0b394ff960
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-03-21 23:04:47 +08:00
David Bauer
cff40ef122 mpc85xx: poll PHY status
Disable interrupts for the eth-PHYs, as the interrupts are either not
firing or lost within the stack. Switch to polling the PHY status in the
meantime until a proper fix is implemented.

Ref: https://github.com/openwrt/openwrt/issues/12192

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-20 22:21:31 +01:00
David Bauer
ed82189339 mpc85xx: use bootwrapper for ws-ap3825i
The boot-procedure for the Extreme WS-AP3825I is vfragile to put it
mildly. It does not relocate the FDT properly. It currently exercises
every step manually as well as coming with a pre-padded dtb.

Use the PowerPC bootwrapper code for legacy platforms with a pre-filles
DTS instead. We still need to ship a fit image to not break the fdt
resize / relocate instructions on existing boards. This does not require
adapting the U-Boot bootcommand.

Ref: https://github.com/openwrt/openwrt/issues/12223

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-20 22:21:22 +01:00
David Bauer
00b40ef00d mpc85xx: fix incorrect kernel target
The wrapper-image for the WL-WDR4900 was used as a build-target for the
kernel. This workd fine as long as only a single wrapper is used with
the OpenWrt build-system.

If additional wrappers are used, the build becomes racy in the
wrapper-stage.

The wrapper images actually do not represent a target. They are built
based on the kernel configuration. Only copy the resulting images to
avoid race-conditions as explained.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-20 03:10:43 +01:00
David Bauer
aa4a9058fb mpc85xx: remove Watchguard T10 MAC override
As the mac-address readout never worked, the mac-address fillout by the
bootloader is sufficient. Remove the readout for the Watchguard T10
then.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-20 03:10:36 +01:00
David Bauer
fa168f521a mpc85xx: fix missing system import
The mac-address accessor functions were not included in the sourced
script. Fix this by importing the correct script path.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-20 03:10:30 +01:00
Tianling Shen
064e467038
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-03-09 11:38:27 +08:00
David Bauer
35f6d79513 mpc85xx: add support for Watchguard Firebox T10
Hardware
--------
SoC:    Freescale P1010
RAM:    512MB
FLASH:  1 MB SPI-NOR
        512 MB NAND
ETH:    3x Gigabite Ethernet (Atheros AR8033)
SERIAL: Cisco RJ-45 (115200 8N1)
RTC:    Battery-Backed RTC (I2C)

Installation
------------

1. Patch U-Boot by dumping the content of the SPI-Flash using a SPI
   programmer. The SHA1 hash for the U-Boot password is currently
   unknown.

   A tool for patching U-Boot is available at
   https://github.com/blocktrron/t10-uboot-patcher/

   You can also patch the unknown password yourself. The SHA1 hash is
   E597301A1D89FF3F6D318DBF4DBA0A5ABC5ECBEA

2. Interrupt the bootmenu by pressing CTRL+C. A password prompt appears.
   The patched password is '1234' (without quotation marks)

3. Download the OpenWrt initramfs image. Copy it to a TFTP server
   reachable at 10.0.1.13/24 and rename it to uImage.

4. Connect the TFTP server to ethernet port 0 of the Watchguard T10.

5. Download and boot the initramfs image by entering "tftpboot; bootm;"
   in U-Boot.

6. After OpenWrt booted, create a UBI volume on the old data partition.
   The "ubi" mtd partition should be mtd7, check this using

   $ cat /proc/mtd

   Create a UBI partition by executing

   $ ubiformat /dev/mtd7 -y

7. Increase the loadable kernel-size of U-Boot by executing

   $ fw_setenv SysAKernSize 800000

8. Transfer the OpenWrt sysupgrade image to the Watchguard T10 using
   scp. Install the image by using sysupgrade:

   $ sysupgrade -n <path-to-sysupgrade>

   Note: The LAN ports of the T10 are 1 & 2 while 0 is WAN. You might
   have to change the ethernet-port.

9. OpenWrt should now boot from the internal NAND. Enjoy.

Signed-off-by: David Bauer <mail@david-bauer.net>
2023-03-07 14:05:02 +01:00
Tianling Shen
8df50f3b41
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-03-07 11:18:41 +08:00
Josef Schlehofer
f8cd27891f mpc85xx: p2020: enable CONFIG_MAX63XX_WATCHDOG
This enables CONFIG_MAX63XX_WATCHDOG [1], which can be used on P2020
RDB.

[1] https://cateee.net/lkddb/web-lkddb/MAX63XX_WATCHDOG.html

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2023-03-04 12:54:38 +01:00
Tianling Shen
89621c38c2
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-02-24 18:41:18 +08:00
Hauke Mehrtens
218f425b61 kernel: Add CONFIG_PPC_QUEUED_SPINLOCKS configuration option
The CONFIG_PPC_QUEUED_SPINLOCKS configuration option is not defined for
kernel 5.15, it is defined for kernel 5.10.

This fixes the compilation of mpc85xx/p2020 with kernel 5.15.

Reviewed-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2023-02-23 22:22:27 +01:00
Tianling Shen
813b7f7de9
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-02-23 11:29:09 +08:00
Nick Hainke
9837f81bae mpc85xx: switch default kernel to 5.15
The default kernel should be switched to 5.15 in order to enable testing
by a broader audience.

Tested on TP-Link TL-WDR4900 v1.

Acked-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Signed-off-by: Nick Hainke <vincent@systemli.org>
2023-02-22 23:39:01 +01:00
Tianling Shen
cb3b41ef89
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-02-22 10:57:38 +08:00
Pawel Dembicki
bfa5e4e4eb
mcp85xx: Switch TP-Link TL-WDR4900 v1 to DSA
This patch introduces DSA support for TP-Link TL-WDR4900 v1 switch.
Swconfig driver for QCA8327 switch is removed because this router is
only one device which use Qualcom swconfig switch.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Tested-by: Nick Hainke <vincent@systemli.org> # TP Link WDR4900 v1 (5.15)
2023-02-20 12:04:44 +01:00
Pawel Dembicki
f56ef4c040
mpc85xx: refresh kernel config
It was done by "make kernel_oldconfig" command for 5.10 and 5.15.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
2023-02-20 12:04:43 +01:00
Tianling Shen
d956b863aa
Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
2023-02-10 00:47:41 +08:00
Šimon Bořek
628870146d
mpc85xx: p2020: kernel: enable CONFIG_BLK_DEV_NVME
Enables use of NVMe storage devices with appropriate adapter in miniPCIe slots (including for boot)
in Turris 1.x routers and possibly NXP P2020RDB boards
(these are the only currently supported p2020 devices according to docs[^1]).

Proper detection, mountability and readability was proved to be working
on Turris 1.1, OpenWrt 21.02 with similar configuration.

Increases gzip compressed kernel size by approximately 37 KiB (from 3 703 KiB to 3 740 KiB).

Should boot from those devices be possible the driver needs to be built in.
Inclusion as a module would prevent this functionality.

CONFIG_BLK_DEV_NVME=y
Includes NVMe driver in the kernel.[^2]

CONFIG_NVME_CORE=y
Selected by CONFIG_BLK_DEV_NVME.[^3] Not necessarily needed to be enabled explicitly,
but included to match the form of similar functionality implementations
for mvebu, x86_64 and rockchip_armv8 targets.

CONFIG_NVME_MULTIPATH disabled explicitly to prevent using more space than necessary.

[^1]: https://openwrt.org/docs/techref/targets/mpc85xx
[^2]: https://cateee.net/lkddb/web-lkddb/BLK_DEV_NVME.html
[^3]: https://cateee.net/lkddb/web-lkddb/NVME_CORE.html

Signed-off-by: Šimon Bořek <simon.borek@nic.cz>
2023-02-07 21:24:37 +01:00
Šimon Bořek
acd5aa0bb0
mpc85xx: p2020: kernel: refresh configuration
'make kernel_oldconfig CONFIG_TARGET=subtarget'
applied to current master

Signed-off-by: Šimon Bořek <simon.borek@nic.cz>
2023-02-07 21:24:32 +01:00