kernel: bump 5.4 to 5.4.219
Merged upstream: bcm53xx/patches-5.4/083-v6.0-clk-iproc-Do-not-rely-on-node-name-for-correct-PLL-s.patch Compile-tested: x86/64 Run-tested: x86/64 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
32f8c6fdf8
commit
060aa0021f
|
@ -6,9 +6,9 @@ ifdef CONFIG_TESTING_KERNEL
|
||||||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
LINUX_VERSION-5.4 = .215
|
LINUX_VERSION-5.4 = .219
|
||||||
|
|
||||||
LINUX_KERNEL_HASH-5.4.215 = 2d2bf7c3a25297f2b4686aa50a7cdaac68b52fc4c81b2cd3dddfe9f592b34ebd
|
LINUX_KERNEL_HASH-5.4.219 = 5293ad927269dfb697bc80e9dd95c1d9fd2e4bad7d8422300e012fd31950a261
|
||||||
|
|
||||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||||
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
|
||||||
|
|
|
@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
|
||||||
|
|
||||||
--- a/mm/page_alloc.c
|
--- a/mm/page_alloc.c
|
||||||
+++ b/mm/page_alloc.c
|
+++ b/mm/page_alloc.c
|
||||||
@@ -8521,8 +8521,6 @@ int alloc_contig_range(unsigned long sta
|
@@ -8566,8 +8566,6 @@ int alloc_contig_range(unsigned long sta
|
||||||
|
|
||||||
/* Make sure the range is really isolated. */
|
/* Make sure the range is really isolated. */
|
||||||
if (test_pages_isolated(outer_start, end, false)) {
|
if (test_pages_isolated(outer_start, end, false)) {
|
||||||
|
|
|
@ -1,72 +0,0 @@
|
||||||
From 1b24a132eba7a1c19475ba2510ec1c00af3ff914 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Florian Fainelli <f.fainelli@gmail.com>
|
|
||||||
Date: Mon, 5 Sep 2022 09:15:03 -0700
|
|
||||||
Subject: [PATCH] clk: iproc: Do not rely on node name for correct PLL setup
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
After commit 31fd9b79dc58 ("ARM: dts: BCM5301X: update CRU block
|
|
||||||
description") a warning from clk-iproc-pll.c was generated due to a
|
|
||||||
duplicate PLL name as well as the console stopped working. Upon closer
|
|
||||||
inspection it became clear that iproc_pll_clk_setup() used the Device
|
|
||||||
Tree node unit name as an unique identifier as well as a parent name to
|
|
||||||
parent all clocks under the PLL.
|
|
||||||
|
|
||||||
BCM5301X was the first platform on which that got noticed because of the
|
|
||||||
DT node unit name renaming but the same assumptions hold true for any
|
|
||||||
user of the iproc_pll_clk_setup() function.
|
|
||||||
|
|
||||||
The first 'clock-output-names' property is always guaranteed to be
|
|
||||||
unique as well as providing the actual desired PLL clock name, so we
|
|
||||||
utilize that to register the PLL and as a parent name of all children
|
|
||||||
clock.
|
|
||||||
|
|
||||||
Fixes: 5fe225c105fd ("clk: iproc: add initial common clock support")
|
|
||||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|
||||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
|
||||||
Link: https://lore.kernel.org/r/20220905161504.1526-1-f.fainelli@gmail.com
|
|
||||||
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
|
|
||||||
---
|
|
||||||
drivers/clk/bcm/clk-iproc-pll.c | 12 ++++++++----
|
|
||||||
1 file changed, 8 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
--- a/drivers/clk/bcm/clk-iproc-pll.c
|
|
||||||
+++ b/drivers/clk/bcm/clk-iproc-pll.c
|
|
||||||
@@ -736,6 +736,7 @@ void iproc_pll_clk_setup(struct device_n
|
|
||||||
const char *parent_name;
|
|
||||||
struct iproc_clk *iclk_array;
|
|
||||||
struct clk_hw_onecell_data *clk_data;
|
|
||||||
+ const char *clk_name;
|
|
||||||
|
|
||||||
if (WARN_ON(!pll_ctrl) || WARN_ON(!clk_ctrl))
|
|
||||||
return;
|
|
||||||
@@ -783,7 +784,12 @@ void iproc_pll_clk_setup(struct device_n
|
|
||||||
iclk = &iclk_array[0];
|
|
||||||
iclk->pll = pll;
|
|
||||||
|
|
||||||
- init.name = node->name;
|
|
||||||
+ ret = of_property_read_string_index(node, "clock-output-names",
|
|
||||||
+ 0, &clk_name);
|
|
||||||
+ if (WARN_ON(ret))
|
|
||||||
+ goto err_pll_register;
|
|
||||||
+
|
|
||||||
+ init.name = clk_name;
|
|
||||||
init.ops = &iproc_pll_ops;
|
|
||||||
init.flags = 0;
|
|
||||||
parent_name = of_clk_get_parent_name(node, 0);
|
|
||||||
@@ -803,13 +809,11 @@ void iproc_pll_clk_setup(struct device_n
|
|
||||||
goto err_pll_register;
|
|
||||||
|
|
||||||
clk_data->hws[0] = &iclk->hw;
|
|
||||||
+ parent_name = clk_name;
|
|
||||||
|
|
||||||
/* now initialize and register all leaf clocks */
|
|
||||||
for (i = 1; i < num_clks; i++) {
|
|
||||||
- const char *clk_name;
|
|
||||||
-
|
|
||||||
memset(&init, 0, sizeof(init));
|
|
||||||
- parent_name = node->name;
|
|
||||||
|
|
||||||
ret = of_property_read_string_index(node, "clock-output-names",
|
|
||||||
i, &clk_name);
|
|
|
@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
|
||||||
|
|
||||||
--- a/mm/page_alloc.c
|
--- a/mm/page_alloc.c
|
||||||
+++ b/mm/page_alloc.c
|
+++ b/mm/page_alloc.c
|
||||||
@@ -6886,7 +6886,7 @@ static void __ref alloc_node_mem_map(str
|
@@ -6931,7 +6931,7 @@ static void __ref alloc_node_mem_map(str
|
||||||
mem_map = NODE_DATA(0)->node_mem_map;
|
mem_map = NODE_DATA(0)->node_mem_map;
|
||||||
#if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
|
#if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
|
||||||
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
|
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
|
||||||
|
|
|
@ -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
|
||||||
@@ -5155,6 +5168,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
|
@@ -5159,6 +5172,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;
|
||||||
@@ -6091,6 +6107,9 @@ struct ata_port *ata_port_alloc(struct a
|
@@ -6095,6 +6111,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;
|
||||||
@@ -6126,6 +6145,12 @@ static void ata_host_release(struct kref
|
@@ -6130,6 +6149,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;
|
||||||
}
|
}
|
||||||
@@ -6589,7 +6614,23 @@ int ata_host_register(struct ata_host *h
|
@@ -6593,7 +6618,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;
|
||||||
}
|
}
|
||||||
|
|
|
@ -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);
|
||||||
|
|
||||||
@@ -5162,6 +5170,9 @@ struct ata_queued_cmd *ata_qc_new_init(s
|
@@ -5166,6 +5174,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);
|
||||||
@@ -5207,6 +5218,8 @@ void ata_qc_free(struct ata_queued_cmd *
|
@@ -5211,6 +5222,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);
|
||||||
|
|
|
@ -34,7 +34,7 @@ Signed-off-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com>
|
||||||
mtd->type = MTD_NORFLASH;
|
mtd->type = MTD_NORFLASH;
|
||||||
--- a/drivers/mtd/mtdcore.c
|
--- a/drivers/mtd/mtdcore.c
|
||||||
+++ b/drivers/mtd/mtdcore.c
|
+++ b/drivers/mtd/mtdcore.c
|
||||||
@@ -840,6 +840,17 @@ out_error:
|
@@ -842,6 +842,17 @@ out_error:
|
||||||
*/
|
*/
|
||||||
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
static void mtd_set_dev_defaults(struct mtd_info *mtd)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue