All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] K210 support fixes
@ 2020-04-14  4:43 Damien Le Moal
  2020-04-14  4:43 ` [PATCH 1/3] riscv: Allow device trees to be built into the kernel Damien Le Moal
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Damien Le Moal @ 2020-04-14  4:43 UTC (permalink / raw)
  To: linux-riscv, Palmer Dabbelt; +Cc: Anup Patel

Palmer,

The first 2 patches of this series are your patches for the builtin DTB
fixed up and tested. The third patch adds necessary updates to the
K210 defconfig. Please review.

Damien Le Moal (1):
  riscv: K210: Update defconfig

Palmer Dabbelt (2):
  riscv: Allow device trees to be built into the kernel
  riscv: K210: Add a built-in device tree

 arch/riscv/Kbuild                       |  1 +
 arch/riscv/Kconfig                      |  5 ++++
 arch/riscv/Kconfig.socs                 | 17 ++++++++++-
 arch/riscv/boot/dts/Makefile            |  2 ++
 arch/riscv/boot/dts/kendryte/Makefile   |  4 ++-
 arch/riscv/configs/nommu_k210_defconfig |  7 ++---
 arch/riscv/include/asm/soc.h            | 39 +++++++++++++++++++++++++
 arch/riscv/kernel/setup.c               |  4 +++
 arch/riscv/kernel/soc.c                 | 27 +++++++++++++++++
 arch/riscv/kernel/vmlinux.lds.S         |  5 ++++
 arch/riscv/mm/init.c                    |  9 ++++++
 drivers/soc/kendryte/k210-sysctl.c      | 12 ++++++++
 12 files changed, 125 insertions(+), 7 deletions(-)

-- 
2.25.2



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/3] riscv: Allow device trees to be built into the kernel
  2020-04-14  4:43 [PATCH 0/3] K210 support fixes Damien Le Moal
@ 2020-04-14  4:43 ` Damien Le Moal
  2020-04-14  4:43 ` [PATCH 2/3] riscv: K210: Add a built-in device tree Damien Le Moal
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Damien Le Moal @ 2020-04-14  4:43 UTC (permalink / raw)
  To: linux-riscv, Palmer Dabbelt; +Cc: Anup Patel

From: Palmer Dabbelt <palmerdabbelt@google.com>

Some systems don't provide a useful device tree to the kernel on boot.
Chasing around bootloaders for these systems is a headache, so instead
le't's just keep a device tree table in the kernel, keyed by the SOC's
unique identifier, that contains the relevant DTB.

This is only implemented for M mode right now. While we could implement
this via the SBI calls that allow access to these identifiers, we don't
have any systems that need this right now.

Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
---
 arch/riscv/Kbuild               |  1 +
 arch/riscv/Kconfig              |  5 +++++
 arch/riscv/include/asm/soc.h    | 39 +++++++++++++++++++++++++++++++++
 arch/riscv/kernel/setup.c       |  4 ++++
 arch/riscv/kernel/soc.c         | 27 +++++++++++++++++++++++
 arch/riscv/kernel/vmlinux.lds.S |  5 +++++
 arch/riscv/mm/init.c            |  9 ++++++++
 7 files changed, 90 insertions(+)

diff --git a/arch/riscv/Kbuild b/arch/riscv/Kbuild
index d1d0aa70fdf1..4614c01ba5b3 100644
--- a/arch/riscv/Kbuild
+++ b/arch/riscv/Kbuild
@@ -1,3 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0-only
 
 obj-y += kernel/ mm/ net/
+obj-$(CONFIG_BUILTIN_DTB) += boot/dts/
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 47691a9e3fd0..757b74004e37 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -380,6 +380,11 @@ endchoice
 
 endmenu
 
+config BUILTIN_DTB
+	def_bool n
+	depends on RISCV_M_MODE
+	depends on OF
+
 menu "Power management options"
 
 source "kernel/power/Kconfig"
diff --git a/arch/riscv/include/asm/soc.h b/arch/riscv/include/asm/soc.h
index 7cec1968c8b4..136a442ef876 100644
--- a/arch/riscv/include/asm/soc.h
+++ b/arch/riscv/include/asm/soc.h
@@ -1,6 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 /*
  * Copyright (C) 2020 Western Digital Corporation or its affiliates.
+ * Copyright (C) 2020 Google, Inc
  */
 
 #ifndef _ASM_RISCV_SOC_H
@@ -20,4 +21,42 @@ void soc_early_init(void);
 extern unsigned long __soc_early_init_table_start;
 extern unsigned long __soc_early_init_table_end;
 
+/*
+ * Allows Linux to provide a device tree, which is necessary for SOCs that
+ * don't provide a useful one on their own.
+ */
+struct soc_builtin_dtb {
+	unsigned long vendor_id;
+	unsigned long arch_id;
+	unsigned long imp_id;
+	void *(*dtb_func)(void);
+};
+
+/*
+ * The argument name must specify a valid DTS file name without the dts
+ * extension.
+ */
+#define SOC_BUILTIN_DTB_DECLARE(name, vendor, arch, impl)		\
+	extern void *__dtb_##name##_begin;				\
+									\
+	static __init __used						\
+	void *__soc_builtin_dtb_f__##name(void)				\
+	{								\
+		return (void *)&__dtb_##name##_begin;			\
+	}								\
+									\
+	static const struct soc_builtin_dtb __soc_builtin_dtb__##name	\
+		__used __section(__soc_builtin_dtb_table) =		\
+	{								\
+		.vendor_id = vendor,					\
+		.arch_id   = arch,					\
+		.imp_id    = impl,					\
+		.dtb_func  = __soc_builtin_dtb_f__##name,		\
+	}
+
+extern unsigned long __soc_builtin_dtb_table_start;
+extern unsigned long __soc_builtin_dtb_table_end;
+
+void *soc_lookup_builtin_dtb(void);
+
 #endif
diff --git a/arch/riscv/kernel/setup.c b/arch/riscv/kernel/setup.c
index 145128a7e560..3e528312f615 100644
--- a/arch/riscv/kernel/setup.c
+++ b/arch/riscv/kernel/setup.c
@@ -75,7 +75,11 @@ void __init setup_arch(char **cmdline_p)
 
 	setup_bootmem();
 	paging_init();
+#if IS_ENABLED(CONFIG_BUILTIN_DTB)
+	unflatten_and_copy_device_tree();
+#else
 	unflatten_device_tree();
+#endif
 	clint_init_boot_cpu();
 
 #ifdef CONFIG_SWIOTLB
diff --git a/arch/riscv/kernel/soc.c b/arch/riscv/kernel/soc.c
index 0b3b3dc9ad0f..1fc87621c728 100644
--- a/arch/riscv/kernel/soc.c
+++ b/arch/riscv/kernel/soc.c
@@ -26,3 +26,30 @@ void __init soc_early_init(void)
 		}
 	}
 }
+
+static bool soc_builtin_dtb_match(unsigned long vendor_id,
+				unsigned long arch_id, unsigned long imp_id,
+				const struct soc_builtin_dtb *entry)
+{
+	return entry->vendor_id == vendor_id &&
+	       entry->arch_id == arch_id &&
+	       entry->imp_id == imp_id;
+}
+
+void * __init soc_lookup_builtin_dtb(void)
+{
+	unsigned long vendor_id, arch_id, imp_id;
+	const struct soc_builtin_dtb *s;
+
+	__asm__ ("csrr %0, mvendorid" : "=r"(vendor_id));
+	__asm__ ("csrr %0, marchid" : "=r"(arch_id));
+	__asm__ ("csrr %0, mimpid" : "=r"(imp_id));
+
+	for (s = (void *)&__soc_builtin_dtb_table_start;
+	     (void *)s < (void *)&__soc_builtin_dtb_table_end; s++) {
+		if (soc_builtin_dtb_match(vendor_id, arch_id, imp_id, s))
+			return s->dtb_func();
+	}
+
+	return NULL;
+}
diff --git a/arch/riscv/kernel/vmlinux.lds.S b/arch/riscv/kernel/vmlinux.lds.S
index 0339b6bbe11a..e6f8016b366a 100644
--- a/arch/riscv/kernel/vmlinux.lds.S
+++ b/arch/riscv/kernel/vmlinux.lds.S
@@ -34,6 +34,11 @@ SECTIONS
 		KEEP(*(__soc_early_init_table))
 		__soc_early_init_table_end = .;
 	}
+	__soc_builtin_dtb_table : {
+		__soc_builtin_dtb_table_start = .;
+		KEEP(*(__soc_builtin_dtb_table))
+		__soc_builtin_dtb_table_end = .;
+	}
 	/* we have to discard exit text and such at runtime, not link time */
 	.exit.text :
 	{
diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
index b55be44ff9bd..9d7dfc9863ab 100644
--- a/arch/riscv/mm/init.c
+++ b/arch/riscv/mm/init.c
@@ -17,6 +17,7 @@
 #include <asm/fixmap.h>
 #include <asm/tlbflush.h>
 #include <asm/sections.h>
+#include <asm/soc.h>
 #include <asm/pgtable.h>
 #include <asm/io.h>
 
@@ -492,7 +493,15 @@ void free_initmem(void)
 #else
 asmlinkage void __init setup_vm(uintptr_t dtb_pa)
 {
+#ifdef CONFIG_BUILTIN_DTB
+	dtb_early_va = soc_lookup_builtin_dtb();
+	if (!dtb_early_va) {
+		/* Fallback to first available DTS */
+		dtb_early_va = (void *) __dtb_start;
+	}
+#else
 	dtb_early_va = (void *)dtb_pa;
+#endif
 }
 
 static inline void setup_vm_final(void)
-- 
2.25.2



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/3] riscv: K210: Add a built-in device tree
  2020-04-14  4:43 [PATCH 0/3] K210 support fixes Damien Le Moal
  2020-04-14  4:43 ` [PATCH 1/3] riscv: Allow device trees to be built into the kernel Damien Le Moal
@ 2020-04-14  4:43 ` Damien Le Moal
  2020-04-14  4:43 ` [PATCH 3/3] riscv: K210: Update defconfig Damien Le Moal
  2020-04-21 22:24 ` [PATCH 0/3] K210 support fixes Palmer Dabbelt
  3 siblings, 0 replies; 7+ messages in thread
From: Damien Le Moal @ 2020-04-14  4:43 UTC (permalink / raw)
  To: linux-riscv, Palmer Dabbelt; +Cc: Anup Patel

From: Palmer Dabbelt <palmerdabbelt@google.com>

The K210's bootloader does not provide a device tree. Give the ability
to providea builtin one with the SOC_KENDRYTE_K210_BUILTIN_DTB option.
If selected, this option result in the definition of a builtin DTB
entry in the k210 sysctl driver.

If defined, the builtin DTB entry points to the default k210.dts device
tree file and is keyed with the vendor ID 0x4B5, the arch ID
0xE59889E6A5A04149 ("Canaan AI" in UTF-8 coded Chinese) and the impl ID
0x4D41495832303030 ("MAIX200"). These values are reported by the SiPEED
MAIXDUINO board, the SiPEED MAIX Go board and the SiPEED Dan Dock board.

Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
---
 arch/riscv/Kconfig.socs               | 17 ++++++++++++++++-
 arch/riscv/boot/dts/Makefile          |  2 ++
 arch/riscv/boot/dts/kendryte/Makefile |  4 +++-
 drivers/soc/kendryte/k210-sysctl.c    | 12 ++++++++++++
 4 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs
index 216286db81c9..4b2303ca20b9 100644
--- a/arch/riscv/Kconfig.socs
+++ b/arch/riscv/Kconfig.socs
@@ -23,11 +23,26 @@ config SOC_VIRT
 config SOC_KENDRYTE
 	bool "Kendryte K210 SoC"
 	depends on !MMU
-	select BUILTIN_DTB
 	select SERIAL_SIFIVE if TTY
 	select SERIAL_SIFIVE_CONSOLE if TTY
 	select SIFIVE_PLIC
 	help
 	  This enables support for Kendryte K210 SoC platform hardware.
 
+config SOC_KENDRYTE_K210_DTB
+	def_bool y
+	depends on SOC_KENDRYTE_K210_DTB_BUILTIN
+
+config SOC_KENDRYTE_K210_DTB_BUILTIN
+	bool "Builtin device tree for the Kendryte K210"
+	depends on SOC_KENDRYTE
+	default y
+	select OF
+	select BUILTIN_DTB
+	select SOC_KENDRYTE_K210_DTB
+	help
+	  Builds a device tree for the Kendryte K210 into the Linux image.
+	  This option should be selected if no bootloader is being used.
+	  If unsure, say Y.
+
 endmenu
diff --git a/arch/riscv/boot/dts/Makefile b/arch/riscv/boot/dts/Makefile
index 557f0b519c8e..ca1f8cbd78c0 100644
--- a/arch/riscv/boot/dts/Makefile
+++ b/arch/riscv/boot/dts/Makefile
@@ -1,3 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
 subdir-y += sifive
 subdir-y += kendryte
+
+obj-$(CONFIG_BUILTIN_DTB) := $(addsuffix /, $(subdir-y))
diff --git a/arch/riscv/boot/dts/kendryte/Makefile b/arch/riscv/boot/dts/kendryte/Makefile
index 815444e69e89..1a88e616f18e 100644
--- a/arch/riscv/boot/dts/kendryte/Makefile
+++ b/arch/riscv/boot/dts/kendryte/Makefile
@@ -1,2 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0
-dtb-$(CONFIG_SOC_KENDRYTE) += k210.dtb
+dtb-$(CONFIG_SOC_KENDRYTE_K210_DTB) += k210.dtb
+
+obj-$(CONFIG_SOC_KENDRYTE_K210_DTB_BUILTIN) += $(addsuffix .o, $(dtb-y))
diff --git a/drivers/soc/kendryte/k210-sysctl.c b/drivers/soc/kendryte/k210-sysctl.c
index 4608fbca20e1..707019223dd8 100644
--- a/drivers/soc/kendryte/k210-sysctl.c
+++ b/drivers/soc/kendryte/k210-sysctl.c
@@ -246,3 +246,15 @@ static void __init k210_soc_early_init(const void *fdt)
 	iounmap(regs);
 }
 SOC_EARLY_INIT_DECLARE(generic_k210, "kendryte,k210", k210_soc_early_init);
+
+#ifdef CONFIG_SOC_KENDRYTE_K210_DTB_BUILTIN
+/*
+ * Generic entry for the default k210.dtb embedded DTB for boards with:
+ *   - Vendor ID: 0x4B5
+ *   - Arch ID: 0xE59889E6A5A04149 (= "Canaan AI" in UTF-8 encoded Chinese)
+ *   - Impl ID:	0x4D41495832303030 (= "MAIX2000")
+ * These values are reported by the SiPEED MAXDUINO, SiPEED MAIX GO and
+ * SiPEED Dan dock boards.
+ */
+SOC_BUILTIN_DTB_DECLARE(k210, 0x4B5, 0xE59889E6A5A04149, 0x4D41495832303030);
+#endif
-- 
2.25.2



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/3] riscv: K210: Update defconfig
  2020-04-14  4:43 [PATCH 0/3] K210 support fixes Damien Le Moal
  2020-04-14  4:43 ` [PATCH 1/3] riscv: Allow device trees to be built into the kernel Damien Le Moal
  2020-04-14  4:43 ` [PATCH 2/3] riscv: K210: Add a built-in device tree Damien Le Moal
@ 2020-04-14  4:43 ` Damien Le Moal
  2020-04-21 22:24 ` [PATCH 0/3] K210 support fixes Palmer Dabbelt
  3 siblings, 0 replies; 7+ messages in thread
From: Damien Le Moal @ 2020-04-14  4:43 UTC (permalink / raw)
  To: linux-riscv, Palmer Dabbelt; +Cc: Anup Patel

Update the Kendryte K210 default kernel configuration file
nommu_k210_defconfig to enable builtin DTB by default.

Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
---
 arch/riscv/configs/nommu_k210_defconfig | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/arch/riscv/configs/nommu_k210_defconfig b/arch/riscv/configs/nommu_k210_defconfig
index 632aa2f95e57..b48138e329ea 100644
--- a/arch/riscv/configs/nommu_k210_defconfig
+++ b/arch/riscv/configs/nommu_k210_defconfig
@@ -2,14 +2,12 @@
 CONFIG_LOG_BUF_SHIFT=15
 CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=12
 CONFIG_BLK_DEV_INITRD=y
-CONFIG_INITRAMFS_SOURCE=""
 CONFIG_INITRAMFS_FORCE=y
 # CONFIG_RD_BZIP2 is not set
 # CONFIG_RD_LZMA is not set
 # CONFIG_RD_XZ is not set
 # CONFIG_RD_LZO is not set
 # CONFIG_RD_LZ4 is not set
-# CONFIG_BOOT_CONFIG is not set
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 # CONFIG_SYSFS_SYSCALL is not set
 # CONFIG_FHANDLE is not set
@@ -35,8 +33,6 @@ CONFIG_SMP=y
 CONFIG_NR_CPUS=2
 CONFIG_CMDLINE="earlycon console=ttySIF0"
 CONFIG_CMDLINE_FORCE=y
-CONFIG_USE_BUILTIN_DTB=y
-CONFIG_BUILTIN_DTB_SOURCE="kendryte/k210"
 # CONFIG_BLOCK is not set
 CONFIG_BINFMT_FLAT=y
 # CONFIG_COREDUMP is not set
@@ -49,8 +45,8 @@ CONFIG_DEVTMPFS_MOUNT=y
 # CONFIG_SERIO is not set
 # CONFIG_LEGACY_PTYS is not set
 # CONFIG_LDISC_AUTOLOAD is not set
-# CONFIG_DEVMEM is not set
 # CONFIG_HW_RANDOM is not set
+# CONFIG_DEVMEM is not set
 # CONFIG_HWMON is not set
 # CONFIG_VGA_CONSOLE is not set
 # CONFIG_HID is not set
@@ -62,6 +58,7 @@ CONFIG_DEVTMPFS_MOUNT=y
 CONFIG_LSM="[]"
 CONFIG_PRINTK_TIME=y
 # CONFIG_DEBUG_MISC is not set
+CONFIG_PANIC_ON_OOPS=y
 # CONFIG_SCHED_DEBUG is not set
 # CONFIG_RCU_TRACE is not set
 # CONFIG_FTRACE is not set
-- 
2.25.2



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] K210 support fixes
  2020-04-14  4:43 [PATCH 0/3] K210 support fixes Damien Le Moal
                   ` (2 preceding siblings ...)
  2020-04-14  4:43 ` [PATCH 3/3] riscv: K210: Update defconfig Damien Le Moal
@ 2020-04-21 22:24 ` Palmer Dabbelt
  2020-04-22  0:37   ` Damien Le Moal
  2020-04-23  2:30   ` Damien Le Moal
  3 siblings, 2 replies; 7+ messages in thread
From: Palmer Dabbelt @ 2020-04-21 22:24 UTC (permalink / raw)
  To: Damien Le Moal; +Cc: linux-riscv, Anup Patel

On Mon, 13 Apr 2020 21:43:23 PDT (-0700), Damien Le Moal wrote:
> Palmer,
>
> The first 2 patches of this series are your patches for the builtin DTB
> fixed up and tested. The third patch adds necessary updates to the
> K210 defconfig. Please review.
>
> Damien Le Moal (1):
>   riscv: K210: Update defconfig
>
> Palmer Dabbelt (2):
>   riscv: Allow device trees to be built into the kernel
>   riscv: K210: Add a built-in device tree
>
>  arch/riscv/Kbuild                       |  1 +
>  arch/riscv/Kconfig                      |  5 ++++
>  arch/riscv/Kconfig.socs                 | 17 ++++++++++-
>  arch/riscv/boot/dts/Makefile            |  2 ++
>  arch/riscv/boot/dts/kendryte/Makefile   |  4 ++-
>  arch/riscv/configs/nommu_k210_defconfig |  7 ++---
>  arch/riscv/include/asm/soc.h            | 39 +++++++++++++++++++++++++
>  arch/riscv/kernel/setup.c               |  4 +++
>  arch/riscv/kernel/soc.c                 | 27 +++++++++++++++++
>  arch/riscv/kernel/vmlinux.lds.S         |  5 ++++
>  arch/riscv/mm/init.c                    |  9 ++++++
>  drivers/soc/kendryte/k210-sysctl.c      | 12 ++++++++
>  12 files changed, 125 insertions(+), 7 deletions(-)

Is that PMP thing necessary as well?

I've put these (along with the PMP fix) on for-next.

Thanks!


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] K210 support fixes
  2020-04-21 22:24 ` [PATCH 0/3] K210 support fixes Palmer Dabbelt
@ 2020-04-22  0:37   ` Damien Le Moal
  2020-04-23  2:30   ` Damien Le Moal
  1 sibling, 0 replies; 7+ messages in thread
From: Damien Le Moal @ 2020-04-22  0:37 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: linux-riscv, Anup Patel

On 2020/04/22 7:24, Palmer Dabbelt wrote:
> On Mon, 13 Apr 2020 21:43:23 PDT (-0700), Damien Le Moal wrote:
>> Palmer,
>>
>> The first 2 patches of this series are your patches for the builtin DTB
>> fixed up and tested. The third patch adds necessary updates to the
>> K210 defconfig. Please review.
>>
>> Damien Le Moal (1):
>>   riscv: K210: Update defconfig
>>
>> Palmer Dabbelt (2):
>>   riscv: Allow device trees to be built into the kernel
>>   riscv: K210: Add a built-in device tree
>>
>>  arch/riscv/Kbuild                       |  1 +
>>  arch/riscv/Kconfig                      |  5 ++++
>>  arch/riscv/Kconfig.socs                 | 17 ++++++++++-
>>  arch/riscv/boot/dts/Makefile            |  2 ++
>>  arch/riscv/boot/dts/kendryte/Makefile   |  4 ++-
>>  arch/riscv/configs/nommu_k210_defconfig |  7 ++---
>>  arch/riscv/include/asm/soc.h            | 39 +++++++++++++++++++++++++
>>  arch/riscv/kernel/setup.c               |  4 +++
>>  arch/riscv/kernel/soc.c                 | 27 +++++++++++++++++
>>  arch/riscv/kernel/vmlinux.lds.S         |  5 ++++
>>  arch/riscv/mm/init.c                    |  9 ++++++
>>  drivers/soc/kendryte/k210-sysctl.c      | 12 ++++++++
>>  12 files changed, 125 insertions(+), 7 deletions(-)
> 
> Is that PMP thing necessary as well?

Yes, it is still necessary. I replied to your patch using traps instead of the
ifdef. It is working fine.

> 
> I've put these (along with the PMP fix) on for-next.

OK. Thanks. I looked and I think everything is in order. I will test again with
that tree.

> 
> Thanks!
> 


-- 
Damien Le Moal
Western Digital Research


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] K210 support fixes
  2020-04-21 22:24 ` [PATCH 0/3] K210 support fixes Palmer Dabbelt
  2020-04-22  0:37   ` Damien Le Moal
@ 2020-04-23  2:30   ` Damien Le Moal
  1 sibling, 0 replies; 7+ messages in thread
From: Damien Le Moal @ 2020-04-23  2:30 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: linux-riscv, Anup Patel

On 2020/04/22 7:24, Palmer Dabbelt wrote:
> On Mon, 13 Apr 2020 21:43:23 PDT (-0700), Damien Le Moal wrote:
>> Palmer,
>>
>> The first 2 patches of this series are your patches for the builtin DTB
>> fixed up and tested. The third patch adds necessary updates to the
>> K210 defconfig. Please review.
>>
>> Damien Le Moal (1):
>>   riscv: K210: Update defconfig
>>
>> Palmer Dabbelt (2):
>>   riscv: Allow device trees to be built into the kernel
>>   riscv: K210: Add a built-in device tree
>>
>>  arch/riscv/Kbuild                       |  1 +
>>  arch/riscv/Kconfig                      |  5 ++++
>>  arch/riscv/Kconfig.socs                 | 17 ++++++++++-
>>  arch/riscv/boot/dts/Makefile            |  2 ++
>>  arch/riscv/boot/dts/kendryte/Makefile   |  4 ++-
>>  arch/riscv/configs/nommu_k210_defconfig |  7 ++---
>>  arch/riscv/include/asm/soc.h            | 39 +++++++++++++++++++++++++
>>  arch/riscv/kernel/setup.c               |  4 +++
>>  arch/riscv/kernel/soc.c                 | 27 +++++++++++++++++
>>  arch/riscv/kernel/vmlinux.lds.S         |  5 ++++
>>  arch/riscv/mm/init.c                    |  9 ++++++
>>  drivers/soc/kendryte/k210-sysctl.c      | 12 ++++++++
>>  12 files changed, 125 insertions(+), 7 deletions(-)
> 
> Is that PMP thing necessary as well?
> 
> I've put these (along with the PMP fix) on for-next.

Is your for-next branch for the next 5.8 merge window ? Or is it for 5.7.0-rcX
fixes ?

These patches complete the K210 support. We should have that in 5.7 instead of
leaving the half backed k210 support in that version...


> 
> Thanks!
> 


-- 
Damien Le Moal
Western Digital Research


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-04-23  2:30 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-14  4:43 [PATCH 0/3] K210 support fixes Damien Le Moal
2020-04-14  4:43 ` [PATCH 1/3] riscv: Allow device trees to be built into the kernel Damien Le Moal
2020-04-14  4:43 ` [PATCH 2/3] riscv: K210: Add a built-in device tree Damien Le Moal
2020-04-14  4:43 ` [PATCH 3/3] riscv: K210: Update defconfig Damien Le Moal
2020-04-21 22:24 ` [PATCH 0/3] K210 support fixes Palmer Dabbelt
2020-04-22  0:37   ` Damien Le Moal
2020-04-23  2:30   ` Damien Le Moal

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.