Compare commits

..

23 Commits

Author SHA1 Message Date
Hauke Mehrtens
b2ae423314 OpenWrt v21.02.0: adjust config defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-09-01 21:53:53 +02:00
Jan-Niklas Burfeind
5cc0535800 ath79: add support for onion omega
The Onion Omega is a hardware development platform with built-in WiFi.

https://onioniot.github.io/wiki/

Specifications:
 - QCA9331 @ 400 MHz (MIPS 24Kc Big-Endian Processor)
 - 64MB of DDR2 RAM running at 400 MHz
 - 16MB of on-board flash storage
 - Support for USB 2.0
 - Support for Ethernet at 100 Mbps
 - 802.11b/g/n WiFi at 150 Mbps
 - 18 digital GPIOs
 - A single Serial UART
 - Support for SPI
 - Support for I2S

Flash instructions:
The device is running OpenWrt upon release using the ar71xx target.
Both a sysupgrade
and uploading the factory image using u-boots web-UI do work fine.

Depending on the ssh client, it might be necessary to enable outdated
KeyExchange methods e.g. in the clients ssh-config:

Host 192.168.1.1
        KexAlgorithms +diffie-hellman-group1-sha1

The stock credentials are: root onioneer

For u-boots web-UI manually configure `192.168.1.2/24` on your computer,
connect to `192.168.1.1`.

MAC addresses as verified by OEM firmware:
2G       phy0      label
LAN      eth0      label - 1

LAN is only available in combination with an optional expansion dock.

Based on vendor acked commit:
commit 5cd49bb067 ("ar71xx: add support for Onion Omega")

Partly reverts:
commit fc553c7e4c ("ath79: drop unused/incomplete dts")

Signed-off-by: Jan-Niklas Burfeind <git@aiyionpri.me>
(cherry picked from commit d98738b5c1)
2021-09-01 00:20:08 +02:00
Hauke Mehrtens
085c67762d kernel: bump 5.4 to 5.4.143
Manually rebased:
  bcm27xx/patches-5.4/950-1031-net-lan78xx-Ack-pending-PHY-ints-when-resetting.patch

Removed upstreamed:
  mvebu/patches-5.4/100-cpufreq-armada-37xx-forbid-cpufreq-for-1.2-GHz-variant.patch

All others updated automatically.

Compile-tested on: lantiq/xrx200, armvirt/64
Runtime-tested on: lantiq/xrx200, armvirt/64

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-08-29 21:30:32 +02:00
Eneas U de Queiroz
ff31cfb856 openssl: bump to 1.1.1l
This version fixes two vulnerabilities:
  - SM2 Decryption Buffer Overflow (CVE-2021-3711)
    Severity: High

  - Read buffer overruns processing ASN.1 strings (CVE-2021-3712)
    Severity: Medium

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
(cherry picked from commit 7119fd32d3)
2021-08-28 15:51:41 +02:00
Andre Heider
5bfb9c30a1 prereq-build: require python3-distutils
Debian and Ubuntu ship a python3-minimal package which does not include
the distutils module. This is not supported by upstream and can be
considered a broken python distribution.

In practice, many scripts depend on said module, and this is a reoccuring
pain point for building various OpenWrt packages.

Require and check for said module, enough time has been wasted on this.

A list of just the most recent issues:
https://github.com/openwrt/packages/pull/16304
https://github.com/openwrt/packages/pull/16027
https://github.com/openwrt/packages/pull/15443
https://github.com/openwrt/packages/pull/14394
https://github.com/openwrt/packages/pull/12909
https://github.com/openwrt/packages/issues/12443
https://github.com/openwrt/packages/pull/11035
https://github.com/openwrt/packages/issues/10993

Signed-off-by: Andre Heider <a.heider@gmail.com>
(cherry picked from commit 60af8d7533)
2021-08-28 15:48:08 +02:00
Hauke Mehrtens
f78017006b uboot-layerscape: fix dtc compilation on host gcc 10
Backport a patch from upstream U-Boot to fix the compile with host GCC 10.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 8d143784cb)
2021-08-28 15:48:08 +02:00
Hauke Mehrtens
8f039acee4 uboot-at91: fix dtc compilation on host gcc 10
Backport a patch from upstream U-Boot to fix the compile with host GCC 10.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit a1034afba8)
2021-08-28 15:48:08 +02:00
David Bauer
378769b555 kernel: bump 5.4 to 5.4.142
Compile-tested: ath79-generic ipq40xx-generic
Run-tested: ipq40xx-generic

Signed-off-by: David Bauer <mail@david-bauer.net>
2021-08-24 19:41:47 +02:00
Stijn Tintel
662401d903 ipq40xx: fix Edgecore ECW5211 boot
The bootloader will look for a configuration section named ap.dk01.1-c2
in the FIT image. If this doesn't exist, the device won't boot.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
(cherry picked from commit a43da1be43)
2021-08-24 19:41:47 +02:00
Paul Blazejowski
61c65acbda ath79: kernel: Add missing quote to drivers/mfd/Kconfig
A missing quote in target/linux/ath79/patches-5.x/920-mikrotik-rb4xx.patch
produces:

...
scripts/kconfig/conf  --syncconfig Kconfig
drivers/mfd/Kconfig:2016:warning: multi-line strings not supported
...

This patch adds missing closing quote, fixing the above warning.

Signed-off-by: Paul Blazejowski <paulb@blazebox.homeip.net>
(cherry picked from commit f7374bce00)
2021-08-22 20:02:31 +02:00
Álvaro Fernández Rojas
25d9fe8468 bcm27xx-userland: update to latest version
Properly recognise all BCM2711 variants

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-08-21 19:39:55 +02:00
Michael Heimpold
35eb06066e bcm27xx-userland: factor out a -dev package
Installing headers and static libraries to the target system seems
to be not required for most use cases, so let's factor them
out into a dedicated -dev package.

This cuts down to disk usage to around 50% of the original
package to ~ 2MB - not that disk space is an issue normally,
but when using inside an initramfs only project, it counts.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2021-08-18 20:29:47 +02:00
Edgar Su
750b966866 x86: kernel: set NR_CPUS to 512
NR_CPUS limits the number of CPUs supported to 8. This makes total sense
on hardware-restircted platforms, but not on x86_64, where CPUs with
more than 8 cores can be easily acquired and with less physical limitaions.

see also: https://forum.openwrt.org/t/x86-64-8-cpu-limitation-on-vanilla-release/100946

Signed-off-by: Edgar Su <sjs333@outlook.com>
(cherry picked from commit df554e6fca)
2021-08-11 10:12:26 -10:00
Daniel Kestrel
94efa1c612 fritz-tools: fix returning wrong values due to strncmp usage
When having two keys that start with the same characters and the second
key just has one character more nand_tffs_read and tffs_read return the
wrong value for the longer key. This is due to the usage of strncmp in
combination with the length of the shorter key which is usually first in
the list before the longer key and when strncmp matches, the search is
stopped. The problem only occurs when the length of the two keys is
different, not if just the last character is different. The fix is to
use strcmp and as such it will only return the value if the key (name)
and the key to look for (namefilter) have the same value and length. A
sample case returning wrong values is when keys macwlan and macwlan2 are
defined and querying macwlan2 returns the value for macwlan.

Signed-off-by: Daniel Kestrel <kestrel1974@t-online.de>
(cherry picked from commit 12564c5b86)
2021-08-08 20:51:52 +02:00
Rosen Penev
d9be07169e mbedtls: update to 2.16.11
Switched to AUTORELEASE to avoid manual increments.

Release notes:
https://github.com/ARMmbed/mbedtls/releases/tag/v2.16.11

Signed-off-by: Rosen Penev <rosenp@gmail.com>
(cherry picked from commit fcfd741eb8)
2021-08-08 20:51:41 +02:00
Josef Schlehofer
f407b2f43c mvebu: armada-37xx: add patch to forbid cpufreq for 1.2 GHz
This patch is backported from linux-arm-kernel [1] to improve situation, when
it was reported that 1.2 GHz variant is unstable with DFS.
It waits to be accepted upstream, however, it waits for Marvell people to respond.

[1] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20210630225601.6372-1-kabel@kernel.org/

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit d379476817)
2021-08-08 20:48:24 +02:00
Josef Schlehofer
b254bd697d Revert "mvebu: 5.4 fix DVFS caused random boot crashes"
Based on the discussion on the mailing list [1], the patch which was
reverted, it reverts only one patch without the subsequent ones.

This leads to the SoC scaling issue not using a CPU parent clock, but
it uses DDR clock. This is done for all variants, and it's wrong because
commits (hacks) that were using the DDR clock are no longer in the mainline kernel.

If someone has stability issues on 1.2 GHz, it should not affect all
routers (1 GHz, 800 MHz) and it should be rather consulted with guys, who are trying to
improve the situation in the kernel and not making the situation worse.

There are two solutions in cases of instability:
a) disable cpufreq
b) underclock it up to 1 GHz

This reverts commit 080a0b74e3.

[1] https://lists.openwrt.org/pipermail/openwrt-devel/2021-June/035702.html

CC: Pali Rohár <pali@kernel.org>
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
(cherry picked from commit 7b868fe04a)
2021-08-08 20:48:05 +02:00
Daniel Golle
4003eeab35 dnsmasq: reset EXTRA_MOUNT in the right place
EXTRA_MOUNT variable should be reset in dnsmasq_start() rather than
just once at the beginning of the script.

Fixes: ac4e8aa2f8 ("dnsmasq: fix more dnsmasq jail issues")
Reported-by: Hartmut Birr <e9hack@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit ddc8d085f3)
2021-08-02 21:42:46 +01:00
Daniel Golle
6ca34c5c0c dnsmasq: fix more dnsmasq jail issues
* remove superflus mounts of /dev/null and /dev/urandom
 * reset EXTRA_MOUNTS at the beginning of the script
 * add mount according to ignore_hosts_dir
 * don't add mount for file which is inside a directory already in the
   EXTRA_MOUNTS list

Fixes: 59c63224e1 ("dnsmasq: rework jail mounts")
Reported-by: Hartmut Birr <e9hack@gmail.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit ac4e8aa2f8)
2021-08-02 21:42:31 +01:00
Daniel Golle
b88ab44036 dnsmasq: rework jail mounts
* split into multiple lines to improve readability
 * use EXTRA_MOUNT for addnhosts instead of blindly adding /tmp/hosts
 * remove no longer needed mount for /sbin/hotplug-call
 * add dhcp-script.sh dependencies (jshn, ubus)

Fixes: 3a94c2ca5c ("dnsmasq: add /tmp/hosts/ to jail_mount")
Fixes: aed95c4cb8 ("dnsmasq: switch to ubus-based hotplug call")
Reported-by: Stijn Tintel <stijn@linux-ipv6.be>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 59c63224e1)
2021-08-02 21:42:16 +01:00
Kevin Darbyshire-Bryant
8ef5894197 dnsmasq: use local option for local domain parameter
'--local' is a synonym for '--server' so let's use '--local' in the
resultant config file for uci's 'local' instead of uci's local
parameter being turned into '--server'.  Slightly less confusion all
round.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
(cherry picked from commit e4cfefa9fc)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-08-02 21:41:52 +01:00
João Henriques
da5fd91073 dnsmasq: add ignore hosts dir to dnsmasq init script
When running multiple instances of dnsmasq, for example one being for the lan
and another for a guest network, it might not be desirable to have the same dns names
configured in both networks

Signed-off-by: João Henriques <joaoh88@gmail.com>
(cherry picked from commit e8a5670122)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-08-02 21:41:32 +01:00
Hauke Mehrtens
9531e70708 OpenWrt v21.02.0-rc4: revert to branch defaults
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-08-01 19:39:03 +02:00
66 changed files with 422 additions and 385 deletions

View File

@@ -1,4 +1,4 @@
src-git packages https://git.openwrt.org/feed/packages.git^49b1a6f4cc6e265cb98eb3d3225aca96079d1ec0
src-git luci https://git.openwrt.org/project/luci.git^132c72c7b75b7c69ec713cd9c44b7566da7f052a
src-git routing https://git.openwrt.org/feed/routing.git^e7e25b873b8ed4376cdcf82f963db34dda954f02
src-git telephony https://git.openwrt.org/feed/telephony.git^aa1954024371e02d985b51ec4187fc0745ab4e18
src-git packages https://git.openwrt.org/feed/packages.git^65057dcbb5de371503c9159de3d45824bec482e0
src-git luci https://git.openwrt.org/project/luci.git^3b3c2e5f9f82372df8ff01ac65668be47690dcd5
src-git routing https://git.openwrt.org/feed/routing.git^c30c9ffc93702365439a7647244a052531f2e957
src-git telephony https://git.openwrt.org/feed/telephony.git^7f73a9ad19269dcddcb7fc26e03a9823717587bb

View File

@@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
LINUX_VERSION-5.4 = .137
LINUX_VERSION-5.4 = .143
LINUX_KERNEL_HASH-5.4.137 = f09e5e366ce5d8bde887cda229ef17138fd1653706a702221f934f99aaa31f7c
LINUX_KERNEL_HASH-5.4.143 = 0953650b05a5f806d76c5691583e94e141f4f691bc0ba75a60b643740f021d24
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))

View File

@@ -168,6 +168,10 @@ $(eval $(call SetupHostCommand,python3,Please install Python >= 3.5, \
python3.5 -V 2>&1 | grep 'Python 3', \
python3 -V 2>&1 | grep -E 'Python 3\.[5-9]\.?'))
$(eval $(call TestHostCommand,python3-distutils, \
Please install the Python3 distutils module, \
$(STAGING_DIR_HOST)/bin/python3 -c 'import distutils'))
$(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.7.12.2, \
git --exec-path | xargs -I % -- grep -q -- --recursive %/git-submodule))

View File

@@ -23,13 +23,13 @@ PKG_CONFIG_DEPENDS += \
sanitize = $(call tolower,$(subst _,-,$(subst $(space),-,$(1))))
VERSION_NUMBER:=$(call qstrip,$(CONFIG_VERSION_NUMBER))
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),21.02.0-rc4)
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),21.02.0)
VERSION_CODE:=$(call qstrip,$(CONFIG_VERSION_CODE))
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),r16256-2d5ee43dc6)
VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),r16279-5cc0535800)
VERSION_REPO:=$(call qstrip,$(CONFIG_VERSION_REPO))
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),https://downloads.openwrt.org/releases/21.02.0-rc4)
VERSION_REPO:=$(if $(VERSION_REPO),$(VERSION_REPO),https://downloads.openwrt.org/releases/21.02.0)
VERSION_DIST:=$(call qstrip,$(CONFIG_VERSION_DIST))
VERSION_DIST:=$(if $(VERSION_DIST),$(VERSION_DIST),OpenWrt)

View File

@@ -183,7 +183,7 @@ if VERSIONOPT
config VERSION_REPO
string
prompt "Release repository"
default "https://downloads.openwrt.org/releases/21.02.0-rc4"
default "https://downloads.openwrt.org/releases/21.02.0"
help
This is the repository address embedded in the image, it defaults
to the trunk snapshot repo; the url may contain the following placeholders:

View File

@@ -1,8 +1,6 @@
diff --git a/cmd/version.c b/cmd/version.c
index b2fffe99..bcbbeb18 100644
--- a/cmd/version.c
+++ b/cmd/version.c
@@ -18,7 +18,7 @@ static int do_version(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
@@ -18,7 +18,7 @@ static int do_version(cmd_tbl_t *cmdtp,
{
char buf[DISPLAY_OPTIONS_BANNER_LENGTH];
@@ -11,11 +9,9 @@ index b2fffe99..bcbbeb18 100644
#ifdef CC_VERSION_STRING
puts(CC_VERSION_STRING "\n");
#endif
diff --git a/drivers/pinctrl/pinctrl-uclass.c b/drivers/pinctrl/pinctrl-uclass.c
index 3425ed11..8c2e1d5c 100644
--- a/drivers/pinctrl/pinctrl-uclass.c
+++ b/drivers/pinctrl/pinctrl-uclass.c
@@ -368,7 +368,7 @@ int pinctrl_get_pin_name(struct udevice *dev, int selector, char *buf,
@@ -368,7 +368,7 @@ int pinctrl_get_pin_name(struct udevice
if (!ops->get_pin_name)
return -ENOSYS;
@@ -24,11 +20,9 @@ index 3425ed11..8c2e1d5c 100644
return 0;
}
diff --git a/lib/efi_loader/efi_variable.c b/lib/efi_loader/efi_variable.c
index c316bdfe..5fe8129c 100644
--- a/lib/efi_loader/efi_variable.c
+++ b/lib/efi_loader/efi_variable.c
@@ -522,7 +522,7 @@ efi_status_t EFIAPI efi_set_variable(u16 *variable_name,
@@ -522,7 +522,7 @@ efi_status_t EFIAPI efi_set_variable(u16
if (old_size)
/* APPEND_WRITE */

View File

@@ -0,0 +1,46 @@
From e33a814e772cdc36436c8c188d8c42d019fda639 Mon Sep 17 00:00:00 2001
From: Dirk Mueller <dmueller@suse.com>
Date: Tue, 14 Jan 2020 18:53:41 +0100
Subject: [PATCH] scripts/dtc: Remove redundant YYLOC global declaration
gcc 10 will default to -fno-common, which causes this error at link
time:
(.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here
This is because both dtc-lexer as well as dtc-parser define the same
global symbol yyloc. Before with -fcommon those were merged into one
defintion. The proper solution would be to to mark this as "extern",
however that leads to:
dtc-lexer.l:26:16: error: redundant redeclaration of 'yylloc' [-Werror=redundant-decls]
26 | extern YYLTYPE yylloc;
| ^~~~~~
In file included from dtc-lexer.l:24:
dtc-parser.tab.h:127:16: note: previous declaration of 'yylloc' was here
127 | extern YYLTYPE yylloc;
| ^~~~~~
cc1: all warnings being treated as errors
which means the declaration is completely redundant and can just be
dropped.
Signed-off-by: Dirk Mueller <dmueller@suse.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
[robh: cherry-pick from upstream]
Cc: stable@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
---
scripts/dtc/dtc-lexer.l | 1 -
1 file changed, 1 deletion(-)
--- a/scripts/dtc/dtc-lexer.l
+++ b/scripts/dtc/dtc-lexer.l
@@ -38,7 +38,6 @@ LINECOMMENT "//".*\n
#include "srcpos.h"
#include "dtc-parser.tab.h"
-YYLTYPE yylloc;
extern bool treesource_error;
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */

View File

@@ -0,0 +1,46 @@
From e33a814e772cdc36436c8c188d8c42d019fda639 Mon Sep 17 00:00:00 2001
From: Dirk Mueller <dmueller@suse.com>
Date: Tue, 14 Jan 2020 18:53:41 +0100
Subject: [PATCH] scripts/dtc: Remove redundant YYLOC global declaration
gcc 10 will default to -fno-common, which causes this error at link
time:
(.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here
This is because both dtc-lexer as well as dtc-parser define the same
global symbol yyloc. Before with -fcommon those were merged into one
defintion. The proper solution would be to to mark this as "extern",
however that leads to:
dtc-lexer.l:26:16: error: redundant redeclaration of 'yylloc' [-Werror=redundant-decls]
26 | extern YYLTYPE yylloc;
| ^~~~~~
In file included from dtc-lexer.l:24:
dtc-parser.tab.h:127:16: note: previous declaration of 'yylloc' was here
127 | extern YYLTYPE yylloc;
| ^~~~~~
cc1: all warnings being treated as errors
which means the declaration is completely redundant and can just be
dropped.
Signed-off-by: Dirk Mueller <dmueller@suse.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
[robh: cherry-pick from upstream]
Cc: stable@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
---
scripts/dtc/dtc-lexer.l | 1 -
1 file changed, 1 deletion(-)
--- a/scripts/dtc/dtc-lexer.l
+++ b/scripts/dtc/dtc-lexer.l
@@ -38,7 +38,6 @@ LINECOMMENT "//".*\n
#include "srcpos.h"
#include "dtc-parser.tab.h"
-YYLTYPE yylloc;
extern bool treesource_error;
/* CAUTION: this will stop working if we ever use yyless() or yyunput() */

View File

@@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=mbedtls
PKG_VERSION:=2.16.10
PKG_RELEASE:=1
PKG_VERSION:=2.16.11
PKG_RELEASE:=$(AUTORELEASE)
PKG_USE_MIPS16:=0
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/ARMmbed/mbedtls/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=96257bb03b30300b2f35f861ffe204ed957e9fd0329d80646fe57fc49f589b29
PKG_HASH:=c18e7e9abf95e69e425260493720470021384a1728417042060a35d0b7b18b41
PKG_BUILD_PARALLEL:=1
PKG_LICENSE:=GPL-2.0-or-later

View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=openssl
PKG_BASE:=1.1.1
PKG_BUGFIX:=k
PKG_BUGFIX:=l
PKG_VERSION:=$(PKG_BASE)$(PKG_BUGFIX)
PKG_RELEASE:=1
PKG_USE_MIPS16:=0
@@ -26,7 +26,7 @@ PKG_SOURCE_URL:= \
ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/ \
ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/old/$(PKG_BASE)/
PKG_HASH:=892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5
PKG_HASH:=0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1
PKG_LICENSE:=OpenSSL
PKG_LICENSE_FILES:=LICENSE

View File

@@ -1,4 +1,4 @@
From 1c2fabcdb34e436286b4a8760cfbfbff11ea551a Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Eneas U de Queiroz <cote2004-github@yahoo.com>
Date: Sat, 3 Nov 2018 15:41:10 -0300
Subject: eng_devcrypto: add configuration options
@@ -14,7 +14,6 @@ Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7585)
diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c
index a2c9a966f7..5ec38ca8f3 100644
--- a/crypto/engine/eng_devcrypto.c
+++ b/crypto/engine/eng_devcrypto.c
@@ -16,6 +16,7 @@
@@ -558,7 +557,7 @@ index a2c9a966f7..5ec38ca8f3 100644
/******************************************************************************
*
* LOAD / UNLOAD
@@ -793,6 +1109,8 @@ void engine_load_devcrypto_int()
@@ -806,6 +1122,8 @@ void engine_load_devcrypto_int()
if (!ENGINE_set_id(e, "devcrypto")
|| !ENGINE_set_name(e, "/dev/crypto engine")

View File

@@ -19,6 +19,7 @@ BASEDHCPSTAMPFILE="/var/run/dnsmasq"
DHCPBOGUSHOSTNAMEFILE="/usr/share/dnsmasq/dhcpbogushostname.conf"
RFC6761FILE="/usr/share/dnsmasq/rfc6761.conf"
DHCPSCRIPT="/usr/lib/dnsmasq/dhcp-script.sh"
DHCPSCRIPT_DEPENDS="/usr/share/libubox/jshn.sh /usr/bin/jshn /bin/ubus"
DNSMASQ_DHCP_VER=4
@@ -186,7 +187,22 @@ append_notinterface() {
xappend "--except-interface=$ifname"
}
ismounted() {
local filename="$1"
local dirname
for dirname in $EXTRA_MOUNT ; do
case "$filename" in
"${dirname}/"* | "${dirname}" )
return 1
;;
esac
done
return 0
}
append_addnhosts() {
ismounted "$1" || append EXTRA_MOUNT "$1"
xappend "--addn-hosts=$1"
}
@@ -801,9 +817,10 @@ dnsmasq_start()
config_get_bool disabled "$cfg" disabled 0
[ "$disabled" -gt 0 ] && return 0
# reset list of DOMAINS and DNS servers (for each dnsmasq instance)
# reset list of DOMAINS, DNS servers and EXTRA mounts (for each dnsmasq instance)
DNS_SERVERS=""
DOMAIN=""
EXTRA_MOUNT=""
CONFIGFILE="${BASECONFIGFILE}.${cfg}"
CONFIGFILE_TMP="${CONFIGFILE}.$$"
HOSTFILE="${BASEHOSTFILE}.${cfg}"
@@ -915,7 +932,7 @@ dnsmasq_start()
append_parm "$cfg" "minport" "--min-port"
append_parm "$cfg" "maxport" "--max-port"
append_parm "$cfg" "domain" "--domain"
append_parm "$cfg" "local" "--server"
append_parm "$cfg" "local" "--local"
config_list_foreach "$cfg" "listen_address" append_listenaddress
config_list_foreach "$cfg" "server" append_server
config_list_foreach "$cfg" "rev_server" append_rev_server
@@ -925,6 +942,14 @@ dnsmasq_start()
config_list_foreach "$cfg" "interface" append_interface
config_list_foreach "$cfg" "notinterface" append_notinterface
}
config_get_bool ignore_hosts_dir "$cfg" ignore_hosts_dir 0
if [ "$ignore_hosts_dir" = "1" ]; then
xappend "--addn-hosts=$HOSTFILE"
append EXTRA_MOUNT "$HOSTFILE"
else
xappend "--addn-hosts=$(dirname $HOSTFILE)"
append EXTRA_MOUNT "$(dirname $HOSTFILE)"
fi
config_list_foreach "$cfg" "addnhosts" append_addnhosts
config_list_foreach "$cfg" "bogusnxdomain" append_bogusnxdomain
append_parm "$cfg" "leasefile" "--dhcp-leasefile" "/tmp/dhcp.leases"
@@ -1020,7 +1045,6 @@ dnsmasq_start()
xappend "--dhcp-broadcast=tag:needs-broadcast"
xappend "--addn-hosts=$(dirname $HOSTFILE)"
config_get dnsmasqconfdir "$cfg" confdir "/tmp/dnsmasq.d"
xappend "--conf-dir=$dnsmasqconfdir"
@@ -1114,7 +1138,10 @@ dnsmasq_start()
procd_set_param respawn
procd_add_jail dnsmasq ubus log
procd_add_jail_mount $CONFIGFILE $TRUSTANCHORSFILE $HOSTFILE $RFC6761FILE $DHCPBOGUSHOSTNAMEFILE /etc/passwd /etc/group /etc/TZ /dev/null /dev/urandom $dnsmasqconffile $dnsmasqconfdir $resolvdir $user_dhcpscript /etc/hosts /etc/ethers /sbin/hotplug-call $EXTRA_MOUNT $DHCPSCRIPT /tmp/hosts/
procd_add_jail_mount $CONFIGFILE $DHCPBOGUSHOSTNAMEFILE $DHCPSCRIPT $DHCPSCRIPT_DEPENDS
procd_add_jail_mount $EXTRA_MOUNT $RFC6761FILE $TRUSTANCHORSFILE
procd_add_jail_mount $dnsmasqconffile $dnsmasqconfdir $resolvdir $user_dhcpscript
procd_add_jail_mount /etc/passwd /etc/group /etc/TZ /etc/hosts /etc/ethers
procd_add_jail_mount_rw /var/run/dnsmasq/ $leasefile
procd_close_instance

View File

@@ -8,16 +8,18 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=bcm27xx-userland
PKG_VERSION:=4a0a19b88b43e48c6b51b526b9378289fb712a4c
PKG_VERSION:=97bc8180ad682b004ea224d1db7b8e108eda4397
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/raspberrypi/userland/tar.gz/$(PKG_VERSION)?
PKG_HASH:=0f42d48095d1f680cbe8781c2e974b76bdd0507aaef64cce8b8b472ca3a09588
PKG_HASH:=d67def03931215f41b741aed5a3a1bc2bd62fa33f5cc14692e9a4d65f2e0ea27
PKG_FLAGS:=nonshared
PKG_MAINTAINER:=Álvaro Fernández Rojas <noltari@gmail.com>
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=LICENCE
CMAKE_INSTALL:=1
CMAKE_OPTIONS+=-DVMCS_INSTALL_PREFIX=/usr
@@ -46,6 +48,19 @@ define Package/bcm27xx-userland/description
BCM27xx userland tools including vcgencmd and tvservice.
endef
define Package/bcm27xx-userland-dev
SECTION:=devel
CATEGORY:=Development
SUBMENU:=Libraries
DEPENDS:=@TARGET_bcm27xx +bcm27xx-userland
TITLE:=Development files of BCM27xx userland tools
endef
define Package/bcm27xx-userland-dev/description
This package contains the header and static libraries of
the BCM27xx userland tools.
endef
define Package/bcm27xx-userland/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/dtmerge $(1)/usr/bin
@@ -61,11 +76,22 @@ endif
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/vcgencmd $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/vcmailbox $(1)/usr/bin
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so $(1)/usr/lib/
ifneq ($(ARCH),aarch64)
$(INSTALL_DIR) $(1)/usr/lib/plugins
$(CP) $(PKG_INSTALL_DIR)/usr/lib/plugins/ $(1)/usr/lib/
endif
endef
define Package/bcm27xx-userland-dev/install
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/ $(1)/usr/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/ $(1)/usr/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.a $(1)/usr/lib/
endef
$(eval $(call BuildPackage,bcm27xx-userland))
$(eval $(call BuildPackage,bcm27xx-userland-dev))

View File

@@ -340,7 +340,7 @@ static int show_matching_key_value(struct tffs_key_name_table *key_names)
for (uint32_t i = 0; i < key_names->size; i++) {
name = key_names->entries[i].val;
if (strncmp(name, name_filter, strlen(name)) == 0) {
if (strcmp(name, name_filter) == 0) {
if (find_entry(key_names->entries[i].id, &tmp)) {
print_entry_value(&tmp);
printf("\n");

View File

@@ -204,7 +204,7 @@ static int show_matching_key_value(uint8_t *buffer,
for (i = 0; i < key_names->size; i++) {
name = key_names->entries[i].val;
if (strncmp(name, name_filter, strlen(name)) == 0) {
if (strcmp(name, name_filter) == 0) {
id = to_entry_header_id(*key_names->entries[i].id);
if (find_entry(buffer, id, &tmp)) {

View File

@@ -0,0 +1,125 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "ar9331.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
/ {
model = "Onion Omega";
compatible = "onion,omega", "qca,ar9331";
aliases {
serial0 = &uart;
label-mac-device = &wmac;
led-boot = &led_system;
led-failsafe = &led_system;
led-running = &led_system;
led-upgrade = &led_system;
};
leds {
compatible = "gpio-leds";
led_system: system {
label = "amber:system";
gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
};
};
keys {
compatible = "gpio-keys";
reset {
label = "reset";
linux,code = <KEY_RESTART>;
gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
debounce-interval = <60>;
};
};
reg_usb_vbus: reg_usb_vbus {
compatible = "regulator-fixed";
regulator-name = "usb_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio 8 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
};
&ref {
clock-frequency = <25000000>;
};
&usb {
status = "okay";
vbus-supply = <&reg_usb_vbus>;
dr_mode = "host";
};
&usb_phy {
status = "okay";
};
&eth0 {
status = "okay";
compatible = "syscon", "simple-mfd";
};
&eth1 {
status = "okay";
mtd-mac-address = <&uboot 0x1fc00>;
mtd-mac-address-increment = <(-1)>;
gmac-config {
device = <&gmac>;
switch-phy-addr-swap = <4>;
switch-phy-swap = <4>;
};
};
&spi {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
spi-max-frequency = <25000000>;
reg = <0>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
uboot: partition@0 {
label = "u-boot";
reg = <0x000000 0x020000>;
read-only;
};
partition@20000 {
compatible = "tplink,firmware";
label = "firmware";
reg = <0x020000 0xfd0000>;
};
art: partition@ff0000 {
label = "art";
reg = <0xff0000 0x010000>;
read-only;
};
};
};
};
&wmac {
status = "okay";
mtd-cal-data = <&art 0x1000>;
mtd-mac-address = <&uboot 0x1fc00>;
};

View File

@@ -46,6 +46,7 @@ ath79_setup_interfaces()
netgear,ex7300|\
ocedo,koala|\
ocedo,raccoon|\
onion,omega|\
openmesh,mr600-v1|\
openmesh,mr600-v2|\
openmesh,mr900-v1|\

View File

@@ -1603,6 +1603,19 @@ define Device/ocedo_ursus
endef
TARGET_DEVICES += ocedo_ursus
define Device/onion_omega
$(Device/tplink-16mlzma)
SOC := ar9331
DEVICE_VENDOR := Onion
DEVICE_MODEL := Omega
DEVICE_PACKAGES := kmod-usb-chipidea2
SUPPORTED_DEVICES += onion-omega
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
IMAGE_SIZE := 16192k
TPLINK_HWID := 0x04700001
endef
TARGET_DEVICES += onion_omega
define Device/openmesh_common_64k
DEVICE_VENDOR := OpenMesh
DEVICE_PACKAGES := uboot-envtools

View File

@@ -5,7 +5,7 @@
device found on several devices in RAVE line of hardware.
+config MFD_RB4XX_CPLD
+ tristate "CPLD driver for Mikrotik RB4xx series boards
+ tristate "CPLD driver for Mikrotik RB4xx series boards"
+ select MFD_CORE
+ depends on ATH79 || COMPILE_TEST
+ help

View File

@@ -14,7 +14,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -2461,6 +2461,11 @@ static int lan78xx_reset(struct lan78xx_
@@ -2469,6 +2469,11 @@ static int lan78xx_reset(struct lan78xx_
int ret = 0;
unsigned long timeout;
u8 sig;
@@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
buf |= HW_CFG_LRST_;
@@ -2514,6 +2519,9 @@ static int lan78xx_reset(struct lan78xx_
@@ -2522,6 +2527,9 @@ static int lan78xx_reset(struct lan78xx_
ret = lan78xx_read_reg(dev, HW_CFG, &buf);
buf |= HW_CFG_MEF_;
@@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
ret = lan78xx_write_reg(dev, HW_CFG, buf);
ret = lan78xx_read_reg(dev, USB_CFG0, &buf);
@@ -2569,6 +2577,9 @@ static int lan78xx_reset(struct lan78xx_
@@ -2577,6 +2585,9 @@ static int lan78xx_reset(struct lan78xx_
buf |= MAC_CR_AUTO_DUPLEX_ | MAC_CR_AUTO_SPEED_;
}
}

View File

@@ -1051,7 +1051,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
USB_PORT_FEAT_C_OVER_CURRENT);
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -1993,6 +1993,85 @@ free_interfaces:
@@ -1999,6 +1999,85 @@ free_interfaces:
if (cp->string == NULL &&
!(dev->quirks & USB_QUIRK_CONFIG_INTF_STRINGS))
cp->string = usb_cache_string(dev, cp->desc.iConfiguration);

View File

@@ -9,7 +9,7 @@ Subject: [PATCH] Added Device IDs for August DVB-T 205
--- a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
+++ b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
@@ -1938,6 +1938,10 @@ static const struct usb_device_id rtl28x
@@ -1947,6 +1947,10 @@ static const struct usb_device_id rtl28x
&rtl28xxu_props, "Compro VideoMate U650F", NULL) },
{ DVB_USB_DEVICE(USB_VID_KWORLD_2, 0xd394,
&rtl28xxu_props, "MaxMedia HU394-T", NULL) },

View File

@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -2643,6 +2643,22 @@ static int lan78xx_open(struct net_devic
@@ -2651,6 +2651,22 @@ static int lan78xx_open(struct net_devic
netif_dbg(dev, ifup, dev->net, "phy initialised successfully");

View File

@@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
{
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
@@ -2925,8 +2934,14 @@ static int lan78xx_bind(struct lan78xx_n
@@ -2933,8 +2942,14 @@ static int lan78xx_bind(struct lan78xx_n
if (DEFAULT_RX_CSUM_ENABLE)
dev->net->features |= NETIF_F_RXCSUM;

View File

@@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -2175,6 +2175,22 @@ static int lan78xx_phy_init(struct lan78
@@ -2183,6 +2183,22 @@ static int lan78xx_phy_init(struct lan78
mii_adv_to_linkmode_adv_t(fc, mii_adv);
linkmode_or(phydev->advertising, fc, phydev->advertising);
@@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
if (phydev->mdio.dev.of_node) {
u32 reg;
int len;
@@ -2652,22 +2668,6 @@ static int lan78xx_open(struct net_devic
@@ -2660,22 +2676,6 @@ static int lan78xx_open(struct net_devic
netif_dbg(dev, ifup, dev->net, "phy initialised successfully");

View File

@@ -27,7 +27,7 @@ See: https://github.com/raspberrypi/linux/issues/2447
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
{
u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL);
@@ -3768,7 +3773,12 @@ static int lan78xx_probe(struct usb_inte
@@ -3776,7 +3781,12 @@ static int lan78xx_probe(struct usb_inte
netdev->max_mtu = MAX_SINGLE_PACKET_SIZE;
netif_set_gso_max_size(netdev, MAX_SINGLE_PACKET_SIZE - MAX_HEADER);

View File

@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -2180,7 +2180,7 @@ static int lan78xx_phy_init(struct lan78
@@ -2188,7 +2188,7 @@ static int lan78xx_phy_init(struct lan78
mii_adv_to_linkmode_adv_t(fc, mii_adv);
linkmode_or(phydev->advertising, fc, phydev->advertising);

View File

@@ -12,7 +12,7 @@ in both dwc_otg and in ipv6 processing.
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -3169,7 +3169,7 @@ static int rx_submit(struct lan78xx_net
@@ -3177,7 +3177,7 @@ static int rx_submit(struct lan78xx_net
size_t size = dev->rx_urb_size;
int ret = 0;

View File

@@ -19,7 +19,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
--- a/drivers/media/common/videobuf2/videobuf2-core.c
+++ b/drivers/media/common/videobuf2/videobuf2-core.c
@@ -2073,12 +2073,12 @@ static int __find_plane_by_offset(struct
@@ -2084,12 +2084,12 @@ static int __find_plane_by_offset(struct
return -EINVAL;
}
@@ -35,7 +35,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
struct dma_buf *dbuf;
if (q->memory != VB2_MEMORY_MMAP) {
@@ -2128,6 +2128,21 @@ int vb2_core_expbuf(struct vb2_queue *q,
@@ -2139,6 +2139,21 @@ int vb2_core_expbuf(struct vb2_queue *q,
return -EINVAL;
}

View File

@@ -46,7 +46,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
* have been called previously. Use for set_configuration, set_interface,
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -1120,6 +1120,21 @@ static void remove_intf_ep_devs(struct u
@@ -1126,6 +1126,21 @@ static void remove_intf_ep_devs(struct u
intf->ep_devs_created = 0;
}

View File

@@ -249,7 +249,7 @@ Signed-off-by: Christoph Hellwig <hch@lst.de>
* @dma_pfn_offset: offset of DMA memory range relatively of RAM
* @dma_parms: A low level driver may set these to teach IOMMU code about
* segment limitations.
@@ -1270,7 +1270,7 @@ struct device {
@@ -1271,7 +1271,7 @@ struct device {
not all hardware supports
64 bit addresses for consistent
allocations such descriptors. */

View File

@@ -21,7 +21,7 @@ Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
--- a/drivers/media/v4l2-core/v4l2-mem2mem.c
+++ b/drivers/media/v4l2-core/v4l2-mem2mem.c
@@ -1218,6 +1218,59 @@ int v4l2_m2m_ioctl_try_decoder_cmd(struc
@@ -1216,6 +1216,59 @@ int v4l2_m2m_ioctl_try_decoder_cmd(struc
}
EXPORT_SYMBOL_GPL(v4l2_m2m_ioctl_try_decoder_cmd);

View File

@@ -168,7 +168,7 @@ Signed-off-by: John Cox <jc@kynesim.co.uk>
}
schedule_next = _v4l2_m2m_job_finish(m2m_dev, m2m_ctx);
unlock:
@@ -983,12 +1074,14 @@ struct v4l2_m2m_ctx *v4l2_m2m_ctx_init(s
@@ -981,12 +1072,14 @@ struct v4l2_m2m_ctx *v4l2_m2m_ctx_init(s
m2m_ctx->priv = drv_priv;
m2m_ctx->m2m_dev = m2m_dev;
init_waitqueue_head(&m2m_ctx->finished);

View File

@@ -1,56 +0,0 @@
From 22198e801db7542c59098a75bdab120bcbc42652 Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Wed, 30 Sep 2020 19:23:43 +0100
Subject: [PATCH] USB: gadget: f_hid: avoid crashes and log spam
Disconnecting and reconnecting the USB cable can lead to crashes and a
variety of kernel log spam. Try to fix or minimise both.
See: https://github.com/raspberrypi/linux/issues/3870
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
drivers/usb/gadget/function/f_hid.c | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
--- a/drivers/usb/gadget/function/f_hid.c
+++ b/drivers/usb/gadget/function/f_hid.c
@@ -344,6 +344,11 @@ static ssize_t f_hidg_write(struct file
spin_lock_irqsave(&hidg->write_spinlock, flags);
+ if (!hidg->req) {
+ spin_unlock_irqrestore(&hidg->write_spinlock, flags);
+ return -ESHUTDOWN;
+ }
+
#define WRITE_COND (!hidg->write_pending)
try_again:
/* write queue */
@@ -364,7 +369,13 @@ try_again:
count = min_t(unsigned, count, hidg->report_length);
spin_unlock_irqrestore(&hidg->write_spinlock, flags);
- status = copy_from_user(req->buf, buffer, count);
+ if (req) {
+ status = copy_from_user(req->buf, buffer, count);
+ } else {
+ ERROR(hidg->func.config->cdev, "hidg->req is NULL\n");
+ status = -ESHUTDOWN;
+ goto release_write_pending;
+ }
if (status != 0) {
ERROR(hidg->func.config->cdev,
@@ -393,6 +404,11 @@ try_again:
spin_unlock_irqrestore(&hidg->write_spinlock, flags);
+ if (!hidg->in_ep->enabled) {
+ ERROR(hidg->func.config->cdev, "in_ep is disabled\n");
+ status = -ESHUTDOWN;
+ goto release_write_pending;
+ }
status = usb_ep_queue(hidg->in_ep, req, GFP_ATOMIC);
if (status < 0) {
ERROR(hidg->func.config->cdev,

View File

@@ -1,26 +0,0 @@
From 5018dc559136e2bca24973e71ed8747adf0f37f3 Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Mon, 5 Oct 2020 15:41:15 +0100
Subject: [PATCH] SQUASH: USB: gadget: f_hid: remove more spam
Tidying up the previous patch to this file dropped the deletion of a
particularly noisy error message. Restore its removal.
See: https://github.com/raspberrypi/linux/issues/3870
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
drivers/usb/gadget/function/f_hid.c | 2 --
1 file changed, 2 deletions(-)
--- a/drivers/usb/gadget/function/f_hid.c
+++ b/drivers/usb/gadget/function/f_hid.c
@@ -411,8 +411,6 @@ try_again:
}
status = usb_ep_queue(hidg->in_ep, req, GFP_ATOMIC);
if (status < 0) {
- ERROR(hidg->func.config->cdev,
- "usb_ep_queue error on int endpoint %zd\n", status);
goto release_write_pending;
} else {
status = count;

View File

@@ -27,6 +27,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
+ /* Acknowledge any pending PHY interrupt, lest it be the last */
+ phy_read(phydev, LAN88XX_INT_STS);
+
mutex_lock(&phydev->lock);
phy_read_status(phydev);
if (!phydev->link && dev->link_on) {
link = phydev->link;

View File

@@ -21,7 +21,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
@@ -1207,18 +1207,6 @@ static bool gc_worker_can_early_drop(con
@@ -1212,18 +1212,6 @@ static bool gc_worker_can_early_drop(con
return false;
}
@@ -40,7 +40,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static void gc_worker(struct work_struct *work)
{
unsigned int min_interval = max(HZ / GC_MAX_BUCKETS_DIV, 1u);
@@ -1255,10 +1243,8 @@ static void gc_worker(struct work_struct
@@ -1260,10 +1248,8 @@ static void gc_worker(struct work_struct
tmp = nf_ct_tuplehash_to_ctrack(h);
scanned++;

View File

@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -1145,6 +1145,64 @@ mt7530_port_vlan_del(struct dsa_switch *
@@ -1146,6 +1146,64 @@ mt7530_port_vlan_del(struct dsa_switch *
return 0;
}
@@ -82,7 +82,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
static enum dsa_tag_protocol
mtk_get_tag_protocol(struct dsa_switch *ds, int port)
{
@@ -1522,6 +1580,8 @@ static const struct dsa_switch_ops mt753
@@ -1523,6 +1581,8 @@ static const struct dsa_switch_ops mt753
.port_vlan_prepare = mt7530_port_vlan_prepare,
.port_vlan_add = mt7530_port_vlan_add,
.port_vlan_del = mt7530_port_vlan_del,

View File

@@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -1085,12 +1085,6 @@ mt7530_port_vlan_add(struct dsa_switch *
@@ -1086,12 +1086,6 @@ mt7530_port_vlan_add(struct dsa_switch *
struct mt7530_priv *priv = ds->priv;
u16 vid;
@@ -28,7 +28,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
mutex_lock(&priv->reg_mutex);
for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid) {
@@ -1116,12 +1110,6 @@ mt7530_port_vlan_del(struct dsa_switch *
@@ -1117,12 +1111,6 @@ mt7530_port_vlan_del(struct dsa_switch *
struct mt7530_priv *priv = ds->priv;
u16 vid, pvid;
@@ -41,7 +41,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
mutex_lock(&priv->reg_mutex);
pvid = priv->ports[port].pvid;
@@ -1234,6 +1222,7 @@ mt7530_setup(struct dsa_switch *ds)
@@ -1235,6 +1223,7 @@ mt7530_setup(struct dsa_switch *ds)
* as two netdev instances.
*/
dn = ds->ports[MT7530_CPU_PORT].master->dev.of_node->parent;

View File

@@ -21,7 +21,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -427,34 +427,32 @@ mt7530_pad_clk_setup(struct dsa_switch *
@@ -428,34 +428,32 @@ mt7530_pad_clk_setup(struct dsa_switch *
TD_DM_DRVP(8) | TD_DM_DRVN(8));
/* Setup core clock for MT7530 */

View File

@@ -68,7 +68,7 @@ Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
kfree(sdev->inquiry);
kfree(sdev);
@@ -868,6 +877,8 @@ static struct bin_attribute dev_attr_vpd
@@ -871,6 +880,8 @@ static struct bin_attribute dev_attr_vpd
sdev_vpd_pg_attr(pg83);
sdev_vpd_pg_attr(pg80);
@@ -77,7 +77,7 @@ Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
static ssize_t show_inquiry(struct file *filep, struct kobject *kobj,
struct bin_attribute *bin_attr,
@@ -1200,12 +1211,18 @@ static umode_t scsi_sdev_bin_attr_is_vis
@@ -1203,12 +1214,18 @@ static umode_t scsi_sdev_bin_attr_is_vis
struct scsi_device *sdev = to_scsi_device(dev);
@@ -96,7 +96,7 @@ Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
return S_IRUGO;
}
@@ -1248,8 +1265,10 @@ static struct attribute *scsi_sdev_attrs
@@ -1251,8 +1268,10 @@ static struct attribute *scsi_sdev_attrs
};
static struct bin_attribute *scsi_sdev_bin_attrs[] = {

View File

@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} \
\
/* __*init sections */ \
@@ -904,6 +914,8 @@
@@ -905,6 +915,8 @@
EXIT_TEXT \
EXIT_DATA \
EXIT_CALL \

View File

@@ -1,56 +0,0 @@
From 8c9254d41881c81bea610193c6ac59c8cb8b79fe Mon Sep 17 00:00:00 2001
From: Florian Eckert <fe@dev.tdt.de>
Date: Fri, 27 Mar 2020 16:11:55 +0100
Subject: [PATCH] Revert "platform/x86: pcengines-apuv2: wire up simswitch gpio
as led"
This reverts commit 5037d4ddda31c2dbbb018109655f61054b1756dc.
Commit message from linux:
The APU3+ boards have two SIM sockets, while only one of them
can be routed to the mpcie slots at a time. Selection is done
via simswap gpio.
We currently don't have a fitting subsystem for those cases yet,
so just wire it up to a LED for the time being. While this isn't
really semantically correct, it's a good compromise.
Explanation why this does not work:
This change connects the simswap to the LED subsystem of the kernel.
From my point of view, it's nonsense. If we do it this way, then this
can be switched relatively easily via the LED subsystem (trigger:
none/default-on) and that is dangerous! If this is used, it would be
unfavorable, since there is also another trigger (trigger: heartbeat/netdev).
This LED also appears in the LuCI and can therefore be switched by the user.
Therefore, this simswap GPIO should remain in the GPIO
subsystem and be switched via it and not be connected to the LED
subsystem. To avoid the problems mentioned above. The LED subsystem is
not made for this and it is not a good compromise, but rather dangerous.
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
---
drivers/platform/x86/pcengines-apuv2.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
--- a/drivers/platform/x86/pcengines-apuv2.c
+++ b/drivers/platform/x86/pcengines-apuv2.c
@@ -77,8 +77,7 @@ static const struct amd_fch_gpio_pdata b
static const struct gpio_led apu2_leds[] = {
{ .name = "apu:green:1" },
{ .name = "apu:green:2" },
- { .name = "apu:green:3" },
- { .name = "apu:simswap" },
+ { .name = "apu:green:3" }
};
static const struct gpio_led_platform_data apu2_leds_pdata = {
@@ -95,8 +94,6 @@ static struct gpiod_lookup_table gpios_l
NULL, 1, GPIO_ACTIVE_LOW),
GPIO_LOOKUP_IDX(AMD_FCH_GPIO_DRIVER_NAME, APU2_GPIO_LINE_LED3,
NULL, 2, GPIO_ACTIVE_LOW),
- GPIO_LOOKUP_IDX(AMD_FCH_GPIO_DRIVER_NAME, APU2_GPIO_LINE_SIMSWAP,
- NULL, 3, GPIO_ACTIVE_LOW),
}
};

View File

@@ -21,7 +21,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#define PPP_VERSION "2.4.2"
/*
@@ -1362,12 +1367,37 @@ static void ppp_dev_priv_destructor(stru
@@ -1373,12 +1378,37 @@ static void ppp_dev_priv_destructor(stru
ppp_destroy_interface(ppp);
}

View File

@@ -9,7 +9,7 @@ Content-Transfer-Encoding: 8bit
Signed-off-by: René van Dorst <opensource@vdorst.com>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -1409,9 +1409,13 @@ static void mt7530_phylink_mac_config(st
@@ -1410,9 +1410,13 @@ static void mt7530_phylink_mac_config(st
switch (state->speed) {
case SPEED_1000:
mcr_new |= PMCR_FORCE_SPEED_1000;
@@ -23,7 +23,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
break;
}
if (state->duplex == DUPLEX_FULL) {
@@ -1547,6 +1551,54 @@ mt7530_phylink_mac_link_state(struct dsa
@@ -1548,6 +1552,54 @@ mt7530_phylink_mac_link_state(struct dsa
return 1;
}
@@ -78,7 +78,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
static const struct dsa_switch_ops mt7530_switch_ops = {
.get_tag_protocol = mtk_get_tag_protocol,
.setup = mt7530_setup,
@@ -1574,6 +1626,8 @@ static const struct dsa_switch_ops mt753
@@ -1575,6 +1627,8 @@ static const struct dsa_switch_ops mt753
.phylink_mac_config = mt7530_phylink_mac_config,
.phylink_mac_link_down = mt7530_phylink_mac_link_down,
.phylink_mac_link_up = mt7530_phylink_mac_link_up,

View File

@@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/*
* The Mellanox Tavor device gives false positive parity errors. Mark this
* device with a broken_parity_status to allow PCI scanning code to "skip"
@@ -3321,6 +3322,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
@@ -3322,6 +3323,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
@@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/*
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
* To work around this, query the size it should be configured to by the
@@ -3346,6 +3349,8 @@ static void quirk_intel_ntb(struct pci_d
@@ -3347,6 +3350,8 @@ static void quirk_intel_ntb(struct pci_d
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
@@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/*
* Some BIOS implementations leave the Intel GPU interrupts enabled, even
* though no one is handling them (e.g., if the i915 driver is never
@@ -3384,6 +3389,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
@@ -3385,6 +3390,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);

View File

@@ -355,6 +355,7 @@ define Device/edgecore_ecw5211
SOC := qcom-ipq4018
BLOCKSIZE := 128k
PAGESIZE := 2048
DEVICE_DTS_CONFIG := config@ap.dk01.1-c2
DEVICE_PACKAGES := kmod-tpm-i2c-atmel kmod-usb-acm
endef
TARGET_DEVICES += edgecore_ecw5211

View File

@@ -19,7 +19,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -2524,6 +2524,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
@@ -2525,6 +2525,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT3364, quirk_disable_all_msi);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8380_0, quirk_disable_all_msi);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);

View File

@@ -14,7 +14,7 @@ Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -2530,6 +2530,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
@@ -2531,6 +2531,9 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ec, quirk_disable_all_msi);
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);

View File

@@ -54,7 +54,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
* All 3.1 IP version constants are greater than the 3.0 IP
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -3578,6 +3578,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
@@ -3656,6 +3656,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
dwc->gadget.sg_supported = true;
dwc->gadget.name = "dwc3-gadget";
dwc->gadget.lpm_capable = true;

View File

@@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
struct ethtool_eee *p = &priv->dev->ports[port].eee;
--- a/drivers/net/dsa/lantiq_gswip.c
+++ b/drivers/net/dsa/lantiq_gswip.c
@@ -1657,7 +1657,9 @@ static void gswip_phylink_mac_link_down(
@@ -1663,7 +1663,9 @@ static void gswip_phylink_mac_link_down(
static void gswip_phylink_mac_link_up(struct dsa_switch *ds, int port,
unsigned int mode,
phy_interface_t interface,
@@ -64,7 +64,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -1442,7 +1442,9 @@ static void mt7530_phylink_mac_link_down
@@ -1443,7 +1443,9 @@ static void mt7530_phylink_mac_link_down
static void mt7530_phylink_mac_link_up(struct dsa_switch *ds, int port,
unsigned int mode,
phy_interface_t interface,

View File

@@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -488,17 +488,6 @@ mt7530_mib_reset(struct dsa_switch *ds)
@@ -489,17 +489,6 @@ mt7530_mib_reset(struct dsa_switch *ds)
mt7530_write(priv, MT7530_MIB_CCR, CCR_MIB_ACTIVATE);
}
@@ -33,7 +33,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
static int mt7530_phy_read(struct dsa_switch *ds, int port, int regnum)
{
struct mt7530_priv *priv = ds->priv;
@@ -672,7 +661,7 @@ mt7530_port_enable(struct dsa_switch *ds
@@ -673,7 +662,7 @@ mt7530_port_enable(struct dsa_switch *ds
priv->ports[port].enable = true;
mt7530_rmw(priv, MT7530_PCR_P(port), PCR_MATRIX_MASK,
priv->ports[port].pm);
@@ -42,7 +42,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
mutex_unlock(&priv->reg_mutex);
@@ -695,7 +684,7 @@ mt7530_port_disable(struct dsa_switch *d
@@ -696,7 +685,7 @@ mt7530_port_disable(struct dsa_switch *d
priv->ports[port].enable = false;
mt7530_rmw(priv, MT7530_PCR_P(port), PCR_MATRIX_MASK,
PCR_MATRIX_CLR);
@@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
mutex_unlock(&priv->reg_mutex);
}
@@ -1397,8 +1386,7 @@ static void mt7530_phylink_mac_config(st
@@ -1398,8 +1387,7 @@ static void mt7530_phylink_mac_config(st
mcr_cur = mt7530_read(priv, MT7530_PMCR_P(port));
mcr_new = mcr_cur;
@@ -61,7 +61,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
mcr_new |= PMCR_IFG_XMIT(1) | PMCR_MAC_MODE | PMCR_BACKOFF_EN |
PMCR_BACKPR_EN | PMCR_FORCE_MODE;
@@ -1406,26 +1394,6 @@ static void mt7530_phylink_mac_config(st
@@ -1407,26 +1395,6 @@ static void mt7530_phylink_mac_config(st
if (port == 5 && dsa_is_user_port(ds, 5))
mcr_new |= PMCR_EXT_PHY;
@@ -88,7 +88,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
if (mcr_new != mcr_cur)
mt7530_write(priv, MT7530_PMCR_P(port), mcr_new);
}
@@ -1436,7 +1404,7 @@ static void mt7530_phylink_mac_link_down
@@ -1437,7 +1405,7 @@ static void mt7530_phylink_mac_link_down
{
struct mt7530_priv *priv = ds->priv;
@@ -97,7 +97,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
}
static void mt7530_phylink_mac_link_up(struct dsa_switch *ds, int port,
@@ -1447,8 +1415,31 @@ static void mt7530_phylink_mac_link_up(s
@@ -1448,8 +1416,31 @@ static void mt7530_phylink_mac_link_up(s
bool tx_pause, bool rx_pause)
{
struct mt7530_priv *priv = ds->priv;

View File

@@ -17,7 +17,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -372,8 +372,9 @@ mt7530_fdb_write(struct mt7530_priv *pri
@@ -373,8 +373,9 @@ mt7530_fdb_write(struct mt7530_priv *pri
mt7530_write(priv, MT7530_ATA1 + (i * 4), reg[i]);
}
@@ -28,7 +28,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
{
struct mt7530_priv *priv = ds->priv;
u32 ncpo1, ssc_delta, trgint, i, xtal;
@@ -387,7 +388,7 @@ mt7530_pad_clk_setup(struct dsa_switch *
@@ -388,7 +389,7 @@ mt7530_pad_clk_setup(struct dsa_switch *
return -EINVAL;
}
@@ -37,7 +37,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
case PHY_INTERFACE_MODE_RGMII:
trgint = 0;
/* PLL frequency: 125MHz */
@@ -409,7 +410,8 @@ mt7530_pad_clk_setup(struct dsa_switch *
@@ -410,7 +411,8 @@ mt7530_pad_clk_setup(struct dsa_switch *
}
break;
default:
@@ -47,7 +47,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
return -EINVAL;
}
@@ -1334,12 +1336,11 @@ mt7530_setup(struct dsa_switch *ds)
@@ -1335,12 +1337,11 @@ mt7530_setup(struct dsa_switch *ds)
return 0;
}
@@ -63,7 +63,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
switch (port) {
case 0: /* Internal phy */
@@ -1348,33 +1349,114 @@ static void mt7530_phylink_mac_config(st
@@ -1349,33 +1350,114 @@ static void mt7530_phylink_mac_config(st
case 3:
case 4:
if (state->interface != PHY_INTERFACE_MODE_GMII)
@@ -189,7 +189,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
return;
}
@@ -1442,61 +1524,44 @@ static void mt7530_phylink_mac_link_up(s
@@ -1443,61 +1525,44 @@ static void mt7530_phylink_mac_link_up(s
mt7530_set(priv, MT7530_PMCR_P(port), mcr);
}
@@ -274,7 +274,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
phylink_set(mask, Pause);
phylink_set(mask, Asym_Pause);
@@ -1592,12 +1657,45 @@ static int mt7530_set_mac_eee(struct dsa
@@ -1593,12 +1658,45 @@ static int mt7530_set_mac_eee(struct dsa
return 0;
}
@@ -323,7 +323,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
.get_ethtool_stats = mt7530_get_ethtool_stats,
.get_sset_count = mt7530_get_sset_count,
.port_enable = mt7530_port_enable,
@@ -1614,18 +1712,43 @@ static const struct dsa_switch_ops mt753
@@ -1615,18 +1713,43 @@ static const struct dsa_switch_ops mt753
.port_vlan_del = mt7530_port_vlan_del,
.port_mirror_add = mt7530_port_mirror_add,
.port_mirror_del = mt7530_port_mirror_del,
@@ -372,7 +372,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, mt7530_of_match);
@@ -1663,8 +1786,21 @@ mt7530_probe(struct mdio_device *mdiodev
@@ -1664,8 +1787,21 @@ mt7530_probe(struct mdio_device *mdiodev
/* Get the hardware identifier from the devicetree node.
* We will need it for some of the clock and regulator setup.
*/

View File

@@ -28,7 +28,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
--- a/drivers/net/dsa/mt7530.c
+++ b/drivers/net/dsa/mt7530.c
@@ -234,6 +234,12 @@ mt7530_write(struct mt7530_priv *priv, u
@@ -235,6 +235,12 @@ mt7530_write(struct mt7530_priv *priv, u
}
static u32
@@ -41,7 +41,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
_mt7530_read(struct mt7530_dummy_poll *p)
{
struct mii_bus *bus = p->priv->bus;
@@ -481,6 +487,108 @@ mt7530_pad_clk_setup(struct dsa_switch *
@@ -482,6 +488,108 @@ mt7530_pad_clk_setup(struct dsa_switch *
return 0;
}
@@ -150,7 +150,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static void
mt7530_mib_reset(struct dsa_switch *ds)
{
@@ -505,6 +613,217 @@ static int mt7530_phy_write(struct dsa_s
@@ -506,6 +614,217 @@ static int mt7530_phy_write(struct dsa_s
return mdiobus_write_nested(priv->bus, port, regnum, val);
}
@@ -368,7 +368,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static void
mt7530_get_strings(struct dsa_switch *ds, int port, u32 stringset,
uint8_t *data)
@@ -621,9 +940,14 @@ unlock_exit:
@@ -622,9 +941,14 @@ unlock_exit:
}
static int
@@ -385,7 +385,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
/* Enable Mediatek header mode on the cpu port */
mt7530_write(priv, MT7530_PVC_P(port),
PORT_SPEC_TAG);
@@ -636,7 +960,7 @@ mt7530_cpu_port_enable(struct mt7530_pri
@@ -637,7 +961,7 @@ mt7530_cpu_port_enable(struct mt7530_pri
mt7530_rmw(priv, MT7530_MFC, CPU_MASK, CPU_EN | CPU_PORT(port));
/* CPU port gets connected to all user ports of
@@ -394,7 +394,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
*/
mt7530_write(priv, MT7530_PCR_P(port),
PCR_MATRIX(dsa_user_ports(priv->ds)));
@@ -1122,27 +1446,42 @@ mt7530_port_vlan_del(struct dsa_switch *
@@ -1123,27 +1447,42 @@ mt7530_port_vlan_del(struct dsa_switch *
return 0;
}
@@ -444,7 +444,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
val = mt7530_read(priv, MT7530_PCR_P(port));
if (ingress) {
@@ -1157,7 +1496,7 @@ static int mt7530_port_mirror_add(struct
@@ -1158,7 +1497,7 @@ static int mt7530_port_mirror_add(struct
return 0;
}
@@ -453,7 +453,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
struct dsa_mall_mirror_tc_entry *mirror)
{
struct mt7530_priv *priv = ds->priv;
@@ -1174,9 +1513,9 @@ static void mt7530_port_mirror_del(struc
@@ -1175,9 +1514,9 @@ static void mt7530_port_mirror_del(struc
mt7530_write(priv, MT7530_PCR_P(port), val);
if (!priv->mirror_rx && !priv->mirror_tx) {
@@ -466,7 +466,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
}
}
@@ -1282,7 +1621,7 @@ mt7530_setup(struct dsa_switch *ds)
@@ -1283,7 +1622,7 @@ mt7530_setup(struct dsa_switch *ds)
PCR_MATRIX_CLR);
if (dsa_is_cpu_port(ds, i))
@@ -475,7 +475,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
else
mt7530_port_disable(ds, i);
@@ -1336,6 +1675,118 @@ mt7530_setup(struct dsa_switch *ds)
@@ -1337,6 +1676,118 @@ mt7530_setup(struct dsa_switch *ds)
return 0;
}
@@ -594,7 +594,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static bool
mt7530_phy_mode_supported(struct dsa_switch *ds, int port,
const struct phylink_link_state *state)
@@ -1374,6 +1825,47 @@ unsupported:
@@ -1375,6 +1826,47 @@ unsupported:
return false;
}
@@ -642,7 +642,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static bool
mt753x_phy_mode_supported(struct dsa_switch *ds, int port,
const struct phylink_link_state *state)
@@ -1406,6 +1898,227 @@ mt7530_mac_config(struct dsa_switch *ds,
@@ -1407,6 +1899,227 @@ mt7530_mac_config(struct dsa_switch *ds,
return 0;
}
@@ -870,7 +870,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static int
mt753x_mac_config(struct dsa_switch *ds, int port, unsigned int mode,
const struct phylink_link_state *state)
@@ -1441,6 +2154,8 @@ mt753x_phylink_mac_config(struct dsa_swi
@@ -1442,6 +2155,8 @@ mt753x_phylink_mac_config(struct dsa_swi
if (mt753x_mac_config(ds, port, mode, state) < 0)
goto unsupported;
@@ -879,7 +879,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
break;
case 6: /* 1st cpu port */
if (priv->p6_interface == state->interface)
@@ -1460,7 +2175,8 @@ unsupported:
@@ -1461,7 +2176,8 @@ unsupported:
return;
}
@@ -889,7 +889,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
dev_err(ds->dev, "%s: in-band negotiation unsupported\n",
__func__);
return;
@@ -1470,7 +2186,7 @@ unsupported:
@@ -1471,7 +2187,7 @@ unsupported:
mcr_new = mcr_cur;
mcr_new &= ~PMCR_LINK_SETTINGS_MASK;
mcr_new |= PMCR_IFG_XMIT(1) | PMCR_MAC_MODE | PMCR_BACKOFF_EN |
@@ -898,7 +898,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
/* Are we connected to external phy */
if (port == 5 && dsa_is_user_port(ds, 5))
@@ -1480,7 +2196,18 @@ unsupported:
@@ -1481,7 +2197,18 @@ unsupported:
mt7530_write(priv, MT7530_PMCR_P(port), mcr_new);
}
@@ -918,7 +918,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
unsigned int mode,
phy_interface_t interface)
{
@@ -1489,7 +2216,19 @@ static void mt7530_phylink_mac_link_down
@@ -1490,7 +2217,19 @@ static void mt7530_phylink_mac_link_down
mt7530_clear(priv, MT7530_PMCR_P(port), PMCR_LINK_SETTINGS_MASK);
}
@@ -939,7 +939,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
unsigned int mode,
phy_interface_t interface,
struct phy_device *phydev,
@@ -1499,18 +2238,29 @@ static void mt7530_phylink_mac_link_up(s
@@ -1500,18 +2239,29 @@ static void mt7530_phylink_mac_link_up(s
struct mt7530_priv *priv = ds->priv;
u32 mcr;
@@ -971,7 +971,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
break;
}
if (duplex == DUPLEX_FULL) {
@@ -1524,6 +2274,45 @@ static void mt7530_phylink_mac_link_up(s
@@ -1525,6 +2275,45 @@ static void mt7530_phylink_mac_link_up(s
mt7530_set(priv, MT7530_PMCR_P(port), mcr);
}
@@ -1017,7 +1017,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static void
mt7530_mac_port_validate(struct dsa_switch *ds, int port,
unsigned long *supported)
@@ -1532,6 +2321,14 @@ mt7530_mac_port_validate(struct dsa_swit
@@ -1533,6 +2322,14 @@ mt7530_mac_port_validate(struct dsa_swit
phylink_set(supported, 1000baseX_Full);
}
@@ -1032,7 +1032,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static void
mt753x_phylink_validate(struct dsa_switch *ds, int port,
unsigned long *supported,
@@ -1548,7 +2345,8 @@ mt753x_phylink_validate(struct dsa_switc
@@ -1549,7 +2346,8 @@ mt753x_phylink_validate(struct dsa_switc
phylink_set_port_modes(mask);
@@ -1042,7 +1042,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
phylink_set(mask, 10baseT_Half);
phylink_set(mask, 10baseT_Full);
phylink_set(mask, 100baseT_Half);
@@ -1567,6 +2365,11 @@ mt753x_phylink_validate(struct dsa_switc
@@ -1568,6 +2366,11 @@ mt753x_phylink_validate(struct dsa_switc
linkmode_and(supported, supported, mask);
linkmode_and(state->advertising, state->advertising, mask);
@@ -1054,7 +1054,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
}
static int
@@ -1657,6 +2460,63 @@ static int mt7530_set_mac_eee(struct dsa
@@ -1658,6 +2461,63 @@ static int mt7530_set_mac_eee(struct dsa
return 0;
}
@@ -1118,7 +1118,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
static int
mt753x_phylink_mac_link_state(struct dsa_switch *ds, int port,
struct phylink_link_state *state)
@@ -1710,13 +2570,14 @@ static const struct dsa_switch_ops mt753
@@ -1711,13 +2571,14 @@ static const struct dsa_switch_ops mt753
.port_vlan_prepare = mt7530_port_vlan_prepare,
.port_vlan_add = mt7530_port_vlan_add,
.port_vlan_del = mt7530_port_vlan_del,
@@ -1137,7 +1137,7 @@ Signed-off-by: Sean Wang <sean.wang@mediatek.com>
.get_mac_eee = mt7530_get_mac_eee,
.set_mac_eee = mt7530_set_mac_eee,
};
@@ -1744,11 +2605,26 @@ static const struct mt753x_info mt753x_t
@@ -1745,11 +2606,26 @@ static const struct mt753x_info mt753x_t
.mac_port_get_state = mt7530_phylink_mac_link_state,
.mac_port_config = mt7530_mac_config,
},

View File

@@ -19,7 +19,7 @@
},
[PORT_NPCM] = {
.name = "Nuvoton 16550",
@@ -2591,6 +2591,11 @@ serial8250_do_set_termios(struct uart_po
@@ -2597,6 +2597,11 @@ serial8250_do_set_termios(struct uart_po
unsigned long flags;
unsigned int baud, quot, frac = 0;

View File

@@ -69,7 +69,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
/* J6 */
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -126,10 +126,6 @@
@@ -127,10 +127,6 @@
};
};

View File

@@ -37,7 +37,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -132,7 +132,6 @@
@@ -133,7 +133,6 @@
status = "okay";
max-link-speed = <2>;
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;

View File

@@ -24,7 +24,7 @@ Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
--- a/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
+++ b/arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts
@@ -130,7 +130,6 @@
@@ -131,7 +131,6 @@
pinctrl-names = "default";
pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>;
status = "okay";

View File

@@ -13,7 +13,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
--- a/drivers/pci/controller/pci-mvebu.c
+++ b/drivers/pci/controller/pci-mvebu.c
@@ -928,6 +928,7 @@ static int mvebu_pcie_powerup(struct mve
@@ -936,6 +936,7 @@ static int mvebu_pcie_powerup(struct mve
if (port->reset_gpio) {
u32 reset_udelay = PCI_PM_D3COLD_WAIT * 1000;
@@ -21,7 +21,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
of_property_read_u32(port->dn, "reset-delay-us",
&reset_udelay);
@@ -935,7 +936,13 @@ static int mvebu_pcie_powerup(struct mve
@@ -943,7 +944,13 @@ static int mvebu_pcie_powerup(struct mve
udelay(100);
gpiod_set_value_cansleep(port->reset_gpio, 0);
@@ -36,7 +36,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
}
return 0;
@@ -1099,15 +1106,16 @@ static int mvebu_pcie_probe(struct platf
@@ -1107,15 +1114,16 @@ static int mvebu_pcie_probe(struct platf
if (!child)
continue;

View File

@@ -1,107 +0,0 @@
From 35639bac13927d1476398b740b11cbed0ee3ddb2 Mon Sep 17 00:00:00 2001
From: Robert Marko <robert.marko@sartura.hr>
Date: Tue, 18 May 2021 13:24:30 +0200
Subject: [PATCH] Revert "cpufreq: armada-37xx: Fix setting TBG parent for load
levels"
This reverts commit a13b110e7c9e0dc2edcc7a19d4255fc88abd83cc.
This patch actually corrects the things so that 1 or 1.2GHz models would
actually get scaled to their native frequency.
However, due to a AVS setting voltages too low this will cause random
crashes on 1.2GHz models.
So, until a new safe for everybody voltage is agreed on
lets revert the patch.
Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---
drivers/cpufreq/armada-37xx-cpufreq.c | 35 +++++++++------------------
1 file changed, 12 insertions(+), 23 deletions(-)
--- a/drivers/cpufreq/armada-37xx-cpufreq.c
+++ b/drivers/cpufreq/armada-37xx-cpufreq.c
@@ -25,10 +25,6 @@
#include "cpufreq-dt.h"
-/* Clk register set */
-#define ARMADA_37XX_CLK_TBG_SEL 0
-#define ARMADA_37XX_CLK_TBG_SEL_CPU_OFF 22
-
/* Power management in North Bridge register set */
#define ARMADA_37XX_NB_L0L1 0x18
#define ARMADA_37XX_NB_L2L3 0x1C
@@ -126,15 +122,10 @@ static struct armada_37xx_dvfs *armada_3
* will be configured then the DVFS will be enabled.
*/
static void __init armada37xx_cpufreq_dvfs_setup(struct regmap *base,
- struct regmap *clk_base, u8 *divider)
+ struct clk *clk, u8 *divider)
{
- u32 cpu_tbg_sel;
int load_lvl;
-
- /* Determine to which TBG clock is CPU connected */
- regmap_read(clk_base, ARMADA_37XX_CLK_TBG_SEL, &cpu_tbg_sel);
- cpu_tbg_sel >>= ARMADA_37XX_CLK_TBG_SEL_CPU_OFF;
- cpu_tbg_sel &= ARMADA_37XX_NB_TBG_SEL_MASK;
+ struct clk *parent;
for (load_lvl = 0; load_lvl < LOAD_LEVEL_NR; load_lvl++) {
unsigned int reg, mask, val, offset = 0;
@@ -153,11 +144,6 @@ static void __init armada37xx_cpufreq_dv
mask = (ARMADA_37XX_NB_CLK_SEL_MASK
<< ARMADA_37XX_NB_CLK_SEL_OFF);
- /* Set TBG index, for all levels we use the same TBG */
- val = cpu_tbg_sel << ARMADA_37XX_NB_TBG_SEL_OFF;
- mask = (ARMADA_37XX_NB_TBG_SEL_MASK
- << ARMADA_37XX_NB_TBG_SEL_OFF);
-
/*
* Set cpu divider based on the pre-computed array in
* order to have balanced step.
@@ -176,6 +162,14 @@ static void __init armada37xx_cpufreq_dv
regmap_update_bits(base, reg, mask, val);
}
+
+ /*
+ * Set cpu clock source, for all the level we keep the same
+ * clock source that the one already configured. For this one
+ * we need to use the clock framework
+ */
+ parent = clk_get_parent(clk);
+ clk_set_parent(clk, parent);
}
/*
@@ -401,16 +395,11 @@ static int __init armada37xx_cpufreq_dri
struct platform_device *pdev;
unsigned long freq;
unsigned int cur_frequency, base_frequency;
- struct regmap *nb_clk_base, *nb_pm_base, *avs_base;
+ struct regmap *nb_pm_base, *avs_base;
struct device *cpu_dev;
int load_lvl, ret;
struct clk *clk, *parent;
- nb_clk_base =
- syscon_regmap_lookup_by_compatible("marvell,armada-3700-periph-clock-nb");
- if (IS_ERR(nb_clk_base))
- return -ENODEV;
-
nb_pm_base =
syscon_regmap_lookup_by_compatible("marvell,armada-3700-nb-pm");
@@ -487,7 +476,7 @@ static int __init armada37xx_cpufreq_dri
armada37xx_cpufreq_avs_configure(avs_base, dvfs);
armada37xx_cpufreq_avs_setup(avs_base, dvfs);
- armada37xx_cpufreq_dvfs_setup(nb_pm_base, nb_clk_base, dvfs->divider);
+ armada37xx_cpufreq_dvfs_setup(nb_pm_base, clk, dvfs->divider);
clk_put(clk);
for (load_lvl = ARMADA_37XX_DVFS_LOAD_0; load_lvl < LOAD_LEVEL_NR;

View File

@@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
#include <linux/platform_data/x86/apple.h>
#include <linux/pm_runtime.h>
#include <linux/suspend.h>
@@ -5727,3 +5728,34 @@ static void apex_pci_fixup_class(struct
@@ -5728,3 +5729,34 @@ static void apex_pci_fixup_class(struct
}
DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);

View File

@@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
#include <linux/crc32.h>
#include <linux/if_vlan.h>
#include <linux/uaccess.h>
@@ -4335,6 +4336,22 @@ static void rtl_tally_reset(struct r8152
@@ -4336,6 +4337,22 @@ static void rtl_tally_reset(struct r8152
ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
}
@@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
static void r8152b_init(struct r8152 *tp)
{
u32 ocp_data;
@@ -4376,6 +4393,8 @@ static void r8152b_init(struct r8152 *tp
@@ -4377,6 +4394,8 @@ static void r8152b_init(struct r8152 *tp
ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
@@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
}
static void r8153_init(struct r8152 *tp)
@@ -4510,6 +4529,8 @@ static void r8153_init(struct r8152 *tp)
@@ -4511,6 +4530,8 @@ static void r8153_init(struct r8152 *tp)
tp->coalesce = COALESCE_SLOW;
break;
}
@@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
}
static void r8153b_init(struct r8152 *tp)
@@ -4586,6 +4607,8 @@ static void r8153b_init(struct r8152 *tp
@@ -4587,6 +4608,8 @@ static void r8153b_init(struct r8152 *tp
rtl_tally_reset(tp);
tp->coalesce = 15000; /* 15 us */

View File

@@ -310,8 +310,8 @@ CONFIG_ND_CLAIM=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NET_FAILOVER=y
CONFIG_NET_FLOW_LIMIT=y
CONFIG_NR_CPUS=8
CONFIG_NR_CPUS_DEFAULT=64
CONFIG_NR_CPUS=512
CONFIG_NR_CPUS_DEFAULT=512
CONFIG_NR_CPUS_RANGE_BEGIN=2
CONFIG_NR_CPUS_RANGE_END=512
# CONFIG_NUMA is not set

View File

@@ -14,7 +14,7 @@ Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
--- a/drivers/platform/x86/pcengines-apuv2.c
+++ b/drivers/platform/x86/pcengines-apuv2.c
@@ -186,6 +186,33 @@ static const struct dmi_system_id apu_gp
@@ -188,6 +188,33 @@ static const struct dmi_system_id apu_gp
},
.driver_data = (void *)&board_apu2,
},

View File

@@ -1 +1 @@
r16256-2d5ee43dc6
r16279-5cc0535800

View File

@@ -1 +1 @@
1627752061
1630448408