aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/atom.c
diff options
context:
space:
mode:
authorAlex Deucher <alexander.deucher@amd.com>2015-10-02 14:03:26 -0400
committerAlex Deucher <alexander.deucher@amd.com>2015-10-14 16:16:23 -0400
commit554384198c11717d9d9fdb2c9aa83ab78cd50fdf (patch)
tree265761c021b775fb78989fb8859723e6b0bac2e4 /drivers/gpu/drm/amd/amdgpu/atom.c
parentf76097c099ab84befce13c0cbc827ece6ea3bcdb (diff)
drm/amdgpu/atom: add support for process ds opcode
Just skips a data section. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/atom.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/atom.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/atom.c b/drivers/gpu/drm/amd/amdgpu/atom.c
index 331bd059d2ec..885d3d3b5213 100644
--- a/drivers/gpu/drm/amd/amdgpu/atom.c
+++ b/drivers/gpu/drm/amd/amdgpu/atom.c
@@ -1026,6 +1026,13 @@ static void atom_op_debug(atom_exec_context *ctx, int *ptr, int arg)
1026 SDEBUG("DEBUG output: 0x%02X\n", val); 1026 SDEBUG("DEBUG output: 0x%02X\n", val);
1027} 1027}
1028 1028
1029static void atom_op_processds(atom_exec_context *ctx, int *ptr, int arg)
1030{
1031 uint16_t val = U16(*ptr);
1032 (*ptr) += val + 2;
1033 SDEBUG("PROCESSDS output: 0x%02X\n", val);
1034}
1035
1029static struct { 1036static struct {
1030 void (*func) (atom_exec_context *, int *, int); 1037 void (*func) (atom_exec_context *, int *, int);
1031 int arg; 1038 int arg;
@@ -1152,7 +1159,9 @@ static struct {
1152 atom_op_shr, ATOM_ARG_FB}, { 1159 atom_op_shr, ATOM_ARG_FB}, {
1153 atom_op_shr, ATOM_ARG_PLL}, { 1160 atom_op_shr, ATOM_ARG_PLL}, {
1154 atom_op_shr, ATOM_ARG_MC}, { 1161 atom_op_shr, ATOM_ARG_MC}, {
1155atom_op_debug, 0},}; 1162 atom_op_debug, 0}, {
1163 atom_op_processds, 0},
1164};
1156 1165
1157static int amdgpu_atom_execute_table_locked(struct atom_context *ctx, int index, uint32_t * params) 1166static int amdgpu_atom_execute_table_locked(struct atom_context *ctx, int index, uint32_t * params)
1158{ 1167{