Received: by 2002:a05:6358:7058:b0:131:369:b2a3 with SMTP id 24csp7890995rwp; Wed, 19 Jul 2023 01:46:03 -0700 (PDT) X-Google-Smtp-Source: APBJJlEotSGMz6cOsJRBnOQ+UuPr+rQkiIeQswup8bBv332gpLGKgFbFcmmNLKSiJT8qHwPLdwIW X-Received: by 2002:a05:6a20:9483:b0:133:8229:196e with SMTP id hs3-20020a056a20948300b001338229196emr1376068pzb.35.1689756363388; Wed, 19 Jul 2023 01:46:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689756363; cv=none; d=google.com; s=arc-20160816; b=evSxmXp3W/6L2MLnT5yc1NtYE/zGBRHLWN2q8r2DrmmSbB8hmJ0pC5KFpx8AUKf5wJ ySGFrwWumPtj23BLnhNrDK5lh61w0K2m5LMVpJ2175GrRWj7RyKa+pGEiZrzT4ldXbDA fQWKRV1jt0Uz3+s2olQsFbIF1ZVERpvdNKz2WgnbZ127i50tAxN1q19WODqcv9ORe2/X Tr7ljHF0iPdJtV6KK5o3du6t8kXmtu6Xnocl7ipH0Vzm5VzYvCCwP6RNKxcCQQAJkLBv pJey0xH8sL6Qq8uROJq6Vzi1J1mCL+5wgrm1WhTLSVFgs6CTedCZPdN24485hhYwwIZV WmdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=40ASWVJugYUVdn1GncG1gYQu4TsA6479quLHdQQNoPg=; fh=CrNDChCqMrl4fLDaWvUP4Z/P3bLO1Kmu+VkCh820rps=; b=gIjRxcjwy0nJSRLifVTCevQzKOXfXkm36zSv9BEAtySt2y6YvGILJ0QhbsOFduJPaJ q1HbivS3Y9R+6TjbDFz0X0sVwekKdekPiALXRzkDFQyvWG9io1eevsET46+8APLNGnnN yHB/8uPzgBi5uuJu5Uzbi1jxrELYkioOW9d369KhdBJ7G2eDnkvi+lnqn3LlVhWg7RX/ aJ6ZAVbmetGkIOkNID+JD4QS4Ew40cw5FXkidiRi1LotqGjK7CeucSpMb2aBDjSaaT/6 /Kk6PViuMew4qdTCYGV7Z1ss4yB1N1S6TwR3flnla9DwrI96SxpABUTpDjQTkAZ1MoAR VCNQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=NDLgDeho; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id lg14-20020a170902fb8e00b001b9e1d5eb1dsi3086260plb.279.2023.07.19.01.45.50; Wed, 19 Jul 2023 01:46:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=NDLgDeho; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230435AbjGSIRF (ORCPT + 99 others); Wed, 19 Jul 2023 04:17:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55646 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230354AbjGSIQr (ORCPT ); Wed, 19 Jul 2023 04:16:47 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8877D172A for ; Wed, 19 Jul 2023 01:15:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1689754555; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=40ASWVJugYUVdn1GncG1gYQu4TsA6479quLHdQQNoPg=; b=NDLgDeho1Ng0ShLW2vEUyAYWsviHBv4M1WYfw2SytgK17aIj4KZ1SkSygWztgWR/+k1Eef ApB/97IJlnmZi503yddO39Bp0VLQ5NH0mpkAKR/bgh6+7bl9KO9vIutnqJWOvME3J1fYqs X8tCloLbw9ZgaCqD/VpGlA0FMVYJnk8= Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-348-y7Znn4npPF2Hc8Bshmy-YQ-1; Wed, 19 Jul 2023 04:15:54 -0400 X-MC-Unique: y7Znn4npPF2Hc8Bshmy-YQ-1 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-315998d6e7fso3658972f8f.3 for ; Wed, 19 Jul 2023 01:15:54 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689754553; x=1690359353; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=40ASWVJugYUVdn1GncG1gYQu4TsA6479quLHdQQNoPg=; b=Vg2GIetyEPD2YygfJyuTBbmY76NEmxcFYBNzDaP/AMHtK+FKDKPpRYRkkYLN7Yt0hV ypCOjgBDbwq2iDG151DCSh8JLaOQmciARgTadvyYKQZGCADxAwixxEWcQO8W9Mi5MIhi QCZyozKdIBw8FuAZr5z9eIYnZwJY3l7SncGue7RUgIkgJqKiIWzGbcrdz+AA4cjfdc7M IgLDO7Rh1pZhOIo8obpW3sEqFhV1G0Hgfh+lFBpWfXVnKTxICxK+m8HjOtjdnlYZqeEC IDHMai7qDv4n6M07kyx2OWFj/vky+Xr0f/6xbOcVCoF+oJZJFkMGAGsn9VYZ/eaUeTYt JJTw== X-Gm-Message-State: ABy/qLaCL1Z7Qh74sP6Jt3qlsEpFxXe3rgEw43EbXawBnwrTaERS+lWp UUIXjVeG0SRja8ERPQjnRps+u3WJZ/CQWmVRw7WFXTrUozaxUv74WEW96eYZC2u832fQoaLY2QS XimkoqZ6f5bb9elzqbScxmwUy9XRLYoLBTen5H6HUTjw26K5Wfx3A/rFK2Sdn/Su8vYSsrjrkS2 c64hztgpE= X-Received: by 2002:adf:f010:0:b0:30f:c5b1:23ef with SMTP id j16-20020adff010000000b0030fc5b123efmr1442040wro.41.1689754553280; Wed, 19 Jul 2023 01:15:53 -0700 (PDT) X-Received: by 2002:adf:f010:0:b0:30f:c5b1:23ef with SMTP id j16-20020adff010000000b0030fc5b123efmr1441993wro.41.1689754552888; Wed, 19 Jul 2023 01:15:52 -0700 (PDT) Received: from minerva.home (205.pool92-176-231.dynamic.orange.es. [92.176.231.205]) by smtp.gmail.com with ESMTPSA id d5-20020a5d5385000000b0031423a8f4f7sm4574354wrv.56.2023.07.19.01.15.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Jul 2023 01:15:52 -0700 (PDT) From: Javier Martinez Canillas To: linux-kernel@vger.kernel.org Cc: Thomas Zimmermann , Geert Uytterhoeven , Arnd Bergmann , Javier Martinez Canillas , Andy Shevchenko , Borislav Petkov , Daniel Thompson , Daniel Vetter , Dave Hansen , David Airlie , Greg Kroah-Hartman , "H. Peter Anvin" , Helge Deller , Ingo Molnar , Jacek Lawrynowicz , Jeffrey Hugo , Jingoo Han , Lee Jones , Maarten Lankhorst , Maxime Ripard , Nipun Gupta , Oded Gabbay , Pieter Jansen van Vuuren , Randy Dunlap , Sam Ravnborg , Thomas Gleixner , dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, x86@kernel.org Subject: [PATCH v6 0/4] Allow disabling all native fbdev drivers and only keeping DRM emulation Date: Wed, 19 Jul 2023 10:15:34 +0200 Message-ID: <20230719081544.741051-1-javierm@redhat.com> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch series splits the fbdev core support in two different Kconfig symbols: FB and FB_CORE. The motivation for this is to allow CONFIG_FB to be disabled, while still having the the core fbdev support needed for the CONFIG_DRM_FBDEV_EMULATION to be enabled. The motivation is automatically disabling all fbdev drivers instead of having to be disabled individually. The reason for doing this is that now with simpledrm, there's no need for the legacy fbdev (e.g: efifb or vesafb) drivers anymore and many distros now disable them. But it would simplify the config a lot fo have a single Kconfig symbol to disable all fbdev drivers. I've built tested with possible combinations of CONFIG_FB, CONFIG_FB_CORE, CONFIG_DRM_FBDEV_EMULATION and CONFIG_FB_DEVICE symbols set to 'y' or 'n'. Patch #1 moves the auxdisplay drivers to "Graphics support" Kconfig menu, patch #2 moves the core fbdev Kconfig symbols to a separate Kconfig file, patch #3 does the FB symbol split and introduces the FB_CORE symbol and finally patch #4 makes the DRM symbol to select FB_CORE if the DRM fbdev emualtion support was enabled. Since this series touches three subsystems (auxdisplay, fbdev and DRM), I would like to merge it through DRM with the acks of these maintainers. This is a v6 of the patch-set that addresses issues pointed out by Arnd Bergmann in the previous v5: https://lists.freedesktop.org/archives/dri-devel/2023-July/413943.html Changes in v6: - Don't move FB_{HECUBA,SVGALIB,MACMODES} to config/Kcore (Arnd Bergmann). - Fix link error when CONFIG_FB_CORE=y and CONFIG_FB=m (Arnd Bergmann). Changes in v5: - Take the auxdisplay/Kconfig source out of "if HAS_IOMEM" (Geert Uytterhoeven). - Fix ifdef guard check in drivers/video/backlight/backlight.c (Arnd Bergmann). Changes in v4: - Fix menuconfig hierarchy that was broken in v3 (Arnd Bergmann). Changes in v3: - Really make a hidden symbol by removing the prompt (Arnd Bergmann). - Change FB_CORE to config instead of menuconfig (Arnd Bergmann). - Keep "depends on FB" for FIRMWARE_EDID (Arnd Bergmann). - Compile out fb_backlight.o and fbmon.o that are only needed for FB (Arnd Bergmann). - Make FB_DEVICE to depend on FB_CORE instead of selecting it. - Make the DRM symbol to select FB_CORE if DRM_FBDEV_EMULATION is enabled (Arnd Bergmann). - Also make DRM select FB_SYS_HELPERS_DEFERRED if DRM_FBDEV_EMULATION - Make DRM_FBDEV_EMULATION to depend on DRM instead of DRM_KMS_HELPER. Changes in v2: - Keep "depends on FB" for FB_DDC, FB_HECUBA, FB_SVGALIB, FB_MACMODES, FB_BACKLIGHT, FB_MODE_HELPERS and FB_TILEBLITTING (Arnd Bergmann). - Don't change the fb.o object name (Arnd Bergmann). - Make FB_CORE a non-visible Kconfig symbol instead (Thomas Zimmermann). - Make CONFIG_DRM_FBDEV_EMULATION to select FB_CORE (Thomas Zimmermann). Javier Martinez Canillas (4): video: Add auxiliary display drivers to Graphics support menu fbdev: Move core fbdev symbols to a separate Kconfig file fbdev: Split frame buffer support in FB and FB_CORE symbols drm: Make FB_CORE to be selected if DRM fbdev emulation is enabled arch/x86/Makefile | 2 +- arch/x86/video/Makefile | 2 +- drivers/Kconfig | 2 - drivers/gpu/drm/Kconfig | 7 +- drivers/video/Kconfig | 2 + drivers/video/backlight/backlight.c | 6 +- drivers/video/console/Kconfig | 2 +- drivers/video/fbdev/Kconfig | 197 ++-------------------------- drivers/video/fbdev/core/Kconfig | 190 +++++++++++++++++++++++++++ drivers/video/fbdev/core/Makefile | 10 +- 10 files changed, 218 insertions(+), 202 deletions(-) create mode 100644 drivers/video/fbdev/core/Kconfig -- 2.41.0