Build dtbs
Change-Id: I71e7ca432e794e60febbdd60fc2950a7843152df
This commit is contained in:
1 parent
a5dccf1b8d
commit
189538ba83
5 files changed
+183
-2
No files matched your search
+47
-2
@@ -174,10 +174,52 @@ _TEGRA_K618_MODULES_LIST = [
|
||||
"sound/hda/core/snd-hda-core.ko",
|
||||
]
|
||||
|
||||
_TEGRA_DTB_LIST = [
|
||||
# keep sorted
|
||||
"tegra186-quill-p3310-1000-c03-00-base.dtb",
|
||||
"tegra186-p3636-0001-p3509-0000-a01-android.dtb",
|
||||
"tegra194-p2888-0001-p2822-0000.dtb",
|
||||
"tegra194-p3668-0000-p3509-0000-android.dtb",
|
||||
"tegra194-p3668-0001-p3509-0000-android.dtb",
|
||||
"tegra210-baracus.dtb",
|
||||
"tegra210-darcy-p2894-0000-a00-00.dtb",
|
||||
"tegra210-darcy-p2894-0050-a04-00.dtb",
|
||||
"tegra210-darcy-p2894-0050-a08-00.dtb",
|
||||
"tegra210-darcy-p2894-0052-a08-00.dtb",
|
||||
"tegra210-foster-e-hdd-cpc-p2530-0933-e03-00.dtb",
|
||||
"tegra210-foster-e-hdd-p2530-0932-e01-00.dtb",
|
||||
"tegra210-foster-e-hdd-p2530-0932-e02-00.dtb",
|
||||
"tegra210-foster-e-p2530-0930-e01-00.dtb",
|
||||
"tegra210-foster-e-p2530-0930-e02-00.dtb",
|
||||
"tegra210-jetson-tx1-p2597-2180-a01-android-devkit.dtb",
|
||||
"tegra210-loki-e-p2530-0030-e01-00.dtb",
|
||||
"tegra210-loki-e-p2530-0030-e02-00.dtb",
|
||||
"tegra210-loki-e-p2530-0030-e03-00.dtb",
|
||||
"tegra210-loki-e-p2530-0031-e01-00.dtb",
|
||||
"tegra210-loki-e-p2530-0031-e02-00.dtb",
|
||||
"tegra210-loki-e-p2530-0031-e03-00.dtb",
|
||||
"tegra210-p3448-0000-p3449-0000-a02-android-devkit.dtb",
|
||||
"tegra210-p3448-0000-p3449-0000-b00-android-devkit.dtb",
|
||||
"tegra210-p3448-0002-p3449-0000-a02-android-devkit.dtb",
|
||||
"tegra210-p3448-0002-p3449-0000-b00-android-devkit.dtb",
|
||||
"tegra210-p3448-0003-p3542-0000-android-devkit.dtb",
|
||||
"tegra210b01-darcy-p2894-0050-a08-00.dtb",
|
||||
"tegra210b01-darcy-p2894-2551-b00-00.dtb",
|
||||
"tegra210b01-darcy-p2894-3551-b03-00.dtb",
|
||||
"tegra210b01-sif-p3425-0500-a01.dtb",
|
||||
"tegra210b01-sif-p3425-0500-a02.dtb",
|
||||
"tegra210b01-sif-p3425-0500-a04.dtb",
|
||||
"tegra210-odin.dtb",
|
||||
"tegra210b01-odin.dtb",
|
||||
"tegra210b01-vali.dtb",
|
||||
"tegra210b01-fric.dtb",
|
||||
]
|
||||
|
||||
kernel_build(
|
||||
name = "kernel_aarch64_tegra",
|
||||
srcs = ["//vendor/nvidia/kernel:kernel_aarch64_sources",],
|
||||
outs = [],
|
||||
dtstree = "//vendor/nvidia/tegra/dts:tegra_dts",
|
||||
outs = _TEGRA_DTB_LIST,
|
||||
arch = "arm64",
|
||||
|
||||
# Enable mixed build.
|
||||
@@ -188,6 +230,7 @@ kernel_build(
|
||||
kmi_symbol_list = "//vendor/nvidia/kernel:gki/aarch64/symbols/tegra",
|
||||
make_goals = [
|
||||
"modules",
|
||||
"dtbs",
|
||||
],
|
||||
makefile = "//vendor/nvidia/kernel:Makefile",
|
||||
module_outs = _TEGRA_MODULES_LIST + _TEGRA_K618_MODULES_LIST,
|
||||
@@ -198,7 +241,8 @@ kernel_build(
|
||||
kernel_build(
|
||||
name = "kernel_aarch64_tegra_612",
|
||||
srcs = ["//vendor/nvidia/kernel:kernel_aarch64_sources",],
|
||||
outs = [],
|
||||
dtstree = "//vendor/nvidia/tegra/dts:tegra_dts",
|
||||
outs = _TEGRA_DTB_LIST,
|
||||
arch = "arm64",
|
||||
|
||||
# Enable mixed build.
|
||||
@@ -209,6 +253,7 @@ kernel_build(
|
||||
kmi_symbol_list = "//vendor/nvidia/kernel:gki/aarch64/symbols/tegra",
|
||||
make_goals = [
|
||||
"modules",
|
||||
"dtbs",
|
||||
],
|
||||
makefile = "//vendor/nvidia/kernel:Makefile",
|
||||
module_outs = _TEGRA_MODULES_LIST + _TEGRA_K612_MODULES_LIST,
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
*/*
|
||||
@@ -0,0 +1,9 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
load("//build/kernel/kleaf:kernel.bzl", "kernel_dtstree")
|
||||
|
||||
kernel_dtstree(
|
||||
name = "tegra_dts",
|
||||
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
+110
@@ -0,0 +1,110 @@
|
||||
# SPDX-FileCopyrightText: Copyright (c) 2022-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||
# SPDX-License-Identifier: GPL-2.0-only
|
||||
|
||||
ifneq ($(TEGRA_TOP),)
|
||||
SOURCE_TOP := $(TEGRA_TOP)
|
||||
else ifneq ($(TOP),)
|
||||
SOURCE_TOP := $(TOP)
|
||||
else ifneq ($(ROOT_DIR),)
|
||||
SOURCE_TOP := $(ROOT_DIR)
|
||||
else
|
||||
$(error TEGRA_TOP or TOP is not defined)
|
||||
endif
|
||||
|
||||
tegra-dtstree := $(SOURCE_TOP)/vendor/nvidia/tegra/dts
|
||||
|
||||
null :=
|
||||
space :=$(null) $(null)
|
||||
|
||||
DTC_INCLUDE := $(srctree)/arch/arm64/boot/dts/nvidia
|
||||
# SOC independent common include
|
||||
DTC_INCLUDE += $(tegra-dtstree)/tegra/nv-public
|
||||
DTC_INCLUDE += $(tegra-dtstree)/tegra/nv-public/include/kernel
|
||||
DTC_INCLUDE += $(tegra-dtstree)/tegra/nv-public/include/nvidia-oot
|
||||
|
||||
ifeq ($(CONFIG_ARCH_TEGRA_234_SOC),y)
|
||||
# SOC T23X specific common include
|
||||
DTC_INCLUDE += $(tegra-dtstree)/t23x/nv-public/include/kernel
|
||||
DTC_INCLUDE += $(tegra-dtstree)/t23x/nv-public/include/nvidia-oot
|
||||
DTC_INCLUDE += $(tegra-dtstree)/t23x/nv-public/include/platforms
|
||||
DTC_INCLUDE += $(tegra-dtstree)/t23x/nv-public
|
||||
endif
|
||||
|
||||
dtb-y :=
|
||||
dtbo-y :=
|
||||
fdts :=
|
||||
ifeq ($(CONFIG_ARCH_TEGRA_210_SOC),y)
|
||||
fdts += $(tegra-dtstree)/t21x
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_TEGRA_186_SOC),y)
|
||||
fdts += $(tegra-dtstree)/t18x
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_TEGRA_194_SOC),y)
|
||||
fdts += $(tegra-dtstree)/t19x
|
||||
endif
|
||||
ifeq ($(CONFIG_ARCH_TEGRA_234_SOC),y)
|
||||
fdts += $(tegra-dtstree)/t23x
|
||||
endif
|
||||
|
||||
# Add internal SOCs to scan the DT makefiles
|
||||
ifneq ($(internal_soc_list),)
|
||||
fdts += $(addprefix $(tegra-dtstree)/,$(internal_soc_list))
|
||||
endif
|
||||
|
||||
# Remove the DTs from protected soc list
|
||||
ifneq ($(protected_soc_list),)
|
||||
kdts := $(foreach dt_path, $(fdts), $(if $(filter $(protected_soc_list),$(patsubst -,$(space),$(subst /, $(space),$(dt_path)))),,$(dt_path)))
|
||||
kdts := $(filter-out $(space)$(space),$(kdts))
|
||||
else
|
||||
kdts := $(fdts)
|
||||
endif
|
||||
|
||||
dts_makefile=$(foreach d,$(wildcard $1*), $(call dts_makefile,$(d)/,$(2)) $(if $(findstring Makefile,$(d)),$(d)))
|
||||
dts_mfiles = $(call dts_makefile, $(kdts), Makefile)
|
||||
|
||||
ifneq ($(dts_mfiles),)
|
||||
dts-include :=
|
||||
include $(dts_mfiles)
|
||||
ifneq ($(dts-include),)
|
||||
DTC_INCLUDE += $(addprefix $(tegra-dtstree)/,$(dts-include))
|
||||
endif
|
||||
endif
|
||||
|
||||
# Add path of main Makefile to each dtb/dtbo list
|
||||
DTB_OBJS := $(addprefix $(obj)/,$(dtb-y))
|
||||
DTBO_OBJS := $(addprefix $(obj)/,$(dtbo-y))
|
||||
|
||||
define _define_dtb_rule
|
||||
$(obj)/$(1): $(tegra-dtstree)/$(patsubst %.dtb,%.dts,$(1)) FORCE
|
||||
endef
|
||||
|
||||
$(foreach _dtb, $(dtb-y), $(eval $(call _define_dtb_rule,$(_dtb))))
|
||||
|
||||
$(DTB_OBJS):
|
||||
$(call if_changed_dep,dtc)
|
||||
|
||||
define _define_dtbo_rule
|
||||
$(obj)/$(1): $(tegra-dtstree)/$(patsubst %.dtbo,%.dts,$(1)) FORCE
|
||||
endef
|
||||
|
||||
$(foreach _dtbo, $(dtbo-y), $(eval $(call _define_dtbo_rule,$(_dtbo))))
|
||||
|
||||
$(DTBO_OBJS):
|
||||
$(call if_changed_dep,dtc)
|
||||
|
||||
DTBS_DTBOS := $(DTB_OBJS)$(DTBO_OBJS)
|
||||
|
||||
dtbs: $(DTB_OBJS) $(DTBO_OBJS) FORCE
|
||||
if [ ! -d $(obj)/dtbs/ ] ; then \
|
||||
mkdir -p $(obj)/dtbs/ ; \
|
||||
fi
|
||||
if [ ! -z "$(DTBS_DTBOS)" ] ; then \
|
||||
cp -u $(DTB_OBJS) $(DTBO_OBJS) $(obj)/dtbs/ ; \
|
||||
fi
|
||||
if [ -d $(obj)/hardware/ ] ; then \
|
||||
rm -rf $(obj)/hardware/ ; \
|
||||
fi
|
||||
|
||||
dtb-y += $(dtbo-y)
|
||||
|
||||
clean-files := *.dtb *.dtbo *.tmp
|
||||
@@ -3,5 +3,21 @@
|
||||
"repository": "android_kernel_nvidia_kernel",
|
||||
"target_path": "kernel/platform/kernel-6.12/vendor/nvidia/kernel",
|
||||
"branch": "lineage-23.2_6.12"
|
||||
},
|
||||
{
|
||||
"repository": "android_hardware_nvidia_t18x_lineage",
|
||||
"target_path": "kernel/platform/kernel-6.12/vendor/nvidia/tegra/dts/t18x/lineage"
|
||||
},
|
||||
{
|
||||
"repository": "android_hardware_nvidia_t19x_lineage",
|
||||
"target_path": "kernel/platform/kernel-6.12/vendor/nvidia/tegra/dts/t19x/lineage"
|
||||
},
|
||||
{
|
||||
"repository": "android_hardware_nvidia_t21x_lineage",
|
||||
"target_path": "kernel/platform/kernel-6.12/vendor/nvidia/tegra/dts/t21x/lineage"
|
||||
},
|
||||
{
|
||||
"repository": "android_hardware_nvidia_t21x_nx",
|
||||
"target_path": "kernel/platform/kernel-6.12/vendor/nvidia/tegra/dts/t21x/nx"
|
||||
}
|
||||
]
|
||||
Reference in new issue
Block a user