mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
kernel: refresh 6.1 patches
Fixes: 718ac37
("kernel: bump 6.1 to 6.1.111")
Closed: #12487
This commit is contained in:
parent
6dc420855a
commit
801f345131
@ -294,7 +294,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
struct mem_cgroup *memcg = lruvec_memcg(lruvec);
|
||||
|
||||
VM_WARN_ON_ONCE(!list_empty(list));
|
||||
@@ -5249,7 +5249,7 @@ done:
|
||||
@@ -5248,7 +5248,7 @@ done:
|
||||
|
||||
static bool __maybe_unused state_is_valid(struct lruvec *lruvec)
|
||||
{
|
||||
@ -303,7 +303,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
if (lrugen->enabled) {
|
||||
enum lru_list lru;
|
||||
@@ -5531,7 +5531,7 @@ static void lru_gen_seq_show_full(struct
|
||||
@@ -5530,7 +5530,7 @@ static void lru_gen_seq_show_full(struct
|
||||
int i;
|
||||
int type, tier;
|
||||
int hist = lru_hist_from_seq(seq);
|
||||
@ -312,7 +312,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
for (tier = 0; tier < MAX_NR_TIERS; tier++) {
|
||||
seq_printf(m, " %10d", tier);
|
||||
@@ -5581,7 +5581,7 @@ static int lru_gen_seq_show(struct seq_f
|
||||
@@ -5580,7 +5580,7 @@ static int lru_gen_seq_show(struct seq_f
|
||||
unsigned long seq;
|
||||
bool full = !debugfs_real_fops(m->file)->write;
|
||||
struct lruvec *lruvec = v;
|
||||
@ -321,7 +321,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
int nid = lruvec_pgdat(lruvec)->node_id;
|
||||
struct mem_cgroup *memcg = lruvec_memcg(lruvec);
|
||||
DEFINE_MAX_SEQ(lruvec);
|
||||
@@ -5835,7 +5835,7 @@ void lru_gen_init_lruvec(struct lruvec *
|
||||
@@ -5834,7 +5834,7 @@ void lru_gen_init_lruvec(struct lruvec *
|
||||
{
|
||||
int i;
|
||||
int gen, type, zone;
|
||||
|
@ -76,7 +76,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
{
|
||||
int type;
|
||||
int scanned;
|
||||
@@ -5095,9 +5104,6 @@ retry:
|
||||
@@ -5094,9 +5103,6 @@ retry:
|
||||
goto retry;
|
||||
}
|
||||
|
||||
@ -86,7 +86,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
return scanned;
|
||||
}
|
||||
|
||||
@@ -5136,67 +5142,26 @@ done:
|
||||
@@ -5135,67 +5141,26 @@ done:
|
||||
return min_seq[!can_swap] + MIN_NR_GENS <= max_seq ? nr_to_scan : 0;
|
||||
}
|
||||
|
||||
@ -163,7 +163,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
lru_add_drain();
|
||||
|
||||
@@ -5220,7 +5185,7 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5219,7 +5184,7 @@ static void lru_gen_shrink_lruvec(struct
|
||||
if (!nr_to_scan)
|
||||
goto done;
|
||||
|
||||
@ -172,7 +172,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
if (!delta)
|
||||
goto done;
|
||||
|
||||
@@ -5228,7 +5193,7 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5227,7 +5192,7 @@ static void lru_gen_shrink_lruvec(struct
|
||||
if (scanned >= nr_to_scan)
|
||||
break;
|
||||
|
||||
@ -181,7 +181,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
break;
|
||||
|
||||
cond_resched();
|
||||
@@ -5678,7 +5643,7 @@ static int run_eviction(struct lruvec *l
|
||||
@@ -5677,7 +5642,7 @@ static int run_eviction(struct lruvec *l
|
||||
if (sc->nr_reclaimed >= nr_to_reclaim)
|
||||
return 0;
|
||||
|
||||
|
@ -214,7 +214,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
*/
|
||||
if (mutex_trylock(&oom_lock)) {
|
||||
struct oom_control oc = {
|
||||
@@ -5113,33 +5117,27 @@ retry:
|
||||
@@ -5112,33 +5116,27 @@ retry:
|
||||
* reclaim.
|
||||
*/
|
||||
static unsigned long get_nr_to_scan(struct lruvec *lruvec, struct scan_control *sc,
|
||||
@ -254,7 +254,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
}
|
||||
|
||||
static unsigned long get_nr_to_reclaim(struct scan_control *sc)
|
||||
@@ -5158,9 +5156,7 @@ static unsigned long get_nr_to_reclaim(s
|
||||
@@ -5157,9 +5155,7 @@ static unsigned long get_nr_to_reclaim(s
|
||||
static void lru_gen_shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc)
|
||||
{
|
||||
struct blk_plug plug;
|
||||
@ -264,7 +264,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
unsigned long nr_to_reclaim = get_nr_to_reclaim(sc);
|
||||
|
||||
lru_add_drain();
|
||||
@@ -5181,13 +5177,13 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5180,13 +5176,13 @@ static void lru_gen_shrink_lruvec(struct
|
||||
else
|
||||
swappiness = 0;
|
||||
|
||||
@ -281,7 +281,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
scanned += delta;
|
||||
if (scanned >= nr_to_scan)
|
||||
@@ -5199,10 +5195,6 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5198,10 +5194,6 @@ static void lru_gen_shrink_lruvec(struct
|
||||
cond_resched();
|
||||
}
|
||||
|
||||
|
@ -95,7 +95,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
static bool lruvec_is_sizable(struct lruvec *lruvec, struct scan_control *sc)
|
||||
{
|
||||
int gen, type, zone;
|
||||
@@ -5111,6 +5049,68 @@ retry:
|
||||
@@ -5110,6 +5048,68 @@ retry:
|
||||
return scanned;
|
||||
}
|
||||
|
||||
|
@ -335,7 +335,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
if (order > 0)
|
||||
return 0;
|
||||
|
||||
@@ -5387,6 +5400,7 @@ static int mem_cgroup_css_online(struct
|
||||
@@ -5408,6 +5421,7 @@ static int mem_cgroup_css_online(struct
|
||||
if (unlikely(mem_cgroup_is_root(memcg)))
|
||||
queue_delayed_work(system_unbound_wq, &stats_flush_dwork,
|
||||
2UL*HZ);
|
||||
@ -343,7 +343,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
return 0;
|
||||
offline_kmem:
|
||||
memcg_offline_kmem(memcg);
|
||||
@@ -5418,6 +5432,7 @@ static void mem_cgroup_css_offline(struc
|
||||
@@ -5439,6 +5453,7 @@ static void mem_cgroup_css_offline(struc
|
||||
memcg_offline_kmem(memcg);
|
||||
reparent_shrinker_deferred(memcg);
|
||||
wb_memcg_offline(memcg);
|
||||
@ -351,7 +351,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
drain_all_stock(memcg);
|
||||
|
||||
@@ -5429,6 +5444,7 @@ static void mem_cgroup_css_released(stru
|
||||
@@ -5450,6 +5465,7 @@ static void mem_cgroup_css_released(stru
|
||||
struct mem_cgroup *memcg = mem_cgroup_from_css(css);
|
||||
|
||||
invalidate_reclaim_iterators(memcg);
|
||||
@ -361,7 +361,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
static void mem_cgroup_css_free(struct cgroup_subsys_state *css)
|
||||
--- a/mm/page_alloc.c
|
||||
+++ b/mm/page_alloc.c
|
||||
@@ -7949,6 +7949,7 @@ static void __init free_area_init_node(i
|
||||
@@ -7956,6 +7956,7 @@ static void __init free_area_init_node(i
|
||||
pgdat_set_deferred_range(pgdat);
|
||||
|
||||
free_area_init_core(pgdat);
|
||||
@ -421,7 +421,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
/* check the order to exclude compaction-induced reclaim */
|
||||
if (!min_ttl || sc->order || sc->priority == DEF_PRIORITY)
|
||||
return;
|
||||
@@ -5116,8 +5113,7 @@ static bool should_run_aging(struct lruv
|
||||
@@ -5115,8 +5112,7 @@ static bool should_run_aging(struct lruv
|
||||
* 1. Defer try_to_inc_max_seq() to workqueues to reduce latency for memcg
|
||||
* reclaim.
|
||||
*/
|
||||
@ -431,7 +431,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
{
|
||||
unsigned long nr_to_scan;
|
||||
struct mem_cgroup *memcg = lruvec_memcg(lruvec);
|
||||
@@ -5134,10 +5130,8 @@ static unsigned long get_nr_to_scan(stru
|
||||
@@ -5133,10 +5129,8 @@ static unsigned long get_nr_to_scan(stru
|
||||
if (sc->priority == DEF_PRIORITY)
|
||||
return nr_to_scan;
|
||||
|
||||
@ -443,7 +443,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
}
|
||||
|
||||
static unsigned long get_nr_to_reclaim(struct scan_control *sc)
|
||||
@@ -5146,29 +5140,18 @@ static unsigned long get_nr_to_reclaim(s
|
||||
@@ -5145,29 +5139,18 @@ static unsigned long get_nr_to_reclaim(s
|
||||
if (!global_reclaim(sc))
|
||||
return -1;
|
||||
|
||||
@ -475,7 +475,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
if (sc->may_swap)
|
||||
swappiness = get_swappiness(lruvec, sc);
|
||||
@@ -5178,7 +5161,7 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5177,7 +5160,7 @@ static void lru_gen_shrink_lruvec(struct
|
||||
swappiness = 0;
|
||||
|
||||
nr_to_scan = get_nr_to_scan(lruvec, sc, swappiness);
|
||||
@ -484,7 +484,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
break;
|
||||
|
||||
delta = evict_folios(lruvec, sc, swappiness);
|
||||
@@ -5195,10 +5178,251 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5194,10 +5177,251 @@ static void lru_gen_shrink_lruvec(struct
|
||||
cond_resched();
|
||||
}
|
||||
|
||||
@ -736,7 +736,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
/******************************************************************************
|
||||
* state change
|
||||
@@ -5656,11 +5880,11 @@ static int run_cmd(char cmd, int memcg_i
|
||||
@@ -5655,11 +5879,11 @@ static int run_cmd(char cmd, int memcg_i
|
||||
|
||||
if (!mem_cgroup_disabled()) {
|
||||
rcu_read_lock();
|
||||
@ -751,7 +751,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
rcu_read_unlock();
|
||||
|
||||
if (!memcg)
|
||||
@@ -5808,6 +6032,19 @@ void lru_gen_init_lruvec(struct lruvec *
|
||||
@@ -5807,6 +6031,19 @@ void lru_gen_init_lruvec(struct lruvec *
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MEMCG
|
||||
@ -771,7 +771,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
void lru_gen_init_memcg(struct mem_cgroup *memcg)
|
||||
{
|
||||
INIT_LIST_HEAD(&memcg->mm_list.fifo);
|
||||
@@ -5831,7 +6068,69 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
@@ -5830,7 +6067,69 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -842,7 +842,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
static int __init init_lru_gen(void)
|
||||
{
|
||||
@@ -5858,6 +6157,10 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5857,6 +6156,10 @@ static void lru_gen_shrink_lruvec(struct
|
||||
{
|
||||
}
|
||||
|
||||
@ -853,7 +853,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
#endif /* CONFIG_LRU_GEN */
|
||||
|
||||
static void shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc)
|
||||
@@ -5871,7 +6174,7 @@ static void shrink_lruvec(struct lruvec
|
||||
@@ -5870,7 +6173,7 @@ static void shrink_lruvec(struct lruvec
|
||||
bool proportional_reclaim;
|
||||
struct blk_plug plug;
|
||||
|
||||
@ -862,7 +862,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
lru_gen_shrink_lruvec(lruvec, sc);
|
||||
return;
|
||||
}
|
||||
@@ -6114,6 +6417,11 @@ static void shrink_node(pg_data_t *pgdat
|
||||
@@ -6113,6 +6416,11 @@ static void shrink_node(pg_data_t *pgdat
|
||||
struct lruvec *target_lruvec;
|
||||
bool reclaimable = false;
|
||||
|
||||
|
@ -113,7 +113,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
*/
|
||||
return isolated || !remaining ? scanned : 0;
|
||||
}
|
||||
@@ -5119,8 +5115,7 @@ static long get_nr_to_scan(struct lruvec
|
||||
@@ -5118,8 +5114,7 @@ static long get_nr_to_scan(struct lruvec
|
||||
struct mem_cgroup *memcg = lruvec_memcg(lruvec);
|
||||
DEFINE_MAX_SEQ(lruvec);
|
||||
|
||||
@ -123,7 +123,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
return 0;
|
||||
|
||||
if (!should_run_aging(lruvec, max_seq, sc, can_swap, &nr_to_scan))
|
||||
@@ -5148,17 +5143,14 @@ static bool try_to_shrink_lruvec(struct
|
||||
@@ -5147,17 +5142,14 @@ static bool try_to_shrink_lruvec(struct
|
||||
long nr_to_scan;
|
||||
unsigned long scanned = 0;
|
||||
unsigned long nr_to_reclaim = get_nr_to_reclaim(sc);
|
||||
@ -146,7 +146,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
nr_to_scan = get_nr_to_scan(lruvec, sc, swappiness);
|
||||
if (nr_to_scan <= 0)
|
||||
@@ -5289,12 +5281,13 @@ static void lru_gen_shrink_lruvec(struct
|
||||
@@ -5288,12 +5280,13 @@ static void lru_gen_shrink_lruvec(struct
|
||||
struct blk_plug plug;
|
||||
|
||||
VM_WARN_ON_ONCE(global_reclaim(sc));
|
||||
@ -161,7 +161,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
if (try_to_shrink_lruvec(lruvec, sc))
|
||||
lru_gen_rotate_memcg(lruvec, MEMCG_LRU_YOUNG);
|
||||
@@ -5350,11 +5343,19 @@ static void lru_gen_shrink_node(struct p
|
||||
@@ -5349,11 +5342,19 @@ static void lru_gen_shrink_node(struct p
|
||||
|
||||
VM_WARN_ON_ONCE(!global_reclaim(sc));
|
||||
|
||||
@ -182,7 +182,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
set_initial_priority(pgdat, sc);
|
||||
|
||||
@@ -5372,7 +5373,7 @@ static void lru_gen_shrink_node(struct p
|
||||
@@ -5371,7 +5372,7 @@ static void lru_gen_shrink_node(struct p
|
||||
clear_mm_walk();
|
||||
|
||||
blk_finish_plug(&plug);
|
||||
@ -191,7 +191,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
/* kswapd should never fail */
|
||||
pgdat->kswapd_failures = 0;
|
||||
}
|
||||
@@ -5944,7 +5945,7 @@ static ssize_t lru_gen_seq_write(struct
|
||||
@@ -5943,7 +5944,7 @@ static ssize_t lru_gen_seq_write(struct
|
||||
set_task_reclaim_state(current, &sc.reclaim_state);
|
||||
flags = memalloc_noreclaim_save();
|
||||
blk_start_plug(&plug);
|
||||
|
@ -29,7 +29,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
--- a/mm/vmscan.c
|
||||
+++ b/mm/vmscan.c
|
||||
@@ -5218,18 +5218,20 @@ static int shrink_one(struct lruvec *lru
|
||||
@@ -5217,18 +5217,20 @@ static int shrink_one(struct lruvec *lru
|
||||
|
||||
static void shrink_many(struct pglist_data *pgdat, struct scan_control *sc)
|
||||
{
|
||||
@ -52,7 +52,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
gen = get_memcg_gen(READ_ONCE(pgdat->memcg_lru.seq));
|
||||
|
||||
rcu_read_lock();
|
||||
@@ -5253,14 +5255,22 @@ restart:
|
||||
@@ -5252,14 +5254,22 @@ restart:
|
||||
|
||||
op = shrink_one(lruvec, sc);
|
||||
|
||||
@ -78,7 +78,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
/* restart if raced with lru_gen_rotate_memcg() */
|
||||
if (gen != get_nulls_value(pos))
|
||||
goto restart;
|
||||
@@ -5269,11 +5279,6 @@ restart:
|
||||
@@ -5268,11 +5278,6 @@ restart:
|
||||
bin = get_memcg_bin(bin + 1);
|
||||
if (bin != first_bin)
|
||||
goto restart;
|
||||
|
@ -87,7 +87,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
mark_page_accessed(page);
|
||||
}
|
||||
rss[mm_counter(page)]--;
|
||||
@@ -5219,8 +5218,8 @@ static inline void mm_account_fault(stru
|
||||
@@ -5235,8 +5234,8 @@ static inline void mm_account_fault(stru
|
||||
#ifdef CONFIG_LRU_GEN
|
||||
static void lru_gen_enter_fault(struct vm_area_struct *vma)
|
||||
{
|
||||
|
@ -303,7 +303,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
* the eviction
|
||||
******************************************************************************/
|
||||
|
||||
@@ -5398,53 +5540,6 @@ done:
|
||||
@@ -5397,53 +5539,6 @@ done:
|
||||
pgdat->kswapd_failures = 0;
|
||||
}
|
||||
|
||||
@ -357,7 +357,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
/******************************************************************************
|
||||
* state change
|
||||
******************************************************************************/
|
||||
@@ -6090,67 +6185,6 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
@@ -6089,67 +6184,6 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: T.J. Mercier <tjmercier@google.com>
|
||||
|
||||
--- a/mm/vmscan.c
|
||||
+++ b/mm/vmscan.c
|
||||
@@ -6172,12 +6172,17 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
@@ -6171,12 +6171,17 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
int i;
|
||||
int nid;
|
||||
|
||||
|
@ -255,7 +255,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
@@ -6117,7 +6087,6 @@ void lru_gen_init_lruvec(struct lruvec *
|
||||
@@ -6116,7 +6086,6 @@ void lru_gen_init_lruvec(struct lruvec *
|
||||
INIT_LIST_HEAD(&lrugen->folios[gen][type][zone]);
|
||||
|
||||
lruvec->mm_state.seq = MIN_NR_GENS;
|
||||
@ -263,7 +263,7 @@ Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MEMCG
|
||||
@@ -6150,7 +6119,6 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
@@ -6149,7 +6118,6 @@ void lru_gen_exit_memcg(struct mem_cgrou
|
||||
for_each_node(nid) {
|
||||
struct lruvec *lruvec = get_lruvec(memcg, nid);
|
||||
|
||||
|
@ -14,7 +14,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org>
|
||||
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -701,6 +701,7 @@ static const struct spi_device_id spidev
|
||||
@@ -702,6 +702,7 @@ static const struct spi_device_id spidev
|
||||
{ .name = "spi-petra" },
|
||||
{ .name = "spi-authenta" },
|
||||
{ .name = "em3581" },
|
||||
@ -22,9 +22,9 @@ Signed-off-by: Mark Brown <broonie@kernel.org>
|
||||
{},
|
||||
};
|
||||
MODULE_DEVICE_TABLE(spi, spidev_spi_ids);
|
||||
@@ -728,6 +729,7 @@ static const struct of_device_id spidev_
|
||||
{ .compatible = "cisco,spi-petra", .data = &spidev_of_check },
|
||||
{ .compatible = "micron,spi-authenta", .data = &spidev_of_check },
|
||||
@@ -730,6 +731,7 @@ static const struct of_device_id spidev_
|
||||
{ .compatible = "rohm,dh2228fv", .data = &spidev_of_check },
|
||||
{ .compatible = "semtech,sx1301", .data = &spidev_of_check },
|
||||
{ .compatible = "silabs,em3581", .data = &spidev_of_check },
|
||||
+ { .compatible = "silabs,si3210", .data = &spidev_of_check },
|
||||
{},
|
||||
|
@ -130,7 +130,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
struct dpaa_priv *priv = netdev_priv(net_dev);
|
||||
struct qm_mcc_initcgr opts = { };
|
||||
u32 cs_th;
|
||||
@@ -2905,58 +2915,6 @@ static void dpaa_eth_napi_disable(struct
|
||||
@@ -2920,58 +2930,6 @@ static void dpaa_eth_napi_disable(struct
|
||||
}
|
||||
}
|
||||
|
||||
@ -189,7 +189,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static int dpaa_open(struct net_device *net_dev)
|
||||
{
|
||||
struct mac_device *mac_dev;
|
||||
@@ -2967,7 +2925,8 @@ static int dpaa_open(struct net_device *
|
||||
@@ -2982,7 +2940,8 @@ static int dpaa_open(struct net_device *
|
||||
mac_dev = priv->mac_dev;
|
||||
dpaa_eth_napi_enable(priv);
|
||||
|
||||
@ -199,7 +199,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
if (err)
|
||||
goto phy_init_failed;
|
||||
|
||||
@@ -2982,7 +2941,7 @@ static int dpaa_open(struct net_device *
|
||||
@@ -2997,7 +2956,7 @@ static int dpaa_open(struct net_device *
|
||||
netif_err(priv, ifup, net_dev, "mac_dev->enable() = %d\n", err);
|
||||
goto mac_start_failed;
|
||||
}
|
||||
@ -208,7 +208,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
netif_tx_start_all_queues(net_dev);
|
||||
|
||||
@@ -2991,6 +2950,7 @@ static int dpaa_open(struct net_device *
|
||||
@@ -3006,6 +2965,7 @@ static int dpaa_open(struct net_device *
|
||||
mac_start_failed:
|
||||
for (i = 0; i < ARRAY_SIZE(mac_dev->port); i++)
|
||||
fman_port_disable(mac_dev->port[i]);
|
||||
@ -216,7 +216,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
phy_init_failed:
|
||||
dpaa_eth_napi_disable(priv);
|
||||
@@ -3146,10 +3106,12 @@ static int dpaa_ts_ioctl(struct net_devi
|
||||
@@ -3161,10 +3121,12 @@ static int dpaa_ts_ioctl(struct net_devi
|
||||
static int dpaa_ioctl(struct net_device *net_dev, struct ifreq *rq, int cmd)
|
||||
{
|
||||
int ret = -EINVAL;
|
||||
@ -230,7 +230,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
|
||||
if (cmd == SIOCSHWTSTAMP)
|
||||
@@ -3552,6 +3514,7 @@ static int dpaa_remove(struct platform_d
|
||||
@@ -3569,6 +3531,7 @@ static int dpaa_remove(struct platform_d
|
||||
|
||||
dev_set_drvdata(dev, NULL);
|
||||
unregister_netdev(net_dev);
|
||||
|
@ -202,7 +202,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.mac_link_up = am65_cpsw_nuss_mac_link_up,
|
||||
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
|
||||
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
|
||||
@@ -1736,7 +1736,6 @@ static void axienet_mac_link_up(struct p
|
||||
@@ -1741,7 +1741,6 @@ static void axienet_mac_link_up(struct p
|
||||
}
|
||||
|
||||
static const struct phylink_mac_ops axienet_phylink_ops = {
|
||||
|
@ -53,7 +53,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
supported = mac_dev->phylink_config.supported_interfaces;
|
||||
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
|
||||
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
|
||||
@@ -1631,7 +1631,7 @@ static void axienet_pcs_an_restart(struc
|
||||
@@ -1636,7 +1636,7 @@ static void axienet_pcs_an_restart(struc
|
||||
phylink_mii_c22_pcs_an_restart(pcs_phy);
|
||||
}
|
||||
|
||||
@ -62,7 +62,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
phy_interface_t interface,
|
||||
const unsigned long *advertising,
|
||||
bool permit_pause_to_mac)
|
||||
@@ -1653,7 +1653,8 @@ static int axienet_pcs_config(struct phy
|
||||
@@ -1658,7 +1658,8 @@ static int axienet_pcs_config(struct phy
|
||||
}
|
||||
}
|
||||
|
||||
@ -72,7 +72,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
if (ret < 0)
|
||||
netdev_warn(ndev, "Failed to configure PCS: %d\n", ret);
|
||||
|
||||
@@ -2129,6 +2130,7 @@ static int axienet_probe(struct platform
|
||||
@@ -2138,6 +2139,7 @@ static int axienet_probe(struct platform
|
||||
}
|
||||
of_node_put(np);
|
||||
lp->pcs.ops = &axienet_pcs_ops;
|
||||
|
@ -18,7 +18,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/usb/ipheth.c
|
||||
+++ b/drivers/net/usb/ipheth.c
|
||||
@@ -510,8 +510,8 @@ err_register_netdev:
|
||||
@@ -511,8 +511,8 @@ err_register_netdev:
|
||||
ipheth_free_urbs(dev);
|
||||
err_alloc_urbs:
|
||||
err_get_macaddr:
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
--- a/drivers/net/usb/ipheth.c
|
||||
+++ b/drivers/net/usb/ipheth.c
|
||||
@@ -373,12 +373,10 @@ static netdev_tx_t ipheth_tx(struct sk_b
|
||||
@@ -374,12 +374,10 @@ static netdev_tx_t ipheth_tx(struct sk_b
|
||||
}
|
||||
|
||||
memcpy(dev->tx_buf, skb->data, skb->len);
|
||||
|
@ -256,7 +256,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
ipheth_rx_submit(dev, GFP_ATOMIC);
|
||||
}
|
||||
|
||||
@@ -310,6 +411,27 @@ static int ipheth_get_macaddr(struct iph
|
||||
@@ -311,6 +412,27 @@ static int ipheth_get_macaddr(struct iph
|
||||
return retval;
|
||||
}
|
||||
|
||||
@ -284,7 +284,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static int ipheth_rx_submit(struct ipheth_device *dev, gfp_t mem_flags)
|
||||
{
|
||||
struct usb_device *udev = dev->udev;
|
||||
@@ -317,7 +439,7 @@ static int ipheth_rx_submit(struct iphet
|
||||
@@ -318,7 +440,7 @@ static int ipheth_rx_submit(struct iphet
|
||||
|
||||
usb_fill_bulk_urb(dev->rx_urb, udev,
|
||||
usb_rcvbulkpipe(udev, dev->bulk_in),
|
||||
@ -293,7 +293,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
ipheth_rcvbulk_callback,
|
||||
dev);
|
||||
dev->rx_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
|
||||
@@ -365,7 +487,7 @@ static netdev_tx_t ipheth_tx(struct sk_b
|
||||
@@ -366,7 +488,7 @@ static netdev_tx_t ipheth_tx(struct sk_b
|
||||
int retval;
|
||||
|
||||
/* Paranoid */
|
||||
@ -302,7 +302,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
WARN(1, "%s: skb too large: %d bytes\n", __func__, skb->len);
|
||||
dev->net->stats.tx_dropped++;
|
||||
dev_kfree_skb_any(skb);
|
||||
@@ -448,6 +570,8 @@ static int ipheth_probe(struct usb_inter
|
||||
@@ -449,6 +571,8 @@ static int ipheth_probe(struct usb_inter
|
||||
dev->net = netdev;
|
||||
dev->intf = intf;
|
||||
dev->confirmed_pairing = false;
|
||||
@ -311,7 +311,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
/* Set up endpoints */
|
||||
hintf = usb_altnum_to_altsetting(intf, IPHETH_ALT_INTFNUM);
|
||||
if (hintf == NULL) {
|
||||
@@ -479,6 +603,12 @@ static int ipheth_probe(struct usb_inter
|
||||
@@ -480,6 +604,12 @@ static int ipheth_probe(struct usb_inter
|
||||
if (retval)
|
||||
goto err_get_macaddr;
|
||||
|
||||
|
@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
static int mv88e6352_get_port4_serdes_cmode(struct mv88e6xxx_chip *chip)
|
||||
{
|
||||
u16 reg, val;
|
||||
@@ -4501,7 +4513,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
@@ -4502,7 +4514,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
.vtu_loadpurge = mv88e6352_g1_vtu_loadpurge,
|
||||
.stu_getnext = mv88e6352_g1_stu_getnext,
|
||||
.stu_loadpurge = mv88e6352_g1_stu_loadpurge,
|
||||
@ -60,7 +60,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
};
|
||||
|
||||
static const struct mv88e6xxx_ops mv88e6172_ops = {
|
||||
@@ -4604,7 +4616,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
@@ -4605,7 +4617,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
.vtu_loadpurge = mv88e6352_g1_vtu_loadpurge,
|
||||
.stu_getnext = mv88e6352_g1_stu_getnext,
|
||||
.stu_loadpurge = mv88e6352_g1_stu_loadpurge,
|
||||
@ -69,7 +69,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
};
|
||||
|
||||
static const struct mv88e6xxx_ops mv88e6176_ops = {
|
||||
@@ -5281,7 +5293,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
@@ -5282,7 +5294,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
.vtu_loadpurge = mv88e6352_g1_vtu_loadpurge,
|
||||
.stu_getnext = mv88e6352_g1_stu_getnext,
|
||||
.stu_loadpurge = mv88e6352_g1_stu_loadpurge,
|
||||
@ -78,7 +78,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
};
|
||||
|
||||
static const struct mv88e6xxx_ops mv88e6351_ops = {
|
||||
@@ -5327,7 +5339,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
@@ -5328,7 +5340,7 @@ static const struct mv88e6xxx_ops mv88e6
|
||||
.stu_loadpurge = mv88e6352_g1_stu_loadpurge,
|
||||
.avb_ops = &mv88e6352_avb_ops,
|
||||
.ptp_ops = &mv88e6352_ptp_ops,
|
||||
|
@ -35,7 +35,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
int current_brightness;
|
||||
--- a/include/linux/leds.h
|
||||
+++ b/include/linux/leds.h
|
||||
@@ -527,6 +527,16 @@ static inline void *led_get_trigger_data
|
||||
@@ -525,6 +525,16 @@ led_trigger_get_brightness(const struct
|
||||
|
||||
#endif /* CONFIG_LEDS_TRIGGERS */
|
||||
|
||||
|
@ -230,7 +230,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
/* base state is ON (link present) */
|
||||
--- a/include/linux/leds.h
|
||||
+++ b/include/linux/leds.h
|
||||
@@ -530,6 +530,9 @@ static inline void *led_get_trigger_data
|
||||
@@ -528,6 +528,9 @@ led_trigger_get_brightness(const struct
|
||||
/* Trigger specific enum */
|
||||
enum led_trigger_netdev_modes {
|
||||
TRIGGER_NETDEV_LINK = 0,
|
||||
|
@ -127,7 +127,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
/* base state is ON (link present) */
|
||||
--- a/include/linux/leds.h
|
||||
+++ b/include/linux/leds.h
|
||||
@@ -533,6 +533,8 @@ enum led_trigger_netdev_modes {
|
||||
@@ -531,6 +531,8 @@ enum led_trigger_netdev_modes {
|
||||
TRIGGER_NETDEV_LINK_10,
|
||||
TRIGGER_NETDEV_LINK_100,
|
||||
TRIGGER_NETDEV_LINK_1000,
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
||||
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
||||
@@ -5998,7 +5998,8 @@ static const struct mv88e6xxx_info mv88e
|
||||
@@ -5999,7 +5999,8 @@ static const struct mv88e6xxx_info mv88e
|
||||
.name = "Marvell 88E6191X",
|
||||
.num_databases = 4096,
|
||||
.num_ports = 11, /* 10 + Z80 */
|
||||
@ -30,7 +30,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.max_vid = 8191,
|
||||
.max_sid = 63,
|
||||
.port_base_addr = 0x0,
|
||||
@@ -6021,7 +6022,8 @@ static const struct mv88e6xxx_info mv88e
|
||||
@@ -6022,7 +6023,8 @@ static const struct mv88e6xxx_info mv88e
|
||||
.name = "Marvell 88E6193X",
|
||||
.num_databases = 4096,
|
||||
.num_ports = 11, /* 10 + Z80 */
|
||||
@ -40,7 +40,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.max_vid = 8191,
|
||||
.max_sid = 63,
|
||||
.port_base_addr = 0x0,
|
||||
@@ -6340,7 +6342,8 @@ static const struct mv88e6xxx_info mv88e
|
||||
@@ -6341,7 +6343,8 @@ static const struct mv88e6xxx_info mv88e
|
||||
.name = "Marvell 88E6393X",
|
||||
.num_databases = 4096,
|
||||
.num_ports = 11, /* 10 + Z80 */
|
||||
|
@ -58,7 +58,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6285,6 +6291,32 @@ static const struct mv88e6xxx_info mv88e
|
||||
@@ -6286,6 +6292,32 @@ static const struct mv88e6xxx_info mv88e
|
||||
.ptp_support = true,
|
||||
.ops = &mv88e6352_ops,
|
||||
},
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
|
||||
+++ b/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
|
||||
@@ -4157,17 +4157,6 @@ void intel_execlists_show_requests(struc
|
||||
@@ -4153,17 +4153,6 @@ void intel_execlists_show_requests(struc
|
||||
spin_unlock_irqrestore(&sched_engine->lock, flags);
|
||||
}
|
||||
|
||||
@ -38,7 +38,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
void intel_execlists_dump_active_requests(struct intel_engine_cs *engine,
|
||||
struct i915_request *hung_rq,
|
||||
struct drm_printer *m)
|
||||
@@ -4178,8 +4167,8 @@ void intel_execlists_dump_active_request
|
||||
@@ -4174,8 +4163,8 @@ void intel_execlists_dump_active_request
|
||||
|
||||
intel_engine_dump_active_requests(&engine->sched_engine->requests, hung_rq, m);
|
||||
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/include/linux/of.h
|
||||
+++ b/include/linux/of.h
|
||||
@@ -1009,6 +1009,31 @@ static inline int of_parse_phandle_with_
|
||||
@@ -1011,6 +1011,31 @@ static inline int of_parse_phandle_with_
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -161,7 +161,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
goto err_out;
|
||||
--- a/include/linux/of.h
|
||||
+++ b/include/linux/of.h
|
||||
@@ -362,7 +362,8 @@ extern int of_n_addr_cells(struct device
|
||||
@@ -364,7 +364,8 @@ extern int of_n_addr_cells(struct device
|
||||
extern int of_n_size_cells(struct device_node *np);
|
||||
extern const struct of_device_id *of_match_node(
|
||||
const struct of_device_id *matches, const struct device_node *node);
|
||||
|
@ -135,7 +135,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
+}
|
||||
--- a/include/linux/of.h
|
||||
+++ b/include/linux/of.h
|
||||
@@ -374,6 +374,9 @@ extern int of_parse_phandle_with_args_ma
|
||||
@@ -376,6 +376,9 @@ extern int of_parse_phandle_with_args_ma
|
||||
extern int of_count_phandle_with_args(const struct device_node *np,
|
||||
const char *list_name, const char *cells_name);
|
||||
|
||||
@ -145,7 +145,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
/* phandle iterator functions */
|
||||
extern int of_phandle_iterator_init(struct of_phandle_iterator *it,
|
||||
const struct device_node *np,
|
||||
@@ -731,6 +734,12 @@ static inline int of_count_phandle_with_
|
||||
@@ -733,6 +736,12 @@ static inline int of_count_phandle_with_
|
||||
return -ENOSYS;
|
||||
}
|
||||
|
||||
|
@ -109,7 +109,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
+EXPORT_SYMBOL_GPL(of_request_module);
|
||||
--- a/include/linux/of.h
|
||||
+++ b/include/linux/of.h
|
||||
@@ -376,6 +376,7 @@ extern int of_count_phandle_with_args(co
|
||||
@@ -378,6 +378,7 @@ extern int of_count_phandle_with_args(co
|
||||
|
||||
/* module functions */
|
||||
extern ssize_t of_modalias(const struct device_node *np, char *str, ssize_t len);
|
||||
@ -117,7 +117,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
/* phandle iterator functions */
|
||||
extern int of_phandle_iterator_init(struct of_phandle_iterator *it,
|
||||
@@ -739,6 +740,11 @@ static inline ssize_t of_modalias(const
|
||||
@@ -741,6 +742,11 @@ static inline ssize_t of_modalias(const
|
||||
{
|
||||
return -ENODEV;
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ Link: https://lore.kernel.org/r/20230526204802.3081168-4-robimarko@gmail.com
|
||||
|
||||
enum _msm8996_version {
|
||||
MSM8996_V3,
|
||||
@@ -153,12 +148,12 @@ static enum _msm8996_version qcom_cpufre
|
||||
@@ -157,12 +152,12 @@ static enum _msm8996_version qcom_cpufre
|
||||
msm_id++;
|
||||
|
||||
switch ((enum _msm_id)*msm_id) {
|
||||
|
@ -36,7 +36,7 @@ Link: https://lore.kernel.org/r/20230526204802.3081168-5-robimarko@gmail.com
|
||||
struct qcom_cpufreq_drv;
|
||||
|
||||
struct qcom_cpufreq_match_data {
|
||||
@@ -134,60 +126,32 @@ static void get_krait_bin_format_b(struc
|
||||
@@ -138,60 +130,32 @@ static void get_krait_bin_format_b(struc
|
||||
dev_dbg(cpu_dev, "PVS version: %d\n", *pvs_ver);
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ Signed-off-by: Lee Jones <lee@kernel.org>
|
||||
interval = jiffies_to_msecs(
|
||||
--- a/include/linux/leds.h
|
||||
+++ b/include/linux/leds.h
|
||||
@@ -533,6 +533,9 @@ enum led_trigger_netdev_modes {
|
||||
@@ -531,6 +531,9 @@ enum led_trigger_netdev_modes {
|
||||
TRIGGER_NETDEV_LINK_10,
|
||||
TRIGGER_NETDEV_LINK_100,
|
||||
TRIGGER_NETDEV_LINK_1000,
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
|
||||
--- a/drivers/bus/mhi/host/pci_generic.c
|
||||
+++ b/drivers/bus/mhi/host/pci_generic.c
|
||||
@@ -596,6 +596,9 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -599,6 +599,9 @@ static const struct pci_device_id mhi_pc
|
||||
/* MV32-WB (Cinterion) */
|
||||
{ PCI_DEVICE(0x1269, 0x00bb),
|
||||
.driver_data = (kernel_ulong_t) &mhi_mv32_info },
|
||||
|
@ -28,7 +28,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
/**
|
||||
* struct mhi_pci_dev_info - MHI PCI device specific information
|
||||
* @config: MHI controller configuration
|
||||
@@ -557,11 +561,11 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -560,11 +564,11 @@ static const struct pci_device_id mhi_pc
|
||||
.driver_data = (kernel_ulong_t) &mhi_telit_fn990_info },
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x0308),
|
||||
.driver_data = (kernel_ulong_t) &mhi_qcom_sdx65_info },
|
||||
@ -43,7 +43,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
.driver_data = (kernel_ulong_t) &mhi_quectel_em1xx_info },
|
||||
/* T99W175 (sdx55), Both for eSIM and Non-eSIM */
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_FOXCONN, 0xe0ab),
|
||||
@@ -585,16 +589,16 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -588,16 +592,16 @@ static const struct pci_device_id mhi_pc
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_FOXCONN, 0xe0d9),
|
||||
.driver_data = (kernel_ulong_t) &mhi_foxconn_sdx65_info },
|
||||
/* MV31-W (Cinterion) */
|
||||
|
@ -36,7 +36,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/mhi.h>
|
||||
@@ -901,11 +900,9 @@ static int mhi_pci_probe(struct pci_dev
|
||||
@@ -904,11 +903,9 @@ static int mhi_pci_probe(struct pci_dev
|
||||
mhi_pdev->pci_state = pci_store_saved_state(pdev);
|
||||
pci_load_saved_state(pdev, NULL);
|
||||
|
||||
@ -49,7 +49,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
|
||||
/* MHI bus does not power up the controller by default */
|
||||
err = mhi_prepare_for_power_up(mhi_cntrl);
|
||||
@@ -939,8 +936,6 @@ err_unprepare:
|
||||
@@ -942,8 +939,6 @@ err_unprepare:
|
||||
mhi_unprepare_after_power_down(mhi_cntrl);
|
||||
err_unregister:
|
||||
mhi_unregister_controller(mhi_cntrl);
|
||||
@ -58,7 +58,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
|
||||
return err;
|
||||
}
|
||||
@@ -963,7 +958,6 @@ static void mhi_pci_remove(struct pci_de
|
||||
@@ -966,7 +961,6 @@ static void mhi_pci_remove(struct pci_de
|
||||
pm_runtime_get_noresume(&pdev->dev);
|
||||
|
||||
mhi_unregister_controller(mhi_cntrl);
|
||||
|
@ -31,7 +31,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
static const struct mhi_pci_dev_info mhi_foxconn_sdx55_info = {
|
||||
.name = "foxconn-sdx55",
|
||||
.fw = "qcom/sdx55m/sbl1.mbn",
|
||||
@@ -587,6 +596,15 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -590,6 +599,15 @@ static const struct pci_device_id mhi_pc
|
||||
/* T99W373 (sdx62) */
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_FOXCONN, 0xe0d9),
|
||||
.driver_data = (kernel_ulong_t) &mhi_foxconn_sdx65_info },
|
||||
|
@ -23,7 +23,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
|
||||
--- a/drivers/bus/mhi/host/pci_generic.c
|
||||
+++ b/drivers/bus/mhi/host/pci_generic.c
|
||||
@@ -591,6 +591,8 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -594,6 +594,8 @@ static const struct pci_device_id mhi_pc
|
||||
.driver_data = (kernel_ulong_t) &mhi_quectel_em1xx_info },
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_QUECTEL, 0x1002), /* EM160R-GL (sdx24) */
|
||||
.driver_data = (kernel_ulong_t) &mhi_quectel_em1xx_info },
|
||||
|
@ -37,7 +37,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
static const struct mhi_channel_config mhi_foxconn_sdx55_channels[] = {
|
||||
MHI_CHANNEL_CONFIG_UL(0, "LOOPBACK", 32, 0),
|
||||
MHI_CHANNEL_CONFIG_DL(1, "LOOPBACK", 32, 0),
|
||||
@@ -591,6 +601,9 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -594,6 +604,9 @@ static const struct pci_device_id mhi_pc
|
||||
.driver_data = (kernel_ulong_t) &mhi_quectel_em1xx_info },
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_QUECTEL, 0x1002), /* EM160R-GL (sdx24) */
|
||||
.driver_data = (kernel_ulong_t) &mhi_quectel_em1xx_info },
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
|
||||
--- a/drivers/bus/mhi/host/pci_generic.c
|
||||
+++ b/drivers/bus/mhi/host/pci_generic.c
|
||||
@@ -638,6 +638,12 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -641,6 +641,12 @@ static const struct pci_device_id mhi_pc
|
||||
/* T99W510 (sdx24), variant 3 */
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_FOXCONN, 0xe0f2),
|
||||
.driver_data = (kernel_ulong_t) &mhi_foxconn_sdx24_info },
|
||||
|
@ -24,7 +24,7 @@ Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
|
||||
--- a/drivers/bus/mhi/host/pci_generic.c
|
||||
+++ b/drivers/bus/mhi/host/pci_generic.c
|
||||
@@ -604,6 +604,9 @@ static const struct pci_device_id mhi_pc
|
||||
@@ -607,6 +607,9 @@ static const struct pci_device_id mhi_pc
|
||||
/* RM520N-GL (sdx6x), eSIM */
|
||||
{ PCI_DEVICE(PCI_VENDOR_ID_QUECTEL, 0x1004),
|
||||
.driver_data = (kernel_ulong_t) &mhi_quectel_rm5xx_info },
|
||||
|
@ -123,7 +123,7 @@ Signed-off-by: Justin Stitt <justinstitt@google.com>
|
||||
#endif /* _LINUX_ETHTOOL_H */
|
||||
--- a/net/ethtool/ioctl.c
|
||||
+++ b/net/ethtool/ioctl.c
|
||||
@@ -1974,6 +1974,13 @@ __printf(2, 3) void ethtool_sprintf(u8 *
|
||||
@@ -1977,6 +1977,13 @@ __printf(2, 3) void ethtool_sprintf(u8 *
|
||||
}
|
||||
EXPORT_SYMBOL(ethtool_sprintf);
|
||||
|
||||
|
@ -23,7 +23,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
|
||||
{ {0x02, 0x21}, "lz4", unlz4 },
|
||||
--- a/scripts/Makefile.lib
|
||||
+++ b/scripts/Makefile.lib
|
||||
@@ -443,10 +443,10 @@ quiet_cmd_bzip2_with_size = BZIP2 $@
|
||||
@@ -447,10 +447,10 @@ quiet_cmd_bzip2_with_size = BZIP2 $@
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
quiet_cmd_lzma = LZMA $@
|
||||
|
@ -10,7 +10,7 @@ Subject: [PATCH] Kconfig: add tristate for OID and ASNI string
|
||||
|
||||
--- a/init/Kconfig
|
||||
+++ b/init/Kconfig
|
||||
@@ -2013,7 +2013,7 @@ config PADATA
|
||||
@@ -2017,7 +2017,7 @@ config PADATA
|
||||
bool
|
||||
|
||||
config ASN1
|
||||
|
@ -10,7 +10,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
|
||||
|
||||
--- a/drivers/net/usb/qmi_wwan.c
|
||||
+++ b/drivers/net/usb/qmi_wwan.c
|
||||
@@ -1082,12 +1082,18 @@ static const struct usb_device_id produc
|
||||
@@ -1083,12 +1083,18 @@ static const struct usb_device_id produc
|
||||
USB_DEVICE_AND_INTERFACE_INFO(0x03f0, 0x581d, USB_CLASS_VENDOR_SPEC, 1, 7),
|
||||
.driver_info = (unsigned long)&qmi_wwan_info,
|
||||
},
|
||||
@ -43,7 +43,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
|
||||
|
||||
#define QUECTEL_VENDOR_ID 0x2c7c
|
||||
/* These Quectel products use Quectel's vendor ID */
|
||||
@@ -1156,6 +1161,11 @@ static const struct usb_device_id option
|
||||
@@ -1158,6 +1163,11 @@ static const struct usb_device_id option
|
||||
{ USB_DEVICE(QUALCOMM_VENDOR_ID, 0x0023)}, /* ONYX 3G device */
|
||||
{ USB_DEVICE(QUALCOMM_VENDOR_ID, 0x9000), /* SIMCom SIM5218 */
|
||||
.driver_info = NCTRL(0) | NCTRL(1) | NCTRL(2) | NCTRL(3) | RSVD(4) },
|
||||
@ -55,7 +55,7 @@ Subject: [PATCH] net/usb/qmi_wwan: add MeigLink modem support
|
||||
/* Quectel products using Qualcomm vendor ID */
|
||||
{ USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC15)},
|
||||
{ USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC20),
|
||||
@@ -1197,6 +1207,11 @@ static const struct usb_device_id option
|
||||
@@ -1199,6 +1209,11 @@ static const struct usb_device_id option
|
||||
.driver_info = ZLP },
|
||||
{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96),
|
||||
.driver_info = RSVD(4) },
|
||||
|
@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- a/fs/locks.c
|
||||
+++ b/fs/locks.c
|
||||
@@ -2909,6 +2909,8 @@ static const struct seq_operations locks
|
||||
@@ -2907,6 +2907,8 @@ static const struct seq_operations locks
|
||||
|
||||
static int __init proc_locks_init(void)
|
||||
{
|
||||
@ -235,7 +235,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
if (!pe)
|
||||
--- a/mm/vmalloc.c
|
||||
+++ b/mm/vmalloc.c
|
||||
@@ -4222,6 +4222,8 @@ static const struct seq_operations vmall
|
||||
@@ -4215,6 +4215,8 @@ static const struct seq_operations vmall
|
||||
|
||||
static int __init proc_vmalloc_init(void)
|
||||
{
|
||||
@ -341,7 +341,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
--- a/net/ipv4/fib_trie.c
|
||||
+++ b/net/ipv4/fib_trie.c
|
||||
@@ -3036,11 +3036,13 @@ static const struct seq_operations fib_r
|
||||
@@ -3037,11 +3037,13 @@ static const struct seq_operations fib_r
|
||||
|
||||
int __net_init fib_proc_init(struct net *net)
|
||||
{
|
||||
@ -357,7 +357,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
fib_triestat_seq_show, NULL))
|
||||
goto out2;
|
||||
|
||||
@@ -3051,17 +3053,21 @@ int __net_init fib_proc_init(struct net
|
||||
@@ -3052,17 +3054,21 @@ int __net_init fib_proc_init(struct net
|
||||
return 0;
|
||||
|
||||
out3:
|
||||
|
@ -73,7 +73,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
+MODULE_LICENSE("GPL");
|
||||
--- a/kernel/sched/core.c
|
||||
+++ b/kernel/sched/core.c
|
||||
@@ -4366,6 +4366,7 @@ int wake_up_state(struct task_struct *p,
|
||||
@@ -4363,6 +4363,7 @@ int wake_up_state(struct task_struct *p,
|
||||
{
|
||||
return try_to_wake_up(p, state, 0);
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
#endif /* _KOBJECT_H_ */
|
||||
--- a/lib/kobject_uevent.c
|
||||
+++ b/lib/kobject_uevent.c
|
||||
@@ -691,6 +691,43 @@ int add_uevent_var(struct kobj_uevent_en
|
||||
@@ -706,6 +706,43 @@ int add_uevent_var(struct kobj_uevent_en
|
||||
EXPORT_SYMBOL_GPL(add_uevent_var);
|
||||
|
||||
#if defined(CONFIG_NET)
|
||||
|
@ -19,7 +19,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
|
||||
--- a/drivers/base/core.c
|
||||
+++ b/drivers/base/core.c
|
||||
@@ -1717,7 +1717,7 @@ static void device_links_purge(struct de
|
||||
@@ -1718,7 +1718,7 @@ static void device_links_purge(struct de
|
||||
#define FW_DEVLINK_FLAGS_RPM (FW_DEVLINK_FLAGS_ON | \
|
||||
DL_FLAG_PM_RUNTIME)
|
||||
|
||||
|
@ -319,7 +319,7 @@ Signed-off-by: Zhi Chen <zhichen@codeaurora.org>
|
||||
struct nf_conn *ct = item->ct;
|
||||
struct sk_buff *skb;
|
||||
unsigned int type;
|
||||
@@ -3754,11 +3761,17 @@ static int ctnetlink_stat_exp_cpu(struct
|
||||
@@ -3755,11 +3762,17 @@ static int ctnetlink_stat_exp_cpu(struct
|
||||
}
|
||||
|
||||
#ifdef CONFIG_NF_CONNTRACK_EVENTS
|
||||
@ -337,7 +337,7 @@ Signed-off-by: Zhi Chen <zhichen@codeaurora.org>
|
||||
|
||||
static const struct nfnl_callback ctnl_cb[IPCTNL_MSG_MAX] = {
|
||||
[IPCTNL_MSG_CT_NEW] = {
|
||||
@@ -3857,8 +3870,12 @@ static int __net_init ctnetlink_net_init
|
||||
@@ -3858,8 +3871,12 @@ static int __net_init ctnetlink_net_init
|
||||
static void ctnetlink_net_pre_exit(struct net *net)
|
||||
{
|
||||
#ifdef CONFIG_NF_CONNTRACK_EVENTS
|
||||
|
@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
|
||||
|
||||
--- a/mm/page_alloc.c
|
||||
+++ b/mm/page_alloc.c
|
||||
@@ -7903,7 +7903,7 @@ static void __init alloc_node_mem_map(st
|
||||
@@ -7910,7 +7910,7 @@ static void __init alloc_node_mem_map(st
|
||||
if (pgdat == NODE_DATA(0)) {
|
||||
mem_map = NODE_DATA(0)->node_mem_map;
|
||||
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
|
||||
|
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
#define PACKET_FANOUT_LB 1
|
||||
--- a/net/packet/af_packet.c
|
||||
+++ b/net/packet/af_packet.c
|
||||
@@ -1866,6 +1866,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||
@@ -1927,6 +1927,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||
{
|
||||
struct sock *sk;
|
||||
struct sockaddr_pkt *spkt;
|
||||
@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
/*
|
||||
* When we registered the protocol we saved the socket in the data
|
||||
@@ -1873,6 +1874,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||
@@ -1934,6 +1935,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||
*/
|
||||
|
||||
sk = pt->af_packet_priv;
|
||||
@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
/*
|
||||
* Yank back the headers [hope the device set this
|
||||
@@ -1885,7 +1887,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||
@@ -1946,7 +1948,7 @@ static int packet_rcv_spkt(struct sk_buf
|
||||
* so that this procedure is noop.
|
||||
*/
|
||||
|
||||
@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
goto out;
|
||||
|
||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||
@@ -2131,12 +2133,12 @@ static int packet_rcv(struct sk_buff *sk
|
||||
@@ -2192,12 +2194,12 @@ static int packet_rcv(struct sk_buff *sk
|
||||
unsigned int snaplen, res;
|
||||
bool is_drop_n_account = false;
|
||||
|
||||
@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||
goto drop;
|
||||
|
||||
@@ -2263,12 +2265,12 @@ static int tpacket_rcv(struct sk_buff *s
|
||||
@@ -2324,12 +2326,12 @@ static int tpacket_rcv(struct sk_buff *s
|
||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
|
||||
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
|
||||
|
||||
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
if (!net_eq(dev_net(dev), sock_net(sk)))
|
||||
goto drop;
|
||||
|
||||
@@ -3377,6 +3379,7 @@ static int packet_create(struct net *net
|
||||
@@ -3443,6 +3445,7 @@ static int packet_create(struct net *net
|
||||
mutex_init(&po->pg_vec_lock);
|
||||
po->rollover = NULL;
|
||||
po->prot_hook.func = packet_rcv;
|
||||
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
if (sock->type == SOCK_PACKET)
|
||||
po->prot_hook.func = packet_rcv_spkt;
|
||||
@@ -4014,6 +4017,16 @@ packet_setsockopt(struct socket *sock, i
|
||||
@@ -4096,6 +4099,16 @@ packet_setsockopt(struct socket *sock, i
|
||||
WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit);
|
||||
return 0;
|
||||
}
|
||||
@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
default:
|
||||
return -ENOPROTOOPT;
|
||||
}
|
||||
@@ -4070,6 +4083,13 @@ static int packet_getsockopt(struct sock
|
||||
@@ -4152,6 +4165,13 @@ static int packet_getsockopt(struct sock
|
||||
case PACKET_VNET_HDR:
|
||||
val = po->has_vnet_hdr;
|
||||
break;
|
||||
|
@ -338,7 +338,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP6))
|
||||
return -1;
|
||||
|
||||
@@ -1545,6 +1706,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
@@ -1546,6 +1707,14 @@ ip6_tnl_change(struct ip6_tnl *t, const
|
||||
t->parms.link = p->link;
|
||||
t->parms.proto = p->proto;
|
||||
t->parms.fwmark = p->fwmark;
|
||||
@ -353,7 +353,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
dst_cache_reset(&t->dst_cache);
|
||||
ip6_tnl_link_config(t);
|
||||
}
|
||||
@@ -1579,6 +1748,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
@@ -1580,6 +1749,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_
|
||||
p->flowinfo = u->flowinfo;
|
||||
p->link = u->link;
|
||||
p->proto = u->proto;
|
||||
@ -361,7 +361,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
memcpy(p->name, u->name, sizeof(u->name));
|
||||
}
|
||||
|
||||
@@ -1965,6 +2135,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
@@ -1967,6 +2137,15 @@ static int ip6_tnl_validate(struct nlatt
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -377,7 +377,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
static void ip6_tnl_netlink_parms(struct nlattr *data[],
|
||||
struct __ip6_tnl_parm *parms)
|
||||
{
|
||||
@@ -2002,6 +2181,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
@@ -2004,6 +2183,46 @@ static void ip6_tnl_netlink_parms(struct
|
||||
|
||||
if (data[IFLA_IPTUN_FWMARK])
|
||||
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
|
||||
@ -424,7 +424,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
}
|
||||
|
||||
static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev,
|
||||
@@ -2085,6 +2304,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
@@ -2087,6 +2306,12 @@ static void ip6_tnl_dellink(struct net_d
|
||||
|
||||
static size_t ip6_tnl_get_size(const struct net_device *dev)
|
||||
{
|
||||
@ -437,7 +437,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
return
|
||||
/* IFLA_IPTUN_LINK */
|
||||
nla_total_size(4) +
|
||||
@@ -2114,6 +2339,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
@@ -2116,6 +2341,24 @@ static size_t ip6_tnl_get_size(const str
|
||||
nla_total_size(0) +
|
||||
/* IFLA_IPTUN_FWMARK */
|
||||
nla_total_size(4) +
|
||||
@ -462,7 +462,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
0;
|
||||
}
|
||||
|
||||
@@ -2121,6 +2364,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2123,6 +2366,9 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
{
|
||||
struct ip6_tnl *tunnel = netdev_priv(dev);
|
||||
struct __ip6_tnl_parm *parm = &tunnel->parms;
|
||||
@ -472,7 +472,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
|
||||
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
|
||||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
|
||||
@@ -2130,9 +2376,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
@@ -2132,9 +2378,27 @@ static int ip6_tnl_fill_info(struct sk_b
|
||||
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
|
||||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
|
||||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
|
||||
@ -501,7 +501,7 @@ Signed-off-by: Steven Barth <cyrus@openwrt.org>
|
||||
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
|
||||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
|
||||
@@ -2172,6 +2436,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
@@ -2174,6 +2438,7 @@ static const struct nla_policy ip6_tnl_p
|
||||
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
|
||||
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
|
||||
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
|
||||
|
@ -66,7 +66,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
|
||||
static void rt_fibinfo_free(struct rtable __rcu **rtp)
|
||||
--- a/net/ipv4/fib_trie.c
|
||||
+++ b/net/ipv4/fib_trie.c
|
||||
@@ -2783,6 +2783,7 @@ static const char *const rtn_type_names[
|
||||
@@ -2784,6 +2784,7 @@ static const char *const rtn_type_names[
|
||||
[RTN_THROW] = "THROW",
|
||||
[RTN_NAT] = "NAT",
|
||||
[RTN_XRESOLVE] = "XRESOLVE",
|
||||
|
@ -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
|
||||
@@ -7958,7 +7958,7 @@ static int nft_register_flowtable_net_ho
|
||||
@@ -8012,7 +8012,7 @@ static int nft_register_flowtable_net_ho
|
||||
err = flowtable->data.type->setup(&flowtable->data,
|
||||
hook->ops.dev,
|
||||
FLOW_BLOCK_BIND);
|
||||
|
@ -17,7 +17,7 @@ Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
|
||||
|
||||
--- a/drivers/net/dsa/mv88e6xxx/chip.c
|
||||
+++ b/drivers/net/dsa/mv88e6xxx/chip.c
|
||||
@@ -7079,6 +7079,7 @@ static int mv88e6xxx_register_switch(str
|
||||
@@ -7080,6 +7080,7 @@ static int mv88e6xxx_register_switch(str
|
||||
ds->ops = &mv88e6xxx_switch_ops;
|
||||
ds->ageing_time_min = chip->info->age_time_coeff;
|
||||
ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX;
|
||||
|
@ -100,7 +100,7 @@ Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
|
||||
|
||||
--- a/drivers/net/dsa/b53/b53_common.c
|
||||
+++ b/drivers/net/dsa/b53/b53_common.c
|
||||
@@ -2466,6 +2466,19 @@ static const struct b53_chip_data b53_sw
|
||||
@@ -2469,6 +2469,19 @@ static const struct b53_chip_data b53_sw
|
||||
.jumbo_size_reg = B53_JUMBO_MAX_SIZE_63XX,
|
||||
},
|
||||
{
|
||||
|
@ -100,7 +100,7 @@ Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
|
||||
|
||||
--- a/drivers/net/dsa/b53/b53_common.c
|
||||
+++ b/drivers/net/dsa/b53/b53_common.c
|
||||
@@ -2613,6 +2613,20 @@ static const struct b53_chip_data b53_sw
|
||||
@@ -2616,6 +2616,20 @@ static const struct b53_chip_data b53_sw
|
||||
.jumbo_pm_reg = B53_JUMBO_PORT_MASK,
|
||||
.jumbo_size_reg = B53_JUMBO_MAX_SIZE,
|
||||
},
|
||||
@ -121,7 +121,7 @@ Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
|
||||
};
|
||||
|
||||
static int b53_switch_init(struct b53_device *dev)
|
||||
@@ -2790,6 +2804,7 @@ int b53_switch_detect(struct b53_device
|
||||
@@ -2793,6 +2807,7 @@ int b53_switch_detect(struct b53_device
|
||||
case BCM53012_DEVICE_ID:
|
||||
case BCM53018_DEVICE_ID:
|
||||
case BCM53019_DEVICE_ID:
|
||||
|
@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
ata_sff_port_init(ap);
|
||||
|
||||
return ap;
|
||||
@@ -5473,6 +5492,12 @@ static void ata_host_release(struct kref
|
||||
@@ -5476,6 +5495,12 @@ static void ata_host_release(struct kref
|
||||
|
||||
kfree(ap->pmp_link);
|
||||
kfree(ap->slave_link);
|
||||
@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
kfree(ap);
|
||||
host->ports[i] = NULL;
|
||||
}
|
||||
@@ -5875,7 +5900,23 @@ int ata_host_register(struct ata_host *h
|
||||
@@ -5880,7 +5905,23 @@ int ata_host_register(struct ata_host *h
|
||||
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
|
||||
host->ports[i]->local_port_no = i + 1;
|
||||
}
|
||||
|
@ -0,0 +1,28 @@
|
||||
--- a/drivers/net/usb/qmi_wwan.c
|
||||
+++ b/drivers/net/usb/qmi_wwan.c
|
||||
@@ -1437,6 +1437,9 @@ static const struct usb_device_id produc
|
||||
{QMI_QUIRK_SET_DTR(0x1546, 0x1342, 4)}, /* u-blox LARA-L6 */
|
||||
{QMI_QUIRK_SET_DTR(0x33f8, 0x0104, 4)}, /* Rolling RW101 RMNET */
|
||||
{QMI_FIXED_INTF(0x2dee, 0x4d22, 5)}, /* MeiG Smart SRM825L */
|
||||
+ {QMI_FIXED_INTF(0x2077, 0x2002, 4)}, /* T&W TW04C */
|
||||
+ {QMI_FIXED_INTF(0x2077, 0x2003, 4)}, /* T&W TW12G */
|
||||
+ {QMI_FIXED_INTF(0x2077, 0x2004, 4)}, /* T&W TW510M */
|
||||
|
||||
/* 4. Gobi 1000 devices */
|
||||
{QMI_GOBI1K_DEVICE(0x05c6, 0x9212)}, /* Acer Gobi Modem Device */
|
||||
--- a/drivers/usb/serial/option.c
|
||||
+++ b/drivers/usb/serial/option.c
|
||||
@@ -2324,9 +2324,13 @@ static const struct usb_device_id option
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x0a06, 0xff) }, /* Fibocom FM650-CN (RNDIS mode) */
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x0a07, 0xff) }, /* Fibocom FM650-CN (MBIM mode) */
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x2df3, 0x9d03, 0xff) }, /* LongSung M5710 */
|
||||
+ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1402, 0xff) }, /* GosunCn GM800 (Download mode) */
|
||||
+ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1403, 0xff) }, /* GosunCn GM800 (rmnet, old) */
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1404, 0xff) }, /* GosunCn GM500 RNDIS */
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1405, 0xff) }, /* GosunCn GM500 MBIM */
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1406, 0xff) }, /* GosunCn GM500 ECM/NCM */
|
||||
+ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1421, 0xff) }, /* GosunCn GM800 (rmnet) */
|
||||
+ { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1422, 0xff) }, /* GosunCn GM800 (EAP) */
|
||||
{ USB_DEVICE(0x33f8, 0x0104), /* Rolling RW101-GL (laptop RMNET) */
|
||||
.driver_info = RSVD(4) | RSVD(5) },
|
||||
{ USB_DEVICE_INTERFACE_CLASS(0x33f8, 0x01a2, 0xff) }, /* Rolling RW101-GL (laptop MBIM) */
|
@ -32,7 +32,7 @@ Signed-off-by: Rob Herring <robh@kernel.org>
|
||||
|
||||
--- a/scripts/Makefile.lib
|
||||
+++ b/scripts/Makefile.lib
|
||||
@@ -408,6 +408,9 @@ $(obj)/%.dtb: $(src)/%.dts $(DTC) $(DT_T
|
||||
@@ -412,6 +412,9 @@ $(obj)/%.dtb: $(src)/%.dts $(DTC) $(DT_T
|
||||
$(obj)/%.dtbo: $(src)/%.dts $(DTC) FORCE
|
||||
$(call if_changed_dep,dtc)
|
||||
|
||||
|
@ -39,7 +39,7 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
|
||||
ret = clk_bulk_prepare_enable(MSDC_NR_CLOCKS, host->bulk_clks);
|
||||
if (ret) {
|
||||
dev_err(host->dev, "Cannot enable pclk/axi/ahb clock gates\n");
|
||||
@@ -2670,6 +2673,15 @@ static int msdc_drv_probe(struct platfor
|
||||
@@ -2666,6 +2669,15 @@ static int msdc_drv_probe(struct platfor
|
||||
goto host_free;
|
||||
}
|
||||
|
||||
|
@ -25,8 +25,8 @@ Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
|
||||
bd[j].bd_info &= ~BDMA_DESC_CHECKSUM;
|
||||
bd[j].bd_info |= msdc_dma_calcs((u8 *)(&bd[j]), 16) << 8;
|
||||
}
|
||||
@@ -1229,7 +1229,7 @@ static bool msdc_cmd_done(struct msdc_ho
|
||||
!host->hs400_tuning))
|
||||
@@ -1227,7 +1227,7 @@ static bool msdc_cmd_done(struct msdc_ho
|
||||
(!mmc_op_tuning(cmd->opcode) && !host->hs400_tuning))
|
||||
/*
|
||||
* should not clear fifo/interrupt as the tune data
|
||||
- * may have alreay come when cmd19/cmd21 gets response
|
||||
|
@ -1,39 +0,0 @@
|
||||
From b98e7e8daf0ebab9dcc36812378a71e1be0b5089 Mon Sep 17 00:00:00 2001
|
||||
From: ChanWoo Lee <cw9316.lee@samsung.com>
|
||||
Date: Thu, 24 Nov 2022 17:00:31 +0900
|
||||
Subject: [PATCH 4/6] mmc: Avoid open coding by using mmc_op_tuning()
|
||||
|
||||
Replace code with the already defined function. No functional changes.
|
||||
|
||||
Signed-off-by: ChanWoo Lee <cw9316.lee@samsung.com>
|
||||
Reviewed-by: Adrian Hunter <adrian.hunter@intel.com>
|
||||
Link: https://lore.kernel.org/r/20221124080031.14690-1-cw9316.lee@samsung.com
|
||||
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
|
||||
---
|
||||
drivers/mmc/host/mtk-sd.c | 8 ++------
|
||||
1 file changed, 2 insertions(+), 6 deletions(-)
|
||||
|
||||
--- a/drivers/mmc/host/mtk-sd.c
|
||||
+++ b/drivers/mmc/host/mtk-sd.c
|
||||
@@ -1224,9 +1224,7 @@ static bool msdc_cmd_done(struct msdc_ho
|
||||
|
||||
if (!sbc_error && !(events & MSDC_INT_CMDRDY)) {
|
||||
if (events & MSDC_INT_CMDTMO ||
|
||||
- (cmd->opcode != MMC_SEND_TUNING_BLOCK &&
|
||||
- cmd->opcode != MMC_SEND_TUNING_BLOCK_HS200 &&
|
||||
- !host->hs400_tuning))
|
||||
+ (!mmc_op_tuning(cmd->opcode) && !host->hs400_tuning))
|
||||
/*
|
||||
* should not clear fifo/interrupt as the tune data
|
||||
* may have already come when cmd19/cmd21 gets response
|
||||
@@ -1320,9 +1318,7 @@ static void msdc_cmd_next(struct msdc_ho
|
||||
{
|
||||
if ((cmd->error &&
|
||||
!(cmd->error == -EILSEQ &&
|
||||
- (cmd->opcode == MMC_SEND_TUNING_BLOCK ||
|
||||
- cmd->opcode == MMC_SEND_TUNING_BLOCK_HS200 ||
|
||||
- host->hs400_tuning))) ||
|
||||
+ (mmc_op_tuning(cmd->opcode) || host->hs400_tuning))) ||
|
||||
(mrq->sbc && mrq->sbc->error))
|
||||
msdc_request_done(host, mrq);
|
||||
else if (cmd == mrq->sbc)
|
@ -31,8 +31,8 @@
|
||||
static int mtk_pinconf_bias_set_pullsel_pullen(struct mtk_pinctrl *hw,
|
||||
const struct mtk_pin_desc *desc,
|
||||
u32 pullup, u32 arg)
|
||||
@@ -755,6 +779,12 @@ int mtk_pinconf_bias_set_combo(struct mt
|
||||
return err;
|
||||
@@ -758,6 +782,12 @@ int mtk_pinconf_bias_set_combo(struct mt
|
||||
return 0;
|
||||
}
|
||||
|
||||
+ if (try_all_type & MTK_PULL_PD_TYPE) {
|
||||
@ -44,7 +44,7 @@
|
||||
if (try_all_type & MTK_PULL_PU_PD_TYPE) {
|
||||
err = mtk_pinconf_bias_set_pu_pd(hw, desc, pullup, arg);
|
||||
if (!err)
|
||||
@@ -875,6 +905,29 @@ out:
|
||||
@@ -878,6 +908,29 @@ out:
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -74,19 +74,19 @@
|
||||
static int mtk_pinconf_bias_get_pullsel_pullen(struct mtk_pinctrl *hw,
|
||||
const struct mtk_pin_desc *desc,
|
||||
u32 *pullup, u32 *enable)
|
||||
@@ -943,6 +996,12 @@ int mtk_pinconf_bias_get_combo(struct mt
|
||||
if (!err)
|
||||
return err;
|
||||
@@ -947,6 +1000,12 @@ int mtk_pinconf_bias_get_combo(struct mt
|
||||
return 0;
|
||||
}
|
||||
+
|
||||
|
||||
+ if (try_all_type & MTK_PULL_PD_TYPE) {
|
||||
+ err = mtk_pinconf_bias_get_pd(hw, desc, pullup, enable);
|
||||
+ if (!err)
|
||||
+ return err;
|
||||
+ }
|
||||
|
||||
+
|
||||
if (try_all_type & MTK_PULL_PU_PD_TYPE) {
|
||||
err = mtk_pinconf_bias_get_pu_pd(hw, desc, pullup, enable);
|
||||
if (!err)
|
||||
--- a/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h
|
||||
+++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h
|
||||
@@ -24,6 +24,7 @@
|
||||
|
@ -37,7 +37,7 @@
|
||||
* CONFIG_CMDLINE is meant to be a default in case nothing else
|
||||
--- a/arch/arm64/Kconfig
|
||||
+++ b/arch/arm64/Kconfig
|
||||
@@ -2239,6 +2239,14 @@ config CMDLINE_FORCE
|
||||
@@ -2277,6 +2277,14 @@ config CMDLINE_FORCE
|
||||
|
||||
endchoice
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user