diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | 48 |
1 files changed, 47 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h index bf581b90..54d01947 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | |||
@@ -50,7 +50,7 @@ | |||
50 | #define PMU_AP_IDLE_MASK_GRAPHICS (PMU_AP_IDLE_MASK_HIST_IDX_1) | 50 | #define PMU_AP_IDLE_MASK_GRAPHICS (PMU_AP_IDLE_MASK_HIST_IDX_1) |
51 | 51 | ||
52 | #define APP_VERSION_NC_1 20313802 | 52 | #define APP_VERSION_NC_1 20313802 |
53 | #define APP_VERSION_NC_0 20120791 | 53 | #define APP_VERSION_NC_0 20360931 |
54 | #define APP_VERSION_GM20B_4 19008461 | 54 | #define APP_VERSION_GM20B_4 19008461 |
55 | #define APP_VERSION_GM20B_3 18935575 | 55 | #define APP_VERSION_GM20B_3 18935575 |
56 | #define APP_VERSION_GM20B_2 18694072 | 56 | #define APP_VERSION_GM20B_2 18694072 |
@@ -451,6 +451,8 @@ struct pmu_ucode_desc { | |||
451 | #define PMU_UNIT_PERFMON_T18X (0x11) | 451 | #define PMU_UNIT_PERFMON_T18X (0x11) |
452 | #define PMU_UNIT_PERFMON (0x12) | 452 | #define PMU_UNIT_PERFMON (0x12) |
453 | #define PMU_UNIT_RC (0x1F) | 453 | #define PMU_UNIT_RC (0x1F) |
454 | #define PMU_UNIT_FECS_MEM_OVERRIDE (0x1E) | ||
455 | |||
454 | #define PMU_UNIT_END (0x23) | 456 | #define PMU_UNIT_END (0x23) |
455 | 457 | ||
456 | #define PMU_UNIT_TEST_START (0xFE) | 458 | #define PMU_UNIT_TEST_START (0xFE) |
@@ -814,6 +816,47 @@ struct pmu_acr_msg { | |||
814 | #define PMU_DOMAIN_GROUP_GPC2CLK 1 | 816 | #define PMU_DOMAIN_GROUP_GPC2CLK 1 |
815 | #define PMU_DOMAIN_GROUP_NUM 2 | 817 | #define PMU_DOMAIN_GROUP_NUM 2 |
816 | 818 | ||
819 | /* FECS mem override command*/ | ||
820 | |||
821 | #define PMU_LRF_TEX_LTC_DRAM_CMD_ID_EN_DIS 0 | ||
822 | |||
823 | /*! | ||
824 | * Enable/Disable FECS error feature | ||
825 | */ | ||
826 | struct pmu_cmd_lrf_tex_ltc_dram_en_dis { | ||
827 | /*Command type must be first*/ | ||
828 | u8 cmd_type; | ||
829 | /*unit bitmask*/ | ||
830 | u8 en_dis_mask; | ||
831 | }; | ||
832 | |||
833 | struct pmu_lrf_tex_ltc_dram_cmd { | ||
834 | union { | ||
835 | u8 cmd_type; | ||
836 | struct pmu_cmd_lrf_tex_ltc_dram_en_dis en_dis; | ||
837 | }; | ||
838 | }; | ||
839 | |||
840 | /* FECS mem override messages*/ | ||
841 | #define PMU_LRF_TEX_LTC_DRAM_MSG_ID_EN_DIS 0 | ||
842 | |||
843 | struct pmu_msg_lrf_tex_ltc_dram_en_dis { | ||
844 | /*! | ||
845 | * Must be at start | ||
846 | */ | ||
847 | u8 msg_type; | ||
848 | u8 en_fail_mask; | ||
849 | u8 dis_fail_mask; | ||
850 | u32 pmu_status; | ||
851 | }; | ||
852 | |||
853 | struct pmu_lrf_tex_ltc_dram_msg { | ||
854 | union { | ||
855 | u8 msg_type; | ||
856 | struct pmu_msg_lrf_tex_ltc_dram_en_dis en_dis; | ||
857 | }; | ||
858 | }; | ||
859 | |||
817 | /* TBD: smart strategy */ | 860 | /* TBD: smart strategy */ |
818 | #define PMU_PERFMON_PCT_TO_INC 58 | 861 | #define PMU_PERFMON_PCT_TO_INC 58 |
819 | #define PMU_PERFMON_PCT_TO_DEC 23 | 862 | #define PMU_PERFMON_PCT_TO_DEC 23 |
@@ -958,6 +1001,7 @@ struct pmu_cmd { | |||
958 | struct pmu_pg_cmd pg; | 1001 | struct pmu_pg_cmd pg; |
959 | struct pmu_zbc_cmd zbc; | 1002 | struct pmu_zbc_cmd zbc; |
960 | struct pmu_acr_cmd acr; | 1003 | struct pmu_acr_cmd acr; |
1004 | struct pmu_lrf_tex_ltc_dram_cmd lrf_tex_ltc_dram; | ||
961 | } cmd; | 1005 | } cmd; |
962 | }; | 1006 | }; |
963 | 1007 | ||
@@ -969,6 +1013,7 @@ struct pmu_msg { | |||
969 | struct pmu_pg_msg pg; | 1013 | struct pmu_pg_msg pg; |
970 | struct pmu_rc_msg rc; | 1014 | struct pmu_rc_msg rc; |
971 | struct pmu_acr_msg acr; | 1015 | struct pmu_acr_msg acr; |
1016 | struct pmu_lrf_tex_ltc_dram_msg lrf_tex_ltc_dram; | ||
972 | } msg; | 1017 | } msg; |
973 | }; | 1018 | }; |
974 | 1019 | ||
@@ -1318,6 +1363,7 @@ struct pmu_gk20a { | |||
1318 | u8 pmu_mode; /*Added for GM20b, and ACR*/ | 1363 | u8 pmu_mode; /*Added for GM20b, and ACR*/ |
1319 | u32 falcon_id; | 1364 | u32 falcon_id; |
1320 | u32 aelpg_param[5]; | 1365 | u32 aelpg_param[5]; |
1366 | u32 override_done; | ||
1321 | }; | 1367 | }; |
1322 | 1368 | ||
1323 | int gk20a_init_pmu_support(struct gk20a *g); | 1369 | int gk20a_init_pmu_support(struct gk20a *g); |