Commit Graph

54836 Commits

Author SHA1 Message Date
Christian Marangi
d6994c53cd
ipq806x: add missing scaling_available_frequencies for dedicated cpufreq
Add missing scaling_available_frequencies sysfs entry for dedicated
cpufreq driver.
This sysfs entry is not standard and each cpufreq driver needs to
provide it and declare it in the cpufreq driver struct attr.

Fixes: 5dbbefcbcc ("ipq806x: introduce dedicated krait cpufreq")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
2022-08-21 18:52:52 +02:00
Sebastian Schaper
a434795809 ath79: add support for ZyXEL NWA1100-NH
Specifications:
 * AR9342, 16 MiB Flash, 64 MiB RAM, 802.11n 2T2R, 2.4 GHz
 * 1x Gigabit Ethernet (AR8035), 802.3af PoE

Installation:
* OEM Web UI is at 192.168.1.2
  login as `admin` with password `1234`
* Flash factory-AASI.bin

The string `AASI` needs to be present within the file name of the uploaded
image to be accepted by the OEM Web-based updater, the factory image is
named accordingly to save the user from the hassle of manual renaming.

TFTP Recovery:
* Open the case, connect to TTL UART port (this is the official method
  described by Zyxel, the reset button is useless during power-on)
* Extract factory image (.tar.bz2), serve `vmlinux_mi124_f1e.lzma.uImage`
  and `mi124_f1e-jffs2` via tftp at 192.168.1.10
* Interrupt uboot countdown, execute commands
  `run lk`
  `run lf`
  to flash the kernel / filesystem accordingly

MAC addresses as verified by OEM firmware:
use   address   source
LAN   *:cc      mib0 0x30 ('eth0mac'), art 0x1002 (label)
2g    *:cd      mib0 0x4b ('wifi0mac')

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-08-21 00:09:53 +02:00
Sebastian Schaper
a6e0ca96da ath79: add support for ZyXEL NWA1123-AC
Specifications:
 * AR9342, 16 MiB Flash, 64 MiB RAM, 802.11n 2T2R, 2.4 GHz
 * QCA9882 PCIe card, 802.11ac 2T2R
 * 1x Gigabit Ethernet (AR8035), 802.3af PoE

Installation:
* OEM Web UI is at 192.168.1.2
  login as `admin` with password `1234`
* Flash factory-AAOX.bin

The string `AAOX` needs to be present within the file name of the uploaded
image to be accepted by the OEM Web-based updater, the factory image is
named accordingly to save the user from the hassle of manual renaming.

TFTP Recovery:
* Open the case, connect to TTL UART port (this is the official method
  described by Zyxel, the reset button is useless during power-on)
* Extract factory image (.tar.bz2), serve `vmlinux_mi124_f1e.lzma.uImage`
  and `mi124_f1e-jffs2` via tftp at 192.168.1.10
* Interrupt uboot countdown, execute commands
  `run lk`
  `run lf`
  to flash the kernel / filesystem accordingly

MAC addresses as verified by OEM firmware:
use   address   source
LAN   *:1c      mib0 0x30 ('eth0mac'), art 0x1002 (label)
2g    *:1c      mib0 0x4b ('wifi0mac')
5g    *:1e      mib0 0x66 ('wifi1mac')

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-08-21 00:09:53 +02:00
Sebastian Schaper
527be5a456 ath79: add support for ZyXEL NWA1123-NI
Specifications:
 * AR9342, 16 MiB Flash, 64 MiB RAM, 802.11n 2T2R, 2.4 GHz
 * AR9382 PCIe card, 802.11n 2T2R, 5 GHz
 * 1x Gigabit Ethernet (AR8035), 802.3af PoE

Installation:
* OEM Web UI is at 192.168.1.2
  login as `admin` with password `1234`
* Flash factory-AAEO.bin

The string `AAEO` needs to be present within the file name of the uploaded
image to be accepted by the OEM Web-based updater, the factory image is
named accordingly to save the user from the hassle of manual renaming.

TFTP Recovery:
* Open the case, connect to TTL UART port (this is the official method
  described by Zyxel, the reset button is useless during power-on)
* Extract factory image (.tar.bz2), serve `vmlinux_mi124_f1e.lzma.uImage`
  and `mi124_f1e-jffs2` via tftp at 192.168.1.10
* Interrupt uboot countdown, execute commands
  `run lk`
  `run lf`
  to flash the kernel / filesystem accordingly

MAC addresses as verified by OEM firmware:
use   address   source
LAN   *:fb      mib0 0x30 ('eth0mac'), art 0x1002 (label)
2g    *:fc      mib0 0x4b ('wifi0mac')
5g    *:fd      mib0 0x66 ('wifi1mac')

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-08-21 00:09:53 +02:00
Sebastian Schaper
251ecfe379 ath79: add support for ZyXEL NWA1121-NI
Specifications:
 * AR9342, 16 MiB Flash, 64 MiB RAM, 802.11n 2T2R, 2.4 GHz
 * 1x Gigabit Ethernet (AR8035), 802.3af PoE

Installation:
* OEM Web UI is at 192.168.1.2
  login as `admin` with password `1234`
* Flash factory-AABJ.bin

The string `AABJ` needs to be present within the file name of the uploaded
image to be accepted by the OEM Web-based updater, the factory image is
named accordingly to save the user from the hassle of manual renaming.

TFTP Recovery:
* Open the case, connect to TTL UART port (this is the official method
  described by Zyxel, the reset button is useless during power-on)
* Extract factory image (.tar.bz2), serve `vmlinux_mi124_f1e.lzma.uImage`
  and `mi124_f1e-jffs2` via tftp at 192.168.1.10
* Interrupt uboot countdown, execute commands
  `run lk`
  `run lf`
  to flash the kernel / filesystem accordingly

MAC addresses as verified by OEM firmware:
use   address   source
LAN   *:cc      mib0 0x30 ('eth0mac'), art 0x1002 (label)
2g    *:cd      mib0 0x4b ('wifi0mac')

Signed-off-by: Sebastian Schaper <openwrt@sebastianschaper.net>
2022-08-21 00:09:53 +02:00
Nick Hainke
3b2f19271c tools/cmake: update to 3.24.1
Update cmake to newest version.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2022-08-20 23:26:36 +02:00
Nick Hainke
ce3e467d61 tools/isl: update to 0.25
Update isl to latest version.

Signed-off-by: Nick Hainke <vincent@systemli.org>
2022-08-20 23:25:52 +02:00
Nick Hainke
20f8101a26 tools/xz: update to 5.2.6
This update contains a security fix to xzgrep (CVE-2022-1271,
ZDI-CAN-16587). Release notes:
https://git.tukaani.org/?p=xz.git;a=blob;f=NEWS;hb=HEAD

Signed-off-by: Nick Hainke <vincent@systemli.org>
2022-08-20 23:25:32 +02:00
Arınç ÜNAL
f1c9afd801 ramips: mt7621-dts: mux phy0/4 to gmac1
Mux the MT7530 switch's phy0/4 to the SoC's gmac1 on devices where RGMII2
pins are available. This achieves 2 Gbps total bandwidth to the CPU using
the second RGMII.

The ports called "wan" are muxed where possible. On a minority of devices,
this is not possible. Those cases:

mt7621_ampedwireless_ally-r1900k.dts: lan3
mt7621_ubnt_edgerouter-x.dts: eth0
mt7621_gnubee_gb-pc1.dts: ethblue
mt7621_linksys_re6500.dts: lan1
mt7621_netgear_wac104.dts: lan4
mt7621_tplink_eap235-wall-v1.dts: lan0
mt7621_tplink_eap615-wall-v1.dts: lan0
mt7621_ubnt_usw-flex.dts: lan1

The "wan" port is just what the vendor designated on the board/plastic
chasis of the device. On a technical level, there is no difference between
a lan and wan port on MT7621AT, MT7621DAT and MT7621ST SoCs. Prefer
connecting to WAN via the port described above for these devices to benefit
the feature brought with this patch.

mt7621_d-team_newifi-d2.dts cannot benefit this feature, although it looks
like it should, because the rgmii2 pins are wired to unused components.

Tested on a range of devices documented on the GitHub PR.

Link: https://github.com/openwrt/openwrt/pull/10238
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2022-08-20 22:56:12 +02:00
Arınç ÜNAL
81bd10e4a2 ramips: mt7621-dts: remove DTS_LEGACY from ethernet node
Remove DTS_LEGACY put for claiming pin groups for the ethernet node from
the ethernet node. It's not an old kernel trait. These bindings need to be
there on the newer kernels as well.

Fixes: a3764ee29d ("ramips: add linux 5.15 support for mt7621")
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2022-08-20 22:56:12 +02:00
Arınç ÜNAL
271456abd8 ramips: mt7621-dts: do not claim rgmii2 group as gpio for certain devices
These devices do not use rgmii2 as gpio, therefore remove rgmii2 pin group
from state-default. Remove overwriting the ethernet node for these devices.

Move claiming the rgmii2 group from mt7621_zyxel_nwa-ax.dtsi to
mt7621_zyxel_nwa50ax.dts as it's only the latter using rgmii2 pins as gpio.

Remove duplicate ethernet overwrite from mt7621_tplink_archer-x6-v3.dtsi.

Claim rgmii2 group as gpio on mt7621_bolt_arion.dts as it uses an rgmii2
pin, 26, as gpio.

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2022-08-20 22:56:12 +02:00
Arınç ÜNAL
4807bd6a00 ramips: fix GB-PC1 and GB-PC2 device support
Change switch port labels to ethblack & ethblue.
Change lan1 & lan2 LEDs to ethblack_act & ethblue_act and fix GPIO pins.
Add the external phy with ethyellow label on the GB-PC2 devicetree.
Do not claim rgmii2 as gpio, it's used for ethernet with rgmii2 function.
Enable ICPlus PHY driver for IP1001 which GB-PC2 has got.
Update interface name and change netdev function.
Enable lzma compression to make up for the increased size of the kernel.
Make spi flash bindings on par with mainline Linux to fix read errors.

Tested on GB-PC2 by Petr.

Tested-by: Petr Louda <petr.louda@outlook.cz>
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
2022-08-20 22:56:12 +02:00
Joerg Werner
9fbb76c047 hostapd: fix WPA3 enterprise keys and ciphers
WPA3 enterprise requires group_mgmt_cipher=BIP-GMAC-256 and if 802.11r is
active also wpa_key_mgmt FT-EAP-SHA384. This commit also requires
corresponding changes in netifd.

Signed-off-by: Joerg Werner <schreibubi@gmail.com>
2022-08-20 22:56:12 +02:00
Hauke Mehrtens
8008816a2c netifd: update to git HEAD
87fbefd interface: support "zone" config option
bfa039c netifd: fix WPA3 enterprise ciphers

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-20 22:56:12 +02:00
Hauke Mehrtens
cc6a323e23 iwinfo: update to latest HEAD
0dad3e6 Add support for CCMP-256 and GCMP-256 ciphers

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-20 22:56:12 +02:00
Thibaut VARÈNE
832e7b8172 build: always set CONFIG_IPV6
Disabling this build tunable breaks build and seems unrealistically
likely to be fixed.

This patch sets the related CONFIG to always true and removes the
config prompt, keeping the change minimal, and, should !CONFIG_IPV6 ever
be fixed, easy to revert.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Acked-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Paul Spooren <mail@aparcar.org>
Acked-by: Josef.Schlehofer <pepe.schlehofer@gmail.com>
Acked-by: Jo-Philipp Wich <jo@mein.io>
2022-08-20 21:41:03 +03:00
Sultan Alsawaf
f338f76a66 mac80211: parse the correct set of HE capabilities for AP mode
It is common for 802.11ax NICs to support more than just AP mode, which
results in there being a distinct set of HE capabilities for each mode. As
(bad) luck would have it, iw prints out info for each HE mode in sequential
order according to `enum nl80211_iftype`, and AP mode isn't always first.

As a result, the wrong set of HE capabilities can be parsed if an AP NIC
supports station (managed) mode or any other mode preceding AP mode, since
only the first set of HE capabilities printed by iw is parsed from awk's
output.

This has a noticeable impact on beamforming for example, since managed mode
usually doesn't have beamformer capabilities enabled, while AP mode does.
Hostapd won't be set up with the configs to enable beamformer capabilities
in this scenario, causing hostapd to disable beamforming to HE stations
even when it's supported by the AP.

Always parse the correct set of HE capabilities for AP mode to fix this.
This is achieved by trimming all of iw's output prior to the AP mode
capabilities, which ensures that the first set of HE capabilities are
always for AP mode.

Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
2022-08-20 12:33:50 +02:00
Markus Stockhausen
396e190f0b realtek: more generic platform initialization
Platform startup still "guesses" the CPU clock speed by DT fixed values.
If possible take clock rates from a to be developed driver and align to
MIPS generic platfom initialization code. Pack old behaviour into a
fallback function. We might get rid of that some day.

Signed-off-by: Markus Stockhausen <markus.stockhausen@gmx.de>
2022-08-20 11:49:30 +02:00
Daniel Groth
8c04a5c456 realtek: d-link: add support for dgs-1210-10mp
General hardware info:
-------------------------------------------------------------------------------

D-Link DGS-1210-10MP is a switch with 8 ethernet ports and 2 SFP ports, all
ports Gbit capable. It is based on a RTL8380 SoC @ 500MHz, DRAM 128MB and
32MB flash. All ethernet ports are 802.3af/at PoE capable
with a total PoE power budget of 130W.

File info:
-------------------------------------------------------------------------------
The dgs-1210-10mp is very similar to dgs-1210-10p so I used that as a start.

rtl838x.mk:
 - Removed lua-rs232 package since it was a leftover from the old rtl83xx-poe
   package.
 - Updated the soc to 8380.
 - Specified device variant: F.
 - Installed the new realtek-poe package.

rtl8380_d-link_dgs-1210-10mp.dts:
 - Moved dgs-1210 family common parts and non PoE related ports on rtl8231
   to the new device tree dtsi files.

Serial connection:
-------------------------------------------------------------------------------
The UART for the SoC (115200 8N1) is available close to the front panel next
to the LED/key card connector via unpopulated standard 0.1" pin header
marked j4. Pin1 is marked with arrow and square.

Pin 1: Vcc 3,3V
Pin 2: Tx
Pin 3: Rx
Pin 4: Gnd

Installation with TFTP from u-boot
-------------------------------------------------------------------------------
I originally used the install procedure:
'OpenWrt installation using the TFTP method and serial console access' found
in the device wiki for the dgs-1210-16.
< https://openwrt.org/toh/d-link/dgs-1210-16_g1#openwrt_installation_using
_the_tftp_method_and_serial_console_access >

About the realtek-poe package
-------------------------------------------------------------------------------
The realtek-poe package is installed but there isn't any automatic PoE config
setting at this time so for now the PoE config must be edited manually.

Original OEM hardware/firmware data at first installation
-------------------------------------------------------------------------------
It has been installed, developed, and tested on a device with these OEM
hardware and firmware versions.

- U-boot: 2011.12.(2.1.5.67086)-Candidate1 (Jun 22 2020 - 15:03:58)
- Boot version: 1.01.001
- Firmware version: 6.20.007
- Hardware version: F1

Things to be done when support are developed
-------------------------------------------------------------------------------
 - realtek-poe has been included in OpenWrt but the automatic config handling
   has not been solved yet so in the future there will probably be some minor
   updates for this device to handle the poe config.
 - LED link_act and poe are per function supposed to be connected to the PoE
   system.
   But some software development is also needed to make this LED work and
   shift the LED array between act and poe indication and to shift the mode
   lights with mode key.
 - LED poe_max should probably be used as straight forward error output from
   the realtek-poe package error handling. But no code has been written for
   this.
 - SFP is currently not hot pluggable. Development is under progress to get
   working I2C communication with SFP and have them hot pluggable.
   When any device in the dgs-1210 family gets this working, I expect it
   should be possible to implement the same solution in this device.

Signed-off-by: Daniel Groth <flygarn12@gmail.com>
[Capitalisation of abbreviations, DEVICE_VARIANT and update filenames,
device compatibles on single line]
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2022-08-20 09:02:44 +02:00
Daniel Groth
51ec9b3864 realtek: d-link: dgs-1210 remake of the device tree
I have collected the known information from the dts files we have.
After that I made a new device tree that should work for this whole D-Link
switch family.
This device tree is based on modules where you first select which SoC group
the device belongs to. Then you include the GPIO dtsi file depending on what
hardware your device has, see examples below.
This tree is also expandable for more hardware,
see the part 'Future expansion possibilities' further down.

-------------------------------------------------------------------------------
The device tree now looks like this:
                            ----------------
                            | rtl838x.dtsi |    // Note 1.
                            ----------------
                                    |
                                    |
                    ---------------------------------------
                    | rtl838x_d-link_dgs-1210_common.dtsi | // Note 2.
                    ---------------------------------------
                                |
                                |       --------------
                                |-------| device.dts |      // Note 3.
                                |       --------------
                                |
                -------------------------------------
                | rtl83xx_d-link_dgs-1210_gpio.dtsi |       // Note 4.
                -------------------------------------
                                |
                                |       --------------
                                |-------| device.dts |      // Note 5.
                                        --------------

Note 1; Included in rtl838x_d-link_dgs-1210_common.dtsi.

Note 2; SoC level information and memory mapping. Choose which one to include
		in the device dts.

Note 3; At this point dgs-1210-16 will come out here.

Note 4; In this dtsi only common board hardware based on the rtl8231 is found.
	No PoE based hardware in this dtsi.
	In this dtsi there is no <#include> to above *_common.dtsi.

Note 5; Device dts with only rtl8231 based hardware without PoE will come out
		here.

-------------------------------------------------------------------------------
How to set up in dts file:

The device dts will have one of these two <#include> alternatives.

This alternative includes only common features:
<#include "rtl838x_d-link_dgs-1210_common.dtsi">

This alternative includes common and the rtl8231 GPIO (no PoE) features:

<#include "rtl838x_d-link_dgs-1210_common.dtsi">
<#include "rtl83xx_d-link_dgs-1210_gpio.dtsi">

-------------------------------------------------------------------------------
Implementation:

Finally, I also implemented this new family device tree on the current
supported devices:
dgs-1210-10p
dgs-1210-16
dgs-1210-20
dgs-1210-28

The implementation for the dgs-1210-10p is different. I have removed the
information from the rtl8382_d-link_dgs-1210-10p.dts that is already present
in rtl838x_d-link_dgs-1210_common.dtsi.
Since the rest isn't officially probed in the device dts I do not want to
include the rtl83xx_d-link_dgs-1210_gpio.dtsi with dgs-1210-10p.dts.

Since I don't have these devices to test on I have built the original firmware
for each one of these devices before this change and saved the dtb file and
then compared the original dtb file with the dtb file built with this new
device tree.

-------------------------------------------------------------------------------
Future expansion possibilities:

In parallel with the rtl838x_d-link_dgs-1210_common.dtsi in the tree map
we can make a rtl839x_d-link_dgs-1210_common.dtsi to use the rtl839x.dtsi if
the need arises with more devices based on rtl839x soc.

When we have more PoE devices so the hardware map for these gets more clear
we can make a rtl83xx_d-link_dgs-1210_poe.dtsi below
the rtl83xx_d-link_dgs-1210_gpio.dtsi in the tree map.

I looked at the port and switch setup to see if it could be moved to the dtsi.
I decided not to touch this part now. The reason was that there isn't really
any meaningful way this could be shared between the devices.
The only thing in common over the family is the 8+2sfp ports on the
dgs-1210-10xx device.
And then there is the hot plug SFP and I2C ports that aren’t implemented
on any device. So maybe when we see the whole port map for the family
then maybe the ports can be moved to a *_common.dtsi but I don't think it is
the right moment for that now.

Signed-off-by: Daniel Groth <flygarn12@gmail.com>
[Capitalisation of abbreviations and 'D-Link']
Signed-off-by: Sander Vanheule <sander@svanheule.net>
2022-08-20 09:02:44 +02:00
Nick French
764600648f
uencrypt: support all available ciphers
Modify uencrypt to support any cipher provided by ssl library.

Original tool supported only AES-128-CBC to decrypt the config
mtd of Arcadyan WG430223/WG443223.

TP-Link Deco S4 has mtd configuration encrypted with DES-ECB,
so make the cipher generic to support both routers.

Signed-off-by: Nick French <nickfrench@gmail.com>
Reviewed-by: Eneas U de Queiroz >cotequeiroz@gmail.com>
2022-08-19 22:20:00 +02:00
Mikhail Zhilkin
a6b0d08060
ramips: get MAC addr from the encrypted partition (WG4хх223)
This commit resolves #10062. Adds decryption of the Arcadyan WG4xx223
configuration partition (board_data)to get base MAC address from it.
As a result, after this change the hack with saving MAC addressees to
u-boot-env before installation of OpenWrt is no longer necessary.

This is necessary for the following devices:
- Beeline Smartbox Flash (Arcadyan WG443223)
- MTS WG430223 (Arcadyan WG430223)

Example:
+----------------+-------------------+------------------------+
|                |    MTS WG430223   | Beeline Smartbox Flash |
+----------------+-------------------+------------------------+
| base mac (mtd) | A4:xx:xx:51:xx:F4 | 30:xx:xx:51:xx:06      |
| label          | A4:xx:xx:51:xx:F4 | 30:xx:xx:51:xx:09      |
| LAN            | A4:xx:xx:51:xx:F6 | 30:xx:xx:51:xx:09      |
| WAN            | A4:xx:xx:51:xx:F4 | 30:xx:xx:51:xx:06      |
| WLAN_2g        | A4:xx:xx:51:xx:F5 | 30:xx:xx:51:xx:07      |
| WLAN_5g        | A6:xx:xx:21:xx:F5 | 32:xx:xx:41:xx:07      |
+----------------+-------------------+------------------------+

Collected statistic shows that the 2-4th bits of the 7th byte of the
WLAN_5g MAC are the constant (see #10062 for more details):
- Beeline Smartbox Flash - 100
- MTS WG430223 - 010

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2022-08-19 14:41:18 +02:00
Mikhail Zhilkin
12c971bc26
base-files: add mtd_get_mac_encrypted_arcadyan function
Some Arcadyan devices (e.g. MTS WG430223) keep their config in encrypted
mtd. This adds mtd_get_mac_encrypted_arcadyan() function to get the MAC
address from the encrypted partition. Function uses uencrypt utility for
decryption (and openssl if the uencrypt wasn't found).

Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2022-08-19 14:41:14 +02:00
David Bauer
9c8605dee2 ramips: fix ZyXEL NWA55AXE model name
The model name was missing a letter.

Signed-off-by: David Bauer <mail@david-bauer.net>
2022-08-18 18:02:51 +02:00
Hauke Mehrtens
60738feded iproute2: Fix KERNEL_INCLUDE in SDK
In the SDK the folder $(LINUX_DIR)/user_headers/include does not exist,
but it more or less contains the same content as
$(LINUX_DIR)/include/uapi which also exists in the SDK.

Since iproute2 commit 1d819dcc741e ("configure: fix parsing issue on
include_dir option") it checks if this folder exists and aborts the
build if it does not exists.
https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?id=1d819dcc741e25958190e31f8186c940713fa0a8

With this commit the KERNEL_INCLUDE variable points to a valid folder
with the kernel include headers. I am not sure if they are actually
needed because the build worked before even with an invalid path.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-18 00:07:32 +02:00
Rafał Miłecki
fb47b9fa1a bcm4908: enable NVMEM U-Boot env data driver
It's needed for devices with U-Boot bootloader.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2022-08-17 22:46:19 +02:00
Rafał Miłecki
d79048e9e5 kernel: add CONFIG_NVMEM_U_BOOT_ENV symbol to configs
This fixes:
  U-Boot environment variables support (NVMEM_U_BOOT_ENV) [N/m/y/?] (NEW)

Fixes: 34cf310435 ("kernel: backport U-Boot environment data NVMEM driver")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2022-08-17 22:46:19 +02:00
Rafał Miłecki
34cf310435 kernel: backport U-Boot environment data NVMEM driver
It parses U-Boot env data into NVMEM cells.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2022-08-17 20:46:55 +02:00
Rafał Miłecki
372ee1919d kernel: rename 5.20 patches to 6.0
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2022-08-17 20:46:52 +02:00
Josef Schlehofer
163e680e05 mvebu: leds: Turris Omnia improvements
It backports this patch series, which is currently on review:
https://lore.kernel.org/linux-leds/20220704105955.15474-1-kabel@kernel.org/T/#rb89a4ca5a836f17bdcc53d65549e0b1779bb6a18

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2022-08-16 22:38:46 +01:00
Josef Schlehofer
c2a396fab9 mvebu: backport pending DTS changes for Turris Omnia
Backport pending patches:
- https://lore.kernel.org/linux-arm-kernel/20220704113622.18887-1-kabel@kernel.org/
- https://lore.kernel.org/linux-arm-kernel/20220704113622.18887-2-kabel@kernel.org/

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2022-08-16 22:38:46 +01:00
Rui Salvaterra
910eadf49b mvebu: refresh the 5.15 kconfigs
Clean them up.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:38:46 +01:00
Rui Salvaterra
03f41b1eb2 mvebu: add Linux 5.15 as testing kernel
Run-tested on the cortexa9 subtarget (Turris Omnia).

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:38:46 +01:00
Rui Salvaterra
53c969e97e mvebu: update the kconfigs for 5.15
And remove irrelevant stuff while at it.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:38:46 +01:00
Rui Salvaterra
3f4990ce0f mvebu: copy 5.10 kconfigs to 5.15
Will be refreshed/updated later.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:38:46 +01:00
Rui Salvaterra
7d139bd5f3 mvebu: refresh 5.15 patches
Deleted (upstreamed):
303-linksys_hardcode_nand_ecc_settings.patch [1]

Deleted (not needed):
314-arm64-dts-uDPU-switch-PHY-operation-mode-to-2500base.patch [2]

Manually rebased:
700-mvneta-tx-queue-workaround.patch

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4daff3e5b42422cd4af758cc7768223d2b7f6e14
[2] https://git.openwrt.org/?p=openwrt/openwrt.git;a=commitdiff;h=7f73acade0cde61341cb77e0dc74de51ac059d4f

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:38:31 +01:00
Rui Salvaterra
fb29b91c5b mvebu: remove all ≤ 5.15-tagged patches
They're already upstream.

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:28:32 +01:00
Rui Salvaterra
05cd4a59f0 mvebu: copy 5.10 patches to 5.15
Linux 5.15 on Marvell EBU, here we go!

Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
2022-08-16 22:28:32 +01:00
Hauke Mehrtens
a66f843971 toolchain: glibc: Increase min kernel version to 5.10
This removes all compatibility code normally compiled into glibc for
kernel < 5.10 from our build. The build glibc version will only work
with Linux kernel >= 5.10.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-15 19:30:11 +02:00
Hauke Mehrtens
e58b76effe toolchain: glibc: Update to glibc 2.35
This updates to glibc to version 2.35.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-15 19:30:04 +02:00
Stijn Tintel
f37a7fa4e8 hostapd: add mbo flag to get_clients ubus method
There is no WLAN_STA_MBO flag, but according to the hostapd source code,
when an STA does not support MBO, cell_capa will be 0. Use this to
indicate MBO support in the get_clients ubus method.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Reviewed-by: David Bauer <mail@david-bauer.net>
2022-08-15 16:53:27 +03:00
Stijn Tintel
05775e38a5 kernel: extract kmod-sched-act-ipt from kmod-sched
There is only one module in kmod-sched that depends on iptables. Move it
to its own kmod package so we can drop the kmod-ipt-core dependency from
kmod-sched. This makes it possible to disable all kmod-ipt-* packages
without having to disable kmod-sched. Since we now default to firewall4
and nftables, we should avoid iptables dependencies where we can.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2022-08-15 16:51:50 +03:00
Hauke Mehrtens
a9eb5cce7e Revert "binutils: update to 2.39"
This reverts commit cc24c4ed5e.

binutils does not compile with glibc:
Package binutils is missing dependencies for the following libraries:
libgprofng.so.0
libmsgpackc.so.2
libstdc++.so.6

libbpf does not compile against binutils 2.39 any more, see:
https://github.com/libbpf/bpftool/issues/30

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-14 23:40:45 +02:00
Hauke Mehrtens
8456d06aa6 fstools: update to git HEAD
8c213b0 libfstools: Rename move_mount() function to ovl_move_mount() for glibc 2.36
81785c1 block: Do not include linux/fs.h any more

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-13 22:53:39 +02:00
Hauke Mehrtens
c97f918d37 toolchain: Update glibc 2.34 to recent HEAD
This adds the following changes:
71326f1f2f nptl: Fix pthread_cancel cancelhandling atomic operations
3e0a91b79b scripts: Add glibcelf.py module
f0c71b34f9 Default to --with-default-link=no (bug 25812)
ca0faa140f misc: Fix rare fortify crash on wchar funcs. [BZ 29030]
0d477e92c4 INSTALL: Rephrase -with-default-link documentation
bc56ab1f4a dlfcn: Do not use rtld_active () to determine ld.so state (bug 29078)
83cc145830 scripts/glibcelf.py: Mark as UNSUPPORTED on Python 3.5 and earlier
16245986fb x86-64: Optimize load of all bits set into ZMM register [BZ #28252]
b5a44a6a47 x86: Modify ENTRY in sysdep.h so that p2align can be specified
5ec3416853 x86: Optimize memcmp-evex-movbe.S for frontend behavior and size
6d18a93dbb x86: Optimize memset-vec-unaligned-erms.S
baf3ece634 x86: Replace sse2 instructions with avx in memcmp-evex-movbe.S
f35ad30da4 x86-64: Improve EVEX strcmp with masked load
a182bb7a39 x86-64: Remove Prefer_AVX2_STRCMP
2e64237a87 x86-64: Replace movzx with movzbl
a7392db2ff x86: Optimize memmove-vec-unaligned-erms.S
cecbac5212 x86: Double size of ERMS rep_movsb_threshold in dl-cacheinfo.h
7cb126e7e7 x86: Shrink memcmp-sse4.S code size
4bbd0f866a x86-64: Use notl in EVEX strcmp [BZ #28646]
f3a99b2216 x86: Don't set Prefer_No_AVX512 for processors with AVX512 and AVX-VNNI
c796418d00 x86: Optimize L(less_vec) case in memcmp-evex-movbe.S
9681691402 linux: Fix missing internal 64 bit time_t stat usage
55640ed3fd i386: Regenerate ulps
88a8637cb4 linux: Fix fchmodat with AT_SYMLINK_NOFOLLOW for 64 bit time_t (BZ#29097)
c66c92181d posix/glob.c: update from gnulib
bc6fba3c80 Add PF_MCTP, AF_MCTP from Linux 5.15 to bits/socket.h
fd5dbfd1cd Update kernel version to 5.15 in tst-mman-consts.py
5146b73d72 Add ARPHRD_CAN, ARPHRD_MCTP to net/if_arp.h
6af165658d Update syscall lists for Linux 5.17
81181ba5d9 Update kernel version to 5.16 in tst-mman-consts.py
0499c3a95f Update kernel version to 5.17 in tst-mman-consts.py
f858bc3093 Add SOL_MPTCP, SOL_MCTP from Linux 5.16 to bits/socket.h
c108e87026 aarch64: Add HWCAP2_ECV from Linux 5.16
97cb8227b8 Add HWCAP2_AFP, HWCAP2_RPRES from Linux 5.17 to AArch64 bits/hwcap.h
31af92b9c8 manual: Clarify that abbreviations of long options are allowed
0d5b36c8cc x86: Optimize strcmp-avx2.S
c41a66767d x86: Optimize strcmp-evex.S
d299032743 x86-64: Fix strcmp-avx2.S
53ddafe917 x86-64: Fix strcmp-evex.S
ea19c490a3 x86: Improve vec generation in memset-vec-unaligned-erms.S
190ea5f7e4 x86: Remove SSSE3 instruction for broadcast in memset.S (SSE2 Only)
5cb6329652 x86-64: Optimize bzero
70509f9b48 x86: Set .text section in memset-vec-unaligned-erms
5373c90f2e x86: Fix bug in strncmp-evex and strncmp-avx2 [BZ #28895]
e123f08ad5 x86: Fix fallback for wcsncmp_avx2 in strcmp-avx2.S [BZ #28896]
e4a2fb76ef manual: Document the dlinfo function
91c2e6c3db dlfcn: Implement the RTLD_DI_PHDR request type for dlinfo
b72bbba236 fortify: Ensure that __glibc_fortify condition is a constant [BZ #29141]
8de6e4a199 x86: Improve L to support L(XXX_SYMBOL (YYY, ZZZ))
6cba46c858 x86_64/multiarch: Sort sysdep_routines and put one entry per line
37f373e334 x86-64: Remove bzero weak alias in SS2 memset
dd457606ca x86_64: Remove bcopy optimizations
3c55c20756 x86: Code cleanup in strchr-avx2 and comment justifying branch
dd6d3a0bbc x86: Code cleanup in strchr-evex and comment justifying branch
0ae1006967 x86: Optimize strcspn and strpbrk in strcspn-c.c
0a2da01110 x86: Optimize strspn in strspn-c.c
0dafa75e3c x86: Remove strcspn-sse2.S and use the generic implementation
3811544655 x86: Remove strpbrk-sse2.S and use the generic implementation
a4b1cae068 x86: Remove strspn-sse2.S and use the generic implementation
5997011826 x86: Optimize str{n}casecmp TOLOWER logic in strcmp.S
3605c74407 x86: Optimize str{n}casecmp TOLOWER logic in strcmp-sse42.S
3051cf3e74 x86: Add AVX2 optimized str{n}casecmp
b13a2e68eb x86: Add EVEX optimized str{n}casecmp
80883f4354 x86: Remove AVX str{n}casecmp
4ff6ae069b x86: Small improvements for wcslen
ffe75982cc x86: Remove memcmp-sse4.S
df5de87260 x86: Cleanup page cross code in memcmp-avx2-movbe.S
0a11305416 x86: Optimize {str|wcs}rchr-sse2
00f09a14d2 x86: Optimize {str|wcs}rchr-avx2
596c9a32cc x86: Optimize {str|wcs}rchr-evex
1f83d40dfa elf: Remove unused NEED_DL_BASE_ADDR and _dl_base_addr
b0bd6a1323 elf: Merge dl-sysdep.c into the Linux version
2139b1848e Linux: Remove HAVE_AUX_SECURE, HAVE_AUX_XID, HAVE_AUX_PAGESIZE
458733fffe Linux: Remove DL_FIND_ARG_COMPONENTS
08728256fa Linux: Assume that NEED_DL_SYSINFO_DSO is always defined
4b9cd5465d Linux: Consolidate auxiliary vector parsing
1cc4ddfeeb Revert "Linux: Consolidate auxiliary vector parsing"
28bdb03b1b Linux: Include <dl-auxv.h> in dl-sysdep.c only for SHARED
ff900fad89 Linux: Consolidate auxiliary vector parsing (redo)
be9240c84c elf: Remove __libc_init_secure
1e7b011f87 i386: Remove OPTIMIZE_FOR_GCC_5 from Linux libc-do-syscall.S
1a5b9d1a23 i386: Honor I386_USE_SYSENTER for 6-argument Linux system calls
b38c9cdb58 Linux: Define MMAP_CALL_INTERNAL
b2387bea84 ia64: Always define IA64_USE_NEW_STUB as a flag macro
e7ca2a475c Linux: Implement a useful version of _startup_fatal
43d77ef9b8 Linux: Introduce __brk_call for invoking the brk system call
ede8d94d15 csu: Implement and use _dl_early_allocate during static startup
89b638f48a S390: Enable static PIE
c73c79af7d rtld: Use generic argv adjustment in ld.so [BZ #23293]
b2585cae28 linux: Add a getauxval test [BZ #23293]
14770f3e04 string.h: fix __fortified_attr_access macro call [BZ #29162]
83ae8287c1 x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #29127]
ff450cdbde Fix deadlock when pthread_atfork handler calls pthread_atfork or dlclose
b349fe0722 misc: Use 64 bit stat for daemon (BZ# 29203)
aa8a87f51d misc: Use 64 bit stat for getusershell (BZ# 29204)
9db6a597ef posix: Use 64 bit stat for posix_fallocate fallback (BZ# 29207)
f9c3e57ac2 posix: Use 64 bit stat for fpathconf (_PC_ASYNC_IO) (BZ# 29208)
61fd3e0e74 socket: Use 64 bit stat for isfdtype (BZ# 29209)
34422108f4 inet: Use 64 bit stat for ruserpass (BZ# 29210)
52431199b5 catgets: Use 64 bit stat for __open_catalog (BZ# 29211)
b3f935940e iconv: Use 64 bit stat for gconv_parseconfdir (BZ# 29213)
9947f2df19 socket: Fix mistyped define statement in socket/sys/socket.h (BZ #29225)
4c92a10412 powerpc: Fix VSX register number on __strncpy_power9 [BZ #29197]
a7ec6363a3 nptl: Fix __libc_cleanup_pop_restore asynchronous restore (BZ#29214)
96944f0f81 hppa: Remove _dl_skip_args usage (BZ# 29165)
bb4148283f nios2: Remove _dl_skip_args usage (BZ# 29187)
368c5c3e00 nss: add assert to DB_LOOKUP_FCT (BZ #28752)
94ab2088c3 nss: handle stat failure in check_reload_and_get (BZ #28752)
4b246b2bbd linux: Fix mq_timereceive check for 32 bit fallback code (BZ 29304)
7789a84923 nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore
8d324019e6 x86_64: Remove end of line trailing spaces
eb9aa96fac x86_64: Remove bzero optimization
8ab861d295 x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen
f6bc52f080 x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT
82a707aeb7 x86_64: Add strstr function with 512-bit EVEX
70be93d1c5 x86: Create header for VEC classes in x86 strings library
e805606193 x86: Add COND_VZEROUPPER that can replace vzeroupper if no `ret`
4901009dad x86: Optimize memrchr-sse2.S
83a986e9fb x86: Optimize memrchr-evex.S
b05bd59823 x86: Optimize memrchr-avx2.S
a910d7e164 x86: Shrink code size of memchr-avx2.S
3c87383a20 x86: Shrink code size of memchr-evex.S
820504e3ed x86: ZERO_UPPER_VEC_REGISTERS_RETURN_XTEST expect no transactions
fc54e1fae8 x86: Align varshift table to 32-bytes
6e008c884d x86: Fix misordered logic for setting `rep_movsb_stop_threshold`
9d50e162ee x86: Add sse42 implementation to strcmp's ifunc
94b0dc9419 x86: Add bounds `x86_non_temporal_threshold`
ba1c3f23d9 x86: Cleanup bounds checking in large memcpy case
c51d8d383c x86: Add BMI1/BMI2 checks for ISA_V3 check
d201c59177 x86: Align entry for memrchr to 64-bytes.
aadd0a1c7c x86: Put wcs{n}len-sse4.1 in the sse4.1 text section
f4598f0351 x86: Add definition for __wmemset_chk AVX2 RTM in ifunc impl list
7079931c51 x86: Move and slightly improve memset_erms
35f9c72c8b x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file
ccc54bd61c x86: Add missing IS_IN (libc) check to strncmp-sse4_2.S
b991af5063 Update syscall-names.list for Linux 5.18
b2f32e7464 malloc: Simplify implementation of __malloc_assert
875b2414cd dlfcn: Pass caller pointer to static dlopen implementation (bug 29446)
4ab59ce4e5 Update syscall lists for Linux 5.19

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-13 22:53:28 +02:00
Hauke Mehrtens
139a5c2eec kernel: kmod-hwmon-tps23861: Add missing dependency to kmod-regmap-i2c
This fixes the following build error:
Package kmod-hwmon-tps23861 is missing dependencies for the following libraries:
regmap-i2c.ko

Fixes: b664646db7 ("kernel: add kmod-hwmon-tps23861 support")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-13 21:45:47 +02:00
Oscar Molnar
a9e8eec221 build: add support for python3.11 and higher
python3.11 beta is out but fails to run the makefile currently
this supports python versions from 3.6 to 3.99 with the python3 binary
it also checks specifically for 3.11 as it is the latest version out

Signed-off-by: Oscar Molnar <oscar@tymscar.com>
2022-08-13 21:13:08 +02:00
Tomas Lara
24307b0351 kernel: remove CONFIG_MMC_BLOCK_BOUNCE
CONFIG_MMC_BLOCK_BOUNCE was removed in kernel v4.13-rc1
 c3dccb74be

Signed-off-by: Tomas Lara <tl849670@gmail.com>
2022-08-13 21:02:35 +02:00
Hauke Mehrtens
90bedc411b umbim: bump to git HEAD
146bc77 umbim: fix invalid mbim message string encoding

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-13 20:53:10 +02:00
Hauke Mehrtens
535bc61140 ubox: update to latest git HEAD
fa6cb9a kmodloader: fix bad realloc usage
4c7b720 kmodloader: fix GCC fanalyzer warnings

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-08-13 20:53:10 +02:00