diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2016-06-08 07:39:02 -0400 |
---|---|---|
committer | Terje Bergstrom <tbergstrom@nvidia.com> | 2016-06-09 19:55:23 -0400 |
commit | b5f2cff0239ee7e9f8ae54c271a6d447ea83df49 (patch) | |
tree | 41d31c96d2b751b3c5386e57de0c7472fd2e282b /drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | |
parent | 3735dba6f83e8de21eb2db620402d0ea9fd28835 (diff) |
gpu: nvgpu: update PMU version, interface & code
- update PMU interface/code to support
latest version of secure boot FW
- Add PMU FW version for next GPU support
- can_elpg check in pmu_setup_hw helps
to fix queue error
JIRA DNVGPU-34
Change-Id: Iecf47fbc5b71cbf0f4bcdfeafad5c635cb6bff82
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: http://git-master/r/1161107
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/pmu_gk20a.h')
-rw-r--r-- | drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h index 9fa75e0b..85f1ffc1 100644 --- a/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/pmu_gk20a.h | |||
@@ -53,6 +53,7 @@ | |||
53 | #define APP_VERSION_NC_1 20313802 | 53 | #define APP_VERSION_NC_1 20313802 |
54 | #define APP_VERSION_NC_0 20360931 | 54 | #define APP_VERSION_NC_0 20360931 |
55 | #define APP_VERSION_GM206 20652057 | 55 | #define APP_VERSION_GM206 20652057 |
56 | #define APP_VERSION_NV_GPU 20660622 | ||
56 | #define APP_VERSION_GM20B_5 20490253 | 57 | #define APP_VERSION_GM20B_5 20490253 |
57 | #define APP_VERSION_GM20B_4 19008461 | 58 | #define APP_VERSION_GM20B_4 19008461 |
58 | #define APP_VERSION_GM20B_3 18935575 | 59 | #define APP_VERSION_GM20B_3 18935575 |
@@ -618,10 +619,25 @@ struct pmu_init_msg_pmu_v2 { | |||
618 | u8 dummy[18]; | 619 | u8 dummy[18]; |
619 | }; | 620 | }; |
620 | 621 | ||
622 | struct pmu_init_msg_pmu_v3 { | ||
623 | u8 msg_type; | ||
624 | u8 queue_index[PMU_QUEUE_COUNT]; | ||
625 | u16 queue_size[PMU_QUEUE_COUNT]; | ||
626 | u16 queue_offset; | ||
627 | |||
628 | u16 sw_managed_area_offset; | ||
629 | u16 sw_managed_area_size; | ||
630 | |||
631 | u16 os_debug_entry_point; | ||
632 | |||
633 | u8 dummy[18]; | ||
634 | }; | ||
635 | |||
621 | union pmu_init_msg_pmu { | 636 | union pmu_init_msg_pmu { |
622 | struct pmu_init_msg_pmu_v0 v0; | 637 | struct pmu_init_msg_pmu_v0 v0; |
623 | struct pmu_init_msg_pmu_v1 v1; | 638 | struct pmu_init_msg_pmu_v1 v1; |
624 | struct pmu_init_msg_pmu_v2 v2; | 639 | struct pmu_init_msg_pmu_v2 v2; |
640 | struct pmu_init_msg_pmu_v3 v3; | ||
625 | }; | 641 | }; |
626 | 642 | ||
627 | struct pmu_init_msg { | 643 | struct pmu_init_msg { |
@@ -630,6 +646,7 @@ struct pmu_init_msg { | |||
630 | struct pmu_init_msg_pmu_v1 pmu_init_v1; | 646 | struct pmu_init_msg_pmu_v1 pmu_init_v1; |
631 | struct pmu_init_msg_pmu_v0 pmu_init_v0; | 647 | struct pmu_init_msg_pmu_v0 pmu_init_v0; |
632 | struct pmu_init_msg_pmu_v2 pmu_init_v2; | 648 | struct pmu_init_msg_pmu_v2 pmu_init_v2; |
649 | struct pmu_init_msg_pmu_v3 pmu_init_v3; | ||
633 | }; | 650 | }; |
634 | }; | 651 | }; |
635 | 652 | ||