-LINUX_VERSION-5.10 = .213
-LINUX_KERNEL_HASH-5.10.213 = 84cf30223239ec3333a5f7b2a7fba2042bba70d1582a139f7543956af871ad80
+LINUX_VERSION-5.10 = .214
+LINUX_KERNEL_HASH-5.10.214 = 40f014d53e81f204f6d2a364aae4201ae07970dd1b70dc602d7c66c1a140f558
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
-@@ -3116,7 +3116,10 @@ static int clk_rate_get(void *data, u64
+@@ -3119,7 +3119,10 @@ static int clk_rate_get(void *data, u64
{
struct clk_core *core = data;
unsigned int var;
--- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
-@@ -520,7 +520,7 @@ void mtk_drm_crtc_async_update(struct dr
+@@ -522,7 +522,7 @@ void mtk_drm_crtc_async_update(struct dr
}
static void mtk_drm_crtc_atomic_enable(struct drm_crtc *crtc,
{
struct mtk_drm_crtc *mtk_crtc = to_mtk_crtc(crtc);
struct mtk_ddp_comp *comp = mtk_crtc->ddp_comp[0];
-@@ -545,7 +545,7 @@ static void mtk_drm_crtc_atomic_enable(s
+@@ -547,7 +547,7 @@ static void mtk_drm_crtc_atomic_enable(s
}
static void mtk_drm_crtc_atomic_disable(struct drm_crtc *crtc,
if (drm_crtc_vblank_get(crtc) == 0)
--- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
-@@ -578,29 +578,29 @@ static void mtk_drm_crtc_atomic_disable(
+@@ -580,29 +580,29 @@ static void mtk_drm_crtc_atomic_disable(
}
static void mtk_drm_crtc_atomic_begin(struct drm_crtc *crtc,
/*** runtime pm ***/
static int clk_pm_runtime_get(struct clk_core *core)
{
-@@ -1441,10 +1449,14 @@ unsigned long clk_hw_round_rate(struct c
+@@ -1444,10 +1452,14 @@ unsigned long clk_hw_round_rate(struct c
{
int ret;
struct clk_rate_request req;
ret = clk_core_round_rate_nolock(hw->core, &req);
if (ret)
return 0;
-@@ -1465,6 +1477,7 @@ EXPORT_SYMBOL_GPL(clk_hw_round_rate);
+@@ -1468,6 +1480,7 @@ EXPORT_SYMBOL_GPL(clk_hw_round_rate);
long clk_round_rate(struct clk *clk, unsigned long rate)
{
struct clk_rate_request req;
int ret;
if (!clk)
-@@ -1478,6 +1491,9 @@ long clk_round_rate(struct clk *clk, uns
+@@ -1481,6 +1494,9 @@ long clk_round_rate(struct clk *clk, uns
clk_core_get_boundaries(clk->core, &req.min_rate, &req.max_rate);
req.rate = rate;
ret = clk_core_round_rate_nolock(clk->core, &req);
if (clk->exclusive_count)
-@@ -1945,6 +1961,7 @@ static struct clk_core *clk_calc_new_rat
+@@ -1948,6 +1964,7 @@ static struct clk_core *clk_calc_new_rat
unsigned long new_rate;
unsigned long min_rate;
unsigned long max_rate;
int p_index = 0;
long ret;
-@@ -1959,6 +1976,9 @@ static struct clk_core *clk_calc_new_rat
+@@ -1962,6 +1979,9 @@ static struct clk_core *clk_calc_new_rat
clk_core_get_boundaries(core, &min_rate, &max_rate);
/* find the closest rate and parent clk/rate */
if (clk_core_can_round(core)) {
struct clk_rate_request req;
-@@ -2163,6 +2183,7 @@ static unsigned long clk_core_req_round_
+@@ -2166,6 +2186,7 @@ static unsigned long clk_core_req_round_
{
int ret, cnt;
struct clk_rate_request req;
lockdep_assert_held(&prepare_lock);
-@@ -2177,6 +2198,9 @@ static unsigned long clk_core_req_round_
+@@ -2180,6 +2201,9 @@ static unsigned long clk_core_req_round_
clk_core_get_boundaries(core, &req.min_rate, &req.max_rate);
req.rate = req_rate;
ret = clk_core_round_rate_nolock(core, &req);
/* restore the protection */
-@@ -2270,6 +2294,9 @@ int clk_set_rate(struct clk *clk, unsign
+@@ -2273,6 +2297,9 @@ int clk_set_rate(struct clk *clk, unsign
ret = clk_core_set_rate_nolock(clk->core, rate);
if (clk->exclusive_count)
clk_core_rate_protect(clk->core);
-@@ -2436,6 +2463,99 @@ int clk_set_max_rate(struct clk *clk, un
+@@ -2439,6 +2466,99 @@ int clk_set_max_rate(struct clk *clk, un
EXPORT_SYMBOL_GPL(clk_set_max_rate);
/**
* clk_get_parent - return the parent of a clk
* @clk: the clk whose parent gets returned
*
-@@ -3888,6 +4008,7 @@ __clk_register(struct device *dev, struc
+@@ -3891,6 +4011,7 @@ __clk_register(struct device *dev, struc
goto fail_parents;
INIT_HLIST_HEAD(&core->clks);
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
-@@ -2532,6 +2532,9 @@ void clk_request_done(struct clk_request
+@@ -2535,6 +2535,9 @@ void clk_request_done(struct clk_request
{
struct clk_core *core = req->clk->core;
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
-@@ -2530,10 +2530,11 @@ EXPORT_SYMBOL_GPL(clk_request_start);
+@@ -2533,10 +2533,11 @@ EXPORT_SYMBOL_GPL(clk_request_start);
*/
void clk_request_done(struct clk_request *req)
{
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
-@@ -1344,6 +1344,8 @@ static int clk_core_determine_round_nolo
+@@ -1347,6 +1347,8 @@ static int clk_core_determine_round_nolo
if (!core)
return 0;
static const struct drm_plane_helper_funcs ingenic_drm_plane_helper_funcs = {
--- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
-@@ -622,7 +622,6 @@ static const struct drm_crtc_funcs mtk_c
+@@ -624,7 +624,6 @@ static const struct drm_crtc_funcs mtk_c
.reset = mtk_drm_crtc_reset,
.atomic_duplicate_state = mtk_drm_crtc_duplicate_state,
.atomic_destroy_state = mtk_drm_crtc_destroy_state,
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA210_ADMA is not set
+# CONFIG_TEGRA_ACONNECT is not set
# CONFIG_TEGRA_AHB is not set
# CONFIG_TEGRA_HOST1X is not set
# CONFIG_TEHUTI is not set
memory@40000000 {
- reg = <0 0x40000000 0 0x20000000>;
+ reg = <0 0x40000000 0 0x40000000>;
+ device_type = "memory";
};
- reg_1p8v: regulator-1p8v {
-@@ -132,22 +130,22 @@
+@@ -133,22 +131,22 @@
port@0 {
reg = <0>;
};
port@4 {
-@@ -236,15 +234,28 @@
+@@ -237,15 +235,28 @@
&pcie {
pinctrl-names = "default";
/* eMMC is shared pin with parallel NAND */
emmc_pins_default: emmc-pins-default {
mux {
-@@ -511,11 +522,11 @@
+@@ -512,11 +523,11 @@
};
&sata {
};
chosen {
-@@ -160,22 +161,22 @@
+@@ -161,22 +162,22 @@
port@1 {
reg = <1>;
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
-@@ -559,12 +559,16 @@
+@@ -560,12 +560,16 @@
status = "okay";
};
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
-@@ -259,14 +259,32 @@
+@@ -260,14 +260,32 @@
status = "disabled";
};
"mediatek,mt8173-nor";
--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
-@@ -529,6 +529,55 @@
+@@ -530,6 +530,55 @@
status = "disabled";
};
--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
-@@ -561,7 +561,7 @@
+@@ -562,7 +562,7 @@
reg = <0x140000 0x0080000>;
};
label = "Factory";
reg = <0x1c0000 0x0100000>;
};
-@@ -619,5 +619,6 @@
+@@ -620,5 +620,6 @@
};
&wmac {
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
-@@ -160,6 +160,10 @@
+@@ -161,6 +161,10 @@
switch@0 {
compatible = "mediatek,mt7531";
reg = <0>;
--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
-@@ -535,6 +535,8 @@
+@@ -536,6 +536,8 @@
pinctrl-0 = <&serial_nand_pins>;
status = "okay";
#interrupt-cells = <1>;
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
-@@ -292,18 +292,16 @@
+@@ -293,18 +293,16 @@
};
};
<0 0 0 2 &pcie_intc1 1>,
--- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts
-@@ -232,18 +232,16 @@
+@@ -233,18 +233,16 @@
};
};
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
-@@ -308,7 +308,7 @@
+@@ -309,7 +309,7 @@
/* Attention: GPIO 90 is used to switch between PCIe@1,0 and
* SATA functions. i.e. output-high: PCIe, output-low: SATA
*/
--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
-@@ -632,5 +632,28 @@
+@@ -633,5 +633,28 @@
};
&wmac {
#include <linux/platform_data/x86/apple.h>
#include <linux/pm_runtime.h>
#include <linux/suspend.h>
-@@ -5858,3 +5859,34 @@ static void nvidia_ion_ahci_fixup(struct
+@@ -5859,3 +5860,34 @@ static void nvidia_ion_ahci_fixup(struct
pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING;
}
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup);
+++ /dev/null
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Sun, 3 Mar 2024 19:57:11 +0100
-Subject: x86: Fix compile problem
-
-This fixes the following compile problem:
- CC arch/x86/kernel/paravirt.o
-arch/x86/kernel/paravirt.c: In function 'paravirt_patch_call':
-arch/x86/kernel/paravirt.c:65:9: error: implicit declaration of function '__text_gen_insn' [-Werror=implicit-function-declaration]
- 65 | __text_gen_insn(insn_buff, CALL_INSN_OPCODE,
- | ^~~~~~~~~~~~~~~
-arch/x86/kernel/paravirt.c:65:36: error: 'CALL_INSN_OPCODE' undeclared (first use in this function)
- 65 | __text_gen_insn(insn_buff, CALL_INSN_OPCODE,
- | ^~~~~~~~~~~~~~~~
-arch/x86/kernel/paravirt.c:65:36: note: each undeclared identifier is reported only once for each function it appears in
-arch/x86/kernel/paravirt.c:66:47: error: 'CALL_INSN_SIZE' undeclared (first use in this function)
- 66 | (void *)addr, target, CALL_INSN_SIZE);
- | ^~~~~~~~~~~~~~
-arch/x86/kernel/paravirt.c:68:1: error: control reaches end of non-void function [-Werror=return-type]
- 68 | }
- | ^
-cc1: some warnings being treated as errors
-make[7]: *** [scripts/Makefile.build:286: arch/x86/kernel/paravirt.o] Error 1
-
-Fixes: b253061d4b86 ("x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch()")
-Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
----
- arch/x86/kernel/paravirt.c | 1 +
- 1 file changed, 1 insertion(+)
-
---- a/arch/x86/kernel/paravirt.c
-+++ b/arch/x86/kernel/paravirt.c
-@@ -14,6 +14,7 @@
- #include <linux/highmem.h>
- #include <linux/kprobes.h>
- #include <linux/pgtable.h>
-+#include <linux/static_call.h>
-
- #include <asm/bug.h>
- #include <asm/paravirt.h>