host1x: kmd: enable irq on poweron

[1] Since the irq is not enabled during the power-on, the firmware
    is not communicable state upon module reset.
[2] This commit fixes the issue by enabling irq on power-on.

Bug 3979666
Bug 3975703

Change-Id: I746a9236b390ab2d429df1f4a3f6243745147b65
Signed-off-by: Arvind M <am@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2858111
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: svc_kernel_abi <svc_kernel_abi@nvidia.com>
Reviewed-by: Amit Sharma (SW-TEGRA) <amisharma@nvidia.com>
Reviewed-by: Ayush Kumar <ayushk@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Amit Sharma (SW-TEGRA) <amisharma@nvidia.com>
This commit is contained in:
Arvind M
2023-02-14 15:41:21 +00:00
committed by Laxman Dewangan
parent b394e81a9e
commit bc86b17fa2

View File

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2022, NVIDIA Corporation. All rights reserved.
* Copyright (c) 2022-2023, NVIDIA Corporation. All rights reserved.
*/
#include <linux/clk.h>
@@ -670,6 +670,9 @@ int nvhost_flcn_finalize_poweron(struct platform_device *pdev)
return err;
}
if (pdata->flcn_isr)
enable_irq(pdata->irq);
return 0;
}
EXPORT_SYMBOL(nvhost_flcn_finalize_poweron);
@@ -919,9 +922,6 @@ static int nvhost_module_runtime_resume(struct device *dev)
/* Load clockgating registers */
nvhost_module_load_regs(pdev, pdata->engine_can_cg);
if (pdata->flcn_isr)
enable_irq(pdata->irq);
if (pdata->finalize_poweron)
err = pdata->finalize_poweron(pdev);