Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d38ceaf9 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/amdgpu: add core driver (v4)



This adds the non-asic specific core driver code.

v2: remove extra kconfig option
v3: implement minor fixes from Fengguang Wu
v4: fix cast in amdgpu_ucode.c

Acked-by: default avatarChristian König <christian.koenig@amd.com>
Acked-by: default avatarJammy Zhou <Jammy.Zhou@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 97b2e202
Loading
Loading
Loading
Loading
+21 −0
Original line number Original line Diff line number Diff line
@@ -120,6 +120,27 @@ config DRM_RADEON


source "drivers/gpu/drm/radeon/Kconfig"
source "drivers/gpu/drm/radeon/Kconfig"


config DRM_AMDGPU
	tristate "AMD GPU"
	depends on DRM && PCI
	select FB_CFB_FILLRECT
	select FB_CFB_COPYAREA
	select FB_CFB_IMAGEBLIT
	select FW_LOADER
        select DRM_KMS_HELPER
	select DRM_KMS_FB_HELPER
        select DRM_TTM
	select POWER_SUPPLY
	select HWMON
	select BACKLIGHT_CLASS_DEVICE
	select INTERVAL_TREE
	help
	  Choose this option if you have a recent AMD Radeon graphics card.

	  If M is selected, the module will be called amdgpu.

source "drivers/gpu/drm/amd/amdgpu/Kconfig"

source "drivers/gpu/drm/nouveau/Kconfig"
source "drivers/gpu/drm/nouveau/Kconfig"


config DRM_I810
config DRM_I810
+1 −0
Original line number Original line Diff line number Diff line
@@ -37,6 +37,7 @@ obj-$(CONFIG_DRM_TDFX) += tdfx/
obj-$(CONFIG_DRM_R128)	+= r128/
obj-$(CONFIG_DRM_R128)	+= r128/
obj-$(CONFIG_HSA_AMD) += amd/amdkfd/
obj-$(CONFIG_HSA_AMD) += amd/amdkfd/
obj-$(CONFIG_DRM_RADEON)+= radeon/
obj-$(CONFIG_DRM_RADEON)+= radeon/
obj-$(CONFIG_DRM_AMDGPU)+= amd/amdgpu/
obj-$(CONFIG_DRM_MGA)	+= mga/
obj-$(CONFIG_DRM_MGA)	+= mga/
obj-$(CONFIG_DRM_I810)	+= i810/
obj-$(CONFIG_DRM_I810)	+= i810/
obj-$(CONFIG_DRM_I915)  += i915/
obj-$(CONFIG_DRM_I915)  += i915/
+17 −0
Original line number Original line Diff line number Diff line
config DRM_AMDGPU_CIK
	bool "Enable amdgpu support for CIK parts"
	depends on DRM_AMDGPU
	help
	  Choose this option if you want to enable experimental support
	  for CIK asics.

	  CIK is already supported in radeon.  CIK support in amdgpu
	  is for experimentation and testing.

config DRM_AMDGPU_USERPTR
	bool "Always enable userptr write support"
	depends on DRM_AMDGPU
	select MMU_NOTIFIER
	help
	  This option selects CONFIG_MMU_NOTIFIER if it isn't already
	  selected to enabled full userptr support.
+49 −0
Original line number Original line Diff line number Diff line
#
# Makefile for the drm device driver.  This driver provides support for the
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.

ccflags-y := -Iinclude/drm -Idrivers/gpu/drm/amd/include/asic_reg

amdgpu-y := amdgpu_drv.o

# add KMS driver
amdgpu-y += amdgpu_device.o amdgpu_kms.o \
	amdgpu_atombios.o atombios_crtc.o amdgpu_connectors.o \
	atom.o amdgpu_fence.o amdgpu_ttm.o amdgpu_object.o amdgpu_gart.o \
	amdgpu_encoders.o amdgpu_display.o amdgpu_i2c.o \
	amdgpu_fb.o amdgpu_gem.o amdgpu_ring.o \
	amdgpu_cs.o amdgpu_bios.o amdgpu_benchmark.o amdgpu_test.o \
	amdgpu_pm.o atombios_dp.o amdgpu_afmt.o amdgpu_trace_points.o \
	atombios_encoders.o amdgpu_semaphore.o amdgpu_sa.o atombios_i2c.o \
	amdgpu_prime.o amdgpu_vm.o amdgpu_ib.o amdgpu_pll.o \
	amdgpu_ucode.o amdgpu_bo_list.o amdgpu_ctx.o amdgpu_sync.o

# add IH block
amdgpu-y += \
	amdgpu_irq.o \
	amdgpu_ih.o

# add SMC block
amdgpu-y += \
	amdgpu_dpm.o

# add GFX block
amdgpu-y += \
	amdgpu_gfx.o

# add UVD block
amdgpu-y += \
	amdgpu_uvd.o

# add VCE block
amdgpu-y += \
	amdgpu_vce.o

amdgpu-$(CONFIG_COMPAT) += amdgpu_ioc32.o
amdgpu-$(CONFIG_VGA_SWITCHEROO) += amdgpu_atpx_handler.o
amdgpu-$(CONFIG_ACPI) += amdgpu_acpi.o
amdgpu-$(CONFIG_MMU_NOTIFIER) += amdgpu_mn.o

obj-$(CONFIG_DRM_AMDGPU)+= amdgpu.o

CFLAGS_amdgpu_trace_points.o := -I$(src)
+768 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading