* [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries
@ 2023-12-16 16:26 Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much Dmitry Baryshkov
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Dmitry Baryshkov @ 2023-12-16 16:26 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King
The Kconfig for 32-bit Qualcomm arch predates DT and multi-machine
support. It still defines ARCH_MSM* types for some (but not all) 32-bit
Qualcomm machines. The MSM_IOMMU driver has a strict dependency on one
of such kinds.
With the DT support in place, this has become obsolete quite a while
ago. Replace all 32-bit Qualcomm ARCH kinds with the single Kconfig
entry for the workaround required to be enabled for some of those 32-bit
platforms.
Changes since v1:
- Renamed ARCH_QCOM_SMEM to ARCH_QCOM_RESERVE_SMEM (Bjorn)
Dmitry Baryshkov (3):
iommu/msm-iommu: don't limit the driver too much
ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes
ARM: qcom: merge remaining subplatforms into sensible Kconfig entry
arch/arm/Makefile | 4 +---
arch/arm/mach-qcom/Kconfig | 41 ++++++++------------------------------
drivers/iommu/Kconfig | 2 +-
3 files changed, 10 insertions(+), 37 deletions(-)
--
2.39.2
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much
2023-12-16 16:26 [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Dmitry Baryshkov
@ 2023-12-16 16:26 ` Dmitry Baryshkov
2023-12-16 18:39 ` Konrad Dybcio
2023-12-31 0:48 ` Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes Dmitry Baryshkov
` (2 subsequent siblings)
3 siblings, 2 replies; 8+ messages in thread
From: Dmitry Baryshkov @ 2023-12-16 16:26 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King,
Joerg Roedel
In preparation of dropping most of ARCH_QCOM subtypes, stop limiting the
driver just to those machines. Allow it to be built for any 32-bit
Qualcomm platform (ARCH_QCOM).
Acked-by: Robin Murphy <robin.murphy@arm.com>
Acked-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
drivers/iommu/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
index 9a29d742617e..0d6095290b6a 100644
--- a/drivers/iommu/Kconfig
+++ b/drivers/iommu/Kconfig
@@ -179,7 +179,7 @@ config FSL_PAMU
config MSM_IOMMU
bool "MSM IOMMU Support"
depends on ARM
- depends on ARCH_MSM8X60 || ARCH_MSM8960 || COMPILE_TEST
+ depends on ARCH_QCOM || COMPILE_TEST
select IOMMU_API
select IOMMU_IO_PGTABLE_ARMV7S
help
--
2.39.2
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes
2023-12-16 16:26 [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much Dmitry Baryshkov
@ 2023-12-16 16:26 ` Dmitry Baryshkov
2023-12-20 0:40 ` Konrad Dybcio
2023-12-16 16:27 ` [PATCH v2 3/3] ARM: qcom: merge remaining subplatforms into sensible Kconfig entry Dmitry Baryshkov
2024-02-07 4:46 ` [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Bjorn Andersson
3 siblings, 1 reply; 8+ messages in thread
From: Dmitry Baryshkov @ 2023-12-16 16:26 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King
Historically we had several subtypes of 32-bit Qualcomm platforms.
Nowadays they became just useless symbols in Kconfig. Drop them and pull
corresponding clocksource entries towards top-level ARCH_QCOM entry.
Note, I've left ARCH_IPQ40XX, ARCH_MSM8x60 and ARCH_MSM8960 in place,
since they have special TEXT_OFFSET handling, which can be sorted out
separately.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
arch/arm/mach-qcom/Kconfig | 30 ++++--------------------------
1 file changed, 4 insertions(+), 26 deletions(-)
diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig
index 12a812e61c16..27d5ca0043be 100644
--- a/arch/arm/mach-qcom/Kconfig
+++ b/arch/arm/mach-qcom/Kconfig
@@ -4,46 +4,24 @@ menuconfig ARCH_QCOM
depends on ARCH_MULTI_V7
select ARM_GIC
select ARM_AMBA
+ select CLKSRC_QCOM
+ select HAVE_ARM_ARCH_TIMER
select PINCTRL
select QCOM_SCM if SMP
help
Support for Qualcomm's devicetree based systems.
+ This includes support for a few devices with ARM64 SoC, that have
+ ARM32 signed firmware that does not allow booting ARM64 kernels.
if ARCH_QCOM
config ARCH_IPQ40XX
bool "Enable support for IPQ40XX"
- select CLKSRC_QCOM
- select HAVE_ARM_ARCH_TIMER
config ARCH_MSM8X60
bool "Enable support for MSM8X60"
- select CLKSRC_QCOM
-
-config ARCH_MSM8909
- bool "Enable support for MSM8909"
- select HAVE_ARM_ARCH_TIMER
-
-config ARCH_MSM8916
- bool "Enable support for MSM8916"
- select HAVE_ARM_ARCH_TIMER
- help
- Enable support for the Qualcomm Snapdragon 410 (MSM8916/APQ8016).
-
- Note that ARM64 is the main supported architecture for MSM8916.
- The ARM32 option is intended for a few devices with signed firmware
- that does not allow booting ARM64 kernels.
config ARCH_MSM8960
bool "Enable support for MSM8960"
- select CLKSRC_QCOM
-
-config ARCH_MSM8974
- bool "Enable support for MSM8974"
- select HAVE_ARM_ARCH_TIMER
-
-config ARCH_MDM9615
- bool "Enable support for MDM9615"
- select CLKSRC_QCOM
endif
--
2.39.2
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] ARM: qcom: merge remaining subplatforms into sensible Kconfig entry
2023-12-16 16:26 [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes Dmitry Baryshkov
@ 2023-12-16 16:27 ` Dmitry Baryshkov
2024-02-07 4:46 ` [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Bjorn Andersson
3 siblings, 0 replies; 8+ messages in thread
From: Dmitry Baryshkov @ 2023-12-16 16:27 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King
Three remaining Qualcomm platforms have special handling of the
TEXT_OFFSET to reserve the memory at the beginnig of the system RAM, see
the commit 9e775ad19f52 ("ARM: 7012/1: Set proper TEXT_OFFSET for newer
MSMs"). This is required for older platforms like IPQ40xx, MSM8x60,
MSM8960 and APQ8064 and is compatible with other 32-bit Qualcomm
platforms.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
arch/arm/Makefile | 4 +---
arch/arm/mach-qcom/Kconfig | 13 +++++--------
2 files changed, 6 insertions(+), 11 deletions(-)
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 5ba42f69f8ce..95216a508d80 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -158,9 +158,7 @@ textofs-$(CONFIG_ARCH_REALTEK) := 0x00108000
ifeq ($(CONFIG_ARCH_SA1100),y)
textofs-$(CONFIG_SA1111) := 0x00208000
endif
-textofs-$(CONFIG_ARCH_IPQ40XX) := 0x00208000
-textofs-$(CONFIG_ARCH_MSM8X60) := 0x00208000
-textofs-$(CONFIG_ARCH_MSM8960) := 0x00208000
+textofs-$(CONFIG_ARCH_QCOM_RESERVE_SMEM) := 0x00208000
textofs-$(CONFIG_ARCH_MESON) := 0x00208000
textofs-$(CONFIG_ARCH_AXXIA) := 0x00308000
diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig
index 27d5ca0043be..f4765be1b2a0 100644
--- a/arch/arm/mach-qcom/Kconfig
+++ b/arch/arm/mach-qcom/Kconfig
@@ -15,13 +15,10 @@ menuconfig ARCH_QCOM
if ARCH_QCOM
-config ARCH_IPQ40XX
- bool "Enable support for IPQ40XX"
-
-config ARCH_MSM8X60
- bool "Enable support for MSM8X60"
-
-config ARCH_MSM8960
- bool "Enable support for MSM8960"
+config ARCH_QCOM_RESERVE_SMEM
+ bool "Reserve SMEM at the beginning of RAM"
+ help
+ Reserve 2MB at the beginning of the System RAM for shared mem.
+ This is required on IPQ40xx, MSM8x60 and MSM8960 platforms.
endif
--
2.39.2
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much
2023-12-16 16:26 ` [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much Dmitry Baryshkov
@ 2023-12-16 18:39 ` Konrad Dybcio
2023-12-31 0:48 ` Dmitry Baryshkov
1 sibling, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2023-12-16 18:39 UTC (permalink / raw)
To: Dmitry Baryshkov, Bjorn Andersson, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King,
Joerg Roedel
On 16.12.2023 17:26, Dmitry Baryshkov wrote:
> In preparation of dropping most of ARCH_QCOM subtypes, stop limiting the
> driver just to those machines. Allow it to be built for any 32-bit
> Qualcomm platform (ARCH_QCOM).
>
> Acked-by: Robin Murphy <robin.murphy@arm.com>
> Acked-by: Joerg Roedel <jroedel@suse.de>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes
2023-12-16 16:26 ` [PATCH v2 2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes Dmitry Baryshkov
@ 2023-12-20 0:40 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2023-12-20 0:40 UTC (permalink / raw)
To: Dmitry Baryshkov, Bjorn Andersson, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King
On 16.12.2023 17:26, Dmitry Baryshkov wrote:
> Historically we had several subtypes of 32-bit Qualcomm platforms.
> Nowadays they became just useless symbols in Kconfig. Drop them and pull
> corresponding clocksource entries towards top-level ARCH_QCOM entry.
>
> Note, I've left ARCH_IPQ40XX, ARCH_MSM8x60 and ARCH_MSM8960 in place,
> since they have special TEXT_OFFSET handling, which can be sorted out
> separately.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
Acked-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much
2023-12-16 16:26 ` [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much Dmitry Baryshkov
2023-12-16 18:39 ` Konrad Dybcio
@ 2023-12-31 0:48 ` Dmitry Baryshkov
1 sibling, 0 replies; 8+ messages in thread
From: Dmitry Baryshkov @ 2023-12-31 0:48 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Joerg Roedel, Will Deacon,
Robin Murphy
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King,
Joerg Roedel
On 16/12/2023 18:26, Dmitry Baryshkov wrote:
> In preparation of dropping most of ARCH_QCOM subtypes, stop limiting the
> driver just to those machines. Allow it to be built for any 32-bit
> Qualcomm platform (ARCH_QCOM).
>
> Acked-by: Robin Murphy <robin.murphy@arm.com>
> Acked-by: Joerg Roedel <jroedel@suse.de>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Robin, Joerg, Will, is there any chance this can be picked up into 6.8?
We will proceed with merging the rest through qocm tree into 6.9.
> ---
> drivers/iommu/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
> index 9a29d742617e..0d6095290b6a 100644
> --- a/drivers/iommu/Kconfig
> +++ b/drivers/iommu/Kconfig
> @@ -179,7 +179,7 @@ config FSL_PAMU
> config MSM_IOMMU
> bool "MSM IOMMU Support"
> depends on ARM
> - depends on ARCH_MSM8X60 || ARCH_MSM8960 || COMPILE_TEST
> + depends on ARCH_QCOM || COMPILE_TEST
> select IOMMU_API
> select IOMMU_IO_PGTABLE_ARMV7S
> help
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries
2023-12-16 16:26 [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Dmitry Baryshkov
` (2 preceding siblings ...)
2023-12-16 16:27 ` [PATCH v2 3/3] ARM: qcom: merge remaining subplatforms into sensible Kconfig entry Dmitry Baryshkov
@ 2024-02-07 4:46 ` Bjorn Andersson
3 siblings, 0 replies; 8+ messages in thread
From: Bjorn Andersson @ 2024-02-07 4:46 UTC (permalink / raw)
To: Konrad Dybcio, Joerg Roedel, Will Deacon, Robin Murphy,
Dmitry Baryshkov
Cc: linux-arm-kernel, linux-arm-msm, iommu, Russell King
On Sat, 16 Dec 2023 18:26:57 +0200, Dmitry Baryshkov wrote:
> The Kconfig for 32-bit Qualcomm arch predates DT and multi-machine
> support. It still defines ARCH_MSM* types for some (but not all) 32-bit
> Qualcomm machines. The MSM_IOMMU driver has a strict dependency on one
> of such kinds.
>
> With the DT support in place, this has become obsolete quite a while
> ago. Replace all 32-bit Qualcomm ARCH kinds with the single Kconfig
> entry for the workaround required to be enabled for some of those 32-bit
> platforms.
>
> [...]
Applied, thanks!
[1/3] iommu/msm-iommu: don't limit the driver too much
commit: 18368ee25d881981971fde430c7f33cbc27359d1
[2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes
commit: 85148df36835d6bbdb2e4d06a3322629e4bb12c6
[3/3] ARM: qcom: merge remaining subplatforms into sensible Kconfig entry
commit: 99497df59427a11222571034afebf2f0f7f9a3e2
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-02-07 4:46 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-16 16:26 [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 1/3] iommu/msm-iommu: don't limit the driver too much Dmitry Baryshkov
2023-12-16 18:39 ` Konrad Dybcio
2023-12-31 0:48 ` Dmitry Baryshkov
2023-12-16 16:26 ` [PATCH v2 2/3] ARM: qcom: drop most of 32-bit ARCH_QCOM subtypes Dmitry Baryshkov
2023-12-20 0:40 ` Konrad Dybcio
2023-12-16 16:27 ` [PATCH v2 3/3] ARM: qcom: merge remaining subplatforms into sensible Kconfig entry Dmitry Baryshkov
2024-02-07 4:46 ` [PATCH v2 0/3] ARM: qcom: drop 32-bit machine Kconfig entries Bjorn Andersson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).