mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-15 18:03:30 +00:00
kernel: bump 6.6 to 6.6.82
This commit is contained in:
parent
f352df1dc2
commit
75f99ed4fd
@ -1,2 +1,2 @@
|
||||
LINUX_VERSION-6.6 = .75
|
||||
LINUX_KERNEL_HASH-6.6.75 = f7dfb1fa9716ba139d0b4c8161535816d400dea21d5943f513448429b1790290
|
||||
LINUX_VERSION-6.6 = .82
|
||||
LINUX_KERNEL_HASH-6.6.82 = f3c2389b8c23cabe747f104a3e434201ca6e7725bbbfb3a8c59a063ac4820e41
|
||||
|
@ -25,7 +25,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -846,14 +846,6 @@ static int nvmem_add_cells_from_layout(s
|
||||
@@ -823,14 +823,6 @@ static int nvmem_add_cells_from_layout(s
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_OF)
|
||||
@ -65,7 +65,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
#endif /* ifndef _LINUX_NVMEM_CONSUMER_H */
|
||||
--- a/include/linux/nvmem-provider.h
|
||||
+++ b/include/linux/nvmem-provider.h
|
||||
@@ -244,6 +244,27 @@ nvmem_layout_get_match_data(struct nvmem
|
||||
@@ -241,6 +241,27 @@ nvmem_layout_get_match_data(struct nvmem
|
||||
|
||||
#endif /* CONFIG_NVMEM */
|
||||
|
||||
|
@ -1,91 +0,0 @@
|
||||
From ec9c08a1cb8dc5e8e003f95f5f62de41dde235bb Mon Sep 17 00:00:00 2001
|
||||
From: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
Date: Fri, 15 Dec 2023 11:15:29 +0000
|
||||
Subject: [PATCH] nvmem: Create a header for internal sharing
|
||||
|
||||
Before adding all the NVMEM layout bus infrastructure to the core, let's
|
||||
move the main nvmem_device structure in an internal header, only
|
||||
available to the core. This way all the additional code can be added in
|
||||
a dedicated file in order to keep the current core file tidy.
|
||||
|
||||
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
||||
Link: https://lore.kernel.org/r/20231215111536.316972-4-srinivas.kandagatla@linaro.org
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
drivers/nvmem/core.c | 24 +-----------------------
|
||||
drivers/nvmem/internals.h | 35 +++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 36 insertions(+), 23 deletions(-)
|
||||
create mode 100644 drivers/nvmem/internals.h
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -19,29 +19,7 @@
|
||||
#include <linux/of.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
-struct nvmem_device {
|
||||
- struct module *owner;
|
||||
- struct device dev;
|
||||
- int stride;
|
||||
- int word_size;
|
||||
- int id;
|
||||
- struct kref refcnt;
|
||||
- size_t size;
|
||||
- bool read_only;
|
||||
- bool root_only;
|
||||
- int flags;
|
||||
- enum nvmem_type type;
|
||||
- struct bin_attribute eeprom;
|
||||
- struct device *base_dev;
|
||||
- struct list_head cells;
|
||||
- const struct nvmem_keepout *keepout;
|
||||
- unsigned int nkeepout;
|
||||
- nvmem_reg_read_t reg_read;
|
||||
- nvmem_reg_write_t reg_write;
|
||||
- struct gpio_desc *wp_gpio;
|
||||
- struct nvmem_layout *layout;
|
||||
- void *priv;
|
||||
-};
|
||||
+#include "internals.h"
|
||||
|
||||
#define to_nvmem_device(d) container_of(d, struct nvmem_device, dev)
|
||||
|
||||
--- /dev/null
|
||||
+++ b/drivers/nvmem/internals.h
|
||||
@@ -0,0 +1,35 @@
|
||||
+/* SPDX-License-Identifier: GPL-2.0 */
|
||||
+
|
||||
+#ifndef _LINUX_NVMEM_INTERNALS_H
|
||||
+#define _LINUX_NVMEM_INTERNALS_H
|
||||
+
|
||||
+#include <linux/device.h>
|
||||
+#include <linux/nvmem-consumer.h>
|
||||
+#include <linux/nvmem-provider.h>
|
||||
+
|
||||
+struct nvmem_device {
|
||||
+ struct module *owner;
|
||||
+ struct device dev;
|
||||
+ struct list_head node;
|
||||
+ int stride;
|
||||
+ int word_size;
|
||||
+ int id;
|
||||
+ struct kref refcnt;
|
||||
+ size_t size;
|
||||
+ bool read_only;
|
||||
+ bool root_only;
|
||||
+ int flags;
|
||||
+ enum nvmem_type type;
|
||||
+ struct bin_attribute eeprom;
|
||||
+ struct device *base_dev;
|
||||
+ struct list_head cells;
|
||||
+ const struct nvmem_keepout *keepout;
|
||||
+ unsigned int nkeepout;
|
||||
+ nvmem_reg_read_t reg_read;
|
||||
+ nvmem_reg_write_t reg_write;
|
||||
+ struct gpio_desc *wp_gpio;
|
||||
+ struct nvmem_layout *layout;
|
||||
+ void *priv;
|
||||
+};
|
||||
+
|
||||
+#endif /* ifndef _LINUX_NVMEM_INTERNALS_H */
|
@ -1,79 +0,0 @@
|
||||
From 1b7c298a4ecbc28cc6ee94005734bff55eb83d22 Mon Sep 17 00:00:00 2001
|
||||
From: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
Date: Fri, 15 Dec 2023 11:15:30 +0000
|
||||
Subject: [PATCH] nvmem: Simplify the ->add_cells() hook
|
||||
|
||||
The layout entry is not used and will anyway be made useless by the new
|
||||
layout bus infrastructure coming next, so drop it. While at it, clarify
|
||||
the kdoc entry.
|
||||
|
||||
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
||||
Link: https://lore.kernel.org/r/20231215111536.316972-5-srinivas.kandagatla@linaro.org
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
drivers/nvmem/core.c | 2 +-
|
||||
drivers/nvmem/layouts/onie-tlv.c | 3 +--
|
||||
drivers/nvmem/layouts/sl28vpd.c | 3 +--
|
||||
include/linux/nvmem-provider.h | 8 +++-----
|
||||
4 files changed, 6 insertions(+), 10 deletions(-)
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -815,7 +815,7 @@ static int nvmem_add_cells_from_layout(s
|
||||
int ret;
|
||||
|
||||
if (layout && layout->add_cells) {
|
||||
- ret = layout->add_cells(&nvmem->dev, nvmem, layout);
|
||||
+ ret = layout->add_cells(&nvmem->dev, nvmem);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
--- a/drivers/nvmem/layouts/onie-tlv.c
|
||||
+++ b/drivers/nvmem/layouts/onie-tlv.c
|
||||
@@ -182,8 +182,7 @@ static bool onie_tlv_crc_is_valid(struct
|
||||
return true;
|
||||
}
|
||||
|
||||
-static int onie_tlv_parse_table(struct device *dev, struct nvmem_device *nvmem,
|
||||
- struct nvmem_layout *layout)
|
||||
+static int onie_tlv_parse_table(struct device *dev, struct nvmem_device *nvmem)
|
||||
{
|
||||
struct onie_tlv_hdr hdr;
|
||||
size_t table_len, data_len, hdr_len;
|
||||
--- a/drivers/nvmem/layouts/sl28vpd.c
|
||||
+++ b/drivers/nvmem/layouts/sl28vpd.c
|
||||
@@ -80,8 +80,7 @@ static int sl28vpd_v1_check_crc(struct d
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static int sl28vpd_add_cells(struct device *dev, struct nvmem_device *nvmem,
|
||||
- struct nvmem_layout *layout)
|
||||
+static int sl28vpd_add_cells(struct device *dev, struct nvmem_device *nvmem)
|
||||
{
|
||||
const struct nvmem_cell_info *pinfo;
|
||||
struct nvmem_cell_info info = {0};
|
||||
--- a/include/linux/nvmem-provider.h
|
||||
+++ b/include/linux/nvmem-provider.h
|
||||
@@ -156,9 +156,8 @@ struct nvmem_cell_table {
|
||||
*
|
||||
* @name: Layout name.
|
||||
* @of_match_table: Open firmware match table.
|
||||
- * @add_cells: Will be called if a nvmem device is found which
|
||||
- * has this layout. The function will add layout
|
||||
- * specific cells with nvmem_add_one_cell().
|
||||
+ * @add_cells: Called to populate the layout using
|
||||
+ * nvmem_add_one_cell().
|
||||
* @fixup_cell_info: Will be called before a cell is added. Can be
|
||||
* used to modify the nvmem_cell_info.
|
||||
* @owner: Pointer to struct module.
|
||||
@@ -172,8 +171,7 @@ struct nvmem_cell_table {
|
||||
struct nvmem_layout {
|
||||
const char *name;
|
||||
const struct of_device_id *of_match_table;
|
||||
- int (*add_cells)(struct device *dev, struct nvmem_device *nvmem,
|
||||
- struct nvmem_layout *layout);
|
||||
+ int (*add_cells)(struct device *dev, struct nvmem_device *nvmem);
|
||||
void (*fixup_cell_info)(struct nvmem_device *nvmem,
|
||||
struct nvmem_layout *layout,
|
||||
struct nvmem_cell_info *cell);
|
@ -1,169 +0,0 @@
|
||||
From 1172460e716784ac7e1049a537bdca8edbf97360 Mon Sep 17 00:00:00 2001
|
||||
From: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
Date: Fri, 15 Dec 2023 11:15:31 +0000
|
||||
Subject: [PATCH] nvmem: Move and rename ->fixup_cell_info()
|
||||
|
||||
This hook is meant to be used by any provider and instantiating a layout
|
||||
just for this is useless. Let's instead move this hook to the nvmem
|
||||
device and add it to the config structure to be easily shared by the
|
||||
providers.
|
||||
|
||||
While at moving this hook, rename it ->fixup_dt_cell_info() to clarify
|
||||
its main intended purpose.
|
||||
|
||||
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
|
||||
Link: https://lore.kernel.org/r/20231215111536.316972-6-srinivas.kandagatla@linaro.org
|
||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
---
|
||||
drivers/nvmem/core.c | 6 +++---
|
||||
drivers/nvmem/imx-ocotp.c | 11 +++--------
|
||||
drivers/nvmem/internals.h | 2 ++
|
||||
drivers/nvmem/mtk-efuse.c | 11 +++--------
|
||||
include/linux/nvmem-provider.h | 9 ++++-----
|
||||
5 files changed, 15 insertions(+), 24 deletions(-)
|
||||
|
||||
--- a/drivers/nvmem/core.c
|
||||
+++ b/drivers/nvmem/core.c
|
||||
@@ -674,7 +674,6 @@ static int nvmem_validate_keepouts(struc
|
||||
|
||||
static int nvmem_add_cells_from_dt(struct nvmem_device *nvmem, struct device_node *np)
|
||||
{
|
||||
- struct nvmem_layout *layout = nvmem->layout;
|
||||
struct device *dev = &nvmem->dev;
|
||||
struct device_node *child;
|
||||
const __be32 *addr;
|
||||
@@ -704,8 +703,8 @@ static int nvmem_add_cells_from_dt(struc
|
||||
|
||||
info.np = of_node_get(child);
|
||||
|
||||
- if (layout && layout->fixup_cell_info)
|
||||
- layout->fixup_cell_info(nvmem, layout, &info);
|
||||
+ if (nvmem->fixup_dt_cell_info)
|
||||
+ nvmem->fixup_dt_cell_info(nvmem, &info);
|
||||
|
||||
ret = nvmem_add_one_cell(nvmem, &info);
|
||||
kfree(info.name);
|
||||
@@ -894,6 +893,7 @@ struct nvmem_device *nvmem_register(cons
|
||||
|
||||
kref_init(&nvmem->refcnt);
|
||||
INIT_LIST_HEAD(&nvmem->cells);
|
||||
+ nvmem->fixup_dt_cell_info = config->fixup_dt_cell_info;
|
||||
|
||||
nvmem->owner = config->owner;
|
||||
if (!nvmem->owner && config->dev->driver)
|
||||
--- a/drivers/nvmem/imx-ocotp.c
|
||||
+++ b/drivers/nvmem/imx-ocotp.c
|
||||
@@ -583,17 +583,12 @@ static const struct of_device_id imx_oco
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, imx_ocotp_dt_ids);
|
||||
|
||||
-static void imx_ocotp_fixup_cell_info(struct nvmem_device *nvmem,
|
||||
- struct nvmem_layout *layout,
|
||||
- struct nvmem_cell_info *cell)
|
||||
+static void imx_ocotp_fixup_dt_cell_info(struct nvmem_device *nvmem,
|
||||
+ struct nvmem_cell_info *cell)
|
||||
{
|
||||
cell->read_post_process = imx_ocotp_cell_pp;
|
||||
}
|
||||
|
||||
-static struct nvmem_layout imx_ocotp_layout = {
|
||||
- .fixup_cell_info = imx_ocotp_fixup_cell_info,
|
||||
-};
|
||||
-
|
||||
static int imx_ocotp_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@@ -619,7 +614,7 @@ static int imx_ocotp_probe(struct platfo
|
||||
imx_ocotp_nvmem_config.size = 4 * priv->params->nregs;
|
||||
imx_ocotp_nvmem_config.dev = dev;
|
||||
imx_ocotp_nvmem_config.priv = priv;
|
||||
- imx_ocotp_nvmem_config.layout = &imx_ocotp_layout;
|
||||
+ imx_ocotp_nvmem_config.fixup_dt_cell_info = &imx_ocotp_fixup_dt_cell_info;
|
||||
|
||||
priv->config = &imx_ocotp_nvmem_config;
|
||||
|
||||
--- a/drivers/nvmem/internals.h
|
||||
+++ b/drivers/nvmem/internals.h
|
||||
@@ -23,6 +23,8 @@ struct nvmem_device {
|
||||
struct bin_attribute eeprom;
|
||||
struct device *base_dev;
|
||||
struct list_head cells;
|
||||
+ void (*fixup_dt_cell_info)(struct nvmem_device *nvmem,
|
||||
+ struct nvmem_cell_info *cell);
|
||||
const struct nvmem_keepout *keepout;
|
||||
unsigned int nkeepout;
|
||||
nvmem_reg_read_t reg_read;
|
||||
--- a/drivers/nvmem/mtk-efuse.c
|
||||
+++ b/drivers/nvmem/mtk-efuse.c
|
||||
@@ -45,9 +45,8 @@ static int mtk_efuse_gpu_speedbin_pp(voi
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static void mtk_efuse_fixup_cell_info(struct nvmem_device *nvmem,
|
||||
- struct nvmem_layout *layout,
|
||||
- struct nvmem_cell_info *cell)
|
||||
+static void mtk_efuse_fixup_dt_cell_info(struct nvmem_device *nvmem,
|
||||
+ struct nvmem_cell_info *cell)
|
||||
{
|
||||
size_t sz = strlen(cell->name);
|
||||
|
||||
@@ -61,10 +60,6 @@ static void mtk_efuse_fixup_cell_info(st
|
||||
cell->read_post_process = mtk_efuse_gpu_speedbin_pp;
|
||||
}
|
||||
|
||||
-static struct nvmem_layout mtk_efuse_layout = {
|
||||
- .fixup_cell_info = mtk_efuse_fixup_cell_info,
|
||||
-};
|
||||
-
|
||||
static int mtk_efuse_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@@ -91,7 +86,7 @@ static int mtk_efuse_probe(struct platfo
|
||||
econfig.priv = priv;
|
||||
econfig.dev = dev;
|
||||
if (pdata->uses_post_processing)
|
||||
- econfig.layout = &mtk_efuse_layout;
|
||||
+ econfig.fixup_dt_cell_info = &mtk_efuse_fixup_dt_cell_info;
|
||||
nvmem = devm_nvmem_register(dev, &econfig);
|
||||
|
||||
return PTR_ERR_OR_ZERO(nvmem);
|
||||
--- a/include/linux/nvmem-provider.h
|
||||
+++ b/include/linux/nvmem-provider.h
|
||||
@@ -83,6 +83,8 @@ struct nvmem_cell_info {
|
||||
* @cells: Optional array of pre-defined NVMEM cells.
|
||||
* @ncells: Number of elements in cells.
|
||||
* @add_legacy_fixed_of_cells: Read fixed NVMEM cells from old OF syntax.
|
||||
+ * @fixup_dt_cell_info: Will be called before a cell is added. Can be
|
||||
+ * used to modify the nvmem_cell_info.
|
||||
* @keepout: Optional array of keepout ranges (sorted ascending by start).
|
||||
* @nkeepout: Number of elements in the keepout array.
|
||||
* @type: Type of the nvmem storage
|
||||
@@ -113,6 +115,8 @@ struct nvmem_config {
|
||||
const struct nvmem_cell_info *cells;
|
||||
int ncells;
|
||||
bool add_legacy_fixed_of_cells;
|
||||
+ void (*fixup_dt_cell_info)(struct nvmem_device *nvmem,
|
||||
+ struct nvmem_cell_info *cell);
|
||||
const struct nvmem_keepout *keepout;
|
||||
unsigned int nkeepout;
|
||||
enum nvmem_type type;
|
||||
@@ -158,8 +162,6 @@ struct nvmem_cell_table {
|
||||
* @of_match_table: Open firmware match table.
|
||||
* @add_cells: Called to populate the layout using
|
||||
* nvmem_add_one_cell().
|
||||
- * @fixup_cell_info: Will be called before a cell is added. Can be
|
||||
- * used to modify the nvmem_cell_info.
|
||||
* @owner: Pointer to struct module.
|
||||
* @node: List node.
|
||||
*
|
||||
@@ -172,9 +174,6 @@ struct nvmem_layout {
|
||||
const char *name;
|
||||
const struct of_device_id *of_match_table;
|
||||
int (*add_cells)(struct device *dev, struct nvmem_device *nvmem);
|
||||
- void (*fixup_cell_info)(struct nvmem_device *nvmem,
|
||||
- struct nvmem_layout *layout,
|
||||
- struct nvmem_cell_info *cell);
|
||||
|
||||
/* private */
|
||||
struct module *owner;
|
@ -330,7 +330,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(nvmem_cell_put);
|
||||
|
||||
@@ -2116,11 +2057,22 @@ EXPORT_SYMBOL_GPL(nvmem_dev_size);
|
||||
@@ -2118,11 +2059,22 @@ EXPORT_SYMBOL_GPL(nvmem_dev_size);
|
||||
|
||||
static int __init nvmem_init(void)
|
||||
{
|
||||
|
@ -1,42 +0,0 @@
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3568.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3568.dtsi
|
||||
@@ -225,6 +225,7 @@
|
||||
assigned-clocks = <&pmucru CLK_PCIEPHY0_REF>;
|
||||
assigned-clock-rates = <100000000>;
|
||||
resets = <&cru SRST_PIPEPHY0>;
|
||||
+ reset-names = "phy";
|
||||
rockchip,pipe-grf = <&pipegrf>;
|
||||
rockchip,pipe-phy-grf = <&pipe_phy_grf0>;
|
||||
#phy-cells = <1>;
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||
@@ -1719,6 +1719,7 @@
|
||||
assigned-clocks = <&pmucru CLK_PCIEPHY1_REF>;
|
||||
assigned-clock-rates = <100000000>;
|
||||
resets = <&cru SRST_PIPEPHY1>;
|
||||
+ reset-names = "phy";
|
||||
rockchip,pipe-grf = <&pipegrf>;
|
||||
rockchip,pipe-phy-grf = <&pipe_phy_grf1>;
|
||||
#phy-cells = <1>;
|
||||
@@ -1735,6 +1736,7 @@
|
||||
assigned-clocks = <&pmucru CLK_PCIEPHY2_REF>;
|
||||
assigned-clock-rates = <100000000>;
|
||||
resets = <&cru SRST_PIPEPHY2>;
|
||||
+ reset-names = "phy";
|
||||
rockchip,pipe-grf = <&pipegrf>;
|
||||
rockchip,pipe-phy-grf = <&pipe_phy_grf2>;
|
||||
#phy-cells = <1>;
|
||||
--- a/drivers/phy/rockchip/phy-rockchip-naneng-combphy.c
|
||||
+++ b/drivers/phy/rockchip/phy-rockchip-naneng-combphy.c
|
||||
@@ -324,7 +324,10 @@ static int rockchip_combphy_parse_dt(str
|
||||
|
||||
priv->ext_refclk = device_property_present(dev, "rockchip,ext-refclk");
|
||||
|
||||
- priv->phy_rst = devm_reset_control_get(dev, "phy");
|
||||
+ priv->phy_rst = devm_reset_control_get_exclusive(dev, "phy");
|
||||
+ /* fallback to old behaviour */
|
||||
+ if (PTR_ERR(priv->phy_rst) == -ENOENT)
|
||||
+ priv->phy_rst = devm_reset_control_array_get_exclusive(dev);
|
||||
if (IS_ERR(priv->phy_rst))
|
||||
return dev_err_probe(dev, PTR_ERR(priv->phy_rst), "failed to get phy reset\n");
|
||||
|
@ -289,6 +289,7 @@ CONFIG_MEMFD_CREATE=y
|
||||
# CONFIG_MGEODEGX1 is not set
|
||||
# CONFIG_MGEODE_LX is not set
|
||||
CONFIG_MICROCODE=y
|
||||
CONFIG_MICROCODE_INITRD32=y
|
||||
CONFIG_MICROCODE_AMD=y
|
||||
CONFIG_MICROCODE_INTEL=y
|
||||
# CONFIG_MICROCODE_LATE_LOADING is not set
|
||||
|
Loading…
Reference in New Issue
Block a user