[ltp] IBM t23 supersavage, xvideo overlay

Alex Deucher linux-thinkpad@linux-thinkpad.org
Sun, 5 Jun 2005 18:27:38 -0400


On 5/27/05, Harald Strack <hstrack@trymedia.com> wrote:
> Alex Deucher wrote:
>=20
> >On 5/27/05, Harald Strack <hstrack@trymedia.com> wrote:
> >
> >
> >>Hi,
> >>
> >>
> >>I am running Linux Kernel 2.6.10, xorg cvs, drm cvs and mesa cvs on my
> >>t23 with supersavage IX/C SDR card.
> >>Xvideo works perfectly when I am running 1024x768. But all smaller
> >>resolutions
> >>(640x480, 800x600) are producing a video overlay which is only filled
> >>with videodata in the upper right part. The rest is blue. What you see
> >>is the actual movie, but it seems like the linebreaks (if this exists i=
n
> >>xvideo) are wrong.
> >>Since the display  and the position of the video is wrong, the error ma=
y
> >>be, that the Xvideo driver
> >>does not recognize the smaller resolutions but uses for its calculation
> >>further on 1024x768.
> >>
> >>
> >>
> >
> >it sounds like an offset problem, or maybe a LCD scaler issue.  As I
> >recall I had Xv working pretty well at all resolutions on my savage
> >IX, but it's been a while since I tested.  I don't have a supersavage,
> >so it may be supersavage related (although I think the overlays are
> >pretty similar if not identical).  Do you have problems with all YUV
> >formats or just some?
> >I must re-iterate that the savage streams engine is a work of pure
> >evil.  I REALLY dislike working on it.  If anyone else wants to try
> >their hand at this, let me know and I can answer any questions you may
> >have.
> >
> >Alex
> >
> >
> >
> For sure. I get my money with C and C++ programming, but I have no clue
> about driver coding. But if you give me some advices where I could start
> in your
> sources I may find the rest of the necessary information by myself. I
> have the sources,
> a compiler some debuggers and I am patient.
>=20
> May I start in xc/programs/Xserver/hw/xfree86/drivers/savage/savage_video=
.c?
>=20
> Where reads xvideo the actual resolution from?
> May I hardcode it first, to see if it helps?
>=20
> Or does it work entirely different?
>=20
> You see, I have no clue... but motivation.
>=20

Sorry, for the delay.  You want to look in savage_video.c and
savage_streams.c.
SavageDisplayVideoNew() is probably what you want to look at.  but you
may also need to look a streamsON() and related functions in
savage_streams.c.

SEC_STREAM_FBUF_ADDR0 - the location of the video video. The alignment
on supersavage may be octword rather than quadword, not sure, don't
have the hardware to test.  some of the other FB_offset regs on
supersavage require different alignments from other savages.
SEC_STREAM_HSCALING, SEC_STREAM_VSCALING - control the overlay video scaler=
.
SEC_STREAM_STRIDE - stride of the video stream
SEC_STREAM_WINDOW_START - start of the overlay window on the primary frameb=
uffer
SEC_STREAM_WINDOW_SZ - size of the video stream window


let me know if you have any more questions.

Alex

> Greetings
>=20
> Harry
>=20
>=20
>=20
> >>The XFree86 4.3.0 drivers had these problem for me also, but only on
> >>tv-out. The actual driver has it
> >>now on LCD and tv.
> >>
> >>I did not found a cheap workaround like starting X in 640x480 mode or
> >>similar.
> >>
> >>Had anyone similar problems? Since the t23 seems to be very popular
> >>laptop, but I could not
> >>find any problem reports concerning my issues...
> >>
> >>Best Regards
> >>
> >>Harry
> >>
> >>
> >>
> >>
> >>
> >>
>=20
>=20
>=20
>