Radeon M7 rendering problem for SXGA+

Alex Deucher alexdeucher at gmail.com
Wed Oct 18 11:54:34 PDT 2006


On 10/18/06, John Klingler <john at jupiter.com> wrote:
> I am not using the xorg radeon driver but I have been going through the code
> to see how this is handled. As far as I have been able to determine, the
> driver does not support SXGA+. I will look again. (Can you give me a hint?)
>

The driver handles all modes just fine.  see radeon_driver.c
RADEONSetPitch() and the drawing engine's destination/pitch register:
 info->dst_pitch_offset = (((pScrn->displayWidth *
info->CurrentLayout.pixel_bytes / 64)
 << 22) | ((info->fbLocation + pScrn->fbOffset) >> 10));

Alex

> Thanks,
>
> John
>
> Alex Deucher wrote:
>
> > On 10/18/06, John Klingler <john at jupiter.com> wrote:
> >
> >> The ATI Radeon M7 BLTs require screen width to be an even multiple of 64
> >> bytes, otherwise the pitch is wrong. For example, when moving a window,
> >> the window contents appear as diagonal artifacts on the root window.
> >>
> >> For screen widths that are not multiples of 64, for example 1400
> >> (SXGA+), ATI says they think setting the surface width to the next
> >> greater multiple of 64 should correct this. I didn't see any way to do
> >> that and am still awaiting a reply. In the meantime, I use the cfb blits
> >> for this situation. (The problem also occurs when the resolution is
> >> 800x600x8Bpp. )
> >>
> >> Does anyone know how to get the M7 accelerated blits to work in cases
> >> such as this?
> >>
> >
> > You just need to set the pitch of the drawing engine to the correct
> > alignment.  Most modern GPUs have similar requirements.  This should
> > already be handled.  Are you using the xorg radeon driver?
> >
> > Alex
> >
> >>
> >> Thanks,
> >>
> >> John Klingler
> >> P.S. This problem affects all the M7 rendering functions, e.g. lines
> >> etc., not just the blits.
> >>
> >
>



More information about the xorg mailing list