mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 17:25:35 +03:00
Kleaf: add kernel modules in nvidia-oot
1. Add BUILD.bazel file. 2. Add build target of kernel module and required include folder srctree.* in Makefile to fix the build issue 3. The tr (a build tool defined by kleaf in the sandbox) which supported by toybox will cause the conversion of header files to file_define to fail. Fixed it by separating with two tr commands. Bug 4344670 Change-Id: I56dcc148960f3b7703335943281589f42caa9af7 Signed-off-by: Jian-Min Liu <jianminl@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3066225 Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
6025535763
commit
1dc806cb91
178
BUILD.bazel
Normal file
178
BUILD.bazel
Normal file
@@ -0,0 +1,178 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||||
|
|
||||||
|
load("//build/kernel/kleaf:kernel.bzl", "kernel_module")
|
||||||
|
|
||||||
|
package(
|
||||||
|
default_visibility = [
|
||||||
|
"//visibility:public",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "oot.includes",
|
||||||
|
srcs = glob([
|
||||||
|
"include/**/*.h",
|
||||||
|
]),
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "host1x.includes",
|
||||||
|
srcs = glob([
|
||||||
|
"drivers/gpu/host1x/include/**/*.h",
|
||||||
|
]),
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "nvmap.includes",
|
||||||
|
srcs = glob([
|
||||||
|
"drivers/video/tegra/nvmap/include/**/*.h",
|
||||||
|
]),
|
||||||
|
)
|
||||||
|
|
||||||
|
kernel_module(
|
||||||
|
name = "nvoot",
|
||||||
|
srcs = glob(
|
||||||
|
["**"],
|
||||||
|
exclude = [
|
||||||
|
".*",
|
||||||
|
".*/**",
|
||||||
|
"*.bazel",
|
||||||
|
"**/*.bzl",
|
||||||
|
],
|
||||||
|
) + [
|
||||||
|
"//hwpm:hwpm_headers",
|
||||||
|
"//nvidia-oot/scripts/conftest:conftest_headers",
|
||||||
|
],
|
||||||
|
outs = [
|
||||||
|
"drivers/block/tegra_oops_virt_storage/tegra_hv_vblk_oops.ko",
|
||||||
|
"drivers/block/tegra_virt_storage/tegra_vblk.ko",
|
||||||
|
"drivers/bmi088/bmi088.ko",
|
||||||
|
"drivers/cpuidle/cpuidle-debugfs.ko",
|
||||||
|
"drivers/cpuidle/cpuidle-tegra-auto.ko",
|
||||||
|
"drivers/crypto/tegra-hv-vse-safety.ko",
|
||||||
|
"drivers/crypto/tegra-nvvse-cryptodev.ko",
|
||||||
|
"drivers/crypto/tegra-se-nvrng.ko",
|
||||||
|
"drivers/crypto/tegra/tegra-se.ko",
|
||||||
|
"drivers/devfreq/governor_pod_scaling.ko",
|
||||||
|
"drivers/firmware/tegra/ivc_ext.ko",
|
||||||
|
"drivers/firmware/tegra/tegra_bpmp.ko",
|
||||||
|
"drivers/gpio/gpio-max77851.ko",
|
||||||
|
"drivers/gpu/drm/tegra/tegra-drm.ko",
|
||||||
|
"drivers/gpu/host1x-fence/host1x-fence.ko",
|
||||||
|
"drivers/gpu/host1x/host1x.ko",
|
||||||
|
"drivers/gpu/host1x-nvhost/host1x-nvhost.ko",
|
||||||
|
"drivers/hwmon/f75308.ko",
|
||||||
|
"drivers/i2c/busses/i2c-nvvrs11.ko",
|
||||||
|
"drivers/media/i2c/max9295.ko",
|
||||||
|
"drivers/media/i2c/max9296.ko",
|
||||||
|
"drivers/media/platform/tegra/cam_fsync/cam_fsync.ko",
|
||||||
|
"drivers/media/platform/tegra/cdi/cdi_dev.ko",
|
||||||
|
"drivers/media/platform/tegra/cdi/cdi_gpio.ko",
|
||||||
|
"drivers/media/platform/tegra/cdi/cdi_mgr.ko",
|
||||||
|
"drivers/media/platform/tegra/cdi/cdi_pwm.ko",
|
||||||
|
"drivers/media/platform/tegra/isc/isc_dev.ko",
|
||||||
|
"drivers/media/platform/tegra/isc/isc_gpio.ko",
|
||||||
|
"drivers/media/platform/tegra/isc/isc_mgr.ko",
|
||||||
|
"drivers/media/platform/tegra/isc/isc_pwm.ko",
|
||||||
|
"drivers/mfd/max77851.ko",
|
||||||
|
"drivers/mfd/nvidia-vrs-pseq.ko",
|
||||||
|
"drivers/misc/bluedroid_pm.ko",
|
||||||
|
"drivers/misc/ioctl_example.ko",
|
||||||
|
"drivers/misc/nvscic2c-pcie/nvscic2c-pcie-epc.ko",
|
||||||
|
"drivers/misc/nvscic2c-pcie/nvscic2c-pcie-epf.ko",
|
||||||
|
"drivers/misc/nvsciipc/nvsciipc.ko",
|
||||||
|
"drivers/misc/tegra-pcie-dma-test.ko",
|
||||||
|
"drivers/mtd/devices/tegra_hv_mtd.ko",
|
||||||
|
"drivers/net/can/mttcan/mttcan.ko",
|
||||||
|
"drivers/net/ethernet/marvell/oak/oak_pci.ko",
|
||||||
|
"drivers/net/ethernet/microchip/lan743x.ko",
|
||||||
|
"drivers/net/ethernet/nvidia/nvethernet/nvethernet.ko",
|
||||||
|
"drivers/net/ethernet/nvidia/pcie/tegra_vnet.ko",
|
||||||
|
"drivers/net/ethernet/realtek/r8168.ko",
|
||||||
|
"drivers/nv-p2p/nvidia-p2p.ko",
|
||||||
|
"drivers/nvpmodel/nvpmodel-clk-cap.ko",
|
||||||
|
"drivers/nvpps/nvpps.ko",
|
||||||
|
"drivers/nv-virtio/nv-virtio-console-poc.ko",
|
||||||
|
"drivers/pci/controller/pcie-tegra-vf.ko",
|
||||||
|
"drivers/pci/controller/tegra-pcie-edma.ko",
|
||||||
|
"drivers/pci/endpoint/functions/pci-epf-dma-test.ko",
|
||||||
|
"drivers/pinctrl/pinctrl-max77851.ko",
|
||||||
|
"drivers/pinctrl/pinctrl-tegra194-pexclk-padctrl.ko",
|
||||||
|
"drivers/pinctrl/pinctrl-tegra234-dpaux.ko",
|
||||||
|
"drivers/platform/tegra/aon/tegra234-aon.ko",
|
||||||
|
"drivers/platform/tegra/aon/tegra-aon-ivc-echo.ko",
|
||||||
|
"drivers/platform/tegra/dce/tegra-dce.ko",
|
||||||
|
"drivers/platform/tegra/mce/tegra-mce.ko",
|
||||||
|
"drivers/platform/tegra/mc-hwpm.ko",
|
||||||
|
"drivers/platform/tegra/mc-utils/mc-utils.ko",
|
||||||
|
"drivers/platform/tegra/nvadsp/nvadsp.ko",
|
||||||
|
"drivers/platform/tegra/psc/tegra23x_psc.ko",
|
||||||
|
"drivers/platform/tegra/tegra-bootloader-debug.ko",
|
||||||
|
"drivers/platform/tegra/tegra-cactmon-mc-all.ko",
|
||||||
|
"drivers/platform/tegra/tegra-fsicom.ko",
|
||||||
|
"drivers/platform/tegra/tegra-uss-io-proxy.ko",
|
||||||
|
"drivers/platform/tegra/uncore_pmu/tegra23x_perf_uncore.ko",
|
||||||
|
"drivers/power/reset/max77851-poweroff.ko",
|
||||||
|
"drivers/pwm/pwm-tegra-tachometer.ko",
|
||||||
|
"drivers/ras/arm64-ras.ko",
|
||||||
|
"drivers/regulator/max77851-regulator.ko",
|
||||||
|
"drivers/rtc/nvvrs-pseq-rtc.ko",
|
||||||
|
"drivers/rtc/rtc-max77851.ko",
|
||||||
|
"drivers/scsi/ufs/ufs-tegra.ko",
|
||||||
|
"drivers/scsi/ufs/ufs-tegra-provision.ko",
|
||||||
|
"drivers/soc/tegra/fuse/kfuse.ko",
|
||||||
|
"drivers/spi/spi-aurix-tegra.ko",
|
||||||
|
"drivers/spi/spi-tegra124-slave.ko",
|
||||||
|
"drivers/spi/spi-tegra210-quad.ko",
|
||||||
|
"drivers/staging/platform/tegra/gte/tegra194_gte.ko",
|
||||||
|
"drivers/staging/platform/tegra/gte_test/tegra194_gte_test.ko",
|
||||||
|
"drivers/thermal/max77851_thermal.ko",
|
||||||
|
"drivers/tty/serial/wch_35x/wch.ko",
|
||||||
|
"drivers/usb/typec/fusb301.ko",
|
||||||
|
"drivers/video/tegra/camera/tegra_camera_platform.ko",
|
||||||
|
"drivers/video/tegra/dc/bridge/maxim_gmsl_dp_serializer.ko",
|
||||||
|
"drivers/video/tegra/dc/bridge/maxim_gmsl_hdmi_serializer.ko",
|
||||||
|
"drivers/video/tegra/dc/bridge/ti_fpdlink_dp_serializer.ko",
|
||||||
|
"drivers/video/tegra/host/capture/nvhost-capture.ko",
|
||||||
|
"drivers/video/tegra/host/nvcsi/nvhost-nvcsi.ko",
|
||||||
|
"drivers/video/tegra/host/nvdla/nvhost-nvdla.ko",
|
||||||
|
"drivers/video/tegra/nvmap/nvmap.ko",
|
||||||
|
"drivers/video/tegra/tsec/tsecriscv.ko",
|
||||||
|
"drivers/video/tegra/virt/tegra_gr_comm.ko",
|
||||||
|
"drivers/virt/tegra/hvc_sysfs.ko",
|
||||||
|
"drivers/virt/tegra/ivc-cdev.ko",
|
||||||
|
"drivers/virt/tegra/tegra_hv.ko",
|
||||||
|
"drivers/virt/tegra/tegra_hv_pm_ctl.ko",
|
||||||
|
"drivers/virt/tegra/tegra_hv_vcpu_yield.ko",
|
||||||
|
"drivers/virt/tegra/userspace_ivc_mempool.ko",
|
||||||
|
"drivers/watchdog/max77851_wdt.ko",
|
||||||
|
"drivers/watchdog/softdog-platform.ko",
|
||||||
|
"drivers/watchdog/watchdog-tegra-t18x.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra186-arad-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra186-asrc-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra186-dspk-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-admaif-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-adx-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-afc-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-ahub-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-amx-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-dmic-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-i2s-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-iqc-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-mixer-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-mvc-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-ope-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra210-sfc-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra-controls.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra-machine-driver-oot.ko",
|
||||||
|
"sound/soc/tegra/snd-soc-tegra-utils-oot.ko",
|
||||||
|
"sound/soc/tegra-virt-alt/snd-soc-tegra210-virt-alt-admaif.ko",
|
||||||
|
"sound/soc/tegra-virt-alt/snd-soc-tegra-virt-t210ref-pcm.ko",
|
||||||
|
"sound/tegra-safety-audio/safety-i2s.ko",
|
||||||
|
],
|
||||||
|
kernel_build = "//android-common-kernel/6.1/kernel-source:tegra_android",
|
||||||
|
deps = [
|
||||||
|
"//hwpm/drivers/tegra/hwpm:hwpm",
|
||||||
|
],
|
||||||
|
)
|
||||||
4
Makefile
4
Makefile
@@ -1,6 +1,10 @@
|
|||||||
# SPDX-License-Identifier: GPL-2.0
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
# Copyright (c) 2022-2023, NVIDIA CORPORATION. All rights reserved.
|
# Copyright (c) 2022-2023, NVIDIA CORPORATION. All rights reserved.
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_TEGRA_KLEAF_BUILD),y)
|
||||||
|
include $(abspath $(shell dirname $(lastword $(MAKEFILE_LIST))))/Makefile.kleaf
|
||||||
|
endif
|
||||||
|
|
||||||
LINUXINCLUDE += -I$(srctree.nvconftest)
|
LINUXINCLUDE += -I$(srctree.nvconftest)
|
||||||
LINUXINCLUDE += -I$(srctree.nvidia-oot)/include
|
LINUXINCLUDE += -I$(srctree.nvidia-oot)/include
|
||||||
|
|
||||||
|
|||||||
23
Makefile.kleaf
Normal file
23
Makefile.kleaf
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||||
|
|
||||||
|
ifeq ($(origin srctree.nvconftest), undefined)
|
||||||
|
srctree.nvconftest := $(abspath $(NV_BUILD_KERNEL_NVCONFTEST_OUT))
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(origin srctree.nvidia-oot), undefined)
|
||||||
|
export srctree.nvidia-oot := $(abspath $(shell dirname $(lastword $(MAKEFILE_LIST))))
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(origin srctree.hwpm), undefined)
|
||||||
|
export srctree.hwpm := $(KERNEL_SRC)/../../../hwpm
|
||||||
|
endif
|
||||||
|
|
||||||
|
EXTRA_SYMBOLS += $(O)/../../../hwpm/drivers/tegra/hwpm/Module.symvers
|
||||||
|
|
||||||
|
KERNEL_SRC ?= /lib/modules/$(shell uname -r)/build
|
||||||
|
M ?= $(shell pwd)
|
||||||
|
|
||||||
|
modules modules_install clean:
|
||||||
|
$(MAKE) -C $(KERNEL_SRC) M=$(M) \
|
||||||
|
srctree.nvidia-oot=$$PWD KBUILD_EXTRA_SYMBOLS="$(EXTRA_SYMBOLS)" $(@)
|
||||||
14
scripts/conftest/BUILD.bazel
Normal file
14
scripts/conftest/BUILD.bazel
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
||||||
|
|
||||||
|
package(
|
||||||
|
default_visibility = [
|
||||||
|
"//visibility:public",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
filegroup(
|
||||||
|
name = "conftest_headers",
|
||||||
|
srcs = glob(["**"],
|
||||||
|
allow_empty = False,
|
||||||
|
),
|
||||||
|
)
|
||||||
@@ -66,7 +66,7 @@ test_header_presence() {
|
|||||||
TEST_CFLAGS="-E -M $CFLAGS"
|
TEST_CFLAGS="-E -M $CFLAGS"
|
||||||
|
|
||||||
file="$1"
|
file="$1"
|
||||||
file_define=NV_`echo $file | tr '/.\-a-z' '___A-Z'`_PRESENT
|
file_define=NV_`echo $file | tr '/.-' '___' | tr 'a-z' 'A-Z'`_PRESENT
|
||||||
|
|
||||||
CODE="#include <$file>"
|
CODE="#include <$file>"
|
||||||
|
|
||||||
|
|||||||
@@ -4,8 +4,14 @@
|
|||||||
GCOV_PROFILE := y
|
GCOV_PROFILE := y
|
||||||
|
|
||||||
subdir-ccflags-y += -Werror
|
subdir-ccflags-y += -Werror
|
||||||
|
|
||||||
|
ifndef CONFIG_TEGRA_SYSTEM_TYPE_ACK
|
||||||
ccflags-y += -I$(overlay)/$(src)/../tegra-virt-alt/include/
|
ccflags-y += -I$(overlay)/$(src)/../tegra-virt-alt/include/
|
||||||
ccflags-y += -I$(overlay)/$(src)/../codecs
|
ccflags-y += -I$(overlay)/$(src)/../codecs
|
||||||
|
else
|
||||||
|
ccflags-y += -I$(srctree.nvidia-oot)/sound/soc/tegra-virt-alt/include/
|
||||||
|
endif
|
||||||
|
|
||||||
ccflags-y += -I$(srctree.nvidia-oot)/sound/soc/tegra-virt-alt/nvaudio_ivc/
|
ccflags-y += -I$(srctree.nvidia-oot)/sound/soc/tegra-virt-alt/nvaudio_ivc/
|
||||||
|
|
||||||
# Tegra platform Support
|
# Tegra platform Support
|
||||||
|
|||||||
Reference in New Issue
Block a user