platform: tegra: dce: Add debugfs for external tests

External clients such as MODS require the ability to run tests. Add
support for this feature. Currently only the following 2 external client
tests are supported:
  - MODS ALU test
  - MODS DMA test

Bug 3198239
JIRA TDS-6362

Change-Id: I18c20a9fa5d2606056d65b76fbaae9b0c81746d4
Signed-off-by: Adeel Raza <araza@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2606595
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Adeel Raza
2021-05-28 20:08:31 -07:00
committed by Laxman Dewangan
parent d05457f954
commit c032aa992e
4 changed files with 209 additions and 5 deletions

View File

@@ -52,13 +52,14 @@
// coverage data
#define DCE_ADMIN_CMD_PERF_START 0x0FU // start collecting perf data
#define DCE_ADMIN_CMD_PERF_STOP 0x10U // stop collecting perf data
#define DCE_ADMIN_CMD_TEST_START 0x11U // start tests
#define DCE_ADMIN_CMD_TEST_STOP 0x12U // stop tests and return status
#define DCE_ADMIN_CMD_DEBUG 0x13U // debug command
#define DCE_ADMIN_CMD_INT_TEST_START 0x11U // start internal tests
#define DCE_ADMIN_CMD_INT_TEST_STOP 0x12U // stop internal tests and return status
#define DCE_ADMIN_CMD_EXT_TEST 0x13U // run external test (blocking call)
#define DCE_ADMIN_CMD_DEBUG 0x14U // debug command
#define DCE_ADMIN_CMD_RM_BOOTSTRAP 0x14U // tell RM to "bootstrap"
#define DCE_ADMIN_CMD_RM_BOOTSTRAP 0x15U // tell RM to "bootstrap"
#define DCE_ADMIN_CMD_NEXT 0x15U // must be last command ID + 1
#define DCE_ADMIN_CMD_NEXT 0x16U // must be last command ID + 1
struct dce_admin_version_info {
uint32_t version;
@@ -79,6 +80,14 @@ struct dce_admin_echo {
uint32_t data;
};
enum dce_admin_ext_test {
DCE_ADMIN_EXT_TEST_ALU = 0U,
DCE_ADMIN_EXT_TEST_DMA = 1U,
};
struct dce_admin_ext_test_args {
enum dce_admin_ext_test test;
};
struct dce_admin_log_args {
uint32_t log_enable;
uint32_t log_level;
@@ -133,6 +142,7 @@ struct dce_admin_ipc_cmd {
union {
struct dce_admin_version_info version;
struct dce_admin_echo echo;
struct dce_admin_ext_test_args ext_test;
struct dce_admin_log_args log;
struct dce_admin_ipc_info_args ipc_info;
struct dce_admin_mem_args mem_map;