# -*- mode: makefile -*- # # Copyright (c) 2018-2019, NVIDIA CORPORATION. All rights reserved. # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), # to deal in the Software without restriction, including without limitation # the rights to use, copy, modify, merge, publish, distribute, sublicense, # and/or sell copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. srcs := ifdef NVGPU_POSIX srcs += os/posix/nvgpu.c \ os/posix/bitmap.c \ os/posix/log.c \ os/posix/kmem.c \ os/posix/io.c \ os/posix/posix-nvgpu_mem.c \ os/posix/posix-dma.c \ os/posix/posix-vm.c \ os/posix/timers.c \ os/posix/posix-comptags.c \ os/posix/firmware.c \ os/posix/soc.c \ os/posix/rwsem.c \ os/posix/cond.c \ os/posix/thread.c \ os/posix/error_notifier.c \ os/posix/fuse.c \ os/posix/posix-clk_arb.c \ os/posix/posix-channel.c \ os/posix/posix-tsg.c \ os/posix/posix-nvlink.c \ os/posix/lock.c \ os/posix/stubs.c \ os/posix/posix-fault-injection.c \ os/posix/posix-sim.c \ os/posix/posix-nvhost.c \ os/posix/posix-vgpu.c \ os/posix/posix-dt.c \ os/posix/posix-vidmem.c endif # POSIX sources shared between the POSIX and QNX builds. srcs += os/posix/bug.c \ os/posix/bsearch.c srcs += common/sim.c \ common/sim_pci.c \ common/init/nvgpu_init.c \ common/mm/allocators/nvgpu_allocator.c \ common/mm/allocators/bitmap_allocator.c \ common/mm/allocators/buddy_allocator.c \ common/mm/allocators/page_allocator.c \ common/mm/allocators/lockless_allocator.c \ common/mm/gmmu/page_table.c \ common/mm/gmmu/pd_cache.c \ common/mm/as.c \ common/mm/vm.c \ common/mm/vm_area.c \ common/mm/nvgpu_mem.c \ common/mm/nvgpu_sgt.c \ common/mm/comptags.c \ common/mm/mm.c \ common/mm/dma.c \ common/mm/vidmem.c \ common/bus/bus_gk20a.c \ common/bus/bus_gm20b.c \ common/bus/bus_gp10b.c \ common/bus/bus_gv100.c \ common/priv_ring/priv_ring_gm20b.c \ common/priv_ring/priv_ring_gp10b.c \ common/fb/fb_gm20b.c \ common/fb/fb_gp10b.c \ common/fb/fb_gp106.c \ common/fb/fb_gv100.c \ common/fb/fb_gv11b.c \ common/init/hal_init.c \ common/xve/xve_gp106.c \ common/therm/therm.c \ common/therm/therm_gm20b.c \ common/therm/therm_gp10b.c \ common/therm/therm_gv11b.c \ common/therm/therm_gp106.c \ common/perf/perf_gm20b.c \ common/perf/perf_gv11b.c \ common/perf/perfbuf.c \ common/perf/cyclestats_snapshot.c \ common/fuse/fuse_gm20b.c \ common/fuse/fuse_gp10b.c \ common/fuse/fuse_gp106.c \ common/top/top_gm20b.c \ common/top/top_gp10b.c \ common/top/top_gv100.c \ common/enabled.c \ common/pramin.c \ common/semaphore.c \ common/string.c \ common/rbtree.c \ common/ltc/ltc.c \ common/ltc/ltc_gm20b.c \ common/ltc/ltc_gp10b.c \ common/ltc/ltc_gv11b.c \ common/io_common.c \ common/ecc.c \ common/ce2.c \ common/vbios/bios.c \ common/falcon/falcon.c \ common/falcon/falcon_queue.c \ common/falcon/falcon_gk20a.c \ common/falcon/falcon_gp106.c \ common/falcon/falcon_gv100.c \ common/falcon/falcon_tu104.c \ common/gr/ctxsw_prog/ctxsw_prog_gm20b.c \ common/gr/ctxsw_prog/ctxsw_prog_gp10b.c \ common/gr/ctxsw_prog/ctxsw_prog_gv11b.c \ common/gr/global_ctx.c \ common/gr/subctx.c \ common/gr/ctx.c \ common/gr/config/gr_config.c \ common/gr/config/gr_config_gm20b.c \ common/netlist/netlist.c \ common/netlist/netlist_sim.c \ common/netlist/netlist_gm20b.c \ common/netlist/netlist_gp10b.c \ common/netlist/netlist_gv100.c \ common/netlist/netlist_gv11b.c \ common/netlist/netlist_tu104.c \ common/pmu/pmu.c \ common/pmu/pmu_ipc.c \ common/pmu/pmu_fw.c \ common/pmu/pmu_pg.c \ common/pmu/pmu_perfmon.c \ common/pmu/pmu_super_surface.c \ common/pmu/pmu_debug.c \ common/pmu/pmu_gk20a.c \ common/pmu/pmu_gm20b.c \ common/pmu/pmu_gp10b.c \ common/pmu/pmu_gp106.c \ common/pmu/pmu_gv11b.c \ common/pmu/pmu_gv100.c \ common/pmu/pmu_tu104.c \ common/pmu/acr_gm20b.c \ common/pmu/acr_gp10b.c \ common/pmu/acr_gp106.c \ common/pmu/acr_gv11b.c \ common/pmu/acr_tu104.c \ common/sec2/sec2.c \ common/sec2/sec2_ipc.c \ common/ptimer/ptimer.c \ common/sync/channel_sync.c \ common/sync/channel_sync_syncpt.c \ common/sync/channel_sync_semaphore.c \ common/sync/syncpt_cmdbuf_gk20a.c \ common/sync/syncpt_cmdbuf_gv11b.c \ common/sync/sema_cmdbuf_gk20a.c \ common/sync/sema_cmdbuf_gv11b.c \ common/clock_gating/gm20b_gating_reglist.c \ common/clock_gating/gp10b_gating_reglist.c \ common/clock_gating/gv11b_gating_reglist.c \ common/clock_gating/gp106_gating_reglist.c \ common/clock_gating/gv100_gating_reglist.c \ common/clock_gating/tu104_gating_reglist.c \ common/fifo/channel.c \ common/fifo/submit.c \ common/fifo/tsg.c \ common/fifo/runlist.c \ common/fifo/runlist_gk20a.c \ common/fifo/runlist_gv11b.c \ common/fifo/runlist_gv100.c \ common/fifo/runlist_tu104.c \ common/fifo/channel_gk20a.c \ common/fifo/channel_gm20b.c \ common/fifo/channel_gv11b.c \ common/fifo/channel_gv100.c \ common/mc/mc.c \ common/mc/mc_gm20b.c \ common/mc/mc_gp10b.c \ common/mc/mc_gv11b.c \ common/mc/mc_gv100.c \ common/boardobj/boardobj.c \ common/boardobj/boardobjgrp.c \ common/boardobj/boardobjgrpmask.c \ common/boardobj/boardobjgrp_e255.c \ common/boardobj/boardobjgrp_e32.c \ common/regops/regops.c \ common/regops/regops_gm20b.c \ common/regops/regops_gp10b.c \ common/regops/regops_gv100.c \ common/regops/regops_gv11b.c \ common/regops/regops_tu104.c \ common/nvdec/nvdec_gp106.c \ common/nvdec/nvdec_tu104.c \ common/pmu/pstate/pstate.c \ common/pmu/volt/volt_dev.c \ common/pmu/volt/volt_pmu.c \ common/pmu/volt/volt_policy.c \ common/pmu/volt/volt_rail.c \ common/pmu/clk/clk.c \ common/pmu/clk/clk_domain.c \ common/pmu/clk/clk_freq_domain.c \ common/pmu/clk/clk_fll.c \ common/pmu/clk/clk_freq_controller.c \ common/pmu/clk/clk_prog.c \ common/pmu/clk/clk_vf_point.c \ common/pmu/clk/clk_vin.c \ common/pmu/clk/clk_arb.c \ common/pmu/therm/thrm.c \ common/pmu/therm/thrmchannel.c \ common/pmu/therm/thrmdev.c \ common/pmu/therm/thrmpmu.c \ common/pmu/perf/pmu_perf.c \ common/pmu/perf/vfe_equ.c \ common/pmu/perf/vfe_var.c \ common/pmu/perf/perf_gv100.c \ common/pmu/perf/perf_tu104.c \ common/pmu/perf/change_seq.c \ common/pmu/pmgr/pmgr.c \ common/pmu/pmgr/pmgrpmu.c \ common/pmu/pmgr/pwrdev.c \ common/pmu/pmgr/pwrmonitor.c \ common/pmu/pmgr/pwrpolicy.c \ common/pmu/lpwr/lpwr.c \ common/pmu/lpwr/rppg.c \ common/ptimer/ptimer_gk20a.c \ gk20a/ce2_gk20a.c \ gk20a/fifo_gk20a.c \ gk20a/gr_gk20a.c \ gk20a/mm_gk20a.c \ gk20a/fence_gk20a.c \ gm20b/hal_gm20b.c \ gm20b/gr_gm20b.c \ gm20b/clk_gm20b.c \ gm20b/fifo_gm20b.c \ gm20b/mm_gm20b.c \ gp10b/gr_gp10b.c \ gp10b/ce_gp10b.c \ gp10b/fifo_gp10b.c \ gp10b/mm_gp10b.c \ gp10b/hal_gp10b.c \ gp10b/clk_arb_gp10b.c \ gp10b/fecs_trace_gp10b.c \ gp10b/gp10b.c \ gp10b/ecc_gp10b.c \ gv11b/gv11b.c \ gv11b/hal_gv11b.c \ gv11b/gr_gv11b.c \ gv11b/fifo_gv11b.c \ gv11b/mm_gv11b.c \ gv11b/ce_gv11b.c \ gv11b/subctx_gv11b.c \ gv11b/ecc_gv11b.c \ gp106/gr_gp106.c \ gp106/sec2_gp106.c \ gp106/bios_gp106.c \ gp106/clk_gp106.c \ gv100/mm_gv100.c \ gv100/bios_gv100.c \ gv100/fifo_gv100.c \ gv100/gr_gv100.c \ common/nvlink/probe.c \ common/nvlink/init/device_reginit.c \ common/nvlink/init/device_reginit_gv100.c \ common/nvlink/intr_and_err_handling_gv100.c \ common/nvlink/nvlink_gv100.c \ common/nvlink/nvlink_tu104.c \ common/nvlink/nvlink.c \ gv100/hal_gv100.c \ gv100/gsp_gv100.c \ gv100/clk_gv100.c \ gv100/clk_arb_gv100.c \ common/bus/bus_tu104.c \ common/fb/fb_tu104.c \ common/ltc/ltc_tu104.c \ common/mc/mc_tu104.c \ tu104/bios_tu104.c \ tu104/ecc_tu104.c \ tu104/fbpa_tu104.c \ tu104/fifo_tu104.c \ tu104/gr_tu104.c \ tu104/hal_tu104.c \ tu104/sec2_tu104.c \ tu104/func_tu104.c \ tu104/fecs_trace_tu104.c \ vgpu/vgpu.c \ vgpu/fifo_vgpu.c \ vgpu/tsg_vgpu.c \ vgpu/css_vgpu.c \ vgpu/fecs_trace_vgpu.c \ vgpu/mm_vgpu.c \ vgpu/gr_vgpu.c \ vgpu/clk_vgpu.c \ vgpu/dbg_vgpu.c \ vgpu/ltc_vgpu.c \ vgpu/ce2_vgpu.c \ vgpu/gv11b/vgpu_gv11b.c \ vgpu/gv11b/vgpu_hal_gv11b.c \ vgpu/gv11b/vgpu_fifo_gv11b.c \ vgpu/gv11b/vgpu_tsg_gv11b.c \ vgpu/gv11b/vgpu_subctx_gv11b.c \ vgpu/gv11b/vgpu_gr_gv11b.c \ vgpu/gp10b/vgpu_hal_gp10b.c \ vgpu/gp10b/vgpu_fuse_gp10b.c \ vgpu/gp10b/vgpu_mm_gp10b.c \ vgpu/gp10b/vgpu_gr_gp10b.c \ vgpu/gm20b/vgpu_gr_gm20b.c ifeq ($(NVGPU_DEBUGGER),1) srcs += common/debugger.c endif