mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
kernel: bump 6.6 to 6.6.56 (#12530)
This commit is contained in:
parent
0b75ecd310
commit
ecaf84009c
@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-6.6 = .54
|
||||
LINUX_KERNEL_HASH-6.6.54 = 5fae869d6a24055c16ffc2d92669e3fb2b258e34d36c850bb8cf9def417ecfa0
|
||||
LINUX_VERSION-6.6 = .56
|
||||
LINUX_KERNEL_HASH-6.6.56 = f74812f78e88992c416434cb107639e13a551dbaff36bb90d6346ab16ab71a95
|
||||
|
@ -32,7 +32,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/net/core/dev.c
|
||||
+++ b/net/core/dev.c
|
||||
@@ -4473,13 +4473,7 @@ static inline void ____napi_schedule(str
|
||||
@@ -4477,13 +4477,7 @@ static inline void ____napi_schedule(str
|
||||
*/
|
||||
thread = READ_ONCE(napi->thread);
|
||||
if (thread) {
|
||||
@ -47,7 +47,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
wake_up_process(thread);
|
||||
return;
|
||||
}
|
||||
@@ -6635,8 +6629,6 @@ static int napi_poll(struct napi_struct
|
||||
@@ -6639,8 +6633,6 @@ static int napi_poll(struct napi_struct
|
||||
|
||||
static int napi_thread_wait(struct napi_struct *napi)
|
||||
{
|
||||
@ -56,7 +56,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
set_current_state(TASK_INTERRUPTIBLE);
|
||||
|
||||
while (!kthread_should_stop()) {
|
||||
@@ -6645,15 +6637,13 @@ static int napi_thread_wait(struct napi_
|
||||
@@ -6649,15 +6641,13 @@ static int napi_thread_wait(struct napi_
|
||||
* Testing SCHED bit is not enough because SCHED bit might be
|
||||
* set by some other busy poll thread or by napi_disable().
|
||||
*/
|
||||
|
@ -108,7 +108,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
static inline void rps_lock_irqsave(struct softnet_data *sd,
|
||||
unsigned long *flags)
|
||||
{
|
||||
@@ -4441,6 +4467,7 @@ EXPORT_SYMBOL(__dev_direct_xmit);
|
||||
@@ -4445,6 +4471,7 @@ EXPORT_SYMBOL(__dev_direct_xmit);
|
||||
/*************************************************************************
|
||||
* Receiver routines
|
||||
*************************************************************************/
|
||||
@ -116,7 +116,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
int netdev_max_backlog __read_mostly = 1000;
|
||||
EXPORT_SYMBOL(netdev_max_backlog);
|
||||
@@ -4473,12 +4500,16 @@ static inline void ____napi_schedule(str
|
||||
@@ -4477,12 +4504,16 @@ static inline void ____napi_schedule(str
|
||||
*/
|
||||
thread = READ_ONCE(napi->thread);
|
||||
if (thread) {
|
||||
@ -133,7 +133,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
list_add_tail(&napi->poll_list, &sd->poll_list);
|
||||
WRITE_ONCE(napi->list_owner, smp_processor_id());
|
||||
/* If not called from net_rx_action()
|
||||
@@ -4724,6 +4755,11 @@ static void napi_schedule_rps(struct sof
|
||||
@@ -4728,6 +4759,11 @@ static void napi_schedule_rps(struct sof
|
||||
|
||||
#ifdef CONFIG_RPS
|
||||
if (sd != mysd) {
|
||||
@ -145,7 +145,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
sd->rps_ipi_next = mysd->rps_ipi_list;
|
||||
mysd->rps_ipi_list = sd;
|
||||
|
||||
@@ -5947,7 +5983,7 @@ static void net_rps_action_and_irq_enabl
|
||||
@@ -5951,7 +5987,7 @@ static void net_rps_action_and_irq_enabl
|
||||
#ifdef CONFIG_RPS
|
||||
struct softnet_data *remsd = sd->rps_ipi_list;
|
||||
|
||||
@ -154,7 +154,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
sd->rps_ipi_list = NULL;
|
||||
|
||||
local_irq_enable();
|
||||
@@ -5962,7 +5998,7 @@ static void net_rps_action_and_irq_enabl
|
||||
@@ -5966,7 +6002,7 @@ static void net_rps_action_and_irq_enabl
|
||||
static bool sd_has_rps_ipi_waiting(struct softnet_data *sd)
|
||||
{
|
||||
#ifdef CONFIG_RPS
|
||||
@ -163,7 +163,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
@@ -6006,7 +6042,7 @@ static int process_backlog(struct napi_s
|
||||
@@ -6010,7 +6046,7 @@ static int process_backlog(struct napi_s
|
||||
* We can use a plain write instead of clear_bit(),
|
||||
* and we dont need an smp_mb() memory barrier.
|
||||
*/
|
||||
@ -172,7 +172,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
again = false;
|
||||
} else {
|
||||
skb_queue_splice_tail_init(&sd->input_pkt_queue,
|
||||
@@ -6672,43 +6708,48 @@ static void skb_defer_free_flush(struct
|
||||
@@ -6676,43 +6712,48 @@ static void skb_defer_free_flush(struct
|
||||
}
|
||||
}
|
||||
|
||||
@ -250,7 +250,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -11289,7 +11330,7 @@ static int dev_cpu_dead(unsigned int old
|
||||
@@ -11293,7 +11334,7 @@ static int dev_cpu_dead(unsigned int old
|
||||
|
||||
list_del_init(&napi->poll_list);
|
||||
if (napi->poll == process_backlog)
|
||||
@ -259,7 +259,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
else
|
||||
____napi_schedule(sd, napi);
|
||||
}
|
||||
@@ -11297,12 +11338,14 @@ static int dev_cpu_dead(unsigned int old
|
||||
@@ -11301,12 +11342,14 @@ static int dev_cpu_dead(unsigned int old
|
||||
raise_softirq_irqoff(NET_TX_SOFTIRQ);
|
||||
local_irq_enable();
|
||||
|
||||
@ -278,7 +278,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
/* Process offline CPU's input_pkt_queue */
|
||||
while ((skb = __skb_dequeue(&oldsd->process_queue))) {
|
||||
@@ -11565,6 +11608,38 @@ static struct pernet_operations __net_in
|
||||
@@ -11569,6 +11612,38 @@ static struct pernet_operations __net_in
|
||||
*
|
||||
*/
|
||||
|
||||
@ -317,7 +317,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
/*
|
||||
* This is called single threaded during boot, so no need
|
||||
* to take the rtnl semaphore.
|
||||
@@ -11615,7 +11690,10 @@ static int __init net_dev_init(void)
|
||||
@@ -11619,7 +11694,10 @@ static int __init net_dev_init(void)
|
||||
init_gro_hash(&sd->backlog);
|
||||
sd->backlog.poll = process_backlog;
|
||||
sd->backlog.weight = weight_p;
|
||||
|
@ -82,7 +82,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
spin_unlock_irq(&sd->input_pkt_queue.lock);
|
||||
else if (!IS_ENABLED(CONFIG_PREEMPT_RT))
|
||||
local_irq_enable();
|
||||
@@ -4774,6 +4774,23 @@ static void napi_schedule_rps(struct sof
|
||||
@@ -4778,6 +4778,23 @@ static void napi_schedule_rps(struct sof
|
||||
__napi_schedule_irqoff(&mysd->backlog);
|
||||
}
|
||||
|
||||
|
@ -67,7 +67,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
{
|
||||
if (IS_ENABLED(CONFIG_RPS) || use_backlog_threads())
|
||||
spin_unlock_irq(&sd->input_pkt_queue.lock);
|
||||
@@ -4779,12 +4779,12 @@ void kick_defer_list_purge(struct softne
|
||||
@@ -4783,12 +4783,12 @@ void kick_defer_list_purge(struct softne
|
||||
unsigned long flags;
|
||||
|
||||
if (use_backlog_threads()) {
|
||||
@ -82,7 +82,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
} else if (!cmpxchg(&sd->defer_ipi_scheduled, 0, 1)) {
|
||||
smp_call_function_single_async(cpu, &sd->defer_csd);
|
||||
@@ -4846,7 +4846,7 @@ static int enqueue_to_backlog(struct sk_
|
||||
@@ -4850,7 +4850,7 @@ static int enqueue_to_backlog(struct sk_
|
||||
reason = SKB_DROP_REASON_NOT_SPECIFIED;
|
||||
sd = &per_cpu(softnet_data, cpu);
|
||||
|
||||
@ -91,7 +91,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (!netif_running(skb->dev))
|
||||
goto drop;
|
||||
qlen = skb_queue_len(&sd->input_pkt_queue);
|
||||
@@ -4855,7 +4855,7 @@ static int enqueue_to_backlog(struct sk_
|
||||
@@ -4859,7 +4859,7 @@ static int enqueue_to_backlog(struct sk_
|
||||
enqueue:
|
||||
__skb_queue_tail(&sd->input_pkt_queue, skb);
|
||||
input_queue_tail_incr_save(sd, qtail);
|
||||
@ -100,7 +100,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
return NET_RX_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -4870,7 +4870,7 @@ enqueue:
|
||||
@@ -4874,7 +4874,7 @@ enqueue:
|
||||
|
||||
drop:
|
||||
sd->dropped++;
|
||||
@ -109,7 +109,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
dev_core_stats_rx_dropped_inc(skb->dev);
|
||||
kfree_skb_reason(skb, reason);
|
||||
@@ -5901,7 +5901,7 @@ static void flush_backlog(struct work_st
|
||||
@@ -5905,7 +5905,7 @@ static void flush_backlog(struct work_st
|
||||
local_bh_disable();
|
||||
sd = this_cpu_ptr(&softnet_data);
|
||||
|
||||
@ -118,7 +118,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
skb_queue_walk_safe(&sd->input_pkt_queue, skb, tmp) {
|
||||
if (skb->dev->reg_state == NETREG_UNREGISTERING) {
|
||||
__skb_unlink(skb, &sd->input_pkt_queue);
|
||||
@@ -5909,7 +5909,7 @@ static void flush_backlog(struct work_st
|
||||
@@ -5913,7 +5913,7 @@ static void flush_backlog(struct work_st
|
||||
input_queue_head_incr(sd);
|
||||
}
|
||||
}
|
||||
@ -127,7 +127,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
skb_queue_walk_safe(&sd->process_queue, skb, tmp) {
|
||||
if (skb->dev->reg_state == NETREG_UNREGISTERING) {
|
||||
@@ -5927,14 +5927,14 @@ static bool flush_required(int cpu)
|
||||
@@ -5931,14 +5931,14 @@ static bool flush_required(int cpu)
|
||||
struct softnet_data *sd = &per_cpu(softnet_data, cpu);
|
||||
bool do_flush;
|
||||
|
||||
@ -144,7 +144,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
return do_flush;
|
||||
#endif
|
||||
@@ -6049,7 +6049,7 @@ static int process_backlog(struct napi_s
|
||||
@@ -6053,7 +6053,7 @@ static int process_backlog(struct napi_s
|
||||
|
||||
}
|
||||
|
||||
@ -153,7 +153,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (skb_queue_empty(&sd->input_pkt_queue)) {
|
||||
/*
|
||||
* Inline a custom version of __napi_complete().
|
||||
@@ -6065,7 +6065,7 @@ static int process_backlog(struct napi_s
|
||||
@@ -6069,7 +6069,7 @@ static int process_backlog(struct napi_s
|
||||
skb_queue_splice_tail_init(&sd->input_pkt_queue,
|
||||
&sd->process_queue);
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
/**
|
||||
--- a/net/core/dev.c
|
||||
+++ b/net/core/dev.c
|
||||
@@ -6602,7 +6602,7 @@ static int __napi_poll(struct napi_struc
|
||||
@@ -6606,7 +6606,7 @@ static int __napi_poll(struct napi_struc
|
||||
* accidentally calling ->poll() when NAPI is not scheduled.
|
||||
*/
|
||||
work = 0;
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -3129,6 +3129,33 @@ static void rtl_hw_start_8168g_2(struct
|
||||
@@ -3156,6 +3156,33 @@ static void rtl_hw_start_8168g_2(struct
|
||||
rtl_ephy_init(tp, e_info_8168g_2);
|
||||
}
|
||||
|
||||
@ -52,7 +52,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static void rtl_hw_start_8411_2(struct rtl8169_private *tp)
|
||||
{
|
||||
static const struct ephy_info e_info_8411_2[] = {
|
||||
@@ -3162,117 +3189,7 @@ static void rtl_hw_start_8411_2(struct r
|
||||
@@ -3189,117 +3216,7 @@ static void rtl_hw_start_8411_2(struct r
|
||||
mdelay(3);
|
||||
r8168_mac_ocp_write(tp, 0xFC26, 0x0000);
|
||||
|
||||
|
@ -35,7 +35,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
#define TX_DMA_BURST 7 /* Maximum PCI burst, '7' is unlimited */
|
||||
#define InterFrameGap 0x03 /* 3 means InterFrameGap = the shortest one */
|
||||
|
||||
@@ -2626,8 +2622,7 @@ static void rtl_set_rx_mode(struct net_d
|
||||
@@ -2653,8 +2649,7 @@ static void rtl_set_rx_mode(struct net_d
|
||||
rx_mode |= AcceptAllPhys;
|
||||
} else if (!(dev->flags & IFF_MULTICAST)) {
|
||||
rx_mode &= ~AcceptMulticast;
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -2252,6 +2252,9 @@ u16 rtl8168h_2_get_adc_bias_ioffset(stru
|
||||
@@ -2279,6 +2279,9 @@ u16 rtl8168h_2_get_adc_bias_ioffset(stru
|
||||
|
||||
static void rtl_schedule_task(struct rtl8169_private *tp, enum rtl_flag flag)
|
||||
{
|
||||
@ -29,7 +29,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
set_bit(flag, tp->wk.flags);
|
||||
schedule_work(&tp->wk.work);
|
||||
}
|
||||
@@ -4491,8 +4494,7 @@ static void rtl_task(struct work_struct
|
||||
@@ -4518,8 +4521,7 @@ static void rtl_task(struct work_struct
|
||||
|
||||
rtnl_lock();
|
||||
|
||||
|
@ -225,7 +225,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
LED_FREQ = 0x1a,
|
||||
EEE_LED = 0x1b,
|
||||
ERIDR = 0x70,
|
||||
@@ -616,6 +617,7 @@ struct rtl8169_private {
|
||||
@@ -643,6 +644,7 @@ struct rtl8169_private {
|
||||
|
||||
raw_spinlock_t config25_lock;
|
||||
raw_spinlock_t mac_ocp_lock;
|
||||
@ -233,7 +233,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
raw_spinlock_t cfg9346_usage_lock;
|
||||
int cfg9346_usage_count;
|
||||
@@ -788,6 +790,62 @@ static const struct rtl_cond name = {
|
||||
@@ -815,6 +817,62 @@ static const struct rtl_cond name = {
|
||||
\
|
||||
static bool name ## _check(struct rtl8169_private *tp)
|
||||
|
||||
@ -296,7 +296,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static void r8168fp_adjust_ocp_cmd(struct rtl8169_private *tp, u32 *cmd, int type)
|
||||
{
|
||||
/* based on RTL8168FP_OOBMAC_BASE in vendor driver */
|
||||
@@ -5168,6 +5226,7 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5195,6 +5253,7 @@ static int rtl_init_one(struct pci_dev *
|
||||
raw_spin_lock_init(&tp->cfg9346_usage_lock);
|
||||
raw_spin_lock_init(&tp->config25_lock);
|
||||
raw_spin_lock_init(&tp->mac_ocp_lock);
|
||||
@ -304,7 +304,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
dev->tstats = devm_netdev_alloc_pcpu_stats(&pdev->dev,
|
||||
struct pcpu_sw_netstats);
|
||||
@@ -5324,6 +5383,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5351,6 +5410,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
|
@ -59,7 +59,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
obj-$(CONFIG_R8169) += r8169.o
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5383,11 +5383,10 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5410,11 +5410,10 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -629,7 +629,6 @@ struct rtl8169_private {
|
||||
@@ -656,7 +656,6 @@ struct rtl8169_private {
|
||||
struct rtl8169_counters *counters;
|
||||
struct rtl8169_tc_offsets tc_offset;
|
||||
u32 saved_wolopts;
|
||||
@ -24,7 +24,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
const char *fw_name;
|
||||
struct rtl_fw *rtl_fw;
|
||||
@@ -2010,17 +2009,11 @@ static int rtl8169_get_eee(struct net_de
|
||||
@@ -2037,17 +2036,11 @@ static int rtl8169_get_eee(struct net_de
|
||||
static int rtl8169_set_eee(struct net_device *dev, struct ethtool_eee *data)
|
||||
{
|
||||
struct rtl8169_private *tp = netdev_priv(dev);
|
||||
@ -43,7 +43,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
}
|
||||
|
||||
static void rtl8169_get_ringparam(struct net_device *dev,
|
||||
@@ -2085,21 +2078,6 @@ static const struct ethtool_ops rtl8169_
|
||||
@@ -2112,21 +2105,6 @@ static const struct ethtool_ops rtl8169_
|
||||
.set_pauseparam = rtl8169_set_pauseparam,
|
||||
};
|
||||
|
||||
@ -65,7 +65,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
static enum mac_version rtl8169_get_mac_version(u16 xid, bool gmii)
|
||||
{
|
||||
/*
|
||||
@@ -2336,9 +2314,6 @@ static void rtl8169_init_phy(struct rtl8
|
||||
@@ -2363,9 +2341,6 @@ static void rtl8169_init_phy(struct rtl8
|
||||
/* We may have called phy_speed_down before */
|
||||
phy_speed_up(tp->phydev);
|
||||
|
||||
@ -75,7 +75,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
genphy_soft_reset(tp->phydev);
|
||||
}
|
||||
|
||||
@@ -5085,7 +5060,9 @@ static int r8169_mdio_register(struct rt
|
||||
@@ -5112,7 +5087,9 @@ static int r8169_mdio_register(struct rt
|
||||
}
|
||||
|
||||
tp->phydev->mac_managed_pm = true;
|
||||
@ -86,7 +86,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
phy_support_asym_pause(tp->phydev);
|
||||
|
||||
/* PHY will be woken up in rtl_open() */
|
||||
@@ -5220,7 +5197,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5247,7 +5224,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
tp->dev = dev;
|
||||
tp->pci_dev = pdev;
|
||||
tp->supports_gmii = ent->driver_data == RTL_CFG_NO_GBIT ? 0 : 1;
|
||||
|
@ -65,7 +65,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
TxPoll_8125 = 0x90,
|
||||
MAC0_BKP = 0x19e0,
|
||||
EEE_TXIDLE_TIMER_8125 = 0x6048,
|
||||
@@ -1139,7 +1146,7 @@ static void rtl_writephy(struct rtl8169_
|
||||
@@ -1166,7 +1173,7 @@ static void rtl_writephy(struct rtl8169_
|
||||
case RTL_GIGA_MAC_VER_31:
|
||||
r8168dp_2_mdio_write(tp, location, val);
|
||||
break;
|
||||
@ -74,7 +74,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
r8168g_mdio_write(tp, location, val);
|
||||
break;
|
||||
default:
|
||||
@@ -1154,7 +1161,7 @@ static int rtl_readphy(struct rtl8169_pr
|
||||
@@ -1181,7 +1188,7 @@ static int rtl_readphy(struct rtl8169_pr
|
||||
case RTL_GIGA_MAC_VER_28:
|
||||
case RTL_GIGA_MAC_VER_31:
|
||||
return r8168dp_2_mdio_read(tp, location);
|
||||
@ -83,7 +83,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
return r8168g_mdio_read(tp, location);
|
||||
default:
|
||||
return r8169_mdio_read(tp, location);
|
||||
@@ -1363,7 +1370,7 @@ static void rtl_set_d3_pll_down(struct r
|
||||
@@ -1390,7 +1397,7 @@ static void rtl_set_d3_pll_down(struct r
|
||||
case RTL_GIGA_MAC_VER_25 ... RTL_GIGA_MAC_VER_26:
|
||||
case RTL_GIGA_MAC_VER_29 ... RTL_GIGA_MAC_VER_30:
|
||||
case RTL_GIGA_MAC_VER_32 ... RTL_GIGA_MAC_VER_37:
|
||||
@ -92,7 +92,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
if (enable)
|
||||
RTL_W8(tp, PMCH, RTL_R8(tp, PMCH) & ~D3_NO_PLL_DOWN);
|
||||
else
|
||||
@@ -1530,7 +1537,7 @@ static void __rtl8169_set_wol(struct rtl
|
||||
@@ -1557,7 +1564,7 @@ static void __rtl8169_set_wol(struct rtl
|
||||
break;
|
||||
case RTL_GIGA_MAC_VER_34:
|
||||
case RTL_GIGA_MAC_VER_37:
|
||||
@ -101,7 +101,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
if (wolopts)
|
||||
rtl_mod_config2(tp, 0, PME_SIGNAL);
|
||||
else
|
||||
@@ -2096,6 +2103,9 @@ static enum mac_version rtl8169_get_mac_
|
||||
@@ -2123,6 +2130,9 @@ static enum mac_version rtl8169_get_mac_
|
||||
u16 val;
|
||||
enum mac_version ver;
|
||||
} mac_info[] = {
|
||||
@ -111,7 +111,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
/* 8125B family. */
|
||||
{ 0x7cf, 0x641, RTL_GIGA_MAC_VER_63 },
|
||||
|
||||
@@ -2366,6 +2376,7 @@ static void rtl_init_rxcfg(struct rtl816
|
||||
@@ -2393,6 +2403,7 @@ static void rtl_init_rxcfg(struct rtl816
|
||||
RTL_W32(tp, RxConfig, RX_FETCH_DFLT_8125 | RX_DMA_BURST);
|
||||
break;
|
||||
case RTL_GIGA_MAC_VER_63:
|
||||
@ -119,7 +119,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
RTL_W32(tp, RxConfig, RX_FETCH_DFLT_8125 | RX_DMA_BURST |
|
||||
RX_PAUSE_SLOT_ON);
|
||||
break;
|
||||
@@ -2552,7 +2563,7 @@ static void rtl_wait_txrx_fifo_empty(str
|
||||
@@ -2579,7 +2590,7 @@ static void rtl_wait_txrx_fifo_empty(str
|
||||
case RTL_GIGA_MAC_VER_61 ... RTL_GIGA_MAC_VER_61:
|
||||
rtl_loop_wait_high(tp, &rtl_rxtx_empty_cond, 100, 42);
|
||||
break;
|
||||
@ -128,7 +128,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
RTL_W8(tp, ChipCmd, RTL_R8(tp, ChipCmd) | StopReq);
|
||||
rtl_loop_wait_high(tp, &rtl_rxtx_empty_cond, 100, 42);
|
||||
rtl_loop_wait_high(tp, &rtl_rxtx_empty_cond_2, 100, 42);
|
||||
@@ -2795,7 +2806,7 @@ static void rtl_enable_exit_l1(struct rt
|
||||
@@ -2822,7 +2833,7 @@ static void rtl_enable_exit_l1(struct rt
|
||||
case RTL_GIGA_MAC_VER_37 ... RTL_GIGA_MAC_VER_38:
|
||||
rtl_eri_set_bits(tp, 0xd4, 0x0c00);
|
||||
break;
|
||||
@ -137,7 +137,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
r8168_mac_ocp_modify(tp, 0xc0ac, 0, 0x1f80);
|
||||
break;
|
||||
default:
|
||||
@@ -2809,7 +2820,7 @@ static void rtl_disable_exit_l1(struct r
|
||||
@@ -2836,7 +2847,7 @@ static void rtl_disable_exit_l1(struct r
|
||||
case RTL_GIGA_MAC_VER_34 ... RTL_GIGA_MAC_VER_38:
|
||||
rtl_eri_clear_bits(tp, 0xd4, 0x1f00);
|
||||
break;
|
||||
@ -146,7 +146,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
r8168_mac_ocp_modify(tp, 0xc0ac, 0x1f80, 0);
|
||||
break;
|
||||
default:
|
||||
@@ -2819,6 +2830,8 @@ static void rtl_disable_exit_l1(struct r
|
||||
@@ -2846,6 +2857,8 @@ static void rtl_disable_exit_l1(struct r
|
||||
|
||||
static void rtl_hw_aspm_clkreq_enable(struct rtl8169_private *tp, bool enable)
|
||||
{
|
||||
@ -155,7 +155,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
if (tp->mac_version < RTL_GIGA_MAC_VER_32)
|
||||
return;
|
||||
|
||||
@@ -2832,11 +2845,19 @@ static void rtl_hw_aspm_clkreq_enable(st
|
||||
@@ -2859,11 +2872,19 @@ static void rtl_hw_aspm_clkreq_enable(st
|
||||
return;
|
||||
|
||||
rtl_mod_config5(tp, 0, ASPM_en);
|
||||
@ -177,7 +177,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
/* reset ephy tx/rx disable timer */
|
||||
r8168_mac_ocp_modify(tp, 0xe094, 0xff00, 0);
|
||||
/* chip can trigger L1.2 */
|
||||
@@ -2848,14 +2869,22 @@ static void rtl_hw_aspm_clkreq_enable(st
|
||||
@@ -2875,14 +2896,22 @@ static void rtl_hw_aspm_clkreq_enable(st
|
||||
} else {
|
||||
switch (tp->mac_version) {
|
||||
case RTL_GIGA_MAC_VER_46 ... RTL_GIGA_MAC_VER_48:
|
||||
@ -202,7 +202,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
rtl_mod_config5(tp, ASPM_en, 0);
|
||||
}
|
||||
}
|
||||
@@ -3568,10 +3597,15 @@ static void rtl_hw_start_8125_common(str
|
||||
@@ -3595,10 +3624,15 @@ static void rtl_hw_start_8125_common(str
|
||||
/* disable new tx descriptor format */
|
||||
r8168_mac_ocp_modify(tp, 0xeb58, 0x0001, 0x0000);
|
||||
|
||||
@ -220,7 +220,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
if (tp->mac_version == RTL_GIGA_MAC_VER_63)
|
||||
r8168_mac_ocp_modify(tp, 0xe63e, 0x0c30, 0x0000);
|
||||
@@ -3584,6 +3618,10 @@ static void rtl_hw_start_8125_common(str
|
||||
@@ -3611,6 +3645,10 @@ static void rtl_hw_start_8125_common(str
|
||||
r8168_mac_ocp_modify(tp, 0xe056, 0x00f0, 0x0030);
|
||||
r8168_mac_ocp_modify(tp, 0xe040, 0x1000, 0x0000);
|
||||
r8168_mac_ocp_modify(tp, 0xea1c, 0x0003, 0x0001);
|
||||
@ -231,7 +231,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
r8168_mac_ocp_modify(tp, 0xe0c0, 0x4f0f, 0x4403);
|
||||
r8168_mac_ocp_modify(tp, 0xe052, 0x0080, 0x0068);
|
||||
r8168_mac_ocp_modify(tp, 0xd430, 0x0fff, 0x047f);
|
||||
@@ -3598,10 +3636,10 @@ static void rtl_hw_start_8125_common(str
|
||||
@@ -3625,10 +3663,10 @@ static void rtl_hw_start_8125_common(str
|
||||
|
||||
rtl_loop_wait_low(tp, &rtl_mac_ocp_e00e_cond, 1000, 10);
|
||||
|
||||
@ -245,7 +245,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
rtl_disable_rxdvgate(tp);
|
||||
}
|
||||
@@ -3645,6 +3683,12 @@ static void rtl_hw_start_8125b(struct rt
|
||||
@@ -3672,6 +3710,12 @@ static void rtl_hw_start_8125b(struct rt
|
||||
rtl_hw_start_8125_common(tp);
|
||||
}
|
||||
|
||||
@ -258,7 +258,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static void rtl_hw_config(struct rtl8169_private *tp)
|
||||
{
|
||||
static const rtl_generic_fct hw_configs[] = {
|
||||
@@ -3687,6 +3731,7 @@ static void rtl_hw_config(struct rtl8169
|
||||
@@ -3714,6 +3758,7 @@ static void rtl_hw_config(struct rtl8169
|
||||
[RTL_GIGA_MAC_VER_53] = rtl_hw_start_8117,
|
||||
[RTL_GIGA_MAC_VER_61] = rtl_hw_start_8125a_2,
|
||||
[RTL_GIGA_MAC_VER_63] = rtl_hw_start_8125b,
|
||||
@ -266,7 +266,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
};
|
||||
|
||||
if (hw_configs[tp->mac_version])
|
||||
@@ -3697,9 +3742,23 @@ static void rtl_hw_start_8125(struct rtl
|
||||
@@ -3724,9 +3769,23 @@ static void rtl_hw_start_8125(struct rtl
|
||||
{
|
||||
int i;
|
||||
|
||||
@ -292,7 +292,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
rtl_hw_config(tp);
|
||||
}
|
||||
@@ -3777,8 +3836,7 @@ static int rtl8169_change_mtu(struct net
|
||||
@@ -3804,8 +3863,7 @@ static int rtl8169_change_mtu(struct net
|
||||
rtl_jumbo_config(tp);
|
||||
|
||||
switch (tp->mac_version) {
|
||||
@ -302,7 +302,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
rtl8125_set_eee_txidle_timer(tp);
|
||||
break;
|
||||
default:
|
||||
@@ -3927,7 +3985,7 @@ static void rtl8169_cleanup(struct rtl81
|
||||
@@ -3954,7 +4012,7 @@ static void rtl8169_cleanup(struct rtl81
|
||||
RTL_W8(tp, ChipCmd, RTL_R8(tp, ChipCmd) | StopReq);
|
||||
rtl_loop_wait_high(tp, &rtl_txcfg_empty_cond, 100, 666);
|
||||
break;
|
||||
@ -311,7 +311,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
rtl_enable_rxdvgate(tp);
|
||||
fsleep(2000);
|
||||
break;
|
||||
@@ -4078,8 +4136,7 @@ static unsigned int rtl_quirk_packet_pad
|
||||
@@ -4105,8 +4163,7 @@ static unsigned int rtl_quirk_packet_pad
|
||||
|
||||
switch (tp->mac_version) {
|
||||
case RTL_GIGA_MAC_VER_34:
|
||||
@ -321,7 +321,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
padto = max_t(unsigned int, padto, ETH_ZLEN);
|
||||
break;
|
||||
default:
|
||||
@@ -5112,7 +5169,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
@@ -5139,7 +5196,7 @@ static void rtl_hw_initialize(struct rtl
|
||||
case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_48:
|
||||
rtl_hw_init_8168g(tp);
|
||||
break;
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5261,11 +5261,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5288,11 +5288,6 @@ static int rtl_init_one(struct pci_dev *
|
||||
raw_spin_lock_init(&tp->mac_ocp_lock);
|
||||
mutex_init(&tp->led_lock);
|
||||
|
||||
@ -28,7 +28,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
/* Get the *optional* external "ether_clk" used on some boards */
|
||||
tp->clk = devm_clk_get_optional_enabled(&pdev->dev, "ether_clk");
|
||||
if (IS_ERR(tp->clk))
|
||||
@@ -5380,6 +5375,8 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5407,6 +5402,8 @@ static int rtl_init_one(struct pci_dev *
|
||||
dev->hw_features |= NETIF_F_RXALL;
|
||||
dev->hw_features |= NETIF_F_RXFCS;
|
||||
|
||||
|
@ -173,7 +173,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
#define RX_VLAN_INNER_8125 BIT(22)
|
||||
#define RX_VLAN_OUTER_8125 BIT(23)
|
||||
#define RX_VLAN_8125 (RX_VLAN_INNER_8125 | RX_VLAN_OUTER_8125)
|
||||
@@ -830,6 +836,51 @@ int rtl8168_get_led_mode(struct rtl8169_
|
||||
@@ -857,6 +863,51 @@ int rtl8168_get_led_mode(struct rtl8169_
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -225,7 +225,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
void r8169_get_led_name(struct rtl8169_private *tp, int idx,
|
||||
char *buf, int buf_len)
|
||||
{
|
||||
@@ -5413,10 +5464,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5440,10 +5491,12 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -619,6 +619,7 @@ struct rtl8169_private {
|
||||
@@ -646,6 +646,7 @@ struct rtl8169_private {
|
||||
struct page *Rx_databuff[NUM_RX_DESC]; /* Rx data buffers */
|
||||
struct ring_info tx_skb[NUM_TX_DESC]; /* Tx data buffers */
|
||||
u16 cp_cmd;
|
||||
@ -26,7 +26,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
u32 irq_mask;
|
||||
int irq;
|
||||
struct clk *clk;
|
||||
@@ -2054,6 +2055,22 @@ static int rtl_set_coalesce(struct net_d
|
||||
@@ -2081,6 +2082,22 @@ static int rtl_set_coalesce(struct net_d
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -49,7 +49,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
static int rtl8169_get_eee(struct net_device *dev, struct ethtool_eee *data)
|
||||
{
|
||||
struct rtl8169_private *tp = netdev_priv(dev);
|
||||
@@ -2312,14 +2329,8 @@ static void rtl8125a_config_eee_mac(stru
|
||||
@@ -2339,14 +2356,8 @@ static void rtl8125a_config_eee_mac(stru
|
||||
r8168_mac_ocp_modify(tp, 0xeb62, 0, BIT(2) | BIT(1));
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
r8168_mac_ocp_modify(tp, 0xe040, 0, BIT(1) | BIT(0));
|
||||
}
|
||||
|
||||
@@ -3852,6 +3863,8 @@ static void rtl_hw_start(struct rtl8169
|
||||
@@ -3879,6 +3890,8 @@ static void rtl_hw_start(struct rtl8169
|
||||
rtl_hw_aspm_clkreq_enable(tp, false);
|
||||
RTL_W16(tp, CPlusCmd, tp->cp_cmd);
|
||||
|
||||
@ -73,7 +73,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
if (tp->mac_version <= RTL_GIGA_MAC_VER_06)
|
||||
rtl_hw_start_8169(tp);
|
||||
else if (rtl_is_8125(tp))
|
||||
@@ -3885,14 +3898,7 @@ static int rtl8169_change_mtu(struct net
|
||||
@@ -3912,14 +3925,7 @@ static int rtl8169_change_mtu(struct net
|
||||
dev->mtu = new_mtu;
|
||||
netdev_update_features(dev);
|
||||
rtl_jumbo_config(tp);
|
||||
|
@ -16,7 +16,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -2060,6 +2060,11 @@ static void rtl_set_eee_txidle_timer(str
|
||||
@@ -2087,6 +2087,11 @@ static void rtl_set_eee_txidle_timer(str
|
||||
unsigned int timer_val = READ_ONCE(tp->dev->mtu) + ETH_HLEN + 0x20;
|
||||
|
||||
switch (tp->mac_version) {
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -2076,14 +2076,34 @@ static void rtl_set_eee_txidle_timer(str
|
||||
@@ -2103,14 +2103,34 @@ static void rtl_set_eee_txidle_timer(str
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -676,6 +676,7 @@ MODULE_FIRMWARE(FIRMWARE_8168FP_3);
|
||||
@@ -703,6 +703,7 @@ MODULE_FIRMWARE(FIRMWARE_8168FP_3);
|
||||
MODULE_FIRMWARE(FIRMWARE_8107E_2);
|
||||
MODULE_FIRMWARE(FIRMWARE_8125A_3);
|
||||
MODULE_FIRMWARE(FIRMWARE_8125B_2);
|
||||
|
@ -115,7 +115,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -647,6 +647,8 @@ struct rtl8169_private {
|
||||
@@ -674,6 +674,8 @@ struct rtl8169_private {
|
||||
const char *fw_name;
|
||||
struct rtl_fw *rtl_fw;
|
||||
|
||||
@ -124,7 +124,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
u32 ocp_base;
|
||||
};
|
||||
|
||||
@@ -5040,6 +5042,8 @@ static void rtl_remove_one(struct pci_de
|
||||
@@ -5067,6 +5069,8 @@ static void rtl_remove_one(struct pci_de
|
||||
|
||||
cancel_work_sync(&tp->wk.work);
|
||||
|
||||
@ -133,7 +133,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
unregister_netdev(tp->dev);
|
||||
|
||||
if (tp->dash_type != RTL_DASH_NONE)
|
||||
@@ -5498,9 +5502,9 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5525,9 +5529,9 @@ static int rtl_init_one(struct pci_dev *
|
||||
|
||||
if (IS_ENABLED(CONFIG_R8169_LEDS)) {
|
||||
if (rtl_is_8125(tp))
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5042,7 +5042,8 @@ static void rtl_remove_one(struct pci_de
|
||||
@@ -5069,7 +5069,8 @@ static void rtl_remove_one(struct pci_de
|
||||
|
||||
cancel_work_sync(&tp->wk.work);
|
||||
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -2230,6 +2230,8 @@ static enum mac_version rtl8169_get_mac_
|
||||
@@ -2257,6 +2257,8 @@ static enum mac_version rtl8169_get_mac_
|
||||
* the wild. Let's disable detection.
|
||||
* { 0x7cf, 0x540, RTL_GIGA_MAC_VER_45 },
|
||||
*/
|
||||
|
@ -49,7 +49,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
}
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -3925,7 +3925,7 @@ static int rtl8169_change_mtu(struct net
|
||||
@@ -3952,7 +3952,7 @@ static int rtl8169_change_mtu(struct net
|
||||
{
|
||||
struct rtl8169_private *tp = netdev_priv(dev);
|
||||
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -5083,12 +5083,10 @@ static void rtl_set_irq_mask(struct rtl8
|
||||
@@ -5110,12 +5110,10 @@ static void rtl_set_irq_mask(struct rtl8
|
||||
tp->irq_mask = RxOK | RxErr | TxOK | TxErr | LinkChg;
|
||||
|
||||
if (tp->mac_version <= RTL_GIGA_MAC_VER_06)
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -2275,7 +2275,9 @@ static enum mac_version rtl8169_get_mac_
|
||||
@@ -2302,7 +2302,9 @@ static enum mac_version rtl8169_get_mac_
|
||||
|
||||
/* 8168B family. */
|
||||
{ 0x7c8, 0x380, RTL_GIGA_MAC_VER_17 },
|
||||
|
@ -97,7 +97,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
||||
static int aqr_config_intr(struct phy_device *phydev)
|
||||
{
|
||||
bool en = phydev->interrupts == PHY_INTERRUPT_ENABLED;
|
||||
@@ -807,7 +875,7 @@ static struct phy_driver aqr_driver[] =
|
||||
@@ -806,7 +874,7 @@ static struct phy_driver aqr_driver[] =
|
||||
PHY_ID_MATCH_MODEL(PHY_ID_AQR112),
|
||||
.name = "Aquantia AQR112",
|
||||
.probe = aqr107_probe,
|
||||
@ -106,7 +106,7 @@ Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
|
||||
.config_intr = aqr_config_intr,
|
||||
.handle_interrupt = aqr_handle_interrupt,
|
||||
.get_tunable = aqr107_get_tunable,
|
||||
@@ -830,7 +898,7 @@ static struct phy_driver aqr_driver[] =
|
||||
@@ -829,7 +897,7 @@ static struct phy_driver aqr_driver[] =
|
||||
PHY_ID_MATCH_MODEL(PHY_ID_AQR412),
|
||||
.name = "Aquantia AQR412",
|
||||
.probe = aqr107_probe,
|
||||
|
@ -21,7 +21,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
|
||||
#define MDIO_PHYXS_VEND_IF_STATUS 0xe812
|
||||
#define MDIO_PHYXS_VEND_IF_STATUS_TYPE_MASK GENMASK(7, 3)
|
||||
@@ -1014,6 +1016,30 @@ static struct phy_driver aqr_driver[] =
|
||||
@@ -1013,6 +1015,30 @@ static struct phy_driver aqr_driver[] =
|
||||
.led_hw_control_get = aqr_phy_led_hw_control_get,
|
||||
.led_polarity_set = aqr_phy_led_polarity_set,
|
||||
},
|
||||
@ -52,7 +52,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
};
|
||||
|
||||
module_phy_driver(aqr_driver);
|
||||
@@ -1034,6 +1060,8 @@ static struct mdio_device_id __maybe_unu
|
||||
@@ -1033,6 +1059,8 @@ static struct mdio_device_id __maybe_unu
|
||||
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR113C) },
|
||||
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR114C) },
|
||||
{ PHY_ID_MATCH_MODEL(PHY_ID_AQR813) },
|
||||
|
@ -111,7 +111,7 @@
|
||||
|
||||
#ifdef CONFIG_ETHERNET_PACKET_MANGLE
|
||||
if (dev->eth_mangle_tx && !(skb = dev->eth_mangle_tx(dev, skb)))
|
||||
@@ -5355,6 +5363,11 @@ void netdev_rx_handler_unregister(struct
|
||||
@@ -5359,6 +5367,11 @@ void netdev_rx_handler_unregister(struct
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(netdev_rx_handler_unregister);
|
||||
|
||||
@ -123,7 +123,7 @@
|
||||
/*
|
||||
* Limit the use of PFMEMALLOC reserves to those protocols that implement
|
||||
* the special handling of PFMEMALLOC skbs.
|
||||
@@ -5403,6 +5416,10 @@ static int __netif_receive_skb_core(stru
|
||||
@@ -5407,6 +5420,10 @@ static int __netif_receive_skb_core(stru
|
||||
int ret = NET_RX_DROP;
|
||||
__be16 type;
|
||||
|
||||
@ -134,7 +134,7 @@
|
||||
net_timestamp_check(!READ_ONCE(netdev_tstamp_prequeue), skb);
|
||||
|
||||
trace_netif_receive_skb(skb);
|
||||
@@ -5440,6 +5457,15 @@ another_round:
|
||||
@@ -5444,6 +5461,15 @@ another_round:
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- a/net/netfilter/nf_tables_api.c
|
||||
+++ b/net/netfilter/nf_tables_api.c
|
||||
@@ -8333,7 +8333,7 @@ static int nft_register_flowtable_net_ho
|
||||
@@ -8376,7 +8376,7 @@ static int nft_register_flowtable_net_ho
|
||||
err = flowtable->data.type->setup(&flowtable->data,
|
||||
hook->ops.dev,
|
||||
FLOW_BLOCK_BIND);
|
||||
|
@ -49,7 +49,7 @@ Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
|
||||
|
||||
--- a/drivers/net/phy/aquantia/aquantia_main.c
|
||||
+++ b/drivers/net/phy/aquantia/aquantia_main.c
|
||||
@@ -501,7 +501,7 @@ static int aqr107_config_init(struct phy
|
||||
@@ -477,7 +477,7 @@ static int aqr107_config_init(struct phy
|
||||
{
|
||||
struct aqr107_priv *priv = phydev->priv;
|
||||
u32 led_active_low;
|
||||
@ -58,7 +58,7 @@ Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
|
||||
|
||||
/* Check that the PHY interface type is compatible */
|
||||
if (phydev->interface != PHY_INTERFACE_MODE_SGMII &&
|
||||
@@ -537,10 +537,9 @@ static int aqr107_config_init(struct phy
|
||||
@@ -504,10 +504,9 @@ static int aqr107_config_init(struct phy
|
||||
|
||||
/* Restore LED polarity state after reset */
|
||||
for_each_set_bit(led_active_low, &priv->leds_active_low, AQR_MAX_LEDS) {
|
||||
|
@ -37,7 +37,7 @@
|
||||
* CONFIG_CMDLINE is meant to be a default in case nothing else
|
||||
--- a/arch/arm64/Kconfig
|
||||
+++ b/arch/arm64/Kconfig
|
||||
@@ -2307,6 +2307,14 @@ config CMDLINE_FORCE
|
||||
@@ -2308,6 +2308,14 @@ config CMDLINE_FORCE
|
||||
|
||||
endchoice
|
||||
|
||||
|
@ -25,7 +25,7 @@ Subject: [PATCH] r8169: add LED configuration from OF
|
||||
TxDescStartAddrLow = 0x20,
|
||||
TxDescStartAddrHigh = 0x24,
|
||||
TxHDescStartAddrLow = 0x28,
|
||||
@@ -5325,6 +5327,22 @@ static bool rtl_aspm_is_safe(struct rtl8
|
||||
@@ -5352,6 +5354,22 @@ static bool rtl_aspm_is_safe(struct rtl8
|
||||
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)
|
||||
{
|
||||
struct rtl8169_private *tp;
|
||||
@@ -5493,6 +5511,7 @@ static int rtl_init_one(struct pci_dev *
|
||||
@@ -5520,6 +5538,7 @@ static int rtl_init_one(struct pci_dev *
|
||||
if (!tp->counters)
|
||||
return -ENOMEM;
|
||||
|
||||
|
@ -18,7 +18,7 @@ Subject: [PATCH] net: phy: realtek: add LED configuration from OF for 8211f
|
||||
#define RTL8211F_PHYCR1 0x18
|
||||
#define RTL8211F_PHYCR2 0x19
|
||||
#define RTL8211F_INSR 0x1d
|
||||
@@ -380,6 +382,7 @@ static int rtl8211f_config_init(struct p
|
||||
@@ -382,6 +384,7 @@ static int rtl8211f_config_init(struct p
|
||||
struct rtl821x_priv *priv = phydev->priv;
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
u16 val_txdly, val_rxdly;
|
||||
@ -26,7 +26,7 @@ Subject: [PATCH] net: phy: realtek: add LED configuration from OF for 8211f
|
||||
int ret;
|
||||
|
||||
ret = phy_modify_paged_changed(phydev, 0xa43, RTL8211F_PHYCR1,
|
||||
@@ -446,6 +449,15 @@ static int rtl8211f_config_init(struct p
|
||||
@@ -448,6 +451,15 @@ static int rtl8211f_config_init(struct p
|
||||
val_rxdly ? "enabled" : "disabled");
|
||||
}
|
||||
|
||||
|
@ -88,7 +88,7 @@ Change-Id: I09745b6a31484d6a27f04e608268d9738c1fe224
|
||||
obj-$(CONFIG_CLK_RK3588) += clk-rk3588.o rst-rk3588.o
|
||||
--- a/drivers/clk/rockchip/clk.c
|
||||
+++ b/drivers/clk/rockchip/clk.c
|
||||
@@ -526,6 +526,14 @@ void rockchip_clk_register_branches(stru
|
||||
@@ -527,6 +527,14 @@ void rockchip_clk_register_branches(stru
|
||||
ctx->reg_base + list->gate_offset,
|
||||
list->gate_shift, list->gate_flags, &ctx->lock);
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user