2023-12-05 06:01:43

by Ashish Mhetre

[permalink] [raw]
Subject: [PATCH] memory: tegra: Protect SID override call under CONFIG_IOMMU_API

tegra186_mc_client_sid_override() is protected under CONFIG_IOMMU_API.
Call to this function is being made from tegra186_mc_resume() without
any protection which is leading to build failure when CONFIG_IOMMU_API
is not set. Fix this by protecting SID override function call from
tegra186_mc_resume() under CONFIG_IOMMU_API.

Fixes: fe3b082a6eb8 ("memory: tegra: Add SID override programming for MC clients")
Signed-off-by: Ashish Mhetre <[email protected]>
---
drivers/memory/tegra/tegra186.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/memory/tegra/tegra186.c b/drivers/memory/tegra/tegra186.c
index d1f1dfb42716..0ff014a9d3cd 100644
--- a/drivers/memory/tegra/tegra186.c
+++ b/drivers/memory/tegra/tegra186.c
@@ -141,6 +141,7 @@ static int tegra186_mc_probe_device(struct tegra_mc *mc, struct device *dev)

static int tegra186_mc_resume(struct tegra_mc *mc)
{
+#if IS_ENABLED(CONFIG_IOMMU_API)
unsigned int i;

for (i = 0; i < mc->soc->num_clients; i++) {
@@ -148,6 +149,7 @@ static int tegra186_mc_resume(struct tegra_mc *mc)

tegra186_mc_client_sid_override(mc, client, client->sid);
}
+#endif

return 0;
}
--
2.17.1


2023-12-05 06:56:17

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH] memory: tegra: Protect SID override call under CONFIG_IOMMU_API



On 12/4/23 22:00, Ashish Mhetre wrote:
> tegra186_mc_client_sid_override() is protected under CONFIG_IOMMU_API.
> Call to this function is being made from tegra186_mc_resume() without
> any protection which is leading to build failure when CONFIG_IOMMU_API
> is not set. Fix this by protecting SID override function call from
> tegra186_mc_resume() under CONFIG_IOMMU_API.
>
> Fixes: fe3b082a6eb8 ("memory: tegra: Add SID override programming for MC clients")
> Signed-off-by: Ashish Mhetre <[email protected]>

Reported-by: Randy Dunlap <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
Tested-by: Randy Dunlap <[email protected]> # build-tested

Thanks.

> ---
> drivers/memory/tegra/tegra186.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/memory/tegra/tegra186.c b/drivers/memory/tegra/tegra186.c
> index d1f1dfb42716..0ff014a9d3cd 100644
> --- a/drivers/memory/tegra/tegra186.c
> +++ b/drivers/memory/tegra/tegra186.c
> @@ -141,6 +141,7 @@ static int tegra186_mc_probe_device(struct tegra_mc *mc, struct device *dev)
>
> static int tegra186_mc_resume(struct tegra_mc *mc)
> {
> +#if IS_ENABLED(CONFIG_IOMMU_API)
> unsigned int i;
>
> for (i = 0; i < mc->soc->num_clients; i++) {
> @@ -148,6 +149,7 @@ static int tegra186_mc_resume(struct tegra_mc *mc)
>
> tegra186_mc_client_sid_override(mc, client, client->sid);
> }
> +#endif
>
> return 0;
> }

--
~Randy

2023-12-06 10:26:45

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] memory: tegra: Protect SID override call under CONFIG_IOMMU_API


On Tue, 05 Dec 2023 11:30:45 +0530, Ashish Mhetre wrote:
> tegra186_mc_client_sid_override() is protected under CONFIG_IOMMU_API.
> Call to this function is being made from tegra186_mc_resume() without
> any protection which is leading to build failure when CONFIG_IOMMU_API
> is not set. Fix this by protecting SID override function call from
> tegra186_mc_resume() under CONFIG_IOMMU_API.
>
>
> [...]

Please remember about crediting people's effort. Applied with proper
Reported-by tags.

Applied, thanks!

[1/1] memory: tegra: Protect SID override call under CONFIG_IOMMU_API
https://git.kernel.org/krzk/linux-mem-ctrl/c/4a23d0f9814c38308dc82b6dbc466666a400b27d

Best regards,
--
Krzysztof Kozlowski <[email protected]>