Thread (5 messages) 5 messages, 3 authors, 2016-02-09

Re: [RESEND PATCH v1] drm: Clean up drm Makefile

From: Oded Gabbay <hidden>
Date: 2016-02-09 13:39:01
Also in: dri-devel, linux-arm-kernel

On Tue, Feb 9, 2016 at 11:29 AM, Daniel Vetter [off-list ref] wrote:
On Sat, Jan 30, 2016 at 01:11:01PM +0200, Oded Gabbay wrote:
quoted
On Sat, Jan 30, 2016 at 11:56 AM, Xinliang Liu [off-list ref] wrote:
quoted
This patch cleans up the Makefile of drm root directory.
Make core and device drivers configuration list sorted Alphabetically.

Signed-off-by: Xinliang Liu <xinliang.liu@linaro.org>
Reviewed-by: Xinwei Kong <kong.kongxinwei@hisilicon.com>
Reviewed-by: Yifan Liu <redacted>
---
 drivers/gpu/drm/Makefile | 102 ++++++++++++++++++++++++-----------------------
 1 file changed, 52 insertions(+), 50 deletions(-)
diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
index 61766dec6a8d..77000717305b 100644
--- a/drivers/gpu/drm/Makefile
+++ b/drivers/gpu/drm/Makefile
@@ -2,6 +2,9 @@
 # Makefile for the drm device driver.  This driver provides support for the
 # Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.

+CFLAGS_drm_trace_points.o := -I$(src)
+
+# core. Please keep this list sorted alphabetically
 drm-y       := drm_auth.o drm_bufs.o drm_cache.o \
                drm_context.o drm_dma.o \
                drm_fops.o drm_gem.o drm_ioctl.o drm_irq.o \
@@ -13,64 +16,63 @@ drm-y       :=      drm_auth.o drm_bufs.o drm_cache.o \
                drm_trace_points.o drm_global.o drm_prime.o \
                drm_rect.o drm_vma_manager.o drm_flip_work.o \
                drm_modeset_lock.o drm_atomic.o drm_bridge.o
-
-drm-$(CONFIG_COMPAT) += drm_ioc32.o
-drm-$(CONFIG_DRM_GEM_CMA_HELPER) += drm_gem_cma_helper.o
 drm-$(CONFIG_PCI) += ati_pcigart.o
-drm-$(CONFIG_DRM_PANEL) += drm_panel.o
-drm-$(CONFIG_OF) += drm_of.o
 drm-$(CONFIG_AGP) += drm_agpsupport.o
+drm-$(CONFIG_DRM_GEM_CMA_HELPER) += drm_gem_cma_helper.o
+drm-$(CONFIG_COMPAT) += drm_ioc32.o
+drm-$(CONFIG_OF) += drm_of.o
+drm-$(CONFIG_DRM_PANEL) += drm_panel.o
+obj-$(CONFIG_DRM)      += drm.o
+
+obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o

 drm_kms_helper-y := drm_crtc_helper.o drm_dp_helper.o drm_probe_helper.o \
                drm_plane_helper.o drm_dp_mst_topology.o drm_atomic_helper.o
 drm_kms_helper-$(CONFIG_DRM_LOAD_EDID_FIRMWARE) += drm_edid_load.o
-drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
 drm_kms_helper-$(CONFIG_DRM_KMS_CMA_HELPER) += drm_fb_cma_helper.o
-
+drm_kms_helper-$(CONFIG_DRM_FBDEV_EMULATION) += drm_fb_helper.o
 obj-$(CONFIG_DRM_KMS_HELPER) += drm_kms_helper.o

-CFLAGS_drm_trace_points.o := -I$(src)
+obj-$(CONFIG_DRM_TTM) += ttm/

-obj-$(CONFIG_DRM)      += drm.o
-obj-$(CONFIG_DRM_MIPI_DSI) += drm_mipi_dsi.o
-obj-$(CONFIG_DRM_TTM)  += ttm/
-obj-$(CONFIG_DRM_TDFX) += tdfx/
-obj-$(CONFIG_DRM_R128) += r128/
-obj-$(CONFIG_HSA_AMD) += amd/amdkfd/
-obj-$(CONFIG_DRM_RADEON)+= radeon/
-obj-$(CONFIG_DRM_AMDGPU)+= amd/amdgpu/
-obj-$(CONFIG_DRM_MGA)  += mga/
-obj-$(CONFIG_DRM_I810) += i810/
-obj-$(CONFIG_DRM_I915)  += i915/
-obj-$(CONFIG_DRM_MGAG200) += mgag200/
-obj-$(CONFIG_DRM_VC4)  += vc4/
-obj-$(CONFIG_DRM_CIRRUS_QEMU) += cirrus/
-obj-$(CONFIG_DRM_SIS)   += sis/
-obj-$(CONFIG_DRM_SAVAGE)+= savage/
-obj-$(CONFIG_DRM_VMWGFX)+= vmwgfx/
-obj-$(CONFIG_DRM_VIA)  +=via/
-obj-$(CONFIG_DRM_VGEM) += vgem/
-obj-$(CONFIG_DRM_NOUVEAU) +=nouveau/
-obj-$(CONFIG_DRM_EXYNOS) +=exynos/
-obj-$(CONFIG_DRM_ROCKCHIP) +=rockchip/
-obj-$(CONFIG_DRM_GMA500) += gma500/
-obj-$(CONFIG_DRM_UDL) += udl/
-obj-$(CONFIG_DRM_AST) += ast/
-obj-$(CONFIG_DRM_ARMADA) += armada/
+# device drivers. Please keep this list sorted alphabetically
+obj-$(CONFIG_DRM_AMDGPU)       += amd/amdgpu/
+obj-$(CONFIG_HSA_AMD)          += amd/amdkfd/
+obj-$(CONFIG_DRM_ARMADA)       += armada/
+obj-$(CONFIG_DRM_AST)          += ast/
 obj-$(CONFIG_DRM_ATMEL_HLCDC)  += atmel-hlcdc/
-obj-$(CONFIG_DRM_RCAR_DU) += rcar-du/
-obj-$(CONFIG_DRM_SHMOBILE) +=shmobile/
-obj-y                  += omapdrm/
-obj-y                  += tilcdc/
-obj-$(CONFIG_DRM_QXL) += qxl/
-obj-$(CONFIG_DRM_BOCHS) += bochs/
-obj-$(CONFIG_DRM_VIRTIO_GPU) += virtio/
-obj-$(CONFIG_DRM_MSM) += msm/
-obj-$(CONFIG_DRM_TEGRA) += tegra/
-obj-$(CONFIG_DRM_STI) += sti/
-obj-$(CONFIG_DRM_IMX) += imx/
-obj-y                  += i2c/
-obj-y                  += panel/
-obj-y                  += bridge/
-obj-$(CONFIG_DRM_FSL_DCU) += fsl-dcu/
-obj-$(CONFIG_DRM_ETNAVIV) += etnaviv/
+obj-$(CONFIG_DRM_BOCHS)                += bochs/
+obj-y                          += bridge/
+obj-$(CONFIG_DRM_CIRRUS_QEMU)  += cirrus/
+obj-$(CONFIG_DRM_ETNAVIV)      += etnaviv/
+obj-$(CONFIG_DRM_EXYNOS)       += exynos/
+obj-$(CONFIG_DRM_FSL_DCU)      += fsl-dcu/
+obj-$(CONFIG_DRM_GMA500)       += gma500/
+obj-y                          += i2c/
+obj-$(CONFIG_DRM_I810)         += i810/
+obj-$(CONFIG_DRM_I915)         += i915/
+obj-$(CONFIG_DRM_IMX)          += imx/
+obj-$(CONFIG_DRM_MGA)          += mga/
+obj-$(CONFIG_DRM_MGAG200)      += mgag200/
+obj-$(CONFIG_DRM_MSM)          += msm/
+obj-$(CONFIG_DRM_NOUVEAU)      += nouveau/
+obj-y                          += omapdrm/
+obj-y                          += panel/
+obj-$(CONFIG_DRM_QXL)          += qxl/
+obj-$(CONFIG_DRM_R128)         += r128/
+obj-$(CONFIG_DRM_RADEON)       += radeon/
+obj-$(CONFIG_DRM_RCAR_DU)      += rcar-du/
+obj-$(CONFIG_DRM_ROCKCHIP)     += rockchip/
+obj-$(CONFIG_DRM_SAVAGE)       += savage/
+obj-$(CONFIG_DRM_SHMOBILE)     += shmobile/
+obj-$(CONFIG_DRM_SIS)          += sis/
+obj-$(CONFIG_DRM_STI)          += sti/
+obj-$(CONFIG_DRM_TDFX)         += tdfx/
+obj-$(CONFIG_DRM_TEGRA)                += tegra/
+obj-y                          += tilcdc/
+obj-$(CONFIG_DRM_UDL)          += udl/
+obj-$(CONFIG_DRM_VC4)          += vc4/
+obj-$(CONFIG_DRM_VGEM)         += vgem/
+obj-$(CONFIG_DRM_VIA)          += via/
+obj-$(CONFIG_DRM_VIRTIO_GPU)   += virtio/
+obj-$(CONFIG_DRM_VMWGFX)       += vmwgfx/
--
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
NACK, amdkfd *must* be before amdgpu *and* radeon, because it needs to
be already loaded when amdgpu/radeon get loaded, and when all these
drivers are compiled inside the kernel, the order is maintained by the
linkage order in the makefile.
That's not how this is supposed to be done. If you have inter-driver
depencies like this you need to check for them, and defer the driver
loading by returngin -EPROBE_DEFER. The core kernel will then re-probe
your driver once other drivers have loaded. Handling inter-driver deps
using compile-ordering is seriously too fragile.

Please fix this up, thanks.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
Hi Daniel,

Thanks for the EPROBE_DEFER pointer - I'll try to take a look and see
if it could be fixed quickly for 4.6

Oded
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help