kernel: bump 5.4 to 5.4.260 (#11657)

Signed-off-by: aakkll <94471752+aakkll@users.noreply.github.com>
This commit is contained in:
aakkll 2023-11-13 17:34:53 +08:00 committed by GitHub
parent 59e66205ed
commit 03ef1793db
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
47 changed files with 127 additions and 141 deletions

View File

@ -1,2 +1,2 @@
LINUX_VERSION-5.4 = .258 LINUX_VERSION-5.4 = .260
LINUX_KERNEL_HASH-5.4.258 = 39701815a7a1b5ea4253db18e9327a45926a944499628d032da63c1bb6ea623e LINUX_KERNEL_HASH-5.4.260 = 9830820714c8f5985c50071cc9e1b40533ee81a4f6c704916c7148d16e54ebfeO

View File

@ -305,7 +305,7 @@
list_for_each_entry(p, head, list) { list_for_each_entry(p, head, list) {
--- a/net/ipv4/tcp_output.c --- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c
@@ -461,48 +461,53 @@ static void tcp_options_write(__be32 *pt @@ -460,48 +460,53 @@ static void tcp_options_write(__be32 *pt
u16 options = opts->options; /* mungable copy */ u16 options = opts->options; /* mungable copy */
if (unlikely(OPTION_MD5 & options)) { if (unlikely(OPTION_MD5 & options)) {
@ -382,7 +382,7 @@
} }
if (unlikely(opts->num_sack_blocks)) { if (unlikely(opts->num_sack_blocks)) {
@@ -510,16 +515,17 @@ static void tcp_options_write(__be32 *pt @@ -509,16 +514,17 @@ static void tcp_options_write(__be32 *pt
tp->duplicate_sack : tp->selective_acks; tp->duplicate_sack : tp->selective_acks;
int this_sack; int this_sack;
@ -406,7 +406,7 @@
} }
tp->rx_opt.dsack = 0; tp->rx_opt.dsack = 0;
@@ -532,13 +538,14 @@ static void tcp_options_write(__be32 *pt @@ -531,13 +537,14 @@ static void tcp_options_write(__be32 *pt
if (foc->exp) { if (foc->exp) {
len = TCPOLEN_EXP_FASTOPEN_BASE + foc->len; len = TCPOLEN_EXP_FASTOPEN_BASE + foc->len;
@ -706,7 +706,7 @@
EXPORT_SYMBOL(xfrm_parse_spi); EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c --- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c
@@ -4004,14 +4004,16 @@ static bool tcp_parse_aligned_timestamp( @@ -4017,14 +4017,16 @@ static bool tcp_parse_aligned_timestamp(
{ {
const __be32 *ptr = (const __be32 *)(th + 1); const __be32 *ptr = (const __be32 *)(th + 1);

View File

@ -40,7 +40,7 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
compatible = "generic-ohci"; compatible = "generic-ohci";
--- a/arch/arm/boot/dts/bcm53573.dtsi --- a/arch/arm/boot/dts/bcm53573.dtsi
+++ b/arch/arm/boot/dts/bcm53573.dtsi +++ b/arch/arm/boot/dts/bcm53573.dtsi
@@ -135,7 +135,7 @@ @@ -138,7 +138,7 @@
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
@ -49,7 +49,7 @@ Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
compatible = "generic-ehci"; compatible = "generic-ehci";
reg = <0x4000 0x1000>; reg = <0x4000 0x1000>;
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
@@ -155,7 +155,7 @@ @@ -158,7 +158,7 @@
}; };
}; };

View File

@ -40,7 +40,7 @@ Link: https://lore.kernel.org/linux-mtd/20200512075733.745374-3-noltari@gmail.co
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
@@ -1004,33 +1004,30 @@ static int brcmnand_hamming_ooblayout_fr @@ -1020,33 +1020,30 @@ static int brcmnand_hamming_ooblayout_fr
struct brcmnand_cfg *cfg = &host->hwcfg; struct brcmnand_cfg *cfg = &host->hwcfg;
int sas = cfg->spare_area_size << cfg->sector_size_1k; int sas = cfg->spare_area_size << cfg->sector_size_1k;
int sectors = cfg->page_size / (512 << cfg->sector_size_1k); int sectors = cfg->page_size / (512 << cfg->sector_size_1k);

View File

@ -19,7 +19,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-2-noltari@gmail.c
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
@@ -269,8 +269,8 @@ enum brcmnand_reg { @@ -270,8 +270,8 @@ enum brcmnand_reg {
BRCMNAND_FC_BASE, BRCMNAND_FC_BASE,
}; };
@ -30,7 +30,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-2-noltari@gmail.c
[BRCMNAND_CMD_START] = 0x04, [BRCMNAND_CMD_START] = 0x04,
[BRCMNAND_CMD_EXT_ADDRESS] = 0x08, [BRCMNAND_CMD_EXT_ADDRESS] = 0x08,
[BRCMNAND_CMD_ADDRESS] = 0x0c, [BRCMNAND_CMD_ADDRESS] = 0x0c,
@@ -522,8 +522,8 @@ static int brcmnand_revision_init(struct @@ -551,8 +551,8 @@ static int brcmnand_revision_init(struct
ctrl->reg_offsets = brcmnand_regs_v60; ctrl->reg_offsets = brcmnand_regs_v60;
else if (ctrl->nand_version >= 0x0500) else if (ctrl->nand_version >= 0x0500)
ctrl->reg_offsets = brcmnand_regs_v50; ctrl->reg_offsets = brcmnand_regs_v50;

View File

@ -18,7 +18,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-4-noltari@gmail.c
--- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
@@ -502,7 +502,7 @@ static int brcmnand_revision_init(struct @@ -531,7 +531,7 @@ static int brcmnand_revision_init(struct
{ {
static const unsigned int block_sizes_v6[] = { 8, 16, 128, 256, 512, 1024, 2048, 0 }; static const unsigned int block_sizes_v6[] = { 8, 16, 128, 256, 512, 1024, 2048, 0 };
static const unsigned int block_sizes_v4[] = { 16, 128, 8, 512, 256, 1024, 2048, 0 }; static const unsigned int block_sizes_v4[] = { 16, 128, 8, 512, 256, 1024, 2048, 0 };
@ -27,7 +27,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-4-noltari@gmail.c
ctrl->nand_version = nand_readreg(ctrl, 0) & 0xffff; ctrl->nand_version = nand_readreg(ctrl, 0) & 0xffff;
@@ -549,7 +549,7 @@ static int brcmnand_revision_init(struct @@ -578,7 +578,7 @@ static int brcmnand_revision_init(struct
ctrl->max_page_size = 16 * 1024; ctrl->max_page_size = 16 * 1024;
ctrl->max_block_size = 2 * 1024 * 1024; ctrl->max_block_size = 2 * 1024 * 1024;
} else { } else {

View File

@ -25,9 +25,9 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
const unsigned int *page_sizes; const unsigned int *page_sizes;
+ unsigned int page_size_shift; + unsigned int page_size_shift;
unsigned int max_oob; unsigned int max_oob;
u32 ecc_level_shift;
u32 features; u32 features;
@@ -270,6 +271,36 @@ enum brcmnand_reg {
@@ -269,6 +270,36 @@ enum brcmnand_reg {
BRCMNAND_FC_BASE, BRCMNAND_FC_BASE,
}; };
@ -64,7 +64,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
/* BRCMNAND v3.3-v4.0 */ /* BRCMNAND v3.3-v4.0 */
static const u16 brcmnand_regs_v33[] = { static const u16 brcmnand_regs_v33[] = {
[BRCMNAND_CMD_START] = 0x04, [BRCMNAND_CMD_START] = 0x04,
@@ -467,6 +498,9 @@ enum { @@ -468,6 +499,9 @@ enum {
CFG_BUS_WIDTH = BIT(CFG_BUS_WIDTH_SHIFT), CFG_BUS_WIDTH = BIT(CFG_BUS_WIDTH_SHIFT),
CFG_DEVICE_SIZE_SHIFT = 24, CFG_DEVICE_SIZE_SHIFT = 24,
@ -74,7 +74,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
/* Only for pre-v7.1 (with no CFG_EXT register) */ /* Only for pre-v7.1 (with no CFG_EXT register) */
CFG_PAGE_SIZE_SHIFT = 20, CFG_PAGE_SIZE_SHIFT = 20,
CFG_BLK_SIZE_SHIFT = 28, CFG_BLK_SIZE_SHIFT = 28,
@@ -502,12 +536,16 @@ static int brcmnand_revision_init(struct @@ -531,12 +565,16 @@ static int brcmnand_revision_init(struct
{ {
static const unsigned int block_sizes_v6[] = { 8, 16, 128, 256, 512, 1024, 2048, 0 }; static const unsigned int block_sizes_v6[] = { 8, 16, 128, 256, 512, 1024, 2048, 0 };
static const unsigned int block_sizes_v4[] = { 16, 128, 8, 512, 256, 1024, 2048, 0 }; static const unsigned int block_sizes_v4[] = { 16, 128, 8, 512, 256, 1024, 2048, 0 };
@ -93,7 +93,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
dev_err(ctrl->dev, "version %#x not supported\n", dev_err(ctrl->dev, "version %#x not supported\n",
ctrl->nand_version); ctrl->nand_version);
return -ENODEV; return -ENODEV;
@@ -524,6 +562,8 @@ static int brcmnand_revision_init(struct @@ -553,6 +591,8 @@ static int brcmnand_revision_init(struct
ctrl->reg_offsets = brcmnand_regs_v50; ctrl->reg_offsets = brcmnand_regs_v50;
else if (ctrl->nand_version >= 0x0303) else if (ctrl->nand_version >= 0x0303)
ctrl->reg_offsets = brcmnand_regs_v33; ctrl->reg_offsets = brcmnand_regs_v33;
@ -102,7 +102,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
/* Chip-select stride */ /* Chip-select stride */
if (ctrl->nand_version >= 0x0701) if (ctrl->nand_version >= 0x0701)
@@ -549,14 +589,32 @@ static int brcmnand_revision_init(struct @@ -578,14 +618,32 @@ static int brcmnand_revision_init(struct
ctrl->max_page_size = 16 * 1024; ctrl->max_page_size = 16 * 1024;
ctrl->max_block_size = 2 * 1024 * 1024; ctrl->max_block_size = 2 * 1024 * 1024;
} else { } else {
@ -138,7 +138,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
ctrl->max_block_size = 512 * 1024; ctrl->max_block_size = 512 * 1024;
} }
} }
@@ -724,6 +782,9 @@ static void brcmnand_wr_corr_thresh(stru @@ -759,6 +817,9 @@ static void brcmnand_wr_corr_thresh(stru
enum brcmnand_reg reg = BRCMNAND_CORR_THRESHOLD; enum brcmnand_reg reg = BRCMNAND_CORR_THRESHOLD;
int cs = host->cs; int cs = host->cs;
@ -148,7 +148,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
if (ctrl->nand_version == 0x0702) if (ctrl->nand_version == 0x0702)
bits = 7; bits = 7;
else if (ctrl->nand_version >= 0x0600) else if (ctrl->nand_version >= 0x0600)
@@ -782,8 +843,10 @@ static inline u32 brcmnand_spare_area_ma @@ -793,8 +854,10 @@ static inline u32 brcmnand_spare_area_ma
return GENMASK(7, 0); return GENMASK(7, 0);
else if (ctrl->nand_version >= 0x0600) else if (ctrl->nand_version >= 0x0600)
return GENMASK(6, 0); return GENMASK(6, 0);
@ -159,8 +159,8 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
+ return GENMASK(4, 0); + return GENMASK(4, 0);
} }
#define NAND_ACC_CONTROL_ECC_SHIFT 16 static inline u32 brcmnand_ecc_level_mask(struct brcmnand_controller *ctrl)
@@ -2146,7 +2209,7 @@ static int brcmnand_set_cfg(struct brcmn @@ -2186,7 +2249,7 @@ static int brcmnand_set_cfg(struct brcmn
(!!(cfg->device_width == 16) << CFG_BUS_WIDTH_SHIFT) | (!!(cfg->device_width == 16) << CFG_BUS_WIDTH_SHIFT) |
(device_size << CFG_DEVICE_SIZE_SHIFT); (device_size << CFG_DEVICE_SIZE_SHIFT);
if (cfg_offs == cfg_ext_offs) { if (cfg_offs == cfg_ext_offs) {
@ -169,21 +169,7 @@ Link: https://lore.kernel.org/linux-mtd/20200522121524.4161539-6-noltari@gmail.c
(block_size << CFG_BLK_SIZE_SHIFT); (block_size << CFG_BLK_SIZE_SHIFT);
nand_writereg(ctrl, cfg_offs, tmp); nand_writereg(ctrl, cfg_offs, tmp);
} else { } else {
@@ -2158,9 +2221,11 @@ static int brcmnand_set_cfg(struct brcmn @@ -2570,6 +2633,8 @@ const struct dev_pm_ops brcmnand_pm_ops
tmp = nand_readreg(ctrl, acc_control_offs);
tmp &= ~brcmnand_ecc_level_mask(ctrl);
- tmp |= cfg->ecc_level << NAND_ACC_CONTROL_ECC_SHIFT;
tmp &= ~brcmnand_spare_area_mask(ctrl);
- tmp |= cfg->spare_area_size;
+ if (ctrl->nand_version >= 0x0302) {
+ tmp |= cfg->ecc_level << NAND_ACC_CONTROL_ECC_SHIFT;
+ tmp |= cfg->spare_area_size;
+ }
nand_writereg(ctrl, acc_control_offs, tmp);
brcmnand_set_sector_size_1k(host, cfg->sector_size_1k);
@@ -2530,6 +2595,8 @@ const struct dev_pm_ops brcmnand_pm_ops
EXPORT_SYMBOL_GPL(brcmnand_pm_ops); EXPORT_SYMBOL_GPL(brcmnand_pm_ops);
static const struct of_device_id brcmnand_of_match[] = { static const struct of_device_id brcmnand_of_match[] = {

View File

@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -2392,7 +2392,14 @@ static int mv88e6xxx_setup_upstream_port @@ -2394,7 +2394,14 @@ static int mv88e6xxx_setup_upstream_port
if (chip->info->ops->set_egress_port) { if (chip->info->ops->set_egress_port) {
err = chip->info->ops->set_egress_port(chip, err = chip->info->ops->set_egress_port(chip,
@ -62,7 +62,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
#define MV88E6XXX_CASCADE_PORT_MULTIPLE 0xf #define MV88E6XXX_CASCADE_PORT_MULTIPLE 0xf
--- a/drivers/net/dsa/mv88e6xxx/global1.c --- a/drivers/net/dsa/mv88e6xxx/global1.c
+++ b/drivers/net/dsa/mv88e6xxx/global1.c +++ b/drivers/net/dsa/mv88e6xxx/global1.c
@@ -294,7 +294,9 @@ int mv88e6250_g1_ieee_pri_map(struct mv8 @@ -263,7 +263,9 @@ int mv88e6250_g1_ieee_pri_map(struct mv8
/* Offset 0x1a: Monitor Control */ /* Offset 0x1a: Monitor Control */
/* Offset 0x1a: Monitor & MGMT Control on some devices */ /* Offset 0x1a: Monitor & MGMT Control on some devices */
@ -73,7 +73,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
{ {
u16 reg; u16 reg;
int err; int err;
@@ -303,11 +305,20 @@ int mv88e6095_g1_set_egress_port(struct @@ -272,11 +274,20 @@ int mv88e6095_g1_set_egress_port(struct
if (err) if (err)
return err; return err;
@ -99,7 +99,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
return mv88e6xxx_g1_write(chip, MV88E6185_G1_MONITOR_CTL, reg); return mv88e6xxx_g1_write(chip, MV88E6185_G1_MONITOR_CTL, reg);
} }
@@ -341,17 +352,24 @@ static int mv88e6390_g1_monitor_write(st @@ -310,17 +321,24 @@ static int mv88e6390_g1_monitor_write(st
return mv88e6xxx_g1_write(chip, MV88E6390_G1_MONITOR_MGMT_CTL, reg); return mv88e6xxx_g1_write(chip, MV88E6390_G1_MONITOR_MGMT_CTL, reg);
} }
@ -132,7 +132,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
return err; return err;
--- a/drivers/net/dsa/mv88e6xxx/global1.h --- a/drivers/net/dsa/mv88e6xxx/global1.h
+++ b/drivers/net/dsa/mv88e6xxx/global1.h +++ b/drivers/net/dsa/mv88e6xxx/global1.h
@@ -289,8 +289,12 @@ int mv88e6095_g1_stats_set_histogram(str @@ -288,8 +288,12 @@ int mv88e6095_g1_stats_set_histogram(str
int mv88e6390_g1_stats_set_histogram(struct mv88e6xxx_chip *chip); int mv88e6390_g1_stats_set_histogram(struct mv88e6xxx_chip *chip);
void mv88e6xxx_g1_stats_read(struct mv88e6xxx_chip *chip, int stat, u32 *val); void mv88e6xxx_g1_stats_read(struct mv88e6xxx_chip *chip, int stat, u32 *val);
int mv88e6xxx_g1_stats_clear(struct mv88e6xxx_chip *chip); int mv88e6xxx_g1_stats_clear(struct mv88e6xxx_chip *chip);

View File

@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -4942,6 +4942,80 @@ static int mv88e6xxx_port_mdb_del(struct @@ -4944,6 +4944,80 @@ static int mv88e6xxx_port_mdb_del(struct
return err; return err;
} }
@ -106,7 +106,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
static int mv88e6xxx_port_egress_floods(struct dsa_switch *ds, int port, static int mv88e6xxx_port_egress_floods(struct dsa_switch *ds, int port,
bool unicast, bool multicast) bool unicast, bool multicast)
{ {
@@ -4996,6 +5070,8 @@ static const struct dsa_switch_ops mv88e @@ -4998,6 +5072,8 @@ static const struct dsa_switch_ops mv88e
.port_mdb_prepare = mv88e6xxx_port_mdb_prepare, .port_mdb_prepare = mv88e6xxx_port_mdb_prepare,
.port_mdb_add = mv88e6xxx_port_mdb_add, .port_mdb_add = mv88e6xxx_port_mdb_add,
.port_mdb_del = mv88e6xxx_port_mdb_del, .port_mdb_del = mv88e6xxx_port_mdb_del,
@ -139,7 +139,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/global1.c --- a/drivers/net/dsa/mv88e6xxx/global1.c
+++ b/drivers/net/dsa/mv88e6xxx/global1.c +++ b/drivers/net/dsa/mv88e6xxx/global1.c
@@ -298,6 +298,7 @@ int mv88e6095_g1_set_egress_port(struct @@ -267,6 +267,7 @@ int mv88e6095_g1_set_egress_port(struct
enum mv88e6xxx_egress_direction direction, enum mv88e6xxx_egress_direction direction,
int port) int port)
{ {
@ -147,7 +147,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
u16 reg; u16 reg;
int err; int err;
@@ -307,11 +308,13 @@ int mv88e6095_g1_set_egress_port(struct @@ -276,11 +277,13 @@ int mv88e6095_g1_set_egress_port(struct
switch (direction) { switch (direction) {
case MV88E6XXX_EGRESS_DIR_INGRESS: case MV88E6XXX_EGRESS_DIR_INGRESS:
@ -161,7 +161,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
reg &= MV88E6185_G1_MONITOR_CTL_EGRESS_DEST_MASK; reg &= MV88E6185_G1_MONITOR_CTL_EGRESS_DEST_MASK;
reg |= port << reg |= port <<
__bf_shf(MV88E6185_G1_MONITOR_CTL_EGRESS_DEST_MASK); __bf_shf(MV88E6185_G1_MONITOR_CTL_EGRESS_DEST_MASK);
@@ -320,7 +323,11 @@ int mv88e6095_g1_set_egress_port(struct @@ -289,7 +292,11 @@ int mv88e6095_g1_set_egress_port(struct
return -EINVAL; return -EINVAL;
} }
@ -174,7 +174,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
} }
/* Older generations also call this the ARP destination. It has been /* Older generations also call this the ARP destination. It has been
@@ -356,14 +363,17 @@ int mv88e6390_g1_set_egress_port(struct @@ -325,14 +332,17 @@ int mv88e6390_g1_set_egress_port(struct
enum mv88e6xxx_egress_direction direction, enum mv88e6xxx_egress_direction direction,
int port) int port)
{ {
@ -192,7 +192,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
ptr = MV88E6390_G1_MONITOR_MGMT_CTL_PTR_EGRESS_DEST; ptr = MV88E6390_G1_MONITOR_MGMT_CTL_PTR_EGRESS_DEST;
break; break;
default: default:
@@ -371,10 +381,10 @@ int mv88e6390_g1_set_egress_port(struct @@ -340,10 +350,10 @@ int mv88e6390_g1_set_egress_port(struct
} }
err = mv88e6390_g1_monitor_write(chip, ptr, port); err = mv88e6390_g1_monitor_write(chip, ptr, port);

View File

@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -5009,7 +5009,7 @@ static void mv88e6xxx_port_mirror_del(st @@ -5011,7 +5011,7 @@ static void mv88e6xxx_port_mirror_del(st
if (chip->info->ops->set_egress_port(chip, if (chip->info->ops->set_egress_port(chip,
direction, direction,
dsa_upstream_port(ds, dsa_upstream_port(ds,

View File

@ -16,7 +16,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/dsa/mv88e6xxx/global1.c --- a/drivers/net/dsa/mv88e6xxx/global1.c
+++ b/drivers/net/dsa/mv88e6xxx/global1.c +++ b/drivers/net/dsa/mv88e6xxx/global1.c
@@ -309,13 +309,13 @@ int mv88e6095_g1_set_egress_port(struct @@ -278,13 +278,13 @@ int mv88e6095_g1_set_egress_port(struct
switch (direction) { switch (direction) {
case MV88E6XXX_EGRESS_DIR_INGRESS: case MV88E6XXX_EGRESS_DIR_INGRESS:
dest_port_chip = &chip->ingress_dest_port; dest_port_chip = &chip->ingress_dest_port;

View File

@ -10,7 +10,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2252,6 +2252,28 @@ static int mtk_start_dma(struct mtk_eth @@ -2255,6 +2255,28 @@ static int mtk_start_dma(struct mtk_eth
return 0; return 0;
} }
@ -39,7 +39,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
static int mtk_open(struct net_device *dev) static int mtk_open(struct net_device *dev)
{ {
struct mtk_mac *mac = netdev_priv(dev); struct mtk_mac *mac = netdev_priv(dev);
@@ -2447,8 +2469,6 @@ static int mtk_hw_init(struct mtk_eth *e @@ -2450,8 +2472,6 @@ static int mtk_hw_init(struct mtk_eth *e
mtk_w32(eth, 0, MTK_QDMA_DELAY_INT); mtk_w32(eth, 0, MTK_QDMA_DELAY_INT);
mtk_tx_irq_disable(eth, ~0); mtk_tx_irq_disable(eth, ~0);
mtk_rx_irq_disable(eth, ~0); mtk_rx_irq_disable(eth, ~0);
@ -48,7 +48,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
/* FE int grouping */ /* FE int grouping */
mtk_w32(eth, MTK_TX_DONE_INT, MTK_PDMA_INT_GRP1); mtk_w32(eth, MTK_TX_DONE_INT, MTK_PDMA_INT_GRP1);
@@ -2457,18 +2477,7 @@ static int mtk_hw_init(struct mtk_eth *e @@ -2460,18 +2480,7 @@ static int mtk_hw_init(struct mtk_eth *e
mtk_w32(eth, MTK_RX_DONE_INT, MTK_QDMA_INT_GRP2); mtk_w32(eth, MTK_RX_DONE_INT, MTK_QDMA_INT_GRP2);
mtk_w32(eth, 0x21021000, MTK_FE_INT_GRP); mtk_w32(eth, 0x21021000, MTK_FE_INT_GRP);

View File

@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2256,6 +2256,9 @@ static void mtk_gdm_config(struct mtk_et @@ -2259,6 +2259,9 @@ static void mtk_gdm_config(struct mtk_et
{ {
int i; int i;
@ -25,7 +25,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
for (i = 0; i < MTK_MAC_COUNT; i++) { for (i = 0; i < MTK_MAC_COUNT; i++) {
u32 val = mtk_r32(eth, MTK_GDMA_FWD_CFG(i)); u32 val = mtk_r32(eth, MTK_GDMA_FWD_CFG(i));
@@ -2294,6 +2297,8 @@ static int mtk_open(struct net_device *d @@ -2297,6 +2300,8 @@ static int mtk_open(struct net_device *d
if (err) if (err)
return err; return err;
@ -34,7 +34,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
napi_enable(&eth->tx_napi); napi_enable(&eth->tx_napi);
napi_enable(&eth->rx_napi); napi_enable(&eth->rx_napi);
mtk_tx_irq_enable(eth, MTK_TX_DONE_INT); mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
@@ -2477,8 +2482,6 @@ static int mtk_hw_init(struct mtk_eth *e @@ -2480,8 +2485,6 @@ static int mtk_hw_init(struct mtk_eth *e
mtk_w32(eth, MTK_RX_DONE_INT, MTK_QDMA_INT_GRP2); mtk_w32(eth, MTK_RX_DONE_INT, MTK_QDMA_INT_GRP2);
mtk_w32(eth, 0x21021000, MTK_FE_INT_GRP); mtk_w32(eth, 0x21021000, MTK_FE_INT_GRP);

View File

@ -12,7 +12,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2351,6 +2351,8 @@ static int mtk_stop(struct net_device *d @@ -2354,6 +2354,8 @@ static int mtk_stop(struct net_device *d
if (!refcount_dec_and_test(&eth->dma_refcnt)) if (!refcount_dec_and_test(&eth->dma_refcnt))
return 0; return 0;

View File

@ -859,7 +859,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2510,14 +2510,11 @@ static int __init mtk_init(struct net_de @@ -2513,14 +2513,11 @@ static int __init mtk_init(struct net_de
{ {
struct mtk_mac *mac = netdev_priv(dev); struct mtk_mac *mac = netdev_priv(dev);
struct mtk_eth *eth = mac->hw; struct mtk_eth *eth = mac->hw;
@ -1000,7 +1000,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
u32 mahr = ravb_read(ndev, MAHR); u32 mahr = ravb_read(ndev, MAHR);
u32 malr = ravb_read(ndev, MALR); u32 malr = ravb_read(ndev, MALR);
@@ -2152,7 +2154,7 @@ static int ravb_probe(struct platform_de @@ -2154,7 +2156,7 @@ static int ravb_probe(struct platform_de
priv->msg_enable = RAVB_DEF_MSG_ENABLE; priv->msg_enable = RAVB_DEF_MSG_ENABLE;
/* Read and set MAC address */ /* Read and set MAC address */
@ -1258,7 +1258,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-stm32.c --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-stm32.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-stm32.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-stm32.c
@@ -364,7 +364,7 @@ static int stm32_dwmac_probe(struct plat @@ -366,7 +366,7 @@ static int stm32_dwmac_probe(struct plat
if (ret) if (ret)
return ret; return ret;
@ -1797,7 +1797,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
--- a/drivers/net/usb/smsc75xx.c --- a/drivers/net/usb/smsc75xx.c
+++ b/drivers/net/usb/smsc75xx.c +++ b/drivers/net/usb/smsc75xx.c
@@ -757,11 +757,12 @@ static int smsc75xx_ioctl(struct net_dev @@ -759,11 +759,12 @@ static int smsc75xx_ioctl(struct net_dev
static void smsc75xx_init_mac_address(struct usbnet *dev) static void smsc75xx_init_mac_address(struct usbnet *dev)
{ {

View File

@ -128,7 +128,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
#ifdef CONFIG_MODVERSIONS #ifdef CONFIG_MODVERSIONS
@@ -3256,9 +3258,11 @@ static int setup_load_info(struct load_i @@ -3267,9 +3269,11 @@ static int setup_load_info(struct load_i
static int check_modinfo(struct module *mod, struct load_info *info, int flags) static int check_modinfo(struct module *mod, struct load_info *info, int flags)
{ {
@ -141,7 +141,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (flags & MODULE_INIT_IGNORE_VERMAGIC) if (flags & MODULE_INIT_IGNORE_VERMAGIC)
modmagic = NULL; modmagic = NULL;
@@ -3279,6 +3283,7 @@ static int check_modinfo(struct module * @@ -3290,6 +3294,7 @@ static int check_modinfo(struct module *
mod->name); mod->name);
add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK); add_taint_module(mod, TAINT_OOT_MODULE, LOCKDEP_STILL_OK);
} }

View File

@ -1,6 +1,6 @@
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -2505,6 +2505,9 @@ static int mv88e6xxx_setup_port(struct m @@ -2507,6 +2507,9 @@ static int mv88e6xxx_setup_port(struct m
if (dsa_is_cpu_port(ds, port)) if (dsa_is_cpu_port(ds, port))
reg = 0; reg = 0;

View File

@ -69,7 +69,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
struct dst_entry *__sk_dst_check(struct sock *sk, u32 cookie) struct dst_entry *__sk_dst_check(struct sock *sk, u32 cookie)
{ {
struct dst_entry *dst = __sk_dst_get(sk); struct dst_entry *dst = __sk_dst_get(sk);
@@ -1763,9 +1776,11 @@ static void __sk_free(struct sock *sk) @@ -1764,9 +1777,11 @@ static void __sk_free(struct sock *sk)
if (likely(sk->sk_net_refcnt)) if (likely(sk->sk_net_refcnt))
sock_inuse_add(sock_net(sk), -1); sock_inuse_add(sock_net(sk), -1);

View File

@ -330,7 +330,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/sock.c --- a/net/core/sock.c
+++ b/net/core/sock.c +++ b/net/core/sock.c
@@ -3671,6 +3671,8 @@ static __net_initdata struct pernet_oper @@ -3672,6 +3672,8 @@ static __net_initdata struct pernet_oper
static int __init proto_init(void) static int __init proto_init(void)
{ {
@ -341,7 +341,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/ipv4/fib_trie.c --- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c +++ b/net/ipv4/fib_trie.c
@@ -2848,11 +2848,13 @@ static const struct seq_operations fib_r @@ -2849,11 +2849,13 @@ static const struct seq_operations fib_r
int __net_init fib_proc_init(struct net *net) 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)) fib_triestat_seq_show, NULL))
goto out2; goto out2;
@@ -2863,17 +2865,21 @@ int __net_init fib_proc_init(struct net @@ -2864,17 +2866,21 @@ int __net_init fib_proc_init(struct net
return 0; return 0;
out3: out3:

View File

@ -1,6 +1,6 @@
--- a/drivers/usb/serial/option.c --- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c
@@ -273,6 +273,7 @@ static void option_instat_callback(struc @@ -277,6 +277,7 @@ static void option_instat_callback(struc
#define QUECTEL_PRODUCT_EM061K_LWW 0x6008 #define QUECTEL_PRODUCT_EM061K_LWW 0x6008
#define QUECTEL_PRODUCT_EM061K_LCN 0x6009 #define QUECTEL_PRODUCT_EM061K_LCN 0x6009
#define QUECTEL_PRODUCT_EC200T 0x6026 #define QUECTEL_PRODUCT_EC200T 0x6026
@ -8,7 +8,7 @@
#define QUECTEL_PRODUCT_RM500K 0x7001 #define QUECTEL_PRODUCT_RM500K 0x7001
#define CMOTECH_VENDOR_ID 0x16d8 #define CMOTECH_VENDOR_ID 0x16d8
@@ -1234,6 +1235,7 @@ static const struct usb_device_id option @@ -1242,6 +1243,7 @@ static const struct usb_device_id option
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200U, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200U, 0xff, 0, 0) },
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200S_CN, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200S_CN, 0xff, 0, 0) },
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) },

View File

@ -8,7 +8,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c --- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c
@@ -1177,6 +1177,73 @@ static struct mtd_info * __init open_mtd @@ -1184,6 +1184,73 @@ static struct mtd_info * __init open_mtd
return mtd; return mtd;
} }
@ -82,7 +82,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void) static int __init ubi_init(void)
{ {
int err, i, k; int err, i, k;
@@ -1260,6 +1327,12 @@ static int __init ubi_init(void) @@ -1267,6 +1334,12 @@ static int __init ubi_init(void)
} }
} }

View File

@ -506,7 +506,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+MODULE_ALIAS("nf-flow-table-hw"); +MODULE_ALIAS("nf-flow-table-hw");
--- a/net/netfilter/nf_tables_api.c --- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c +++ b/net/netfilter/nf_tables_api.c
@@ -5888,6 +5888,13 @@ static int nf_tables_flowtable_parse_hoo @@ -5889,6 +5889,13 @@ static int nf_tables_flowtable_parse_hoo
if (err < 0) if (err < 0)
return err; return err;
@ -520,7 +520,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL); ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL);
if (!ops) if (!ops)
return -ENOMEM; return -ENOMEM;
@@ -6023,10 +6030,19 @@ static int nf_tables_newflowtable(struct @@ -6024,10 +6031,19 @@ static int nf_tables_newflowtable(struct
} }
flowtable->data.type = type; flowtable->data.type = type;
@ -540,7 +540,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK], err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK],
flowtable); flowtable);
if (err < 0) if (err < 0)
@@ -6149,7 +6165,8 @@ static int nf_tables_fill_flowtable_info @@ -6150,7 +6166,8 @@ static int nf_tables_fill_flowtable_info
nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) || nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) ||
nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) || nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) ||
nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle), nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle),

View File

@ -66,7 +66,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
static void rt_fibinfo_free(struct rtable __rcu **rtp) static void rt_fibinfo_free(struct rtable __rcu **rtp)
--- a/net/ipv4/fib_trie.c --- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c +++ b/net/ipv4/fib_trie.c
@@ -2596,6 +2596,7 @@ static const char *const rtn_type_names[ @@ -2597,6 +2597,7 @@ static const char *const rtn_type_names[
[RTN_THROW] = "THROW", [RTN_THROW] = "THROW",
[RTN_NAT] = "NAT", [RTN_NAT] = "NAT",
[RTN_XRESOLVE] = "XRESOLVE", [RTN_XRESOLVE] = "XRESOLVE",

View File

@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2171,8 +2171,8 @@ static irqreturn_t mtk_handle_irq_rx(int @@ -2174,8 +2174,8 @@ static irqreturn_t mtk_handle_irq_rx(int
struct mtk_eth *eth = _eth; struct mtk_eth *eth = _eth;
if (likely(napi_schedule_prep(&eth->rx_napi))) { if (likely(napi_schedule_prep(&eth->rx_napi))) {
@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} }
return IRQ_HANDLED; return IRQ_HANDLED;
@@ -2183,8 +2183,8 @@ static irqreturn_t mtk_handle_irq_tx(int @@ -2186,8 +2186,8 @@ static irqreturn_t mtk_handle_irq_tx(int
struct mtk_eth *eth = _eth; struct mtk_eth *eth = _eth;
if (likely(napi_schedule_prep(&eth->tx_napi))) { if (likely(napi_schedule_prep(&eth->tx_napi))) {
@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
} }
return IRQ_HANDLED; return IRQ_HANDLED;
@@ -3107,6 +3107,8 @@ static int mtk_probe(struct platform_dev @@ -3110,6 +3110,8 @@ static int mtk_probe(struct platform_dev
* for NAPI to work * for NAPI to work
*/ */
init_dummy_netdev(&eth->dummy_dev); init_dummy_netdev(&eth->dummy_dev);

View File

@ -17,7 +17,7 @@ Signed-off-by: DENG Qingfang <dqfext@gmail.com>
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -2676,6 +2676,7 @@ static int mv88e6xxx_setup(struct dsa_sw @@ -2678,6 +2678,7 @@ static int mv88e6xxx_setup(struct dsa_sw
chip->ds = ds; chip->ds = ds;
ds->slave_mii_bus = mv88e6xxx_default_mdio_bus(chip); ds->slave_mii_bus = mv88e6xxx_default_mdio_bus(chip);

View File

@ -17,7 +17,7 @@ Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
--- a/drivers/net/dsa/mv88e6xxx/chip.c --- a/drivers/net/dsa/mv88e6xxx/chip.c
+++ b/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c
@@ -5096,6 +5096,7 @@ static int mv88e6xxx_register_switch(str @@ -5098,6 +5098,7 @@ static int mv88e6xxx_register_switch(str
ds->ops = &mv88e6xxx_switch_ops; ds->ops = &mv88e6xxx_switch_ops;
ds->ageing_time_min = chip->info->age_time_coeff; ds->ageing_time_min = chip->info->age_time_coeff;
ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX; ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX;

View File

@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2228,7 +2228,7 @@ static int mtk_start_dma(struct mtk_eth @@ -2231,7 +2231,7 @@ static int mtk_start_dma(struct mtk_eth
if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) { if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) {
mtk_w32(eth, mtk_w32(eth,
MTK_TX_WB_DDONE | MTK_TX_DMA_EN | MTK_TX_WB_DDONE | MTK_TX_DMA_EN |

View File

@ -79,7 +79,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (mtk_queue_stopped(eth) && if (mtk_queue_stopped(eth) &&
(atomic_read(&ring->free_count) > ring->thresh)) (atomic_read(&ring->free_count) > ring->thresh))
mtk_wake_queue(eth); mtk_wake_queue(eth);
@@ -2164,6 +2179,7 @@ static irqreturn_t mtk_handle_irq_rx(int @@ -2167,6 +2182,7 @@ static irqreturn_t mtk_handle_irq_rx(int
{ {
struct mtk_eth *eth = _eth; struct mtk_eth *eth = _eth;
@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (likely(napi_schedule_prep(&eth->rx_napi))) { if (likely(napi_schedule_prep(&eth->rx_napi))) {
mtk_rx_irq_disable(eth, MTK_RX_DONE_INT); mtk_rx_irq_disable(eth, MTK_RX_DONE_INT);
__napi_schedule(&eth->rx_napi); __napi_schedule(&eth->rx_napi);
@@ -2176,6 +2192,7 @@ static irqreturn_t mtk_handle_irq_tx(int @@ -2179,6 +2195,7 @@ static irqreturn_t mtk_handle_irq_tx(int
{ {
struct mtk_eth *eth = _eth; struct mtk_eth *eth = _eth;
@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (likely(napi_schedule_prep(&eth->tx_napi))) { if (likely(napi_schedule_prep(&eth->tx_napi))) {
mtk_tx_irq_disable(eth, MTK_TX_DONE_INT); mtk_tx_irq_disable(eth, MTK_TX_DONE_INT);
__napi_schedule(&eth->tx_napi); __napi_schedule(&eth->tx_napi);
@@ -2352,6 +2369,9 @@ static int mtk_stop(struct net_device *d @@ -2355,6 +2372,9 @@ static int mtk_stop(struct net_device *d
napi_disable(&eth->tx_napi); napi_disable(&eth->tx_napi);
napi_disable(&eth->rx_napi); napi_disable(&eth->rx_napi);
@ -105,7 +105,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA)) if (MTK_HAS_CAPS(eth->soc->caps, MTK_QDMA))
mtk_stop_dma(eth, MTK_QDMA_GLO_CFG); mtk_stop_dma(eth, MTK_QDMA_GLO_CFG);
mtk_stop_dma(eth, MTK_PDMA_GLO_CFG); mtk_stop_dma(eth, MTK_PDMA_GLO_CFG);
@@ -2401,6 +2421,64 @@ err_disable_clks: @@ -2404,6 +2424,64 @@ err_disable_clks:
return ret; return ret;
} }
@ -170,7 +170,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static int mtk_hw_init(struct mtk_eth *eth) static int mtk_hw_init(struct mtk_eth *eth)
{ {
int i, val, ret; int i, val, ret;
@@ -2422,9 +2500,6 @@ static int mtk_hw_init(struct mtk_eth *e @@ -2425,9 +2503,6 @@ static int mtk_hw_init(struct mtk_eth *e
goto err_disable_pm; goto err_disable_pm;
} }
@ -180,7 +180,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/* disable delay and normal interrupt */ /* disable delay and normal interrupt */
mtk_tx_irq_disable(eth, ~0); mtk_tx_irq_disable(eth, ~0);
mtk_rx_irq_disable(eth, ~0); mtk_rx_irq_disable(eth, ~0);
@@ -2463,11 +2538,10 @@ static int mtk_hw_init(struct mtk_eth *e @@ -2466,11 +2541,10 @@ static int mtk_hw_init(struct mtk_eth *e
/* Enable RX VLan Offloading */ /* Enable RX VLan Offloading */
mtk_w32(eth, 1, MTK_CDMP_EG_CTRL); mtk_w32(eth, 1, MTK_CDMP_EG_CTRL);
@ -194,7 +194,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
mtk_tx_irq_disable(eth, ~0); mtk_tx_irq_disable(eth, ~0);
mtk_rx_irq_disable(eth, ~0); mtk_rx_irq_disable(eth, ~0);
@@ -2968,6 +3042,13 @@ static int mtk_probe(struct platform_dev @@ -2971,6 +3045,13 @@ static int mtk_probe(struct platform_dev
spin_lock_init(&eth->page_lock); spin_lock_init(&eth->page_lock);
spin_lock_init(&eth->tx_irq_lock); spin_lock_init(&eth->tx_irq_lock);
spin_lock_init(&eth->rx_irq_lock); spin_lock_init(&eth->rx_irq_lock);

View File

@ -37,7 +37,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (unlikely(mac < 0 || mac >= MTK_MAC_COUNT || if (unlikely(mac < 0 || mac >= MTK_MAC_COUNT ||
!eth->netdev[mac])) !eth->netdev[mac]))
@@ -2288,6 +2288,9 @@ static void mtk_gdm_config(struct mtk_et @@ -2291,6 +2291,9 @@ static void mtk_gdm_config(struct mtk_et
val |= config; val |= config;

View File

@ -24,7 +24,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
+mtk_eth-y := mtk_eth_soc.o mtk_sgmii.o mtk_eth_path.o mtk_ppe.o +mtk_eth-y := mtk_eth_soc.o mtk_sgmii.o mtk_eth_path.o mtk_ppe.o
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2321,12 +2321,17 @@ static int mtk_open(struct net_device *d @@ -2324,12 +2324,17 @@ static int mtk_open(struct net_device *d
/* we run 2 netdevs on the same dma ring so we only bring it up once */ /* we run 2 netdevs on the same dma ring so we only bring it up once */
if (!refcount_read(&eth->dma_refcnt)) { if (!refcount_read(&eth->dma_refcnt)) {
@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
napi_enable(&eth->tx_napi); napi_enable(&eth->tx_napi);
napi_enable(&eth->rx_napi); napi_enable(&eth->rx_napi);
@@ -2396,6 +2401,9 @@ static int mtk_stop(struct net_device *d @@ -2399,6 +2404,9 @@ static int mtk_stop(struct net_device *d
mtk_dma_free(eth); mtk_dma_free(eth);
@ -54,7 +54,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
return 0; return 0;
} }
@@ -3182,6 +3190,13 @@ static int mtk_probe(struct platform_dev @@ -3185,6 +3193,13 @@ static int mtk_probe(struct platform_dev
goto err_free_dev; goto err_free_dev;
} }
@ -68,7 +68,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
for (i = 0; i < MTK_MAX_DEVS; i++) { for (i = 0; i < MTK_MAX_DEVS; i++) {
if (!eth->netdev[i]) if (!eth->netdev[i])
continue; continue;
@@ -3258,6 +3273,7 @@ static const struct mtk_soc_data mt7621_ @@ -3261,6 +3276,7 @@ static const struct mtk_soc_data mt7621_
.hw_features = MTK_HW_FEATURES, .hw_features = MTK_HW_FEATURES,
.required_clks = MT7621_CLKS_BITMAP, .required_clks = MT7621_CLKS_BITMAP,
.required_pctl = false, .required_pctl = false,
@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
}; };
static const struct mtk_soc_data mt7622_data = { static const struct mtk_soc_data mt7622_data = {
@@ -3266,6 +3282,7 @@ static const struct mtk_soc_data mt7622_ @@ -3269,6 +3285,7 @@ static const struct mtk_soc_data mt7622_
.hw_features = MTK_HW_FEATURES, .hw_features = MTK_HW_FEATURES,
.required_clks = MT7622_CLKS_BITMAP, .required_clks = MT7622_CLKS_BITMAP,
.required_pctl = false, .required_pctl = false,

View File

@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
skip_rx: skip_rx:
ring->data[idx] = new_data; ring->data[idx] = new_data;
@@ -2899,6 +2905,25 @@ static int mtk_set_rxnfc(struct net_devi @@ -2902,6 +2908,25 @@ static int mtk_set_rxnfc(struct net_devi
return ret; return ret;
} }
@ -70,7 +70,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static const struct ethtool_ops mtk_ethtool_ops = { static const struct ethtool_ops mtk_ethtool_ops = {
.get_link_ksettings = mtk_get_link_ksettings, .get_link_ksettings = mtk_get_link_ksettings,
.set_link_ksettings = mtk_set_link_ksettings, .set_link_ksettings = mtk_set_link_ksettings,
@@ -2930,6 +2955,7 @@ static const struct net_device_ops mtk_n @@ -2933,6 +2958,7 @@ static const struct net_device_ops mtk_n
#ifdef CONFIG_NET_POLL_CONTROLLER #ifdef CONFIG_NET_POLL_CONTROLLER
.ndo_poll_controller = mtk_poll_controller, .ndo_poll_controller = mtk_poll_controller,
#endif #endif
@ -78,7 +78,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
}; };
static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np) static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
@@ -3195,6 +3221,10 @@ static int mtk_probe(struct platform_dev @@ -3198,6 +3224,10 @@ static int mtk_probe(struct platform_dev
eth->base + MTK_ETH_PPE_BASE, 2); eth->base + MTK_ETH_PPE_BASE, 2);
if (err) if (err)
goto err_free_dev; goto err_free_dev;

View File

@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/* /*
* The Mellanox Tavor device gives false positive parity errors. Mark this * The Mellanox Tavor device gives false positive parity errors. Mark this
* device with a broken_parity_status to allow PCI scanning code to "skip" * device with a broken_parity_status to allow PCI scanning code to "skip"
@@ -3323,6 +3324,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I @@ -3325,6 +3326,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata);
@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/* /*
* Ivytown NTB BAR sizes are misreported by the hardware due to an erratum. * Ivytown NTB BAR sizes are misreported by the hardware due to an erratum.
* To work around this, query the size it should be configured to by the * To work around this, query the size it should be configured to by the
@@ -3348,6 +3351,8 @@ static void quirk_intel_ntb(struct pci_d @@ -3350,6 +3353,8 @@ static void quirk_intel_ntb(struct pci_d
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb);
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb);
@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
/* /*
* Some BIOS implementations leave the Intel GPU interrupts enabled, even * Some BIOS implementations leave the Intel GPU interrupts enabled, even
* though no one is handling them (e.g., if the i915 driver is never * though no one is handling them (e.g., if the i915 driver is never
@@ -3386,6 +3391,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN @@ -3388,6 +3393,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq);
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq);

View File

@ -65,7 +65,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
/** /**
* ata_build_rw_tf - Build ATA taskfile for given read/write request * ata_build_rw_tf - Build ATA taskfile for given read/write request
* @tf: Target ATA taskfile * @tf: Target ATA taskfile
@@ -5159,6 +5172,9 @@ struct ata_queued_cmd *ata_qc_new_init(s @@ -5172,6 +5185,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (tag < 0) if (tag < 0)
return NULL; return NULL;
} }
@ -75,7 +75,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
qc = __ata_qc_from_tag(ap, tag); qc = __ata_qc_from_tag(ap, tag);
qc->tag = qc->hw_tag = tag; qc->tag = qc->hw_tag = tag;
@@ -6095,6 +6111,9 @@ struct ata_port *ata_port_alloc(struct a @@ -6108,6 +6124,9 @@ struct ata_port *ata_port_alloc(struct a
ap->stats.unhandled_irq = 1; ap->stats.unhandled_irq = 1;
ap->stats.idle_irq = 1; ap->stats.idle_irq = 1;
#endif #endif
@ -85,7 +85,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
ata_sff_port_init(ap); ata_sff_port_init(ap);
return ap; return ap;
@@ -6130,6 +6149,12 @@ static void ata_host_release(struct kref @@ -6143,6 +6162,12 @@ static void ata_host_release(struct kref
kfree(ap->pmp_link); kfree(ap->pmp_link);
kfree(ap->slave_link); kfree(ap->slave_link);
@ -98,7 +98,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
kfree(ap); kfree(ap);
host->ports[i] = NULL; host->ports[i] = NULL;
} }
@@ -6593,7 +6618,23 @@ int ata_host_register(struct ata_host *h @@ -6606,7 +6631,23 @@ int ata_host_register(struct ata_host *h
host->ports[i]->print_id = atomic_inc_return(&ata_print_id); host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
host->ports[i]->local_port_no = i + 1; host->ports[i]->local_port_no = i + 1;
} }
@ -134,7 +134,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
/* /*
* Define if arch has non-standard setup. This is a _PCI_ standard * Define if arch has non-standard setup. This is a _PCI_ standard
@@ -882,6 +885,12 @@ struct ata_port { @@ -886,6 +889,12 @@ struct ata_port {
#ifdef CONFIG_ATA_ACPI #ifdef CONFIG_ATA_ACPI
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */ struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
#endif #endif

View File

@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static int mtk_msg_level = -1; static int mtk_msg_level = -1;
module_param_named(msg_level, mtk_msg_level, int, 0); module_param_named(msg_level, mtk_msg_level, int, 0);
@@ -3142,6 +3143,22 @@ static int mtk_probe(struct platform_dev @@ -3145,6 +3146,22 @@ static int mtk_probe(struct platform_dev
} }
} }

View File

@ -26,7 +26,7 @@ Acked-by: Stanimir Varbanov <svarbanov@mm-sol.com>
writel(PCS_DEEMPH_TX_DEEMPH_GEN1(24) | writel(PCS_DEEMPH_TX_DEEMPH_GEN1(24) |
PCS_DEEMPH_TX_DEEMPH_GEN2_3_5DB(24) | PCS_DEEMPH_TX_DEEMPH_GEN2_3_5DB(24) |
PCS_DEEMPH_TX_DEEMPH_GEN2_6DB(34), PCS_DEEMPH_TX_DEEMPH_GEN2_6DB(34),
@@ -1331,6 +1332,7 @@ err_pm_runtime_put: @@ -1329,6 +1330,7 @@ err_pm_runtime_put:
static const struct of_device_id qcom_pcie_match[] = { static const struct of_device_id qcom_pcie_match[] = {
{ .compatible = "qcom,pcie-apq8084", .data = &ops_1_0_0 }, { .compatible = "qcom,pcie-apq8084", .data = &ops_1_0_0 },
{ .compatible = "qcom,pcie-ipq8064", .data = &ops_2_1_0 }, { .compatible = "qcom,pcie-ipq8064", .data = &ops_2_1_0 },

View File

@ -61,7 +61,7 @@ Backported with light changes:
/* Set the Max TLP size to 2K, instead of using default of 4K */ /* Set the Max TLP size to 2K, instead of using default of 4K */
writel(CFG_REMOTE_RD_REQ_BRIDGE_SIZE_2K, writel(CFG_REMOTE_RD_REQ_BRIDGE_SIZE_2K,
@@ -1265,6 +1274,10 @@ static int qcom_pcie_probe(struct platfo @@ -1263,6 +1272,10 @@ static int qcom_pcie_probe(struct platfo
goto err_pm_runtime_put; goto err_pm_runtime_put;
} }

View File

@ -1164,7 +1164,7 @@
#endif #endif
--- a/net/core/neighbour.c --- a/net/core/neighbour.c
+++ b/net/core/neighbour.c +++ b/net/core/neighbour.c
@@ -1204,7 +1204,21 @@ static void neigh_update_hhs(struct neig @@ -1208,7 +1208,21 @@ static void neigh_update_hhs(struct neig
} }
} }
@ -1186,7 +1186,7 @@
/* Generic update routine. /* Generic update routine.
-- lladdr is new lladdr or NULL, if it is not supplied. -- lladdr is new lladdr or NULL, if it is not supplied.
@@ -1235,6 +1249,7 @@ static int __neigh_update(struct neighbo @@ -1239,6 +1253,7 @@ static int __neigh_update(struct neighbo
int notify = 0; int notify = 0;
struct net_device *dev; struct net_device *dev;
int update_isrouter = 0; int update_isrouter = 0;
@ -1194,7 +1194,7 @@
trace_neigh_update(neigh, lladdr, new, flags, nlmsg_pid); trace_neigh_update(neigh, lladdr, new, flags, nlmsg_pid);
@@ -1244,6 +1259,8 @@ static int __neigh_update(struct neighbo @@ -1248,6 +1263,8 @@ static int __neigh_update(struct neighbo
old = neigh->nud_state; old = neigh->nud_state;
err = -EPERM; err = -EPERM;
@ -1203,7 +1203,7 @@
if (neigh->dead) { if (neigh->dead) {
NL_SET_ERR_MSG(extack, "Neighbor entry is now dead"); NL_SET_ERR_MSG(extack, "Neighbor entry is now dead");
new = old; new = old;
@@ -1286,6 +1303,11 @@ static int __neigh_update(struct neighbo @@ -1290,6 +1307,11 @@ static int __neigh_update(struct neighbo
- compare new & old - compare new & old
- if they are different, check override flag - if they are different, check override flag
*/ */
@ -1215,7 +1215,7 @@
if ((old & NUD_VALID) && if ((old & NUD_VALID) &&
!memcmp(lladdr, neigh->ha, dev->addr_len)) !memcmp(lladdr, neigh->ha, dev->addr_len))
lladdr = neigh->ha; lladdr = neigh->ha;
@@ -1408,8 +1430,11 @@ out: @@ -1412,8 +1434,11 @@ out:
if (((new ^ old) & NUD_PERMANENT) || ext_learn_change) if (((new ^ old) & NUD_PERMANENT) || ext_learn_change)
neigh_update_gc_list(neigh); neigh_update_gc_list(neigh);
@ -1250,7 +1250,7 @@
return 0; return 0;
out_fib_notif: out_fib_notif:
@@ -1609,6 +1615,9 @@ int fib_table_delete(struct net *net, st @@ -1610,6 +1616,9 @@ int fib_table_delete(struct net *net, st
if (fa_to_delete->fa_state & FA_S_ACCESSED) if (fa_to_delete->fa_state & FA_S_ACCESSED)
rt_cache_flush(cfg->fc_nlinfo.nl_net); rt_cache_flush(cfg->fc_nlinfo.nl_net);
@ -1260,7 +1260,7 @@
fib_release_info(fa_to_delete->fa_info); fib_release_info(fa_to_delete->fa_info);
alias_free_mem_rcu(fa_to_delete); alias_free_mem_rcu(fa_to_delete);
return 0; return 0;
@@ -2220,6 +2229,20 @@ void __init fib_trie_init(void) @@ -2221,6 +2230,20 @@ void __init fib_trie_init(void)
0, SLAB_PANIC, NULL); 0, SLAB_PANIC, NULL);
} }

View File

@ -45,7 +45,7 @@
esp.tfclen = 0; esp.tfclen = 0;
if (x->tfcpad) { if (x->tfcpad) {
struct xfrm_dst *dst = (struct xfrm_dst *)skb_dst(skb); struct xfrm_dst *dst = (struct xfrm_dst *)skb_dst(skb);
@@ -707,6 +713,7 @@ static int esp_input(struct xfrm_state * @@ -709,6 +715,7 @@ static int esp_input(struct xfrm_state *
u8 *iv; u8 *iv;
struct scatterlist *sg; struct scatterlist *sg;
int err = -EINVAL; int err = -EINVAL;
@ -53,7 +53,7 @@
if (!pskb_may_pull(skb, sizeof(struct ip_esp_hdr) + ivlen)) if (!pskb_may_pull(skb, sizeof(struct ip_esp_hdr) + ivlen))
goto out; goto out;
@@ -714,6 +721,12 @@ static int esp_input(struct xfrm_state * @@ -716,6 +723,12 @@ static int esp_input(struct xfrm_state *
if (elen <= 0) if (elen <= 0)
goto out; goto out;
@ -88,7 +88,7 @@
esp.tfclen = 0; esp.tfclen = 0;
if (x->tfcpad) { if (x->tfcpad) {
struct xfrm_dst *dst = (struct xfrm_dst *)skb_dst(skb); struct xfrm_dst *dst = (struct xfrm_dst *)skb_dst(skb);
@@ -602,6 +608,7 @@ static int esp6_input(struct xfrm_state @@ -604,6 +610,7 @@ static int esp6_input(struct xfrm_state
__be32 *seqhi; __be32 *seqhi;
u8 *iv; u8 *iv;
struct scatterlist *sg; struct scatterlist *sg;
@ -96,7 +96,7 @@
if (!pskb_may_pull(skb, sizeof(struct ip_esp_hdr) + ivlen)) { if (!pskb_may_pull(skb, sizeof(struct ip_esp_hdr) + ivlen)) {
ret = -EINVAL; ret = -EINVAL;
@@ -613,6 +620,12 @@ static int esp6_input(struct xfrm_state @@ -615,6 +622,12 @@ static int esp6_input(struct xfrm_state
goto out; goto out;
} }

View File

@ -10,7 +10,7 @@
__u32 flags; /* tunnel flags */ __u32 flags; /* tunnel flags */
--- a/include/net/ip_tunnels.h --- a/include/net/ip_tunnels.h
+++ b/include/net/ip_tunnels.h +++ b/include/net/ip_tunnels.h
@@ -533,4 +533,9 @@ static inline void ip_tunnel_info_opts_s @@ -532,4 +532,9 @@ static inline void ip_tunnel_info_opts_s
#endif /* CONFIG_INET */ #endif /* CONFIG_INET */

View File

@ -5491,7 +5491,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
unsigned long type); unsigned long type);
--- a/include/linux/pci_ids.h --- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h
@@ -1078,6 +1078,12 @@ @@ -1079,6 +1079,12 @@
#define PCI_DEVICE_ID_SGI_IOC3 0x0003 #define PCI_DEVICE_ID_SGI_IOC3 0x0003
#define PCI_DEVICE_ID_SGI_LITHIUM 0x1002 #define PCI_DEVICE_ID_SGI_LITHIUM 0x1002

View File

@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
#include <linux/platform_data/x86/apple.h> #include <linux/platform_data/x86/apple.h>
#include <linux/pm_runtime.h> #include <linux/pm_runtime.h>
#include <linux/suspend.h> #include <linux/suspend.h>
@@ -5821,3 +5822,34 @@ static void nvidia_ion_ahci_fixup(struct @@ -5823,3 +5824,34 @@ static void nvidia_ion_ahci_fixup(struct
pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING; pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING;
} }
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup);

View File

@ -15,7 +15,7 @@
/* initialize internal qc */ /* initialize internal qc */
qc = __ata_qc_from_tag(ap, ATA_TAG_INTERNAL); qc = __ata_qc_from_tag(ap, ATA_TAG_INTERNAL);
@@ -5166,6 +5174,9 @@ struct ata_queued_cmd *ata_qc_new_init(s @@ -5179,6 +5187,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
if (unlikely(ap->pflags & ATA_PFLAG_FROZEN)) if (unlikely(ap->pflags & ATA_PFLAG_FROZEN))
return NULL; return NULL;
@ -25,7 +25,7 @@
/* libsas case */ /* libsas case */
if (ap->flags & ATA_FLAG_SAS_HOST) { if (ap->flags & ATA_FLAG_SAS_HOST) {
tag = ata_sas_allocate_tag(ap); tag = ata_sas_allocate_tag(ap);
@@ -5211,6 +5222,8 @@ void ata_qc_free(struct ata_queued_cmd * @@ -5224,6 +5235,8 @@ void ata_qc_free(struct ata_queued_cmd *
qc->tag = ATA_TAG_POISON; qc->tag = ATA_TAG_POISON;
if (ap->flags & ATA_FLAG_SAS_HOST) if (ap->flags & ATA_FLAG_SAS_HOST)
ata_sas_free_tag(tag, ap); ata_sas_free_tag(tag, ap);
@ -36,7 +36,7 @@
--- a/include/linux/libata.h --- a/include/linux/libata.h
+++ b/include/linux/libata.h +++ b/include/linux/libata.h
@@ -911,6 +911,8 @@ struct ata_port_operations { @@ -915,6 +915,8 @@ struct ata_port_operations {
enum ata_completion_errors (*qc_prep)(struct ata_queued_cmd *qc); enum ata_completion_errors (*qc_prep)(struct ata_queued_cmd *qc);
unsigned int (*qc_issue)(struct ata_queued_cmd *qc); unsigned int (*qc_issue)(struct ata_queued_cmd *qc);
bool (*qc_fill_rtf)(struct ata_queued_cmd *qc); bool (*qc_fill_rtf)(struct ata_queued_cmd *qc);
@ -45,7 +45,7 @@
/* /*
* Configuration and exception handling * Configuration and exception handling
@@ -1001,6 +1003,9 @@ struct ata_port_operations { @@ -1005,6 +1007,9 @@ struct ata_port_operations {
void (*phy_reset)(struct ata_port *ap); void (*phy_reset)(struct ata_port *ap);
void (*eng_timeout)(struct ata_port *ap); void (*eng_timeout)(struct ata_port *ap);

View File

@ -25,7 +25,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
--- a/drivers/mmc/host/Kconfig --- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig
@@ -1019,3 +1019,5 @@ config MMC_SDHCI_AM654 @@ -1020,3 +1020,5 @@ config MMC_SDHCI_AM654
If you have a controller with this interface, say Y or M here. If you have a controller with this interface, say Y or M here.
If unsure, say N. If unsure, say N.

View File

@ -14,7 +14,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2961,6 +2961,7 @@ static const struct net_device_ops mtk_n @@ -2964,6 +2964,7 @@ static const struct net_device_ops mtk_n
static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np) static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
{ {
@ -22,7 +22,7 @@ Signed-off-by: René van Dorst <opensource@vdorst.com>
const __be32 *_id = of_get_property(np, "reg", NULL); const __be32 *_id = of_get_property(np, "reg", NULL);
struct phylink *phylink; struct phylink *phylink;
int phy_mode, id, err; int phy_mode, id, err;
@@ -3053,6 +3054,9 @@ static int mtk_add_mac(struct mtk_eth *e @@ -3056,6 +3057,9 @@ static int mtk_add_mac(struct mtk_eth *e
eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH - MTK_RX_ETH_HLEN; eth->netdev[id]->max_mtu = MTK_MAX_RX_LENGTH - MTK_RX_ETH_HLEN;

View File

@ -25,7 +25,7 @@
if (mtk_offload_check_rx(eth, skb, trxd.rxd4) == 0) { if (mtk_offload_check_rx(eth, skb, trxd.rxd4) == 0) {
skb_record_rx_queue(skb, 0); skb_record_rx_queue(skb, 0);
napi_gro_receive(napi, skb); napi_gro_receive(napi, skb);
@@ -2064,19 +2076,32 @@ static netdev_features_t mtk_fix_feature @@ -2067,19 +2079,32 @@ static netdev_features_t mtk_fix_feature
} }
} }
@ -59,7 +59,7 @@
return err; return err;
} }
@@ -2340,6 +2365,15 @@ static int mtk_open(struct net_device *d @@ -2343,6 +2368,15 @@ static int mtk_open(struct net_device *d
mtk_gdm_config(eth, gdm_config); mtk_gdm_config(eth, gdm_config);
@ -75,7 +75,7 @@
napi_enable(&eth->tx_napi); napi_enable(&eth->tx_napi);
napi_enable(&eth->rx_napi); napi_enable(&eth->rx_napi);
mtk_tx_irq_enable(eth, MTK_TX_DONE_INT); mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
@@ -2514,7 +2548,7 @@ static void mtk_dim_tx(struct work_struc @@ -2517,7 +2551,7 @@ static void mtk_dim_tx(struct work_struc
static int mtk_hw_init(struct mtk_eth *eth) static int mtk_hw_init(struct mtk_eth *eth)
{ {
@ -84,7 +84,7 @@
if (test_and_set_bit(MTK_HW_INIT, &eth->state)) if (test_and_set_bit(MTK_HW_INIT, &eth->state))
return 0; return 0;
@@ -2562,12 +2596,6 @@ static int mtk_hw_init(struct mtk_eth *e @@ -2565,12 +2599,6 @@ static int mtk_hw_init(struct mtk_eth *e
for (i = 0; i < MTK_MAC_COUNT; i++) for (i = 0; i < MTK_MAC_COUNT; i++)
mtk_w32(eth, MAC_MCR_FORCE_LINK_DOWN, MTK_MAC_MCR(i)); mtk_w32(eth, MAC_MCR_FORCE_LINK_DOWN, MTK_MAC_MCR(i));

View File

@ -22,7 +22,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
#include <linux/crc32.h> #include <linux/crc32.h>
#include <linux/if_vlan.h> #include <linux/if_vlan.h>
#include <linux/uaccess.h> #include <linux/uaccess.h>
@@ -4338,6 +4339,22 @@ static void rtl_tally_reset(struct r8152 @@ -4341,6 +4342,22 @@ static void rtl_tally_reset(struct r8152
ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data); ocp_write_word(tp, MCU_TYPE_PLA, PLA_RSTTALLY, ocp_data);
} }
@ -45,7 +45,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
static void r8152b_init(struct r8152 *tp) static void r8152b_init(struct r8152 *tp)
{ {
u32 ocp_data; u32 ocp_data;
@@ -4379,6 +4396,8 @@ static void r8152b_init(struct r8152 *tp @@ -4382,6 +4399,8 @@ static void r8152b_init(struct r8152 *tp
ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL); ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_USB_CTRL);
ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN); ocp_data &= ~(RX_AGG_DISABLE | RX_ZERO_EN);
ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data); ocp_write_word(tp, MCU_TYPE_USB, USB_USB_CTRL, ocp_data);
@ -54,7 +54,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
} }
static void r8153_init(struct r8152 *tp) static void r8153_init(struct r8152 *tp)
@@ -4513,6 +4532,8 @@ static void r8153_init(struct r8152 *tp) @@ -4516,6 +4535,8 @@ static void r8153_init(struct r8152 *tp)
tp->coalesce = COALESCE_SLOW; tp->coalesce = COALESCE_SLOW;
break; break;
} }
@ -63,7 +63,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
} }
static void r8153b_init(struct r8152 *tp) static void r8153b_init(struct r8152 *tp)
@@ -4589,6 +4610,8 @@ static void r8153b_init(struct r8152 *tp @@ -4592,6 +4613,8 @@ static void r8153b_init(struct r8152 *tp
rtl_tally_reset(tp); rtl_tally_reset(tp);
tp->coalesce = 15000; /* 15 us */ tp->coalesce = 15000; /* 15 us */

View File

@ -11,7 +11,7 @@ Applies to vanilla kernel 3.9.4.
=============================================================================== ===============================================================================
--- a/arch/um/drivers/Kconfig --- a/arch/um/drivers/Kconfig
+++ b/arch/um/drivers/Kconfig +++ b/arch/um/drivers/Kconfig
@@ -146,6 +146,20 @@ config UML_NET @@ -136,6 +136,20 @@ config UML_NET
enable at least one of the following transport options to actually enable at least one of the following transport options to actually
make use of UML networking. make use of UML networking.