Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
6bd4042232
@ -5,10 +5,10 @@
|
||||
override HOSTCC = $(CC)
|
||||
|
||||
+ifneq ($(TARGET_CFLAGS),)
|
||||
+HOSTCFLAGS = $(TARGET_CFLAGS)
|
||||
+KBUILD_HOSTCFLAGS = $(TARGET_CFLAGS)
|
||||
+endif
|
||||
+ifneq ($(TARGET_LDFLAGS),)
|
||||
+HOSTLDFLAGS = $(TARGET_LDFLAGS)
|
||||
+KBUILD_HOSTLDFLAGS = $(TARGET_LDFLAGS)
|
||||
+endif
|
||||
+
|
||||
# Compile for a hosted environment on the target
|
||||
|
||||
@ -0,0 +1,10 @@
|
||||
--- a/include/linux/types.h
|
||||
+++ b/include/linux/types.h
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef _LINUX_TYPES_H
|
||||
#define _LINUX_TYPES_H
|
||||
|
||||
+typedef unsigned long long __u64;
|
||||
#include <linux/posix_types.h>
|
||||
#include <asm/types.h>
|
||||
#include <stdbool.h>
|
||||
@ -0,0 +1,45 @@
|
||||
From 8460e3230988ef2ec13ce6b69b687e941f6cdb32 Mon Sep 17 00:00:00 2001
|
||||
From: Jouni Malinen <jouni@codeaurora.org>
|
||||
Date: Tue, 8 Dec 2020 23:52:50 +0200
|
||||
Subject: [PATCH] P2P: Fix a corner case in peer addition based on PD Request
|
||||
|
||||
p2p_add_device() may remove the oldest entry if there is no room in the
|
||||
peer table for a new peer. This would result in any pointer to that
|
||||
removed entry becoming stale. A corner case with an invalid PD Request
|
||||
frame could result in such a case ending up using (read+write) freed
|
||||
memory. This could only by triggered when the peer table has reached its
|
||||
maximum size and the PD Request frame is received from the P2P Device
|
||||
Address of the oldest remaining entry and the frame has incorrect P2P
|
||||
Device Address in the payload.
|
||||
|
||||
Fix this by fetching the dev pointer again after having called
|
||||
p2p_add_device() so that the stale pointer cannot be used.
|
||||
|
||||
Fixes: 17bef1e97a50 ("P2P: Add peer entry based on Provision Discovery Request")
|
||||
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
|
||||
---
|
||||
src/p2p/p2p_pd.c | 12 +++++-------
|
||||
1 file changed, 5 insertions(+), 7 deletions(-)
|
||||
|
||||
--- a/src/p2p/p2p_pd.c
|
||||
+++ b/src/p2p/p2p_pd.c
|
||||
@@ -595,14 +595,12 @@ void p2p_process_prov_disc_req(struct p2
|
||||
goto out;
|
||||
}
|
||||
|
||||
+ dev = p2p_get_device(p2p, sa);
|
||||
if (!dev) {
|
||||
- dev = p2p_get_device(p2p, sa);
|
||||
- if (!dev) {
|
||||
- p2p_dbg(p2p,
|
||||
- "Provision Discovery device not found "
|
||||
- MACSTR, MAC2STR(sa));
|
||||
- goto out;
|
||||
- }
|
||||
+ p2p_dbg(p2p,
|
||||
+ "Provision Discovery device not found "
|
||||
+ MACSTR, MAC2STR(sa));
|
||||
+ goto out;
|
||||
}
|
||||
} else if (msg.wfd_subelems) {
|
||||
wpabuf_free(dev->info.wfd_subelems);
|
||||
@ -10,6 +10,7 @@ CONFIG_MTD_CFI=y
|
||||
CONFIG_MTD_NAND_BCH=y
|
||||
CONFIG_MTD_NAND_ECC_BCH=y
|
||||
CONFIG_MTD_NAND_FSL_ELBC=y
|
||||
CONFIG_MTD_PHYSMAP=y
|
||||
CONFIG_MTD_SPLIT_FIRMWARE=y
|
||||
CONFIG_MTD_SPLIT_FIT_FW=y
|
||||
CONFIG_MUTEX_SPIN_ON_OWNER=y
|
||||
|
||||
@ -0,0 +1,74 @@
|
||||
From 018b88eee1a2efda26ed2f09aab33ccdc40ef18f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <kabel@kernel.org>
|
||||
Date: Sun, 15 Nov 2020 14:59:17 +0100
|
||||
Subject: ARM: dts: turris-omnia: enable HW buffer management
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The buffer manager is available on Turris Omnia but needs to be
|
||||
described in device-tree to be used.
|
||||
|
||||
Signed-off-by: Marek Behún <kabel@kernel.org>
|
||||
Fixes: 26ca8b52d6e1 ("ARM: dts: add support for Turris Omnia")
|
||||
Cc: linux-arm-kernel@lists.infradead.org
|
||||
Cc: Uwe Kleine-König <uwe@kleine-koenig.org>
|
||||
Cc: Jason Cooper <jason@lakedaemon.net>
|
||||
Cc: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
Cc: Andreas Färber <afaerber@suse.de>
|
||||
Cc: Andrew Lunn <andrew@lunn.ch>
|
||||
Cc: Rob Herring <robh+dt@kernel.org>
|
||||
Cc: devicetree@vger.kernel.org
|
||||
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
---
|
||||
arch/arm/boot/dts/armada-385-turris-omnia.dts | 17 +++++++++++++++++
|
||||
1 file changed, 17 insertions(+)
|
||||
|
||||
(limited to 'arch/arm/boot/dts/armada-385-turris-omnia.dts')
|
||||
|
||||
--- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
|
||||
+++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
|
||||
@@ -84,12 +84,23 @@
|
||||
};
|
||||
};
|
||||
|
||||
+&bm {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&bm_bppi {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
/* Connected to 88E6176 switch, port 6 */
|
||||
ð0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ge0_rgmii_pins>;
|
||||
status = "okay";
|
||||
phy-mode = "rgmii";
|
||||
+ buffer-manager = <&bm>;
|
||||
+ bm,pool-long = <0>;
|
||||
+ bm,pool-short = <3>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
@@ -103,6 +114,9 @@
|
||||
pinctrl-0 = <&ge1_rgmii_pins>;
|
||||
status = "okay";
|
||||
phy-mode = "rgmii";
|
||||
+ buffer-manager = <&bm>;
|
||||
+ bm,pool-long = <1>;
|
||||
+ bm,pool-short = <3>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
@@ -115,6 +129,9 @@
|
||||
status = "okay";
|
||||
phy-mode = "sgmii";
|
||||
phy = <&phy1>;
|
||||
+ buffer-manager = <&bm>;
|
||||
+ bm,pool-long = <2>;
|
||||
+ bm,pool-short = <3>;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
@ -0,0 +1,27 @@
|
||||
From 9704292ed3230ee19dc4dd64f7484301b728ffb7 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Salvaterra <rsalvaterra@gmail.com>
|
||||
Date: Wed, 17 Feb 2021 15:19:30 +0000
|
||||
Subject: [PATCH] ARM: dts: turris-omnia: fix hardware buffer management
|
||||
|
||||
Hardware buffer management has never worked on the Turris Omnia, as the
|
||||
required MBus window hadn't been reserved. Fix thusly.
|
||||
|
||||
Fixes: 018b88eee1a2 ("ARM: dts: turris-omnia: enable HW buffer management")
|
||||
|
||||
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/armada-385-turris-omnia.dts | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
|
||||
+++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
|
||||
@@ -31,7 +31,8 @@
|
||||
ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000
|
||||
MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000
|
||||
MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000
|
||||
- MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000>;
|
||||
+ MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000
|
||||
+ MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>;
|
||||
|
||||
internal-regs {
|
||||
|
||||
@ -0,0 +1,64 @@
|
||||
From: "Marek Behún" <kabel@kernel.org>
|
||||
To: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
Cc: "Marek Behún" <kabel@kernel.org>, Rui Salvaterra <rsalvaterra@gmail.com>, "Uwe Kleine-König" <uwe@kleine-koenig.org>, linux-arm-kernel@lists.infradead.org, Andrew Lunn <andrew@lunn.ch>, stable@vger.kernel.org
|
||||
Subject: [PATCH mvebu-dt] ARM: dts: turris-omnia: configure LED[2]/INTn pin as interrupt pin
|
||||
Date: Sun, 21 Feb 2021 00:11:44 +0100
|
||||
Message-Id: <20210220231144.32325-1-kabel@kernel.org>
|
||||
X-Mailer: git-send-email 2.26.2
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Use the `marvell,reg-init` DT property to configure the LED[2]/INTn pin
|
||||
of the Marvell 88E1514 ethernet PHY on Turris Omnia into interrupt mode.
|
||||
|
||||
Without this the pin is by default in LED[2] mode, and the Marvell PHY
|
||||
driver configures LED[2] into "On - Link, Blink - Activity" mode.
|
||||
|
||||
This fixes the issue where the pca9538 GPIO/interrupt controller (which
|
||||
can't mask interrupts in HW) received too many interrupts and after a
|
||||
time started ignoring the interrupt with error message:
|
||||
IRQ 71: nobody cared
|
||||
|
||||
There is a work in progress to have the Marvell PHY driver support
|
||||
parsing PHY LED nodes from OF and registering the LEDs as Linux LED
|
||||
class devices. Once this is done the PHY driver can also automatically
|
||||
set the pin into INTn mode if it does not find LED[2] in OF.
|
||||
|
||||
Until then, though, we fix this via `marvell,reg-init` DT property.
|
||||
|
||||
Signed-off-by: Marek Behún <kabel@kernel.org>
|
||||
Reported-by: Rui Salvaterra <rsalvaterra@gmail.com>
|
||||
Fixes: 26ca8b52d6e1 ("ARM: dts: add support for Turris Omnia")
|
||||
Cc: Uwe Kleine-König <uwe@kleine-koenig.org>
|
||||
Cc: linux-arm-kernel@lists.infradead.org
|
||||
Cc: Andrew Lunn <andrew@lunn.ch>
|
||||
Cc: Gregory CLEMENT <gregory.clement@bootlin.com>
|
||||
Cc: <stable@vger.kernel.org>
|
||||
|
||||
---
|
||||
|
||||
This patch fixes bug introduced with the commit that added Turris
|
||||
Omnia's DTS (26ca8b52d6e1), but will not apply cleanly because there is
|
||||
commit 8ee4a5f4f40d which changed node name and node compatible
|
||||
property and this commit did not go into stable.
|
||||
|
||||
So either commit 8ee4a5f4f40d has also to go into stable before this, or
|
||||
this patch has to be fixed a little in order to apply to 4.14+.
|
||||
|
||||
Please let me know how should I handle this.
|
||||
|
||||
---
|
||||
arch/arm/boot/dts/armada-385-turris-omnia.dts | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
--- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
|
||||
+++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
|
||||
@@ -254,6 +254,7 @@
|
||||
status = "okay";
|
||||
compatible = "ethernet-phy-id0141.0DD1", "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
+ marvell,reg-init = <3 18 0 0x4985>;
|
||||
|
||||
/* irq is connected to &pcawan pin 7 */
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user