host1x_emu: Adding API dispatch functionality

Adding dynamic APi dispatch functionality in host1x-fence
modue. This CL exports new host1x wrapper API, which can
be called by client kernel modules. The wrapper API dispatch
call to either Host1x module or Host1x-EMU depending if the
host1x-emu driver registered its interface during its probe.

Bug 5064819

Change-Id: I49445cdce7c3795a2c94fde9d0871da393993554
Signed-off-by: amitabhd <amitabhd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3306857
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Leslin Varghese <lvarghese@nvidia.com>
Reviewed-by: Raghavendra Vishnu Kumar <rvk@nvidia.com>
This commit is contained in:
amitabhd
2025-02-20 11:05:00 +00:00
committed by Jon Hunter
parent 1e83ec96df
commit 2cc3c99c6e
10 changed files with 764 additions and 8 deletions

View File

@@ -4,13 +4,15 @@
#define __HOST1X_EMU_SYMMBOL_H
#ifdef CONFIG_TEGRA_HOST1X_EMU_DBG_SYMBL
#define HOST1X_EMU_EXPORT_CALL(...) Dbg_ ## __VA_ARGS__
#define HOST1X_EMU_EXPORT_DECL(ret, ...) ret Dbg_ ## __VA_ARGS__
#define HOST1X_EMU_EXPORT_SYMBOL(f) EXPORT_SYMBOL(Dbg_## f)
#define HOST1X_EMU_EXPORT_CALL(...) Emu_ ## __VA_ARGS__
#define HOST1X_EMU_EXPORT_DECL(ret, ...) ret Emu_ ## __VA_ARGS__
#define HOST1X_EMU_EXPORT_SYMBOL(f) EXPORT_SYMBOL(Emu_## f)
#define HOST1X_EMU_EXPORT_SYMBOL_NAME(f) Emu_## f
#else
#define HOST1X_EMU_EXPORT_CALL(...) __VA_ARGS__
#define HOST1X_EMU_EXPORT_DECL(ret, ...) ret __VA_ARGS__
#define HOST1X_EMU_EXPORT_SYMBOL(f) EXPORT_SYMBOL(f)
#define HOST1X_EMU_EXPORT_SYMBOL_NAME(f) f
#endif
#endif /*__HOST1X_EMU_SYMMBOL_H*/