diff options
Diffstat (limited to 'drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuifclk.h')
-rw-r--r-- | drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuifclk.h | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuifclk.h b/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuifclk.h index e0a3313b..dde85435 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuifclk.h +++ b/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuifclk.h | |||
@@ -336,12 +336,24 @@ struct nv_pmu_clk_clk_domain_list { | |||
336 | NV_PMU_VF_INJECT_MAX_CLOCK_DOMAINS]; | 336 | NV_PMU_VF_INJECT_MAX_CLOCK_DOMAINS]; |
337 | }; | 337 | }; |
338 | 338 | ||
339 | struct nv_pmu_clk_clk_domain_list_v1 { | ||
340 | u8 num_domains; | ||
341 | struct ctrl_clk_clk_domain_list_item_v1 clk_domains[ | ||
342 | NV_PMU_VF_INJECT_MAX_CLOCK_DOMAINS]; | ||
343 | }; | ||
344 | |||
339 | struct nv_pmu_clk_vf_change_inject { | 345 | struct nv_pmu_clk_vf_change_inject { |
340 | u8 flags; | 346 | u8 flags; |
341 | struct nv_pmu_clk_clk_domain_list clk_list; | 347 | struct nv_pmu_clk_clk_domain_list clk_list; |
342 | struct nv_pmu_volt_volt_rail_list volt_list; | 348 | struct nv_pmu_volt_volt_rail_list volt_list; |
343 | }; | 349 | }; |
344 | 350 | ||
351 | struct nv_pmu_clk_vf_change_inject_v1 { | ||
352 | u8 flags; | ||
353 | struct nv_pmu_clk_clk_domain_list_v1 clk_list; | ||
354 | struct nv_pmu_volt_volt_rail_list_v1 volt_list; | ||
355 | }; | ||
356 | |||
345 | #define NV_NV_PMU_CLK_LOAD_FEATURE_VIN (0x00000002) | 357 | #define NV_NV_PMU_CLK_LOAD_FEATURE_VIN (0x00000002) |
346 | #define NV_NV_PMU_CLK_LOAD_ACTION_MASK_VIN_HW_CAL_PROGRAM_YES (0x00000001) | 358 | #define NV_NV_PMU_CLK_LOAD_ACTION_MASK_VIN_HW_CAL_PROGRAM_YES (0x00000001) |
347 | 359 | ||
@@ -400,12 +412,14 @@ union nv_pmu_clk_clk_freq_controller_boardobj_set_union { | |||
400 | NV_PMU_BOARDOBJ_GRP_SET_MAKE_E32(clk, clk_freq_controller); | 412 | NV_PMU_BOARDOBJ_GRP_SET_MAKE_E32(clk, clk_freq_controller); |
401 | 413 | ||
402 | /* CLK CMD ID definitions. */ | 414 | /* CLK CMD ID definitions. */ |
403 | #define NV_PMU_CLK_CMD_ID_BOARDOBJ_GRP_SET (0x00000000) | 415 | #define NV_PMU_CLK_CMD_ID_BOARDOBJ_GRP_SET (0x00000001) |
404 | #define NV_PMU_CLK_CMD_ID_RPC (0x00000001) | 416 | #define NV_PMU_CLK_CMD_ID_RPC (0x00000000) |
405 | #define NV_PMU_CLK_CMD_ID_BOARDOBJ_GRP_GET_STATUS (0x00000002) | 417 | #define NV_PMU_CLK_CMD_ID_BOARDOBJ_GRP_GET_STATUS (0x00000002) |
406 | 418 | ||
407 | #define NV_PMU_CLK_RPC_ID_LOAD (0x00000002) | 419 | #define NV_PMU_CLK_RPC_ID_LOAD (0x00000001) |
408 | #define NV_PMU_CLK_RPC_ID_CLK_VF_CHANGE_INJECT (0x00000001) | 420 | #define NV_PMU_CLK_RPC_ID_CLK_VF_CHANGE_INJECT (0x00000000) |
421 | #define NV_PMU_CLK_RPC_ID_CLK_FREQ_EFF_AVG (0x00000002) | ||
422 | |||
409 | 423 | ||
410 | struct nv_pmu_clk_cmd_rpc { | 424 | struct nv_pmu_clk_cmd_rpc { |
411 | u8 cmd_type; | 425 | u8 cmd_type; |
@@ -432,13 +446,14 @@ struct nv_pmu_clk_rpc { | |||
432 | flcn_status flcn_status; | 446 | flcn_status flcn_status; |
433 | union { | 447 | union { |
434 | struct nv_pmu_clk_vf_change_inject clk_vf_change_inject; | 448 | struct nv_pmu_clk_vf_change_inject clk_vf_change_inject; |
449 | struct nv_pmu_clk_vf_change_inject_v1 clk_vf_change_inject_v1; | ||
435 | struct nv_pmu_clk_load clk_load; | 450 | struct nv_pmu_clk_load clk_load; |
436 | } params; | 451 | } params; |
437 | }; | 452 | }; |
438 | 453 | ||
439 | /* CLK MSG ID definitions */ | 454 | /* CLK MSG ID definitions */ |
440 | #define NV_PMU_CLK_MSG_ID_BOARDOBJ_GRP_SET (0x00000000) | 455 | #define NV_PMU_CLK_MSG_ID_BOARDOBJ_GRP_SET (0x00000001) |
441 | #define NV_PMU_CLK_MSG_ID_RPC (0x00000001) | 456 | #define NV_PMU_CLK_MSG_ID_RPC (0x00000000) |
442 | #define NV_PMU_CLK_MSG_ID_BOARDOBJ_GRP_GET_STATUS (0x00000002) | 457 | #define NV_PMU_CLK_MSG_ID_BOARDOBJ_GRP_GET_STATUS (0x00000002) |
443 | 458 | ||
444 | struct nv_pmu_clk_msg_rpc { | 459 | struct nv_pmu_clk_msg_rpc { |