lkml.org 
[lkml]   [2003]   [Mar]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [Linux-fbdev-devel] Re: FBdev updates.
    From
    Date
    On Thu, 2003-03-06 at 04:23, James Simmons wrote:
    >
    > > > And one (or two...) generic questions: why is not pseudo_palette
    > > > u32* pseudo_palette, or even directly u32 pseudo_palette[17] ?
    > >
    > > Yes, all drivers should treat the pseudo_palette as u32* anyway, so why
    > > not change pseudo-palette from void* to u32*?
    >
    > See other email.
    >
    > > > And why we do not fill this pseudo_palette with
    > > > i * 0x01010101U for 8bpp pseudocolor and i * 0x11111111U for 4bpp
    > > > pseudocolor? This allowed me to remove couple of switches and tests
    > > > from acceleration fastpaths (and from cfb_imageblit and cfb_fillrect,
    > > > but I did not changed these two in my benchmarks below).
    > >
    > > I also agree for a different reason. Cards with unconventional formats
    > > (such as monochrome at 8 bpp - 0 for black , 0xff for white) will not
    > > work with the current code.
    >
    > Isn't that the job of setcolreg?
    >
    setcolreg does that for directcolor and truecolor modes, because they're
    the only ones that uses the pseudo_palette. See all driver codes, the
    pseudo_palette is never initialized if in pseudo_color.

    The purpose of the pseudo_palette is to enable to write pixels to the
    framebuffer without knowing the color format at all. So, if you have
    monochrome, then black is 0 and white is 1. But for monochrome 8bpp,
    black is 0 and white is 0xff.

    fbcon will send 0's and 1's, thus 0 and 1 will be written to the
    framebuffer. If the drawing functions referred to the pseudo_palette,
    whatever the visual format, then 0 and 0xff will be written, as it
    should be.

    Tony
    >
    >
    > -------------------------------------------------------
    > This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger
    > for complex code. Debugging C/C++ programs can leave you feeling lost and
    > disoriented. TotalView can help you find your way. Available on major UNIX
    > and Linux platforms. Try it free. www.etnus.com
    > _______________________________________________
    > Linux-fbdev-devel mailing list
    > Linux-fbdev-devel@lists.sourceforge.net
    > https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:33    [W:0.047 / U:63.128 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site