video: tegra: host: dla: disable GOS

GOS is not working with kernel 4.14 and is hence disabled until GOS
issue is fixed.

Bug 200497310

Change-Id: Ie14bfa92e8af659f2192bf4f8f9b488013bbcc64
Signed-off-by: Shridhar Rasal <srasal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2030013
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Shridhar Rasal
2019-01-31 14:08:26 +05:30
committed by Laxman Dewangan
parent 55902dfb1e
commit e9ecc84ce2
2 changed files with 19 additions and 12 deletions

View File

@@ -647,13 +647,9 @@ int nvhost_nvdla_finalize_poweron(struct platform_device *pdev)
goto fail_to_alloc_trace;
}
nvdla_dev->is_gos_enabled = true;
ret = nvdla_send_gos_region(pdev);
if (ret) {
nvdla_dbg_err(pdev, "set gos region is failed\n");
nvdla_dev->is_gos_enabled = false;
/* ignore send gos region failure */
}
/* Disable GOS until it is fixed in Kernel 4.14 */
nvdla_dev->is_gos_enabled = false;
nvdla_dev->is_gos_fetched = true;
if (nvdla_dev->quirks & NVDLA_QUIRK_T194_A01_WAR) {
host1x_writel(pdev,

View File

@@ -503,8 +503,7 @@ fail_to_pin_mem:
return err;
}
static int nvdla_get_gos(struct platform_device *pdev, u32 syncpt_id,
u32 *gos_id, u32 *gos_offset)
static int nvdla_update_gos(struct platform_device *pdev)
{
struct nvhost_device_data *pdata = platform_get_drvdata(pdev);
struct nvdla_device *nvdla_dev = pdata->private_data;
@@ -538,8 +537,20 @@ static int nvdla_get_gos(struct platform_device *pdev, u32 syncpt_id,
nvhost_module_idle(pdev);
}
fail_to_send_gos:
fail_to_poweron:
return err;
}
static int nvdla_get_gos(struct platform_device *pdev, u32 syncpt_id,
u32 *gos_id, u32 *gos_offset)
{
struct nvhost_device_data *pdata = platform_get_drvdata(pdev);
struct nvdla_device *nvdla_dev = pdata->private_data;
int err = 0;
if (!nvdla_dev->is_gos_enabled) {
nvdla_dbg_err(pdev, "GoS is not enabled\n");
nvdla_dbg_info(pdev, "GoS is not enabled\n");
err = -EINVAL;
goto gos_disabled;
}
@@ -551,8 +562,6 @@ static int nvdla_get_gos(struct platform_device *pdev, u32 syncpt_id,
}
gos_disabled:
fail_to_send_gos:
fail_to_poweron:
return err;
}
@@ -971,6 +980,8 @@ int nvdla_fill_task_desc(struct nvdla_task *task)
task_desc->postactions = task_desc->preactions +
sizeof(struct dla_action_list);
nvdla_update_gos(pdev);
/* fill pre actions */
nvdla_fill_preactions(task);