LINUX_VERSION-4.14 = .180
LINUX_VERSION-4.19 = .123
-LINUX_VERSION-5.4 = .46
+LINUX_VERSION-5.4 = .48
LINUX_KERNEL_HASH-4.14.180 = 444ef973d9b6a6ea174e4a9086f0aea980d8575d13302e431ad688f22e27ed0e
LINUX_KERNEL_HASH-4.19.123 = a79914d31a8d8c6b0e2bb0f2b143d615fe8a6c4dd2e0f36e97aa20efd69a993f
-LINUX_KERNEL_HASH-5.4.46 = 30074ff2f1a2498da391fad73fc0efaa2256416a08fff8835069b1c59ab31b8e
+LINUX_KERNEL_HASH-5.4.48 = bf20ddafcd04c114d34654bb10d1eb74f1864f3d14b676c6f0d42d60bbcf1d53
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
--- a/arch/arm/mm/proc-macros.S
+++ b/arch/arm/mm/proc-macros.S
-@@ -335,6 +335,8 @@ ENTRY(\name\()_cache_fns)
+@@ -336,6 +336,8 @@ ENTRY(\name\()_cache_fns)
.long \name\()_flush_kern_dcache_area
.long \name\()_dma_map_area
.long \name\()_dma_unmap_area
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
-@@ -8486,8 +8486,6 @@ int alloc_contig_range(unsigned long sta
+@@ -8481,8 +8481,6 @@ int alloc_contig_range(unsigned long sta
/* Make sure the range is really isolated. */
if (test_pages_isolated(outer_start, end, false)) {
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.h
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.h
-@@ -28,7 +28,7 @@
+@@ -29,7 +29,7 @@
#define ENET_PAD 8
#define ENET_MAX_MTU_SIZE (ETH_DATA_LEN + ETH_HLEN + VLAN_HLEN + \
ENET_BRCM_TAG_LEN + ETH_FCS_LEN + ENET_PAD)
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -2148,7 +2148,7 @@ static void bcmgenet_init_tx_ring(struct
+@@ -2151,7 +2151,7 @@ static void bcmgenet_init_tx_ring(struct
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
/* Disable rate control for now */
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
TDMA_FLOW_PERIOD);
-@@ -3571,9 +3571,12 @@ static int bcmgenet_probe(struct platfor
+@@ -3575,9 +3575,12 @@ static int bcmgenet_probe(struct platfor
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
/* Set default coalescing parameters */
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -69,6 +69,10 @@
- #define GENET_RDMA_REG_OFF (priv->hw_params->rdma_offset + \
- TOTAL_DESC * DMA_DESC_SIZE)
+@@ -72,6 +72,10 @@
+ /* Forward declarations */
+ static void bcmgenet_set_rx_mode(struct net_device *dev);
+static bool skip_umac_reset = true;
+module_param(skip_umac_reset, bool, 0444);
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
{
/* MIPS chips strapped for BE will automagically configure the
-@@ -1994,6 +1998,11 @@ static void reset_umac(struct bcmgenet_p
+@@ -1997,6 +2001,11 @@ static void reset_umac(struct bcmgenet_p
bcmgenet_rbuf_ctrl_set(priv, 0);
udelay(10);
--- a/Makefile
+++ b/Makefile
-@@ -1246,6 +1246,9 @@ ifneq ($(dtstree),)
+@@ -1242,6 +1242,9 @@ ifneq ($(dtstree),)
%.dtb: include/config/kernel.release scripts_dtc
$(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
-@@ -3472,7 +3472,7 @@ static int bcmgenet_probe(struct platfor
+@@ -3476,7 +3476,7 @@ static int bcmgenet_probe(struct platfor
priv = netdev_priv(dev);
priv->irq0 = platform_get_irq(pdev, 0);
priv->irq1 = platform_get_irq(pdev, 1);
--- a/drivers/acpi/arm64/iort.c
+++ b/drivers/acpi/arm64/iort.c
-@@ -1057,8 +1057,8 @@ static int rc_dma_get_range(struct devic
+@@ -1062,8 +1062,8 @@ static int rc_dma_get_range(struct devic
*/
void iort_dma_setup(struct device *dev, u64 *dma_addr, u64 *dma_size)
{
/*
* If @dev is expected to be DMA-capable then the bus code that created
-@@ -1085,19 +1085,13 @@ void iort_dma_setup(struct device *dev,
+@@ -1090,19 +1090,13 @@ void iort_dma_setup(struct device *dev,
}
if (!ret) {
--- a/Makefile
+++ b/Makefile
-@@ -1246,7 +1246,7 @@ ifneq ($(dtstree),)
+@@ -1242,7 +1242,7 @@ ifneq ($(dtstree),)
%.dtb: include/config/kernel.release scripts_dtc
$(Q)$(MAKE) $(build)=$(dtstree) $(dtstree)/$@
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -3032,6 +3032,7 @@ static int __spi_validate_bits_per_word(
+@@ -3034,6 +3034,7 @@ static int __spi_validate_bits_per_word(
*/
int spi_setup(struct spi_device *spi)
{
unsigned bad_bits, ugly_bits;
int status;
-@@ -3049,6 +3050,14 @@ int spi_setup(struct spi_device *spi)
+@@ -3051,6 +3052,14 @@ int spi_setup(struct spi_device *spi)
(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL |
SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL)))
return -EINVAL;
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -3044,8 +3044,8 @@ int spi_setup(struct spi_device *spi)
+@@ -3046,8 +3046,8 @@ int spi_setup(struct spi_device *spi)
if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods &&
ctlr->cs_gpiods[spi->chip_select] && !(spi->mode & SPI_CS_HIGH)) {
+++ /dev/null
-From 130bbde4809b011faf64f99dddc14b4b01f440c3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= <noltari@gmail.com>
-Date: Tue, 12 May 2020 09:57:32 +0200
-Subject: [PATCH] mtd: rawnand: brcmnand: fix hamming oob layout
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-First 2 bytes are used in large-page nand.
-
-Fixes: ef5eeea6e911 ("mtd: nand: brcm: switch to mtd_ooblayout_ops")
-Cc: stable@vger.kernel.org
-Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
-Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-Link: https://lore.kernel.org/linux-mtd/20200512075733.745374-2-noltari@gmail.com
----
- drivers/mtd/nand/raw/brcmnand/brcmnand.c | 11 +++++++----
- 1 file changed, 7 insertions(+), 4 deletions(-)
-
---- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-+++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c
-@@ -1019,11 +1019,14 @@ static int brcmnand_hamming_ooblayout_fr
- if (!section) {
- /*
- * Small-page NAND use byte 6 for BBI while large-page
-- * NAND use byte 0.
-+ * NAND use bytes 0 and 1.
- */
-- if (cfg->page_size > 512)
-- oobregion->offset++;
-- oobregion->length--;
-+ if (cfg->page_size > 512) {
-+ oobregion->offset += 2;
-+ oobregion->length -= 2;
-+ } else {
-+ oobregion->length--;
-+ }
- }
- }
-
drivers/spi/spi-rb4xx.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
-diff --git a/drivers/spi/spi-rb4xx.c b/drivers/spi/spi-rb4xx.c
-index 4c9620e0d18c..17e1a77dc132 100644
--- a/drivers/spi/spi-rb4xx.c
+++ b/drivers/spi/spi-rb4xx.c
-@@ -158,6 +158,11 @@ static int rb4xx_spi_probe(struct platform_device *pdev)
+@@ -158,6 +158,11 @@ static int rb4xx_spi_probe(struct platfo
master->transfer_one = rb4xx_transfer_one;
master->set_cs = rb4xx_set_cs;
err = devm_spi_register_master(&pdev->dev, master);
if (err) {
dev_err(&pdev->dev, "failed to register SPI master\n");
-@@ -168,11 +173,6 @@ static int rb4xx_spi_probe(struct platform_device *pdev)
+@@ -168,11 +173,6 @@ static int rb4xx_spi_probe(struct platfo
if (err)
return err;
drivers/spi/spi-rb4xx.c | 9 +++++++++
1 file changed, 9 insertions(+)
-diff --git a/drivers/spi/spi-rb4xx.c b/drivers/spi/spi-rb4xx.c
-index 17e1a77dc132..8aa51beb4ff3 100644
--- a/drivers/spi/spi-rb4xx.c
+++ b/drivers/spi/spi-rb4xx.c
@@ -14,6 +14,7 @@
#include <asm/mach-ath79/ar71xx_regs.h>
-@@ -150,6 +151,7 @@ static int rb4xx_spi_probe(struct platform_device *pdev)
+@@ -150,6 +151,7 @@ static int rb4xx_spi_probe(struct platfo
if (IS_ERR(ahb_clk))
return PTR_ERR(ahb_clk);
master->bus_num = 0;
master->num_chipselect = 3;
master->mode_bits = SPI_TX_DUAL;
-@@ -188,11 +190,18 @@ static int rb4xx_spi_remove(struct platform_device *pdev)
+@@ -188,11 +190,18 @@ static int rb4xx_spi_remove(struct platf
return 0;
}
} \
\
/* __*init sections */ \
-@@ -865,6 +875,8 @@
+@@ -881,6 +891,8 @@
EXIT_TEXT \
EXIT_DATA \
EXIT_CALL \
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
-@@ -2844,11 +2844,13 @@ static const struct seq_operations fib_r
+@@ -2847,11 +2847,13 @@ static const struct seq_operations fib_r
int __net_init fib_proc_init(struct net *net)
{
fib_triestat_seq_show, NULL))
goto out2;
-@@ -2859,17 +2861,21 @@ int __net_init fib_proc_init(struct net
+@@ -2862,17 +2864,21 @@ int __net_init fib_proc_init(struct net
return 0;
out3:
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
-@@ -6860,7 +6860,7 @@ static void __ref alloc_node_mem_map(str
+@@ -6855,7 +6855,7 @@ static void __ref alloc_node_mem_map(str
mem_map = NODE_DATA(0)->node_mem_map;
#if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
--- a/Makefile
+++ b/Makefile
-@@ -701,11 +701,11 @@ KBUILD_CFLAGS += $(call cc-disable-warni
+@@ -697,11 +697,11 @@ KBUILD_CFLAGS += $(call cc-disable-warni
KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
}
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
-@@ -164,6 +164,10 @@ kallsyms()
+@@ -160,6 +160,10 @@ kallsyms()
kallsymopt="${kallsymopt} --base-relative"
fi
static void rt_fibinfo_free(struct rtable __rcu **rtp)
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
-@@ -2592,6 +2592,7 @@ static const char *const rtn_type_names[
+@@ -2595,6 +2595,7 @@ static const char *const rtn_type_names[
[RTN_THROW] = "THROW",
[RTN_NAT] = "NAT",
[RTN_XRESOLVE] = "XRESOLVE",
--- a/drivers/mmc/host/sdhci-msm.c
+++ b/drivers/mmc/host/sdhci-msm.c
-@@ -1724,7 +1724,7 @@ MODULE_DEVICE_TABLE(of, sdhci_msm_dt_mat
+@@ -1730,7 +1730,7 @@ MODULE_DEVICE_TABLE(of, sdhci_msm_dt_mat
static const struct sdhci_ops sdhci_msm_ops = {
.reset = sdhci_reset,
unsigned long type);
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
-@@ -1072,6 +1072,12 @@
+@@ -1076,6 +1076,12 @@
#define PCI_DEVICE_ID_SGI_IOC3 0x0003
#define PCI_DEVICE_ID_SGI_LITHIUM 0x1002
--- a/drivers/mtd/nand/raw/nand_base.c
+++ b/drivers/mtd/nand/raw/nand_base.c
-@@ -934,7 +934,8 @@ static int nand_init_data_interface(stru
+@@ -940,7 +940,8 @@ static int nand_init_data_interface(stru
modes = GENMASK(chip->onfi_timing_mode_default, 0);
}
int i;
- if (type != TC_SETUP_QDISC_MQPRIO)
-- return -EINVAL;
+- return -EOPNOTSUPP;
-
mqprio->hw = TC_MQPRIO_HW_OFFLOAD_TCS;
num_queues = dpaa2_eth_queue_count(priv);
#include <linux/platform_data/x86/apple.h>
#include <linux/pm_runtime.h>
#include <linux/switchtec.h>
-@@ -5564,3 +5565,34 @@ static void apex_pci_fixup_class(struct
+@@ -5604,3 +5605,34 @@ static void apex_pci_fixup_class(struct
}
DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);
--- a/arch/mips/kernel/setup.c
+++ b/arch/mips/kernel/setup.c
-@@ -652,7 +652,6 @@ static void __init arch_mem_init(char **
+@@ -652,8 +652,6 @@ static void __init arch_mem_init(char **
memblock_reserve(crashk_res.start,
crashk_res.end - crashk_res.start + 1);
#endif
- device_tree_init();
- sparse_init();
- plat_swiotlb_setup();
-
-@@ -760,6 +759,7 @@ void __init setup_arch(char **cmdline_p)
+-
+ /*
+ * In order to reduce the possibility of kernel panic when failed to
+ * get IO TLB memory under CONFIG_SWIOTLB, it is better to allocate
+@@ -770,6 +768,7 @@ void __init setup_arch(char **cmdline_p)
cpu_cache_init();
paging_init();
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
-@@ -469,6 +469,16 @@ static const struct dmi_system_id reboot
+@@ -477,6 +477,16 @@ static const struct dmi_system_id reboot
},
},