[Intel-gfx] [CI] drm/i915: Move GraphicsTechnology files under gt/
Jani Nikula
jani.nikula at intel.com
Thu Apr 25 07:36:42 UTC 2019
On Wed, 24 Apr 2019, Chris Wilson <chris at chris-wilson.co.uk> wrote:
> Start partitioning off the code that talks to the hardware (GT) from the
> uapi layers and move the device facing code under gt/
>
> One casualty is s/intel_ringbuffer.h/intel_engine.h/ with the plan to
> subdivide that header and body further (and split out the submission
> code from the ringbuffer and logical context handling). This patch aims
> to be simple motion so git can fixup inflight patches with little mess.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Acked-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Acked-by: Jani Nikula <jani.nikula at intel.com>
> Acked-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
Yay! I guess this'll conflict badly with my wip header refactoring, but
first come first served.
A couple of comments below. I don't mind having them fixed afterwards to
avoid several CI rounds and potential conflicts on the huge patch now.
> diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
> index 53ff209b91bb..40130cf5c003 100644
> --- a/drivers/gpu/drm/i915/Makefile
> +++ b/drivers/gpu/drm/i915/Makefile
> @@ -35,32 +35,53 @@ subdir-ccflags-y += \
> # Extra header tests
> include $(src)/Makefile.header-test
>
> +subdir-ccflags-y += -I$(src)
Just remembered [1], the kbuild folks want to use -I $(srctree)/$(src).
I suppose it's by design you don't add gt/ in the header search path,
and require explicit "gt/foo.h" in the #includes in files outside the
gt/ directory. (I assume files under gt/ can omit the directory part.) I
could be persuaded either way.
[1] http://mid.mail-archive.com/1553859161-2628-1-git-send-email-yamada.masahiro@socionext.com
> +
> # Please keep these build lists sorted!
>
> # core driver code
> i915-y += i915_drv.o \
> i915_irq.o \
> - i915_memcpy.o \
> - i915_mm.o \
> i915_params.o \
> i915_pci.o \
> - i915_reset.o \
> i915_suspend.o \
> - i915_sw_fence.o \
> - i915_syncmap.o \
> i915_sysfs.o \
> - i915_user_extensions.o \
> intel_csr.o \
> intel_device_info.o \
> intel_pm.o \
> intel_runtime_pm.o \
> - intel_workarounds.o
> + intel_uncore.o
> +
> +# core library code
> +i915-y += \
> + i915_memcpy.o \
> + i915_mm.o \
> + i915_sw_fence.o \
> + i915_syncmap.o \
> + i915_user_extensions.o
>
> i915-$(CONFIG_COMPAT) += i915_ioc32.o
> i915-$(CONFIG_DEBUG_FS) += i915_debugfs.o intel_pipe_crc.o
> i915-$(CONFIG_PERF_EVENTS) += i915_pmu.o
>
> -# GEM code
> +# "Graphics Technology" (aka we talk to the gpu)
> +obj-y += gt/
I wonder if this and the gt/Makefile are subtle enough to warrant a
comment. That they are only used for the header tests. It took me a
moment to figure this out.
> +gt-y += \
> + gt/intel_breadcrumbs.o \
> + gt/intel_context.o \
> + gt/intel_engine_cs.o \
> + gt/intel_hangcheck.o \
> + gt/intel_lrc.o \
> + gt/intel_reset.o \
> + gt/intel_ringbuffer.o \
> + gt/intel_mocs.o \
> + gt/intel_sseu.o \
> + gt/intel_workarounds.o
> +gt-$(CONFIG_DRM_I915_SELFTEST) += \
> + gt/mock_engine.o
> +i915-y += $(gt-y)
> +
> +# GEM (Graphics Execution Management) code
> i915-y += \
> i915_active.o \
> i915_cmd_parser.o \
> @@ -88,15 +109,6 @@ i915-y += \
> i915_timeline.o \
> i915_trace_points.o \
> i915_vma.o \
> - intel_breadcrumbs.o \
> - intel_context.o \
> - intel_engine_cs.o \
> - intel_hangcheck.o \
> - intel_lrc.o \
> - intel_mocs.o \
> - intel_ringbuffer.o \
> - intel_sseu.o \
> - intel_uncore.o \
> intel_wopcm.o
>
> # general-purpose microcontroller (GuC) support
> diff --git a/drivers/gpu/drm/i915/Makefile.header-test b/drivers/gpu/drm/i915/Makefile.header-test
> index 5bcc78d7ac96..96a5d90629ec 100644
> --- a/drivers/gpu/drm/i915/Makefile.header-test
> +++ b/drivers/gpu/drm/i915/Makefile.header-test
> @@ -13,13 +13,11 @@ header_test := \
> intel_cdclk.h \
> intel_color.h \
> intel_connector.h \
> - intel_context_types.h \
> intel_crt.h \
> intel_csr.h \
> intel_ddi.h \
> intel_dp.h \
> intel_dvo.h \
> - intel_engine_types.h \
> intel_fbc.h \
> intel_fbdev.h \
> intel_frontbuffer.h \
> @@ -33,9 +31,7 @@ header_test := \
> intel_psr.h \
> intel_sdvo.h \
> intel_sprite.h \
> - intel_sseu.h \
> - intel_tv.h \
> - intel_workarounds_types.h
> + intel_tv.h
>
> quiet_cmd_header_test = HDRTEST $@
> cmd_header_test = echo "\#include \"$(<F)\"" > $@
> diff --git a/drivers/gpu/drm/i915/gt/Makefile b/drivers/gpu/drm/i915/gt/Makefile
> new file mode 100644
> index 000000000000..1c75b5c9790c
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/gt/Makefile
> @@ -0,0 +1,2 @@
> +# Extra header tests
> +include $(src)/Makefile.header-test
> diff --git a/drivers/gpu/drm/i915/gt/Makefile.header-test b/drivers/gpu/drm/i915/gt/Makefile.header-test
> new file mode 100644
> index 000000000000..61e06cbb4b32
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/gt/Makefile.header-test
> @@ -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)))
--
Jani Nikula, Intel Open Source Graphics Center
More information about the Intel-gfx
mailing list