]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
firmware: qcom: move Qualcomm code into its own directory
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 17 Oct 2023 09:27:18 +0000 (11:27 +0200)
committerBjorn Andersson <andersson@kernel.org>
Sun, 22 Oct 2023 16:14:54 +0000 (09:14 -0700)
We're getting more and more qcom specific .c files in drivers/firmware/
and about to get even more. Create a separate directory for Qualcomm
firmware drivers and move existing sources in there.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Acked-by: Elliot Berman <quic_eberman@quicinc.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com>
Tested-by: Andrew Halaney <ahalaney@redhat.com> # sc8280xp-lenovo-thinkpad-x13s
Link: https://lore.kernel.org/r/20231017092732.19983-2-brgl@bgdev.pl
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
MAINTAINERS
drivers/firmware/Kconfig
drivers/firmware/Makefile
drivers/firmware/qcom/Kconfig [new file with mode: 0644]
drivers/firmware/qcom/Makefile [new file with mode: 0644]
drivers/firmware/qcom/qcom_qseecom.c [moved from drivers/firmware/qcom_qseecom.c with 100% similarity]
drivers/firmware/qcom/qcom_qseecom_uefisecapp.c [moved from drivers/firmware/qcom_qseecom_uefisecapp.c with 100% similarity]
drivers/firmware/qcom/qcom_scm-legacy.c [moved from drivers/firmware/qcom_scm-legacy.c with 100% similarity]
drivers/firmware/qcom/qcom_scm-smc.c [moved from drivers/firmware/qcom_scm-smc.c with 100% similarity]
drivers/firmware/qcom/qcom_scm.c [moved from drivers/firmware/qcom_scm.c with 100% similarity]
drivers/firmware/qcom/qcom_scm.h [moved from drivers/firmware/qcom_scm.h with 100% similarity]

index 01dde0acebd32044d4436875cc3e0b38c47bd459..2e28b5efc7fae0c0cb99682fe6c8f9321a67a15c 100644 (file)
@@ -17804,13 +17804,13 @@ QUALCOMM QSEECOM DRIVER
 M:     Maximilian Luz <luzmaximilian@gmail.com>
 L:     linux-arm-msm@vger.kernel.org
 S:     Maintained
-F:     drivers/firmware/qcom_qseecom.c
+F:     drivers/firmware/qcom/qcom_qseecom.c
 
 QUALCOMM QSEECOM UEFISECAPP DRIVER
 M:     Maximilian Luz <luzmaximilian@gmail.com>
 L:     linux-arm-msm@vger.kernel.org
 S:     Maintained
-F:     drivers/firmware/qcom_qseecom_uefisecapp.c
+F:     drivers/firmware/qcom/qcom_qseecom_uefisecapp.c
 
 QUALCOMM RMNET DRIVER
 M:     Subash Abhinov Kasiviswanathan <quic_subashab@quicinc.com>
index 8c608be300601f63eeaf6ccf26d5d63b37c43155..46949e9b748aeb375824f313591a2a66a68b1a2e 100644 (file)
@@ -212,53 +212,6 @@ config MTK_ADSP_IPC
          ADSP exists on some mtk processors.
          Client might use shared memory to exchange information with ADSP.
 
-config QCOM_SCM
-       tristate
-
-config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
-       bool "Qualcomm download mode enabled by default"
-       depends on QCOM_SCM
-       help
-         A device with "download mode" enabled will upon an unexpected
-         warm-restart enter a special debug mode that allows the user to
-         "download" memory content over USB for offline postmortem analysis.
-         The feature can be enabled/disabled on the kernel command line.
-
-         Say Y here to enable "download mode" by default.
-
-config QCOM_QSEECOM
-       bool "Qualcomm QSEECOM interface driver"
-       depends on QCOM_SCM=y
-       select AUXILIARY_BUS
-       help
-         Various Qualcomm SoCs have a Secure Execution Environment (SEE) running
-         in the Trust Zone. This module provides an interface to that via the
-         QSEECOM mechanism, using SCM calls.
-
-         The QSEECOM interface allows, among other things, access to applications
-         running in the SEE. An example of such an application is 'uefisecapp',
-         which is required to access UEFI variables on certain systems. If
-         selected, the interface will also attempt to detect and register client
-         devices for supported applications.
-
-         Select Y here to enable the QSEECOM interface driver.
-
-config QCOM_QSEECOM_UEFISECAPP
-       bool "Qualcomm SEE UEFI Secure App client driver"
-       depends on QCOM_QSEECOM
-       depends on EFI
-       help
-         Various Qualcomm SoCs do not allow direct access to EFI variables.
-         Instead, these need to be accessed via the UEFI Secure Application
-         (uefisecapp), residing in the Secure Execution Environment (SEE).
-
-         This module provides a client driver for uefisecapp, installing efivar
-         operations to allow the kernel accessing EFI variables, and via that also
-         provide user-space with access to EFI variables via efivarfs.
-
-         Select Y here to provide access to EFI variables on the aforementioned
-         platforms.
-
 config SYSFB
        bool
        select BOOT_VESA_SUPPORT
@@ -344,6 +297,7 @@ source "drivers/firmware/efi/Kconfig"
 source "drivers/firmware/imx/Kconfig"
 source "drivers/firmware/meson/Kconfig"
 source "drivers/firmware/psci/Kconfig"
+source "drivers/firmware/qcom/Kconfig"
 source "drivers/firmware/smccc/Kconfig"
 source "drivers/firmware/tegra/Kconfig"
 source "drivers/firmware/xilinx/Kconfig"
index d41b094a5e580e92fb3be65bcc7668d98b3dfb60..ec454e9521682722193dec9b9c261e2ac0df4bd2 100644 (file)
@@ -18,10 +18,6 @@ obj-$(CONFIG_FIRMWARE_MEMMAP)        += memmap.o
 obj-$(CONFIG_MTK_ADSP_IPC)     += mtk-adsp-ipc.o
 obj-$(CONFIG_RASPBERRYPI_FIRMWARE) += raspberrypi.o
 obj-$(CONFIG_FW_CFG_SYSFS)     += qemu_fw_cfg.o
-obj-$(CONFIG_QCOM_SCM)         += qcom-scm.o
-qcom-scm-objs += qcom_scm.o qcom_scm-smc.o qcom_scm-legacy.o
-obj-$(CONFIG_QCOM_QSEECOM)     += qcom_qseecom.o
-obj-$(CONFIG_QCOM_QSEECOM_UEFISECAPP) += qcom_qseecom_uefisecapp.o
 obj-$(CONFIG_SYSFB)            += sysfb.o
 obj-$(CONFIG_SYSFB_SIMPLEFB)   += sysfb_simplefb.o
 obj-$(CONFIG_TI_SCI_PROTOCOL)  += ti_sci.o
@@ -37,6 +33,7 @@ obj-$(CONFIG_GOOGLE_FIRMWARE) += google/
 obj-y                          += efi/
 obj-y                          += imx/
 obj-y                          += psci/
+obj-y                          += qcom/
 obj-y                          += smccc/
 obj-y                          += tegra/
 obj-y                          += xilinx/
diff --git a/drivers/firmware/qcom/Kconfig b/drivers/firmware/qcom/Kconfig
new file mode 100644 (file)
index 0000000..3f05d98
--- /dev/null
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# For a description of the syntax of this configuration file,
+# see Documentation/kbuild/kconfig-language.rst.
+#
+
+menu "Qualcomm firmware drivers"
+
+config QCOM_SCM
+       tristate
+
+config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
+       bool "Qualcomm download mode enabled by default"
+       depends on QCOM_SCM
+       help
+         A device with "download mode" enabled will upon an unexpected
+         warm-restart enter a special debug mode that allows the user to
+         "download" memory content over USB for offline postmortem analysis.
+         The feature can be enabled/disabled on the kernel command line.
+
+         Say Y here to enable "download mode" by default.
+
+config QCOM_QSEECOM
+       bool "Qualcomm QSEECOM interface driver"
+       depends on QCOM_SCM=y
+       select AUXILIARY_BUS
+       help
+         Various Qualcomm SoCs have a Secure Execution Environment (SEE) running
+         in the Trust Zone. This module provides an interface to that via the
+         QSEECOM mechanism, using SCM calls.
+
+         The QSEECOM interface allows, among other things, access to applications
+         running in the SEE. An example of such an application is 'uefisecapp',
+         which is required to access UEFI variables on certain systems. If
+         selected, the interface will also attempt to detect and register client
+         devices for supported applications.
+
+         Select Y here to enable the QSEECOM interface driver.
+
+config QCOM_QSEECOM_UEFISECAPP
+       bool "Qualcomm SEE UEFI Secure App client driver"
+       depends on QCOM_QSEECOM
+       depends on EFI
+       help
+         Various Qualcomm SoCs do not allow direct access to EFI variables.
+         Instead, these need to be accessed via the UEFI Secure Application
+         (uefisecapp), residing in the Secure Execution Environment (SEE).
+
+         This module provides a client driver for uefisecapp, installing efivar
+         operations to allow the kernel accessing EFI variables, and via that also
+         provide user-space with access to EFI variables via efivarfs.
+
+         Select Y here to provide access to EFI variables on the aforementioned
+         platforms.
+
+endmenu
diff --git a/drivers/firmware/qcom/Makefile b/drivers/firmware/qcom/Makefile
new file mode 100644 (file)
index 0000000..c9f12ee
--- /dev/null
@@ -0,0 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Makefile for the linux kernel.
+#
+
+obj-$(CONFIG_QCOM_SCM)         += qcom-scm.o
+qcom-scm-objs += qcom_scm.o qcom_scm-smc.o qcom_scm-legacy.o
+obj-$(CONFIG_QCOM_QSEECOM)     += qcom_qseecom.o
+obj-$(CONFIG_QCOM_QSEECOM_UEFISECAPP) += qcom_qseecom_uefisecapp.o