nvadsp: ACAST settings from DT

ACAST settings are expected to be done by the driver in backdoor
boot. Provision is added to read the ACAST address ranges and
the SMMU stream ID from DT.

ACAST settings are done either for physical memory, or for SMMU
mapped memory, as per the backdoor boot configuration.

Also, call to ACAST init function is moved from runtime resume
to device probe.

Bug 200745795
Bug 200746669
Bug 200773359

Change-Id: Ia53820968ce4d48966c39d72b4c2106be99815fa
Signed-off-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2644989
Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com>
Reviewed-by: Mohan Kumar D <mkumard@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Viswanath L
2021-12-21 11:41:11 +05:30
committed by Laxman Dewangan
parent cadec46986
commit f5feadcb43
5 changed files with 150 additions and 49 deletions

View File

@@ -118,7 +118,6 @@ static int nvadsp_t18x_clocks_enable(struct platform_device *pdev)
static int __nvadsp_t18x_runtime_resume(struct device *dev)
{
struct platform_device *pdev = to_platform_device(dev);
struct nvadsp_drv_data *drv_data = platform_get_drvdata(pdev);
int ret;
dev_dbg(dev, "at %s:%d\n", __func__, __LINE__);
@@ -129,14 +128,6 @@ static int __nvadsp_t18x_runtime_resume(struct device *dev)
return ret;
}
if (!drv_data->adsp_os_secload) {
ret = nvadsp_acast_init(pdev);
if (ret) {
dev_err(dev, "failed in nvadsp_acast_init\n");
return ret;
}
}
return ret;
}