summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/pmu_gk20a.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h
index 8aaea33f..2843d483 100644
--- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h
@@ -987,6 +987,14 @@ struct pmu_pg_stats {
987#define PMU_FALCON_REG_RSVD2 (31) 987#define PMU_FALCON_REG_RSVD2 (31)
988#define PMU_FALCON_REG_SIZE (32) 988#define PMU_FALCON_REG_SIZE (32)
989 989
990/* Choices for pmu_state */
991#define PMU_STATE_OFF 0 /* PMU is off */
992#define PMU_STATE_STARTING 1 /* PMU is booting */
993#define PMU_STATE_ELPG_BOOTED 2 /* ELPG is initialized */
994#define PMU_STATE_LOADING_PG_BUF 3 /* Loading PG buf */
995#define PMU_STATE_LOADING_ZBC 4 /* Loading ZBC buf */
996#define PMU_STATE_STARTED 5 /* Fully unitialized */
997
990struct pmu_gk20a { 998struct pmu_gk20a {
991 999
992 struct gk20a *g; 1000 struct gk20a *g;
@@ -1022,9 +1030,9 @@ struct pmu_gk20a {
1022 1030
1023 u32 stat_dmem_offset; 1031 u32 stat_dmem_offset;
1024 1032
1025 bool elpg_ready;
1026 u32 elpg_stat; 1033 u32 elpg_stat;
1027 wait_queue_head_t pg_wq; 1034
1035 int pmu_state;
1028 1036
1029#define PMU_ELPG_ENABLE_ALLOW_DELAY_MSEC 1 /* msec */ 1037#define PMU_ELPG_ENABLE_ALLOW_DELAY_MSEC 1 /* msec */
1030 struct work_struct pg_init; 1038 struct work_struct pg_init;
@@ -1053,7 +1061,7 @@ struct pmu_gk20a {
1053}; 1061};
1054 1062
1055int gk20a_init_pmu_support(struct gk20a *g); 1063int gk20a_init_pmu_support(struct gk20a *g);
1056int gk20a_init_pmu_setup_hw2(struct gk20a *g); 1064int gk20a_init_pmu_bind_fecs(struct gk20a *g);
1057 1065
1058void gk20a_pmu_isr(struct gk20a *g); 1066void gk20a_pmu_isr(struct gk20a *g);
1059 1067