lkml.org 
[lkml]   [2006]   [Nov]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: 2.6.19-rc5-mm1
    On Thu, 9 Nov 2006 22:21:49 -0500
    Ed Tomlinson <edt@aei.ca> wrote:

    > On Wednesday 08 November 2006 04:54, Andrew Morton wrote:
    > > -radeonfb-support-24bpp-32bpp-minus-alpha.patch
    > >
    > >  Dropped
    > >
    > > +various-fbdev-files-mark-structs-fix.patch
    > >
    > >  Fix various-fbdev-files-mark-structs.patch
    > >
    > > +fbcon-rere-fix-little-endian-bogosity-in-slow_imageblit.patch
    > >
    > >  fbdev fix
    >
    > Strongly suspect that something is not right with these patches. I have a:
    >
    > 01:00.0 VGA compatible controller: ATI Technologies Inc RV280 [Radeon 9200] (rev 01) (prog-if 00 [VGA])
    > Subsystem: ATI Technologies Inc Unknown device 2002
    > Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
    > Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
    > Latency: 32 (2000ns min), Cache Line Size 08
    > Interrupt: pin A routed to IRQ 16
    > Region 0: Memory at d0000000 (32-bit, prefetchable) [size=128M]
    > Region 1: I/O ports at 8000 [size=256]
    > Region 2: Memory at e9010000 (32-bit, non-prefetchable) [size=64K]
    > [virtual] Expansion ROM at e8000000 [disabled] [size=128K]
    > Capabilities: [58] AGP version 3.0
    > Status: RQ=256 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3+ Rate=x4,x8
    > Command: RQ=32 ArqSz=2 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x8
    > Capabilities: [50] Power Management version 2
    > Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
    > Status: D0 PME-Enable- DSel=0 DScale=0 PME-
    >
    > booting with:
    >
    > kernel /boot/2.6.19-rc5-mm1 root=/dev/sda3 vga=0x318 video=vesafb:ywrap,mtrr:3 console=tty0 console=ttyS0,38400 nmi_watchdog=1
    >
    > gives a strangely corrupted screen. The characters seem reversed...
    >

    Yup, thanks. You'll need to revert
    fbcon-rere-fix-little-endian-bogosity-in-slow_imageblit.patch:'


    diff -puN drivers/video/cfbimgblt.c~revert-fbcon-rere-fix-little-endian-bogosity-in-slow_imageblit drivers/video/cfbimgblt.c
    --- a/drivers/video/cfbimgblt.c~revert-fbcon-rere-fix-little-endian-bogosity-in-slow_imageblit
    +++ a/drivers/video/cfbimgblt.c
    @@ -168,7 +168,7 @@ static inline void slow_imageblit(const

    while (j--) {
    l--;
    - color = (*s & (1 << FB_BIT_NR(l))) ? fgcolor : bgcolor;
    + color = (*s & (1 << l)) ? fgcolor : bgcolor;
    val |= FB_SHIFT_HIGH(color, shift);

    /* Did the bitshift spill bits to the next long? */
    @@ -258,7 +258,7 @@ static inline void fast_imageblit(const
    s += spitch;
    }
    }
    -
    +
    void cfb_imageblit(struct fb_info *p, const struct fb_image *image)
    {
    u32 fgcolor, bgcolor, start_index, bitstart, pitch_index = 0;
    diff -puN include/linux/fb.h~revert-fbcon-rere-fix-little-endian-bogosity-in-slow_imageblit include/linux/fb.h
    --- a/include/linux/fb.h~revert-fbcon-rere-fix-little-endian-bogosity-in-slow_imageblit
    +++ a/include/linux/fb.h
    @@ -854,12 +854,10 @@ struct fb_info {
    #endif

    #if defined (__BIG_ENDIAN)
    -#define FB_BIT_NR(b) (b)
    #define FB_LEFT_POS(bpp) (32 - bpp)
    #define FB_SHIFT_HIGH(val, bits) ((val) >> (bits))
    #define FB_SHIFT_LOW(val, bits) ((val) << (bits))
    #else
    -#define FB_BIT_NR(b) (7 - (b))
    #define FB_LEFT_POS(bpp) (0)
    #define FB_SHIFT_HIGH(val, bits) ((val) << (bits))
    #define FB_SHIFT_LOW(val, bits) ((val) >> (bits))
    _
    -
    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: 2006-11-10 04:37    [W:0.037 / U:0.228 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site