mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
kernel: bump 6.6 to 6.6.36 (#12299)
This commit is contained in:
parent
6dfcc5e782
commit
79c106c720
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-6.6 = .35
|
LINUX_VERSION-6.6 = .36
|
||||||
LINUX_KERNEL_HASH-6.6.35 = fce3ee728712ed063aa8c14a8756c8ff8c7a46ba3827f61d2b04a73c7cf5dd9e
|
LINUX_KERNEL_HASH-6.6.36 = b9676828b737e8fb8eaa5198303d35d35e8df019550be153c8a42c99afe0cdd5
|
||||||
|
@ -55,7 +55,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
|||||||
#define PHY_PMA_MGBT_POLARITY 0x82
|
#define PHY_PMA_MGBT_POLARITY 0x82
|
||||||
#define PHY_MDI_MDI_X_MASK GENMASK(1, 0)
|
#define PHY_MDI_MDI_X_MASK GENMASK(1, 0)
|
||||||
#define PHY_MDI_MDI_X_NORMAL 0x3
|
#define PHY_MDI_MDI_X_NORMAL 0x3
|
||||||
@@ -260,6 +267,35 @@ out:
|
@@ -270,6 +277,35 @@ out:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -90,16 +90,4 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
|||||||
+
|
+
|
||||||
static int gpy_config_init(struct phy_device *phydev)
|
static int gpy_config_init(struct phy_device *phydev)
|
||||||
{
|
{
|
||||||
int ret;
|
/* Nothing to configure. Configuration Requirement Placeholder */
|
||||||
@@ -271,7 +307,10 @@ static int gpy_config_init(struct phy_de
|
|
||||||
|
|
||||||
/* Clear all pending interrupts */
|
|
||||||
ret = phy_read(phydev, PHY_ISTAT);
|
|
||||||
- return ret < 0 ? ret : 0;
|
|
||||||
+ if (ret < 0)
|
|
||||||
+ return ret;
|
|
||||||
+
|
|
||||||
+ return gpy_led_write(phydev);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int gpy_probe(struct phy_device *phydev)
|
|
||||||
|
@ -36,7 +36,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
// Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
|
// Lantech 8330-262D-E can operate at 2500base-X, but incorrectly report
|
||||||
// 2500MBd NRZ in their EEPROM
|
// 2500MBd NRZ in their EEPROM
|
||||||
SFP_QUIRK_M("Lantech", "8330-262D-E", sfp_quirk_2500basex),
|
SFP_QUIRK_M("Lantech", "8330-262D-E", sfp_quirk_2500basex),
|
||||||
@@ -2586,7 +2589,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
@@ -2589,7 +2592,8 @@ static void sfp_sm_main(struct sfp *sfp,
|
||||||
* or t_start_up, so assume there is a fault.
|
* or t_start_up, so assume there is a fault.
|
||||||
*/
|
*/
|
||||||
sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT,
|
sfp_sm_fault(sfp, SFP_S_INIT_TX_FAULT,
|
||||||
@ -46,7 +46,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
} else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) {
|
} else if (event == SFP_E_TIMEOUT || event == SFP_E_TX_CLEAR) {
|
||||||
init_done:
|
init_done:
|
||||||
/* Create mdiobus and start trying for PHY */
|
/* Create mdiobus and start trying for PHY */
|
||||||
@@ -2840,10 +2844,12 @@ static void sfp_check_state(struct sfp *
|
@@ -2843,10 +2847,12 @@ static void sfp_check_state(struct sfp *
|
||||||
mutex_lock(&sfp->st_mutex);
|
mutex_lock(&sfp->st_mutex);
|
||||||
state = sfp_get_state(sfp);
|
state = sfp_get_state(sfp);
|
||||||
changed = state ^ sfp->state;
|
changed = state ^ sfp->state;
|
||||||
|
@ -133,7 +133,7 @@ Subject: [PATCH] ssb_sprom: add generic kernel support for Broadcom Fallback SP
|
|||||||
# host support
|
# host support
|
||||||
--- a/drivers/ssb/main.c
|
--- a/drivers/ssb/main.c
|
||||||
+++ b/drivers/ssb/main.c
|
+++ b/drivers/ssb/main.c
|
||||||
@@ -1287,6 +1287,14 @@ static int __init ssb_modinit(void)
|
@@ -1289,6 +1289,14 @@ static int __init ssb_modinit(void)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
--- a/net/core/sock.c
|
--- a/net/core/sock.c
|
||||||
+++ b/net/core/sock.c
|
+++ b/net/core/sock.c
|
||||||
@@ -4145,6 +4145,8 @@ static __net_initdata struct pernet_oper
|
@@ -4148,6 +4148,8 @@ static __net_initdata struct pernet_oper
|
||||||
|
|
||||||
static int __init proto_init(void)
|
static int __init proto_init(void)
|
||||||
{
|
{
|
||||||
|
@ -92,7 +92,7 @@
|
|||||||
struct net_bridge_port *p;
|
struct net_bridge_port *p;
|
||||||
--- a/net/core/dev.c
|
--- a/net/core/dev.c
|
||||||
+++ b/net/core/dev.c
|
+++ b/net/core/dev.c
|
||||||
@@ -3567,9 +3567,17 @@ static int xmit_one(struct sk_buff *skb,
|
@@ -3593,9 +3593,17 @@ static int xmit_one(struct sk_buff *skb,
|
||||||
{
|
{
|
||||||
unsigned int len;
|
unsigned int len;
|
||||||
int rc;
|
int rc;
|
||||||
@ -111,7 +111,7 @@
|
|||||||
|
|
||||||
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
||||||
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
||||||
@@ -5308,6 +5316,11 @@ void netdev_rx_handler_unregister(struct
|
@@ -5355,6 +5363,11 @@ void netdev_rx_handler_unregister(struct
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
||||||
|
|
||||||
@ -123,7 +123,7 @@
|
|||||||
/*
|
/*
|
||||||
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
||||||
* the special handling of PFMEMALLOC skbs.
|
* the special handling of PFMEMALLOC skbs.
|
||||||
@@ -5356,6 +5369,10 @@ static int __netif_receive_skb_core(stru
|
@@ -5403,6 +5416,10 @@ static int __netif_receive_skb_core(stru
|
||||||
int ret = NET_RX_DROP;
|
int ret = NET_RX_DROP;
|
||||||
__be16 type;
|
__be16 type;
|
||||||
|
|
||||||
@ -134,7 +134,7 @@
|
|||||||
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
||||||
|
|
||||||
trace_netif_receive_skb(skb);
|
trace_netif_receive_skb(skb);
|
||||||
@@ -5393,6 +5410,15 @@ another_round:
|
@@ -5440,6 +5457,15 @@ another_round:
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
#include <net/net_namespace.h>
|
#include <net/net_namespace.h>
|
||||||
#ifdef CONFIG_SYSCTL
|
#ifdef CONFIG_SYSCTL
|
||||||
#include <linux/sysctl.h>
|
#include <linux/sysctl.h>
|
||||||
@@ -461,6 +462,58 @@ static int ct_cpu_seq_show(struct seq_fi
|
@@ -458,6 +459,58 @@ static int ct_cpu_seq_show(struct seq_fi
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
static const struct seq_operations ct_cpu_seq_ops = {
|
static const struct seq_operations ct_cpu_seq_ops = {
|
||||||
.start = ct_cpu_seq_start,
|
.start = ct_cpu_seq_start,
|
||||||
.next = ct_cpu_seq_next,
|
.next = ct_cpu_seq_next,
|
||||||
@@ -474,8 +527,9 @@ static int nf_conntrack_standalone_init_
|
@@ -471,8 +524,9 @@ static int nf_conntrack_standalone_init_
|
||||||
kuid_t root_uid;
|
kuid_t root_uid;
|
||||||
kgid_t root_gid;
|
kgid_t root_gid;
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
|
|
||||||
--- a/net/netfilter/nf_conntrack_standalone.c
|
--- a/net/netfilter/nf_conntrack_standalone.c
|
||||||
+++ b/net/netfilter/nf_conntrack_standalone.c
|
+++ b/net/netfilter/nf_conntrack_standalone.c
|
||||||
@@ -633,6 +633,7 @@ enum nf_ct_sysctl_index {
|
@@ -630,6 +630,7 @@ enum nf_ct_sysctl_index {
|
||||||
#endif
|
#endif
|
||||||
NF_SYSCTL_CT_PROTO_TCP_LOOSE,
|
NF_SYSCTL_CT_PROTO_TCP_LOOSE,
|
||||||
NF_SYSCTL_CT_PROTO_TCP_LIBERAL,
|
NF_SYSCTL_CT_PROTO_TCP_LIBERAL,
|
||||||
@ -54,7 +54,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
NF_SYSCTL_CT_PROTO_TCP_IGNORE_INVALID_RST,
|
NF_SYSCTL_CT_PROTO_TCP_IGNORE_INVALID_RST,
|
||||||
NF_SYSCTL_CT_PROTO_TCP_MAX_RETRANS,
|
NF_SYSCTL_CT_PROTO_TCP_MAX_RETRANS,
|
||||||
NF_SYSCTL_CT_PROTO_TIMEOUT_UDP,
|
NF_SYSCTL_CT_PROTO_TIMEOUT_UDP,
|
||||||
@@ -840,6 +841,14 @@ static struct ctl_table nf_ct_sysctl_tab
|
@@ -834,6 +835,14 @@ static struct ctl_table nf_ct_sysctl_tab
|
||||||
.extra1 = SYSCTL_ZERO,
|
.extra1 = SYSCTL_ZERO,
|
||||||
.extra2 = SYSCTL_ONE,
|
.extra2 = SYSCTL_ONE,
|
||||||
},
|
},
|
||||||
@ -69,7 +69,7 @@ Signed-off-by: Christian 'Ansuel' Marangi <ansuelsmth@gmail.com>
|
|||||||
[NF_SYSCTL_CT_PROTO_TCP_IGNORE_INVALID_RST] = {
|
[NF_SYSCTL_CT_PROTO_TCP_IGNORE_INVALID_RST] = {
|
||||||
.procname = "nf_conntrack_tcp_ignore_invalid_rst",
|
.procname = "nf_conntrack_tcp_ignore_invalid_rst",
|
||||||
.maxlen = sizeof(u8),
|
.maxlen = sizeof(u8),
|
||||||
@@ -1050,6 +1059,7 @@ static void nf_conntrack_standalone_init
|
@@ -1035,6 +1044,7 @@ static void nf_conntrack_standalone_init
|
||||||
|
|
||||||
XASSIGN(LOOSE, &tn->tcp_loose);
|
XASSIGN(LOOSE, &tn->tcp_loose);
|
||||||
XASSIGN(LIBERAL, &tn->tcp_be_liberal);
|
XASSIGN(LIBERAL, &tn->tcp_be_liberal);
|
||||||
|
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
|
|
||||||
if (sock->type == SOCK_PACKET)
|
if (sock->type == SOCK_PACKET)
|
||||||
po->prot_hook.func = packet_rcv_spkt;
|
po->prot_hook.func = packet_rcv_spkt;
|
||||||
@@ -4034,6 +4037,16 @@ packet_setsockopt(struct socket *sock, i
|
@@ -4036,6 +4039,16 @@ packet_setsockopt(struct socket *sock, i
|
||||||
packet_sock_flag_set(po, PACKET_SOCK_QDISC_BYPASS, val);
|
packet_sock_flag_set(po, PACKET_SOCK_QDISC_BYPASS, val);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
|||||||
default:
|
default:
|
||||||
return -ENOPROTOOPT;
|
return -ENOPROTOOPT;
|
||||||
}
|
}
|
||||||
@@ -4093,6 +4106,13 @@ static int packet_getsockopt(struct sock
|
@@ -4095,6 +4108,13 @@ static int packet_getsockopt(struct sock
|
||||||
case PACKET_VNET_HDR_SZ:
|
case PACKET_VNET_HDR_SZ:
|
||||||
val = READ_ONCE(po->vnet_hdr_sz);
|
val = READ_ONCE(po->vnet_hdr_sz);
|
||||||
break;
|
break;
|
||||||
|
@ -138,7 +138,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
static const struct rt6_info ip6_blk_hole_entry_template = {
|
static const struct rt6_info ip6_blk_hole_entry_template = {
|
||||||
.dst = {
|
.dst = {
|
||||||
.__rcuref = RCUREF_INIT(1),
|
.__rcuref = RCUREF_INIT(1),
|
||||||
@@ -1038,6 +1052,7 @@ static const int fib6_prop[RTN_MAX + 1]
|
@@ -1040,6 +1054,7 @@ static const int fib6_prop[RTN_MAX + 1]
|
||||||
[RTN_BLACKHOLE] = -EINVAL,
|
[RTN_BLACKHOLE] = -EINVAL,
|
||||||
[RTN_UNREACHABLE] = -EHOSTUNREACH,
|
[RTN_UNREACHABLE] = -EHOSTUNREACH,
|
||||||
[RTN_PROHIBIT] = -EACCES,
|
[RTN_PROHIBIT] = -EACCES,
|
||||||
@ -146,7 +146,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
[RTN_THROW] = -EAGAIN,
|
[RTN_THROW] = -EAGAIN,
|
||||||
[RTN_NAT] = -EINVAL,
|
[RTN_NAT] = -EINVAL,
|
||||||
[RTN_XRESOLVE] = -EINVAL,
|
[RTN_XRESOLVE] = -EINVAL,
|
||||||
@@ -1073,6 +1088,10 @@ static void ip6_rt_init_dst_reject(struc
|
@@ -1075,6 +1090,10 @@ static void ip6_rt_init_dst_reject(struc
|
||||||
rt->dst.output = ip6_pkt_prohibit_out;
|
rt->dst.output = ip6_pkt_prohibit_out;
|
||||||
rt->dst.input = ip6_pkt_prohibit;
|
rt->dst.input = ip6_pkt_prohibit;
|
||||||
break;
|
break;
|
||||||
@ -157,7 +157,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
case RTN_THROW:
|
case RTN_THROW:
|
||||||
case RTN_UNREACHABLE:
|
case RTN_UNREACHABLE:
|
||||||
default:
|
default:
|
||||||
@@ -4544,6 +4563,17 @@ static int ip6_pkt_prohibit_out(struct n
|
@@ -4546,6 +4565,17 @@ static int ip6_pkt_prohibit_out(struct n
|
||||||
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
|
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -175,7 +175,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
/*
|
/*
|
||||||
* Allocate a dst for local (unicast / anycast) address.
|
* Allocate a dst for local (unicast / anycast) address.
|
||||||
*/
|
*/
|
||||||
@@ -5035,7 +5065,8 @@ static int rtm_to_fib6_config(struct sk_
|
@@ -5037,7 +5067,8 @@ static int rtm_to_fib6_config(struct sk_
|
||||||
if (rtm->rtm_type == RTN_UNREACHABLE ||
|
if (rtm->rtm_type == RTN_UNREACHABLE ||
|
||||||
rtm->rtm_type == RTN_BLACKHOLE ||
|
rtm->rtm_type == RTN_BLACKHOLE ||
|
||||||
rtm->rtm_type == RTN_PROHIBIT ||
|
rtm->rtm_type == RTN_PROHIBIT ||
|
||||||
@ -185,7 +185,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
cfg->fc_flags |= RTF_REJECT;
|
cfg->fc_flags |= RTF_REJECT;
|
||||||
|
|
||||||
if (rtm->rtm_type == RTN_LOCAL)
|
if (rtm->rtm_type == RTN_LOCAL)
|
||||||
@@ -6282,6 +6313,8 @@ static int ip6_route_dev_notify(struct n
|
@@ -6284,6 +6315,8 @@ static int ip6_route_dev_notify(struct n
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
net->ipv6.ip6_prohibit_entry->dst.dev = dev;
|
net->ipv6.ip6_prohibit_entry->dst.dev = dev;
|
||||||
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
|
net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
|
||||||
@ -194,7 +194,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
|
net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
|
||||||
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
|
net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
|
||||||
#endif
|
#endif
|
||||||
@@ -6293,6 +6326,7 @@ static int ip6_route_dev_notify(struct n
|
@@ -6295,6 +6328,7 @@ static int ip6_route_dev_notify(struct n
|
||||||
in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev);
|
in6_dev_put_clear(&net->ipv6.ip6_null_entry->rt6i_idev);
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev);
|
in6_dev_put_clear(&net->ipv6.ip6_prohibit_entry->rt6i_idev);
|
||||||
@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev);
|
in6_dev_put_clear(&net->ipv6.ip6_blk_hole_entry->rt6i_idev);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -6493,6 +6527,8 @@ static int __net_init ip6_route_net_init
|
@@ -6495,6 +6529,8 @@ static int __net_init ip6_route_net_init
|
||||||
|
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
net->ipv6.fib6_has_custom_rules = false;
|
net->ipv6.fib6_has_custom_rules = false;
|
||||||
@ -211,7 +211,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
net->ipv6.ip6_prohibit_entry = kmemdup(&ip6_prohibit_entry_template,
|
net->ipv6.ip6_prohibit_entry = kmemdup(&ip6_prohibit_entry_template,
|
||||||
sizeof(*net->ipv6.ip6_prohibit_entry),
|
sizeof(*net->ipv6.ip6_prohibit_entry),
|
||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
@@ -6503,11 +6539,21 @@ static int __net_init ip6_route_net_init
|
@@ -6505,11 +6541,21 @@ static int __net_init ip6_route_net_init
|
||||||
ip6_template_metrics, true);
|
ip6_template_metrics, true);
|
||||||
INIT_LIST_HEAD(&net->ipv6.ip6_prohibit_entry->dst.rt_uncached);
|
INIT_LIST_HEAD(&net->ipv6.ip6_prohibit_entry->dst.rt_uncached);
|
||||||
|
|
||||||
@ -234,7 +234,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
|
net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
|
||||||
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
|
dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
|
||||||
ip6_template_metrics, true);
|
ip6_template_metrics, true);
|
||||||
@@ -6534,6 +6580,8 @@ out:
|
@@ -6536,6 +6582,8 @@ out:
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
@ -243,7 +243,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
out_ip6_prohibit_entry:
|
out_ip6_prohibit_entry:
|
||||||
kfree(net->ipv6.ip6_prohibit_entry);
|
kfree(net->ipv6.ip6_prohibit_entry);
|
||||||
out_ip6_null_entry:
|
out_ip6_null_entry:
|
||||||
@@ -6553,6 +6601,7 @@ static void __net_exit ip6_route_net_exi
|
@@ -6555,6 +6603,7 @@ static void __net_exit ip6_route_net_exi
|
||||||
kfree(net->ipv6.ip6_null_entry);
|
kfree(net->ipv6.ip6_null_entry);
|
||||||
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
#ifdef CONFIG_IPV6_MULTIPLE_TABLES
|
||||||
kfree(net->ipv6.ip6_prohibit_entry);
|
kfree(net->ipv6.ip6_prohibit_entry);
|
||||||
@ -251,7 +251,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
|||||||
kfree(net->ipv6.ip6_blk_hole_entry);
|
kfree(net->ipv6.ip6_blk_hole_entry);
|
||||||
#endif
|
#endif
|
||||||
dst_entries_destroy(&net->ipv6.ip6_dst_ops);
|
dst_entries_destroy(&net->ipv6.ip6_dst_ops);
|
||||||
@@ -6636,6 +6685,9 @@ void __init ip6_route_init_special_entri
|
@@ -6638,6 +6687,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_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->dst.dev = init_net.loopback_dev;
|
||||||
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
|
init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
|
||||||
|
@ -14,7 +14,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
|
|
||||||
--- a/drivers/net/phy/mxl-gpy.c
|
--- a/drivers/net/phy/mxl-gpy.c
|
||||||
+++ b/drivers/net/phy/mxl-gpy.c
|
+++ b/drivers/net/phy/mxl-gpy.c
|
||||||
@@ -386,8 +386,11 @@ static bool gpy_2500basex_chk(struct phy
|
@@ -385,8 +385,11 @@ static bool gpy_2500basex_chk(struct phy
|
||||||
|
|
||||||
phydev->speed = SPEED_2500;
|
phydev->speed = SPEED_2500;
|
||||||
phydev->interface = PHY_INTERFACE_MODE_2500BASEX;
|
phydev->interface = PHY_INTERFACE_MODE_2500BASEX;
|
||||||
@ -28,7 +28,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -438,6 +441,14 @@ static int gpy_config_aneg(struct phy_de
|
@@ -437,6 +440,14 @@ static int gpy_config_aneg(struct phy_de
|
||||||
u32 adv;
|
u32 adv;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@ -43,7 +43,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
if (phydev->autoneg == AUTONEG_DISABLE) {
|
if (phydev->autoneg == AUTONEG_DISABLE) {
|
||||||
/* Configure half duplex with genphy_setup_forced,
|
/* Configure half duplex with genphy_setup_forced,
|
||||||
* because genphy_c45_pma_setup_forced does not support.
|
* because genphy_c45_pma_setup_forced does not support.
|
||||||
@@ -560,6 +571,8 @@ static int gpy_update_interface(struct p
|
@@ -559,6 +570,8 @@ static int gpy_update_interface(struct p
|
||||||
switch (phydev->speed) {
|
switch (phydev->speed) {
|
||||||
case SPEED_2500:
|
case SPEED_2500:
|
||||||
phydev->interface = PHY_INTERFACE_MODE_2500BASEX;
|
phydev->interface = PHY_INTERFACE_MODE_2500BASEX;
|
||||||
@ -52,7 +52,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
ret = phy_modify_mmd(phydev, MDIO_MMD_VEND1, VSPEC1_SGMII_CTRL,
|
ret = phy_modify_mmd(phydev, MDIO_MMD_VEND1, VSPEC1_SGMII_CTRL,
|
||||||
VSPEC1_SGMII_CTRL_ANEN, 0);
|
VSPEC1_SGMII_CTRL_ANEN, 0);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@@ -573,7 +586,7 @@ static int gpy_update_interface(struct p
|
@@ -572,7 +585,7 @@ static int gpy_update_interface(struct p
|
||||||
case SPEED_100:
|
case SPEED_100:
|
||||||
case SPEED_10:
|
case SPEED_10:
|
||||||
phydev->interface = PHY_INTERFACE_MODE_SGMII;
|
phydev->interface = PHY_INTERFACE_MODE_SGMII;
|
||||||
|
@ -29,7 +29,7 @@ Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
|
|||||||
|
|
||||||
--- a/drivers/thermal/mediatek/lvts_thermal.c
|
--- a/drivers/thermal/mediatek/lvts_thermal.c
|
||||||
+++ b/drivers/thermal/mediatek/lvts_thermal.c
|
+++ b/drivers/thermal/mediatek/lvts_thermal.c
|
||||||
@@ -1243,7 +1243,7 @@ static int lvts_probe(struct platform_de
|
@@ -1247,7 +1247,7 @@ static int lvts_probe(struct platform_de
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
|
|||||||
{
|
{
|
||||||
struct lvts_domain *lvts_td;
|
struct lvts_domain *lvts_td;
|
||||||
int i;
|
int i;
|
||||||
@@ -1254,8 +1254,6 @@ static int lvts_remove(struct platform_d
|
@@ -1258,8 +1258,6 @@ static int lvts_remove(struct platform_d
|
||||||
lvts_ctrl_set_enable(&lvts_td->lvts_ctrl[i], false);
|
lvts_ctrl_set_enable(&lvts_td->lvts_ctrl[i], false);
|
||||||
|
|
||||||
lvts_debugfs_exit(lvts_td);
|
lvts_debugfs_exit(lvts_td);
|
||||||
@ -47,7 +47,7 @@ Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
|
|||||||
}
|
}
|
||||||
|
|
||||||
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
||||||
@@ -1356,7 +1354,7 @@ MODULE_DEVICE_TABLE(of, lvts_of_match);
|
@@ -1360,7 +1358,7 @@ MODULE_DEVICE_TABLE(of, lvts_of_match);
|
||||||
|
|
||||||
static struct platform_driver lvts_driver = {
|
static struct platform_driver lvts_driver = {
|
||||||
.probe = lvts_probe,
|
.probe = lvts_probe,
|
||||||
|
@ -135,8 +135,8 @@ Link: https://lore.kernel.org/r/20230922055020.6436-4-linux@fw-web.de
|
|||||||
{
|
{
|
||||||
u32 gt;
|
u32 gt;
|
||||||
|
|
||||||
@@ -703,7 +712,7 @@ static int lvts_golden_temp_init(struct
|
@@ -707,7 +716,7 @@ static int lvts_golden_temp_init(struct
|
||||||
if (gt && gt < LVTS_GOLDEN_TEMP_MAX)
|
if (gt < LVTS_GOLDEN_TEMP_MAX)
|
||||||
golden_temp = gt;
|
golden_temp = gt;
|
||||||
|
|
||||||
- coeff_b = golden_temp * 500 + LVTS_COEFF_B;
|
- coeff_b = golden_temp * 500 + LVTS_COEFF_B;
|
||||||
@ -144,7 +144,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-4-linux@fw-web.de
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -726,7 +735,7 @@ static int lvts_ctrl_init(struct device
|
@@ -730,7 +739,7 @@ static int lvts_ctrl_init(struct device
|
||||||
* The golden temp information is contained in the first chunk
|
* The golden temp information is contained in the first chunk
|
||||||
* of efuse data.
|
* of efuse data.
|
||||||
*/
|
*/
|
||||||
@ -153,7 +153,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-4-linux@fw-web.de
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@@ -737,6 +746,7 @@ static int lvts_ctrl_init(struct device
|
@@ -741,6 +750,7 @@ static int lvts_ctrl_init(struct device
|
||||||
for (i = 0; i < lvts_data->num_lvts_ctrl; i++) {
|
for (i = 0; i < lvts_data->num_lvts_ctrl; i++) {
|
||||||
|
|
||||||
lvts_ctrl[i].base = lvts_td->base + lvts_data->lvts_ctrl[i].offset;
|
lvts_ctrl[i].base = lvts_td->base + lvts_data->lvts_ctrl[i].offset;
|
||||||
@ -161,7 +161,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-4-linux@fw-web.de
|
|||||||
|
|
||||||
ret = lvts_sensor_init(dev, &lvts_ctrl[i],
|
ret = lvts_sensor_init(dev, &lvts_ctrl[i],
|
||||||
&lvts_data->lvts_ctrl[i]);
|
&lvts_data->lvts_ctrl[i]);
|
||||||
@@ -760,7 +770,8 @@ static int lvts_ctrl_init(struct device
|
@@ -764,7 +774,8 @@ static int lvts_ctrl_init(struct device
|
||||||
* after initializing the calibration.
|
* after initializing the calibration.
|
||||||
*/
|
*/
|
||||||
lvts_ctrl[i].hw_tshut_raw_temp =
|
lvts_ctrl[i].hw_tshut_raw_temp =
|
||||||
@ -171,7 +171,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-4-linux@fw-web.de
|
|||||||
|
|
||||||
lvts_ctrl[i].low_thresh = INT_MIN;
|
lvts_ctrl[i].low_thresh = INT_MIN;
|
||||||
lvts_ctrl[i].high_thresh = INT_MIN;
|
lvts_ctrl[i].high_thresh = INT_MIN;
|
||||||
@@ -1225,6 +1236,8 @@ static int lvts_probe(struct platform_de
|
@@ -1229,6 +1240,8 @@ static int lvts_probe(struct platform_de
|
||||||
if (irq < 0)
|
if (irq < 0)
|
||||||
return irq;
|
return irq;
|
||||||
|
|
||||||
@ -180,7 +180,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-4-linux@fw-web.de
|
|||||||
ret = lvts_domain_init(dev, lvts_td, lvts_data);
|
ret = lvts_domain_init(dev, lvts_td, lvts_data);
|
||||||
if (ret)
|
if (ret)
|
||||||
return dev_err_probe(dev, ret, "Failed to initialize the lvts domain\n");
|
return dev_err_probe(dev, ret, "Failed to initialize the lvts domain\n");
|
||||||
@@ -1338,11 +1351,15 @@ static const struct lvts_ctrl_data mt819
|
@@ -1342,11 +1355,15 @@ static const struct lvts_ctrl_data mt819
|
||||||
static const struct lvts_data mt8195_lvts_mcu_data = {
|
static const struct lvts_data mt8195_lvts_mcu_data = {
|
||||||
.lvts_ctrl = mt8195_lvts_mcu_data_ctrl,
|
.lvts_ctrl = mt8195_lvts_mcu_data_ctrl,
|
||||||
.num_lvts_ctrl = ARRAY_SIZE(mt8195_lvts_mcu_data_ctrl),
|
.num_lvts_ctrl = ARRAY_SIZE(mt8195_lvts_mcu_data_ctrl),
|
||||||
|
@ -33,7 +33,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-5-linux@fw-web.de
|
|||||||
#define LVTS_HW_SHUTDOWN_MT8195 105000
|
#define LVTS_HW_SHUTDOWN_MT8195 105000
|
||||||
|
|
||||||
#define LVTS_MINIMUM_THRESHOLD 20000
|
#define LVTS_MINIMUM_THRESHOLD 20000
|
||||||
@@ -1269,6 +1272,33 @@ static void lvts_remove(struct platform_
|
@@ -1273,6 +1276,33 @@ static void lvts_remove(struct platform_
|
||||||
lvts_debugfs_exit(lvts_td);
|
lvts_debugfs_exit(lvts_td);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,7 +67,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-5-linux@fw-web.de
|
|||||||
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
||||||
{
|
{
|
||||||
.cal_offset = { 0x04, 0x07 },
|
.cal_offset = { 0x04, 0x07 },
|
||||||
@@ -1348,6 +1378,13 @@ static const struct lvts_ctrl_data mt819
|
@@ -1352,6 +1382,13 @@ static const struct lvts_ctrl_data mt819
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ Link: https://lore.kernel.org/r/20230922055020.6436-5-linux@fw-web.de
|
|||||||
static const struct lvts_data mt8195_lvts_mcu_data = {
|
static const struct lvts_data mt8195_lvts_mcu_data = {
|
||||||
.lvts_ctrl = mt8195_lvts_mcu_data_ctrl,
|
.lvts_ctrl = mt8195_lvts_mcu_data_ctrl,
|
||||||
.num_lvts_ctrl = ARRAY_SIZE(mt8195_lvts_mcu_data_ctrl),
|
.num_lvts_ctrl = ARRAY_SIZE(mt8195_lvts_mcu_data_ctrl),
|
||||||
@@ -1363,6 +1400,7 @@ static const struct lvts_data mt8195_lvt
|
@@ -1367,6 +1404,7 @@ static const struct lvts_data mt8195_lvt
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct of_device_id lvts_of_match[] = {
|
static const struct of_device_id lvts_of_match[] = {
|
||||||
|
@ -24,7 +24,7 @@ Link: https://lore.kernel.org/r/20231017190545.157282-3-bero@baylibre.com
|
|||||||
|
|
||||||
--- a/drivers/thermal/mediatek/lvts_thermal.c
|
--- a/drivers/thermal/mediatek/lvts_thermal.c
|
||||||
+++ b/drivers/thermal/mediatek/lvts_thermal.c
|
+++ b/drivers/thermal/mediatek/lvts_thermal.c
|
||||||
@@ -1299,6 +1299,38 @@ static const struct lvts_ctrl_data mt798
|
@@ -1303,6 +1303,38 @@ static const struct lvts_ctrl_data mt798
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -63,7 +63,7 @@ Link: https://lore.kernel.org/r/20231017190545.157282-3-bero@baylibre.com
|
|||||||
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
||||||
{
|
{
|
||||||
.cal_offset = { 0x04, 0x07 },
|
.cal_offset = { 0x04, 0x07 },
|
||||||
@@ -1407,12 +1439,17 @@ static const struct of_device_id lvts_of
|
@@ -1411,12 +1443,17 @@ static const struct of_device_id lvts_of
|
||||||
};
|
};
|
||||||
MODULE_DEVICE_TABLE(of, lvts_of_match);
|
MODULE_DEVICE_TABLE(of, lvts_of_match);
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ Link: https://lore.kernel.org/r/20231017190545.157282-4-bero@baylibre.com
|
|||||||
#define LVTS_HW_SHUTDOWN_MT8195 105000
|
#define LVTS_HW_SHUTDOWN_MT8195 105000
|
||||||
|
|
||||||
#define LVTS_MINIMUM_THRESHOLD 20000
|
#define LVTS_MINIMUM_THRESHOLD 20000
|
||||||
@@ -1331,6 +1332,88 @@ static int lvts_resume(struct device *de
|
@@ -1335,6 +1336,88 @@ static int lvts_resume(struct device *de
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -123,7 +123,7 @@ Link: https://lore.kernel.org/r/20231017190545.157282-4-bero@baylibre.com
|
|||||||
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
|
||||||
{
|
{
|
||||||
.cal_offset = { 0x04, 0x07 },
|
.cal_offset = { 0x04, 0x07 },
|
||||||
@@ -1417,6 +1500,16 @@ static const struct lvts_data mt7988_lvt
|
@@ -1421,6 +1504,16 @@ static const struct lvts_data mt7988_lvt
|
||||||
.temp_offset = LVTS_COEFF_B_MT7988,
|
.temp_offset = LVTS_COEFF_B_MT7988,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -140,7 +140,7 @@ Link: https://lore.kernel.org/r/20231017190545.157282-4-bero@baylibre.com
|
|||||||
static const struct lvts_data mt8195_lvts_mcu_data = {
|
static const struct lvts_data mt8195_lvts_mcu_data = {
|
||||||
.lvts_ctrl = mt8195_lvts_mcu_data_ctrl,
|
.lvts_ctrl = mt8195_lvts_mcu_data_ctrl,
|
||||||
.num_lvts_ctrl = ARRAY_SIZE(mt8195_lvts_mcu_data_ctrl),
|
.num_lvts_ctrl = ARRAY_SIZE(mt8195_lvts_mcu_data_ctrl),
|
||||||
@@ -1433,6 +1526,8 @@ static const struct lvts_data mt8195_lvt
|
@@ -1437,6 +1530,8 @@ static const struct lvts_data mt8195_lvt
|
||||||
|
|
||||||
static const struct of_device_id lvts_of_match[] = {
|
static const struct of_device_id lvts_of_match[] = {
|
||||||
{ .compatible = "mediatek,mt7988-lvts-ap", .data = &mt7988_lvts_ap_data },
|
{ .compatible = "mediatek,mt7988-lvts-ap", .data = &mt7988_lvts_ap_data },
|
||||||
|
@ -17,7 +17,7 @@ Subject: [PATCH] r8169: add LED configuration from OF
|
|||||||
#include <linux/if_vlan.h>
|
#include <linux/if_vlan.h>
|
||||||
#include <linux/in.h>
|
#include <linux/in.h>
|
||||||
#include <linux/io.h>
|
#include <linux/io.h>
|
||||||
@@ -174,6 +175,7 @@ enum rtl_registers {
|
@@ -177,6 +178,7 @@ enum rtl_registers {
|
||||||
MAR0 = 8, /* Multicast filter. */
|
MAR0 = 8, /* Multicast filter. */
|
||||||
CounterAddrLow = 0x10,
|
CounterAddrLow = 0x10,
|
||||||
CounterAddrHigh = 0x14,
|
CounterAddrHigh = 0x14,
|
||||||
@ -25,7 +25,7 @@ Subject: [PATCH] r8169: add LED configuration from OF
|
|||||||
TxDescStartAddrLow = 0x20,
|
TxDescStartAddrLow = 0x20,
|
||||||
TxDescStartAddrHigh = 0x24,
|
TxDescStartAddrHigh = 0x24,
|
||||||
TxHDescStartAddrLow = 0x28,
|
TxHDescStartAddrLow = 0x28,
|
||||||
@@ -5233,6 +5235,22 @@ static bool rtl_aspm_is_safe(struct rtl8
|
@@ -5407,6 +5409,22 @@ static bool rtl_aspm_is_safe(struct rtl8
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -48,7 +48,7 @@ Subject: [PATCH] r8169: add LED configuration from OF
|
|||||||
static int rtl_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
static int rtl_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||||
{
|
{
|
||||||
struct rtl8169_private *tp;
|
struct rtl8169_private *tp;
|
||||||
@@ -5404,6 +5422,7 @@ static int rtl_init_one(struct pci_dev *
|
@@ -5579,6 +5597,7 @@ static int rtl_init_one(struct pci_dev *
|
||||||
if (!tp->counters)
|
if (!tp->counters)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user