endif
LINUX_VERSION-5.4 = .162
-LINUX_VERSION-5.10 = .82
+LINUX_VERSION-5.10 = .83
LINUX_KERNEL_HASH-5.4.162 = c12d72ddaac78189305a5e98825295ecb02282970033b052276035e83189e25b
-LINUX_KERNEL_HASH-5.10.82 = d66f7c7eed02f84ae550b3c91a26c70eea13682a6d672432f07bce66ff8ce350
+LINUX_KERNEL_HASH-5.10.83 = ef259a43f33ddb56001283f4f4e50af29b8a48fa066aed7371a90ebf38c29b70
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
}
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
-@@ -5494,7 +5494,7 @@ static void port_event(struct usb_hub *h
+@@ -5503,7 +5503,7 @@ static void port_event(struct usb_hub *h
port_dev->over_current_count++;
port_over_current_notify(port_dev);
#define MAX_TUNING_LOOP 40
-@@ -3133,7 +3133,7 @@ static void sdhci_timeout_timer(struct t
+@@ -3145,7 +3145,7 @@ static void sdhci_timeout_timer(struct t
spin_lock_irqsave(&host->lock, flags);
if (host->cmd && !sdhci_data_line_cmd(host->cmd)) {
mmc_hostname(host->mmc));
sdhci_dumpregs(host);
-@@ -3155,7 +3155,7 @@ static void sdhci_timeout_data_timer(str
+@@ -3167,7 +3167,7 @@ static void sdhci_timeout_data_timer(str
if (host->data || host->data_cmd ||
(host->cmd && sdhci_data_line_cmd(host->cmd))) {
#include <video/mipi_display.h>
-@@ -1194,6 +1196,7 @@ static struct fbtft_platform_data *fbtft
+@@ -1187,6 +1189,7 @@ static struct fbtft_platform_data *fbtft
* @display: Display properties
* @sdev: SPI device
* @pdev: Platform device
*
* Allocates, initializes and registers a framebuffer
*
-@@ -1203,12 +1206,15 @@ static struct fbtft_platform_data *fbtft
+@@ -1196,12 +1199,15 @@ static struct fbtft_platform_data *fbtft
*/
int fbtft_probe_common(struct fbtft_display *display,
struct spi_device *sdev,
int ret;
if (sdev)
-@@ -1224,6 +1230,14 @@ int fbtft_probe_common(struct fbtft_disp
+@@ -1217,6 +1223,14 @@ int fbtft_probe_common(struct fbtft_disp
pdata = fbtft_properties_read(dev);
if (IS_ERR(pdata))
return PTR_ERR(pdata);
--- a/arch/arm/boot/dts/bcm2711.dtsi
+++ b/arch/arm/boot/dts/bcm2711.dtsi
-@@ -503,8 +503,8 @@
+@@ -509,8 +509,8 @@
msi-controller;
msi-parent = <&pcie0>;
--- a/arch/arm/boot/dts/bcm2711.dtsi
+++ b/arch/arm/boot/dts/bcm2711.dtsi
-@@ -554,6 +554,7 @@
+@@ -560,6 +560,7 @@
&dsi1 {
interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
status = "disabled";
};
-@@ -1106,7 +1106,3 @@
+@@ -1112,7 +1112,3 @@
&usb {
interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -265,7 +265,7 @@
+@@ -267,7 +267,7 @@
interrupt-parent = <&gic>;
#usb-cells = <0>;
compatible = "generic-ehci";
-@@ -287,7 +287,7 @@
+@@ -289,7 +289,7 @@
};
};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -318,7 +318,7 @@
+@@ -320,7 +320,7 @@
interrupt-parent = <&gic>;
};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -428,7 +428,7 @@
+@@ -430,7 +430,7 @@
#address-cells = <1>;
#size-cells = <1>;
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -428,6 +428,26 @@
+@@ -430,6 +430,26 @@
#address-cells = <1>;
#size-cells = <1>;
pinctrl: pin-controller@1c0 {
compatible = "brcm,bcm4708-pinmux";
reg = <0x1c0 0x24>;
-@@ -454,32 +474,13 @@
+@@ -456,32 +476,13 @@
function = "uart1";
};
};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -483,7 +483,7 @@
+@@ -485,7 +485,7 @@
};
};
+};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -484,7 +484,7 @@
+@@ -486,7 +486,7 @@
};
srab: ethernet-switch@18007000 {
label = "lan4";
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -490,6 +490,10 @@
+@@ -492,6 +492,10 @@
status = "disabled";
/* ports are defined in board DTS */
#address-cells = <1>;
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -501,7 +501,7 @@
+@@ -503,7 +503,7 @@
reg = <0x18004000 0x14>;
};
};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -458,18 +458,18 @@
+@@ -460,18 +460,18 @@
function = "spi";
};
compatible = "simple-bus";
ranges = <0x00000000 0x19000000 0x00023000>;
#address-cells = <1>;
-@@ -369,7 +369,7 @@
+@@ -371,7 +371,7 @@
#address-cells = <1>;
};
compatible = "mdio-mux-mmioreg";
mdio-parent-bus = <&mdio>;
#address-cells = <1>;
-@@ -415,7 +415,7 @@
+@@ -417,7 +417,7 @@
status = "disabled";
};
--- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -370,7 +370,7 @@
+@@ -372,7 +372,7 @@
};
mdio-mux@18003000 {
+++ /dev/null
-From 6e238362b9793bf334c9bed2291b571cbbc75b0b Mon Sep 17 00:00:00 2001
-From: Florian Fainelli <f.fainelli@gmail.com>
-Date: Wed, 27 Oct 2021 12:37:29 -0700
-Subject: [PATCH] ARM: dts: BCM5301X: Fix I2C controller interrupt
-
-The I2C interrupt controller line is off by 32 because the datasheet
-describes interrupt inputs into the GIC which are for Shared Peripheral
-Interrupts and are starting at offset 32. The ARM GIC binding expects
-the SPI interrupts to be numbered from 0 relative to the SPI base.
-
-Fixes: bb097e3e0045 ("ARM: dts: BCM5301X: Add I2C support to the DT")
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
-Tested-by: Christian Lamparter <chunkeey@gmail.com>
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm/boot/dts/bcm5301x.dtsi | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/arch/arm/boot/dts/bcm5301x.dtsi
-+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -408,7 +408,7 @@
- i2c0: i2c@18009000 {
- compatible = "brcm,iproc-i2c";
- reg = <0x18009000 0x50>;
-- interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
- #address-cells = <1>;
- #size-cells = <0>;
- clock-frequency = <100000>;
+++ /dev/null
-From acead95bf77a34cae7ff04dd99387046310cca0d Mon Sep 17 00:00:00 2001
-From: Florian Fainelli <f.fainelli@gmail.com>
-Date: Thu, 28 Oct 2021 09:46:53 -0700
-Subject: [PATCH] ARM: dts: BCM5301X: Add interrupt properties to GPIO node
-
-The GPIO controller is also an interrupt controller provider and is
-currently missing the appropriate 'interrupt-controller' and
-'#interrupt-cells' properties to denote that.
-
-Fixes: fb026d3de33b ("ARM: BCM5301X: Add Broadcom's bus-axi to the DTS file")
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm/boot/dts/bcm5301x.dtsi | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/arch/arm/boot/dts/bcm5301x.dtsi
-+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -242,6 +242,8 @@
-
- gpio-controller;
- #gpio-cells = <2>;
-+ interrupt-controller;
-+ #interrupt-cells = <2>;
- };
-
- pcie0: pcie@12000 {
#define NET_DEVICE_PATH_STACK_MAX 5
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
-@@ -767,6 +767,20 @@ static int vlan_dev_get_iflink(const str
+@@ -770,6 +770,20 @@ static int vlan_dev_get_iflink(const str
return real_dev->ifindex;
}
static const struct ethtool_ops vlan_ethtool_ops = {
.get_link_ksettings = vlan_ethtool_get_link_ksettings,
.get_drvinfo = vlan_ethtool_get_drvinfo,
-@@ -805,6 +819,7 @@ static const struct net_device_ops vlan_
+@@ -808,6 +822,7 @@ static const struct net_device_ops vlan_
#endif
.ndo_fix_features = vlan_dev_fix_features,
.ndo_get_iflink = vlan_dev_get_iflink,
enum tc_setup_type {
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
-@@ -777,6 +777,12 @@ static int vlan_dev_fill_forward_path(st
+@@ -780,6 +780,12 @@ static int vlan_dev_fill_forward_path(st
path->encap.proto = vlan->vlan_proto;
path->dev = ctx->dev;
ctx->dev = vlan->real_dev;
}
--- a/drivers/net/ethernet/microchip/lan743x_main.c
+++ b/drivers/net/ethernet/microchip/lan743x_main.c
-@@ -2837,7 +2837,6 @@ static int lan743x_pcidev_probe(struct p
+@@ -2831,7 +2831,6 @@ static int lan743x_pcidev_probe(struct p
{
struct lan743x_adapter *adapter = NULL;
struct net_device *netdev = NULL;
int ret = -ENODEV;
netdev = devm_alloc_etherdev(&pdev->dev,
-@@ -2854,9 +2853,7 @@ static int lan743x_pcidev_probe(struct p
+@@ -2848,9 +2847,7 @@ static int lan743x_pcidev_probe(struct p
NETIF_MSG_IFDOWN | NETIF_MSG_TX_QUEUED;
netdev->max_mtu = LAN743X_MAX_FRAME_SIZE;
int irq;
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -4957,7 +4957,7 @@ int stmmac_dvr_probe(struct device *devi
+@@ -4990,7 +4990,7 @@ int stmmac_dvr_probe(struct device *devi
priv->wol_irq = res->wol_irq;
priv->lpi_irq = res->lpi_irq;
dev_set_drvdata(device, priv->dev);
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-@@ -394,7 +394,7 @@ static int stmmac_of_get_mac_mode(struct
+@@ -395,7 +395,7 @@ static int stmmac_of_get_mac_mode(struct
* set some private fields that will be used by the main at runtime.
*/
struct plat_stmmacenet_data *
{
struct device_node *np = pdev->dev.of_node;
struct plat_stmmacenet_data *plat;
-@@ -406,12 +406,12 @@ stmmac_probe_config_dt(struct platform_d
+@@ -407,12 +407,12 @@ stmmac_probe_config_dt(struct platform_d
if (!plat)
return ERR_PTR(-ENOMEM);
}
phy_mode = device_get_phy_mode(&pdev->dev);
-@@ -643,7 +643,7 @@ void stmmac_remove_config_dt(struct plat
+@@ -644,7 +644,7 @@ void stmmac_remove_config_dt(struct plat
}
#else
struct plat_stmmacenet_data *
IPC_SEM_IDS, sysvipc_sem_proc_show);
--- a/ipc/shm.c
+++ b/ipc/shm.c
-@@ -144,6 +144,8 @@ pure_initcall(ipc_ns_init);
+@@ -154,6 +154,8 @@ pure_initcall(ipc_ns_init);
void __init shm_init(void)
{
case RTN_THROW:
case RTN_UNREACHABLE:
default:
-@@ -4429,6 +4448,17 @@ static int ip6_pkt_prohibit_out(struct n
+@@ -4448,6 +4467,17 @@ static int ip6_pkt_prohibit_out(struct n
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
}
/*
* Allocate a dst for local (unicast / anycast) address.
*/
-@@ -4909,7 +4939,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -4928,7 +4958,8 @@ static int rtm_to_fib6_config(struct sk_
if (rtm->rtm_type == RTN_UNREACHABLE ||
rtm->rtm_type == RTN_BLACKHOLE ||
rtm->rtm_type == RTN_PROHIBIT ||
cfg->fc_flags |= RTF_REJECT;
if (rtm->rtm_type == RTN_LOCAL)
-@@ -6080,6 +6111,8 @@ static int ip6_route_dev_notify(struct n
+@@ -6099,6 +6130,8 @@ static int ip6_route_dev_notify(struct n
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
net->ipv6.ip6_prohibit_entry->dst.dev = dev;
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
#endif
-@@ -6091,6 +6124,7 @@ static int ip6_route_dev_notify(struct n
+@@ -6110,6 +6143,7 @@ static int ip6_route_dev_notify(struct n
in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev);
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev);
in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev);
#endif
}
-@@ -6282,6 +6316,8 @@ static int __net_init ip6_route_net_init
+@@ -6301,6 +6335,8 @@ static int __net_init ip6_route_net_init
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
net->ipv6.fib6_has_custom_rules = false;
net->ipv6.ip6_prohibit_entry = kmemdup(&ip6_prohibit_entry_template,
sizeof(*net->ipv6.ip6_prohibit_entry),
GFP_KERNEL);
-@@ -6292,11 +6328,21 @@ static int __net_init ip6_route_net_init
+@@ -6311,11 +6347,21 @@ static int __net_init ip6_route_net_init
ip6_template_metrics, true);
INIT_LIST_HEAD(&net->ipv6.ip6_prohibit_entry->rt6i_uncached);
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
ip6_template_metrics, true);
-@@ -6323,6 +6369,8 @@ out:
+@@ -6342,6 +6388,8 @@ out:
return ret;
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
out_ip6_prohibit_entry:
kfree(net->ipv6.ip6_prohibit_entry);
out_ip6_null_entry:
-@@ -6342,6 +6390,7 @@ static void __net_exit ip6_route_net_exi
+@@ -6361,6 +6409,7 @@ static void __net_exit ip6_route_net_exi
kfree(net->ipv6.ip6_null_entry);
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
kfree(net->ipv6.ip6_prohibit_entry);
kfree(net->ipv6.ip6_blk_hole_entry);
#endif
dst_entries_destroy(&net->ipv6.ip6_dst_ops);
-@@ -6419,6 +6468,9 @@ void __init ip6_route_init_special_entri
+@@ -6438,6 +6487,9 @@ void __init ip6_route_init_special_entri
init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
---
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
-@@ -146,7 +146,8 @@ pmu {
+@@ -142,7 +142,8 @@
clocks {
sleep_clk: sleep_clk {
compatible = "fixed-clock";
--- a/arch/arm/boot/dts/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq4019.dtsi
-@@ -616,6 +616,29 @@
+@@ -617,6 +617,29 @@
};
};
/ {
#address-cells = <1>;
-@@ -597,22 +598,39 @@
+@@ -598,22 +599,39 @@
ethphy0: ethernet-phy@0 {
reg = <0>;
};
cpus {
-@@ -657,6 +659,64 @@
+@@ -658,6 +660,64 @@
status = "disabled";
};
+ opp-microvolt = <1150000>;
+ clock-latency-ns = <100000>;
+ opp-level = <2>;
- };
- };
-
++ };
++ };
++
+ opp_table0: opp_table0 {
+ compatible = "operating-points-v2-kryo-cpu";
+ nvmem-cells = <&speedbin_efuse>;
+ opp-supported-hw = <0x1>;
+ clock-latency-ns = <100000>;
+ opp-level = <2>;
-+ };
-+ };
-+
+ };
+ };
+
+ thermal-zones {
+ tsens_tz_sensor0 {
+ polling-delay-passive = <0>;
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -4990,6 +4990,10 @@ int stmmac_dvr_probe(struct device *devi
+@@ -5023,6 +5023,10 @@ int stmmac_dvr_probe(struct device *devi
reset_control_reset(priv->plat->stmmac_rst);
}
/* Init MAC and get the capabilities */
ret = stmmac_hw_init(priv);
if (ret)
-@@ -5214,6 +5218,7 @@ int stmmac_dvr_remove(struct device *dev
+@@ -5247,6 +5251,7 @@ int stmmac_dvr_remove(struct device *dev
phylink_destroy(priv->phylink);
if (priv->plat->stmmac_rst)
reset_control_assert(priv->plat->stmmac_rst);
if (priv->hw->pcs != STMMAC_PCS_TBI &&
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-@@ -616,6 +616,12 @@ stmmac_probe_config_dt(struct platform_d
+@@ -617,6 +617,12 @@ stmmac_probe_config_dt(struct platform_d
plat->stmmac_rst = NULL;
}
phydev->mii_ts->link_state(phydev->mii_ts, phydev);
--- a/drivers/net/phy/phylink.c
+++ b/drivers/net/phy/phylink.c
-@@ -907,7 +907,8 @@ void phylink_destroy(struct phylink *pl)
+@@ -931,7 +931,8 @@ void phylink_destroy(struct phylink *pl)
}
EXPORT_SYMBOL_GPL(phylink_destroy);
--- a/drivers/net/phy/phylink.c
+++ b/drivers/net/phy/phylink.c
-@@ -1425,6 +1425,11 @@ int phylink_ethtool_ksettings_set(struct
+@@ -1449,6 +1449,11 @@ int phylink_ethtool_ksettings_set(struct
* the presence of a PHY, this should not be changed as that
* should be determined from the media side advertisement.
*/
return phy_ethtool_ksettings_set(pl->phydev, kset);
}
-@@ -1726,8 +1731,11 @@ int phylink_ethtool_get_eee(struct phyli
+@@ -1750,8 +1755,11 @@ int phylink_ethtool_get_eee(struct phyli
ASSERT_RTNL();
return ret;
}
-@@ -1744,8 +1752,11 @@ int phylink_ethtool_set_eee(struct phyli
+@@ -1768,8 +1776,11 @@ int phylink_ethtool_set_eee(struct phyli
ASSERT_RTNL();