mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2026-05-04 17:36:12 +02:00
generic: 6.18: refresh backport patches
Refreshed patches for generic/backport-6.18 by running make target/linux/refresh Signed-off-by: Mieczyslaw Nalewaj <namiltd@yahoo.com> Link: https://github.com/openwrt/openwrt/pull/21078 Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
parent
4e16e53913
commit
6534e6bd54
@ -100,4 +100,4 @@ Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
|
||||
+ __FIELD_GET(_mask, _reg, "FIELD_GET: "); \
|
||||
})
|
||||
|
||||
extern void __compiletime_error("value doesn't fit into mask")
|
||||
/**
|
||||
|
||||
@ -41,7 +41,7 @@ Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
|
||||
|
||||
--- a/include/linux/bitfield.h
|
||||
+++ b/include/linux/bitfield.h
|
||||
@@ -16,6 +16,7 @@
|
||||
@@ -17,6 +17,7 @@
|
||||
* FIELD_{GET,PREP} macros take as first parameter shifted mask
|
||||
* from which they extract the base mask and shift amount.
|
||||
* Mask must be a compilation time constant.
|
||||
@ -49,7 +49,7 @@ Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
|
||||
*
|
||||
* Example:
|
||||
*
|
||||
@@ -223,4 +224,62 @@ __MAKE_OP(64)
|
||||
@@ -240,4 +241,62 @@ __MAKE_OP(64)
|
||||
#undef __MAKE_OP
|
||||
#undef ____MAKE_OP
|
||||
|
||||
|
||||
@ -19,7 +19,7 @@ Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
|
||||
--- a/drivers/mtd/nand/spi/core.c
|
||||
+++ b/drivers/mtd/nand/spi/core.c
|
||||
@@ -1184,6 +1184,7 @@ static const struct nand_ops spinand_ops
|
||||
@@ -1235,6 +1235,7 @@ static const struct nand_ops spinand_ops
|
||||
static const struct spinand_manufacturer *spinand_manufacturers[] = {
|
||||
&alliancememory_spinand_manufacturer,
|
||||
&ato_spinand_manufacturer,
|
||||
@ -29,16 +29,16 @@ Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
&foresee_spinand_manufacturer,
|
||||
--- a/drivers/mtd/nand/spi/esmt.c
|
||||
+++ b/drivers/mtd/nand/spi/esmt.c
|
||||
@@ -11,6 +11,7 @@
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
/* ESMT uses GigaDevice 0xc8 JECDEC ID on some SPI NANDs */
|
||||
#define SPINAND_MFR_ESMT_C8 0xc8
|
||||
+#define SPINAND_MFR_ESMT_8C 0x8c
|
||||
|
||||
static SPINAND_OP_VARIANTS(read_cache_variants,
|
||||
SPINAND_PAGE_READ_FROM_CACHE_X4_OP(0, 1, NULL, 0),
|
||||
@@ -102,6 +103,19 @@ static const struct mtd_ooblayout_ops f5
|
||||
.free = f50l1g41lb_ooblayout_free,
|
||||
#define ESMT_F50L1G41LB_CFG_OTP_PROTECT BIT(7)
|
||||
#define ESMT_F50L1G41LB_CFG_OTP_LOCK \
|
||||
@@ -184,6 +185,19 @@ static const struct spinand_fact_otp_ops
|
||||
.read = spinand_fact_otp_read,
|
||||
};
|
||||
|
||||
+
|
||||
@ -57,7 +57,7 @@ Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
static const struct spinand_info esmt_c8_spinand_table[] = {
|
||||
SPINAND_INFO("F50L1G41LB",
|
||||
SPINAND_ID(SPINAND_READID_METHOD_OPCODE_ADDR, 0x01, 0x7f,
|
||||
@@ -138,6 +152,14 @@ static const struct spinand_info esmt_c8
|
||||
@@ -224,6 +238,14 @@ static const struct spinand_info esmt_c8
|
||||
static const struct spinand_manufacturer_ops esmt_spinand_manuf_ops = {
|
||||
};
|
||||
|
||||
@ -74,7 +74,7 @@ Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
.name = "ESMT",
|
||||
--- a/include/linux/mtd/spinand.h
|
||||
+++ b/include/linux/mtd/spinand.h
|
||||
@@ -262,6 +262,7 @@ struct spinand_manufacturer {
|
||||
@@ -354,6 +354,7 @@ struct spinand_manufacturer {
|
||||
/* SPI NAND manufacturers */
|
||||
extern const struct spinand_manufacturer alliancememory_spinand_manufacturer;
|
||||
extern const struct spinand_manufacturer ato_spinand_manufacturer;
|
||||
|
||||
@ -22,7 +22,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/drivers/net/ppp/ppp_generic.c
|
||||
+++ b/drivers/net/ppp/ppp_generic.c
|
||||
@@ -1632,6 +1632,8 @@ static void ppp_setup(struct net_device
|
||||
@@ -1641,6 +1641,8 @@ static void ppp_setup(struct net_device
|
||||
dev->flags = IFF_POINTOPOINT | IFF_NOARP | IFF_MULTICAST;
|
||||
dev->priv_destructor = ppp_dev_priv_destructor;
|
||||
dev->pcpu_stat_type = NETDEV_PCPU_STAT_TSTATS;
|
||||
@ -31,7 +31,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
netif_keep_dst(dev);
|
||||
}
|
||||
|
||||
@@ -1696,6 +1698,10 @@ pad_compress_skb(struct ppp *ppp, struct
|
||||
@@ -1710,6 +1712,10 @@ pad_compress_skb(struct ppp *ppp, struct
|
||||
ppp->xcomp->comp_extra + ppp->dev->hard_header_len;
|
||||
int compressor_skb_size = ppp->dev->mtu +
|
||||
ppp->xcomp->comp_extra + PPP_HDRLEN;
|
||||
@ -42,7 +42,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
new_skb = alloc_skb(new_skb_size, GFP_ATOMIC);
|
||||
if (!new_skb) {
|
||||
if (net_ratelimit())
|
||||
@@ -1783,6 +1789,10 @@ ppp_send_frame(struct ppp *ppp, struct s
|
||||
@@ -1797,6 +1803,10 @@ ppp_send_frame(struct ppp *ppp, struct s
|
||||
case PPP_IP:
|
||||
if (!ppp->vj || (ppp->flags & SC_COMP_TCP) == 0)
|
||||
break;
|
||||
@ -53,7 +53,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
/* try to do VJ TCP header compression */
|
||||
new_skb = alloc_skb(skb->len + ppp->dev->hard_header_len - 2,
|
||||
GFP_ATOMIC);
|
||||
@@ -1880,19 +1890,26 @@ ppp_push(struct ppp *ppp)
|
||||
@@ -1894,19 +1904,26 @@ ppp_push(struct ppp *ppp)
|
||||
}
|
||||
|
||||
if ((ppp->flags & SC_MULTILINK) == 0) {
|
||||
@ -85,7 +85,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
spin_unlock(&pch->downl);
|
||||
return;
|
||||
}
|
||||
@@ -1977,6 +1994,8 @@ static int ppp_mp_explode(struct ppp *pp
|
||||
@@ -1991,6 +2008,8 @@ static int ppp_mp_explode(struct ppp *pp
|
||||
return 0; /* can't take now, leave it in xmit_pending */
|
||||
|
||||
/* Do protocol field compression */
|
||||
@ -94,7 +94,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
p = skb->data;
|
||||
len = skb->len;
|
||||
if (*p == 0 && mp_protocol_compress) {
|
||||
@@ -2135,6 +2154,7 @@ static int ppp_mp_explode(struct ppp *pp
|
||||
@@ -2149,6 +2168,7 @@ static int ppp_mp_explode(struct ppp *pp
|
||||
|
||||
noskb:
|
||||
spin_unlock(&pch->downl);
|
||||
|
||||
@ -32,7 +32,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
#include <net/pkt_cls.h>
|
||||
#include <net/tcp.h>
|
||||
#include <net/flow_dissector.h>
|
||||
@@ -3154,14 +3155,89 @@ static struct Qdisc_ops cake_qdisc_ops _
|
||||
@@ -3160,14 +3161,89 @@ static struct Qdisc_ops cake_qdisc_ops _
|
||||
};
|
||||
MODULE_ALIAS_NET_SCH("cake");
|
||||
|
||||
@ -123,8 +123,8 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
}
|
||||
|
||||
module_init(cake_module_init)
|
||||
@@ -3169,3 +3245,4 @@ module_exit(cake_module_exit)
|
||||
@@ -3175,3 +3251,4 @@ module_exit(cake_module_exit)
|
||||
MODULE_AUTHOR("Jonathan Morton");
|
||||
MODULE_LICENSE("Dual BSD/GPL");
|
||||
MODULE_DESCRIPTION("The CAKE shaper.");
|
||||
+MODULE_IMPORT_NS(NET_SCHED_INTERNAL);
|
||||
+MODULE_IMPORT_NS("NET_SCHED_INTERNAL");
|
||||
|
||||
@ -27,7 +27,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
};
|
||||
|
||||
struct cake_sched_data {
|
||||
@@ -2586,14 +2587,12 @@ static void cake_reconfigure(struct Qdis
|
||||
@@ -2592,14 +2593,12 @@ static void cake_reconfigure(struct Qdis
|
||||
q->buffer_config_limit));
|
||||
}
|
||||
|
||||
@ -46,7 +46,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
int err;
|
||||
|
||||
err = nla_parse_nested_deprecated(tb, TCA_CAKE_MAX, opt, cake_policy,
|
||||
@@ -2601,7 +2600,6 @@ static int cake_change(struct Qdisc *sch
|
||||
@@ -2607,7 +2606,6 @@ static int cake_change(struct Qdisc *sch
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
||||
@ -54,7 +54,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (tb[TCA_CAKE_NAT]) {
|
||||
#if IS_ENABLED(CONFIG_NF_CONNTRACK)
|
||||
flow_mode &= ~CAKE_FLOW_NAT_FLAG;
|
||||
@@ -2614,6 +2612,19 @@ static int cake_change(struct Qdisc *sch
|
||||
@@ -2620,6 +2618,19 @@ static int cake_change(struct Qdisc *sch
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -74,7 +74,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (tb[TCA_CAKE_BASE_RATE64])
|
||||
WRITE_ONCE(q->rate_bps,
|
||||
nla_get_u64(tb[TCA_CAKE_BASE_RATE64]));
|
||||
@@ -2622,7 +2633,6 @@ static int cake_change(struct Qdisc *sch
|
||||
@@ -2628,7 +2639,6 @@ static int cake_change(struct Qdisc *sch
|
||||
WRITE_ONCE(q->tin_mode,
|
||||
nla_get_u32(tb[TCA_CAKE_DIFFSERV_MODE]));
|
||||
|
||||
@ -82,7 +82,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (tb[TCA_CAKE_WASH]) {
|
||||
if (!!nla_get_u32(tb[TCA_CAKE_WASH]))
|
||||
rate_flags |= CAKE_FLAG_WASH;
|
||||
@@ -2643,20 +2653,12 @@ static int cake_change(struct Qdisc *sch
|
||||
@@ -2649,20 +2659,12 @@ static int cake_change(struct Qdisc *sch
|
||||
WRITE_ONCE(q->rate_overhead,
|
||||
nla_get_s32(tb[TCA_CAKE_OVERHEAD]));
|
||||
rate_flags |= CAKE_FLAG_OVERHEAD;
|
||||
@ -105,7 +105,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
}
|
||||
|
||||
if (tb[TCA_CAKE_MPU])
|
||||
@@ -2675,13 +2677,6 @@ static int cake_change(struct Qdisc *sch
|
||||
@@ -2681,13 +2683,6 @@ static int cake_change(struct Qdisc *sch
|
||||
WRITE_ONCE(q->target, max(target, 1U));
|
||||
}
|
||||
|
||||
@ -119,7 +119,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (tb[TCA_CAKE_INGRESS]) {
|
||||
if (!!nla_get_u32(tb[TCA_CAKE_INGRESS]))
|
||||
rate_flags |= CAKE_FLAG_INGRESS;
|
||||
@@ -2712,6 +2707,34 @@ static int cake_change(struct Qdisc *sch
|
||||
@@ -2718,6 +2713,34 @@ static int cake_change(struct Qdisc *sch
|
||||
|
||||
WRITE_ONCE(q->rate_flags, rate_flags);
|
||||
WRITE_ONCE(q->flow_mode, flow_mode);
|
||||
@ -154,7 +154,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
if (qd->tins) {
|
||||
sch_tree_lock(sch);
|
||||
cake_reconfigure(sch);
|
||||
@@ -2728,7 +2751,23 @@ static void cake_destroy(struct Qdisc *s
|
||||
@@ -2734,7 +2757,23 @@ static void cake_destroy(struct Qdisc *s
|
||||
qdisc_watchdog_cancel(&q->watchdog);
|
||||
tcf_block_put(q->block);
|
||||
kvfree(q->tins);
|
||||
@ -179,7 +179,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
}
|
||||
|
||||
static int cake_init(struct Qdisc *sch, struct nlattr *opt,
|
||||
@@ -2742,17 +2781,9 @@ static int cake_init(struct Qdisc *sch,
|
||||
@@ -2748,17 +2787,9 @@ static int cake_init(struct Qdisc *sch,
|
||||
if (!q)
|
||||
return -ENOMEM;
|
||||
|
||||
@ -199,7 +199,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
qd->cur_tin = 0;
|
||||
qd->cur_flow = 0;
|
||||
qd->config = q;
|
||||
@@ -2815,10 +2846,21 @@ err:
|
||||
@@ -2821,10 +2852,21 @@ err:
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -222,7 +222,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
struct nlattr *opts;
|
||||
u16 rate_flags;
|
||||
u8 flow_mode;
|
||||
@@ -2894,6 +2936,13 @@ nla_put_failure:
|
||||
@@ -2900,6 +2942,13 @@ nla_put_failure:
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -236,7 +236,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
static int cake_dump_stats(struct Qdisc *sch, struct gnet_dump *d)
|
||||
{
|
||||
struct nlattr *stats = nla_nest_start_noflag(d->skb, TCA_STATS_APP);
|
||||
@@ -3157,6 +3206,7 @@ MODULE_ALIAS_NET_SCH("cake");
|
||||
@@ -3163,6 +3212,7 @@ MODULE_ALIAS_NET_SCH("cake");
|
||||
|
||||
struct cake_mq_sched {
|
||||
struct mq_sched mq_priv; /* must be first */
|
||||
@ -244,7 +244,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
};
|
||||
|
||||
static void cake_mq_destroy(struct Qdisc *sch)
|
||||
@@ -3167,25 +3217,68 @@ static void cake_mq_destroy(struct Qdisc
|
||||
@@ -3173,25 +3223,68 @@ static void cake_mq_destroy(struct Qdisc
|
||||
static int cake_mq_init(struct Qdisc *sch, struct nlattr *opt,
|
||||
struct netlink_ext_ack *extack)
|
||||
{
|
||||
|
||||
@ -37,7 +37,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/Documentation/netlink/specs/tc.yaml
|
||||
+++ b/Documentation/netlink/specs/tc.yaml
|
||||
@@ -2161,6 +2161,9 @@ attribute-sets:
|
||||
@@ -2207,6 +2207,9 @@ attribute-sets:
|
||||
-
|
||||
name: blue-timer-us
|
||||
type: s32
|
||||
@ -45,11 +45,11 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
+ name: active-queues
|
||||
+ type: u32
|
||||
-
|
||||
name: tc-cake-tin-stats-attrs
|
||||
attributes:
|
||||
name: cake-tin-stats-attrs
|
||||
name-prefix: tca-cake-tin-stats-
|
||||
--- a/include/uapi/linux/pkt_sched.h
|
||||
+++ b/include/uapi/linux/pkt_sched.h
|
||||
@@ -1034,6 +1034,7 @@ enum {
|
||||
@@ -1036,6 +1036,7 @@ enum {
|
||||
TCA_CAKE_STATS_DROP_NEXT_US,
|
||||
TCA_CAKE_STATS_P_DROP,
|
||||
TCA_CAKE_STATS_BLUE_TIMER_US,
|
||||
@ -88,7 +88,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
/* http://en.wikipedia.org/wiki/Methods_of_computing_square_roots
|
||||
* new_invsqrt = (invsqrt / 2) * (3 - count * invsqrt^2)
|
||||
*
|
||||
@@ -2003,6 +2011,40 @@ static struct sk_buff *cake_dequeue(stru
|
||||
@@ -2009,6 +2017,40 @@ static struct sk_buff *cake_dequeue(stru
|
||||
u64 delay;
|
||||
u32 len;
|
||||
|
||||
@ -129,7 +129,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
begin:
|
||||
if (!sch->q.qlen)
|
||||
return NULL;
|
||||
@@ -2202,6 +2244,7 @@ retry:
|
||||
@@ -2208,6 +2250,7 @@ retry:
|
||||
|
||||
b->tin_ecn_mark += !!flow->cvars.ecn_marked;
|
||||
qdisc_bstats_update(sch, skb);
|
||||
@ -137,7 +137,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
/* collect delay stats */
|
||||
delay = ktime_to_ns(ktime_sub(now, cobalt_get_enqueue_time(skb)));
|
||||
@@ -2302,6 +2345,9 @@ static void cake_set_rate(struct cake_ti
|
||||
@@ -2308,6 +2351,9 @@ static void cake_set_rate(struct cake_ti
|
||||
b->tin_rate_ns = rate_ns;
|
||||
b->tin_rate_shft = rate_shft;
|
||||
|
||||
@ -147,7 +147,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
byte_target_ns = (byte_target * rate_ns) >> rate_shft;
|
||||
|
||||
b->cparams.target = max((byte_target_ns * 3) / 2, target_ns);
|
||||
@@ -2768,6 +2814,7 @@ static void cake_config_init(struct cake
|
||||
@@ -2774,6 +2820,7 @@ static void cake_config_init(struct cake
|
||||
*/
|
||||
q->rate_flags |= CAKE_FLAG_SPLIT_GSO;
|
||||
q->is_shared = is_shared;
|
||||
@ -155,7 +155,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
}
|
||||
|
||||
static int cake_init(struct Qdisc *sch, struct nlattr *opt,
|
||||
@@ -2839,6 +2886,9 @@ static int cake_init(struct Qdisc *sch,
|
||||
@@ -2845,6 +2892,9 @@ static int cake_init(struct Qdisc *sch,
|
||||
qd->avg_peak_bandwidth = q->rate_bps;
|
||||
qd->min_netlen = ~0;
|
||||
qd->min_adjlen = ~0;
|
||||
@ -165,7 +165,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
return 0;
|
||||
err:
|
||||
kvfree(qd->config);
|
||||
@@ -2971,6 +3021,7 @@ static int cake_dump_stats(struct Qdisc
|
||||
@@ -2977,6 +3027,7 @@ static int cake_dump_stats(struct Qdisc
|
||||
PUT_STAT_U32(MAX_ADJLEN, q->max_adjlen);
|
||||
PUT_STAT_U32(MIN_NETLEN, q->min_netlen);
|
||||
PUT_STAT_U32(MIN_ADJLEN, q->min_adjlen);
|
||||
|
||||
@ -33,7 +33,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
struct cake_heap_entry overflow_heap[CAKE_QUEUES * CAKE_MAX_TINS];
|
||||
|
||||
@@ -2797,8 +2798,6 @@ static void cake_destroy(struct Qdisc *s
|
||||
@@ -2803,8 +2804,6 @@ static void cake_destroy(struct Qdisc *s
|
||||
qdisc_watchdog_cancel(&q->watchdog);
|
||||
tcf_block_put(q->block);
|
||||
kvfree(q->tins);
|
||||
@ -42,7 +42,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
}
|
||||
|
||||
static void cake_config_init(struct cake_sched_config *q, bool is_shared)
|
||||
@@ -2821,13 +2820,9 @@ static int cake_init(struct Qdisc *sch,
|
||||
@@ -2827,13 +2826,9 @@ static int cake_init(struct Qdisc *sch,
|
||||
struct netlink_ext_ack *extack)
|
||||
{
|
||||
struct cake_sched_data *qd = qdisc_priv(sch);
|
||||
@ -57,7 +57,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
cake_config_init(q, false);
|
||||
|
||||
sch->limit = 10240;
|
||||
@@ -2839,14 +2834,13 @@ static int cake_init(struct Qdisc *sch,
|
||||
@@ -2845,14 +2840,13 @@ static int cake_init(struct Qdisc *sch,
|
||||
|
||||
if (opt) {
|
||||
err = cake_change(sch, opt, extack);
|
||||
@ -74,7 +74,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
quantum_div[0] = ~0;
|
||||
for (i = 1; i <= CAKE_QUEUES; i++)
|
||||
@@ -2854,10 +2848,8 @@ static int cake_init(struct Qdisc *sch,
|
||||
@@ -2860,10 +2854,8 @@ static int cake_init(struct Qdisc *sch,
|
||||
|
||||
qd->tins = kvcalloc(CAKE_MAX_TINS, sizeof(struct cake_tin_data),
|
||||
GFP_KERNEL);
|
||||
@ -87,7 +87,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
for (i = 0; i < CAKE_MAX_TINS; i++) {
|
||||
struct cake_tin_data *b = qd->tins + i;
|
||||
@@ -2890,22 +2882,13 @@ static int cake_init(struct Qdisc *sch,
|
||||
@@ -2896,22 +2888,13 @@ static int cake_init(struct Qdisc *sch,
|
||||
qd->last_checked_active = 0;
|
||||
|
||||
return 0;
|
||||
|
||||
@ -20,7 +20,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/net/sched/sch_cake.c
|
||||
+++ b/net/sched/sch_cake.c
|
||||
@@ -2012,7 +2012,8 @@ static struct sk_buff *cake_dequeue(stru
|
||||
@@ -2018,7 +2018,8 @@ static struct sk_buff *cake_dequeue(stru
|
||||
u64 delay;
|
||||
u32 len;
|
||||
|
||||
|
||||
@ -34,7 +34,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
/* http://en.wikipedia.org/wiki/Methods_of_computing_square_roots
|
||||
* new_invsqrt = (invsqrt / 2) * (3 - count * invsqrt^2)
|
||||
*
|
||||
@@ -2039,12 +2039,9 @@ static struct sk_buff *cake_dequeue(stru
|
||||
@@ -2045,12 +2045,9 @@ static struct sk_buff *cake_dequeue(stru
|
||||
if (num_active_qs > 1)
|
||||
new_rate = div64_u64(q->config->rate_bps, num_active_qs);
|
||||
|
||||
@ -48,7 +48,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
}
|
||||
|
||||
begin:
|
||||
@@ -2361,12 +2358,10 @@ static void cake_set_rate(struct cake_ti
|
||||
@@ -2367,12 +2364,10 @@ static void cake_set_rate(struct cake_ti
|
||||
b->cparams.p_dec = 1 << 20; /* 1/4096 */
|
||||
}
|
||||
|
||||
@ -62,7 +62,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
q->tin_cnt = 1;
|
||||
|
||||
@@ -2380,12 +2375,10 @@ static int cake_config_besteffort(struct
|
||||
@@ -2386,12 +2381,10 @@ static int cake_config_besteffort(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -76,7 +76,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
u32 quantum = 256;
|
||||
u32 i;
|
||||
|
||||
@@ -2456,7 +2449,7 @@ static int cake_config_precedence(struct
|
||||
@@ -2462,7 +2455,7 @@ static int cake_config_precedence(struct
|
||||
* Total 12 traffic classes.
|
||||
*/
|
||||
|
||||
@ -85,7 +85,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
{
|
||||
/* Pruned list of traffic classes for typical applications:
|
||||
*
|
||||
@@ -2473,8 +2466,6 @@ static int cake_config_diffserv8(struct
|
||||
@@ -2479,8 +2472,6 @@ static int cake_config_diffserv8(struct
|
||||
*/
|
||||
|
||||
struct cake_sched_data *q = qdisc_priv(sch);
|
||||
@ -94,7 +94,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
u32 quantum = 256;
|
||||
u32 i;
|
||||
|
||||
@@ -2504,7 +2495,7 @@ static int cake_config_diffserv8(struct
|
||||
@@ -2510,7 +2501,7 @@ static int cake_config_diffserv8(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -103,7 +103,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
{
|
||||
/* Further pruned list of traffic classes for four-class system:
|
||||
*
|
||||
@@ -2517,8 +2508,6 @@ static int cake_config_diffserv4(struct
|
||||
@@ -2523,8 +2514,6 @@ static int cake_config_diffserv4(struct
|
||||
*/
|
||||
|
||||
struct cake_sched_data *q = qdisc_priv(sch);
|
||||
@ -112,7 +112,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
u32 quantum = 1024;
|
||||
|
||||
q->tin_cnt = 4;
|
||||
@@ -2546,7 +2535,7 @@ static int cake_config_diffserv4(struct
|
||||
@@ -2552,7 +2541,7 @@ static int cake_config_diffserv4(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -121,7 +121,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
{
|
||||
/* Simplified Diffserv structure with 3 tins.
|
||||
* Latency Sensitive (CS7, CS6, EF, VA, TOS4)
|
||||
@@ -2554,8 +2543,6 @@ static int cake_config_diffserv3(struct
|
||||
@@ -2560,8 +2549,6 @@ static int cake_config_diffserv3(struct
|
||||
* Low Priority (LE, CS1)
|
||||
*/
|
||||
struct cake_sched_data *q = qdisc_priv(sch);
|
||||
@ -130,7 +130,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
u32 quantum = 1024;
|
||||
|
||||
q->tin_cnt = 3;
|
||||
@@ -2580,32 +2567,33 @@ static int cake_config_diffserv3(struct
|
||||
@@ -2586,32 +2573,33 @@ static int cake_config_diffserv3(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -170,7 +170,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -2616,6 +2604,14 @@ static void cake_reconfigure(struct Qdis
|
||||
@@ -2622,6 +2610,14 @@ static void cake_reconfigure(struct Qdis
|
||||
|
||||
qd->rate_ns = qd->tins[ft].tin_rate_ns;
|
||||
qd->rate_shft = qd->tins[ft].tin_rate_shft;
|
||||
|
||||
@ -25,7 +25,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
#define PHY_CTL1 0x13
|
||||
#define PHY_CTL1_MDICD BIT(3)
|
||||
@@ -1275,6 +1276,28 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1272,6 +1273,28 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_wol = gpy_get_wol,
|
||||
.set_loopback = gpy_loopback,
|
||||
},
|
||||
@ -54,7 +54,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
};
|
||||
module_phy_driver(gpy_drivers);
|
||||
|
||||
@@ -1291,6 +1314,7 @@ static const struct mdio_device_id __may
|
||||
@@ -1288,6 +1311,7 @@ static const struct mdio_device_id __may
|
||||
{PHY_ID_MATCH_MODEL(PHY_ID_GPY241B)},
|
||||
{PHY_ID_MATCH_MODEL(PHY_ID_GPY241BM)},
|
||||
{PHY_ID_MATCH_MODEL(PHY_ID_GPY245B)},
|
||||
|
||||
@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/phy/mxl-gpy.c
|
||||
+++ b/drivers/net/phy/mxl-gpy.c
|
||||
@@ -568,20 +568,6 @@ static int gpy_update_interface(struct p
|
||||
@@ -562,20 +562,6 @@ static int gpy_update_interface(struct p
|
||||
case SPEED_100:
|
||||
case SPEED_10:
|
||||
phydev->interface = PHY_INTERFACE_MODE_SGMII;
|
||||
@ -40,8 +40,8 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1022,6 +1008,27 @@ static int gpy_led_polarity_set(struct p
|
||||
unreachable();
|
||||
@@ -1019,6 +1005,27 @@ static int gpy_led_polarity_set(struct p
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
+static unsigned int gpy_inband_caps(struct phy_device *phydev,
|
||||
@ -68,7 +68,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
static struct phy_driver gpy_drivers[] = {
|
||||
{
|
||||
PHY_ID_MATCH_MODEL(PHY_ID_GPY2xx),
|
||||
@@ -1029,6 +1036,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1026,6 +1033,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -77,7 +77,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1052,6 +1061,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1049,6 +1058,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -86,7 +86,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1074,6 +1085,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1071,6 +1082,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -95,7 +95,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1097,6 +1110,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1094,6 +1107,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy21x_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -104,7 +104,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1119,6 +1134,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1116,6 +1131,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy21x_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -113,7 +113,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1141,6 +1158,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1138,6 +1155,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.name = "Maxlinear Ethernet GPY212B",
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy21x_config_init,
|
||||
@ -122,7 +122,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.probe = gpy_probe,
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
@@ -1164,6 +1183,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1161,6 +1180,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy21x_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -131,7 +131,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1187,6 +1208,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1184,6 +1205,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy21x_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -140,7 +140,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1209,6 +1232,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1206,6 +1229,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy21x_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -149,7 +149,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1231,6 +1256,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1228,6 +1253,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -158,7 +158,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1248,6 +1275,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1245,6 +1272,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -167,7 +167,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1265,6 +1294,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1262,6 +1291,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
@ -176,7 +176,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.suspend = genphy_suspend,
|
||||
.resume = genphy_resume,
|
||||
.config_aneg = gpy_config_aneg,
|
||||
@@ -1282,6 +1313,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
@@ -1279,6 +1310,8 @@ static struct phy_driver gpy_drivers[] =
|
||||
.get_features = genphy_c45_pma_read_abilities,
|
||||
.config_init = gpy_config_init,
|
||||
.probe = gpy_probe,
|
||||
|
||||
@ -19,7 +19,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/include/linux/mdio.h
|
||||
+++ b/include/linux/mdio.h
|
||||
@@ -668,6 +668,19 @@ static inline int mdiodev_modify_changed
|
||||
@@ -648,6 +648,19 @@ static inline int mdiodev_modify_changed
|
||||
mask, set);
|
||||
}
|
||||
|
||||
|
||||
@ -50,7 +50,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
|
||||
--- a/drivers/net/dsa/Kconfig
|
||||
+++ b/drivers/net/dsa/Kconfig
|
||||
@@ -79,6 +79,8 @@ source "drivers/net/dsa/microchip/Kconfi
|
||||
@@ -74,6 +74,8 @@ source "drivers/net/dsa/microchip/Kconfi
|
||||
|
||||
source "drivers/net/dsa/mv88e6xxx/Kconfig"
|
||||
|
||||
@ -61,8 +61,8 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
||||
source "drivers/net/dsa/qca/Kconfig"
|
||||
--- a/drivers/net/dsa/Makefile
|
||||
+++ b/drivers/net/dsa/Makefile
|
||||
@@ -21,6 +21,7 @@ obj-y += b53/
|
||||
obj-y += hirschmann/
|
||||
@@ -19,6 +19,7 @@ obj-y += hirschmann/
|
||||
obj-y += lantiq/
|
||||
obj-y += microchip/
|
||||
obj-y += mv88e6xxx/
|
||||
+obj-y += mxl862xx/
|
||||
|
||||
@ -58,7 +58,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
#include <linux/of.h>
|
||||
#include <linux/phy.h>
|
||||
#include <linux/pm_wakeirq.h>
|
||||
@@ -127,6 +128,27 @@
|
||||
@@ -135,6 +136,27 @@
|
||||
*/
|
||||
#define RTL822X_VND2_C22_REG(reg) (0xa400 + 2 * (reg))
|
||||
|
||||
@ -86,7 +86,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
#define RTL8366RB_POWER_SAVE 0x15
|
||||
#define RTL8366RB_POWER_SAVE_ON BIT(12)
|
||||
|
||||
@@ -1453,6 +1475,168 @@ static int rtl822xb_c45_read_status(stru
|
||||
@@ -1494,6 +1516,168 @@ static int rtl822xb_c45_read_status(stru
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -255,7 +255,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
static bool rtlgen_supports_2_5gbps(struct phy_device *phydev)
|
||||
{
|
||||
int val;
|
||||
@@ -1930,11 +2114,14 @@ static struct phy_driver realtek_drvs[]
|
||||
@@ -1971,11 +2155,14 @@ static struct phy_driver realtek_drvs[]
|
||||
}, {
|
||||
PHY_ID_MATCH_EXACT(0x001ccad0),
|
||||
.name = "RTL8224 2.5Gbps PHY",
|
||||
|
||||
@ -19,7 +19,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/drivers/net/phy/realtek/realtek_main.c
|
||||
+++ b/drivers/net/phy/realtek/realtek_main.c
|
||||
@@ -128,6 +128,11 @@
|
||||
@@ -136,6 +136,11 @@
|
||||
*/
|
||||
#define RTL822X_VND2_C22_REG(reg) (0xa400 + 2 * (reg))
|
||||
|
||||
@ -31,7 +31,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
#define RTL8224_MII_RTCT 0x11
|
||||
#define RTL8224_MII_RTCT_ENABLE BIT(0)
|
||||
#define RTL8224_MII_RTCT_PAIR_A BIT(4)
|
||||
@@ -1880,6 +1885,53 @@ static irqreturn_t rtl9000a_handle_inter
|
||||
@@ -1921,6 +1926,53 @@ static irqreturn_t rtl9000a_handle_inter
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
@ -85,7 +85,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
static struct phy_driver realtek_drvs[] = {
|
||||
{
|
||||
PHY_ID_MATCH_EXACT(0x00008201),
|
||||
@@ -2054,6 +2106,8 @@ static struct phy_driver realtek_drvs[]
|
||||
@@ -2095,6 +2147,8 @@ static struct phy_driver realtek_drvs[]
|
||||
}, {
|
||||
.match_phy_device = rtl8221b_vb_cg_c45_match_phy_device,
|
||||
.name = "RTL8221B-VB-CG 2.5Gbps PHY (C45)",
|
||||
@ -94,7 +94,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
.probe = rtl822x_probe,
|
||||
.config_init = rtl822xb_config_init,
|
||||
.get_rate_matching = rtl822xb_get_rate_matching,
|
||||
@@ -2078,6 +2132,8 @@ static struct phy_driver realtek_drvs[]
|
||||
@@ -2119,6 +2173,8 @@ static struct phy_driver realtek_drvs[]
|
||||
}, {
|
||||
.match_phy_device = rtl8221b_vm_cg_c45_match_phy_device,
|
||||
.name = "RTL8221B-VM-CG 2.5Gbps PHY (C45)",
|
||||
|
||||
@ -26,7 +26,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
||||
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -8459,6 +8459,7 @@ F: include/linux/phy_link_topology.h
|
||||
@@ -9300,6 +9300,7 @@ F: include/linux/phy_link_topology.h
|
||||
F: include/linux/phylib_stubs.h
|
||||
F: include/linux/platform_data/mdio-bcm-unimac.h
|
||||
F: include/linux/platform_data/mdio-gpio.h
|
||||
|
||||
@ -37,7 +37,7 @@ Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
|
||||
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -9704,6 +9704,12 @@ S: Maintained
|
||||
@@ -10656,6 +10656,12 @@ S: Maintained
|
||||
F: Documentation/devicetree/bindings/leds/irled/gpio-ir-tx.yaml
|
||||
F: drivers/media/rc/gpio-ir-tx.c
|
||||
|
||||
@ -52,7 +52,7 @@ Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
|
||||
L: linux-gpio@vger.kernel.org
|
||||
--- a/drivers/gpio/Kconfig
|
||||
+++ b/drivers/gpio/Kconfig
|
||||
@@ -1866,6 +1866,15 @@ config GPIO_LATCH
|
||||
@@ -1985,6 +1985,15 @@ config GPIO_LATCH
|
||||
Say yes here to enable a driver for GPIO multiplexers based on latches
|
||||
connected to other GPIOs.
|
||||
|
||||
@ -70,7 +70,7 @@ Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
|
||||
select IRQ_SIM
|
||||
--- a/drivers/gpio/Makefile
|
||||
+++ b/drivers/gpio/Makefile
|
||||
@@ -84,6 +84,7 @@ obj-$(CONFIG_GPIO_IXP4XX) += gpio-ixp4x
|
||||
@@ -89,6 +89,7 @@ obj-$(CONFIG_GPIO_IXP4XX) += gpio-ixp4x
|
||||
obj-$(CONFIG_GPIO_JANZ_TTL) += gpio-janz-ttl.o
|
||||
obj-$(CONFIG_GPIO_KEMPLD) += gpio-kempld.o
|
||||
obj-$(CONFIG_GPIO_LATCH) += gpio-latch.o
|
||||
|
||||
@ -15,7 +15,7 @@ Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
|
||||
|
||||
--- a/sound/usb/mixer_quirks.c
|
||||
+++ b/sound/usb/mixer_quirks.c
|
||||
@@ -3367,10 +3367,6 @@ static int snd_bbfpro_controls_create(st
|
||||
@@ -3306,10 +3306,6 @@ static int snd_bbfpro_controls_create(st
|
||||
#define RME_DIGIFACE_REGISTER(reg, mask) (((reg) << 16) | (mask))
|
||||
#define RME_DIGIFACE_INVERT BIT(31)
|
||||
|
||||
|
||||
@ -28,7 +28,7 @@ Signed-off-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
|
||||
#include <linux/clkdev.h>
|
||||
--- a/drivers/clk/at91/pmc.h
|
||||
+++ b/drivers/clk/at91/pmc.h
|
||||
@@ -116,9 +116,6 @@ struct at91_clk_pms {
|
||||
@@ -117,9 +117,6 @@ struct at91_clk_pms {
|
||||
unsigned int parent;
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4453,6 +4453,13 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4272,6 +4272,13 @@ static const struct alg_test_desc alg_te
|
||||
.test = alg_test_null,
|
||||
.fips_allowed = 1,
|
||||
}, {
|
||||
@ -30,11 +30,11 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
+ }
|
||||
+ }, {
|
||||
.alg = "authenc(hmac(sha384),cbc(des))",
|
||||
.generic_driver = "authenc(hmac-sha384-lib,cbc(des-generic))",
|
||||
.test = alg_test_aead,
|
||||
.suite = {
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -17773,6 +17773,317 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -16466,6 +16466,317 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4414,6 +4414,13 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4221,6 +4221,13 @@ static const struct alg_test_desc alg_te
|
||||
.test = alg_test_null,
|
||||
.fips_allowed = 1,
|
||||
}, {
|
||||
@ -30,11 +30,11 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
+ }
|
||||
+ }, {
|
||||
.alg = "authenc(hmac(sha224),cbc(des))",
|
||||
.generic_driver = "authenc(hmac-sha224-lib,cbc(des-generic))",
|
||||
.test = alg_test_aead,
|
||||
.suite = {
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -17490,6 +17490,291 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -16183,6 +16183,291 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4375,6 +4375,13 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4177,6 +4177,13 @@ static const struct alg_test_desc alg_te
|
||||
.cprng = __VECS(ansi_cprng_aes_tv_template)
|
||||
}
|
||||
}, {
|
||||
@ -30,11 +30,11 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
+ }
|
||||
+ }, {
|
||||
.alg = "authenc(hmac(md5),ecb(cipher_null))",
|
||||
.generic_driver = "authenc(hmac-md5-lib,ecb-cipher_null)",
|
||||
.test = alg_test_aead,
|
||||
.suite = {
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -19021,6 +19021,65 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -17714,6 +17714,65 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4440,6 +4440,10 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4249,6 +4249,10 @@ static const struct alg_test_desc alg_te
|
||||
.aead = __VECS(hmac_sha224_des3_ede_cbc_tv_temp)
|
||||
}
|
||||
}, {
|
||||
@ -27,5 +27,5 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
+ .fips_allowed = 1,
|
||||
+ }, {
|
||||
.alg = "authenc(hmac(sha256),cbc(aes))",
|
||||
.generic_driver = "authenc(hmac-sha256-lib,cbc(aes-generic))",
|
||||
.test = alg_test_aead,
|
||||
.fips_allowed = 1,
|
||||
|
||||
@ -17,7 +17,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4375,6 +4375,13 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4177,6 +4177,13 @@ static const struct alg_test_desc alg_te
|
||||
.cprng = __VECS(ansi_cprng_aes_tv_template)
|
||||
}
|
||||
}, {
|
||||
@ -33,7 +33,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
.test = alg_test_aead,
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -18708,6 +18708,63 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -17401,6 +17401,63 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4425,8 +4425,12 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4232,8 +4232,12 @@ static const struct alg_test_desc alg_te
|
||||
}
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha1),rfc3686(ctr(aes)))",
|
||||
@ -34,7 +34,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
.generic_driver = "authenc(hmac-sha224-lib,cbc(aes-generic))",
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -17444,6 +17444,227 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -16137,6 +16137,227 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4452,8 +4452,12 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4261,8 +4261,12 @@ static const struct alg_test_desc alg_te
|
||||
}
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha224),rfc3686(ctr(aes)))",
|
||||
@ -31,10 +31,10 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
+ }
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha256),cbc(aes))",
|
||||
.test = alg_test_aead,
|
||||
.generic_driver = "authenc(hmac-sha256-lib,cbc(aes-generic))",
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -17996,6 +17996,241 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -16689,6 +16689,241 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,8 +18,8 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4483,8 +4483,12 @@ static const struct alg_test_desc alg_te
|
||||
.fips_allowed = 1,
|
||||
@@ -4302,8 +4302,12 @@ static const struct alg_test_desc alg_te
|
||||
}
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha256),rfc3686(ctr(aes)))",
|
||||
- .test = alg_test_null,
|
||||
@ -34,7 +34,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
.generic_driver = "authenc(hmac-sha384-lib,cbc(aes-generic))",
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -18514,6 +18514,241 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -17207,6 +17207,241 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,8 +18,8 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4514,8 +4514,12 @@ static const struct alg_test_desc alg_te
|
||||
.fips_allowed = 1,
|
||||
@@ -4342,8 +4342,12 @@ static const struct alg_test_desc alg_te
|
||||
}
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha384),rfc3686(ctr(aes)))",
|
||||
- .test = alg_test_null,
|
||||
@ -31,10 +31,10 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
+ }
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha512),cbc(aes))",
|
||||
.fips_allowed = 1,
|
||||
.generic_driver = "authenc(hmac-sha512-lib,cbc(aes-generic))",
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -19060,6 +19060,269 @@ static const struct aead_testvec hmac_sh
|
||||
@@ -17753,6 +17753,269 @@ static const struct aead_testvec hmac_sh
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
|
||||
--- a/crypto/testmgr.c
|
||||
+++ b/crypto/testmgr.c
|
||||
@@ -4545,8 +4545,12 @@ static const struct alg_test_desc alg_te
|
||||
@@ -4376,8 +4376,12 @@ static const struct alg_test_desc alg_te
|
||||
.fips_allowed = 1,
|
||||
}, {
|
||||
.alg = "authenc(hmac(sha512),rfc3686(ctr(aes)))",
|
||||
@ -34,7 +34,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
.test = alg_test_hash,
|
||||
--- a/crypto/testmgr.h
|
||||
+++ b/crypto/testmgr.h
|
||||
@@ -19719,6 +19719,297 @@ static const struct aead_testvec hmac_md
|
||||
@@ -18412,6 +18412,297 @@ static const struct aead_testvec hmac_md
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@ -24,7 +24,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
&safexcel_alg_authenc_hmac_sha1_ctr_aes,
|
||||
&safexcel_alg_authenc_hmac_sha224_ctr_aes,
|
||||
&safexcel_alg_authenc_hmac_sha256_ctr_aes,
|
||||
@@ -1242,11 +1241,12 @@ static struct safexcel_alg_template *saf
|
||||
@@ -1241,11 +1240,12 @@ static struct safexcel_alg_template *saf
|
||||
&safexcel_alg_hmac_sha3_256,
|
||||
&safexcel_alg_hmac_sha3_384,
|
||||
&safexcel_alg_hmac_sha3_512,
|
||||
@ -48,7 +48,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
extern struct safexcel_alg_template safexcel_alg_authenc_hmac_sha1_ctr_aes;
|
||||
extern struct safexcel_alg_template safexcel_alg_authenc_hmac_sha224_ctr_aes;
|
||||
extern struct safexcel_alg_template safexcel_alg_authenc_hmac_sha256_ctr_aes;
|
||||
@@ -983,11 +982,12 @@ extern struct safexcel_alg_template safe
|
||||
@@ -982,11 +981,12 @@ extern struct safexcel_alg_template safe
|
||||
extern struct safexcel_alg_template safexcel_alg_hmac_sha3_256;
|
||||
extern struct safexcel_alg_template safexcel_alg_hmac_sha3_384;
|
||||
extern struct safexcel_alg_template safexcel_alg_hmac_sha3_512;
|
||||
|
||||
@ -40,7 +40,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
&safexcel_alg_authenc_hmac_sha1_ctr_aes,
|
||||
&safexcel_alg_authenc_hmac_sha224_ctr_aes,
|
||||
&safexcel_alg_authenc_hmac_sha256_ctr_aes,
|
||||
@@ -1241,11 +1243,13 @@ static struct safexcel_alg_template *saf
|
||||
@@ -1240,11 +1242,13 @@ static struct safexcel_alg_template *saf
|
||||
&safexcel_alg_hmac_sha3_256,
|
||||
&safexcel_alg_hmac_sha3_384,
|
||||
&safexcel_alg_hmac_sha3_512,
|
||||
@ -70,7 +70,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||||
extern struct safexcel_alg_template safexcel_alg_authenc_hmac_sha1_ctr_aes;
|
||||
extern struct safexcel_alg_template safexcel_alg_authenc_hmac_sha224_ctr_aes;
|
||||
extern struct safexcel_alg_template safexcel_alg_authenc_hmac_sha256_ctr_aes;
|
||||
@@ -982,11 +984,13 @@ extern struct safexcel_alg_template safe
|
||||
@@ -981,11 +983,13 @@ extern struct safexcel_alg_template safe
|
||||
extern struct safexcel_alg_template safexcel_alg_hmac_sha3_256;
|
||||
extern struct safexcel_alg_template safexcel_alg_hmac_sha3_384;
|
||||
extern struct safexcel_alg_template safexcel_alg_hmac_sha3_512;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user