spacemit: opensbi, u-boot, kernel legacy: Update for v1.0.15

Re-extract the kernel patches as a series.
Re-extract the u-boot patches as "git format-patch" command.

Unified patch extraction makes it easier to work with patches.
This commit is contained in:
The-going
2024-10-05 12:09:03 +03:00
committed by Igor
parent 70daac7b44
commit 2e5611c92d
24 changed files with 993 additions and 226 deletions

View File

@@ -18,10 +18,11 @@ declare -g ATFSOURCE="https://github.com/riscv-software-src/opensbi.git"
declare -g ATFDIR="opensbi" declare -g ATFDIR="opensbi"
declare -g ATFBRANCH="tag:v1.3" declare -g ATFBRANCH="tag:v1.3"
declare -g ATF_TARGET_MAP="PLATFORM_DEFCONFIG=k1_defconfig PLATFORM=generic ;;build/platform/generic/firmware/fw_dynamic.itb" declare -g ATF_TARGET_MAP="PLATFORM_DEFCONFIG=k1_defconfig PLATFORM=generic ;;build/platform/generic/firmware/fw_dynamic.itb"
# declare -g ATFPATCHDIR="atf-spacemit"
# U-Boot # U-Boot
declare -g BOOTSOURCE="https://gitee.com/bianbu-linux/uboot-2022.10.git" declare -g BOOTSOURCE="https://gitee.com/bianbu-linux/uboot-2022.10.git"
declare -g BOOTBRANCH="${BOOTBRANCH_BOARD:-"tag:v1.0.12"}" declare -g BOOTBRANCH="${BOOTBRANCH_BOARD:-"tag:v1.0.15"}"
declare -g BOOTDIR='u-boot-spacemit' declare -g BOOTDIR='u-boot-spacemit'
declare -g BOOTPATCHDIR="${BOOTPATCHDIR:-"legacy/u-boot-spacemit-k1"}" declare -g BOOTPATCHDIR="${BOOTPATCHDIR:-"legacy/u-boot-spacemit-k1"}"
declare -g UBOOT_TARGET_MAP=";;bootinfo_emmc.bin FSBL.bin u-boot.itb fw_dynamic.itb" declare -g UBOOT_TARGET_MAP=";;bootinfo_emmc.bin FSBL.bin u-boot.itb fw_dynamic.itb"
@@ -38,7 +39,7 @@ case "${BRANCH}" in
legacy) legacy)
# Kernel # Kernel
declare -g KERNELSOURCE='https://gitee.com/bianbu-linux/linux-6.1.git' declare -g KERNELSOURCE='https://gitee.com/bianbu-linux/linux-6.1.git'
declare -g KERNELBRANCH='tag:v1.0.12' declare -g KERNELBRANCH='tag:v1.0.15'
declare -g KERNEL_MAJOR_MINOR="6.1" declare -g KERNEL_MAJOR_MINOR="6.1"
declare -g LINUXCONFIG="linux-${LINUXFAMILY}-${BRANCH}" declare -g LINUXCONFIG="linux-${LINUXFAMILY}-${BRANCH}"
declare -g KERNELPATCHDIR="${LINUXFAMILY}-legacy-${KERNEL_MAJOR_MINOR}" # Needed as long as both legacy and current are 6.1 kernels declare -g KERNELPATCHDIR="${LINUXFAMILY}-legacy-${KERNEL_MAJOR_MINOR}" # Needed as long as both legacy and current are 6.1 kernels

View File

@@ -1,7 +1,7 @@
From 59ac4b4bb09bfb031369a2b40156f4a1c94b93cd Mon Sep 17 00:00:00 2001 From 59ac4b4bb09bfb031369a2b40156f4a1c94b93cd Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com> From: James Deng <james.deng@spacemit.com>
Date: Fri, 1 Mar 2024 19:54:35 +0800 Date: Fri, 1 Mar 2024 19:54:35 +0800
Subject: [PATCH] Update for v1.0alpha2 Subject: Update for v1.0alpha2
--- ---
Makefile | 17 +- Makefile | 17 +-
@@ -126,7 +126,7 @@ Subject: [PATCH] Update for v1.0alpha2
create mode 100644 platform/generic/spacemit/spacemit_k1.c create mode 100644 platform/generic/spacemit/spacemit_k1.c
diff --git a/Makefile b/Makefile diff --git a/Makefile b/Makefile
index 730dbd9..468f8a3 100644 index 730dbd910e51..468f8a30e89a 100644
--- a/Makefile --- a/Makefile
+++ b/Makefile +++ b/Makefile
@@ -114,6 +114,7 @@ endif @@ -114,6 +114,7 @@ endif
@@ -195,7 +195,7 @@ index 730dbd9..468f8a3 100644
$(build_dir)/docs/latex/refman.pdf: $(build_dir)/docs/latex/refman.tex $(build_dir)/docs/latex/refman.pdf: $(build_dir)/docs/latex/refman.tex
$(CMD_PREFIX)mkdir -p $(build_dir)/docs $(CMD_PREFIX)mkdir -p $(build_dir)/docs
diff --git a/firmware/fw_base.ldS b/firmware/fw_base.ldS diff --git a/firmware/fw_base.ldS b/firmware/fw_base.ldS
index 3d68484..e214f9d 100644 index 3d68484ba5e3..e214f9d63eaa 100644
--- a/firmware/fw_base.ldS --- a/firmware/fw_base.ldS
+++ b/firmware/fw_base.ldS +++ b/firmware/fw_base.ldS
@@ -96,6 +96,11 @@ @@ -96,6 +96,11 @@
@@ -211,7 +211,7 @@ index 3d68484..e214f9d 100644
. = ALIGN(0x1000); /* Need this to create proper sections */ . = ALIGN(0x1000); /* Need this to create proper sections */
diff --git a/include/sbi/riscv_encoding.h b/include/sbi/riscv_encoding.h diff --git a/include/sbi/riscv_encoding.h b/include/sbi/riscv_encoding.h
index 4ebed97..54e09d4 100644 index 4ebed97ab0a0..54e09d44528b 100644
--- a/include/sbi/riscv_encoding.h --- a/include/sbi/riscv_encoding.h
+++ b/include/sbi/riscv_encoding.h +++ b/include/sbi/riscv_encoding.h
@@ -708,6 +708,8 @@ @@ -708,6 +708,8 @@
@@ -224,7 +224,7 @@ index 4ebed97..54e09d4 100644
#define CAUSE_MISALIGNED_FETCH 0x0 #define CAUSE_MISALIGNED_FETCH 0x0
diff --git a/include/sbi/sbi_ecall_interface.h b/include/sbi/sbi_ecall_interface.h diff --git a/include/sbi/sbi_ecall_interface.h b/include/sbi/sbi_ecall_interface.h
index 1fe469e..f29c22a 100644 index 1fe469e37078..f29c22a106c2 100644
--- a/include/sbi/sbi_ecall_interface.h --- a/include/sbi/sbi_ecall_interface.h
+++ b/include/sbi/sbi_ecall_interface.h +++ b/include/sbi/sbi_ecall_interface.h
@@ -42,6 +42,10 @@ @@ -42,6 +42,10 @@
@@ -239,7 +239,7 @@ index 1fe469e..f29c22a 100644
#define SBI_EXT_TIME_SET_TIMER 0x0 #define SBI_EXT_TIME_SET_TIMER 0x0
diff --git a/include/sbi/sbi_hsm.h b/include/sbi/sbi_hsm.h diff --git a/include/sbi/sbi_hsm.h b/include/sbi/sbi_hsm.h
index 4b5601b..066456c 100644 index 4b5601ba40ca..066456cb4382 100644
--- a/include/sbi/sbi_hsm.h --- a/include/sbi/sbi_hsm.h
+++ b/include/sbi/sbi_hsm.h +++ b/include/sbi/sbi_hsm.h
@@ -74,10 +74,16 @@ bool sbi_hsm_hart_change_state(struct sbi_scratch *scratch, long oldstate, @@ -74,10 +74,16 @@ bool sbi_hsm_hart_change_state(struct sbi_scratch *scratch, long oldstate,
@@ -262,7 +262,7 @@ index 4b5601b..066456c 100644
#endif #endif
diff --git a/include/sbi_utils/cache/cacheflush.h b/include/sbi_utils/cache/cacheflush.h diff --git a/include/sbi_utils/cache/cacheflush.h b/include/sbi_utils/cache/cacheflush.h
new file mode 100644 new file mode 100644
index 0000000..c3e3532 index 000000000000..c3e353229f75
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/cache/cacheflush.h +++ b/include/sbi_utils/cache/cacheflush.h
@@ -0,0 +1,192 @@ @@ -0,0 +1,192 @@
@@ -460,7 +460,7 @@ index 0000000..c3e3532
+#endif +#endif
diff --git a/include/sbi_utils/cci/cci.h b/include/sbi_utils/cci/cci.h diff --git a/include/sbi_utils/cci/cci.h b/include/sbi_utils/cci/cci.h
new file mode 100644 new file mode 100644
index 0000000..c5b8b57 index 000000000000..c5b8b576d6e6
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/cci/cci.h +++ b/include/sbi_utils/cci/cci.h
@@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
@@ -492,7 +492,7 @@ index 0000000..c5b8b57
+ +
+#endif /* CCI_H */ +#endif /* CCI_H */
diff --git a/include/sbi_utils/irqchip/fdt_irqchip_plic.h b/include/sbi_utils/irqchip/fdt_irqchip_plic.h diff --git a/include/sbi_utils/irqchip/fdt_irqchip_plic.h b/include/sbi_utils/irqchip/fdt_irqchip_plic.h
index df645dd..b892b0b 100644 index df645dd00ee3..b892b0bc70f8 100644
--- a/include/sbi_utils/irqchip/fdt_irqchip_plic.h --- a/include/sbi_utils/irqchip/fdt_irqchip_plic.h
+++ b/include/sbi_utils/irqchip/fdt_irqchip_plic.h +++ b/include/sbi_utils/irqchip/fdt_irqchip_plic.h
@@ -28,6 +28,8 @@ void fdt_plic_context_save(bool smode, u32 *enable, u32 *threshold, u32 num); @@ -28,6 +28,8 @@ void fdt_plic_context_save(bool smode, u32 *enable, u32 *threshold, u32 num);
@@ -506,7 +506,7 @@ index df645dd..b892b0b 100644
#endif #endif
diff --git a/include/sbi_utils/psci/drivers/arm/css/css_mhu_doorbell.h b/include/sbi_utils/psci/drivers/arm/css/css_mhu_doorbell.h diff --git a/include/sbi_utils/psci/drivers/arm/css/css_mhu_doorbell.h b/include/sbi_utils/psci/drivers/arm/css/css_mhu_doorbell.h
new file mode 100644 new file mode 100644
index 0000000..e49c7e2 index 000000000000..e49c7e2dca64
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/drivers/arm/css/css_mhu_doorbell.h +++ b/include/sbi_utils/psci/drivers/arm/css/css_mhu_doorbell.h
@@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
@@ -526,7 +526,7 @@ index 0000000..e49c7e2
+#endif /* CSS_MHU_DOORBELL_H */ +#endif /* CSS_MHU_DOORBELL_H */
diff --git a/include/sbi_utils/psci/drivers/arm/css/css_scp.h b/include/sbi_utils/psci/drivers/arm/css/css_scp.h diff --git a/include/sbi_utils/psci/drivers/arm/css/css_scp.h b/include/sbi_utils/psci/drivers/arm/css/css_scp.h
new file mode 100644 new file mode 100644
index 0000000..f75eae6 index 000000000000..f75eae64b856
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/drivers/arm/css/css_scp.h +++ b/include/sbi_utils/psci/drivers/arm/css/css_scp.h
@@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
@@ -542,7 +542,7 @@ index 0000000..f75eae6
+#endif +#endif
diff --git a/include/sbi_utils/psci/drivers/arm/css/scmi.h b/include/sbi_utils/psci/drivers/arm/css/scmi.h diff --git a/include/sbi_utils/psci/drivers/arm/css/scmi.h b/include/sbi_utils/psci/drivers/arm/css/scmi.h
new file mode 100644 new file mode 100644
index 0000000..1e8c370 index 000000000000..1e8c370d4510
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/drivers/arm/css/scmi.h +++ b/include/sbi_utils/psci/drivers/arm/css/scmi.h
@@ -0,0 +1,141 @@ @@ -0,0 +1,141 @@
@@ -689,7 +689,7 @@ index 0000000..1e8c370
+#endif +#endif
diff --git a/include/sbi_utils/psci/drivers/arm/css/scmi_private.h b/include/sbi_utils/psci/drivers/arm/css/scmi_private.h diff --git a/include/sbi_utils/psci/drivers/arm/css/scmi_private.h b/include/sbi_utils/psci/drivers/arm/css/scmi_private.h
new file mode 100644 new file mode 100644
index 0000000..7b246e5 index 000000000000..7b246e53cc38
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/drivers/arm/css/scmi_private.h +++ b/include/sbi_utils/psci/drivers/arm/css/scmi_private.h
@@ -0,0 +1,146 @@ @@ -0,0 +1,146 @@
@@ -841,7 +841,7 @@ index 0000000..7b246e5
+#endif +#endif
diff --git a/include/sbi_utils/psci/plat/arm/board/spacemit/include/platform_def.h b/include/sbi_utils/psci/plat/arm/board/spacemit/include/platform_def.h diff --git a/include/sbi_utils/psci/plat/arm/board/spacemit/include/platform_def.h b/include/sbi_utils/psci/plat/arm/board/spacemit/include/platform_def.h
new file mode 100644 new file mode 100644
index 0000000..6287c82 index 000000000000..6287c8273c7e
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/plat/arm/board/spacemit/include/platform_def.h +++ b/include/sbi_utils/psci/plat/arm/board/spacemit/include/platform_def.h
@@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
@@ -857,7 +857,7 @@ index 0000000..6287c82
+#endif +#endif
diff --git a/include/sbi_utils/psci/plat/arm/common/arm_def.h b/include/sbi_utils/psci/plat/arm/common/arm_def.h diff --git a/include/sbi_utils/psci/plat/arm/common/arm_def.h b/include/sbi_utils/psci/plat/arm/common/arm_def.h
new file mode 100644 new file mode 100644
index 0000000..3cedcff index 000000000000..3cedcff21609
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/plat/arm/common/arm_def.h +++ b/include/sbi_utils/psci/plat/arm/common/arm_def.h
@@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
@@ -882,7 +882,7 @@ index 0000000..3cedcff
+#endif +#endif
diff --git a/include/sbi_utils/psci/plat/arm/common/plat_arm.h b/include/sbi_utils/psci/plat/arm/common/plat_arm.h diff --git a/include/sbi_utils/psci/plat/arm/common/plat_arm.h b/include/sbi_utils/psci/plat/arm/common/plat_arm.h
new file mode 100644 new file mode 100644
index 0000000..fb7bf13 index 000000000000..fb7bf13f9ba4
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/plat/arm/common/plat_arm.h +++ b/include/sbi_utils/psci/plat/arm/common/plat_arm.h
@@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
@@ -909,7 +909,7 @@ index 0000000..fb7bf13
+#endif +#endif
diff --git a/include/sbi_utils/psci/plat/arm/css/common/css_pm.h b/include/sbi_utils/psci/plat/arm/css/common/css_pm.h diff --git a/include/sbi_utils/psci/plat/arm/css/common/css_pm.h b/include/sbi_utils/psci/plat/arm/css/common/css_pm.h
new file mode 100644 new file mode 100644
index 0000000..78d7f37 index 000000000000..78d7f374d254
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/plat/arm/css/common/css_pm.h +++ b/include/sbi_utils/psci/plat/arm/css/common/css_pm.h
@@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
@@ -951,7 +951,7 @@ index 0000000..78d7f37
+#endif +#endif
diff --git a/include/sbi_utils/psci/plat/common/platform.h b/include/sbi_utils/psci/plat/common/platform.h diff --git a/include/sbi_utils/psci/plat/common/platform.h b/include/sbi_utils/psci/plat/common/platform.h
new file mode 100644 new file mode 100644
index 0000000..7c53612 index 000000000000..7c5361230b55
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/plat/common/platform.h +++ b/include/sbi_utils/psci/plat/common/platform.h
@@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
@@ -970,7 +970,7 @@ index 0000000..7c53612
+#endif +#endif
diff --git a/include/sbi_utils/psci/psci.h b/include/sbi_utils/psci/psci.h diff --git a/include/sbi_utils/psci/psci.h b/include/sbi_utils/psci/psci.h
new file mode 100644 new file mode 100644
index 0000000..c76fd25 index 000000000000..c76fd25d546b
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/psci.h +++ b/include/sbi_utils/psci/psci.h
@@ -0,0 +1,223 @@ @@ -0,0 +1,223 @@
@@ -1199,7 +1199,7 @@ index 0000000..c76fd25
+#endif +#endif
diff --git a/include/sbi_utils/psci/psci_lib.h b/include/sbi_utils/psci/psci_lib.h diff --git a/include/sbi_utils/psci/psci_lib.h b/include/sbi_utils/psci/psci_lib.h
new file mode 100644 new file mode 100644
index 0000000..15576b7 index 000000000000..15576b788cd0
--- /dev/null --- /dev/null
+++ b/include/sbi_utils/psci/psci_lib.h +++ b/include/sbi_utils/psci/psci_lib.h
@@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
@@ -1212,7 +1212,7 @@ index 0000000..15576b7
+ +
+#endif +#endif
diff --git a/lib/sbi/sbi_ecall_base.c b/lib/sbi/sbi_ecall_base.c diff --git a/lib/sbi/sbi_ecall_base.c b/lib/sbi/sbi_ecall_base.c
index 74f05eb..b02bcc1 100644 index 74f05eb26a35..b02bcc10322f 100644
--- a/lib/sbi/sbi_ecall_base.c --- a/lib/sbi/sbi_ecall_base.c
+++ b/lib/sbi/sbi_ecall_base.c +++ b/lib/sbi/sbi_ecall_base.c
@@ -14,6 +14,9 @@ @@ -14,6 +14,9 @@
@@ -1240,7 +1240,7 @@ index 74f05eb..b02bcc1 100644
ret = sbi_ecall_base_probe(regs->a0, out_val); ret = sbi_ecall_base_probe(regs->a0, out_val);
break; break;
diff --git a/lib/sbi/sbi_ecall_hsm.c b/lib/sbi/sbi_ecall_hsm.c diff --git a/lib/sbi/sbi_ecall_hsm.c b/lib/sbi/sbi_ecall_hsm.c
index 20705c3..ed8c940 100644 index 20705c395131..ed8c940e9188 100644
--- a/lib/sbi/sbi_ecall_hsm.c --- a/lib/sbi/sbi_ecall_hsm.c
+++ b/lib/sbi/sbi_ecall_hsm.c +++ b/lib/sbi/sbi_ecall_hsm.c
@@ -35,8 +35,13 @@ static int sbi_ecall_hsm_handler(unsigned long extid, unsigned long funcid, @@ -35,8 +35,13 @@ static int sbi_ecall_hsm_handler(unsigned long extid, unsigned long funcid,
@@ -1258,7 +1258,7 @@ index 20705c3..ed8c940 100644
case SBI_EXT_HSM_HART_SUSPEND: case SBI_EXT_HSM_HART_SUSPEND:
ret = sbi_hsm_hart_suspend(scratch, regs->a0, regs->a1, ret = sbi_hsm_hart_suspend(scratch, regs->a0, regs->a1,
diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c
index 6e52cbd..3a3265d 100644 index 6e52cbd76d89..3a3265df7f20 100644
--- a/lib/sbi/sbi_hart.c --- a/lib/sbi/sbi_hart.c
+++ b/lib/sbi/sbi_hart.c +++ b/lib/sbi/sbi_hart.c
@@ -818,6 +818,8 @@ sbi_hart_switch_mode(unsigned long arg0, unsigned long arg1, @@ -818,6 +818,8 @@ sbi_hart_switch_mode(unsigned long arg0, unsigned long arg1,
@@ -1271,7 +1271,7 @@ index 6e52cbd..3a3265d 100644
register unsigned long a1 asm("a1") = arg1; register unsigned long a1 asm("a1") = arg1;
__asm__ __volatile__("mret" : : "r"(a0), "r"(a1)); __asm__ __volatile__("mret" : : "r"(a0), "r"(a1));
diff --git a/lib/sbi/sbi_hsm.c b/lib/sbi/sbi_hsm.c diff --git a/lib/sbi/sbi_hsm.c b/lib/sbi/sbi_hsm.c
index f870ca7..acd3c9e 100644 index f870ca72bafc..acd3c9e04c87 100644
--- a/lib/sbi/sbi_hsm.c --- a/lib/sbi/sbi_hsm.c
+++ b/lib/sbi/sbi_hsm.c +++ b/lib/sbi/sbi_hsm.c
@@ -25,6 +25,8 @@ @@ -25,6 +25,8 @@
@@ -1394,7 +1394,7 @@ index f870ca7..acd3c9e 100644
{ {
return hsm_dev; return hsm_dev;
diff --git a/lib/sbi/sbi_init.c b/lib/sbi/sbi_init.c diff --git a/lib/sbi/sbi_init.c b/lib/sbi/sbi_init.c
index 423e6d8..d36d5a0 100644 index 423e6d83650f..d36d5a096401 100644
--- a/lib/sbi/sbi_init.c --- a/lib/sbi/sbi_init.c
+++ b/lib/sbi/sbi_init.c +++ b/lib/sbi/sbi_init.c
@@ -185,6 +185,7 @@ static void sbi_boot_print_hart(struct sbi_scratch *scratch, u32 hartid) @@ -185,6 +185,7 @@ static void sbi_boot_print_hart(struct sbi_scratch *scratch, u32 hartid)
@@ -1449,7 +1449,7 @@ index 423e6d8..d36d5a0 100644
hstate = sbi_hsm_hart_get_state(sbi_domain_thishart_ptr(), hartid); hstate = sbi_hsm_hart_get_state(sbi_domain_thishart_ptr(), hartid);
if (hstate < 0) if (hstate < 0)
diff --git a/lib/sbi/sbi_pmu.c b/lib/sbi/sbi_pmu.c diff --git a/lib/sbi/sbi_pmu.c b/lib/sbi/sbi_pmu.c
index c73e6ef..80367b2 100644 index c73e6ef3ff2d..80367b28005c 100644
--- a/lib/sbi/sbi_pmu.c --- a/lib/sbi/sbi_pmu.c
+++ b/lib/sbi/sbi_pmu.c +++ b/lib/sbi/sbi_pmu.c
@@ -557,8 +557,25 @@ int sbi_pmu_ctr_stop(unsigned long cbase, unsigned long cmask, @@ -557,8 +557,25 @@ int sbi_pmu_ctr_stop(unsigned long cbase, unsigned long cmask,
@@ -1499,7 +1499,7 @@ index c73e6ef..80367b2 100644
if (pmu_dev && pmu_dev->hw_counter_disable_irq) if (pmu_dev && pmu_dev->hw_counter_disable_irq)
pmu_dev->hw_counter_disable_irq(ctr_idx); pmu_dev->hw_counter_disable_irq(ctr_idx);
diff --git a/lib/sbi/sbi_scratch.c b/lib/sbi/sbi_scratch.c diff --git a/lib/sbi/sbi_scratch.c b/lib/sbi/sbi_scratch.c
index 87ef84c..44917eb 100644 index 87ef84cafd31..44917eb3fcc6 100644
--- a/lib/sbi/sbi_scratch.c --- a/lib/sbi/sbi_scratch.c
+++ b/lib/sbi/sbi_scratch.c +++ b/lib/sbi/sbi_scratch.c
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
@@ -1528,7 +1528,7 @@ index 87ef84c..44917eb 100644
goto done; goto done;
diff --git a/lib/utils/Kconfig b/lib/utils/Kconfig diff --git a/lib/utils/Kconfig b/lib/utils/Kconfig
index 5a71e75..3ac04ab 100644 index 5a71e7509ca8..3ac04ab1ab4f 100644
--- a/lib/utils/Kconfig --- a/lib/utils/Kconfig
+++ b/lib/utils/Kconfig +++ b/lib/utils/Kconfig
@@ -22,4 +22,6 @@ source "$(OPENSBI_SRC_DIR)/lib/utils/sys/Kconfig" @@ -22,4 +22,6 @@ source "$(OPENSBI_SRC_DIR)/lib/utils/sys/Kconfig"
@@ -1540,7 +1540,7 @@ index 5a71e75..3ac04ab 100644
endmenu endmenu
diff --git a/lib/utils/arm_scmi/board/spacemit/spacemit_pm.c b/lib/utils/arm_scmi/board/spacemit/spacemit_pm.c diff --git a/lib/utils/arm_scmi/board/spacemit/spacemit_pm.c b/lib/utils/arm_scmi/board/spacemit/spacemit_pm.c
new file mode 100644 new file mode 100644
index 0000000..96fc7bb index 000000000000..96fc7bb7dee3
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/board/spacemit/spacemit_pm.c +++ b/lib/utils/arm_scmi/board/spacemit/spacemit_pm.c
@@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
@@ -1587,7 +1587,7 @@ index 0000000..96fc7bb
+}; +};
diff --git a/lib/utils/arm_scmi/common/arm_pm.c b/lib/utils/arm_scmi/common/arm_pm.c diff --git a/lib/utils/arm_scmi/common/arm_pm.c b/lib/utils/arm_scmi/common/arm_pm.c
new file mode 100644 new file mode 100644
index 0000000..7fffece index 000000000000..7fffeced85ac
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/common/arm_pm.c +++ b/lib/utils/arm_scmi/common/arm_pm.c
@@ -0,0 +1,68 @@ @@ -0,0 +1,68 @@
@@ -1661,7 +1661,7 @@ index 0000000..7fffece
+} +}
diff --git a/lib/utils/arm_scmi/css/common/css_pm.c b/lib/utils/arm_scmi/css/common/css_pm.c diff --git a/lib/utils/arm_scmi/css/common/css_pm.c b/lib/utils/arm_scmi/css/common/css_pm.c
new file mode 100644 new file mode 100644
index 0000000..8d17b6b index 000000000000..8d17b6be442f
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/common/css_pm.c +++ b/lib/utils/arm_scmi/css/common/css_pm.c
@@ -0,0 +1,298 @@ @@ -0,0 +1,298 @@
@@ -1965,7 +1965,7 @@ index 0000000..8d17b6b
+}; +};
diff --git a/lib/utils/arm_scmi/css/mhu/css_mhu_doorbell.c b/lib/utils/arm_scmi/css/mhu/css_mhu_doorbell.c diff --git a/lib/utils/arm_scmi/css/mhu/css_mhu_doorbell.c b/lib/utils/arm_scmi/css/mhu/css_mhu_doorbell.c
new file mode 100644 new file mode 100644
index 0000000..887d031 index 000000000000..887d0312f3f2
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/mhu/css_mhu_doorbell.c +++ b/lib/utils/arm_scmi/css/mhu/css_mhu_doorbell.c
@@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
@@ -1998,7 +1998,7 @@ index 0000000..887d031
+} +}
diff --git a/lib/utils/arm_scmi/css/mhu/mhu.h b/lib/utils/arm_scmi/css/mhu/mhu.h diff --git a/lib/utils/arm_scmi/css/mhu/mhu.h b/lib/utils/arm_scmi/css/mhu/mhu.h
new file mode 100644 new file mode 100644
index 0000000..fb3e757 index 000000000000..fb3e7574c6c4
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/mhu/mhu.h +++ b/lib/utils/arm_scmi/css/mhu/mhu.h
@@ -0,0 +1,130 @@ @@ -0,0 +1,130 @@
@@ -2134,7 +2134,7 @@ index 0000000..fb3e757
+#endif /* INTERNAL_MHU_H */ +#endif /* INTERNAL_MHU_H */
diff --git a/lib/utils/arm_scmi/css/scmi/scmi_common.c b/lib/utils/arm_scmi/css/scmi/scmi_common.c diff --git a/lib/utils/arm_scmi/css/scmi/scmi_common.c b/lib/utils/arm_scmi/css/scmi/scmi_common.c
new file mode 100644 new file mode 100644
index 0000000..1c56da2 index 000000000000..1c56da290f10
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/scmi/scmi_common.c +++ b/lib/utils/arm_scmi/css/scmi/scmi_common.c
@@ -0,0 +1,228 @@ @@ -0,0 +1,228 @@
@@ -2368,7 +2368,7 @@ index 0000000..1c56da2
+} +}
diff --git a/lib/utils/arm_scmi/css/scmi/scmi_pwr_dmn_proto.c b/lib/utils/arm_scmi/css/scmi/scmi_pwr_dmn_proto.c diff --git a/lib/utils/arm_scmi/css/scmi/scmi_pwr_dmn_proto.c b/lib/utils/arm_scmi/css/scmi/scmi_pwr_dmn_proto.c
new file mode 100644 new file mode 100644
index 0000000..5a4f734 index 000000000000..5a4f7347ceff
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/scmi/scmi_pwr_dmn_proto.c +++ b/lib/utils/arm_scmi/css/scmi/scmi_pwr_dmn_proto.c
@@ -0,0 +1,102 @@ @@ -0,0 +1,102 @@
@@ -2476,7 +2476,7 @@ index 0000000..5a4f734
+} +}
diff --git a/lib/utils/arm_scmi/css/scmi/scmi_sys_pwr_proto.c b/lib/utils/arm_scmi/css/scmi/scmi_sys_pwr_proto.c diff --git a/lib/utils/arm_scmi/css/scmi/scmi_sys_pwr_proto.c b/lib/utils/arm_scmi/css/scmi/scmi_sys_pwr_proto.c
new file mode 100644 new file mode 100644
index 0000000..fc7c30e index 000000000000..fc7c30e50c6d
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/scmi/scmi_sys_pwr_proto.c +++ b/lib/utils/arm_scmi/css/scmi/scmi_sys_pwr_proto.c
@@ -0,0 +1,90 @@ @@ -0,0 +1,90 @@
@@ -2572,7 +2572,7 @@ index 0000000..fc7c30e
+} +}
diff --git a/lib/utils/arm_scmi/css/scp/css_pm_scmi.c b/lib/utils/arm_scmi/css/scp/css_pm_scmi.c diff --git a/lib/utils/arm_scmi/css/scp/css_pm_scmi.c b/lib/utils/arm_scmi/css/scp/css_pm_scmi.c
new file mode 100644 new file mode 100644
index 0000000..a88eb9f index 000000000000..a88eb9f4ce0e
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/css/scp/css_pm_scmi.c +++ b/lib/utils/arm_scmi/css/scp/css_pm_scmi.c
@@ -0,0 +1,418 @@ @@ -0,0 +1,418 @@
@@ -2996,7 +2996,7 @@ index 0000000..a88eb9f
+} +}
diff --git a/lib/utils/arm_scmi/objects.mk b/lib/utils/arm_scmi/objects.mk diff --git a/lib/utils/arm_scmi/objects.mk b/lib/utils/arm_scmi/objects.mk
new file mode 100644 new file mode 100644
index 0000000..532e070 index 000000000000..532e0709bdee
--- /dev/null --- /dev/null
+++ b/lib/utils/arm_scmi/objects.mk +++ b/lib/utils/arm_scmi/objects.mk
@@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
@@ -3026,7 +3026,7 @@ index 0000000..532e070
+libsbiutils-objs-$(CONFIG_ARM_SCMI_PROTOCOL_SUPPORT) += arm_scmi/board/spacemit/spacemit_pm.o +libsbiutils-objs-$(CONFIG_ARM_SCMI_PROTOCOL_SUPPORT) += arm_scmi/board/spacemit/spacemit_pm.o
diff --git a/lib/utils/cci/bus-cci.c b/lib/utils/cci/bus-cci.c diff --git a/lib/utils/cci/bus-cci.c b/lib/utils/cci/bus-cci.c
new file mode 100644 new file mode 100644
index 0000000..7fe11d0 index 000000000000..7fe11d0d28c1
--- /dev/null --- /dev/null
+++ b/lib/utils/cci/bus-cci.c +++ b/lib/utils/cci/bus-cci.c
@@ -0,0 +1,168 @@ @@ -0,0 +1,168 @@
@@ -3200,7 +3200,7 @@ index 0000000..7fe11d0
+ +
diff --git a/lib/utils/cci/objects.mk b/lib/utils/cci/objects.mk diff --git a/lib/utils/cci/objects.mk b/lib/utils/cci/objects.mk
new file mode 100644 new file mode 100644
index 0000000..08aac67 index 000000000000..08aac675e6da
--- /dev/null --- /dev/null
+++ b/lib/utils/cci/objects.mk +++ b/lib/utils/cci/objects.mk
@@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
@@ -3212,7 +3212,7 @@ index 0000000..08aac67
+ +
+libsbiutils-objs-y += cci/bus-cci.o +libsbiutils-objs-y += cci/bus-cci.o
diff --git a/lib/utils/ipi/aclint_mswi.c b/lib/utils/ipi/aclint_mswi.c diff --git a/lib/utils/ipi/aclint_mswi.c b/lib/utils/ipi/aclint_mswi.c
index f47b3bc..6342030 100644 index f47b3bcbbb44..63420302b1d7 100644
--- a/lib/utils/ipi/aclint_mswi.c --- a/lib/utils/ipi/aclint_mswi.c
+++ b/lib/utils/ipi/aclint_mswi.c +++ b/lib/utils/ipi/aclint_mswi.c
@@ -15,6 +15,7 @@ @@ -15,6 +15,7 @@
@@ -3241,7 +3241,7 @@ index f47b3bc..6342030 100644
return SBI_ENOENT; return SBI_ENOENT;
mswi_set_hart_data_ptr(scratch, mswi); mswi_set_hart_data_ptr(scratch, mswi);
diff --git a/lib/utils/irqchip/fdt_irqchip_plic.c b/lib/utils/irqchip/fdt_irqchip_plic.c diff --git a/lib/utils/irqchip/fdt_irqchip_plic.c b/lib/utils/irqchip/fdt_irqchip_plic.c
index 829c5ee..0a2d61b 100644 index 829c5ee20341..0a2d61b0beca 100644
--- a/lib/utils/irqchip/fdt_irqchip_plic.c --- a/lib/utils/irqchip/fdt_irqchip_plic.c
+++ b/lib/utils/irqchip/fdt_irqchip_plic.c +++ b/lib/utils/irqchip/fdt_irqchip_plic.c
@@ -85,6 +85,11 @@ static int irqchip_plic_warm_init(void) @@ -85,6 +85,11 @@ static int irqchip_plic_warm_init(void)
@@ -3258,7 +3258,7 @@ index 829c5ee..0a2d61b 100644
{ {
diff --git a/lib/utils/psci/Kconfig b/lib/utils/psci/Kconfig diff --git a/lib/utils/psci/Kconfig b/lib/utils/psci/Kconfig
new file mode 100644 new file mode 100644
index 0000000..a009597 index 000000000000..a009597ba053
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/Kconfig +++ b/lib/utils/psci/Kconfig
@@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
@@ -3285,7 +3285,7 @@ index 0000000..a009597
+endmenu +endmenu
diff --git a/lib/utils/psci/objects.mk b/lib/utils/psci/objects.mk diff --git a/lib/utils/psci/objects.mk b/lib/utils/psci/objects.mk
new file mode 100644 new file mode 100644
index 0000000..6170680 index 000000000000..617068038db8
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/objects.mk +++ b/lib/utils/psci/objects.mk
@@ -0,0 +1,30 @@ @@ -0,0 +1,30 @@
@@ -3321,7 +3321,7 @@ index 0000000..6170680
+endif +endif
diff --git a/lib/utils/psci/psci_common.c b/lib/utils/psci/psci_common.c diff --git a/lib/utils/psci/psci_common.c b/lib/utils/psci/psci_common.c
new file mode 100644 new file mode 100644
index 0000000..f4b4bee index 000000000000..f4b4bee03ec4
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_common.c +++ b/lib/utils/psci/psci_common.c
@@ -0,0 +1,872 @@ @@ -0,0 +1,872 @@
@@ -4199,7 +4199,7 @@ index 0000000..f4b4bee
+} +}
diff --git a/lib/utils/psci/psci_main.c b/lib/utils/psci/psci_main.c diff --git a/lib/utils/psci/psci_main.c b/lib/utils/psci/psci_main.c
new file mode 100644 new file mode 100644
index 0000000..f2441f5 index 000000000000..f2441f57e16e
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_main.c +++ b/lib/utils/psci/psci_main.c
@@ -0,0 +1,188 @@ @@ -0,0 +1,188 @@
@@ -4393,7 +4393,7 @@ index 0000000..f2441f5
+ +
diff --git a/lib/utils/psci/psci_off.c b/lib/utils/psci/psci_off.c diff --git a/lib/utils/psci/psci_off.c b/lib/utils/psci/psci_off.c
new file mode 100644 new file mode 100644
index 0000000..e8b5be1 index 000000000000..e8b5be18dedb
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_off.c +++ b/lib/utils/psci/psci_off.c
@@ -0,0 +1,173 @@ @@ -0,0 +1,173 @@
@@ -4572,7 +4572,7 @@ index 0000000..e8b5be1
+} +}
diff --git a/lib/utils/psci/psci_on.c b/lib/utils/psci/psci_on.c diff --git a/lib/utils/psci/psci_on.c b/lib/utils/psci/psci_on.c
new file mode 100644 new file mode 100644
index 0000000..2dd4ff0 index 000000000000..2dd4ff0d50a7
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_on.c +++ b/lib/utils/psci/psci_on.c
@@ -0,0 +1,246 @@ @@ -0,0 +1,246 @@
@@ -4824,7 +4824,7 @@ index 0000000..2dd4ff0
+} +}
diff --git a/lib/utils/psci/psci_private.h b/lib/utils/psci/psci_private.h diff --git a/lib/utils/psci/psci_private.h b/lib/utils/psci/psci_private.h
new file mode 100644 new file mode 100644
index 0000000..d1cd2ba index 000000000000..d1cd2ba84742
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_private.h +++ b/lib/utils/psci/psci_private.h
@@ -0,0 +1,198 @@ @@ -0,0 +1,198 @@
@@ -5028,7 +5028,7 @@ index 0000000..d1cd2ba
+#endif +#endif
diff --git a/lib/utils/psci/psci_setup.c b/lib/utils/psci/psci_setup.c diff --git a/lib/utils/psci/psci_setup.c b/lib/utils/psci/psci_setup.c
new file mode 100644 new file mode 100644
index 0000000..ba52c20 index 000000000000..ba52c20a8c99
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_setup.c +++ b/lib/utils/psci/psci_setup.c
@@ -0,0 +1,242 @@ @@ -0,0 +1,242 @@
@@ -5276,7 +5276,7 @@ index 0000000..ba52c20
+} +}
diff --git a/lib/utils/psci/psci_suspend.c b/lib/utils/psci/psci_suspend.c diff --git a/lib/utils/psci/psci_suspend.c b/lib/utils/psci/psci_suspend.c
new file mode 100644 new file mode 100644
index 0000000..1466acf index 000000000000..1466acfc77b6
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/psci_suspend.c +++ b/lib/utils/psci/psci_suspend.c
@@ -0,0 +1,298 @@ @@ -0,0 +1,298 @@
@@ -5580,7 +5580,7 @@ index 0000000..1466acf
+} +}
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
new file mode 100644 new file mode 100644
index 0000000..9976b57 index 000000000000..9976b5774039
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c +++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -0,0 +1,345 @@ @@ -0,0 +1,345 @@
@@ -5931,7 +5931,7 @@ index 0000000..9976b57
+} +}
diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c
new file mode 100644 new file mode 100644
index 0000000..464a56a index 000000000000..464a56a277ef
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/spacemit/plat/plat_pm.c +++ b/lib/utils/psci/spacemit/plat/plat_pm.c
@@ -0,0 +1,258 @@ @@ -0,0 +1,258 @@
@@ -6195,7 +6195,7 @@ index 0000000..464a56a
+} +}
diff --git a/lib/utils/psci/spacemit/plat/underly_implement.h b/lib/utils/psci/spacemit/plat/underly_implement.h diff --git a/lib/utils/psci/spacemit/plat/underly_implement.h b/lib/utils/psci/spacemit/plat/underly_implement.h
new file mode 100644 new file mode 100644
index 0000000..dd6c972 index 000000000000..dd6c972325bb
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/spacemit/plat/underly_implement.h +++ b/lib/utils/psci/spacemit/plat/underly_implement.h
@@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
@@ -6215,7 +6215,7 @@ index 0000000..dd6c972
+#endif +#endif
diff --git a/lib/utils/psci/spacemit/spacemit_topology.c b/lib/utils/psci/spacemit/spacemit_topology.c diff --git a/lib/utils/psci/spacemit/spacemit_topology.c b/lib/utils/psci/spacemit/spacemit_topology.c
new file mode 100644 new file mode 100644
index 0000000..de327d8 index 000000000000..de327d833377
--- /dev/null --- /dev/null
+++ b/lib/utils/psci/spacemit/spacemit_topology.c +++ b/lib/utils/psci/spacemit/spacemit_topology.c
@@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
@@ -6246,7 +6246,7 @@ index 0000000..de327d8
+ return plat_power_domain_tree_desc; + return plat_power_domain_tree_desc;
+} +}
diff --git a/lib/utils/serial/uart8250.c b/lib/utils/serial/uart8250.c diff --git a/lib/utils/serial/uart8250.c b/lib/utils/serial/uart8250.c
index 99bf1bf..87a6bc6 100644 index 99bf1bf733f2..87a6bc607cac 100644
--- a/lib/utils/serial/uart8250.c --- a/lib/utils/serial/uart8250.c
+++ b/lib/utils/serial/uart8250.c +++ b/lib/utils/serial/uart8250.c
@@ -131,6 +131,11 @@ int uart8250_init(unsigned long base, u32 in_freq, u32 baudrate, u32 reg_shift, @@ -131,6 +131,11 @@ int uart8250_init(unsigned long base, u32 in_freq, u32 baudrate, u32 reg_shift,
@@ -6262,7 +6262,7 @@ index 99bf1bf..87a6bc6 100644
return 0; return 0;
diff --git a/lib/utils/timer/aclint_mtimer.c b/lib/utils/timer/aclint_mtimer.c diff --git a/lib/utils/timer/aclint_mtimer.c b/lib/utils/timer/aclint_mtimer.c
index 13af5d8..a9dbea2 100644 index 13af5d8232d3..a9dbea2526a6 100644
--- a/lib/utils/timer/aclint_mtimer.c --- a/lib/utils/timer/aclint_mtimer.c
+++ b/lib/utils/timer/aclint_mtimer.c +++ b/lib/utils/timer/aclint_mtimer.c
@@ -15,6 +15,7 @@ @@ -15,6 +15,7 @@
@@ -6291,7 +6291,7 @@ index 13af5d8..a9dbea2 100644
return SBI_ENOENT; return SBI_ENOENT;
mtimer_set_hart_data_ptr(scratch, mt); mtimer_set_hart_data_ptr(scratch, mt);
diff --git a/platform/generic/Kconfig b/platform/generic/Kconfig diff --git a/platform/generic/Kconfig b/platform/generic/Kconfig
index 72768ed..350e41e 100644 index 72768edeb921..350e41e58325 100644
--- a/platform/generic/Kconfig --- a/platform/generic/Kconfig
+++ b/platform/generic/Kconfig +++ b/platform/generic/Kconfig
@@ -52,6 +52,42 @@ config PLATFORM_STARFIVE_JH7110 @@ -52,6 +52,42 @@ config PLATFORM_STARFIVE_JH7110
@@ -6338,7 +6338,7 @@ index 72768ed..350e41e 100644
endif endif
diff --git a/platform/generic/configs/defconfig b/platform/generic/configs/defconfig diff --git a/platform/generic/configs/defconfig b/platform/generic/configs/defconfig
index ee0df38..6366769 100644 index ee0df38a22ee..6366769ef59a 100644
--- a/platform/generic/configs/defconfig --- a/platform/generic/configs/defconfig
+++ b/platform/generic/configs/defconfig +++ b/platform/generic/configs/defconfig
@@ -4,6 +4,7 @@ CONFIG_PLATFORM_RENESAS_RZFIVE=y @@ -4,6 +4,7 @@ CONFIG_PLATFORM_RENESAS_RZFIVE=y
@@ -6357,7 +6357,7 @@ index ee0df38..6366769 100644
+CONFIG_SERIAL_SEMIHOSTING=n +CONFIG_SERIAL_SEMIHOSTING=n
diff --git a/platform/generic/configs/k1-x_fpga_1x4_defconfig b/platform/generic/configs/k1-x_fpga_1x4_defconfig diff --git a/platform/generic/configs/k1-x_fpga_1x4_defconfig b/platform/generic/configs/k1-x_fpga_1x4_defconfig
new file mode 100644 new file mode 100644
index 0000000..c9419d6 index 000000000000..c9419d6336fc
--- /dev/null --- /dev/null
+++ b/platform/generic/configs/k1-x_fpga_1x4_defconfig +++ b/platform/generic/configs/k1-x_fpga_1x4_defconfig
@@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
@@ -6379,7 +6379,7 @@ index 0000000..c9419d6
+CONFIG_ARM_NON_SCMI_SUPPORT=y +CONFIG_ARM_NON_SCMI_SUPPORT=y
diff --git a/platform/generic/configs/k1-x_fpga_2x2_defconfig b/platform/generic/configs/k1-x_fpga_2x2_defconfig diff --git a/platform/generic/configs/k1-x_fpga_2x2_defconfig b/platform/generic/configs/k1-x_fpga_2x2_defconfig
new file mode 100644 new file mode 100644
index 0000000..c9419d6 index 000000000000..c9419d6336fc
--- /dev/null --- /dev/null
+++ b/platform/generic/configs/k1-x_fpga_2x2_defconfig +++ b/platform/generic/configs/k1-x_fpga_2x2_defconfig
@@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
@@ -6401,7 +6401,7 @@ index 0000000..c9419d6
+CONFIG_ARM_NON_SCMI_SUPPORT=y +CONFIG_ARM_NON_SCMI_SUPPORT=y
diff --git a/platform/generic/configs/k1-x_fpga_defconfig b/platform/generic/configs/k1-x_fpga_defconfig diff --git a/platform/generic/configs/k1-x_fpga_defconfig b/platform/generic/configs/k1-x_fpga_defconfig
new file mode 100644 new file mode 100644
index 0000000..c9419d6 index 000000000000..c9419d6336fc
--- /dev/null --- /dev/null
+++ b/platform/generic/configs/k1-x_fpga_defconfig +++ b/platform/generic/configs/k1-x_fpga_defconfig
@@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
@@ -6423,7 +6423,7 @@ index 0000000..c9419d6
+CONFIG_ARM_NON_SCMI_SUPPORT=y +CONFIG_ARM_NON_SCMI_SUPPORT=y
diff --git a/platform/generic/configs/k1_defconfig b/platform/generic/configs/k1_defconfig diff --git a/platform/generic/configs/k1_defconfig b/platform/generic/configs/k1_defconfig
new file mode 100644 new file mode 100644
index 0000000..08f1703 index 000000000000..08f17036aa91
--- /dev/null --- /dev/null
+++ b/platform/generic/configs/k1_defconfig +++ b/platform/generic/configs/k1_defconfig
@@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
@@ -6445,7 +6445,7 @@ index 0000000..08f1703
+CONFIG_ARM_NON_SCMI_SUPPORT=y +CONFIG_ARM_NON_SCMI_SUPPORT=y
diff --git a/platform/generic/include/spacemit/k1x/core_common.h b/platform/generic/include/spacemit/k1x/core_common.h diff --git a/platform/generic/include/spacemit/k1x/core_common.h b/platform/generic/include/spacemit/k1x/core_common.h
new file mode 100644 new file mode 100644
index 0000000..4bee5e1 index 000000000000..4bee5e11b38b
--- /dev/null --- /dev/null
+++ b/platform/generic/include/spacemit/k1x/core_common.h +++ b/platform/generic/include/spacemit/k1x/core_common.h
@@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
@@ -6464,7 +6464,7 @@ index 0000000..4bee5e1
+#endif /* __K1X_CORE_COMMON_H__ */ +#endif /* __K1X_CORE_COMMON_H__ */
diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h
new file mode 100644 new file mode 100644
index 0000000..b951105 index 000000000000..b951105e0c04
--- /dev/null --- /dev/null
+++ b/platform/generic/include/spacemit/k1x/k1x_evb.h +++ b/platform/generic/include/spacemit/k1x/k1x_evb.h
@@ -0,0 +1,72 @@ @@ -0,0 +1,72 @@
@@ -6542,7 +6542,7 @@ index 0000000..b951105
+#endif /* __K1X_EVB_CONFIG_H__ */ +#endif /* __K1X_EVB_CONFIG_H__ */
diff --git a/platform/generic/include/spacemit/k1x/k1x_fpga.h b/platform/generic/include/spacemit/k1x/k1x_fpga.h diff --git a/platform/generic/include/spacemit/k1x/k1x_fpga.h b/platform/generic/include/spacemit/k1x/k1x_fpga.h
new file mode 100644 new file mode 100644
index 0000000..4748c86 index 000000000000..4748c86b69c2
--- /dev/null --- /dev/null
+++ b/platform/generic/include/spacemit/k1x/k1x_fpga.h +++ b/platform/generic/include/spacemit/k1x/k1x_fpga.h
@@ -0,0 +1,73 @@ @@ -0,0 +1,73 @@
@@ -6621,7 +6621,7 @@ index 0000000..4748c86
+#endif /* __K1X_FPGA_CONFIG_H__ */ +#endif /* __K1X_FPGA_CONFIG_H__ */
diff --git a/platform/generic/include/spacemit/spacemit_config.h b/platform/generic/include/spacemit/spacemit_config.h diff --git a/platform/generic/include/spacemit/spacemit_config.h b/platform/generic/include/spacemit/spacemit_config.h
new file mode 100644 new file mode 100644
index 0000000..d48869c index 000000000000..d48869cc2ae5
--- /dev/null --- /dev/null
+++ b/platform/generic/include/spacemit/spacemit_config.h +++ b/platform/generic/include/spacemit/spacemit_config.h
@@ -0,0 +1,30 @@ @@ -0,0 +1,30 @@
@@ -6656,7 +6656,7 @@ index 0000000..d48869c
+ +
+#endif /* __SPACEMIT_CONFIG_H__ */ +#endif /* __SPACEMIT_CONFIG_H__ */
diff --git a/platform/generic/objects.mk b/platform/generic/objects.mk diff --git a/platform/generic/objects.mk b/platform/generic/objects.mk
index 136853e..f3418ef 100644 index 136853eeb1d8..f3418efeb011 100644
--- a/platform/generic/objects.mk --- a/platform/generic/objects.mk
+++ b/platform/generic/objects.mk +++ b/platform/generic/objects.mk
@@ -22,7 +22,7 @@ platform-objs-y += platform.o @@ -22,7 +22,7 @@ platform-objs-y += platform.o
@@ -6670,7 +6670,7 @@ index 136853e..f3418ef 100644
ifeq ($(PLATFORM_RISCV_XLEN), 32) ifeq ($(PLATFORM_RISCV_XLEN), 32)
diff --git a/platform/generic/spacemit/fw_dynamic.its b/platform/generic/spacemit/fw_dynamic.its diff --git a/platform/generic/spacemit/fw_dynamic.its b/platform/generic/spacemit/fw_dynamic.its
new file mode 100755 new file mode 100755
index 0000000..f1159d4 index 000000000000..f1159d4cfe0a
--- /dev/null --- /dev/null
+++ b/platform/generic/spacemit/fw_dynamic.its +++ b/platform/generic/spacemit/fw_dynamic.its
@@ -0,0 +1,31 @@ @@ -0,0 +1,31 @@
@@ -6707,7 +6707,7 @@ index 0000000..f1159d4
+}; +};
diff --git a/platform/generic/spacemit/objects.mk b/platform/generic/spacemit/objects.mk diff --git a/platform/generic/spacemit/objects.mk b/platform/generic/spacemit/objects.mk
new file mode 100644 new file mode 100644
index 0000000..92ef7eb index 000000000000..92ef7eb26c92
--- /dev/null --- /dev/null
+++ b/platform/generic/spacemit/objects.mk +++ b/platform/generic/spacemit/objects.mk
@@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
@@ -6720,7 +6720,7 @@ index 0000000..92ef7eb
+firmware-its-$(CONFIG_PLATFORM_SPACEMIT_K1PRO)$(CONFIG_PLATFORM_SPACEMIT_K1X) += spacemit/fw_dynamic.its +firmware-its-$(CONFIG_PLATFORM_SPACEMIT_K1PRO)$(CONFIG_PLATFORM_SPACEMIT_K1X) += spacemit/fw_dynamic.its
diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c
new file mode 100644 new file mode 100644
index 0000000..8664e05 index 000000000000..8664e05e7910
--- /dev/null --- /dev/null
+++ b/platform/generic/spacemit/spacemit_k1.c +++ b/platform/generic/spacemit/spacemit_k1.c
@@ -0,0 +1,194 @@ @@ -0,0 +1,194 @@
@@ -6918,3 +6918,6 @@ index 0000000..8664e05
+ .final_init = spacemit_k1_final_init, + .final_init = spacemit_k1_final_init,
+ .cold_boot_allowed = spacemit_cold_boot_allowed, + .cold_boot_allowed = spacemit_cold_boot_allowed,
+}; +};
--
2.35.3

View File

@@ -1,7 +1,7 @@
From 7aad08218f25d4eed674bc172995f38291ebfb5e Mon Sep 17 00:00:00 2001 From 7aad08218f25d4eed674bc172995f38291ebfb5e Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com> From: James Deng <james.deng@spacemit.com>
Date: Mon, 15 Apr 2024 11:42:57 +0800 Date: Mon, 15 Apr 2024 11:42:57 +0800
Subject: [PATCH] Update for v1.0beta3.1 Subject: Update for v1.0beta3.1
--- ---
debian/.gitignore | 1 + debian/.gitignore | 1 +
@@ -47,14 +47,14 @@ Subject: [PATCH] Update for v1.0beta3.1
diff --git a/debian/.gitignore b/debian/.gitignore diff --git a/debian/.gitignore b/debian/.gitignore
new file mode 100644 new file mode 100644
index 0000000..6d10dce index 000000000000..6d10dce740f7
--- /dev/null --- /dev/null
+++ b/debian/.gitignore +++ b/debian/.gitignore
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+changelog +changelog
diff --git a/debian/README.source b/debian/README.source diff --git a/debian/README.source b/debian/README.source
new file mode 100644 new file mode 100644
index 0000000..bd33e14 index 000000000000..bd33e1488fcf
--- /dev/null --- /dev/null
+++ b/debian/README.source +++ b/debian/README.source
@@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
@@ -67,7 +67,7 @@ index 0000000..bd33e14
+ -- Vagrant Cascadian <vagrant@debian.org>, Thu, 30 May 2019 15:02:49 -0700 + -- Vagrant Cascadian <vagrant@debian.org>, Thu, 30 May 2019 15:02:49 -0700
diff --git a/debian/bin/git-snapshot b/debian/bin/git-snapshot diff --git a/debian/bin/git-snapshot b/debian/bin/git-snapshot
new file mode 100755 new file mode 100755
index 0000000..6db5eb2 index 000000000000..6db5eb241d78
--- /dev/null --- /dev/null
+++ b/debian/bin/git-snapshot +++ b/debian/bin/git-snapshot
@@ -0,0 +1,18 @@ @@ -0,0 +1,18 @@
@@ -91,7 +91,7 @@ index 0000000..6db5eb2
+ echo "successfully created: ${output}" + echo "successfully created: ${output}"
diff --git a/debian/control b/debian/control diff --git a/debian/control b/debian/control
new file mode 100644 new file mode 100644
index 0000000..6c4a174 index 000000000000..6c4a1747b5f3
--- /dev/null --- /dev/null
+++ b/debian/control +++ b/debian/control
@@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
@@ -121,7 +121,7 @@ index 0000000..6c4a174
+ generic + generic
diff --git a/debian/copyright b/debian/copyright diff --git a/debian/copyright b/debian/copyright
new file mode 100644 new file mode 100644
index 0000000..cfbcf75 index 000000000000..cfbcf75e0649
--- /dev/null --- /dev/null
+++ b/debian/copyright +++ b/debian/copyright
@@ -0,0 +1,177 @@ @@ -0,0 +1,177 @@
@@ -304,7 +304,7 @@ index 0000000..cfbcf75
+ copies. + copies.
diff --git a/debian/opensbi-spacemit.docs b/debian/opensbi-spacemit.docs diff --git a/debian/opensbi-spacemit.docs b/debian/opensbi-spacemit.docs
new file mode 100644 new file mode 100644
index 0000000..85f6f20 index 000000000000..85f6f20d235f
--- /dev/null --- /dev/null
+++ b/debian/opensbi-spacemit.docs +++ b/debian/opensbi-spacemit.docs
@@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
@@ -312,14 +312,14 @@ index 0000000..85f6f20
+CONTRIBUTORS.md +CONTRIBUTORS.md
diff --git a/debian/opensbi-spacemit.install b/debian/opensbi-spacemit.install diff --git a/debian/opensbi-spacemit.install b/debian/opensbi-spacemit.install
new file mode 100644 new file mode 100644
index 0000000..d1897d5 index 000000000000..d1897d557a11
--- /dev/null --- /dev/null
+++ b/debian/opensbi-spacemit.install +++ b/debian/opensbi-spacemit.install
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+build/platform/generic/firmware/fw_*.itb /usr/lib/riscv64-linux-gnu/opensbi/generic/ +build/platform/generic/firmware/fw_*.itb /usr/lib/riscv64-linux-gnu/opensbi/generic/
diff --git a/debian/opensbi-spacemit.lintian-overrides b/debian/opensbi-spacemit.lintian-overrides diff --git a/debian/opensbi-spacemit.lintian-overrides b/debian/opensbi-spacemit.lintian-overrides
new file mode 100644 new file mode 100644
index 0000000..8b6168d index 000000000000..8b6168d15e45
--- /dev/null --- /dev/null
+++ b/debian/opensbi-spacemit.lintian-overrides +++ b/debian/opensbi-spacemit.lintian-overrides
@@ -0,0 +1,9 @@ @@ -0,0 +1,9 @@
@@ -334,7 +334,7 @@ index 0000000..8b6168d
+opensbi binary: triplet-dir-and-architecture-mismatch is for riscv64 instead of all *usr/lib/riscv64-linux-gnu/* +opensbi binary: triplet-dir-and-architecture-mismatch is for riscv64 instead of all *usr/lib/riscv64-linux-gnu/*
diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst
new file mode 100755 new file mode 100755
index 0000000..1f6feca index 000000000000..1f6feca80674
--- /dev/null --- /dev/null
+++ b/debian/opensbi-spacemit.postinst +++ b/debian/opensbi-spacemit.postinst
@@ -0,0 +1,45 @@ @@ -0,0 +1,45 @@
@@ -385,7 +385,7 @@ index 0000000..1f6feca
+exit 0 +exit 0
diff --git a/debian/rules b/debian/rules diff --git a/debian/rules b/debian/rules
new file mode 100755 new file mode 100755
index 0000000..ab9cc10 index 000000000000..ab9cc10c406c
--- /dev/null --- /dev/null
+++ b/debian/rules +++ b/debian/rules
@@ -0,0 +1,27 @@ @@ -0,0 +1,27 @@
@@ -418,14 +418,14 @@ index 0000000..ab9cc10
+ dh_install + dh_install
diff --git a/debian/source/format b/debian/source/format diff --git a/debian/source/format b/debian/source/format
new file mode 100644 new file mode 100644
index 0000000..163aaf8 index 000000000000..163aaf8d82b6
--- /dev/null --- /dev/null
+++ b/debian/source/format +++ b/debian/source/format
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+3.0 (quilt) +3.0 (quilt)
diff --git a/debian/upstream/metadata b/debian/upstream/metadata diff --git a/debian/upstream/metadata b/debian/upstream/metadata
new file mode 100644 new file mode 100644
index 0000000..f716ba7 index 000000000000..f716ba77edcd
--- /dev/null --- /dev/null
+++ b/debian/upstream/metadata +++ b/debian/upstream/metadata
@@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
@@ -436,7 +436,7 @@ index 0000000..f716ba7
+Repository-Browse: https://github.com/riscv-software-src/opensbi +Repository-Browse: https://github.com/riscv-software-src/opensbi
diff --git a/debian/watch b/debian/watch diff --git a/debian/watch b/debian/watch
new file mode 100644 new file mode 100644
index 0000000..508d476 index 000000000000..508d476a75c0
--- /dev/null --- /dev/null
+++ b/debian/watch +++ b/debian/watch
@@ -0,0 +1,3 @@ @@ -0,0 +1,3 @@
@@ -444,7 +444,7 @@ index 0000000..508d476
+opts=filenamemangle=s/\/(.*)v/@PACKAGE@-/ \ +opts=filenamemangle=s/\/(.*)v/@PACKAGE@-/ \
+ https://github.com/riscv-software-src/@PACKAGE@/tags .*/v@ANY_VERSION@.tar.gz + https://github.com/riscv-software-src/@PACKAGE@/tags .*/v@ANY_VERSION@.tar.gz
diff --git a/include/sbi/riscv_encoding.h b/include/sbi/riscv_encoding.h diff --git a/include/sbi/riscv_encoding.h b/include/sbi/riscv_encoding.h
index 54e09d4..5abb8e4 100644 index 54e09d44528b..5abb8e4c776b 100644
--- a/include/sbi/riscv_encoding.h --- a/include/sbi/riscv_encoding.h
+++ b/include/sbi/riscv_encoding.h +++ b/include/sbi/riscv_encoding.h
@@ -709,6 +709,7 @@ @@ -709,6 +709,7 @@
@@ -456,7 +456,7 @@ index 54e09d4..5abb8e4 100644
/* ===== Trap/Exception Causes ===== */ /* ===== Trap/Exception Causes ===== */
diff --git a/include/sbi_utils/irqchip/fdt_irqchip_plic.h b/include/sbi_utils/irqchip/fdt_irqchip_plic.h diff --git a/include/sbi_utils/irqchip/fdt_irqchip_plic.h b/include/sbi_utils/irqchip/fdt_irqchip_plic.h
index b892b0b..df645dd 100644 index b892b0bc70f8..df645dd00ee3 100644
--- a/include/sbi_utils/irqchip/fdt_irqchip_plic.h --- a/include/sbi_utils/irqchip/fdt_irqchip_plic.h
+++ b/include/sbi_utils/irqchip/fdt_irqchip_plic.h +++ b/include/sbi_utils/irqchip/fdt_irqchip_plic.h
@@ -28,8 +28,6 @@ void fdt_plic_context_save(bool smode, u32 *enable, u32 *threshold, u32 num); @@ -28,8 +28,6 @@ void fdt_plic_context_save(bool smode, u32 *enable, u32 *threshold, u32 num);
@@ -469,7 +469,7 @@ index b892b0b..df645dd 100644
#endif #endif
diff --git a/lib/sbi/sbi_console.c b/lib/sbi/sbi_console.c diff --git a/lib/sbi/sbi_console.c b/lib/sbi/sbi_console.c
index 168dffd..9d917ec 100644 index 168dffd06429..9d917ec78927 100644
--- a/lib/sbi/sbi_console.c --- a/lib/sbi/sbi_console.c
+++ b/lib/sbi/sbi_console.c +++ b/lib/sbi/sbi_console.c
@@ -422,6 +422,7 @@ int sbi_snprintf(char *out, u32 out_sz, const char *format, ...) @@ -422,6 +422,7 @@ int sbi_snprintf(char *out, u32 out_sz, const char *format, ...)
@@ -494,7 +494,7 @@ index 168dffd..9d917ec 100644
int sbi_dprintf(const char *format, ...) int sbi_dprintf(const char *format, ...)
{ {
diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c
index 3a3265d..a3f752d 100644 index 3a3265df7f20..a3f752d27105 100644
--- a/lib/sbi/sbi_hart.c --- a/lib/sbi/sbi_hart.c
+++ b/lib/sbi/sbi_hart.c +++ b/lib/sbi/sbi_hart.c
@@ -819,6 +819,12 @@ sbi_hart_switch_mode(unsigned long arg0, unsigned long arg1, @@ -819,6 +819,12 @@ sbi_hart_switch_mode(unsigned long arg0, unsigned long arg1,
@@ -511,7 +511,7 @@ index 3a3265d..a3f752d 100644
register unsigned long a0 asm("a0") = arg0; register unsigned long a0 asm("a0") = arg0;
register unsigned long a1 asm("a1") = arg1; register unsigned long a1 asm("a1") = arg1;
diff --git a/lib/utils/Kconfig b/lib/utils/Kconfig diff --git a/lib/utils/Kconfig b/lib/utils/Kconfig
index 3ac04ab..dab9bf9 100644 index 3ac04ab1ab4f..dab9bf956598 100644
--- a/lib/utils/Kconfig --- a/lib/utils/Kconfig
+++ b/lib/utils/Kconfig +++ b/lib/utils/Kconfig
@@ -24,4 +24,11 @@ source "$(OPENSBI_SRC_DIR)/lib/utils/timer/Kconfig" @@ -24,4 +24,11 @@ source "$(OPENSBI_SRC_DIR)/lib/utils/timer/Kconfig"
@@ -527,7 +527,7 @@ index 3ac04ab..dab9bf9 100644
+ +
endmenu endmenu
diff --git a/lib/utils/arm_scmi/css/common/css_pm.c b/lib/utils/arm_scmi/css/common/css_pm.c diff --git a/lib/utils/arm_scmi/css/common/css_pm.c b/lib/utils/arm_scmi/css/common/css_pm.c
index 8d17b6b..83908c7 100644 index 8d17b6be442f..83908c747d8d 100644
--- a/lib/utils/arm_scmi/css/common/css_pm.c --- a/lib/utils/arm_scmi/css/common/css_pm.c
+++ b/lib/utils/arm_scmi/css/common/css_pm.c +++ b/lib/utils/arm_scmi/css/common/css_pm.c
@@ -114,8 +114,7 @@ static void css_power_down_common(const psci_power_state_t *target_state) @@ -114,8 +114,7 @@ static void css_power_down_common(const psci_power_state_t *target_state)
@@ -541,7 +541,7 @@ index 8d17b6b..83908c7 100644
csr_clear(CSR_MIP, MIP_MEIP); csr_clear(CSR_MIP, MIP_MEIP);
csr_clear(CSR_MIP, MIP_SEIP); csr_clear(CSR_MIP, MIP_SEIP);
diff --git a/lib/utils/irqchip/fdt_irqchip_plic.c b/lib/utils/irqchip/fdt_irqchip_plic.c diff --git a/lib/utils/irqchip/fdt_irqchip_plic.c b/lib/utils/irqchip/fdt_irqchip_plic.c
index 0a2d61b..829c5ee 100644 index 0a2d61b0beca..829c5ee20341 100644
--- a/lib/utils/irqchip/fdt_irqchip_plic.c --- a/lib/utils/irqchip/fdt_irqchip_plic.c
+++ b/lib/utils/irqchip/fdt_irqchip_plic.c +++ b/lib/utils/irqchip/fdt_irqchip_plic.c
@@ -85,11 +85,6 @@ static int irqchip_plic_warm_init(void) @@ -85,11 +85,6 @@ static int irqchip_plic_warm_init(void)
@@ -557,7 +557,7 @@ index 0a2d61b..829c5ee 100644
struct plic_data *pd) struct plic_data *pd)
{ {
diff --git a/lib/utils/psci/psci_common.c b/lib/utils/psci/psci_common.c diff --git a/lib/utils/psci/psci_common.c b/lib/utils/psci/psci_common.c
index f4b4bee..0a8ebd1 100644 index f4b4bee03ec4..0a8ebd1319fd 100644
--- a/lib/utils/psci/psci_common.c --- a/lib/utils/psci/psci_common.c
+++ b/lib/utils/psci/psci_common.c +++ b/lib/utils/psci/psci_common.c
@@ -870,3 +870,55 @@ void riscv_pwr_state_to_psci(unsigned int rstate, unsigned int *pstate) @@ -870,3 +870,55 @@ void riscv_pwr_state_to_psci(unsigned int rstate, unsigned int *pstate)
@@ -617,7 +617,7 @@ index f4b4bee..0a8ebd1 100644
+} +}
+ +
diff --git a/lib/utils/psci/psci_main.c b/lib/utils/psci/psci_main.c diff --git a/lib/utils/psci/psci_main.c b/lib/utils/psci/psci_main.c
index f2441f5..a3ce138 100644 index f2441f57e16e..a3ce138c00cc 100644
--- a/lib/utils/psci/psci_main.c --- a/lib/utils/psci/psci_main.c
+++ b/lib/utils/psci/psci_main.c +++ b/lib/utils/psci/psci_main.c
@@ -9,34 +9,32 @@ @@ -9,34 +9,32 @@
@@ -726,7 +726,7 @@ index f2441f5..a3ce138 100644
+ return rc; + return rc;
+} +}
diff --git a/lib/utils/psci/psci_private.h b/lib/utils/psci/psci_private.h diff --git a/lib/utils/psci/psci_private.h b/lib/utils/psci/psci_private.h
index d1cd2ba..c768d3f 100644 index d1cd2ba84742..c768d3f379ab 100644
--- a/lib/utils/psci/psci_private.h --- a/lib/utils/psci/psci_private.h
+++ b/lib/utils/psci/psci_private.h +++ b/lib/utils/psci/psci_private.h
@@ -142,6 +142,10 @@ int psci_cpu_suspend_start(/* const entry_point_info_t *ep */ uintptr_t entrypoi @@ -142,6 +142,10 @@ int psci_cpu_suspend_start(/* const entry_point_info_t *ep */ uintptr_t entrypoi
@@ -741,7 +741,7 @@ index d1cd2ba..c768d3f 100644
static inline bool is_cpu_standby_req(unsigned int is_power_down_state, static inline bool is_cpu_standby_req(unsigned int is_power_down_state,
unsigned int retn_lvl) unsigned int retn_lvl)
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
index 9976b57..279e6d5 100644 index 9976b5774039..279e6d5dc741 100644
--- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c --- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c +++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -27,10 +27,20 @@ @@ -27,10 +27,20 @@
@@ -848,7 +848,7 @@ index 9976b57..279e6d5 100644
/* M2 */ /* M2 */
diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c
index 464a56a..da6f958 100644 index 464a56a277ef..da6f958157fa 100644
--- a/lib/utils/psci/spacemit/plat/plat_pm.c --- a/lib/utils/psci/spacemit/plat/plat_pm.c
+++ b/lib/utils/psci/spacemit/plat/plat_pm.c +++ b/lib/utils/psci/spacemit/plat/plat_pm.c
@@ -16,6 +16,9 @@ @@ -16,6 +16,9 @@
@@ -938,7 +938,7 @@ index 464a56a..da6f958 100644
int plat_setup_psci_ops(uintptr_t sec_entrypoint, const plat_psci_ops_t **psci_ops) int plat_setup_psci_ops(uintptr_t sec_entrypoint, const plat_psci_ops_t **psci_ops)
diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c
index 8664e05..38794c2 100644 index 8664e05e7910..38794c2dfbb5 100644
--- a/platform/generic/spacemit/spacemit_k1.c --- a/platform/generic/spacemit/spacemit_k1.c
+++ b/platform/generic/spacemit/spacemit_k1.c +++ b/platform/generic/spacemit/spacemit_k1.c
@@ -21,6 +21,7 @@ @@ -21,6 +21,7 @@
@@ -1197,5 +1197,5 @@ index 8664e05..38794c2 100644
static bool spacemit_cold_boot_allowed(u32 hartid, const struct fdt_match *match) static bool spacemit_cold_boot_allowed(u32 hartid, const struct fdt_match *match)
-- --
2.39.2 2.35.3

View File

@@ -1,7 +1,7 @@
From 41a15ab971400502e93bbbf0d7336fa81daf25c9 Mon Sep 17 00:00:00 2001 From 41a15ab971400502e93bbbf0d7336fa81daf25c9 Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com> From: James Deng <james.deng@spacemit.com>
Date: Tue, 30 Apr 2024 17:48:07 +0800 Date: Tue, 30 Apr 2024 17:48:07 +0800
Subject: [PATCH] Update for v1.0rc1 Subject: Update for v1.0rc1
--- ---
include/sbi_utils/cache/cacheflush.h | 34 +++++++++----- include/sbi_utils/cache/cacheflush.h | 34 +++++++++-----
@@ -15,7 +15,7 @@ Subject: [PATCH] Update for v1.0rc1
8 files changed, 126 insertions(+), 57 deletions(-) 8 files changed, 126 insertions(+), 57 deletions(-)
diff --git a/include/sbi_utils/cache/cacheflush.h b/include/sbi_utils/cache/cacheflush.h diff --git a/include/sbi_utils/cache/cacheflush.h b/include/sbi_utils/cache/cacheflush.h
index c3e3532..126931b 100644 index c3e353229f75..126931b25888 100644
--- a/include/sbi_utils/cache/cacheflush.h --- a/include/sbi_utils/cache/cacheflush.h
+++ b/include/sbi_utils/cache/cacheflush.h +++ b/include/sbi_utils/cache/cacheflush.h
@@ -167,26 +167,34 @@ static inline void __mdelay(void) @@ -167,26 +167,34 @@ static inline void __mdelay(void)
@@ -67,7 +67,7 @@ index c3e3532..126931b 100644
} }
#endif #endif
diff --git a/lib/sbi/sbi_hsm.c b/lib/sbi/sbi_hsm.c diff --git a/lib/sbi/sbi_hsm.c b/lib/sbi/sbi_hsm.c
index acd3c9e..51c982a 100644 index acd3c9e04c87..51c982ad7b78 100644
--- a/lib/sbi/sbi_hsm.c --- a/lib/sbi/sbi_hsm.c
+++ b/lib/sbi/sbi_hsm.c +++ b/lib/sbi/sbi_hsm.c
@@ -183,7 +183,7 @@ void __noreturn sbi_hsm_hart_start_finish(struct sbi_scratch *scratch, @@ -183,7 +183,7 @@ void __noreturn sbi_hsm_hart_start_finish(struct sbi_scratch *scratch,
@@ -80,7 +80,7 @@ index acd3c9e..51c982a 100644
sbi_hart_switch_mode(hartid, next_arg1, next_addr, next_mode, false); sbi_hart_switch_mode(hartid, next_arg1, next_addr, next_mode, false);
diff --git a/lib/utils/psci/psci_private.h b/lib/utils/psci/psci_private.h diff --git a/lib/utils/psci/psci_private.h b/lib/utils/psci/psci_private.h
index c768d3f..0a3f260 100644 index c768d3f379ab..0a3f260f5c39 100644
--- a/lib/utils/psci/psci_private.h --- a/lib/utils/psci/psci_private.h
+++ b/lib/utils/psci/psci_private.h +++ b/lib/utils/psci/psci_private.h
@@ -182,7 +182,7 @@ static inline void psci_do_pwrdown_cache_maintenance(int hartid, uintptr_t scrat @@ -182,7 +182,7 @@ static inline void psci_do_pwrdown_cache_maintenance(int hartid, uintptr_t scrat
@@ -93,7 +93,7 @@ index c768d3f..0a3f260 100644
/* disable dcache */ /* disable dcache */
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
index 279e6d5..73feec4 100644 index 279e6d5dc741..73feec440d27 100644
--- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c --- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c +++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -5,43 +5,6 @@ @@ -5,43 +5,6 @@
@@ -141,7 +141,7 @@ index 279e6d5..73feec4 100644
unsigned int pmu_cap_core0_wakeup; unsigned int pmu_cap_core0_wakeup;
unsigned int pmu_cap_core1_wakeup; unsigned int pmu_cap_core1_wakeup;
diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c
index da6f958..a5b9127 100644 index da6f958157fa..a5b91270834f 100644
--- a/lib/utils/psci/spacemit/plat/plat_pm.c --- a/lib/utils/psci/spacemit/plat/plat_pm.c
+++ b/lib/utils/psci/spacemit/plat/plat_pm.c +++ b/lib/utils/psci/spacemit/plat/plat_pm.c
@@ -7,6 +7,7 @@ @@ -7,6 +7,7 @@
@@ -171,7 +171,7 @@ index da6f958..a5b9127 100644
if (SYSTEM_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) { if (SYSTEM_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) {
diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h
index b951105..5f5b672 100644 index b951105e0c04..5f5b672a61a6 100644
--- a/platform/generic/include/spacemit/k1x/k1x_evb.h --- a/platform/generic/include/spacemit/k1x/k1x_evb.h
+++ b/platform/generic/include/spacemit/k1x/k1x_evb.h +++ b/platform/generic/include/spacemit/k1x/k1x_evb.h
@@ -24,6 +24,45 @@ @@ -24,6 +24,45 @@
@@ -233,7 +233,7 @@ index b951105..5f5b672 100644
+ +
#endif /* __K1X_EVB_CONFIG_H__ */ #endif /* __K1X_EVB_CONFIG_H__ */
diff --git a/platform/generic/include/spacemit/k1x/k1x_fpga.h b/platform/generic/include/spacemit/k1x/k1x_fpga.h diff --git a/platform/generic/include/spacemit/k1x/k1x_fpga.h b/platform/generic/include/spacemit/k1x/k1x_fpga.h
index 4748c86..3d8964c 100644 index 4748c86b69c2..3d8964c861c4 100644
--- a/platform/generic/include/spacemit/k1x/k1x_fpga.h --- a/platform/generic/include/spacemit/k1x/k1x_fpga.h
+++ b/platform/generic/include/spacemit/k1x/k1x_fpga.h +++ b/platform/generic/include/spacemit/k1x/k1x_fpga.h
@@ -24,13 +24,51 @@ @@ -24,13 +24,51 @@
@@ -303,7 +303,7 @@ index 4748c86..3d8964c 100644
+ +
#endif /* __K1X_FPGA_CONFIG_H__ */ #endif /* __K1X_FPGA_CONFIG_H__ */
diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c
index 38794c2..9521884 100644 index 38794c2dfbb5..95218846715f 100644
--- a/platform/generic/spacemit/spacemit_k1.c --- a/platform/generic/spacemit/spacemit_k1.c
+++ b/platform/generic/spacemit/spacemit_k1.c +++ b/platform/generic/spacemit/spacemit_k1.c
@@ -65,6 +65,19 @@ static void wakeup_other_core(void) @@ -65,6 +65,19 @@ static void wakeup_other_core(void)
@@ -327,5 +327,5 @@ index 38794c2..9521884 100644
for (i = 0; i < platform.hart_count; i++) { for (i = 0; i < platform.hart_count; i++) {
hartid = platform.hart_index2id[i]; hartid = platform.hart_index2id[i];
-- --
2.39.2 2.35.3

View File

@@ -1,14 +1,14 @@
From ce6e8eec55a62d9e4cb5f5a767e50e9d0c2659ff Mon Sep 17 00:00:00 2001 From ce6e8eec55a62d9e4cb5f5a767e50e9d0c2659ff Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com> From: James Deng <james.deng@spacemit.com>
Date: Thu, 30 May 2024 23:19:43 +0800 Date: Thu, 30 May 2024 23:19:43 +0800
Subject: [PATCH] Update for v1.0 Subject: Update for v1.0
--- ---
debian/opensbi-spacemit.postinst | 9 ++++++++- debian/opensbi-spacemit.postinst | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-) 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst
index 1f6feca..9ce082e 100755 index 1f6feca80674..9ce082ef548b 100755
--- a/debian/opensbi-spacemit.postinst --- a/debian/opensbi-spacemit.postinst
+++ b/debian/opensbi-spacemit.postinst +++ b/debian/opensbi-spacemit.postinst
@@ -22,9 +22,16 @@ configure) @@ -22,9 +22,16 @@ configure)
@@ -38,5 +38,5 @@ index 1f6feca..9ce082e 100755
;; ;;
esac esac
-- --
2.39.2 2.35.3

View File

@@ -1,7 +1,7 @@
From 6f1344573d4ce0638d24d960e9a7d5ff1b0426b6 Mon Sep 17 00:00:00 2001 From 6f1344573d4ce0638d24d960e9a7d5ff1b0426b6 Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com> From: James Deng <james.deng@spacemit.com>
Date: Wed, 19 Jun 2024 15:18:09 +0800 Date: Wed, 19 Jun 2024 15:18:09 +0800
Subject: [PATCH] Update for v1.0.3 Subject: Update for v1.0.3
--- ---
.../spacemit/plat/k1x/underly_implement.c | 24 ++++++++++++++++++- .../spacemit/plat/k1x/underly_implement.c | 24 ++++++++++++++++++-
@@ -9,7 +9,7 @@ Subject: [PATCH] Update for v1.0.3
2 files changed, 25 insertions(+), 3 deletions(-) 2 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
index 73feec4..654da2d 100644 index 73feec440d27..654da2d1a926 100644
--- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c --- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c +++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -44,6 +44,12 @@ void spacemit_top_on(u_register_t mpidr) @@ -44,6 +44,12 @@ void spacemit_top_on(u_register_t mpidr)
@@ -67,7 +67,7 @@ index 73feec4..654da2d 100644
writel(0xffff, (unsigned int *)0xd4051030); writel(0xffff, (unsigned int *)0xd4051030);
} }
diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h
index 5f5b672..10e8569 100644 index 5f5b672a61a6..10e856965618 100644
--- a/platform/generic/include/spacemit/k1x/k1x_evb.h --- a/platform/generic/include/spacemit/k1x/k1x_evb.h
+++ b/platform/generic/include/spacemit/k1x/k1x_evb.h +++ b/platform/generic/include/spacemit/k1x/k1x_evb.h
@@ -49,8 +49,8 @@ @@ -49,8 +49,8 @@
@@ -82,5 +82,5 @@ index 5f5b672..10e8569 100644
#define CLUSTER_DDRSD_OFFSET (27) #define CLUSTER_DDRSD_OFFSET (27)
#define CLUSTER_APBSD_OFFSET (26) #define CLUSTER_APBSD_OFFSET (26)
-- --
2.39.2 2.35.3

View File

@@ -1,7 +1,7 @@
From 94bf83cc0bd1c86e51f48174fa17e23427903c59 Mon Sep 17 00:00:00 2001 From 94bf83cc0bd1c86e51f48174fa17e23427903c59 Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com> From: James Deng <james.deng@spacemit.com>
Date: Thu, 11 Jul 2024 14:56:36 +0800 Date: Thu, 11 Jul 2024 14:56:36 +0800
Subject: [PATCH] Update for v1.0.7 Subject: Update for v1.0.7
--- ---
debian/opensbi-spacemit.postinst | 24 ++++++++++++++----- debian/opensbi-spacemit.postinst | 24 ++++++++++++++-----
@@ -9,7 +9,7 @@ Subject: [PATCH] Update for v1.0.7
2 files changed, 18 insertions(+), 19 deletions(-) 2 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst
index 9ce082e..dce7154 100755 index 9ce082ef548b..dce7154ac8f4 100755
--- a/debian/opensbi-spacemit.postinst --- a/debian/opensbi-spacemit.postinst
+++ b/debian/opensbi-spacemit.postinst +++ b/debian/opensbi-spacemit.postinst
@@ -4,9 +4,11 @@ set -e @@ -4,9 +4,11 @@ set -e
@@ -59,7 +59,7 @@ index 9ce082e..dce7154 100755
esac esac
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
index 654da2d..94d53bf 100644 index 654da2d1a926..94d53bf51d0f 100644
--- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c --- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c +++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -44,12 +44,6 @@ void spacemit_top_on(u_register_t mpidr) @@ -44,12 +44,6 @@ void spacemit_top_on(u_register_t mpidr)
@@ -90,5 +90,5 @@ index 654da2d..94d53bf 100644
* driving capability of the internal 26M to PLL path * driving capability of the internal 26M to PLL path
* */ * */
-- --
2.39.2 2.35.3

View File

@@ -0,0 +1,554 @@
From 1600b3620dd8babffcfcc7d780a31723c94270bc Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com>
Date: Thu, 1 Aug 2024 22:09:26 +0800
Subject: Update for v1.0.11
---
debian/control | 1 +
debian/rules | 10 ++
include/sbi_utils/cache/cacheflush.h | 29 ++++
lib/utils/psci/psci_main.c | 8 +-
.../spacemit/plat/k1x/underly_implement.c | 86 +++++++++++-
lib/utils/psci/spacemit/plat/plat_pm.c | 131 ++++++++++++++----
.../psci/spacemit/plat/underly_implement.h | 2 +
lib/utils/serial/fdt_serial_uart8250.c | 1 +
.../generic/include/spacemit/k1x/k1x_evb.h | 1 +
platform/generic/spacemit/spacemit_k1.c | 23 +--
10 files changed, 246 insertions(+), 46 deletions(-)
diff --git a/debian/control b/debian/control
index 6c4a1747b5f3..f0f186707ea7 100644
--- a/debian/control
+++ b/debian/control
@@ -11,6 +11,7 @@ Rules-Requires-Root: no
Vcs-Browser: https://salsa.debian.org/opensbi-team/opensbi
Vcs-Git: https://salsa.debian.org/opensbi-team/opensbi.git
Homepage: https://github.com/riscv-software-src/opensbi
+XBS-Commit-Id:
Package: opensbi-spacemit
Architecture: all
diff --git a/debian/rules b/debian/rules
index ab9cc10c406c..3d44b43fcc38 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,9 +10,19 @@ else
VERBOSE=0
endif
+# 检查是否在 Git 仓库中,并获取 commit ID
+GIT_INSIDE := $(shell git rev-parse --is-inside-work-tree 2>/dev/null)
+ifeq ($(GIT_INSIDE),true)
+ COMMIT_ID := $(shell git rev-parse --short HEAD)
+endif
+
%:
dh $@
+override_dh_auto_configure:
+ sed -i "s/XBS-Commit-Id:.*/XBS-Commit-Id: $(COMMIT_ID)/" debian/control
+ dh_auto_configure
+
override_dh_auto_build:
make \
V=$(VERBOSE) \
diff --git a/include/sbi_utils/cache/cacheflush.h b/include/sbi_utils/cache/cacheflush.h
index 126931b25888..7887eef949ab 100644
--- a/include/sbi_utils/cache/cacheflush.h
+++ b/include/sbi_utils/cache/cacheflush.h
@@ -197,4 +197,33 @@ static inline void csi_flush_l2_cache(bool hw)
writel((1 << L2_CACHE_FLUSH_HW_TYPE_BIT_OFFSET) | (1 << L2_CACHE_FLUSH_HW_EN_BIT_OFFSET), cr);
}
}
+
+static inline void csi_flush_l2_cache_hart(bool hw, int hartid)
+{
+ uintptr_t *cr =(MPIDR_AFFLVL1_VAL(hartid) == 0) ? (uintptr_t *)CLUSTER0_L2_CACHE_FLUSH_REG_BASE :
+ (uintptr_t *)CLUSTER1_L2_CACHE_FLUSH_REG_BASE;
+
+ if (!hw) {
+ writel(0x0, cr);
+ /* flush l2 cache */
+ writel(readl(cr) | (1 << L2_CACHE_FLUSH_REQUEST_BIT_OFFSET), cr);
+ /* k1pro */
+ if (L2_CACHE_FLUSH_REQUEST_BIT_OFFSET == L2_CACHE_FLUSH_DONE_BIT_OFFSET)
+ while (readl(cr) & (1 << L2_CACHE_FLUSH_DONE_BIT_OFFSET));
+ else /* k1x */ {
+ /* clear the request */
+ while (1) {
+ if ((readl(cr) & (1 << L2_CACHE_FLUSH_DONE_BIT_OFFSET)) == 0)
+ break;
+ __mdelay();
+ }
+ writel(readl(cr) & ~(1 << L2_CACHE_FLUSH_REQUEST_BIT_OFFSET), cr);
+ }
+ } else {
+ /* k1pro */
+ if (L2_CACHE_FLUSH_REQUEST_BIT_OFFSET == L2_CACHE_FLUSH_DONE_BIT_OFFSET)
+ return /* do nothing */;
+ writel((1 << L2_CACHE_FLUSH_HW_TYPE_BIT_OFFSET) | (1 << L2_CACHE_FLUSH_HW_EN_BIT_OFFSET), cr);
+ }
+}
#endif
diff --git a/lib/utils/psci/psci_main.c b/lib/utils/psci/psci_main.c
index a3ce138c00cc..e89bb4ad3f39 100644
--- a/lib/utils/psci/psci_main.c
+++ b/lib/utils/psci/psci_main.c
@@ -81,10 +81,10 @@ int psci_cpu_off(void)
* The only error cpu_off can return is E_DENIED. So check if that's
* indeed the case.
*/
- if (rc != PSCI_E_DENIED) {
- sbi_printf("%s:%d, err\n", __func__, __LINE__);
- sbi_hart_hang();
- }
+// if (rc != PSCI_E_DENIED) {
+// sbi_printf("%s:%d, err\n", __func__, __LINE__);
+// sbi_hart_hang();
+// }
return rc;
}
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
index 94d53bf51d0f..f87bacc7297d 100644
--- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -30,7 +30,8 @@ void spacemit_top_on(u_register_t mpidr)
(1 << CLUSTER_BIT14_OFFSET) |
(1 << CLUSTER_BIT30_OFFSET) |
(1 << CLUSTER_BIT25_OFFSET) |
- (1 << CLUSTER_BIT13_OFFSET));
+ (1 << CLUSTER_BIT13_OFFSET) |
+ (1 << CLUSTER_VOTE_AP_SLPEN));
writel(value, cluster0_acpr);
value = readl(cluster1_acpr);
@@ -42,7 +43,8 @@ void spacemit_top_on(u_register_t mpidr)
(1 << CLUSTER_BIT14_OFFSET) |
(1 << CLUSTER_BIT30_OFFSET) |
(1 << CLUSTER_BIT25_OFFSET) |
- (1 << CLUSTER_BIT13_OFFSET));
+ (1 << CLUSTER_BIT13_OFFSET) |
+ (1 << CLUSTER_VOTE_AP_SLPEN));
writel(value, cluster1_acpr);
}
@@ -60,7 +62,7 @@ void spacemit_top_off(u_register_t mpidr)
(1 << CLUSTER_DDRSD_OFFSET) |
(1 << CLUSTER_APBSD_OFFSET) |
(1 << CLUSTER_VCXOSD_OFFSET) |
- (1 << 3) |
+ (1 << CLUSTER_VOTE_AP_SLPEN) |
(1 << CLUSTER_BIT29_OFFSET) |
(1 << CLUSTER_BIT14_OFFSET) |
(1 << CLUSTER_BIT30_OFFSET) |
@@ -73,7 +75,7 @@ void spacemit_top_off(u_register_t mpidr)
(1 << CLUSTER_DDRSD_OFFSET) |
(1 << CLUSTER_APBSD_OFFSET) |
(1 << CLUSTER_VCXOSD_OFFSET) |
- (1 << 3) |
+ (1 << CLUSTER_VOTE_AP_SLPEN) |
(1 << CLUSTER_BIT29_OFFSET) |
(1 << CLUSTER_BIT14_OFFSET) |
(1 << CLUSTER_BIT30_OFFSET) |
@@ -279,6 +281,82 @@ void spacemit_wakeup_cpu(u_register_t mpidr)
writel(1 << target_cpu_idx, cpu_reset_base);
}
+int spacemit_core_enter_c2(u_register_t mpidr)
+{
+ unsigned int value;
+
+ /* wait the cpu enter c2 */
+ value = readl((unsigned int *)0xd4282890);
+
+ if (mpidr == 0) {
+ if (value & (1 << 6))
+ return 1;
+ } else if (mpidr == 1) {
+ if (value & (1 << 9))
+ return 1;
+ } else if (mpidr == 2) {
+ if (value & (1 << 12))
+ return 1;
+ } else if (mpidr == 3) {
+ if (value & (1 << 15))
+ return 1;
+ } else if (mpidr == 4) {
+ if (value & (1 << 22))
+ return 1;
+ } else if (mpidr == 5) {
+ if (value & (1 << 25))
+ return 1;
+ } else if (mpidr == 6) {
+ if (value & (1 << 28))
+ return 1;
+ } else if (mpidr == 7) {
+ if (value & (1 << 31))
+ return 1;
+ } else {
+ return 0;
+ }
+
+ return 0;
+}
+
+void spacemit_wait_core_enter_c2(u_register_t mpidr)
+{
+ unsigned int value;
+
+ while (1) {
+ /* wait the cpu enter c2 */
+ value = readl((unsigned int *)0xd4282890);
+
+ if (mpidr == 0) {
+ if (value & (1 << 6))
+ return;
+ } else if (mpidr == 1) {
+ if (value & (1 << 9))
+ return;
+ } else if (mpidr == 2) {
+ if (value & (1 << 12))
+ return;
+ } else if (mpidr == 3) {
+ if (value & (1 << 15))
+ return;
+ } else if (mpidr == 4) {
+ if (value & (1 << 22))
+ return;
+ } else if (mpidr == 5) {
+ if (value & (1 << 25))
+ return;
+ } else if (mpidr == 6) {
+ if (value & (1 << 28))
+ return;
+ } else if (mpidr == 7) {
+ if (value & (1 << 31))
+ return;
+ } else {
+ ;
+ }
+ }
+}
+
void spacemit_assert_cpu(u_register_t mpidr)
{
unsigned int target_cpu_idx;
diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c
index a5b91270834f..166bc3c7be1f 100644
--- a/lib/utils/psci/spacemit/plat/plat_pm.c
+++ b/lib/utils/psci/spacemit/plat/plat_pm.c
@@ -1,14 +1,20 @@
#include <sbi/sbi_types.h>
+#include <sbi/riscv_locks.h>
#include <sbi/riscv_asm.h>
#include <sbi_utils/cci/cci.h>
#include <sbi_utils/psci/psci.h>
#include <sbi/sbi_scratch.h>
+#include <sbi/sbi_ipi.h>
#include <sbi/sbi_hart.h>
+#include <sbi/sbi_hsm.h>
+#include <sbi/sbi_domain.h>
#include <sbi/sbi_console.h>
+#include <sbi/sbi_hartmask.h>
#include <sbi_utils/psci/plat/arm/common/arm_def.h>
#include <sbi_utils/irqchip/fdt_irqchip_plic.h>
#include <sbi_utils/cache/cacheflush.h>
#include "underly_implement.h"
+#include "../../psci_private.h"
#define CORE_PWR_STATE(state) \
((state)->pwr_domain_state[MPIDR_AFFLVL0])
@@ -20,17 +26,39 @@
/* reserved for future used */
/* unsigned long __plic_regsave_offset_ptr; */
+static spinlock_t psciipi_lock = SPIN_LOCK_INITIALIZER;
+static struct sbi_hartmask psciipi_wait_hmask = { 0 };
+
+static void wake_idle_harts(struct sbi_scratch *scratch, u32 hartid)
+{
+ spin_lock(&psciipi_lock);
+
+ /* Send an IPI to all HARTs of the cluster that waiting for waked up */
+ for (u32 i = 0; i < PLATFORM_MAX_CPUS_PER_CLUSTER * PLATFORM_CLUSTER_COUNT; i++) {
+ if (i != hartid) {
+ sbi_hartmask_set_hart(i, &psciipi_wait_hmask);
+ sbi_ipi_raw_send(i);
+ }
+ }
+
+ spin_unlock(&psciipi_lock);
+}
+
static int spacemit_pwr_domain_on(u_register_t mpidr)
{
/* wakeup the cpu */
- spacemit_wakeup_cpu(mpidr);
+ if (spacemit_core_enter_c2(mpidr)) {
+ spacemit_wakeup_cpu(mpidr);
+ } else {
+ sbi_ipi_raw_send(mpidr);
+ }
return 0;
}
static void spacemit_pwr_domain_on_finish(const psci_power_state_t *target_state)
{
- unsigned int hartid = current_hartid();
+ unsigned int hartid = current_hartid();
if (SYSTEM_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) {
/* D1P */
@@ -42,12 +70,12 @@ static void spacemit_pwr_domain_on_finish(const psci_power_state_t *target_state
* No need for locks as no other cpu is active at the moment.
*/
if (CLUSTER_PWR_STATE(target_state) == PLAT_MAX_OFF_STATE) {
- spacemit_cluster_on(hartid);
+ spacemit_cluster_on(hartid);
#if defined(CONFIG_PLATFORM_SPACEMIT_K1X)
/* disable the tcm */
csr_write(CSR_TCMCFG, 0);
#endif
- cci_enable_snoop_dvm_reqs(MPIDR_AFFLVL1_VAL(hartid));
+ cci_enable_snoop_dvm_reqs(MPIDR_AFFLVL1_VAL(hartid));
#if defined(CONFIG_PLATFORM_SPACEMIT_K1X)
/* enable the tcm */
csr_write(CSR_TCMCFG, 1);
@@ -62,6 +90,7 @@ static int spacemit_pwr_domain_off_early(const psci_power_state_t *target_state)
/* clear the external irq pending */
csr_clear(CSR_MIP, MIP_MEIP);
csr_clear(CSR_MIP, MIP_SEIP);
+ csr_clear(CSR_MIP, MIP_MSIP);
/* here we clear the sstimer pending if this core have */
if (sbi_hart_has_extension(sbi_scratch_thishart_ptr(), SBI_HART_EXT_SSTC)) {
@@ -76,28 +105,65 @@ static void spacemit_pwr_domain_off(const psci_power_state_t *target_state)
unsigned int hartid = current_hartid();
if (CLUSTER_PWR_STATE(target_state) == PLAT_MAX_OFF_STATE) {
-#if defined(CONFIG_PLATFORM_SPACEMIT_K1X)
- /* disable the tcm */
- csr_write(CSR_TCMCFG, 0);
-#endif
- cci_disable_snoop_dvm_reqs(MPIDR_AFFLVL1_VAL(hartid));
- spacemit_cluster_off(hartid);
- csi_flush_l2_cache(1);
+ /* power-off cluster */
+ spacemit_cluster_off(hartid);
}
if (SYSTEM_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) {
/* D1P */
spacemit_top_off(hartid);
}
-
- spacemit_assert_cpu(hartid);
}
static void spacemit_pwr_domain_pwr_down_wfi(const psci_power_state_t *target_state)
{
- while (1) {
- asm volatile ("wfi");
+ int hstate;
+ unsigned long saved_mie, cmip;
+ unsigned int hartid = current_hartid();
+
+ hstate = sbi_hsm_hart_get_state(sbi_domain_thishart_ptr(), hartid);
+
+ /* Save MIE CSR */
+ saved_mie = csr_read(CSR_MIE);
+
+ /* Set MSIE and MEIE bits to receive IPI */
+ if (hstate == SBI_HSM_STATE_SUSPENDED) {
+ csr_set(CSR_MIE, MIP_MSIP | MIP_MEIP);
+
+ /* Wait for wakeup source to finish using WFI */
+ do {
+ wfi();
+ cmip = csr_read(CSR_MIP);
+ } while (!(cmip & (MIP_MSIP | MIP_MEIP)));
+ } else {
+ csr_set(CSR_MIE, MIP_MSIP);
+
+ /* Wait for wakeup source to finish using WFI */
+ do {
+ wfi();
+ cmip = csr_read(CSR_MIP);
+ } while (!(cmip & (MIP_MSIP)));
+
+ spin_lock(&psciipi_lock);
+
+ if (sbi_hartmask_test_hart(hartid, &psciipi_wait_hmask)) {
+ sbi_ipi_raw_clear(hartid);
+ /* Restore MIE CSR */
+ csr_write(CSR_MIE, saved_mie);
+
+ spin_unlock(&psciipi_lock);
+
+ spacemit_assert_cpu(hartid);
+
+ while (1)
+ asm volatile ("wfi");
+ }
+
+ spin_unlock(&psciipi_lock);
}
+
+ /* Restore MIE CSR */
+ csr_write(CSR_MIE, saved_mie);
}
static void spacemit_pwr_domain_on_finish_late(const psci_power_state_t *target_state)
@@ -158,9 +224,8 @@ static int spacemit_validate_power_state(unsigned int power_state,
static void spacemit_pwr_domain_suspend(const psci_power_state_t *target_state)
{
- unsigned int clusterid;
unsigned int hartid = current_hartid();
-
+
/*
* CSS currently supports retention only at cpu level. Just return
* as nothing is to be done for retention.
@@ -168,30 +233,40 @@ static void spacemit_pwr_domain_suspend(const psci_power_state_t *target_state)
if (CORE_PWR_STATE(target_state) == ARM_LOCAL_STATE_RET)
return;
-
if (CORE_PWR_STATE(target_state) != ARM_LOCAL_STATE_OFF) {
sbi_printf("%s:%d\n", __func__, __LINE__);
sbi_hart_hang();
}
- /* Cluster is to be turned off, so disable coherency */
- if (CLUSTER_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) {
- clusterid = MPIDR_AFFLVL1_VAL(hartid);
+ /* power-off cluster */
+ if (CLUSTER_PWR_STATE(target_state) == PLAT_MAX_OFF_STATE)
+ spacemit_cluster_off(hartid);
+
+ if (SYSTEM_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) {
#if defined(CONFIG_PLATFORM_SPACEMIT_K1X)
/* disable the tcm */
csr_write(CSR_TCMCFG, 0);
#endif
- cci_disable_snoop_dvm_reqs(clusterid);
- spacemit_cluster_off(hartid);
- csi_flush_l2_cache(1);
- }
+ wake_idle_harts(NULL, hartid);
- if (SYSTEM_PWR_STATE(target_state) == ARM_LOCAL_STATE_OFF) {
/* D1P & D2 */
+ csi_flush_l2_cache_hart(0, 0);
+ csi_flush_l2_cache_hart(0, PLATFORM_MAX_CPUS_PER_CLUSTER);
+
+ cci_disable_snoop_dvm_reqs(0);
+ cci_disable_snoop_dvm_reqs(1);
+
+ /* assert othter cpu & wait other cpu enter c2 */
+ for (u32 i = 0; i < PLATFORM_MAX_CPUS_PER_CLUSTER * PLATFORM_CLUSTER_COUNT; i++) {
+ if (i != hartid) {
+ spacemit_wait_core_enter_c2(i);
+ }
+ }
+
+ spacemit_assert_cpu(hartid);
+
spacemit_top_off(hartid);
}
-
- spacemit_assert_cpu(hartid);
}
static void spacemit_pwr_domain_suspend_finish(const psci_power_state_t *target_state)
diff --git a/lib/utils/psci/spacemit/plat/underly_implement.h b/lib/utils/psci/spacemit/plat/underly_implement.h
index dd6c972325bb..7c11db518a3f 100644
--- a/lib/utils/psci/spacemit/plat/underly_implement.h
+++ b/lib/utils/psci/spacemit/plat/underly_implement.h
@@ -9,6 +9,8 @@ void spacemit_cluster_on(u_register_t mpidr);
void spacemit_cluster_off(u_register_t mpidr);
void spacemit_wakeup_cpu(u_register_t mpidr);
void spacemit_assert_cpu(u_register_t mpidr);
+int spacemit_core_enter_c2(u_register_t mpidr);
+void spacemit_wait_core_enter_c2(u_register_t mpidr);
void spacemit_deassert_cpu(void);
#endif
diff --git a/lib/utils/serial/fdt_serial_uart8250.c b/lib/utils/serial/fdt_serial_uart8250.c
index 7b5d6a4c2f18..51ea91c7665f 100644
--- a/lib/utils/serial/fdt_serial_uart8250.c
+++ b/lib/utils/serial/fdt_serial_uart8250.c
@@ -30,6 +30,7 @@ static const struct fdt_match serial_uart8250_match[] = {
{ .compatible = "ns16550" },
{ .compatible = "ns16550a" },
{ .compatible = "snps,dw-apb-uart" },
+ { .compatible = "spacemit,pxa-uart" },
{ },
};
diff --git a/platform/generic/include/spacemit/k1x/k1x_evb.h b/platform/generic/include/spacemit/k1x/k1x_evb.h
index 10e856965618..e7381ca245da 100644
--- a/platform/generic/include/spacemit/k1x/k1x_evb.h
+++ b/platform/generic/include/spacemit/k1x/k1x_evb.h
@@ -60,6 +60,7 @@
#define CLUSTER_BIT30_OFFSET (30)
#define CLUSTER_BIT25_OFFSET (25)
#define CLUSTER_BIT13_OFFSET (13)
+#define CLUSTER_VOTE_AP_SLPEN (3)
#define L2_HARDWARE_CACHE_FLUSH_EN (13)
diff --git a/platform/generic/spacemit/spacemit_k1.c b/platform/generic/spacemit/spacemit_k1.c
index 95218846715f..2f9deb1a7940 100644
--- a/platform/generic/spacemit/spacemit_k1.c
+++ b/platform/generic/spacemit/spacemit_k1.c
@@ -67,15 +67,15 @@ static void wakeup_other_core(void)
#if defined(CONFIG_PLATFORM_SPACEMIT_K1X)
/* enable the hw l2 cache flush method for each core */
- writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG0) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG0);
- writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG1) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG1);
- writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG2) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG2);
- writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG3) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG3);
-
- writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG0) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG0);
- writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG1) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG1);
- writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG2) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG2);
- writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG3) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG3);
+ /* writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG0) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG0); */
+ /* writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG1) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG1); */
+ /* writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG2) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG2); */
+ /* writel(readl((u32 *)PMU_C0_CAPMP_IDLE_CFG3) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C0_CAPMP_IDLE_CFG3); */
+
+ /* writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG0) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG0); */
+ /* writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG1) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG1); */
+ /* writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG2) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG2); */
+ /* writel(readl((u32 *)PMU_C1_CAPMP_IDLE_CFG3) | (1 << L2_HARDWARE_CACHE_FLUSH_EN), (u32 *)PMU_C1_CAPMP_IDLE_CFG3); */
#endif
// hart0 is already boot up
@@ -188,7 +188,8 @@ static int spacemit_hart_start(unsigned int hartid, unsigned long saddr)
static int spacemit_hart_stop(void)
{
psci_cpu_off();
- return 0;
+
+ return SBI_ENOTSUPP;
}
static int spacemit_hart_suspend(unsigned int suspend_type)
@@ -265,6 +266,8 @@ static bool spacemit_cold_boot_allowed(u32 hartid, const struct fdt_match *match
static const struct fdt_match spacemit_k1_match[] = {
{ .compatible = "spacemit,k1-pro" },
{ .compatible = "spacemit,k1x" },
+ { .compatible = "spacemit,k1-x" },
+ { .compatible = "spacemit,k1" },
{ },
};
--
2.35.3

View File

@@ -0,0 +1,26 @@
From a26e37daaeb01f027e4753f854716f0f15eb3d13 Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com>
Date: Fri, 16 Aug 2024 23:44:13 +0800
Subject: Update for v1.0.13
---
lib/utils/psci/spacemit/plat/plat_pm.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c
index 166bc3c7be1f..32aec9d308ab 100644
--- a/lib/utils/psci/spacemit/plat/plat_pm.c
+++ b/lib/utils/psci/spacemit/plat/plat_pm.c
@@ -147,6 +147,9 @@ static void spacemit_pwr_domain_pwr_down_wfi(const psci_power_state_t *target_st
spin_lock(&psciipi_lock);
if (sbi_hartmask_test_hart(hartid, &psciipi_wait_hmask)) {
+
+ sbi_hartmask_clear_hart(hartid, &psciipi_wait_hmask);
+
sbi_ipi_raw_clear(hartid);
/* Restore MIE CSR */
csr_write(CSR_MIE, saved_mie);
--
2.35.3

View File

@@ -0,0 +1,46 @@
From 6cf0c8e6ed09841cdbff7b3788efa608ac5b08aa Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com>
Date: Sat, 31 Aug 2024 14:23:34 +0800
Subject: Update for v1.0.14
---
debian/opensbi-spacemit.postinst | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/debian/opensbi-spacemit.postinst b/debian/opensbi-spacemit.postinst
index dce7154ac8f4..0362a598a14b 100755
--- a/debian/opensbi-spacemit.postinst
+++ b/debian/opensbi-spacemit.postinst
@@ -31,9 +31,15 @@ configure)
OPENSBI_SEEK=0
;;
"/dev/nvme0n1"*)
- OPENSBI=/dev/mtdblock0
- # 以KB为单位
- OPENSBI_SEEK=448
+ if [ ! -e "/dev/mtdblock4" ]; then
+ OPENSBI=/dev/mtdblock0
+ # 以KB为单位
+ OPENSBI_SEEK=448
+ else
+ OPENSBI=/dev/mtdblock4
+ # 以KB为单位
+ OPENSBI_SEEK=0
+ fi
;;
*)
echo "Unsupported root=$ROOT"
@@ -56,8 +62,9 @@ configure)
done
# 此前已经做了所有检查
+ set -x
dd if=/usr/lib/riscv64-linux-gnu/opensbi/generic/fw_dynamic.itb of=$OPENSBI seek=$OPENSBI_SEEK bs=1K && sync
-
+ set +x
;;
esac
--
2.35.3

View File

@@ -0,0 +1,108 @@
From 08916e4fe06451080a8882d6955df9e5947e352e Mon Sep 17 00:00:00 2001
From: James Deng <james.deng@spacemit.com>
Date: Sat, 7 Sep 2024 21:08:45 +0800
Subject: Update for v1.0.15
---
.../spacemit/plat/k1x/underly_implement.c | 20 ++++++++++++++
lib/utils/psci/spacemit/plat/plat_pm.c | 27 +++++++++++--------
.../psci/spacemit/plat/underly_implement.h | 1 +
3 files changed, 37 insertions(+), 11 deletions(-)
diff --git a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
index f87bacc7297d..825db86dddfe 100644
--- a/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
+++ b/lib/utils/psci/spacemit/plat/k1x/underly_implement.c
@@ -319,6 +319,26 @@ int spacemit_core_enter_c2(u_register_t mpidr)
return 0;
}
+int spacemit_cluster_enter_m2(u_register_t mpidr)
+{
+ unsigned int value;
+
+ /* wait the cpu enter M2 */
+ value = readl((unsigned int *)0xd4282890);
+
+ if (mpidr == 0 || mpidr == 1 || mpidr == 2 || mpidr == 3) {
+ if (value & (1 << 3))
+ return 1;
+ } else if (mpidr == 4 || mpidr == 5 || mpidr == 6 || mpidr == 7) {
+ if (value & (1 << 19))
+ return 1;
+ } else {
+ return 0;
+ }
+
+ return 0;
+}
+
void spacemit_wait_core_enter_c2(u_register_t mpidr)
{
unsigned int value;
diff --git a/lib/utils/psci/spacemit/plat/plat_pm.c b/lib/utils/psci/spacemit/plat/plat_pm.c
index 32aec9d308ab..e3f494065f23 100644
--- a/lib/utils/psci/spacemit/plat/plat_pm.c
+++ b/lib/utils/psci/spacemit/plat/plat_pm.c
@@ -228,7 +228,7 @@ static int spacemit_validate_power_state(unsigned int power_state,
static void spacemit_pwr_domain_suspend(const psci_power_state_t *target_state)
{
unsigned int hartid = current_hartid();
-
+
/*
* CSS currently supports retention only at cpu level. Just return
* as nothing is to be done for retention.
@@ -250,22 +250,27 @@ static void spacemit_pwr_domain_suspend(const psci_power_state_t *target_state)
/* disable the tcm */
csr_write(CSR_TCMCFG, 0);
#endif
- wake_idle_harts(NULL, hartid);
+ if (!spacemit_cluster_enter_m2(PLATFORM_MAX_CPUS_PER_CLUSTER)) {
+ wake_idle_harts(NULL, hartid);
- /* D1P & D2 */
- csi_flush_l2_cache_hart(0, 0);
- csi_flush_l2_cache_hart(0, PLATFORM_MAX_CPUS_PER_CLUSTER);
+ csi_flush_l2_cache_hart(0, 0);
+ csi_flush_l2_cache_hart(0, PLATFORM_MAX_CPUS_PER_CLUSTER);
- cci_disable_snoop_dvm_reqs(0);
- cci_disable_snoop_dvm_reqs(1);
+ cci_disable_snoop_dvm_reqs(0);
+ cci_disable_snoop_dvm_reqs(1);
- /* assert othter cpu & wait other cpu enter c2 */
- for (u32 i = 0; i < PLATFORM_MAX_CPUS_PER_CLUSTER * PLATFORM_CLUSTER_COUNT; i++) {
- if (i != hartid) {
- spacemit_wait_core_enter_c2(i);
+ /* assert othter cpu & wait other cpu enter c2 */
+ for (u32 i = 0; i < PLATFORM_MAX_CPUS_PER_CLUSTER * PLATFORM_CLUSTER_COUNT; i++) {
+ if (i != hartid) {
+ spacemit_wait_core_enter_c2(i);
+ }
}
+ } else {
+ csi_flush_l2_cache_hart(0, 0);
+ cci_disable_snoop_dvm_reqs(0);
}
+
spacemit_assert_cpu(hartid);
spacemit_top_off(hartid);
diff --git a/lib/utils/psci/spacemit/plat/underly_implement.h b/lib/utils/psci/spacemit/plat/underly_implement.h
index 7c11db518a3f..80f1377d1116 100644
--- a/lib/utils/psci/spacemit/plat/underly_implement.h
+++ b/lib/utils/psci/spacemit/plat/underly_implement.h
@@ -10,6 +10,7 @@ void spacemit_cluster_off(u_register_t mpidr);
void spacemit_wakeup_cpu(u_register_t mpidr);
void spacemit_assert_cpu(u_register_t mpidr);
int spacemit_core_enter_c2(u_register_t mpidr);
+int spacemit_cluster_enter_m2(u_register_t mpidr);
void spacemit_wait_core_enter_c2(u_register_t mpidr);
void spacemit_deassert_cpu(void);
--
2.35.3

View File

@@ -1,30 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From ba9768cf884ba4f030d9bc006ef4c067575821d0 Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@armbian.com>
Date: Wed, 26 Jun 2024 06:01:30 -0400
Subject: Bluetooth: hci_h5: Add support for RTL8852BS
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
---
drivers/bluetooth/hci_h5.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/bluetooth/hci_h5.c b/drivers/bluetooth/hci_h5.c
index 111111111111..222222222222 100644
--- a/drivers/bluetooth/hci_h5.c
+++ b/drivers/bluetooth/hci_h5.c
@@ -1102,6 +1102,8 @@ static const struct of_device_id rtl_bluetooth_of_match[] = {
.data = (const void *)&h5_data_rtl8723bs },
{ .compatible = "realtek,rtl8723ds-bt",
.data = (const void *)&h5_data_rtl8723bs },
+ { .compatible = "realtek,rtl8852bs-bt",
+ .data = (const void *)&h5_data_rtl8723bs },
#endif
{ },
};
--
Armbian
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Victor Hassan <victor@allwinnertech.com> From: Victor Hassan <victor@allwinnertech.com>
Date: Wed, 22 Feb 2023 17:47:20 +0800 Date: Wed, 22 Feb 2023 17:47:20 +0800
Subject: Bluetooth: btrtl: Add support for RTL8852BS Subject: Bluetooth: btrtl: Add support for RTL8852BS
@@ -39,7 +13,7 @@ Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
1 file changed, 10 insertions(+) 1 file changed, 10 insertions(+)
diff --git a/drivers/bluetooth/btrtl.c b/drivers/bluetooth/btrtl.c diff --git a/drivers/bluetooth/btrtl.c b/drivers/bluetooth/btrtl.c
index 111111111111..222222222222 100644 index fb52313a1d45..a42dd93b2900 100644
--- a/drivers/bluetooth/btrtl.c --- a/drivers/bluetooth/btrtl.c
+++ b/drivers/bluetooth/btrtl.c +++ b/drivers/bluetooth/btrtl.c
@@ -190,6 +190,14 @@ static const struct id_table ic_id_table[] = { @@ -190,6 +190,14 @@ static const struct id_table ic_id_table[] = {
@@ -67,5 +41,5 @@ index 111111111111..222222222222 100644
MODULE_FIRMWARE("rtl_bt/rtl8852bu_config.bin"); MODULE_FIRMWARE("rtl_bt/rtl8852bu_config.bin");
MODULE_FIRMWARE("rtl_bt/rtl8852cu_fw.bin"); MODULE_FIRMWARE("rtl_bt/rtl8852cu_fw.bin");
-- --
Armbian 2.35.3

View File

@@ -0,0 +1,26 @@
From 6f639d9aff5e528dd21e9425b2c781dcded6a4ae Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@armbian.com>
Date: Wed, 26 Jun 2024 06:01:30 -0400
Subject: Bluetooth: hci_h5: Add support for RTL8852BS
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
---
drivers/bluetooth/hci_h5.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/bluetooth/hci_h5.c b/drivers/bluetooth/hci_h5.c
index 6455bc4fb5bb..7415c7ff55c8 100644
--- a/drivers/bluetooth/hci_h5.c
+++ b/drivers/bluetooth/hci_h5.c
@@ -1102,6 +1102,8 @@ static const struct of_device_id rtl_bluetooth_of_match[] = {
.data = (const void *)&h5_data_rtl8723bs },
{ .compatible = "realtek,rtl8723ds-bt",
.data = (const void *)&h5_data_rtl8723bs },
+ { .compatible = "realtek,rtl8852bs-bt",
+ .data = (const void *)&h5_data_rtl8723bs },
#endif
{ },
};
--
2.35.3

View File

@@ -1,7 +1,7 @@
From c50c52d109c55b0068fe54686c3933e213928059 Mon Sep 17 00:00:00 2001 From 9f72c5c5e6aed7f80d788f37ad846b830ef54fba Mon Sep 17 00:00:00 2001
From: UtsavBalar1231 <utsavbalar1231@gmail.com> From: UtsavBalar1231 <utsavbalar1231@gmail.com>
Date: Wed, 17 Jul 2024 04:36:09 -0400 Date: Wed, 17 Jul 2024 04:36:09 -0400
Subject: [PATCH] Fix aes_encrypt() redefinition errors Subject: Fix aes_encrypt() redefinition errors
This fixes function definition conflicts with aes kernel module as This fixes function definition conflicts with aes kernel module as
defined in include/crypto/aes.h defined in include/crypto/aes.h
@@ -17,7 +17,7 @@ Signed-off-by: UtsavBalar1231 <utsavbalar1231@gmail.com>
6 files changed, 33 insertions(+), 33 deletions(-) 6 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c
index dceec778a..378922971 100644 index dceec778a6d7..3789229717ec 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ccm.c
@@ -40,7 +40,7 @@ static void aes_ccm_auth_start(void *aes, size_t M, size_t L, const u8 *nonce, @@ -40,7 +40,7 @@ static void aes_ccm_auth_start(void *aes, size_t M, size_t L, const u8 *nonce,
@@ -132,7 +132,7 @@ index dceec778a..378922971 100644
if (os_memcmp_const(x, t, M) != 0) { if (os_memcmp_const(x, t, M) != 0) {
wpa_printf(_MSG_EXCESSIVE_, "CCM: Auth mismatch"); wpa_printf(_MSG_EXCESSIVE_, "CCM: Auth mismatch");
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c
index 6c06851dd..702f8ce49 100644 index 6c06851ddc68..702f8ce492d6 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-ctr.c
@@ -30,13 +30,13 @@ int aes_ctr_encrypt(const u8 *key, size_t key_len, const u8 *nonce, @@ -30,13 +30,13 @@ int aes_ctr_encrypt(const u8 *key, size_t key_len, const u8 *nonce,
@@ -161,7 +161,7 @@ index 6c06851dd..702f8ce49 100644
} }
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c
index 47088102b..21b71d43a 100644 index 47088102b9cc..21b71d43a041 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-gcm.c
@@ -154,7 +154,7 @@ static void aes_gctr(void *aes, const u8 *icb, const u8 *x, size_t xlen, u8 *y) @@ -154,7 +154,7 @@ static void aes_gctr(void *aes, const u8 *icb, const u8 *x, size_t xlen, u8 *y)
@@ -217,7 +217,7 @@ index 47088102b..21b71d43a 100644
if (os_memcmp_const(tag, T, 16) != 0) { if (os_memcmp_const(tag, T, 16) != 0) {
wpa_printf(_MSG_EXCESSIVE_, "GCM: Tag mismatch"); wpa_printf(_MSG_EXCESSIVE_, "GCM: Tag mismatch");
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c
index 69e256be9..19410a2fc 100644 index 69e256be95ce..19410a2fc5b3 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-internal-enc.c
@@ -93,7 +93,7 @@ d##3 = TE0(s##3) ^ TE1(s##0) ^ TE2(s##1) ^ TE3(s##2) ^ rk[4 * i + 3] @@ -93,7 +93,7 @@ d##3 = TE0(s##3) ^ TE1(s##0) ^ TE2(s##1) ^ TE3(s##2) ^ rk[4 * i + 3]
@@ -248,7 +248,7 @@ index 69e256be9..19410a2fc 100644
os_memset(ctx, 0, AES_PRIV_SIZE); os_memset(ctx, 0, AES_PRIV_SIZE);
rtw_mfree(ctx, AES_PRIV_SIZE); rtw_mfree(ctx, AES_PRIV_SIZE);
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c
index 30b52629f..826c9043d 100644 index 30b52629f4be..826c9043d09a 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes-omac1.c
@@ -50,7 +50,7 @@ int omac1_aes_vector(const u8 *key, size_t key_len, size_t num_elem, @@ -50,7 +50,7 @@ int omac1_aes_vector(const u8 *key, size_t key_len, size_t num_elem,
@@ -287,7 +287,7 @@ index 30b52629f..826c9043d 100644
} }
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h
index 8ab3de2ee..551dd19aa 100644 index 8ab3de2ee83f..551dd19aab23 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h --- a/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h +++ b/drivers/net/wireless/realtek/rtl8852bs/core/crypto/aes.h
@@ -11,9 +11,9 @@ @@ -11,9 +11,9 @@
@@ -304,5 +304,5 @@ index 8ab3de2ee..551dd19aa 100644
int aes_decrypt(void *ctx, const u8 *crypt, u8 *plain); int aes_decrypt(void *ctx, const u8 *crypt, u8 *plain);
void aes_decrypt_deinit(void *ctx); void aes_decrypt_deinit(void *ctx);
-- --
2.39.2 2.35.3

View File

@@ -1,26 +1,27 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From 3e033a705ea7266609cd7b92cf9d144c2fc30860 Mon Sep 17 00:00:00 2001
From: Luca Barbato <noone@nowhere.com> From: Luca Barbato <noone@nowhere.com>
Date: Thu, 6 Jun 2024 03:49:34 -0400 Date: Thu, 6 Jun 2024 03:49:34 -0400
Subject: add minimal hwmon support Subject: add minimal hwmon support
Signed-off-by: Luca Barbato Signed-off-by: Luca Barbato
--- ---
drivers/thermal/k1x-thermal.c | 22 +++++++--- drivers/thermal/k1x-thermal.c | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 6 deletions(-) 1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/drivers/thermal/k1x-thermal.c b/drivers/thermal/k1x-thermal.c diff --git a/drivers/thermal/k1x-thermal.c b/drivers/thermal/k1x-thermal.c
index 111111111111..222222222222 100644 index 9c66a0a23b1b..2267bcbce335 100644
--- a/drivers/thermal/k1x-thermal.c --- a/drivers/thermal/k1x-thermal.c
+++ b/drivers/thermal/k1x-thermal.c +++ b/drivers/thermal/k1x-thermal.c
@@ -10,6 +10,7 @@ @@ -71,7 +71,7 @@ static int init_sensors(struct platform_device *pdev)
#include <linux/thermal.h>
#include <linux/reset.h>
#include "k1x-thermal.h"
+#include "thermal_hwmon.h"
#define MAX_SENSOR_NUMBER 5 if (s->sr[1] >= MAX_SENSOR_NUMBER) {
dev_err(&pdev->dev, "un-fitable sensor range\n");
- return -EINVAL;
+ return -EINVAL;
}
@@ -286,15 +287,24 @@ static int k1x_thermal_probe(struct platform_device *pdev) #if 0
@@ -287,15 +287,24 @@ static int k1x_thermal_probe(struct platform_device *pdev)
for (i = s->sr[0]; i <= s->sr[1]; ++i) { for (i = s->sr[0]; i <= s->sr[1]; ++i) {
s->sdesc[i].base = s->base; s->sdesc[i].base = s->base;
@@ -52,5 +53,5 @@ index 111111111111..222222222222 100644
k1x_thermal_irq_thread, IRQF_SHARED, k1x_thermal_irq_thread, IRQF_SHARED,
dev_name(&s->sdesc[i].tzd->device), s->sdesc + i); dev_name(&s->sdesc[i].tzd->device), s->sdesc + i);
-- --
Armbian 2.35.3

View File

@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From 042384a5333cba8021275fa27ebb0c4c0e21de19 Mon Sep 17 00:00:00 2001
From: Andy Chiu <andy.chiu@sifive.com> From: Andy Chiu <andy.chiu@sifive.com>
Date: Thu, 6 Jun 2024 03:25:25 -0400 Date: Tue, 22 Aug 2023 16:49:03 +0000
Subject: riscv: signal: fix sigaltstack frame size checking Subject: riscv: signal: fix sigaltstack frame size checking
The alternative stack checking in get_sigframe introduced by the Vector The alternative stack checking in get_sigframe introduced by the Vector
@@ -15,15 +15,17 @@ an altstack if sas_ss_size not equals to zero will check against wrong
signal handlers if only a subset of signals are registered with signal handlers if only a subset of signals are registered with
SA_ONSTACK. SA_ONSTACK.
Fixes: 8ee0b41 ("riscv: signal: Add sigcontext save/restore for vector") Fixes: 8ee0b41898fa ("riscv: signal: Add sigcontext save/restore for vector")
Reported-by: Prashanth Swaminathan <prashanthsw@google.com> Reported-by: Prashanth Swaminathan <prashanthsw@google.com>
Signed-off-by: Andy Chiu <andy.chiu@sifive.com> Signed-off-by: Andy Chiu <andy.chiu@sifive.com>
Link: https://lore.kernel.org/r/20230822164904.21660-1-andy.chiu@sifive.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
--- ---
arch/riscv/kernel/signal.c | 7 ------- arch/riscv/kernel/signal.c | 7 -------
1 file changed, 7 deletions(-) 1 file changed, 7 deletions(-)
diff --git a/arch/riscv/kernel/signal.c b/arch/riscv/kernel/signal.c diff --git a/arch/riscv/kernel/signal.c b/arch/riscv/kernel/signal.c
index 111111111111..222222222222 100644 index ffde81cfadb7..f5348292ae79 100644
--- a/arch/riscv/kernel/signal.c --- a/arch/riscv/kernel/signal.c
+++ b/arch/riscv/kernel/signal.c +++ b/arch/riscv/kernel/signal.c
@@ -309,13 +309,6 @@ static inline void __user *get_sigframe(struct ksignal *ksig, @@ -309,13 +309,6 @@ static inline void __user *get_sigframe(struct ksignal *ksig,
@@ -41,5 +43,5 @@ index 111111111111..222222222222 100644
} }
-- --
Armbian 2.35.3

View File

@@ -1,7 +1,7 @@
From 8a13d99643bac3617fc6b6cd9bede0dccc78963f Mon Sep 17 00:00:00 2001 From 2dda0e6c2d5cba19e1e0445e908ea763a453514c Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@armbian.com> From: Patrick Yavitz <pyavitz@armbian.com>
Date: Wed, 17 Jul 2024 04:30:56 -0400 Date: Wed, 17 Jul 2024 04:30:56 -0400
Subject: [PATCH] wireless: rtl8852bs: CONFIG_RTW_DEBUG = n Subject: wireless: rtl8852bs: CONFIG_RTW_DEBUG = n
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com> Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
--- ---
@@ -9,10 +9,10 @@ Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
1 file changed, 1 insertion(+), 1 deletion(-) 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/realtek/rtl8852bs/Makefile b/drivers/net/wireless/realtek/rtl8852bs/Makefile diff --git a/drivers/net/wireless/realtek/rtl8852bs/Makefile b/drivers/net/wireless/realtek/rtl8852bs/Makefile
index 2af36254f..181d9320b 100644 index 357f90d96246..23cf65c872cd 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/Makefile --- a/drivers/net/wireless/realtek/rtl8852bs/Makefile
+++ b/drivers/net/wireless/realtek/rtl8852bs/Makefile +++ b/drivers/net/wireless/realtek/rtl8852bs/Makefile
@@ -138,7 +138,7 @@ EXTRA_CFLAGS += -DCONFIG_RTW_ANDROID=$(CONFIG_RTW_ANDROID) @@ -137,7 +137,7 @@ EXTRA_CFLAGS += -DCONFIG_RTW_ANDROID=$(CONFIG_RTW_ANDROID)
endif endif
########################## Debug ########################### ########################## Debug ###########################
@@ -22,5 +22,5 @@ index 2af36254f..181d9320b 100644
# please refer to "How_to_set_driver_debug_log_level.doc" to set the available level. # please refer to "How_to_set_driver_debug_log_level.doc" to set the available level.
CONFIG_RTW_LOG_LEVEL = 2 CONFIG_RTW_LOG_LEVEL = 2
-- --
2.39.2 2.35.3

View File

@@ -1,7 +1,7 @@
From 3c4661c1fcfa462cd0bb6c69fbeb7be1c1f57a3e Mon Sep 17 00:00:00 2001 From 7e9cef3496607903a04fb908c84b24ba2b480907 Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@armbian.com> From: Patrick Yavitz <pyavitz@armbian.com>
Date: Wed, 17 Jul 2024 04:33:01 -0400 Date: Wed, 17 Jul 2024 04:33:01 -0400
Subject: [PATCH] wireless: rtl8852bs: remove RTW_WARN_LMT Subject: wireless: rtl8852bs: remove RTW_WARN_LMT
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com> Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
--- ---
@@ -9,10 +9,10 @@ Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
1 file changed, 1 insertion(+), 1 deletion(-) 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c b/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c diff --git a/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c b/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c
index f50926762..5310587f4 100644 index 5d41dc48f1eb..dab9ac8ce621 100644
--- a/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c --- a/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c
+++ b/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c +++ b/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c
@@ -6677,7 +6677,7 @@ static void fill_txreq_list_skb(_adapter *padapter, @@ -6681,7 +6681,7 @@ static void fill_txreq_list_skb(_adapter *padapter,
if (skb_total_frag_nr(head_skb) > NUM_PKT_LIST_PER_TXREQ - 2) { if (skb_total_frag_nr(head_skb) > NUM_PKT_LIST_PER_TXREQ - 2) {
rtw_skb_linearize(head_skb); rtw_skb_linearize(head_skb);
@@ -22,5 +22,5 @@ index f50926762..5310587f4 100644
_fill_txreq_list_skb(padapter, txreq, pkt_list, head_skb, &req_sz, &offset); _fill_txreq_list_skb(padapter, txreq, pkt_list, head_skb, &req_sz, &offset);
-- --
2.39.2 2.35.3

View File

@@ -0,0 +1,12 @@
#
# Automatically generated by the script mk_format_patch
#
# https://gitee.com/bianbu-linux/linux-6.1.git
#
patches.bianbu/riscv-signal-fix-sigaltstack-frame-size-checking.patch
patches.bianbu/wireless-rtl8852bs-CONFIG_RTW_DEBUG-n.patch
patches.bianbu/wireless-rtl8852bs-remove-RTW_WARN_LMT.patch
patches.bianbu/Fix-aes_encrypt-redefinition-errors.patch
patches.bianbu/add-minimal-hwmon-support.patch
patches.bianbu/Bluetooth-hci_h5-Add-support-for-RTL8852BS.patch
patches.bianbu/Bluetooth-btrtl-Add-support-for-RTL8852BS.patch

View File

@@ -0,0 +1,13 @@
#
# This file is made manually by simply copying text
# from the target series.* files.
# Add (-) at the beginning of the line if the patch should not be applied.
# At the same time, the patch does not need to be deleted.
#
patches.bianbu/riscv-signal-fix-sigaltstack-frame-size-checking.patch
patches.bianbu/wireless-rtl8852bs-CONFIG_RTW_DEBUG-n.patch
patches.bianbu/wireless-rtl8852bs-remove-RTW_WARN_LMT.patch
patches.bianbu/Fix-aes_encrypt-redefinition-errors.patch
patches.bianbu/add-minimal-hwmon-support.patch
patches.bianbu/Bluetooth-hci_h5-Add-support-for-RTL8852BS.patch
patches.bianbu/Bluetooth-btrtl-Add-support-for-RTL8852BS.patch

View File

@@ -1,7 +1,7 @@
From ce3a6afb82e1ac21ddccffa2bfb32efb938d65f4 Mon Sep 17 00:00:00 2001 From faa72a12de6759e8bd14736bba16e5ac778bf96f Mon Sep 17 00:00:00 2001
From: Banana Pi -BPI <lionwang@sinovoip.com.cn> From: Banana Pi -BPI <lionwang@sinovoip.com.cn>
Date: Thu, 11 Jul 2024 07:33:58 -0400 Date: Thu, 11 Jul 2024 07:33:58 -0400
Subject: [PATCH] MBR support Subject: [PATCH 1/4] MBR support
Signed-off-by: Banana Pi -BPI <lionwang@sinovoip.com.cn> Signed-off-by: Banana Pi -BPI <lionwang@sinovoip.com.cn>
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com> Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
@@ -12,10 +12,10 @@ Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
3 files changed, 30 insertions(+), 3 deletions(-) 3 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/board/spacemit/k1-x/k1x.c b/board/spacemit/k1-x/k1x.c diff --git a/board/spacemit/k1-x/k1x.c b/board/spacemit/k1-x/k1x.c
index 192a850a29..ec1beb3e7a 100644 index b6f06fbb..70141121 100644
--- a/board/spacemit/k1-x/k1x.c --- a/board/spacemit/k1-x/k1x.c
+++ b/board/spacemit/k1-x/k1x.c +++ b/board/spacemit/k1-x/k1x.c
@@ -313,6 +313,7 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev @@ -312,6 +312,7 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev
char cmd[128]; char cmd[128];
struct disk_partition info; struct disk_partition info;
@@ -23,7 +23,7 @@ index 192a850a29..ec1beb3e7a 100644
for (part = 1; part <= MAX_SEARCH_PARTITIONS; part++) { for (part = 1; part <= MAX_SEARCH_PARTITIONS; part++) {
err = part_get_info(dev_desc, part, &info); err = part_get_info(dev_desc, part, &info);
if (err) if (err)
@@ -322,8 +323,13 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev @@ -321,8 +322,13 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev
break; break;
} }
} }
@@ -38,7 +38,7 @@ index 192a850a29..ec1beb3e7a 100644
env_set("bootfs_part", simple_itoa(part)); env_set("bootfs_part", simple_itoa(part));
env_set("bootfs_devname", dev_name); env_set("bootfs_devname", dev_name);
@@ -333,12 +339,14 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev @@ -332,12 +338,14 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev
sprintf(cmd, "load %s %d:%d 0x%x env_%s.txt", dev_name, sprintf(cmd, "load %s %d:%d 0x%x env_%s.txt", dev_name,
dev, part, CONFIG_SPL_LOAD_FIT_ADDRESS, CONFIG_SYS_CONFIG_NAME); dev, part, CONFIG_SPL_LOAD_FIT_ADDRESS, CONFIG_SYS_CONFIG_NAME);
pr_debug("cmd:%s\n", cmd); pr_debug("cmd:%s\n", cmd);
@@ -54,7 +54,7 @@ index 192a850a29..ec1beb3e7a 100644
pr_info("load env_%s.txt from bootfs successful\n", CONFIG_SYS_CONFIG_NAME); pr_info("load env_%s.txt from bootfs successful\n", CONFIG_SYS_CONFIG_NAME);
} }
diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
index acf2b278e8..581958bb1e 100644 index acf2b278..3109c93d 100644
--- a/common/spl/spl_mmc.c --- a/common/spl/spl_mmc.c
+++ b/common/spl/spl_mmc.c +++ b/common/spl/spl_mmc.c
@@ -91,6 +91,7 @@ int mmc_load_image_raw_sector(struct spl_image_info *spl_image, @@ -91,6 +91,7 @@ int mmc_load_image_raw_sector(struct spl_image_info *spl_image,
@@ -104,7 +104,7 @@ index acf2b278e8..581958bb1e 100644
#endif #endif
} }
diff --git a/configs/k1_defconfig b/configs/k1_defconfig diff --git a/configs/k1_defconfig b/configs/k1_defconfig
index 439db27210..a3adf4b091 100644 index 568400e5..66a6729a 100644
--- a/configs/k1_defconfig --- a/configs/k1_defconfig
+++ b/configs/k1_defconfig +++ b/configs/k1_defconfig
@@ -23,6 +23,7 @@ CONFIG_ARCH_RV64I=y @@ -23,6 +23,7 @@ CONFIG_ARCH_RV64I=y
@@ -116,5 +116,5 @@ index 439db27210..a3adf4b091 100644
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x1000000 CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x1000000
-- --
2.39.2 2.35.3

View File

@@ -1,7 +1,7 @@
From e646c31222ba2175e7ded14507f852a1a2202e8e Mon Sep 17 00:00:00 2001 From 1377ac604cc13156c4af4e7cdc5d3acafcbd2db5 Mon Sep 17 00:00:00 2001
From: Banana Pi -BPI <lionwang@sinovoip.com.cn> From: Banana Pi -BPI <lionwang@sinovoip.com.cn>
Date: Thu, 11 Jul 2024 07:37:18 -0400 Date: Thu, 11 Jul 2024 07:37:18 -0400
Subject: [PATCH] change AUTOBOOT_STOP_STR to Space KEY Subject: [PATCH 2/4] change AUTOBOOT_STOP_STR to Space KEY
Signed-off-by: Banana Pi -BPI <lionwang@sinovoip.com.cn> Signed-off-by: Banana Pi -BPI <lionwang@sinovoip.com.cn>
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com> Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
@@ -10,7 +10,7 @@ Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
1 file changed, 5 insertions(+), 2 deletions(-) 1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/configs/k1_defconfig b/configs/k1_defconfig diff --git a/configs/k1_defconfig b/configs/k1_defconfig
index a3adf4b091..4ee8f69e47 100644 index 66a6729a..7ae44243 100644
--- a/configs/k1_defconfig --- a/configs/k1_defconfig
+++ b/configs/k1_defconfig +++ b/configs/k1_defconfig
@@ -35,9 +35,12 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x11000000 @@ -35,9 +35,12 @@ CONFIG_SPL_LOAD_FIT_ADDRESS=0x11000000
@@ -29,5 +29,5 @@ index a3adf4b091..4ee8f69e47 100644
CONFIG_BOOTCOMMAND="bootm 0x11000000" CONFIG_BOOTCOMMAND="bootm 0x11000000"
CONFIG_LOGLEVEL=7 CONFIG_LOGLEVEL=7
-- --
2.39.2 2.35.3

View File

@@ -1,21 +1,21 @@
From cfa8de6bd957231e4a3ff0e3c6488ef579598afc Mon Sep 17 00:00:00 2001 From eec3cefda7f6f5b50b7fce2f07736f79c855d93a Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@armbian.com> From: Patrick Yavitz <pyavitz@armbian.com>
Date: Thu, 11 Jul 2024 07:43:37 -0400 Date: Thu, 11 Jul 2024 07:43:37 -0400
Subject: [PATCH] Syslinux and script support Subject: [PATCH 3/4] Syslinux and script support
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com> Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
--- ---
board/spacemit/k1-x/k1-x.env | 184 ++++------------------------------- board/spacemit/k1-x/k1-x.env | 185 ++++-------------------------------
board/spacemit/k1-x/k1x.c | 20 ++-- board/spacemit/k1-x/k1x.c | 20 ++--
configs/k1_defconfig | 3 + configs/k1_defconfig | 3 +
include/configs/k1-x.h | 23 ++--- include/configs/k1-x.h | 23 ++---
4 files changed, 43 insertions(+), 187 deletions(-) 4 files changed, 43 insertions(+), 188 deletions(-)
diff --git a/board/spacemit/k1-x/k1-x.env b/board/spacemit/k1-x/k1-x.env diff --git a/board/spacemit/k1-x/k1-x.env b/board/spacemit/k1-x/k1-x.env
index b0a1cd6000..acb1ef7a11 100644 index bdb32b35..acb1ef7a 100644
--- a/board/spacemit/k1-x/k1-x.env --- a/board/spacemit/k1-x/k1-x.env
+++ b/board/spacemit/k1-x/k1-x.env +++ b/board/spacemit/k1-x/k1-x.env
@@ -8,168 +8,24 @@ loglevel=8 @@ -8,169 +8,24 @@ loglevel=8
stderr=serial stderr=serial
stdin=serial,usbkbd stdin=serial,usbkbd
stdout=serial stdout=serial
@@ -76,7 +76,8 @@ index b0a1cd6000..acb1ef7a11 100644
-netdev=eth0 -netdev=eth0
- -
-// Common boot args -// Common boot args
-commonargs=setenv bootargs earlycon=${earlycon} earlyprintk console=tty1 console=${console} loglevel=${loglevel} clk_ignore_unused swiotlb=65536 rdinit=${init} workqueue.default_affinity_scope=${workqueue.default_affinity_scope} -set_bootargs=setenv bootargs earlycon=${earlycon} earlyprintk quiet splash console=${console} loglevel=${loglevel} clk_ignore_unused swiotlb=65536 rdinit=${init} product_name=${product_name}
-commonargs=run set_bootargs; setenv bootargs "${bootargs}" plymouth.ignore-serial-consoles plymouth.prefer-fbcon workqueue.default_affinity_scope=${workqueue.default_affinity_scope}
- -
-//detect product_name from env and select dtb file to load -//detect product_name from env and select dtb file to load
-dtb_env=if test -n "${product_name}"; then \ -dtb_env=if test -n "${product_name}"; then \
@@ -123,7 +124,7 @@ index b0a1cd6000..acb1ef7a11 100644
- fi; - fi;
- -
-// Nor+ssd boot combo -// Nor+ssd boot combo
-set_nor_args=setenv bootargs ${bootargs} mtdparts=${mtdparts} root=${blk_root} rootfstype=ext4 -set_nor_args=setenv bootargs "${bootargs}" mtdparts=${mtdparts} root=${blk_root} rootfstype=ext4
-nor_boot=echo "Try to boot from ${bootfs_devname}${boot_devnum} ..."; \ -nor_boot=echo "Try to boot from ${bootfs_devname}${boot_devnum} ..."; \
- run commonargs; \ - run commonargs; \
- run set_nor_root; \ - run set_nor_root; \
@@ -205,10 +206,10 @@ index b0a1cd6000..acb1ef7a11 100644
+ +
+bootcmd=echo "Loading ..."; run autoboot +bootcmd=echo "Loading ..."; run autoboot
diff --git a/board/spacemit/k1-x/k1x.c b/board/spacemit/k1-x/k1x.c diff --git a/board/spacemit/k1-x/k1x.c b/board/spacemit/k1-x/k1x.c
index ec1beb3e7a..f8fe46368f 100644 index 70141121..ada5f1fc 100644
--- a/board/spacemit/k1-x/k1x.c --- a/board/spacemit/k1-x/k1x.c
+++ b/board/spacemit/k1-x/k1x.c +++ b/board/spacemit/k1-x/k1x.c
@@ -331,8 +331,8 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev @@ -330,8 +330,8 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev
#endif #endif
} }
@@ -219,7 +220,7 @@ index ec1beb3e7a..f8fe46368f 100644
/*load env.txt and import to uboot*/ /*load env.txt and import to uboot*/
memset((void *)CONFIG_SPL_LOAD_FIT_ADDRESS, 0, CONFIG_ENV_SIZE); memset((void *)CONFIG_SPL_LOAD_FIT_ADDRESS, 0, CONFIG_ENV_SIZE);
@@ -511,7 +511,7 @@ void setenv_boot_mode(void) @@ -510,7 +510,7 @@ void setenv_boot_mode(void)
u32 boot_mode = get_boot_mode(); u32 boot_mode = get_boot_mode();
switch (boot_mode) { switch (boot_mode) {
case BOOT_MODE_NAND: case BOOT_MODE_NAND:
@@ -228,7 +229,7 @@ index ec1beb3e7a..f8fe46368f 100644
break; break;
case BOOT_MODE_NOR: case BOOT_MODE_NOR:
char *blk_name; char *blk_name;
@@ -522,23 +522,23 @@ void setenv_boot_mode(void) @@ -521,23 +521,23 @@ void setenv_boot_mode(void)
return; return;
} }
@@ -260,7 +261,7 @@ index ec1beb3e7a..f8fe46368f 100644
} }
} }
diff --git a/configs/k1_defconfig b/configs/k1_defconfig diff --git a/configs/k1_defconfig b/configs/k1_defconfig
index 4ee8f69e47..b615296e6c 100644 index 7ae44243..5af667bf 100644
--- a/configs/k1_defconfig --- a/configs/k1_defconfig
+++ b/configs/k1_defconfig +++ b/configs/k1_defconfig
@@ -43,6 +43,8 @@ CONFIG_AUTOBOOT_STOP_STR=" " @@ -43,6 +43,8 @@ CONFIG_AUTOBOOT_STOP_STR=" "
@@ -272,16 +273,16 @@ index 4ee8f69e47..b615296e6c 100644
CONFIG_LOGLEVEL=7 CONFIG_LOGLEVEL=7
CONFIG_SPL_LOGLEVEL=1 CONFIG_SPL_LOGLEVEL=1
# CONFIG_SYS_DEVICE_NULLDEV is not set # CONFIG_SYS_DEVICE_NULLDEV is not set
@@ -273,3 +275,4 @@ CONFIG_IMAGE_SPARSE_TRANSFER_BLK_NUM=0x3000 @@ -279,3 +281,4 @@ CONFIG_PRINT_TIMESTAMP=y
# CONFIG_SPL_SHA1 is not set
# CONFIG_SPL_SHA256 is not set # CONFIG_SPL_SHA256 is not set
CONFIG_ZSTD=y CONFIG_ZSTD=y
CONFIG_FDT_FIXUP_PARTITIONS=y
+CONFIG_OF_LIBFDT_OVERLAY=y +CONFIG_OF_LIBFDT_OVERLAY=y
diff --git a/include/configs/k1-x.h b/include/configs/k1-x.h diff --git a/include/configs/k1-x.h b/include/configs/k1-x.h
index 023bd4b77f..e7fc803e91 100644 index f1f4be78..34ad156e 100644
--- a/include/configs/k1-x.h --- a/include/configs/k1-x.h
+++ b/include/configs/k1-x.h +++ b/include/configs/k1-x.h
@@ -82,11 +82,6 @@ @@ -84,11 +84,6 @@
#define TLV_CODE_EEPROM_I2C_INDEX 0x81 #define TLV_CODE_EEPROM_I2C_INDEX 0x81
#define TLV_CODE_EEPROM_PIN_GROUP 0x82 #define TLV_CODE_EEPROM_PIN_GROUP 0x82
@@ -293,7 +294,7 @@ index 023bd4b77f..e7fc803e91 100644
// for those has NOT been through test procedure(ATE) // for those has NOT been through test procedure(ATE)
#define SVT_DRO_DEFAULT_VALUE (120) #define SVT_DRO_DEFAULT_VALUE (120)
@@ -140,6 +135,11 @@ struct boot_storage_op @@ -142,6 +137,11 @@ struct boot_storage_op
#define BOOT_TARGET_DEVICES(func) \ #define BOOT_TARGET_DEVICES(func) \
func(QEMU, qemu, na) func(QEMU, qemu, na)
@@ -305,7 +306,7 @@ index 023bd4b77f..e7fc803e91 100644
#include <config_distro_bootcmd.h> #include <config_distro_bootcmd.h>
#define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \ #define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \
@@ -165,11 +165,6 @@ struct boot_storage_op @@ -167,11 +167,6 @@ struct boot_storage_op
/*if env not use for spl, please define to board/spacemit/k1-x/k1-x.env */ /*if env not use for spl, please define to board/spacemit/k1-x/k1-x.env */
#define CONFIG_EXTRA_ENV_SETTINGS \ #define CONFIG_EXTRA_ENV_SETTINGS \
"stdout_flash=serial,vidconsole\0" \ "stdout_flash=serial,vidconsole\0" \
@@ -317,7 +318,7 @@ index 023bd4b77f..e7fc803e91 100644
"scriptaddr=0x2c100000\0" \ "scriptaddr=0x2c100000\0" \
"pxefile_addr_r=0x0c200000\0" \ "pxefile_addr_r=0x0c200000\0" \
"ipaddr=192.168.1.15\0" \ "ipaddr=192.168.1.15\0" \
@@ -177,9 +172,11 @@ struct boot_storage_op @@ -179,9 +174,11 @@ struct boot_storage_op
"serverip=10.0.92.134\0" \ "serverip=10.0.92.134\0" \
"gatewayip=192.168.1.1\0" \ "gatewayip=192.168.1.1\0" \
"net_data_path=spacemit_flash_file/net_flash_file/\0" \ "net_data_path=spacemit_flash_file/net_flash_file/\0" \
@@ -333,5 +334,5 @@ index 023bd4b77f..e7fc803e91 100644
-- --
2.39.2 2.35.3

View File

@@ -1,7 +1,7 @@
From 60013790aa6b8ba65fdb7546f715314d00591f81 Mon Sep 17 00:00:00 2001 From 0027fcd7dedbc6920c6222e5887df60651b22b2b Mon Sep 17 00:00:00 2001
From: Tejas Bhumkar <tejas.arvind.bhumkar@amd.com> From: Tejas Bhumkar <tejas.arvind.bhumkar@amd.com>
Date: Fri, 7 Jun 2024 06:32:58 -0400 Date: Fri, 7 Jun 2024 06:32:58 -0400
Subject: [PATCH] efi_loader : Suppress error print message Subject: [PATCH 4/4] efi_loader : Suppress error print message
Currently, on certain Xilinx platforms, an issue has been Currently, on certain Xilinx platforms, an issue has been
identified, manifesting as follows: identified, manifesting as follows:
@@ -38,7 +38,7 @@ Signed-off-by: Tejas Bhumkar <tejas.arvind.bhumkar@amd.com>
1 file changed, 1 insertion(+), 1 deletion(-) 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c diff --git a/lib/efi_loader/efi_memory.c b/lib/efi_loader/efi_memory.c
index e048a545e4..7fea2f79c8 100644 index 15c42be7..a4840ead 100644
--- a/lib/efi_loader/efi_memory.c --- a/lib/efi_loader/efi_memory.c
+++ b/lib/efi_loader/efi_memory.c +++ b/lib/efi_loader/efi_memory.c
@@ -660,7 +660,7 @@ efi_status_t efi_free_pool(void *buffer) @@ -660,7 +660,7 @@ efi_status_t efi_free_pool(void *buffer)
@@ -51,5 +51,5 @@ index e048a545e4..7fea2f79c8 100644
} }
/* Avoid double free */ /* Avoid double free */
-- --
2.39.2 2.35.3