17 Oct, 2008

40 commits

  • Remove CVS keywords that weren't updated for a long time from comments.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • PnP encodes the resource type directly as its struct resource->flags value
    which is an unsigned long. Make it so...

    Signed-off-by: Rene Herman
    Cc: "H. Peter Anvin"
    Acked-by: Bjorn Helgaas
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rene Herman
     
  • There's no point in printing some ancient version number forever.

    Signed-off-by: Adrian Bunk
    Acked-by: Rene Herman
    Acked-by: Bjorn Helgaas
    Acked-by: Adam M Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • echo 3 >> /sys/class/graphics/fbcon/rotate_all, then switch to another
    console. Result:

    BUG: unable to handle kernel paging request at ffffc20005d00000
    IP: [bitfill_aligned+149/265] bitfill_aligned+0x95/0x109
    PGD 7e228067 PUD 7e229067 PMD 7bc1f067 PTE 0
    Oops: 0002 [1] SMP
    CPU 1
    Modules linked in: [...a lot...]
    Pid: 10, comm: events/1 Not tainted 2.6.26.5-45.fc9.x86_64 #1
    RIP: 0010:[bitfill_aligned+149/265] [bitfill_aligned+149/265] bitfill_aligned+0x95/0x109
    RSP: 0018:ffff81007d811bc8 EFLAGS: 00010216
    RAX: ffffc20005d00000 RBX: 0000000000000000 RCX: 0000000000000400
    RDX: 0000000000000000 RSI: ffffc20005d00000 RDI: ffffffffffffffff
    RBP: ffff81007d811be0 R08: 0000000000000400 R09: 0000000000000040
    R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000010000
    R13: ffffffff811632f0 R14: 0000000000000006 R15: ffff81007cb85400
    FS: 0000000000000000(0000) GS:ffff81007e004780(0000) knlGS:0000000000000000
    CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b
    CR2: ffffc20005d00000 CR3: 0000000000201000 CR4: 00000000000006e0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Process events/1 (pid: 10, threadinfo ffff81007d810000, task ffff81007d808000)
    Stack: ffff81007c9d75a0 0000000000000000 0000000000000000 ffff81007d811c80
    ffffffff81163a61 ffff810000000000 ffffffff8115f9c8 0000001000000000
    0000000100aaaaaa 000000007cd0d4a0 fffffd8a00000800 0001000000000000
    Call Trace:
    [cfb_fillrect+523/798] cfb_fillrect+0x20b/0x31e
    [soft_cursor+416/436] ? soft_cursor+0x1a0/0x1b4
    [ccw_clear_margins+205/263] ccw_clear_margins+0xcd/0x107
    [fbcon_clear_margins+59/61] fbcon_clear_margins+0x3b/0x3d
    [fbcon_switch+1291/1466] fbcon_switch+0x50b/0x5ba
    [redraw_screen+261/481] redraw_screen+0x105/0x1e1
    [ccw_cursor+0/1869] ? ccw_cursor+0x0/0x74d
    [complete_change_console+48/190] complete_change_console+0x30/0xbe
    [change_console+115/120] change_console+0x73/0x78
    [console_callback+0/292] ? console_callback+0x0/0x124
    [console_callback+97/292] console_callback+0x61/0x124
    [schedule_delayed_work+25/30] ? schedule_delayed_work+0x19/0x1e
    [run_workqueue+139/282] run_workqueue+0x8b/0x11a
    [worker_thread+221/238] worker_thread+0xdd/0xee
    [autoremove_wake_function+0/56] ? autoremove_wake_function+0x0/0x38
    [worker_thread+0/238] ? worker_thread+0x0/0xee
    [kthread+73/118] kthread+0x49/0x76
    [child_rip+10/18] child_rip+0xa/0x12
    [kthread+0/118] ? kthread+0x0/0x76
    [child_rip+0/18] ? child_rip+0x0/0x12

    Because fbcon_set_all_vcs()->FBCON_SWAP() uses display->rotate == 0 instead
    of fbcon_ops->rotate, and vc_resize() has no effect because it is called with
    new_cols/rows == ->vc_cols/rows.

    Tested on 2.6.26.5-45.fc9.x86_64, but
    http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git seems to
    have the same problem.

    Signed-off-by: Oleg Nesterov
    Cc: Krzysztof Helt
    Cc: [2.6.27.x, 2.6.26.x, maybe 2.6.25.x]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Oleg Nesterov
     
  • Add driver for TMIO framebuffer cells as found e.g. in Toshiba TC6393XB
    chips.

    Signed-off-by: Dmitry Baryshkov
    Cc: Ian Molton
    Acked-by: Samuel Ortiz
    Acked-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dmitry Baryshkov
     
  • I'm stepping up as maintainer for the Epson S1D13XXXFB driver since I have
    2 platforms currently using it.

    Signed-off-by: Kristoffer Ericson
    Acked-by: Thibaut Varene
    Cc: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kristoffer Ericson
     
  • Make alloc_carmine_fb() __devinit.

    WARNING: drivers/video/carminefb.o(.text+0x81b): Section mismatch in reference from the function alloc_carmine_fb() to the variable .devinit.data:carminefb_fix

    The function alloc_carmine_fb() references the variable __devinitdata
    carminefb_fix. This is often because alloc_carmine_fb lacks a
    __devinitdata annotation or the annotation of carminefb_fix is wrong.

    Signed-off-by: Randy Dunlap
    Cc: Sebastian Siewior
    Cc: Geert Uytterhoeven
    Cc: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Support the Matrox G200eV chip, based on timings that I found in the X.org
    matrox driver.

    Signed-off-by: Darrick J. Wong
    Acked-by: Krzysztof Helt
    Cc: Petr Vandrovec
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Darrick J. Wong
     
  • The Epson s1d13xxx hardware is common in many handhelds, but our driver is
    currently locked to a single chip revision. This patch adds an array of
    known to work revisions (which can be extended).

    [akpm@linux-foundation.org: cleanups]
    Signed-off-by: Kristoffer Ericson
    Acked-by: Thibaut Varène
    Cc: Geert Uytterhoeven
    Cc: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kristoffer Ericson
     
  • Currently, it is possible to set a graphics VESA mode at boot time via the
    vga= parameter even when no framebuffer driver supporting this is
    configured. This could lead to the system booting with a black screen,
    without a usable console.

    Fix this problem by only allowing to set graphics modes at boot time if a
    supporting framebuffer driver is configured.

    Signed-off-by: Michal Januszewski
    Acked-by: Krzysztof Helt
    Cc: "H. Peter Anvin"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Januszewski
     
  • There's no point in checking diff == c->vc_rows, because it can be true
    only when count == 0, but we already checked that. Additionally move
    variables used only in one block to this block.

    Signed-off-by: Marcin Slusarz
    Cc: Antonino Daplas
    Acked-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marcin Slusarz
     
  • Join multiple scr_memcpyw into 1-3 calls (usually 2). (benchmarked
    average speedup: 1%)

    Signed-off-by: Marcin Slusarz
    Cc: Krzysztof Helt
    Cc: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Marcin Slusarz
     
  • The current EDID parser in the linux kernel ignores interlace modes. The
    patch looks for the edid interlace flag and adjusts the vertical
    resolution if it is found.

    Signed-off-by: Jon Dufresne
    Cc: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jon Dufresne
     
  • Add a maintainer entry for the uvesafb driver.

    Signed-off-by: Michal Januszewski
    Cc: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Januszewski
     
  • Some BIOSes return error codes when queried for information about
    modes from their own modelist. uvesafb treats this as an error
    case and bails out.

    Change this behavior so that broken modes do not prevent the driver
    from working. Only the failure to retrieve information about any
    usable video mode is considered to be an error case.

    Signed-off-by: Michal Januszewski
    Cc: Krzysztof Helt
    Cc: "H. Peter Anvin"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Januszewski
     
  • Document the change from the old "mode" parameter to the "mode_option"
    parameter.

    Signed-off-by: Mike Pagano
    Cc: Krzysztof Halasa
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Pagano
     
  • Implement support for HW color expansion of 1bpp images, along with some
    improvements to the FIFO handling and other accel operations.

    The offset fixup code is now unnecessary as the fbcon core will call our
    set_par upon switch back from KD_GRAPHICS before anything else happens. I
    removed it as it would slow down accel operations.

    The fifo wait has been improved to avoid hitting the HW register as often,
    and the various accel ops are now performing better caching of register
    values.

    Overall, this improve accel performances. The imageblit acceleration does
    result in a small overall regression in performances on some machines (on
    the order of 5% on some x86), probably becaus the SW path provides a
    better bus utilisation, but I decided to ingnore that as the performances
    is still very good, and on the other hand, some machines such as some
    sparc64 get a 3 fold performance improvement.

    Signed-off-by: Benjamin Herrenschmidt
    Acked-by: David S. Miller
    Cc: Krzysztof Halasa
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Benjamin Herrenschmidt
     
  • Fix a couple of incomplete tests of the chip families in the engine
    init/reset code and proper initialization of the destination cache mode.
    The result should better match what the latest X radeon driver does.

    Signed-off-by: Benjamin Herrenschmidt
    Acked-by: David S. Miller
    Cc: Krzysztof Halasa
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Benjamin Herrenschmidt
     
  • Remove imacfb entirely, merging its DMI table into the (otherwise very
    similar) efifb driver. This also adds hardware support for many of the
    newer Intel Apple hardware. This has been fairly well tested; we've been
    shipping it in Fedora for some time.

    Signed-off-by: Peter Jones
    Cc: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Cc: Jaya Kumar
    Cc: Ralf Baechle
    Cc: Maciej W. Rozycki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Jones
     
  • Signed-off-by: Stanislaw Gruszka
    Acked-by: Nicolas Ferre
    Cc: Krzysztof Helt
    Cc: Haavard Skinnemoen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stanislaw Gruszka
     
  • A memory clock value (MCLK) is changed to a minimum required by a current
    mode bandwidth. This usually lowers the MCLK to its minimum (50 MHz) thus
    decreasing the card performance. Just leave the MCLK value set by card
    BIOS.

    The CL-GD5446 Technical Reference Manual point 9.9.1.3 states that if a
    pixclock value is close (~1%) to the MCLK or MCLK/2 this may result in a
    jitter on the screen. A countermeasure is to use the MCLK as pixclock
    source instead of a VCLK. The patch implements this as well.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • The 16bpp mode did not work on the Cirrus cards as the visual type was set
    to DIRECTCOLOR instead of TRUECOLOR. The Alpine family used one incorrect
    register setting so this 16bpp modes generated wrong horizontal frequency.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • The noaccel parameter is already handled if the driver is not built as
    module.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Move call to pixclock calculation into the cirrusfb_set_par_foo(). It
    makes copy of clock registers redundant.

    Simplify clock calculations further.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Move calculations of CRT register values into the cirrusfb_set_par_foo()
    where the values are used.

    Signed-off-by: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Add __devinit attribute to probing functions. This fixed section mismatch
    warning from my previous patch.

    Kill one redundant forward declaration.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Use modedb for initial mode instead of table of few predefined modes.

    Add mode_option module parameter as a step toward unification of frame
    buffers' parameters.

    Signed-off-by: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • The device pointer can be easily obtained from fb_info->device if needed.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • The 24 bpp mode is not implemented. Disallow it in the
    cirrusfb_check_var() and remove it from checks.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Simplify clock calculation.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Remove information about memory size displayed twice each time a display
    mode change.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Add support for Intel's 945GME graphics chip to the intelfb driver. I
    have assumed that the 945GME is identical to the already-supported 945GM
    apart from its PCI IDs; this is based on a quick look at the X driver for
    these chips which seems to treat them identically.

    The 945GME is used in the ASUS Eee 901, and I coded this in the hope that
    I'd be able to use it to get a console at the native 1024x600 resolution
    which is not known to the BIOS. I realised too late that the intelfb
    driver does not support mode changing on laptops, so it won't be any
    use for me.

    Signed-off-by: Phil Endecott
    Acked-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Phil Endecott
     
  • This was suggested by Geert Uytterhoeven to avoid overwriting of default
    values from the tdfx_fix.

    Signed-off-by: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Remove mutex from the fb_open/fb_release functions as these operations are
    mutexed at fb layer.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Remove mutex from the fb_open/fb_release functions as these operations are
    mutexed at fb layer.

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Move common code outside if/else or switch/case clauses.

    Drop checks done twice inside the neofb_check_var().

    Signed-off-by: Krzysztof Helt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Update Kconfig for Permedia 2, Trident and 3Dfx frame buffer drivers.

    [akpm@linux-foundation.org: fix Kconfig text]
    Signed-off-by: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Helt
     
  • Add maintainers for VIA UniChrome(Pro)/Chrome9 Framebuffer driver

    Signed-off-by: Joseph Chan
    Signed-off-by: Scott Fang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joseph Chan
     
  • via_utility.c, via_utility.h: support user mode application with
    additional information vt1636.c, vt1636.h: setting for chip vt1636

    Signed-off-by: Joseph Chan
    Cc: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joseph Chan
     
  • via_i2c.c, via_i2c.h: Implement i2c specification.
    viamode.c, viamode.c: all support modes information.

    Signed-off-by: Joseph Chan
    Cc: Krzysztof Helt
    Cc: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joseph Chan