KMOD	= i915

# core driver code
SRCS =	i915_drv.c \
	i915_irq.c \
	i915_memcpy.c \
	i915_mm.c \
	i915_params.c \
	i915_pci.c \
	i915_suspend.c \
	i915_syncmap.c \
	i915_sw_fence.c \
	i915_sysfs.c \
	intel_csr.c \
	intel_device_info.c \
	intel_pm.c \
	intel_runtime_pm.c

# CONFIG_DEBUG_FS
# SRCS += i915_debugfs.c intel_pipe_crc.c

# GEM code
SRCS +=	i915_cmd_parser.c \
	i915_gem_batch_pool.c \
	i915_gem_clflush.c \
	i915_gem_context.c \
	i915_gem_dmabuf.c \
	i915_gem_evict.c \
	i915_gem_execbuffer.c \
	i915_gem_fence_reg.c \
	i915_gem_gtt.c \
	i915_gem_internal.c \
	i915_gem.c \
	i915_gem_object.c \
	i915_gem_render_state.c \
	i915_gem_request.c \
	i915_gem_shrinker.c \
	i915_gem_stolen.c \
	i915_gem_tiling.c \
	i915_gem_timeline.c \
	i915_gem_userptr.c \
	i915_vma.c \
	intel_breadcrumbs.c \
	intel_engine_cs.c \
	intel_hangcheck.c \
	intel_lrc.c \
	intel_mocs.c \
	intel_ringbuffer.c \
	intel_uncore.c

# general-purpose microcontroller (GuC) support
SRCS += intel_uc.c \
	intel_uc_fw.c \
	intel_guc.c \
	intel_guc_ct.c \
	intel_guc_log.c \
	intel_guc_fw.c \
	intel_huc.c \
	i915_guc_submission.c

# autogenerated null render state
SRCS +=	intel_renderstate_gen6.c \
	intel_renderstate_gen7.c \
	intel_renderstate_gen8.c \
	intel_renderstate_gen9.c

# modesetting core code
SRCS += \
	intel_audio.c \
	intel_atomic.c \
	intel_atomic_plane.c \
	intel_acpi.c \
	intel_bios.c \
	intel_cdclk.c \
	intel_color.c \
	intel_display.c \
	intel_dpio_phy.c \
	intel_dpll_mgr.c \
	intel_fbc.c \
	intel_fifo_underrun.c \
	intel_frontbuffer.c \
	intel_hotplug.c \
	intel_fbdev.c \
	intel_modes.c \
	intel_opregion.c \
	intel_overlay.c \
	intel_psr.c \
	intel_sideband.c \
	intel_sprite.c

# modesetting output/encoder code
SRCS += \
	dvo_ch7017.c \
	dvo_ch7xxx.c \
	dvo_ivch.c \
	dvo_ns2501.c \
	dvo_sil164.c \
	dvo_tfp410.c \
	intel_crt.c \
	intel_ddi.c \
	intel_dp_aux_backlight.c \
	intel_dp_link_training.c \
	intel_dp_mst.c \
	intel_dp.c \
	intel_dsi.c \
	intel_dsi_dcs_backlight.c \
	intel_dsi_pll.c \
	intel_dsi_vbt.c \
	intel_dvo.c \
	intel_hdmi.c \
	intel_i2c.c \
	intel_lspcon.c \
	intel_lvds.c \
	intel_panel.c \
	intel_sdvo.c \
	intel_tv.c

# Post-mortem debug and GPU hang state capture
#i915-$(CONFIG_DRM_I915_CAPTURE_ERROR) += i915_gpu_error.o
#i915-$(CONFIG_DRM_I915_SELFTEST) += \
	selftests/i915_random.o \
	selftests/i915_selftest.o

# virtual gpu code
SRCS += i915_vgpu.c

# perf code
SRCS += i915_perf.c \
	i915_oa_hsw.c

# CONFIG_DRM_I915_GVT
#SRCS += intel_gvt.c

# LPE Audio for VLV and CHT
SRCS += intel_lpe_audio.c

SRCS += \
	opt_acpi.h \
	opt_ddb.h \
	opt_drm.h \
	acpi_if.h \
	bus_if.h \
	device_if.h \
	pci_if.h

KCFLAGS+= -I${SYSDIR}/dev/drm/include
KCFLAGS+= -I${SYSDIR}/dev/drm/include/uapi
KCFLAGS+= -I${SYSDIR}/contrib/dev/acpica/source/include
KCFLAGS+= -include ${SYSDIR}/dev/drm/kconfig.h
KCFLAGS+= -DKBUILD_MODNAME=\"${KMOD}\"

.include <bsd.kmod.mk>