mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-22 09:12:24 +03:00
ACR ucode is encrypted using different keys for prod/dbg boards. This change adds a check to select ACR ucode based on board type. Note: This support is added for t18x. In the sub-sequent CL, support for T210 will be added and since ACR binaries are different for gp10b and gm20b, a new ACR init function is created for gp10b to accept new ACR prod/dbg binaries. Bug 2672836 dev-main reference patch: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2471590 Change-Id: Ib0a01bce4f3a3187aa15a669649f8510c88dfd0a Signed-off-by: mpoojary <mpoojary@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2601970 Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit
381 lines
8.7 KiB
Makefile
381 lines
8.7 KiB
Makefile
GCOV_PROFILE := y
|
|
|
|
ccflags-y += -I$(srctree.nvgpu)/drivers/gpu/nvgpu/include
|
|
ccflags-y += -I$(srctree.nvgpu)/drivers/gpu/nvgpu
|
|
ccflags-y += -I$(srctree.nvgpu)/include
|
|
ccflags-y += -I$(srctree.nvgpu)/include/uapi
|
|
ccflags-y += -I$(srctree.nvgpu-next)/drivers/gpu/nvgpu
|
|
|
|
ccflags-y += -I$(srctree)/drivers/devfreq
|
|
|
|
ccflags-y += -Wno-multichar
|
|
ccflags-y += -Werror
|
|
ccflags-y += -Wno-error=cpp
|
|
ifeq ($(VERSION),4)
|
|
ccflags-y += -Wextra -Wno-unused-parameter -Wno-missing-field-initializers
|
|
endif
|
|
|
|
# Turn off when this is fixed upstream, if ever.
|
|
ccflags-y += -D__NVGPU_PREVENT_UNTRUSTED_SPECULATION
|
|
|
|
obj-$(CONFIG_GK20A) := nvgpu.o
|
|
|
|
# OS independent parts of nvgpu. The work to collect files here
|
|
# is in progress.
|
|
|
|
nvgpu-y += common/bus/bus_gk20a.o \
|
|
common/bus/bus_gm20b.o \
|
|
common/bus/bus_gp10b.o \
|
|
common/bus/bus_gv100.o \
|
|
common/priv_ring/priv_ring_gm20b.o \
|
|
common/priv_ring/priv_ring_gp10b.o \
|
|
common/ptimer/ptimer.o \
|
|
common/ptimer/ptimer_gk20a.o \
|
|
common/fb/fb_gm20b.o \
|
|
common/fb/fb_gp10b.o \
|
|
common/fb/fb_gp106.o \
|
|
common/fb/fb_gv11b.o \
|
|
common/fb/fb_gv100.o \
|
|
common/xve/xve_gp106.o \
|
|
common/therm/therm.o \
|
|
common/therm/therm_gm20b.o \
|
|
common/therm/therm_gp10b.o \
|
|
common/therm/therm_gp106.o \
|
|
common/therm/therm_gv11b.o \
|
|
common/fuse/fuse_gm20b.o \
|
|
common/fuse/fuse_gp10b.o \
|
|
common/fuse/fuse_gp106.o \
|
|
common/top/top_gv100.o \
|
|
common/mc/mc.o \
|
|
common/mc/mc_gm20b.o \
|
|
common/mc/mc_gp10b.o \
|
|
common/mc/mc_gv11b.o \
|
|
common/mc/mc_gv100.o \
|
|
common/sync/channel_sync.o \
|
|
common/power_features/power_features.o \
|
|
common/power_features/cg/cg.o \
|
|
common/power_features/pg/pg.o
|
|
# Linux specific parts of nvgpu.
|
|
nvgpu-y += \
|
|
os/linux/os_ops.o \
|
|
os/linux/os_ops_gm20b.o \
|
|
os/linux/os_ops_gp10b.o \
|
|
os/linux/os_ops_gp106.o \
|
|
os/linux/os_ops_gv100.o \
|
|
os/linux/os_ops_gv11b.o \
|
|
os/linux/kmem.o \
|
|
os/linux/timers.o \
|
|
os/linux/ioctl.o \
|
|
os/linux/ioctl_ctrl.o \
|
|
os/linux/ioctl_as.o \
|
|
os/linux/ioctl_channel.o \
|
|
os/linux/ioctl_tsg.o \
|
|
os/linux/ioctl_dbg.o \
|
|
os/linux/ioctl_clk_arb.o \
|
|
os/linux/log.o \
|
|
os/linux/cond.o \
|
|
os/linux/nvgpu_mem.o \
|
|
os/linux/linux-dma.o \
|
|
os/linux/driver_common.o \
|
|
os/linux/firmware.o \
|
|
os/linux/thread.o \
|
|
os/linux/vm.o \
|
|
os/linux/intr.o \
|
|
os/linux/sysfs.o \
|
|
os/linux/io.o \
|
|
os/linux/io_usermode.o \
|
|
os/linux/rwsem.o \
|
|
os/linux/comptags.o \
|
|
os/linux/dmabuf.o \
|
|
os/linux/sched.o \
|
|
os/linux/linux-channel.o \
|
|
os/linux/sim.o \
|
|
os/linux/sim_pci.o \
|
|
os/linux/os_sched.o \
|
|
os/linux/nvlink.o \
|
|
os/linux/dt.o \
|
|
os/linux/ecc_sysfs.o \
|
|
os/linux/ltc.o \
|
|
os/linux/vpr.o
|
|
|
|
nvgpu-$(CONFIG_NVGPU_SUPPORT_LINUX_ECC_ERROR_REPORTING) += os/linux/sdl.o
|
|
|
|
nvgpu-$(CONFIG_GK20A_VIDMEM) += \
|
|
os/linux/dmabuf_vidmem.o
|
|
|
|
nvgpu-$(CONFIG_DEBUG_FS) += \
|
|
os/linux/debug.o \
|
|
os/linux/debug_gr.o \
|
|
os/linux/debug_fifo.o \
|
|
os/linux/debug_ce.o \
|
|
os/linux/debug_pmu.o \
|
|
os/linux/debug_pmgr.o \
|
|
os/linux/debug_sched.o \
|
|
os/linux/debug_allocator.o \
|
|
os/linux/debug_hal.o \
|
|
os/linux/debug_clk_gm20b.o \
|
|
os/linux/debug_clk_gp106.o \
|
|
os/linux/debug_therm_gp106.o \
|
|
os/linux/debug_bios.o \
|
|
os/linux/debug_ltc.o \
|
|
os/linux/debug_xve.o \
|
|
os/linux/debug_clk_gv100.o
|
|
|
|
ifeq ($(CONFIG_NVGPU_TRACK_MEM_USAGE),y)
|
|
nvgpu-$(CONFIG_DEBUG_FS) += \
|
|
os/linux/debug_kmem.o
|
|
endif
|
|
|
|
nvgpu-$(CONFIG_GK20A_CTXSW_TRACE) += \
|
|
os/linux/ctxsw_trace.o
|
|
|
|
ifeq ($(CONFIG_GK20A_CTXSW_TRACE),y)
|
|
nvgpu-$(CONFIG_DEBUG_FS) += \
|
|
os/linux/debug_fecs_trace.o
|
|
endif
|
|
|
|
|
|
nvgpu-$(CONFIG_TEGRA_GK20A) += \
|
|
os/linux/module.o \
|
|
os/linux/module_usermode.o \
|
|
os/linux/soc.o \
|
|
os/linux/fuse.o \
|
|
os/linux/platform_gk20a_tegra.o \
|
|
os/linux/platform_gp10b_tegra.o \
|
|
os/linux/platform_gv11b_tegra.o
|
|
|
|
nvgpu-$(CONFIG_SYNC) += \
|
|
os/linux/sync_sema_android.o \
|
|
os/linux/os_fence_android.o \
|
|
os/linux/os_fence_android_sema.o
|
|
|
|
ifeq ($(CONFIG_TEGRA_GK20A_NVHOST), y)
|
|
nvgpu-$(CONFIG_SYNC) += \
|
|
os/linux/os_fence_android_syncpt.o
|
|
endif
|
|
|
|
nvgpu-$(CONFIG_GK20A_PCI) += \
|
|
os/linux/pci.o \
|
|
os/linux/pci_usermode.o
|
|
|
|
nvgpu-$(CONFIG_TEGRA_GK20A_NVHOST) += \
|
|
os/linux/nvhost.o
|
|
|
|
nvgpu-$(CONFIG_TEGRA_GR_VIRTUALIZATION) += \
|
|
os/linux/vgpu/platform_vgpu_tegra.o \
|
|
os/linux/vgpu/fecs_trace_vgpu.o \
|
|
os/linux/vgpu/sysfs_vgpu.o \
|
|
os/linux/vgpu/vgpu_ivc.o \
|
|
os/linux/vgpu/vgpu_ivm.o \
|
|
os/linux/vgpu/vgpu_linux.o \
|
|
os/linux/vgpu/gv11b/platform_gv11b_vgpu_tegra.o
|
|
|
|
nvgpu-$(CONFIG_COMMON_CLK) += \
|
|
os/linux/clk.o
|
|
|
|
nvgpu-$(CONFIG_GK20A_DEVFREQ) += \
|
|
os/linux/scale.o
|
|
|
|
nvgpu-$(CONFIG_NVGPU_SUPPORT_CDE) += \
|
|
os/linux/cde.o \
|
|
os/linux/cde_gm20b.o \
|
|
os/linux/cde_gp10b.o
|
|
|
|
nvgpu-$(CONFIG_GK20A_RDMA) += \
|
|
os/linux/nvidia_p2p.o
|
|
|
|
ifeq ($(CONFIG_DEBUG_FS),y)
|
|
nvgpu-$(CONFIG_NVGPU_SUPPORT_CDE) += \
|
|
os/linux/debug_cde.o
|
|
endif
|
|
|
|
nvgpu-y += \
|
|
common/mm/nvgpu_allocator.o \
|
|
common/mm/bitmap_allocator.o \
|
|
common/mm/buddy_allocator.o \
|
|
common/mm/page_allocator.o \
|
|
common/mm/lockless_allocator.o \
|
|
common/mm/gmmu.o \
|
|
common/mm/pd_cache.o \
|
|
common/mm/vm.o \
|
|
common/mm/vm_area.o \
|
|
common/mm/nvgpu_mem.o \
|
|
common/mm/comptags.o \
|
|
common/mm/mm.o \
|
|
common/mm/dma.o \
|
|
common/enabled.o \
|
|
common/nvlink.o \
|
|
common/pramin.o \
|
|
common/semaphore.o \
|
|
common/as.o \
|
|
common/rbtree.o \
|
|
common/vbios/bios.o \
|
|
common/falcon/falcon.o \
|
|
common/falcon/falcon_queue.o \
|
|
common/init/hal_init.o \
|
|
common/pmu/pmu.o \
|
|
common/pmu/pmu_ipc.o \
|
|
common/pmu/pmu_fw.o \
|
|
common/pmu/pmu_pg.o \
|
|
common/pmu/pmu_perfmon.o \
|
|
common/pmu/pmu_debug.o \
|
|
common/ltc/ltc.o \
|
|
common/ltc/ltc_gm20b.o \
|
|
common/ltc/ltc_gp10b.o \
|
|
common/ltc/ltc_gv11b.o \
|
|
common/sec2/sec2.o \
|
|
common/io_common.o \
|
|
common/clock_gating/gm20b_gating_reglist.o \
|
|
common/clock_gating/gp106_gating_reglist.o \
|
|
common/clock_gating/gp10b_gating_reglist.o \
|
|
common/clock_gating/gv100_gating_reglist.o \
|
|
common/clock_gating/gv11b_gating_reglist.o \
|
|
common/sim.o \
|
|
common/sim_pci.o \
|
|
common/fifo/channel.o \
|
|
common/fifo/submit.o \
|
|
common/fifo/tsg.o \
|
|
common/ecc.o \
|
|
common/ce2.o \
|
|
gk20a/gk20a.o \
|
|
gk20a/ce2_gk20a.o \
|
|
gk20a/fifo_gk20a.o \
|
|
gk20a/dbg_gpu_gk20a.o \
|
|
gk20a/regops_gk20a.o \
|
|
gk20a/gr_gk20a.o \
|
|
gk20a/mm_gk20a.o \
|
|
gk20a/pmu_gk20a.o \
|
|
gk20a/flcn_gk20a.o \
|
|
gk20a/fence_gk20a.o \
|
|
gk20a/gr_ctx_gk20a_sim.o \
|
|
gk20a/gr_ctx_gk20a.o \
|
|
gk20a/fecs_trace_gk20a.o \
|
|
gm20b/hal_gm20b.o \
|
|
gm20b/gr_gm20b.o \
|
|
gm20b/clk_gm20b.o \
|
|
gm20b/fifo_gm20b.o \
|
|
gm20b/gr_ctx_gm20b.o \
|
|
gm20b/acr_gm20b.o \
|
|
gm20b/pmu_gm20b.o \
|
|
gm20b/mm_gm20b.o \
|
|
gm20b/regops_gm20b.o \
|
|
gm20b/fecs_trace_gm20b.o \
|
|
boardobj/boardobj.o \
|
|
boardobj/boardobjgrp.o \
|
|
boardobj/boardobjgrpmask.o \
|
|
boardobj/boardobjgrp_e255.o \
|
|
boardobj/boardobjgrp_e32.o
|
|
|
|
nvgpu-$(CONFIG_GK20A_VIDMEM) += \
|
|
common/mm/vidmem.o
|
|
|
|
nvgpu-$(CONFIG_TEGRA_GR_VIRTUALIZATION) += \
|
|
vgpu/ltc_vgpu.o \
|
|
vgpu/gr_vgpu.o \
|
|
vgpu/fifo_vgpu.o \
|
|
vgpu/ce2_vgpu.o \
|
|
vgpu/mm_vgpu.o \
|
|
vgpu/vgpu.o \
|
|
vgpu/dbg_vgpu.o \
|
|
vgpu/tsg_vgpu.o \
|
|
vgpu/css_vgpu.o \
|
|
vgpu/ecc_vgpu.o \
|
|
vgpu/clk_vgpu.o \
|
|
vgpu/fb_vgpu.o \
|
|
vgpu/gm20b/vgpu_gr_gm20b.o \
|
|
vgpu/gp10b/vgpu_hal_gp10b.o \
|
|
vgpu/gp10b/vgpu_gr_gp10b.o \
|
|
vgpu/gp10b/vgpu_fuse_gp10b.o \
|
|
vgpu/gp10b/vgpu_mm_gp10b.o \
|
|
vgpu/gv11b/vgpu_gv11b.o \
|
|
vgpu/gv11b/vgpu_hal_gv11b.o \
|
|
vgpu/gv11b/vgpu_gr_gv11b.o \
|
|
vgpu/gv11b/vgpu_fifo_gv11b.o \
|
|
vgpu/gv11b/vgpu_subctx_gv11b.o \
|
|
vgpu/gv11b/vgpu_tsg_gv11b.o \
|
|
|
|
nvgpu-$(CONFIG_GK20A_CYCLE_STATS) += \
|
|
gk20a/css_gr_gk20a.o
|
|
|
|
nvgpu-y += \
|
|
gp10b/acr_gp10b.o \
|
|
gp10b/gr_gp10b.o \
|
|
gp10b/clk_arb_gp10b.o \
|
|
gp10b/gr_ctx_gp10b.o \
|
|
gp10b/ce_gp10b.o \
|
|
gp10b/fifo_gp10b.o \
|
|
gp10b/mm_gp10b.o \
|
|
gp10b/pmu_gp10b.o \
|
|
gp10b/hal_gp10b.o \
|
|
gp10b/regops_gp10b.o \
|
|
gp10b/gp10b.o \
|
|
gp10b/ecc_gp10b.o \
|
|
gp106/hal_gp106.o \
|
|
gp106/flcn_gp106.o \
|
|
gp106/pmu_gp106.o \
|
|
gp106/mclk_gp106.o \
|
|
gp106/gr_gp106.o \
|
|
gp106/gr_ctx_gp106.o \
|
|
gp106/acr_gp106.o \
|
|
gp106/sec2_gp106.o \
|
|
gp106/fifo_gp106.o \
|
|
gp106/regops_gp106.o \
|
|
gp106/bios_gp106.o \
|
|
gv11b/gv11b.o \
|
|
gv11b/css_gr_gv11b.o \
|
|
gv11b/dbg_gpu_gv11b.o \
|
|
gv11b/hal_gv11b.o \
|
|
gv11b/gr_gv11b.o \
|
|
gv11b/fifo_gv11b.o \
|
|
gv11b/mm_gv11b.o \
|
|
gv11b/ce_gv11b.o \
|
|
gv11b/gr_ctx_gv11b.o \
|
|
gv11b/pmu_gv11b.o \
|
|
gv11b/acr_gv11b.o \
|
|
gv11b/subctx_gv11b.o \
|
|
gv11b/regops_gv11b.o \
|
|
gv11b/ecc_gv11b.o \
|
|
gv11b/tpc_gv11b.o \
|
|
gv100/mm_gv100.o \
|
|
gv100/gr_ctx_gv100.o \
|
|
gv100/bios_gv100.o \
|
|
gv100/fifo_gv100.o \
|
|
gv100/gr_gv100.o \
|
|
gv100/regops_gv100.o \
|
|
gv100/flcn_gv100.o \
|
|
gv100/nvlink_gv100.o \
|
|
gv100/hal_gv100.o \
|
|
gv100/pmu_gv100.o \
|
|
gv100/perf_gv100.o \
|
|
gv100/gsp_gv100.o \
|
|
pstate/pstate.o \
|
|
clk/clk_vin.o \
|
|
clk/clk_fll.o \
|
|
clk/clk_domain.o \
|
|
clk/clk_prog.o \
|
|
clk/clk_vf_point.o \
|
|
clk/clk_arb.o \
|
|
clk/clk_freq_controller.o \
|
|
pmu_perf/vfe_var.o \
|
|
pmu_perf/vfe_equ.o \
|
|
pmu_perf/pmu_perf.o \
|
|
clk/clk.o \
|
|
gp106/clk_gp106.o \
|
|
gp106/clk_arb_gp106.o \
|
|
pmgr/pwrdev.o \
|
|
pmgr/pmgr.o \
|
|
pmgr/pmgrpmu.o \
|
|
pmgr/pwrmonitor.o \
|
|
pmgr/pwrpolicy.o \
|
|
volt/volt_rail.o \
|
|
volt/volt_dev.o \
|
|
volt/volt_policy.o \
|
|
volt/volt_pmu.o \
|
|
therm/thrm.o \
|
|
therm/thrmdev.o \
|
|
therm/thrmchannel.o \
|
|
therm/thrmpmu.o \
|
|
lpwr/rppg.o \
|
|
lpwr/lpwr.o \
|
|
gv100/clk_gv100.o
|