lkml.org 
[lkml]   [2009]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/3] VGA arbiter implementation (v2)
    Date
    Hi,

    Following is v2 of the set. It contains some minor clean ups and the additions
    from Dave, mostly related with DRM.

    I just reorganized a little the ideas which everyone sent and summarized them
    here. The basically TODO is:

    - DRM hook to disable IRQ when arbiter is on action is done. What else we need
    on DRM department (besides the hook usage that Dave is cooking)? That's a
    preliminary here:
    http://people.freedesktop.org/~airlied/vgaarb/0002-drm-add-support-to-drm-for-VGA-arbitration.patch
    - make a PCI_COMMAND lock to deal with hotplug cards on drivers/pci. Also is
    it need some spinlock to deal with bridges? (Waiting Jesse's opinion).
    - know exactly if VGA on/off is enough and remove the just I/O or just memory
    granularity. Alan states that it would reduce some deadlock.
    - Change this hunk bellow:

    +             init_waitqueue_entry(&wait, current);
    +             add_wait_queue(&vga_wait_queue, &wait);
    +             set_current_state(interruptible ?
    +                               TASK_INTERRUPTIBLE :
    +                               TASK_UNINTERRUPTIBLE);
    +             if (signal_pending(current)) {
    +                     rc = -EINTR;
    +                     break;
    +             }
    +             schedule();
    +             remove_wait_queue(&vga_wait_queue, &wait);
    +             set_current_state(TASK_RUNNING);

    by something like:

    +        wait_event_interruptible(...)

    it's Alan's comment. Does it seems doable to everyone?


    For testing purposes, I'm using posttool:
    http://cgit.freedesktop.org/~airlied/posttool/

    which has the following dependencies:
    http://cgit.freedesktop.org/~vignatti/libx86/
    http://cgit.freedesktop.org/~vignatti/libpciaccess/ (vgaarb branch)


    Please, comment on and send the feedbacks. Thanks,

    Tiago


    Dave Airlie (1):
    drm: add support to drm for VGA arbitration.

    Tiago Vignatti (2):
    vga: implements VGA arbitration on Linux
    vga: drops a documentation regarding the VGA arbiter

    Documentation/vgaarbiter.txt | 197 ++++++
    drivers/gpu/Makefile | 2 +-
    drivers/gpu/drm/drm_irq.c | 24 +
    drivers/gpu/drm/i915/i915_dma.c | 6 +
    drivers/gpu/drm/i915/i915_reg.h | 1 +
    drivers/gpu/drm/i915/intel_display.c | 17 +
    drivers/gpu/drm/i915/intel_drv.h | 1 +
    drivers/gpu/drm/radeon/r100.c | 9 +
    drivers/gpu/drm/radeon/radeon.h | 2 +
    drivers/gpu/drm/radeon/radeon_asic.h | 9 +
    drivers/gpu/drm/radeon/radeon_device.c | 5 +-
    drivers/gpu/vga/Kconfig | 10 +
    drivers/gpu/vga/Makefile | 1 +
    drivers/gpu/vga/vgaarb.c | 1116 ++++++++++++++++++++++++++++++++
    drivers/video/Kconfig | 2 +
    include/drm/drmP.h | 3 +
    include/linux/vgaarb.h | 170 +++++
    17 files changed, 1573 insertions(+), 2 deletions(-)
    create mode 100644 Documentation/vgaarbiter.txt
    create mode 100644 drivers/gpu/vga/Kconfig
    create mode 100644 drivers/gpu/vga/Makefile
    create mode 100644 drivers/gpu/vga/vgaarb.c
    create mode 100644 include/linux/vgaarb.h

    --
    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: 2009-07-16 17:55    [W:0.025 / U:31.220 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site