Where are variables with prefix "NV_" of the souce code defined?

Hi guy,

I can’t find any definition of variables with prefix “NV_” of the nvidia kernel source code.Take NV_BUILD_KERNEL_DTS_ROOT and NV_COMPONENT_DIR for example, as you see below,

kernel_source$ ls
build_out  hardware  kernel  nvbuild.sh  nvcommon_build.sh

kernel_source$ ack NV_COMPONENT_DIR
kernel/nvgpu/drivers/gpu/nvgpu/Makefile.tmk
18:include $(NV_COMPONENT_DIR)/Makefile.sources
34:             $(NV_COMPONENT_DIR)/../../../../nvgpu-next/drivers/gpu/nvgpu

kernel/nvgpu/userspace/Makefile.tmk
56:$(NV_COMPONENT_SYSTEMIMAGE_DIR)/$(NV_UNIT_SH) : $(NV_COMPONENT_DIR)/$(NV_UNIT_SH) $(NV_COMPONENT_SYSTEMIMAGE_DIR)

kernel_source$ ack KERNEL_DTS_ROOT
kernel/kernel-4.9/scripts/Kbuild.include
481:ifneq ($(NV_BUILD_KERNEL_DTS_ROOT),)
482:tegra-dtstree = $(NV_BUILD_KERNEL_DTS_ROOT)
483:$(info, $(NV_BUILD_KERNEL_DTS_ROOT))

Thanks

It’s internal build machine parameter. It’s not use for the public release.

Hi ShaneCCC,

Thanks

Still don’t understand, what is " internal build machine parameter"? How the Make command know the real value of $(NV_BUILD_KERNEL_DTS_ROOT)?

Hi ShaneCCC,

If I want to make a my own “internal build machine parameter” like “GARRET_BUILD_KERNEL_DTS_ROOT”, how could I make it?

Thanks

Why do you need it? Those parameter didn’t working for the release source code. And it just a path to point to the folders.

Hi ShaneCCC,

Just want to figure out Nvidia dts and its build system.

thanks

Hi ShaneCCC,

I know it just a path name. But where it definition, I want to know.
Please, I still can’t find a way to figure out it. Please tell me what you know about this “internal build machine parameter”.

Thanks

It’s environment setting script to set the patch depend on the input parameter that the location of the source for the internal makefile.

Thanks,

Actually, I found that they are not set and used in release code. Maybe they are just used for Nvidia test.