All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: alexdeucher@gmail.com
Cc: Alex Deucher <alexander.deucher@amd.com>,
	dri-devel@lists.freedesktop.org
Subject: Re: [PATCH] drm/radeon: fix endian bugs in radeon_atom_get_clock_dividers()
Date: Mon, 22 Apr 2013 17:08:57 +0300	[thread overview]
Message-ID: <20130422140857.GC8936@mwanda> (raw)
In-Reply-To: <1366639393-10190-1-git-send-email-alexdeucher@gmail.com>

On Mon, Apr 22, 2013 at 10:03:13AM -0400, alexdeucher@gmail.com wrote:
> 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;

Why is this a long instead of an __le32 or u32?


>    };
>    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);

We've changed from v5 to v3.  Was that intentional?

I'm confused by this patch as well.  I assumed the datatypes were
determined by the hardware spec.

regards,
dan carpenter

  reply	other threads:[~2013-04-22 14:08 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 ` [PATCH] drm/radeon: fix endian bugs in radeon_atom_get_clock_dividers() alexdeucher
2013-04-22 14:08   ` Dan Carpenter [this message]
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=20130422140857.GC8936@mwanda \
    --to=dan.carpenter@oracle.com \
    --cc=alexander.deucher@amd.com \
    --cc=alexdeucher@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.