host1x_emu: HR Timer Syncpoint Fence Polling

1. This change enable HR Timer Syncpoint polling and
disable the thread based fence polling.

2. Default timer interval is 200usec. The timer value
is taken from DT. If the timer interval in DT is less
then 50usec, default timer interval is taken.

Jira HOSTX-5527

Change-Id: I6644f1362f28a8901e4e384f1290be9807c30036
Signed-off-by: amitabhd <amitabhd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3268636
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Raghavendra Vishnu Kumar <rvk@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: Santosh BS <santoshb@nvidia.com>
This commit is contained in:
amitabhd
2024-12-16 06:10:23 +00:00
committed by Jon Hunter
parent a2dba7e53b
commit 0f04d6c204
5 changed files with 146 additions and 71 deletions

View File

@@ -1,7 +1,5 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-License-Identifier: GPL-2.0-only
*/
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#ifndef HOST1X_DEV_H
#define HOST1X_DEV_H
@@ -59,6 +57,9 @@ struct host1x {
unsigned int syncpt_base;
unsigned int syncpt_count;
unsigned int polling_intrval;
#ifdef HOST1X_EMU_HRTIMER_FENCE_SCAN
unsigned int hr_polling_intrval;
#endif
#ifdef HOST1X_EMU_HYPERVISOR
void __iomem *syncpt_va_apt; /* syncpoint apperture mapped in kernel space */
#else