25 Jul, 2008

1 commit


28 Apr, 2008

2 commits

  • Fix bug identified by Daniel Marjamki: `m' is leaked on the error path.

    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=10452

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

    Andrew Morton
     
  • Don't treat valid modes returned by fb_find_mode() (best-fit modes, default
    modes or the first valid mode) as errors.

    Currently, when fb_find_mode() finds a valid mode belonging to one of the
    above-mentioned classes, uvesafb will ignore it and will try to set a 640x480
    video mode. The expected behaviour (introduced by this patch) would be to use
    the valid mode returned by fb_find_mode() instead.

    Signed-off-by: Michal Januszewski
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Januszewski
     

24 Feb, 2008

1 commit

  • Fix following warnings:
    WARNING: drivers/video/built-in.o(.text+0x7c64a): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/video/built-in.o(.text+0x7c65d): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/video/built-in.o(.text+0x7c679): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/video/built-in.o(.text+0x7c699): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/video/built-in.o(.text+0x7c69f): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/built-in.o(.text+0xa3676): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/built-in.o(.text+0xa3689): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/built-in.o(.text+0xa36a5): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/built-in.o(.text+0xa36c5): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: drivers/built-in.o(.text+0xa36cb): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: vmlinux.o(.text+0x4a079a): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: vmlinux.o(.text+0x4a07ad): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: vmlinux.o(.text+0x4a07c9): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: vmlinux.o(.text+0x4a07e9): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
    WARNING: vmlinux.o(.text+0x4a07ef): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan

    Remove __devinitdata annotation from the variable ypan.

    Signed-off-by: Sergio Luis
    Cc: Michal Januszewski
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sergio Luis
     

07 Feb, 2008

1 commit

  • Some cleanups in uvesafb:
    - The custom module_param() get/set functions don't need to be inlined
    since it is referred to via a pointer in a struct.
    - don't end a #define with a ';'
    - remove one of the single quote marks in "''ypan'"

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

    Randy Dunlap
     

15 Jan, 2008

1 commit

  • Mark uvesafb_init_mtrr() as __devinit since its caller is __devinit
    and since it accesses __devinitdata.

    WARNING: vmlinux.o(.text+0x4df80e): Section mismatch: reference to .init.data: (between 'uvesafb_init_mtrr' and 'uvesafb_show_vbe_ver')

    Variable 'blank' cannot be __devinitdata since it is referenced in an
    fb_ops method that could be called at any time.

    WARNING: vmlinux.o(.text+0x4dfc1e): Section mismatch: reference to .init.data:blank (between 'param_set_scroll' and 'vesa_setpalette')
    WARNING: vmlinux.o(.text+0x4dfc24): Section mismatch: reference to .init.data:blank (between 'param_set_scroll' and 'vesa_setpalette')

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

    Randy Dunlap
     

15 Nov, 2007

1 commit


17 Oct, 2007

1 commit

  • uvesafb is an enhanced version of vesafb. It uses a userspace helper (v86d)
    to execute calls to the x86 Video BIOS functions. The driver is not limited
    to any specific arch and whether it works on a given arch or not depends on
    that arch being supported by the userspace daemon. It has been tested on
    x86_32 and x86_64.

    A single BIOS call is represented by an instance of the uvesafb_ktask
    structure. This structure contains a buffer, a completion struct and a
    uvesafb_task substructure, containing the values of the x86 registers, a flags
    field and a field indicating the length of the buffer. Whenever a BIOS call
    is made in the driver, uvesafb_exec() builds a message using the uvesafb_task
    substructure and the contents of the buffer. This message is then assigned a
    random ack number and sent to the userspace daemon using the connector
    interface.

    The message's sequence number is used as an index for the uvfb_tasks array,
    which provides a mapping from the messages coming from userspace to the
    in-kernel uvesafb_ktask structs.

    The userspace daemon performs the requested operation and sends a reply in the
    form of a uvesafb_task struct and, optionally, a buffer. The seq and ack
    numbers in the reply should be exactly the same as those in the request.

    Each message from userspace is processed by uvesafb_cn_callback() and after
    passing a few sanity checks leads to the completion of a BIOS call request.

    Signed-off-by: Michal Januszewski
    Signed-off-by: Antonino Daplas
    Cc: Paul Mundt
    Cc: Paulo Marques
    Cc: "H. Peter Anvin"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Januszewski