19 Oct, 2007

4 commits

  • This has not been any serious user of this ill conceived thing since the
    original invention in like '95 so I recently deleted this from everywhere
    except the last instance in logo.c. This patch removes the last two
    instances in logo.c. They conditions were not useful anyway as when
    compiled in they would always evaluate as true.

    Last not least this is necessary to get the SGI IP22 and DECstation kernels
    to compile again.

    Signed-off-by: Ralf Baechle
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • MODPOST vmlinux.o
    WARNING: vmlinux.o(.text+0x170be8): Section mismatch: reference to .init.data:au1100fb_fix (between 'au1100fb_drv_probe' and 'read_null')
    WARNING: vmlinux.o(.text+0x170dc4): Section mismatch: reference to .init.data:au1100fb_var (between 'au1100fb_drv_probe' and 'read_null')
    WARNING: vmlinux.o(.text+0x170dd0): Section mismatch: reference to .init.data:au1100fb_fix (between 'au1100fb_drv_probe' and 'read_null')
    WARNING: vmlinux.o(.text+0x170de0): Section mismatch: reference to .init.data:au1100fb_var (between 'au1100fb_drv_probe' and 'read_null')
    WARNING: vmlinux.o(.text+0x170e70): Section mismatch: reference to .init.data:au1100fb_var (between 'au1100fb_drv_probe' and 'read_null')

    Signed-off-by: Ralf Baechle
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • Fix build broken by accaa24c492f1aa3b9c37226d868dc59c3007531:

    CC drivers/video/console/newport_con.o
    drivers/video/console/newport_con.c: In function 'newport_show_logo':
    drivers/video/console/newport_con.c:111: error: assignment of read-only location
    drivers/video/console/newport_con.c:111: warning: assignment makes integer from pointer without a cast
    drivers/video/console/newport_con.c:112: error: assignment of read-only location
    drivers/video/console/newport_con.c:112: warning: assignment makes integer from pointer without a cast

    Signed-off-by: Ralf Baechle
    Cc: "Randy.Dunlap"
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     

18 Oct, 2007

2 commits


17 Oct, 2007

34 commits

  • Other/Some pr_*() macros are already defined in kernel.h, but pr_err() was
    defined multiple times in several other places

    Signed-off-by: Emil Medve
    Cc: Jean Delvare
    Cc: Jeff Garzik
    Cc: "Antonino A. Daplas"
    Cc: Tony Lindgren
    Reviewed-by: Satyam Sharma
    Acked-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Emil Medve
     
  • Stop using magic macros for screen_info structure members.

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Instead of using magic macros for boot_params access, simply use the
    boot_params structure.

    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • There is a test in tgafb_mono_imageblit() for a colour image with a fall-back
    to cfb_imageblit(). The test is not necessary as the only caller, which is
    tgafb_imageblit(), checks it too and only invokes this function for monochrome
    images. It looks like a left-over from before some changes to
    tgafb_imageblit().

    Signed-off-by: Maciej W. Rozycki
    Cc: Antonino Daplas
    Cc: Jay Estabrook
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Maciej W. Rozycki
     
  • The pixel mask calculation in tgafb_mono_imageblit() uses a variable
    left-shift on a 32-bit data type by up to 32. Shifting by the width of a data
    type or more produces an unpredictable result according to the C standard.

    Rather than widening the data type this fix makes sure the count is between 0
    and 31. The reason is not to penalise 32-bit platforms with operation on a
    "long long" type for a marginal case that is meant not to happen (blitting an
    image of a zero width).

    The reason it has escaped for so long is the Alpha, being purely 64-bit, :-)
    does not mask the shift out to 32 bits. This is a valid implementation --
    producing the correct result certainly falls within "unpredictable behaviour".
    It does trigger on MIPS though and it is the recent merge of the TC support
    which only enabled the driver for use on anything other than the Alpha. For
    MIPS when the width is 32 the mask ends up being 0 rather than 0xffffffff as
    it should be and the frame buffer is not updated.

    Signed-off-by: Maciej W. Rozycki
    Cc: Antonino Daplas
    Cc: Jay Estabrook
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Maciej W. Rozycki
     
  • As reported in Bugzilla Bug 9093, upon switching to X, a small rectangular
    cursor can still be seen blinking in the upper left part of the screen. It is
    fbcon's text cursor. This is caused by a strange ioctl(..., KDSETMODE,
    KD_TEXT) call done by something in userspace, perhaps by X itself, while the
    tty is still in graphics mode. And when the tty is in KD_TEXT mode, the
    cursor timer is restarted.

    Although this is a userspace problem, we can work around it by delaying the
    restart of the cursor timer until an fbcon_switch() is called. In other
    words, the cursor timer will not be restarted even if a KD_TEXT mode switch is
    requested.

    Regression potential: Present but low

    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Antonino Daplas
     
  • This correct case, when source and destination X coordinates difference is n
    multiple of pixels in byte. This is probably rare case, but this case should
    supported for completeness.

    Reorganization of FB_READL and FB_WRITEL calls results in code size decrease
    for normal build without swapping support and size with support enabled is
    reasonable too.

    [adaplas]
    Add missing fb_rev_pixels_in_long() prototype.

    Signed-off-by: Pavel Pisa
    Signed-off-by: Antonino Daplas
    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Pisa
     
  • This patch adds check if selected pixclock is valid (is in the PLL range).

    Previously, if the pixclock could not be set, the new mode resolution was set
    but pixclock was not set which led to incorrect timings sent to monitor.

    [adaplas]
    Fixed a few misplaced curly braces.

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

    Krzysztof Helt
     
  • This patch changes mode selection matching algorithm. It allows to choose
    mode with matching depth even when requested color lengths are greater than
    color lengths of every mode with requested color depth.

    It also fixes bug in s3fb - wrong error value returned when format is not
    supported by chip.

    Signed-off-by: Ondrej Zajicek
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ondrej Zajicek
     
  • Move the extern declaration for global_mode_option to and rename
    the variable to fb_mode_option.

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • ps3fb: Enhance horizontal panning on firmware 1.90 and up:
    - On firmware 1.90 and up, L1GPU_CONTEXT_ATTRIBUTE_FB_BLIT supports copying
    rectangles from XDR to DDR memory with different source and destination
    line lengths. Hence larger horizontal virtual resolutions can be supported
    (up to 16368 pixels).
    - As the actual frame buffer memory layout no longer matches the entries in
    ps3fb_res[], create fake struct ps3fb_ioctl_res data for the
    PS3FB_IOCTL_SCREENINFO ioctl, so user space applications that depend on it
    keep on working.

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • ps3fb: Add virtual screen and panning support:
    - The vertical virtual screen size is limited by the amount of memory
    reserved for ps3fb,
    - The horizontal virtual screen size is limited to the fullscreen width,
    - Advertise that we support panning, so fbcon will use it if the virtual
    screen is enabled.
    Enabling a virtual screen (using `fbset -vyres nnn') can speed up text
    console scrolling by a factor of 10-15, depending on the video mode.

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Don't keep the borders for non-fullscreen modes in XDR memory:
    - Extract ps3fb_sync_image()
    - Work around the alignment restrictions of L1GPU_CONTEXT_ATTRIBUTE_FB_BLIT
    by using an offset with L1GPU_CONTEXT_ATTRIBUTE_DISPLAY_FLIP
    - Only copy the visible part of the screen on every vblank
    - Always put the real frame buffer at the start of video memory
    - Clear fullscreen DDR memory on mode change

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • ps3fb: Use fb_info.par properly:
    o Move mode-specific fields into struct ps3fb_par
    o Allocate struct ps3fb_par using framebuffer_alloc()
    o Protect access to ps3fb_par in ps3fb_sync() using the console semaphore
    (this semaphore is already held when ps3fb_set_par() is called)
    o Avoid calling ps3av_set_video_mode() if the actual video mode hasn't
    changed

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • ps3fb: In the case of non-fullscreen video modes, there was a partial overlap
    of the GPU command buffer and the frame buffer. Fix and cleanup various issues
    with overlap and alignment:
    - Move the GPU command buffer from the beginning to the end of video memory
    - Exclude the GPU command buffer from the actual frame buffer memory
    - Align the start of the virtual frame buffer to PAGE_SIZE instead of to 64
    KiB, and don't waste memory if it's already aligned (for fullscreen modes)
    - Take into account the alignment when checking memory requirements and
    maximum number of frames
    - Make sure fb_fix_screeninfo.smem_start always points to the virtual frame
    buffer start, so we don't have to compensate for that in ps3fb_mmap()

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Make ps3fb_wait_for_vsync() and ps3fb_flip_ctl() static, as they're no
    (longer) used outside ps3fb.

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Clean up includes

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Do not print warnings on invalid frame numbers, as this can be triggered from
    user space.

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Convert ps3fb from printk()/DPRINTK() to dev_*()/pr_*()

    Signed-off-by: Geert Uytterhoeven
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • The i.MX frame-buffer read operation should be faster for all configurations
    then drawing each individual character again in response to scroll events.

    The nonstandard fields allows to configure frame-buffer special options flags
    for different display configurations by board specific initialization code.

    One of such specific options is reversed order of pixels in each individual
    byte. i.MX frame-buffer seems to be designed for big-endian use first. The
    byte order is correctly configured for little-endian ordering, but if 1, 2 or
    4 bits per pixel are used, pixels ordering is incompatible to Linux generic
    frame-buffer drawing functions.

    The patch "Allow generic BitBLT functions to work with swapped pixel order in
    bytes" introduces required functionality into FBDEV core. The pixels ordering
    selection has to be enabled at compile time CONFIG_FB_CFB_REV_PIXELS_IN_BYTE
    and for each display configuration which requires it by flag
    FB_NONSTD_REV_PIX_IN_B in "nonstd" field of info structure.

    This patch provides way for board specific code to select this option.

    Signed-off-by: Pavel Pisa
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Pisa
     
  • don't distinguish between `boot' and `non-boot' autodetection now the
    autodetection code has been improved

    Signed-off-by: Geert Uytterhoeven
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Move AGP and DRM menus into the video graphics support menu.
    They use 'menuconfig' so that they can all be disabled with
    one selection.
    Make the console menu use 'menuconfig' so that it can all be
    disabled with one selection.
    Make the frame buffer menu use 'menuconfig' so that it can all be
    disabled with one selection.

    Signed-off-by: Randy Dunlap
    Acked-by: Dave Airlie
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Blackfin BF54x framebuffer device driver for a SHARP LQ043T1DG01 TFT LCD

    [adaplas]
    Add 'fb' suffix to driver name.
    Move Makefile entry under platform device section

    Signed-off-by: Michael Hennerich
    Signed-off-by: Bryan Wu
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Hennerich
     
  • Add logo.nologo kernel boot option to disable the logo in order to provide
    more screen space for kernel messages; especially useful when debugging and
    screen space is more critical.

    newport_con driver changes are untested.

    [akpm@linux-foundation.org: cleanups, coding-style fixes]
    Signed-off-by: Randy Dunlap
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Add error messages to the probe call.

    [adaplas]
    On failure, return actual error value instead of -ENXIO.

    Signed-off-by: Maciej W. Rozycki
    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Maciej W. Rozycki
     
  • If the i2c ports are to be reversed, I2C_CLASS_HWMON assignment must also be
    reversed.

    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Antonino A. Daplas
     
  • Various console drivers are able to resize the screen via the con_resize()
    hook. This hook is also visible in userspace via the TIOCWINSZ, VT_RESIZE and
    VT_RESIZEX ioctl's. One particular utility, SVGATextMode, expects that
    con_resize() of the VGA console will always return success even if the
    resulting screen is not compatible with the hardware. However, this
    particular behavior of the VGA console, as reported in Kernel Bugzilla Bug
    7513, can cause undefined behavior if the user starts with a console size
    larger than 80x25.

    To work around this problem, add an extra parameter to con_resize(). This
    parameter is ignored by drivers except for vgacon. If this parameter is
    non-zero, then the resize request came from a VT_RESIZE or VT_RESIZEX ioctl
    and vgacon will always return success. If this parameter is zero, vgacon will
    return -EINVAL if the requested size is not compatible with the hardware. The
    latter is the more correct behavior.

    With this change, SVGATextMode should still work correctly while in-kernel and
    stty resize calls can expect correct behavior from vgacon.

    Signed-off-by: Antonino Daplas
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Antonino A. Daplas
     
  • Move video graphics driver configs to fix menus:

    Fix FB_PMAGB_B to depend on FB so that the FB menus remain
    listed in order and indented correctly.
    Fix FB_IBM_GXT4500 to depend on FB so that the FB menus remain
    listed in order and indented correctly.
    The OMAP FB drivers still muck up the FB menu a bit, so I put
    OMAP drivers at the end of the FB menu.

    Signed-off-by: Randy Dunlap
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Intel FB: allow odd- and even-field-first in interlaced modes, and
    proper sync to vertical retrace

    Signed-off-by: Krzysztof Halasa
    Cc: "Antonino A. Daplas"
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Halasa
     
  • Intel FB: the chip adds two halflines automatically in interlaced mode,
    force even line count for the right timings.

    Signed-off-by: Krzysztof Halasa
    Cc: "Antonino A. Daplas"
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Halasa
     
  • Intel FB: obvious changes and corrections

    Signed-off-by: Krzysztof Halasa
    Cc: "Antonino A. Daplas"
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Halasa
     
  • Intel FB: whitespace, bracket and other clean-ups

    Signed-off-by: Krzysztof Halasa
    Cc: "Antonino A. Daplas"
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Krzysztof Halasa
     
  • Add error messages to the probe call.

    While they may rarely trigger, they may be useful when something weird is
    going on. Also this is good style.

    [akpm@linux-foundation.org: remove unneeded initialisation]
    Signed-off-by: Maciej W. Rozycki
    Cc: Mariusz Kozlowski
    Cc: Ralf Baechle
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Maciej W. Rozycki