From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com ([192.55.52.93]:49619 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752115AbbJAIPq convert rfc822-to-8bit (ORCPT ); Thu, 1 Oct 2015 04:15:46 -0400 From: Jani Nikula Subject: Re: [PATCH] drm: Hack around CONFIG_AGP=m build failures In-Reply-To: <1443682119-17011-1-git-send-email-daniel.vetter@ffwll.ch> References: <1443682119-17011-1-git-send-email-daniel.vetter@ffwll.ch> Date: Thu, 01 Oct 2015 11:19:05 +0300 Message-ID: <8737xvc87a.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT Sender: linux-kbuild-owner@vger.kernel.org List-ID: To: Daniel Vetter , DRI Development Cc: Stephen Rothwell , linux-kbuild@vger.kernel.org, Michal Marek , Daniel Vetter On Thu, 01 Oct 2015, Daniel Vetter wrote: > Surprisingly kbuild can't cope with tristates in the > -$(CONFIG_FOO) pattern. This patch hacks up a solution. Given that it's two distinct Makefile variables (foo-y and foo-m) being assigned to, I don't really find this surprising. Maybe this could be made to work as a convenience, but there might be other, more surpising consequences. > Reported-by: Stephen Rothwell > Reported-by: Ville Syrjälä > Cc: Stephen Rothwell > Cc: Ville Syrjälä > Cc: Michal Marek > Cc: linux-kbuild@vger.kernel.org > Signed-off-by: Daniel Vetter > --- > drivers/gpu/drm/Makefile | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile > index f458d6e33655..e814517513ce 100644 > --- a/drivers/gpu/drm/Makefile > +++ b/drivers/gpu/drm/Makefile > @@ -21,6 +21,8 @@ drm-$(CONFIG_DRM_PANEL) += drm_panel.o > drm-$(CONFIG_OF) += drm_of.o > drm-$(CONFIG_AGP) += drm_agpsupport.o > > +drm-y += $(drm-m) I know what you're doing here, but somehow this looks wrong to me. A bit of git grep also doesn't find convincing arguments to back this up. I'd solve this with a bit of fairly straightforward indirection in the Kconfig to keep the Makefile itself neat. I think it also better documents the intention here. Patch follows. BR, Jani. >From efbc9fb6f6284e81a4b9e7599b3233b656cec452 Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Thu, 1 Oct 2015 10:53:22 +0300 Subject: [PATCH] drm: fix CONFIG_AGP=m build failures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo Cc: Jani Nikula If CONFIG_AGP is enabled as a module, drm_agpsupport.o is not linked into drm, causing: ERROR: "drm_agp_unbind_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_init" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_alloc_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_clear" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_info_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_enable_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_release_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_bind_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_acquire_ioctl" [drivers/gpu/drm/drm.ko] undefined! ERROR: "drm_agp_free_ioctl" [drivers/gpu/drm/drm.ko] undefined! Regression from commit a7fb8a23c1afa607ec8ce9f61df645f37c529434 Author: Daniel Vetter Date: Wed Sep 9 16:45:52 2015 +0200 drm: Remove __OS_HAS_AGP Add an intermediate bool CONFIG_DRM_AGP, selected if CONFIG_AGP is enabled either as module or built-in. Reported-by: Stephen Rothwell Reported-by: Ville Syrjälä Cc: Stephen Rothwell Cc: Ville Syrjälä Cc: Michal Marek Cc: linux-kbuild@vger.kernel.org Cc: Daniel Vetter Signed-off-by: Jani Nikula --- drivers/gpu/drm/Kconfig | 4 ++++ drivers/gpu/drm/Makefile | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig index 1a0a8df2eed8..aecbec030aa4 100644 --- a/drivers/gpu/drm/Kconfig +++ b/drivers/gpu/drm/Kconfig @@ -7,6 +7,7 @@ menuconfig DRM tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)" depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU && HAS_DMA + select DRM_AGP if AGP select HDMI select FB_CMDLINE select I2C @@ -21,6 +22,9 @@ menuconfig DRM details. You should also select and configure AGP (/dev/agpgart) support if it is available for your platform. +config DRM_AGP + bool + config DRM_MIPI_DSI bool depends on DRM diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile index f458d6e33655..c04d5a33fcac 100644 --- a/drivers/gpu/drm/Makefile +++ b/drivers/gpu/drm/Makefile @@ -19,7 +19,7 @@ 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_AGP) += drm_agpsupport.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 -- 2.1.4 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm: Hack around CONFIG_AGP=m build failures Date: Thu, 01 Oct 2015 11:19:05 +0300 Message-ID: <8737xvc87a.fsf@intel.com> References: <1443682119-17011-1-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 640C96ECE7 for ; Thu, 1 Oct 2015 01:15:46 -0700 (PDT) In-Reply-To: <1443682119-17011-1-git-send-email-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: DRI Development Cc: Daniel Vetter , Stephen Rothwell , Michal Marek , Daniel Vetter , linux-kbuild@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCAwMSBPY3QgMjAxNSwgRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5j aD4gd3JvdGU6Cj4gU3VycHJpc2luZ2x5IGtidWlsZCBjYW4ndCBjb3BlIHdpdGggdHJpc3RhdGVz IGluIHRoZQo+IDxtb2R1bGU+LSQoQ09ORklHX0ZPTykgcGF0dGVybi4gVGhpcyBwYXRjaCBoYWNr cyB1cCBhIHNvbHV0aW9uLgoKR2l2ZW4gdGhhdCBpdCdzIHR3byBkaXN0aW5jdCBNYWtlZmlsZSB2 YXJpYWJsZXMgKGZvby15IGFuZCBmb28tbSkgYmVpbmcKYXNzaWduZWQgdG8sIEkgZG9uJ3QgcmVh bGx5IGZpbmQgdGhpcyBzdXJwcmlzaW5nLiBNYXliZSB0aGlzIGNvdWxkIGJlCm1hZGUgdG8gd29y ayBhcyBhIGNvbnZlbmllbmNlLCBidXQgdGhlcmUgbWlnaHQgYmUgb3RoZXIsIG1vcmUgc3VycGlz aW5nCmNvbnNlcXVlbmNlcy4KCj4gUmVwb3J0ZWQtYnk6IFN0ZXBoZW4gUm90aHdlbGwgPHNmckBj YW5iLmF1dWcub3JnLmF1Pgo+IFJlcG9ydGVkLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5 cmphbGFAbGludXguaW50ZWwuY29tPgo+IENjOiBTdGVwaGVuIFJvdGh3ZWxsIDxzZnJAY2FuYi5h dXVnLm9yZy5hdT4KPiBDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4Lmlu dGVsLmNvbT4KPiBDYzogTWljaGFsIE1hcmVrIDxtbWFyZWtAc3VzZS5jb20+Cj4gQ2M6IGxpbnV4 LWtidWlsZEB2Z2VyLmtlcm5lbC5vcmcKPiBTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxk YW5pZWwudmV0dGVyQGludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL01ha2VmaWxl IHwgMiArKwo+ICAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspCj4KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL01ha2VmaWxlIGIvZHJpdmVycy9ncHUvZHJtL01ha2VmaWxlCj4g aW5kZXggZjQ1OGQ2ZTMzNjU1Li5lODE0NTE3NTEzY2UgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL01ha2VmaWxlCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL01ha2VmaWxlCj4gQEAgLTIx LDYgKzIxLDggQEAgZHJtLSQoQ09ORklHX0RSTV9QQU5FTCkgKz0gZHJtX3BhbmVsLm8KPiAgZHJt LSQoQ09ORklHX09GKSArPSBkcm1fb2Yubwo+ICBkcm0tJChDT05GSUdfQUdQKSArPSBkcm1fYWdw c3VwcG9ydC5vCj4gIAo+ICtkcm0teSArPSAkKGRybS1tKQoKSSBrbm93IHdoYXQgeW91J3JlIGRv aW5nIGhlcmUsIGJ1dCBzb21laG93IHRoaXMgbG9va3Mgd3JvbmcgdG8gbWUuIEEgYml0Cm9mIGdp dCBncmVwIGFsc28gZG9lc24ndCBmaW5kIGNvbnZpbmNpbmcgYXJndW1lbnRzIHRvIGJhY2sgdGhp cyB1cC4KCkknZCBzb2x2ZSB0aGlzIHdpdGggYSBiaXQgb2YgZmFpcmx5IHN0cmFpZ2h0Zm9yd2Fy ZCBpbmRpcmVjdGlvbiBpbiB0aGUKS2NvbmZpZyB0byBrZWVwIHRoZSBNYWtlZmlsZSBpdHNlbGYg bmVhdC4gSSB0aGluayBpdCBhbHNvIGJldHRlcgpkb2N1bWVudHMgdGhlIGludGVudGlvbiBoZXJl LgoKUGF0Y2ggZm9sbG93cy4KCkJSLApKYW5pLgoKCkZyb20gZWZiYzlmYjZmNjI4NGU4MWE0Yjll NzU5OWIzMjMzYjY1NmNlYzQ1MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSmFuaSBO aWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KRGF0ZTogVGh1LCAxIE9jdCAyMDE1IDEwOjUz OjIyICswMzAwClN1YmplY3Q6IFtQQVRDSF0gZHJtOiBmaXggQ09ORklHX0FHUD1tIGJ1aWxkIGZh aWx1cmVzCk1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNl dD1VVEYtOApDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0Ck9yZ2FuaXphdGlvbjogSW50 ZWwgRmlubGFuZCBPeSAtIEJJQyAwMzU3NjA2LTQgLSBXZXN0ZW5kaW5rYXR1IDcsIDAyMTYwIEVz cG9vCkNjOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgoKSWYgQ09ORklHX0FH UCBpcyBlbmFibGVkIGFzIGEgbW9kdWxlLCBkcm1fYWdwc3VwcG9ydC5vIGlzIG5vdCBsaW5rZWQK aW50byBkcm0sIGNhdXNpbmc6CgpFUlJPUjogImRybV9hZ3BfdW5iaW5kX2lvY3RsIiBbZHJpdmVy cy9ncHUvZHJtL2RybS5rb10gdW5kZWZpbmVkIQpFUlJPUjogImRybV9hZ3BfaW5pdCIgW2RyaXZl cnMvZ3B1L2RybS9kcm0ua29dIHVuZGVmaW5lZCEKRVJST1I6ICJkcm1fYWdwX2FsbG9jX2lvY3Rs IiBbZHJpdmVycy9ncHUvZHJtL2RybS5rb10gdW5kZWZpbmVkIQpFUlJPUjogImRybV9hZ3BfY2xl YXIiIFtkcml2ZXJzL2dwdS9kcm0vZHJtLmtvXSB1bmRlZmluZWQhCkVSUk9SOiAiZHJtX2FncF9p bmZvX2lvY3RsIiBbZHJpdmVycy9ncHUvZHJtL2RybS5rb10gdW5kZWZpbmVkIQpFUlJPUjogImRy bV9hZ3BfZW5hYmxlX2lvY3RsIiBbZHJpdmVycy9ncHUvZHJtL2RybS5rb10gdW5kZWZpbmVkIQpF UlJPUjogImRybV9hZ3BfcmVsZWFzZV9pb2N0bCIgW2RyaXZlcnMvZ3B1L2RybS9kcm0ua29dIHVu ZGVmaW5lZCEKRVJST1I6ICJkcm1fYWdwX2JpbmRfaW9jdGwiIFtkcml2ZXJzL2dwdS9kcm0vZHJt LmtvXSB1bmRlZmluZWQhCkVSUk9SOiAiZHJtX2FncF9hY3F1aXJlX2lvY3RsIiBbZHJpdmVycy9n cHUvZHJtL2RybS5rb10gdW5kZWZpbmVkIQpFUlJPUjogImRybV9hZ3BfZnJlZV9pb2N0bCIgW2Ry aXZlcnMvZ3B1L2RybS9kcm0ua29dIHVuZGVmaW5lZCEKClJlZ3Jlc3Npb24gZnJvbQpjb21taXQg YTdmYjhhMjNjMWFmYTYwN2VjOGNlOWY2MWRmNjQ1ZjM3YzUyOTQzNApBdXRob3I6IERhbmllbCBW ZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+CkRhdGU6ICAgV2VkIFNlcCA5IDE2OjQ1OjUy IDIwMTUgKzAyMDAKCiAgICBkcm06IFJlbW92ZSBfX09TX0hBU19BR1AKCkFkZCBhbiBpbnRlcm1l ZGlhdGUgYm9vbCBDT05GSUdfRFJNX0FHUCwgc2VsZWN0ZWQgaWYgQ09ORklHX0FHUCBpcwplbmFi bGVkIGVpdGhlciBhcyBtb2R1bGUgb3IgYnVpbHQtaW4uCgpSZXBvcnRlZC1ieTogU3RlcGhlbiBS b3Rod2VsbCA8c2ZyQGNhbmIuYXV1Zy5vcmcuYXU+ClJlcG9ydGVkLWJ5OiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpDYzogU3RlcGhlbiBSb3Rod2VsbCA8 c2ZyQGNhbmIuYXV1Zy5vcmcuYXU+CkNjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgpDYzogTWljaGFsIE1hcmVrIDxtbWFyZWtAc3VzZS5jb20+CkNjOiBs aW51eC1rYnVpbGRAdmdlci5rZXJuZWwub3JnCkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0 dGVyQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGlu dGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vS2NvbmZpZyAgfCA0ICsrKysKIGRyaXZlcnMv Z3B1L2RybS9NYWtlZmlsZSB8IDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL0tjb25maWcgYi9k cml2ZXJzL2dwdS9kcm0vS2NvbmZpZwppbmRleCAxYTBhOGRmMmVlZDguLmFlY2JlYzAzMGFhNCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL0tjb25maWcKKysrIGIvZHJpdmVycy9ncHUvZHJt L0tjb25maWcKQEAgLTcsNiArNyw3IEBACiBtZW51Y29uZmlnIERSTQogCXRyaXN0YXRlICJEaXJl Y3QgUmVuZGVyaW5nIE1hbmFnZXIgKFhGcmVlODYgNC4xLjAgYW5kIGhpZ2hlciBEUkkgc3VwcG9y dCkiCiAJZGVwZW5kcyBvbiAoQUdQIHx8IEFHUD1uKSAmJiAhRU1VTEFURURfQ01QWENIRyAmJiBN TVUgJiYgSEFTX0RNQQorCXNlbGVjdCBEUk1fQUdQIGlmIEFHUAogCXNlbGVjdCBIRE1JCiAJc2Vs ZWN0IEZCX0NNRExJTkUKIAlzZWxlY3QgSTJDCkBAIC0yMSw2ICsyMiw5IEBAIG1lbnVjb25maWcg RFJNCiAJICBkZXRhaWxzLiAgWW91IHNob3VsZCBhbHNvIHNlbGVjdCBhbmQgY29uZmlndXJlIEFH UAogCSAgKC9kZXYvYWdwZ2FydCkgc3VwcG9ydCBpZiBpdCBpcyBhdmFpbGFibGUgZm9yIHlvdXIg cGxhdGZvcm0uCiAKK2NvbmZpZyBEUk1fQUdQCisJYm9vbAorCiBjb25maWcgRFJNX01JUElfRFNJ CiAJYm9vbAogCWRlcGVuZHMgb24gRFJNCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vTWFr ZWZpbGUgYi9kcml2ZXJzL2dwdS9kcm0vTWFrZWZpbGUKaW5kZXggZjQ1OGQ2ZTMzNjU1Li5jMDRk NWEzM2ZjYWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9NYWtlZmlsZQorKysgYi9kcml2 ZXJzL2dwdS9kcm0vTWFrZWZpbGUKQEAgLTE5LDcgKzE5LDcgQEAgZHJtLSQoQ09ORklHX0RSTV9H RU1fQ01BX0hFTFBFUikgKz0gZHJtX2dlbV9jbWFfaGVscGVyLm8KIGRybS0kKENPTkZJR19QQ0kp ICs9IGF0aV9wY2lnYXJ0Lm8KIGRybS0kKENPTkZJR19EUk1fUEFORUwpICs9IGRybV9wYW5lbC5v CiBkcm0tJChDT05GSUdfT0YpICs9IGRybV9vZi5vCi1kcm0tJChDT05GSUdfQUdQKSArPSBkcm1f YWdwc3VwcG9ydC5vCitkcm0tJChDT05GSUdfRFJNX0FHUCkgKz0gZHJtX2FncHN1cHBvcnQubwog CiBkcm1fa21zX2hlbHBlci15IDo9IGRybV9jcnRjX2hlbHBlci5vIGRybV9kcF9oZWxwZXIubyBk cm1fcHJvYmVfaGVscGVyLm8gXAogCQlkcm1fcGxhbmVfaGVscGVyLm8gZHJtX2RwX21zdF90b3Bv bG9neS5vIGRybV9hdG9taWNfaGVscGVyLm8KLS0gCjIuMS40CgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=