mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-24 10:11:26 +03:00
nvadsp: Add provision to configure timeout
Provision is added to specify the OS load timeout from DT, using property "nvidia,adsp_load_timeout". Bug 200745795 Bug 200746669 Change-Id: Ie868a1528ad9d39200a0359f6a9d54a2832b0547 Signed-off-by: Viswanath L <viswanathl@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2622380 Reviewed-by: svcacv <svcacv@nvidia.com> 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:
committed by
Laxman Dewangan
parent
8036a9525f
commit
ac60258ffd
@@ -296,6 +296,9 @@ static int __init nvadsp_parse_dt(struct platform_device *pdev)
|
||||
of_property_read_u32(dev->of_node, "nvidia,tegra_platform",
|
||||
&drv_data->tegra_platform);
|
||||
|
||||
of_property_read_u32(dev->of_node, "nvidia,adsp_load_timeout",
|
||||
&drv_data->adsp_load_timeout);
|
||||
|
||||
if (drv_data->adsp_unit_fpga) {
|
||||
for (iter = 0; iter < ADSP_UNIT_FPGA_RESET_END; iter++) {
|
||||
if (of_property_read_u32_index(dev->of_node,
|
||||
|
||||
@@ -241,6 +241,9 @@ struct nvadsp_drv_data {
|
||||
|
||||
/* enum tegra_platform */
|
||||
u32 tegra_platform;
|
||||
|
||||
/* "nvidia,adsp_load_timeout" (in ms) */
|
||||
u32 adsp_load_timeout;
|
||||
};
|
||||
|
||||
#define ADSP_CONFIG 0x04
|
||||
|
||||
@@ -1221,11 +1221,16 @@ end:
|
||||
static int wait_for_adsp_os_load_complete(void)
|
||||
{
|
||||
struct device *dev = &priv.pdev->dev;
|
||||
uint32_t data;
|
||||
struct nvadsp_drv_data *drv_data = platform_get_drvdata(priv.pdev);
|
||||
uint32_t timeout, data;
|
||||
status_t ret;
|
||||
|
||||
timeout = drv_data->adsp_load_timeout;
|
||||
if (!timeout)
|
||||
timeout = ADSP_OS_LOAD_TIMEOUT;
|
||||
|
||||
ret = nvadsp_mbox_recv(&adsp_com_mbox, &data,
|
||||
true, ADSP_OS_LOAD_TIMEOUT);
|
||||
true, timeout);
|
||||
if (ret) {
|
||||
dev_err(dev, "ADSP OS loading timed out\n");
|
||||
goto end;
|
||||
|
||||
Reference in New Issue
Block a user