public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Michal Simek <michal.simek@amd.com>
To: Masahiro Yamada <masahiroy@kernel.org>, linux-kernel@vger.kernel.org
Cc: Conor Dooley <conor+dt@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Rob Herring <robh@kernel.org>,
	devicetree@vger.kernel.org
Subject: Re: [PATCH] microblaze: migrate to the generic rule for built-in DTB
Date: Tue, 7 Jan 2025 17:36:40 +0100	[thread overview]
Message-ID: <05f5eebf-8253-48dd-b3bb-b5bf07b04598@amd.com> (raw)
In-Reply-To: <20241222094701.207592-1-masahiroy@kernel.org>

Hi Masahiro,

On 12/22/24 10:46, Masahiro Yamada wrote:
> Commit 654102df2ac2 ("kbuild: add generic support for built-in boot
> DTBs") introduced generic support for built-in DTBs.
> 
> Select GENERIC_BUILTIN_DTB to use the generic rule.
> 
> MicroBlaze is the only architecture that places the built-in DTB to its
> own section, __fdt_blob, rather than the standard location defined by
> the KERNEL_DTB() macro.
> 
> For backward compatibility, arch/microblaze/boot/dts/system.dtb is still
> placed in the __fdt_blob section, and possibly overwritten by an externel
> DTB passed via the r7 register.
> 
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
>   arch/microblaze/Kbuild                | 1 -
>   arch/microblaze/Kconfig               | 5 +++++
>   arch/microblaze/boot/dts/Makefile     | 5 -----
>   arch/microblaze/boot/dts/linked_dtb.S | 2 --
>   arch/microblaze/kernel/vmlinux.lds.S  | 2 +-
>   5 files changed, 6 insertions(+), 9 deletions(-)
>   delete mode 100644 arch/microblaze/boot/dts/linked_dtb.S
> 
> diff --git a/arch/microblaze/Kbuild b/arch/microblaze/Kbuild
> index 077a0b8e9615..70510389eb92 100644
> --- a/arch/microblaze/Kbuild
> +++ b/arch/microblaze/Kbuild
> @@ -2,7 +2,6 @@
>   obj-y			+= kernel/
>   obj-y			+= mm/
>   obj-$(CONFIG_PCI)	+= pci/
> -obj-y			+= boot/dts/
>   
>   # for cleaning
>   subdir- += boot
> diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
> index f18ec02ddeb2..4ed8ca89f0c9 100644
> --- a/arch/microblaze/Kconfig
> +++ b/arch/microblaze/Kconfig
> @@ -10,6 +10,7 @@ config MICROBLAZE
>   	select ARCH_MIGHT_HAVE_PC_PARPORT
>   	select ARCH_WANT_IPC_PARSE_VERSION
>   	select BUILDTIME_TABLE_SORT
> +	select GENERIC_BUILTIN_DTB
>   	select TIMER_OF
>   	select CLONE_BACKWARDS3
>   	select COMMON_CLK
> @@ -47,6 +48,10 @@ config MICROBLAZE
>   	select TRACE_IRQFLAGS_SUPPORT
>   	select GENERIC_IRQ_MULTI_HANDLER
>   
> +config BUILTIN_DTB_NAME
> +	string
> +	default "system"
> +
>   # Endianness selection
>   choice
>   	prompt "Endianness selection"
> diff --git a/arch/microblaze/boot/dts/Makefile b/arch/microblaze/boot/dts/Makefile
> index b84e2cbb20ee..87c1d25ff096 100644
> --- a/arch/microblaze/boot/dts/Makefile
> +++ b/arch/microblaze/boot/dts/Makefile
> @@ -4,11 +4,6 @@
>   dtb-y := system.dtb
>   
>   ifneq ($(DTB),)
> -obj-y += linked_dtb.o
> -
> -# Ensure system.dtb exists
> -$(obj)/linked_dtb.o: $(obj)/system.dtb
> -
>   # Generate system.dtb from $(DTB).dtb
>   ifneq ($(DTB),system)
>   $(obj)/system.dtb: $(obj)/$(DTB).dtb
> diff --git a/arch/microblaze/boot/dts/linked_dtb.S b/arch/microblaze/boot/dts/linked_dtb.S
> deleted file mode 100644
> index 23345af3721f..000000000000
> --- a/arch/microblaze/boot/dts/linked_dtb.S
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -.section __fdt_blob,"a"
> -.incbin "arch/microblaze/boot/dts/system.dtb"
> diff --git a/arch/microblaze/kernel/vmlinux.lds.S b/arch/microblaze/kernel/vmlinux.lds.S
> index ae50d3d04a7d..e86f9ca8e979 100644
> --- a/arch/microblaze/kernel/vmlinux.lds.S
> +++ b/arch/microblaze/kernel/vmlinux.lds.S
> @@ -47,7 +47,7 @@ SECTIONS {
>   	. = ALIGN (8) ;
>   	__fdt_blob : AT(ADDR(__fdt_blob) - LOAD_OFFSET) {
>   		_fdt_start = . ;		/* place for fdt blob */
> -		*(__fdt_blob) ;			/* Any link-placed DTB */
> +		*(.dtb.init.rodata) ;		/* Any link-placed DTB */
>   	        . = _fdt_start + 0x10000;	/* Pad up to 64kbyte */
>   		_fdt_end = . ;
>   	}

This patch is better then previous one but still it is changing behavior of 
build. When this patch is applied linux.bin contains dtb which is not the same 
behavior as before (which was empty).
DTB should be filled when simpleImage.<dt> is built.

Thanks,
Michal

  reply	other threads:[~2025-01-07 16:36 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-22  9:46 [PATCH] microblaze: migrate to the generic rule for built-in DTB Masahiro Yamada
2025-01-07 16:36 ` Michal Simek [this message]
2025-01-14  2:41   ` Masahiro Yamada
2025-01-14 15:03     ` Michal Simek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=05f5eebf-8253-48dd-b3bb-b5bf07b04598@amd.com \
    --to=michal.simek@amd.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox