diff --git a/drivers/remoteproc/Kconfig b/drivers/remoteproc/Kconfig index 71ea703190c6520a5cebe15ba493e03b994a16ee..555dba04b5ae272fa060d58956d851ba6826a33c 100644 --- a/drivers/remoteproc/Kconfig +++ b/drivers/remoteproc/Kconfig @@ -87,9 +87,6 @@ config QCOM_ADSP_PIL config QCOM_RPROC_COMMON tristate -config QCOM_MDT_LOADER - tristate - config QCOM_Q6V5_PIL tristate "Qualcomm Hexagon V5 Peripherial Image Loader" depends on OF && ARCH_QCOM diff --git a/drivers/remoteproc/Makefile b/drivers/remoteproc/Makefile index d4f9525a226d88f9f41a2593ec756251c847bad1..ffc5e430df279a451a7d96313b3fe8107b301a02 100644 --- a/drivers/remoteproc/Makefile +++ b/drivers/remoteproc/Makefile @@ -12,7 +12,6 @@ obj-$(CONFIG_OMAP_REMOTEPROC) += omap_remoteproc.o obj-$(CONFIG_WKUP_M3_RPROC) += wkup_m3_rproc.o obj-$(CONFIG_DA8XX_REMOTEPROC) += da8xx_remoteproc.o obj-$(CONFIG_QCOM_ADSP_PIL) += qcom_adsp_pil.o -obj-$(CONFIG_QCOM_MDT_LOADER) += qcom_mdt_loader.o obj-$(CONFIG_QCOM_RPROC_COMMON) += qcom_common.o obj-$(CONFIG_QCOM_Q6V5_PIL) += qcom_q6v5_pil.o obj-$(CONFIG_QCOM_WCNSS_PIL) += qcom_wcnss_pil.o diff --git a/drivers/remoteproc/qcom_adsp_pil.c b/drivers/remoteproc/qcom_adsp_pil.c index c1ee5c818b4222166811bed27ae4a76be1888194..301b820216f64998c678882f9b11b787144d35db 100644 --- a/drivers/remoteproc/qcom_adsp_pil.c +++ b/drivers/remoteproc/qcom_adsp_pil.c @@ -26,11 +26,11 @@ #include #include #include +#include #include #include #include "qcom_common.h" -#include "qcom_mdt_loader.h" #include "remoteproc_internal.h" struct adsp_data { diff --git a/drivers/remoteproc/qcom_q6v5_pil.c b/drivers/remoteproc/qcom_q6v5_pil.c index 2e44c06e604a183ffb72d0f35a9c30b6a6f51fbd..b129261d7e5e9f3cf961d20aee1e1dc410672cbb 100644 --- a/drivers/remoteproc/qcom_q6v5_pil.c +++ b/drivers/remoteproc/qcom_q6v5_pil.c @@ -29,12 +29,12 @@ #include #include #include +#include #include #include #include "remoteproc_internal.h" #include "qcom_common.h" -#include "qcom_mdt_loader.h" #include diff --git a/drivers/remoteproc/qcom_wcnss.c b/drivers/remoteproc/qcom_wcnss.c index fbb25ea4ae8a6feb42aabf452674becc36f6f027..781211c144c6c608201d6b7bae352a7a365c389a 100644 --- a/drivers/remoteproc/qcom_wcnss.c +++ b/drivers/remoteproc/qcom_wcnss.c @@ -28,12 +28,12 @@ #include #include #include +#include #include #include #include #include "qcom_common.h" -#include "qcom_mdt_loader.h" #include "remoteproc_internal.h" #include "qcom_wcnss.h" diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig index 461b387d03cce53b658dd762a1587b11dc5aec01..78b1bb7bcf20ab1e3c39d7d3817b3ae3570825be 100644 --- a/drivers/soc/qcom/Kconfig +++ b/drivers/soc/qcom/Kconfig @@ -10,6 +10,10 @@ config QCOM_GSBI functions for connecting the underlying serial UART, SPI, and I2C devices to the output pins. +config QCOM_MDT_LOADER + tristate + select QCOM_SCM + config QCOM_PM bool "Qualcomm Power Management" depends on ARCH_QCOM && !ARM64 diff --git a/drivers/soc/qcom/Makefile b/drivers/soc/qcom/Makefile index fdd664edf0bdf3cdc7e468ccec62eae5770fae3a..1f30260b06b8f39ffa04d51e9b13b41c19c7b988 100644 --- a/drivers/soc/qcom/Makefile +++ b/drivers/soc/qcom/Makefile @@ -1,4 +1,5 @@ obj-$(CONFIG_QCOM_GSBI) += qcom_gsbi.o +obj-$(CONFIG_QCOM_MDT_LOADER) += mdt_loader.o obj-$(CONFIG_QCOM_PM) += spm.o obj-$(CONFIG_QCOM_SMD) += smd.o obj-$(CONFIG_QCOM_SMD_RPM) += smd-rpm.o diff --git a/drivers/remoteproc/qcom_mdt_loader.c b/drivers/soc/qcom/mdt_loader.c similarity index 99% rename from drivers/remoteproc/qcom_mdt_loader.c rename to drivers/soc/qcom/mdt_loader.c index 790ab31f31ffb56e60770717e353ac74932ceaf6..98b2373c3a974bc044bae8dc3b162cd02814e7de 100644 --- a/drivers/remoteproc/qcom_mdt_loader.c +++ b/drivers/soc/qcom/mdt_loader.c @@ -23,8 +23,7 @@ #include #include #include - -#include "qcom_mdt_loader.h" +#include static bool mdt_phdr_valid(const struct elf32_phdr *phdr) { diff --git a/drivers/remoteproc/qcom_mdt_loader.h b/include/linux/soc/qcom/mdt_loader.h similarity index 87% rename from drivers/remoteproc/qcom_mdt_loader.h rename to include/linux/soc/qcom/mdt_loader.h index ff6e45b7732616a87389dc619a2d32bfd8be9e9f..f423001db3a9a8af3fc480013838e7725eb23766 100644 --- a/drivers/remoteproc/qcom_mdt_loader.h +++ b/include/linux/soc/qcom/mdt_loader.h @@ -1,10 +1,15 @@ #ifndef __QCOM_MDT_LOADER_H__ #define __QCOM_MDT_LOADER_H__ +#include + #define QCOM_MDT_TYPE_MASK (7 << 24) #define QCOM_MDT_TYPE_HASH (2 << 24) #define QCOM_MDT_RELOCATABLE BIT(27) +struct device; +struct firmware; + ssize_t qcom_mdt_get_size(const struct firmware *fw); int qcom_mdt_load(struct device *dev, const struct firmware *fw, const char *fw_name, int pas_id, void *mem_region,