From: Antonino Daplas <adaplas@pol.net>
To: James Simmons <jsimmons@infradead.org>
Cc: Paul Mackerras <paulus@samba.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Fbdev development list
<linux-fbdev-devel@lists.sourceforge.net>
Subject: Re: [PATCH] fix endian problem in color_imageblit
Date: 21 Dec 2002 11:45:44 +0800 [thread overview]
Message-ID: <1040442194.1294.9.camel@localhost.localdomain> (raw)
In-Reply-To: <Pine.LNX.4.44.0212201932150.6471-100000@phoenix.infradead.org>
On Sat, 2002-12-21 at 03:54, James Simmons wrote:
>
> > Nice catch :-) We also need a similar fix for slow_imageblit(), so
> > James can you apply the attached patch also:
>
> Applied.
>
> > Also, I noticed that some drivers load the pseudo_palette with entries
> > whose length matches the length of the pixel. The cfb_* functions
> > always assume that each pseudo_palette entry is an "unsigned long", so
> > bpp16 will segfault, and so will bpp24/32 for 64-bit machines.
>
> I just noticed that as well. Russell King pointed to it too. I fixed
> the unsigned long problem in color_imageblit. All the pseudo_palette
> in cfb_* are assumed u32. Is this safe for 16bpp or 8 bpp modes? I will
The pseudopalette will only matter for truecolor and directcolor as the
rest of the visuals bypasses the pseudopalette. Typecasting to
"unsigned long" rather than "u32" is also safer (even for bpp16) since
in 64-bit machines, the drawing functions use fb_writeq instead of
fb_writel. So, all drivers using the cfb_* functions should change from
"u32" to "unsigned long" _whatever_ the bit depth when loading the
pseudopalette.
Of course, drivers with their own drawing functions can use whatever
they want.
Tony
PS: cfb_fillrect is still limited to u32 though which can hopefully be
fixed in the future.
-------------------------------------------------------
This SF.NET email is sponsored by: The Best Geek Holiday Gifts!
Time is running out! Thinkgeek.com has the coolest gifts for
your favorite geek. Let your fingers do the typing. Visit Now.
T H I N K G E E K . C O M http://www.thinkgeek.com/sf/
next prev parent reply other threads:[~2002-12-21 3:56 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-12-12 3:41 [PATCH] fix endian problem in color_imageblit Paul Mackerras
2002-12-15 1:05 ` [Linux-fbdev-devel] " Antonino Daplas
2002-12-20 19:54 ` James Simmons
2002-12-21 3:45 ` Antonino Daplas [this message]
2002-12-21 9:27 ` Russell King
2002-12-23 9:07 ` Geert Uytterhoeven
2002-12-23 11:18 ` Russell King
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=1040442194.1294.9.camel@localhost.localdomain \
--to=adaplas@pol.net \
--cc=jsimmons@infradead.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=paulus@samba.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;
as well as URLs for NNTP newsgroup(s).