@@ -139,16 +139,17 @@ i915-y += \
intel_wopcm.o
# general-purpose microcontroller (GuC) support
-i915-y += intel_uc.o \
- intel_uc_fw.o \
- intel_guc.o \
- intel_guc_ads.o \
- intel_guc_ct.o \
- intel_guc_fw.o \
- intel_guc_log.o \
- intel_guc_submission.o \
- intel_huc.o \
- intel_huc_fw.o
+obj-y += gt/uc/
+i915-y += gt/uc/intel_uc.o \
+ gt/uc/intel_uc_fw.o \
+ gt/uc/intel_guc.o \
+ gt/uc/intel_guc_ads.o \
+ gt/uc/intel_guc_ct.o \
+ gt/uc/intel_guc_fw.o \
+ gt/uc/intel_guc_log.o \
+ gt/uc/intel_guc_submission.o \
+ gt/uc/intel_huc.o \
+ gt/uc/intel_huc_fw.o
# modesetting core code
obj-y += display/
@@ -19,14 +19,10 @@ header_test := \
i915_vgpu.h \
intel_csr.h \
intel_drv.h \
- intel_guc_ct.h \
- intel_guc_fwif.h \
- intel_guc_reg.h \
intel_gvt.h \
intel_pm.h \
intel_runtime_pm.h \
intel_sideband.h \
- intel_uc_fw.h \
intel_uncore.h \
intel_wakeref.h
@@ -19,7 +19,7 @@
#include "intel_gt_pm.h"
#include "intel_reset.h"
-#include "intel_guc.h"
+#include "uc/intel_guc.h"
#define RESET_MAX_RETRIES 3
new file mode 100644
@@ -0,0 +1,5 @@
+# For building individual subdir files on the command line
+subdir-ccflags-y += -I$(srctree)/$(src)/../..
+
+# Extra header tests
+include $(src)/Makefile.header-test
new file mode 100644
@@ -0,0 +1,16 @@
+# SPDX-License-Identifier: MIT
+# Copyright © 2019 Intel Corporation
+
+# Test the headers are compilable as standalone units
+header_test := $(notdir $(wildcard $(src)/*.h))
+
+quiet_cmd_header_test = HDRTEST $@
+ cmd_header_test = echo "\#include \"$(<F)\"" > $@
+
+header_test_%.c: %.h
+ $(call cmd,header_test)
+
+extra-$(CONFIG_DRM_I915_WERROR) += \
+ $(foreach h,$(header_test),$(patsubst %.h,header_test_%.o,$(h)))
+
+clean-files += $(foreach h,$(header_test),$(patsubst %.h,header_test_%.c,$(h)))
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc.c
rename to drivers/gpu/drm/i915/gt/uc/intel_guc.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_ads.c
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_ads.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_ads.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_ct.c
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_ct.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_fw.c
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_fw.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_fw.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_fw.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_fwif.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_log.c
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_log.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_log.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_reg.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_reg.h
similarity index 99%
rename from drivers/gpu/drm/i915/intel_guc_submission.c
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
@@ -24,12 +24,13 @@
#include <linux/circ_buf.h>
-#include "gt/intel_engine_pm.h"
-#include "gt/intel_lrc_reg.h"
-#include "gt/intel_context.h"
#include "gem/i915_gem_context.h"
+#include "gt/intel_context.h"
+#include "gt/intel_engine_pm.h"
+#include "gt/intel_lrc_reg.h"
#include "intel_guc_submission.h"
+
#include "i915_drv.h"
enum {
@@ -1162,5 +1163,5 @@ void intel_guc_submission_disable(struct intel_guc *guc)
}
#if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
-#include "selftests/intel_guc.c"
+#include "selftest_guc.c"
#endif
similarity index 100%
rename from drivers/gpu/drm/i915/intel_guc_submission.h
rename to drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_huc.c
rename to drivers/gpu/drm/i915/gt/uc/intel_huc.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_huc.h
rename to drivers/gpu/drm/i915/gt/uc/intel_huc.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_huc_fw.c
rename to drivers/gpu/drm/i915/gt/uc/intel_huc_fw.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_huc_fw.h
rename to drivers/gpu/drm/i915/gt/uc/intel_huc_fw.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_uc.c
rename to drivers/gpu/drm/i915/gt/uc/intel_uc.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_uc.h
rename to drivers/gpu/drm/i915/gt/uc/intel_uc.h
similarity index 100%
rename from drivers/gpu/drm/i915/intel_uc_fw.c
rename to drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c
similarity index 100%
rename from drivers/gpu/drm/i915/intel_uc_fw.h
rename to drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h
similarity index 100%
rename from drivers/gpu/drm/i915/selftests/intel_guc.c
rename to drivers/gpu/drm/i915/gt/uc/selftest_guc.c
@@ -40,12 +40,12 @@
#include "gem/i915_gem_context.h"
#include "gt/intel_reset.h"
+#include "gt/uc/intel_guc_submission.h"
#include "i915_debugfs.h"
#include "i915_irq.h"
#include "intel_csr.h"
#include "intel_drv.h"
-#include "intel_guc_submission.h"
#include "intel_pm.h"
#include "intel_sideband.h"
@@ -65,6 +65,7 @@
#include "gt/intel_gt_pm.h"
#include "gt/intel_reset.h"
#include "gt/intel_workarounds.h"
+#include "gt/uc/intel_uc.h"
#include "i915_debugfs.h"
#include "i915_drv.h"
@@ -76,7 +77,6 @@
#include "intel_csr.h"
#include "intel_drv.h"
#include "intel_pm.h"
-#include "intel_uc.h"
static struct drm_driver driver;
@@ -74,10 +74,10 @@
#include "gt/intel_engine.h"
#include "gt/intel_gt_types.h"
#include "gt/intel_workarounds.h"
+#include "gt/uc/intel_uc.h"
#include "intel_device_info.h"
#include "intel_runtime_pm.h"
-#include "intel_uc.h"
#include "intel_uncore.h"
#include "intel_wakeref.h"
#include "intel_wopcm.h"
@@ -14,9 +14,9 @@
#include <drm/drm_mm.h>
#include "gt/intel_engine.h"
+#include "gt/uc/intel_uc_fw.h"
#include "intel_device_info.h"
-#include "intel_uc_fw.h"
#include "i915_gem.h"
#include "i915_gem_gtt.h"
Both microcontrollers are part of the GT HW and are closely related to GT operations. To keep all the files cleanly together, they've been placed in their own subdir inside the gt/ folder Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> --- drivers/gpu/drm/i915/Makefile | 21 ++++++++++--------- drivers/gpu/drm/i915/Makefile.header-test | 4 ---- drivers/gpu/drm/i915/gt/intel_reset.c | 2 +- drivers/gpu/drm/i915/gt/uc/Makefile | 5 +++++ .../gpu/drm/i915/gt/uc/Makefile.header-test | 16 ++++++++++++++ drivers/gpu/drm/i915/{ => gt/uc}/intel_guc.c | 0 drivers/gpu/drm/i915/{ => gt/uc}/intel_guc.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_ads.c | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_ads.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_ct.c | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_ct.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_fw.c | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_fw.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_fwif.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_log.c | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_log.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_guc_reg.h | 0 .../i915/{ => gt/uc}/intel_guc_submission.c | 9 ++++---- .../i915/{ => gt/uc}/intel_guc_submission.h | 0 drivers/gpu/drm/i915/{ => gt/uc}/intel_huc.c | 0 drivers/gpu/drm/i915/{ => gt/uc}/intel_huc.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_huc_fw.c | 0 .../gpu/drm/i915/{ => gt/uc}/intel_huc_fw.h | 0 drivers/gpu/drm/i915/{ => gt/uc}/intel_uc.c | 0 drivers/gpu/drm/i915/{ => gt/uc}/intel_uc.h | 0 .../gpu/drm/i915/{ => gt/uc}/intel_uc_fw.c | 0 .../gpu/drm/i915/{ => gt/uc}/intel_uc_fw.h | 0 .../intel_guc.c => gt/uc/selftest_guc.c} | 0 drivers/gpu/drm/i915/i915_debugfs.c | 2 +- drivers/gpu/drm/i915/i915_drv.c | 2 +- drivers/gpu/drm/i915/i915_drv.h | 2 +- drivers/gpu/drm/i915/i915_gpu_error.h | 2 +- 32 files changed, 42 insertions(+), 23 deletions(-) create mode 100644 drivers/gpu/drm/i915/gt/uc/Makefile create mode 100644 drivers/gpu/drm/i915/gt/uc/Makefile.header-test rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_ads.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_ads.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_ct.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_ct.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_fw.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_fw.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_fwif.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_log.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_log.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_reg.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_submission.c (99%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_guc_submission.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_huc.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_huc.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_huc_fw.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_huc_fw.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_uc.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_uc.h (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_uc_fw.c (100%) rename drivers/gpu/drm/i915/{ => gt/uc}/intel_uc_fw.h (100%) rename drivers/gpu/drm/i915/{selftests/intel_guc.c => gt/uc/selftest_guc.c} (100%)