RISC-V Devicetree fixes for v6.8-final
Starfive: The previous cleanup broke boot on the jh7100 as the driver depended on the fallback clock name created based on the node-name when clock-output-names is not present. Add clock-output-names to restore working order. Generic: BUILTIN_DTB has been broken for ages on any platform other than the nommu Canaan k210 SoC as the first dtb built (in alphanumerical order), would get built into the image. This didn't get fixed for ages because nobody actually cared about running it other than the k210 enough to fix it. The folks doing Sophgo SG2042 development have come along and fixed it, as they want to use builtin dtbs. linux-boot on that platform reuses the dtb it was provided by OpenSBI when booting linux proper, which is unfortunately not possible to boot a mainline kernel with. Signed-off-by: Conor Dooley <conor.dooley@microchip.com> -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRh246EGq/8RLhDjO14tDGHoIJi0gUCZeiwSAAKCRB4tDGHoIJi 0i35AP9Nm72QRsmcW1EaICAQDkfPyPVdpHp1WkHIDyNHcjPkrgEAtPy4Mlz9LIhx pQ5QuXV2mqkjE+Ts5k0efkL1Am8MZgs= =zUP6 -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmXuq9gACgkQYKtH/8kJ UicLQA//aej0KLwRRJCcajZxsLiHsMnV2wbCUod1TvH7A3WXwUUncMTNUAnPE4fC zTQ6gYVthP+IciKaOCxj806CAIIBt3j904NfbzQ24EFzUJkfX4j7Kd+ru1UVs1vS QfWQ3lamvhsAfI8wcm3TA/UVUBkY8zTvy35jFeSjzLd4BAuZ21Ne4j7ShmR7JvE6 dpwHZX5KC4yvsVgoZE5kVVkFnx7RQ6D4oxQFaqSlYJ43LCA3YKwToLtCEs640bwq tBAYAU61Bkouk3ePmusIAkNJGK3KbaByuxmTqB/03k0OQ0ANUFD89YLhH/YrrmGG JcC/LL5AkoG0VHcIB0SXMeJEwOKUYtJrXs9+sLyDKVJeCmsuuyOaorOMLF/NyZmy bHB7uUtLaXzh+kv0ayTEtq9J7OskTmB1qbMusFvKJirPv0ltVAC5hG9wEPPdy1kG B7NfsIgCyId+1DKb/4Gae8w5V9reoqP1ftwNbcEyp2aXFyJvIz56O1IEBMk5ZYfq a+AzW7b+gHgpw7BlfiUPEYsbt4qeUvSQTU90rTmu+nUxOgJ9KBWY9Nk2yo0Bs/wf vDIG4jQmA1rEt10myqdgPSR4eYEMXSkwNbtqbWiV4LMbT1iVrd8/e1Kb6zBo/GpM veAGNQ6l271aKwoqobU3RuTQm/uPSmWww12In4IPEEqMRNzBZ5A= =Ad6q -----END PGP SIGNATURE----- Merge tag 'riscv-dt-fixes-for-v6.8-final' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux into soc/dt RISC-V Devicetree fixes for v6.8-final Starfive: The previous cleanup broke boot on the jh7100 as the driver depended on the fallback clock name created based on the node-name when clock-output-names is not present. Add clock-output-names to restore working order. Generic: BUILTIN_DTB has been broken for ages on any platform other than the nommu Canaan k210 SoC as the first dtb built (in alphanumerical order), would get built into the image. This didn't get fixed for ages because nobody actually cared about running it other than the k210 enough to fix it. The folks doing Sophgo SG2042 development have come along and fixed it, as they want to use builtin dtbs. linux-boot on that platform reuses the dtb it was provided by OpenSBI when booting linux proper, which is unfortunately not possible to boot a mainline kernel with. Signed-off-by: Conor Dooley <conor.dooley@microchip.com> * tag 'riscv-dt-fixes-for-v6.8-final' of https://git.kernel.org/pub/scm/linux/kernel/git/conor/linux: riscv: dts: Move BUILTIN_DTB_SOURCE to common Kconfig riscv: dts: starfive: jh7100: fix root clock names Link: https://lore.kernel.org/r/20240306-waltz-facial-9e4e1b792053@spud Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
59f33701fd
@ -983,7 +983,19 @@ config RISCV_ISA_FALLBACK
|
||||
config BUILTIN_DTB
|
||||
bool "Built-in device tree"
|
||||
depends on OF && NONPORTABLE
|
||||
default y if XIP_KERNEL
|
||||
help
|
||||
Build a device tree into the Linux image.
|
||||
This option should be selected if no bootloader is being used.
|
||||
If unsure, say N.
|
||||
|
||||
|
||||
config BUILTIN_DTB_SOURCE
|
||||
string "Built-in device tree source"
|
||||
depends on BUILTIN_DTB
|
||||
help
|
||||
DTS file path (without suffix, relative to arch/riscv/boot/dts)
|
||||
for the DTS file that will be used to produce the DTB linked into the
|
||||
kernel.
|
||||
|
||||
endmenu # "Boot options"
|
||||
|
||||
|
@ -84,36 +84,4 @@ config SOC_CANAAN
|
||||
help
|
||||
This enables support for Canaan Kendryte K210 SoC platform hardware.
|
||||
|
||||
if ARCH_CANAAN
|
||||
|
||||
config ARCH_CANAAN_K210_DTB_BUILTIN
|
||||
def_bool SOC_CANAAN_K210_DTB_BUILTIN
|
||||
|
||||
config SOC_CANAAN_K210_DTB_BUILTIN
|
||||
bool "Builtin device tree for the Canaan Kendryte K210"
|
||||
depends on ARCH_CANAAN
|
||||
default y
|
||||
select OF
|
||||
select BUILTIN_DTB
|
||||
help
|
||||
Build 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.
|
||||
|
||||
config ARCH_CANAAN_K210_DTB_SOURCE
|
||||
string
|
||||
default SOC_CANAAN_K210_DTB_SOURCE
|
||||
|
||||
config SOC_CANAAN_K210_DTB_SOURCE
|
||||
string "Source file for the Canaan Kendryte K210 builtin DTB"
|
||||
depends on ARCH_CANAAN
|
||||
depends on ARCH_CANAAN_K210_DTB_BUILTIN
|
||||
default "k210_generic"
|
||||
help
|
||||
Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
|
||||
for the DTS file that will be used to produce the DTB linked into the
|
||||
kernel.
|
||||
|
||||
endif # ARCH_CANAAN
|
||||
|
||||
endmenu # "SoC selection"
|
||||
|
@ -8,4 +8,4 @@ subdir-y += sophgo
|
||||
subdir-y += starfive
|
||||
subdir-y += thead
|
||||
|
||||
obj-$(CONFIG_BUILTIN_DTB) := $(addsuffix /, $(subdir-y))
|
||||
obj-$(CONFIG_BUILTIN_DTB) := $(addsuffix .dtb.o, $(CONFIG_BUILTIN_DTB_SOURCE))
|
||||
|
@ -5,5 +5,3 @@ dtb-$(CONFIG_ARCH_CANAAN) += sipeed_maix_bit.dtb
|
||||
dtb-$(CONFIG_ARCH_CANAAN) += sipeed_maix_dock.dtb
|
||||
dtb-$(CONFIG_ARCH_CANAAN) += sipeed_maix_go.dtb
|
||||
dtb-$(CONFIG_ARCH_CANAAN) += sipeed_maixduino.dtb
|
||||
|
||||
obj-$(CONFIG_ARCH_CANAAN_K210_DTB_BUILTIN) += $(addsuffix .dtb.o, $(CONFIG_ARCH_CANAAN_K210_DTB_SOURCE))
|
||||
|
@ -4,4 +4,3 @@ dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-m100pfsevp.dtb
|
||||
dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-polarberry.dtb
|
||||
dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-sev-kit.dtb
|
||||
dtb-$(CONFIG_ARCH_MICROCHIP_POLARFIRE) += mpfs-tysom-m.dtb
|
||||
obj-$(CONFIG_BUILTIN_DTB) += $(addsuffix .o, $(dtb-y))
|
||||
|
@ -1,4 +1,3 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
dtb-$(CONFIG_ARCH_SIFIVE) += hifive-unleashed-a00.dtb \
|
||||
hifive-unmatched-a00.dtb
|
||||
obj-$(CONFIG_BUILTIN_DTB) += $(addsuffix .o, $(dtb-y))
|
||||
|
@ -116,6 +116,7 @@
|
||||
osc_sys: osc-sys {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "osc_sys";
|
||||
/* This value must be overridden by the board */
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
@ -123,6 +124,7 @@
|
||||
osc_aud: osc-aud {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "osc_aud";
|
||||
/* This value must be overridden by the board */
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
@ -130,6 +132,7 @@
|
||||
gmac_rmii_ref: gmac-rmii-ref {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "gmac_rmii_ref";
|
||||
/* Should be overridden by the board when needed */
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
@ -137,6 +140,7 @@
|
||||
gmac_gr_mii_rxclk: gmac-gr-mii-rxclk {
|
||||
compatible = "fixed-clock";
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "gmac_gr_mii_rxclk";
|
||||
/* Should be overridden by the board when needed */
|
||||
clock-frequency = <0>;
|
||||
};
|
||||
|
@ -33,6 +33,8 @@ CONFIG_SMP=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_CMDLINE="earlycon console=ttySIF0"
|
||||
CONFIG_CMDLINE_FORCE=y
|
||||
CONFIG_BUILTIN_DTB=y
|
||||
CONFIG_BUILTIN_DTB_SOURCE="canaan/k210_generic"
|
||||
# CONFIG_SECCOMP is not set
|
||||
# CONFIG_STACKPROTECTOR is not set
|
||||
# CONFIG_GCC_PLUGINS is not set
|
||||
|
@ -25,6 +25,8 @@ CONFIG_SMP=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_CMDLINE="earlycon console=ttySIF0 root=/dev/mmcblk0p1 rootwait ro"
|
||||
CONFIG_CMDLINE_FORCE=y
|
||||
CONFIG_BUILTIN_DTB=y
|
||||
CONFIG_BUILTIN_DTB_SOURCE="canaan/k210_generic"
|
||||
# CONFIG_SECCOMP is not set
|
||||
# CONFIG_STACKPROTECTOR is not set
|
||||
# CONFIG_GCC_PLUGINS is not set
|
||||
|
Loading…
x
Reference in New Issue
Block a user