From: alexdeucher@gmail.com
To: dri-devel@lists.freedesktop.org, dan.carpenter@oracle.com
Cc: Alex Deucher <alexander.deucher@amd.com>
Subject: [PATCH] drm/radeon: fix endian bugs in radeon_atom_get_clock_dividers()
Date: Mon, 22 Apr 2013 10:03:13 -0400 [thread overview]
Message-ID: <1366639393-10190-1-git-send-email-alexdeucher@gmail.com> (raw)
In-Reply-To: <20130418184709.GA11596@elgon.mountain>
From: Alex Deucher <alexander.deucher@amd.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
---
drivers/gpu/drm/radeon/atombios.h | 2 ++
drivers/gpu/drm/radeon/radeon_atombios.c | 6 ++----
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/radeon/atombios.h b/drivers/gpu/drm/radeon/atombios.h
index 4b04ba3..de678dd 100644
--- a/drivers/gpu/drm/radeon/atombios.h
+++ b/drivers/gpu/drm/radeon/atombios.h
@@ -459,6 +459,7 @@ typedef struct _COMPUTE_MEMORY_ENGINE_PLL_PARAMETERS_V3
{
ATOM_COMPUTE_CLOCK_FREQ ulClock; //Input Parameter
ATOM_S_MPLL_FB_DIVIDER ulFbDiv; //Output Parameter
+ ULONG ulClockFbDiv;
};
UCHAR ucRefDiv; //Output Parameter
UCHAR ucPostDiv; //Output Parameter
@@ -491,6 +492,7 @@ typedef struct _COMPUTE_MEMORY_ENGINE_PLL_PARAMETERS_V5
{
ATOM_COMPUTE_CLOCK_FREQ ulClock; //Input Parameter
ATOM_S_MPLL_FB_DIVIDER ulFbDiv; //Output Parameter
+ ULONG ulClockFbDiv;
};
UCHAR ucRefDiv; //Output Parameter
UCHAR ucPostDiv; //Output Parameter
diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c b/drivers/gpu/drm/radeon/radeon_atombios.c
index 8c1779c..2fc444e 100644
--- a/drivers/gpu/drm/radeon/radeon_atombios.c
+++ b/drivers/gpu/drm/radeon/radeon_atombios.c
@@ -2710,8 +2710,7 @@ int radeon_atom_get_clock_dividers(struct radeon_device *rdev,
dividers->enable_post_div = (dividers->fb_div & 1) ? true : false;
} else {
if (clock_type == COMPUTE_ENGINE_PLL_PARAM) {
- args.v3.ulClock.ulComputeClockFlag = clock_type;
- args.v3.ulClock.ulClockFreq = cpu_to_le32(clock); /* 10 khz */
+ args.v3.ulClockFbDiv = cpu_to_le32((clock_type << 24) | clock);
atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args);
@@ -2726,8 +2725,7 @@ int radeon_atom_get_clock_dividers(struct radeon_device *rdev,
dividers->vco_mode = (args.v3.ucCntlFlag &
ATOM_PLL_CNTL_FLAG_MPLL_VCO_MODE) ? 1 : 0;
} else {
- args.v5.ulClock.ulComputeClockFlag = clock_type;
- args.v5.ulClock.ulClockFreq = cpu_to_le32(clock); /* 10 khz */
+ args.v3.ulClockFbDiv = cpu_to_le32((clock_type << 24) | clock);
if (strobe_mode)
args.v5.ucInputFlag = ATOM_PLL_INPUT_FLAG_PLL_STROBE_MODE_EN;
--
1.7.7.5
next prev parent reply other threads:[~2013-04-22 14:03 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-18 18:47 drm/radeon: add radeon_atom_get_clock_dividers helper Dan Carpenter
2013-04-19 15:45 ` Christian König
2013-04-22 14:03 ` alexdeucher [this message]
2013-04-22 14:08 ` [PATCH] drm/radeon: fix endian bugs in radeon_atom_get_clock_dividers() Dan Carpenter
2013-04-22 14:18 ` Alex Deucher
2013-04-22 14:31 ` Dan Carpenter
2013-04-22 14:34 ` Alex Deucher
2013-04-22 15:29 ` Michel Dänzer
2013-04-22 16:15 ` Alex Deucher
2013-04-22 16:25 ` Michel Dänzer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1366639393-10190-1-git-send-email-alexdeucher@gmail.com \
--to=alexdeucher@gmail.com \
--cc=alexander.deucher@amd.com \
--cc=dan.carpenter@oracle.com \
--cc=dri-devel@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox