diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2013-07-30 00:22:53 -0400 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2013-09-10 01:57:18 +0100 |
commit | 3187e1ef04de768d37fb1472a560f648f4f97294 (patch) | |
tree | 5412d0ecb3a4fc4d567031d9e9def63284020805 /drivers/gpu | |
parent | 45cc55f9365e8a43a5a0394a654abc8f966946e9 (diff) | |
download | kernel_samsung_smdk4412-3187e1ef04de768d37fb1472a560f648f4f97294.zip kernel_samsung_smdk4412-3187e1ef04de768d37fb1472a560f648f4f97294.tar.gz kernel_samsung_smdk4412-3187e1ef04de768d37fb1472a560f648f4f97294.tar.bz2 |
drm/radeon/atom: initialize more atom interpretor elements to 0
commit 42a21826dc54583cdb79cc8477732e911ac9c376 upstream.
The ProcessAuxChannel table on some rv635 boards assumes
the divmul members are initialized to 0 otherwise we get
an invalid fb offset since it has a bad mask set when
setting the fb base. While here initialize all the
atom interpretor elements to 0.
Fixes:
https://bugzilla.kernel.org/show_bug.cgi?id=60639
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/radeon/atom.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/atom.c b/drivers/gpu/drm/radeon/atom.c index d969f3c..afb351a 100644 --- a/drivers/gpu/drm/radeon/atom.c +++ b/drivers/gpu/drm/radeon/atom.c @@ -1220,12 +1220,17 @@ int atom_execute_table(struct atom_context *ctx, int index, uint32_t * params) int r; mutex_lock(&ctx->mutex); + /* reset data block */ + ctx->data_block = 0; /* reset reg block */ ctx->reg_block = 0; /* reset fb window */ ctx->fb_base = 0; /* reset io mode */ ctx->io_mode = ATOM_IO_MM; + /* reset divmul */ + ctx->divmul[0] = 0; + ctx->divmul[1] = 0; r = atom_execute_table_locked(ctx, index, params); mutex_unlock(&ctx->mutex); return r; |