From patchwork Fri Jan 22 16:28:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Bader X-Patchwork-Id: 1430439 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4DMl750g75z9sCD; Sat, 23 Jan 2021 03:28:17 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1l2zID-00054a-47; Fri, 22 Jan 2021 16:28:13 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1l2zIA-00053M-3l for kernel-team@lists.ubuntu.com; Fri, 22 Jan 2021 16:28:10 +0000 Received: from 1.general.smb.uk.vpn ([10.172.193.28] helo=canonical.com) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1l2zI9-00070q-Qo; Fri, 22 Jan 2021 16:28:09 +0000 From: Stefan Bader To: kernel-team@lists.ubuntu.com Subject: [SRU F][PATCH 01/02] UBUNTU: [Packaging] Add support for ODM drivers Date: Fri, 22 Jan 2021 17:28:07 +0100 Message-Id: <20210122162808.75289-2-stefan.bader@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210122162808.75289-1-stefan.bader@canonical.com> References: <20210122162808.75289-1-stefan.bader@canonical.com> MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: https://bugs.launchpad.net/bugs/1912789 We want to be able to selectively turn on ODM driver support for those kernels/arches we have to but otherwise not inherit this to other derivatives. This is done by a new config option which we will have to depend on in the new drivers config options. Support is toggled by changing a makefile rule variable. The logic is a bit reversed. The common config has it enabled but it will be turn off for builds unless one asks for it to be on. Example of that will be in a follow-up patch. Signed-off-by: Stefan Bader --- debian.master/config/config.common.ubuntu | 1 + debian/rules.d/0-common-vars.mk | 4 ++++ debian/rules.d/1-maintainer.mk | 1 + debian/rules.d/2-binary-arch.mk | 3 +++ ubuntu/Kconfig | 6 ++++++ 5 files changed, 15 insertions(+) diff --git a/debian.master/config/config.common.ubuntu b/debian.master/config/config.common.ubuntu index 75cc55c2d321..00fae58b1ade 100644 --- a/debian.master/config/config.common.ubuntu +++ b/debian.master/config/config.common.ubuntu @@ -10362,6 +10362,7 @@ CONFIG_UBIFS_FS_ZLIB=y CONFIG_UBIFS_FS_ZSTD=y # CONFIG_UBSAN is not set CONFIG_UBSAN_ALIGNMENT=y +CONFIG_UBUNTU_ODM_DRIVERS=y CONFIG_UCB1400_CORE=m CONFIG_UCLAMP_BUCKETS_COUNT=5 CONFIG_UCLAMP_TASK=y diff --git a/debian/rules.d/0-common-vars.mk b/debian/rules.d/0-common-vars.mk index 5394b7c96f82..b71546ab03a0 100644 --- a/debian/rules.d/0-common-vars.mk +++ b/debian/rules.d/0-common-vars.mk @@ -187,6 +187,10 @@ do_common_headers_indep=true # add a 'full source' mode do_full_source=false +# Add an option to enable special drivers which should only be build when +# explicitly enabled. +do_odm_drivers=false + # build tools ifneq ($(wildcard $(CURDIR)/tools),) ifeq ($(do_tools),) diff --git a/debian/rules.d/1-maintainer.mk b/debian/rules.d/1-maintainer.mk index 956829027e0f..fabdf0888fce 100644 --- a/debian/rules.d/1-maintainer.mk +++ b/debian/rules.d/1-maintainer.mk @@ -86,6 +86,7 @@ printenv: @echo "do_flavour_header_package = $(do_flavour_header_package)" @echo "do_common_headers_indep = $(do_common_headers_indep)" @echo "do_full_source = $(do_full_source)" + @echo "do_odm_drivers = $(do_odm_drivers)" @echo "do_tools = $(do_tools)" @echo "do_any_tools = $(do_any_tools)" @echo "do_linux_tools = $(do_linux_tools)" diff --git a/debian/rules.d/2-binary-arch.mk b/debian/rules.d/2-binary-arch.mk index 703fd2ade338..6311c9a74e05 100644 --- a/debian/rules.d/2-binary-arch.mk +++ b/debian/rules.d/2-binary-arch.mk @@ -31,6 +31,9 @@ $(stampdir)/stamp-prepare-tree-%: $(commonconfdir)/config.common.$(family) $(arc [ "$(do_full_source)" != 'true' ] && true || \ rsync -a --exclude debian --exclude debian.master --exclude $(DEBIAN) * $(builddir)/build-$* cat $(wordlist 1,3,$^) | sed -e 's/.*CONFIG_VERSION_SIGNATURE.*/CONFIG_VERSION_SIGNATURE="Ubuntu $(release)-$(revision)-$* $(raw_kernelversion)"/' > $(builddir)/build-$*/.config + [ "$(do_odm_drivers)" = 'true' ] && true || \ + sed -ie 's/.*CONFIG_UBUNTU_ODM_DRIVERS.*/# CONFIG_UBUNTU_ODM_DRIVERS is not set/' \ + $(builddir)/build-$*/.config find $(builddir)/build-$* -name "*.ko" | xargs rm -f $(build_cd) $(kmake) $(build_O) -j1 syncconfig prepare scripts touch $@ diff --git a/ubuntu/Kconfig b/ubuntu/Kconfig index 8cea998f29a3..d969907b0bfd 100644 --- a/ubuntu/Kconfig +++ b/ubuntu/Kconfig @@ -1,5 +1,11 @@ menu "Ubuntu Supplied Third-Party Device Drivers" + +config UBUNTU_ODM_DRIVERS +bool "Enable support for ODM drivers" +help + Turn on support for Ubuntu ODM supplied drivers + # # NOTE: to allow drivers to be added and removed without causing merge # collisions you should add new entries in the middle of the six lines From patchwork Fri Jan 22 16:28:08 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Bader X-Patchwork-Id: 1430440 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4DMl765D6zz9sVF; Sat, 23 Jan 2021 03:28:18 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1l2zIE-00055I-Tz; Fri, 22 Jan 2021 16:28:14 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1l2zIA-000540-JQ for kernel-team@lists.ubuntu.com; Fri, 22 Jan 2021 16:28:10 +0000 Received: from 1.general.smb.uk.vpn ([10.172.193.28] helo=canonical.com) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1l2zIA-000710-AG; Fri, 22 Jan 2021 16:28:10 +0000 From: Stefan Bader To: kernel-team@lists.ubuntu.com Subject: [SRU F][PATCH 02/02] UBUNTU: [Packaging] Turn on ODM support for amd64 Date: Fri, 22 Jan 2021 17:28:08 +0100 Message-Id: <20210122162808.75289-3-stefan.bader@canonical.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210122162808.75289-1-stefan.bader@canonical.com> References: <20210122162808.75289-1-stefan.bader@canonical.com> MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: https://bugs.launchpad.net/1912789 Now there is the support in place let us turn this on for amd64. This still does not have any immediate effect until elective drivers have a "depends on UBUNTU_ODM_DRIVERS" added in its Kconfig. Signed-off-by: Stefan Bader --- debian.master/rules.d/amd64.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/debian.master/rules.d/amd64.mk b/debian.master/rules.d/amd64.mk index d253402ae066..c201b5da0b13 100644 --- a/debian.master/rules.d/amd64.mk +++ b/debian.master/rules.d/amd64.mk @@ -26,3 +26,4 @@ do_dkms_nvidia = true do_dkms_nvidia_server = true do_dkms_vbox = true do_dkms_wireguard = true +do_odm_drivers = true