aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_socbb.h
blob: f4176cb01790b9435198d7433b17a52c6f621a74 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
/*
 * Copyright 2019 Advanced Micro Devices, Inc.
 *
 * Permission is hereby granted, free of charge, to any person obtaining a
 * copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 * OTHER DEALINGS IN THE SOFTWARE.
 *
 */
#ifndef __AMDGPU_SOCBB_H__
#define __AMDGPU_SOCBB_H__

struct gpu_info_voltage_scaling_v1_0 {
	uint32_t state;
	uint32_t dscclk_mhz;
	uint32_t dcfclk_mhz;
	uint32_t socclk_mhz;
	uint32_t dram_speed_mts;
	uint32_t fabricclk_mhz;
	uint32_t dispclk_mhz;
	uint32_t phyclk_mhz;
	uint32_t dppclk_mhz;
};

struct gpu_info_soc_bounding_box_v1_0 {
	uint32_t sr_exit_time_us;
	uint32_t sr_enter_plus_exit_time_us;
	uint32_t urgent_latency_us;
	uint32_t urgent_latency_pixel_data_only_us;
	uint32_t urgent_latency_pixel_mixed_with_vm_data_us;
	uint32_t urgent_latency_vm_data_only_us;
	uint32_t writeback_latency_us;
	uint32_t ideal_dram_bw_after_urgent_percent;
	uint32_t pct_ideal_dram_sdp_bw_after_urgent_pixel_only; // PercentOfIdealDRAMFabricAndSDPPortBWReceivedAfterUrgLatencyPixelDataOnly
	uint32_t pct_ideal_dram_sdp_bw_after_urgent_pixel_and_vm;
	uint32_t pct_ideal_dram_sdp_bw_after_urgent_vm_only;
	uint32_t max_avg_sdp_bw_use_normal_percent;
	uint32_t max_avg_dram_bw_use_normal_percent;
	uint32_t max_request_size_bytes;
	uint32_t downspread_percent;
	uint32_t dram_page_open_time_ns;
	uint32_t dram_rw_turnaround_time_ns;
	uint32_t dram_return_buffer_per_channel_bytes;
	uint32_t dram_channel_width_bytes;
	uint32_t fabric_datapath_to_dcn_data_return_bytes;
	uint32_t dcn_downspread_percent;
	uint32_t dispclk_dppclk_vco_speed_mhz;
	uint32_t dfs_vco_period_ps;
	uint32_t urgent_out_of_order_return_per_channel_pixel_only_bytes;
	uint32_t urgent_out_of_order_return_per_channel_pixel_and_vm_bytes;
	uint32_t urgent_out_of_order_return_per_channel_vm_only_bytes;
	uint32_t round_trip_ping_latency_dcfclk_cycles;
	uint32_t urgent_out_of_order_return_per_channel_bytes;
	uint32_t channel_interleave_bytes;
	uint32_t num_banks;
	uint32_t num_chans;
	uint32_t vmm_page_size_bytes;
	uint32_t dram_clock_change_latency_us;
	uint32_t writeback_dram_clock_change_latency_us;
	uint32_t return_bus_width_bytes;
	uint32_t voltage_override;
	uint32_t xfc_bus_transport_time_us;
	uint32_t xfc_xbuf_latency_tolerance_us;
	uint32_t use_urgent_burst_bw;
	uint32_t num_states;
	struct gpu_info_voltage_scaling_v1_0 clock_limits[8];
};

#endif
> Added the video capability query support for VCN version 4_0_5 Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com> Reviewed-by: Veerabadhran Gopalakrishnan <Veerabadhran.Gopalakrishnan@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu:enable CG and PG flags for VCNSaleemkhan Jamadar1-2/+4 Enable CG and PG flags for VCN on IP 11_5_0 Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com> Acked-by: Leo Liu <leo.liu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add VCN_4_0_5 firmware supportSaleemkhan Jamadar1-0/+2 Add VCN_4_0_5 firmware support Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com> Acked-by: Leo Liu <leo.liu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu/jpeg: add jpeg support for VCN4_0_5Saleemkhan Jamadar3-1/+658 Add jpeg support for VCN4_0_5 v2 - update license year (Leo Liu) Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com> Acked-by: Leo Liu <leo.liu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add VCN4 ip block supportSaleemkhan Jamadar3-0/+1815 Add VCN 4.0.5 initialization and decoder/encoder ring functions. v2 - update license year (Leo Liu) Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com> Acked-by: Leo Liu <leo.liu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add vcn 4_0_5 header filesSaleemkhan Jamadar2-0/+10411 Add VCN 4.0.5 registers v2 - Add license header (Alexander Deucher) v3 - updates (Alex) Signed-off-by: Saleemkhan Jamadar <saleemkhan.jamadar@amd.com> Acked-by: Leo Liu <leo.liu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: fix VPE front door loading issueLang Yu6-0/+63 Implement proper front door loading for vpe 6.1. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add VPE FW version query supportLang Yu2-0/+14 Add support to query VPE FW version. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: enable VPE for VPE 6.1.0Lang Yu1-0/+19 Enable Video Processing Engine on SoCs that contain VPE 6.1.0. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add user space CS support for VPELang Yu3-0/+9 Enable command submission to VPE from user space. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add PSP loading support for VPELang Yu2-0/+28 Add PSP loading support for Video Processing Engine. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add VPE 6.1.0 supportLang Yu6-0/+1019 Add skeleton driver code. (Ray) Add initial support for Video Processing Engine. (Lang) Signed-off-by: Huang Rui <ray.huang@amd.com> Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add nbio 7.11 callback for VPELang Yu1-0/+24 Add nbio callback to configure doorbell settings. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add nbio callback for VPELang Yu1-0/+2 Add nbio callback to configure doorbell settings. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add PSP FW TYPE for VPELang Yu2-0/+8 Add PSP FW TYPE for Video Processing Engine. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add UCODE ID for VPELang Yu1-0/+2 Add UCODE ID for Video Processing Engine. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add support for VPE firmware name decodingLang Yu1-0/+3 Add decoding VPE firmware name support. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> 2023-08-31drm/amdgpu: add doorbell index for VPELang Yu2-2/+6 Add doorbell index for Video Processing Engine. Signed-off-by: Lang Yu <Lang.Yu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>