09 Feb, 2010

3 commits

  • Some servers hardcode an edid in rom so that they will
    work properly with KVMs. This is a port of the relevant
    code from the ddx.

    [airlied: reworked to validate edid at boot stage - and
    remove special quirk, if there is a valid EDID in the BIOS rom
    we'll just try and use it.]

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Some servers have two VGA ports but only report
    one in the bios connector tables. On these systems
    always set up the TV DAC so that it displays properly
    even if the bios is wrong.

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • wire hw i2c support into radeon i2c algo.

    fixes merged:
    - handle bus probing correctly
    - use meaningful error numbers
    - abort if transaction fails
    - The line mapping is different depending on the asic.
    - protect hw i2c engine with a mutex
    - rs300 doesn't have a pin select bit
    - r200 has a different pin select setup

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     

05 Feb, 2010

11 commits


01 Feb, 2010

16 commits


25 Jan, 2010

10 commits

  • This just adds a little more info to the warning for old -ati/mesa
    userspaces.

    Signed-off-by: Dave Airlie

    Dave Airlie
     
  • These printks aren't required anymore.

    Signed-off-by: Dave Airlie

    Dave Airlie
     
  • commit 731b5a15a3b1474a41c2ca29b4c32b0f21bc852e
    Author: James Simmons
    Date: Thu Oct 29 20:39:07 2009 +0000

    drm/kms: properly handle fbdev blanking

    uses DRM_MODE_DPMS_ON for FB_BLANK_NORMAL, but DRM_MODE_DPMS_ON
    is actually for turning output on instead of blank.

    This makes fb blank broken on my T61, it put LVDS on but leave
    pipe disabled which made screen totally white or caused some
    'burning' effect.

    [airlied: James objects to this but at this point in 2.6.33,
    I can't see a patch that will fix this properly like he wants coming
    in time and otherwise this is a regression - proper fix for 2.6.34
    hopefully.]

    Cc: James Simmons
    Signed-off-by: Zhenyu Wang
    Signed-off-by: Dave Airlie

    Zhenyu Wang
     
  • This is the least invasive fix without migrating the radeon driver
    to pm_ops from what I can see. We just always migrate VRAM objects
    on IGPs for now and we can fix it up later to migrate depending
    on STR vs STD.

    Signed-off-by: Dave Airlie

    Dave Airlie
     
  • Use VRAM whenever there is free space for DMA buffers,
    but use system GMR memory if using VRAM would cause an eviction.

    This significantly reduces the guest system memory usage for
    VMs with a large amount of VRAM allocated.

    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • This is needed to fix a vmwgfx memory usage bug.

    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • * korg/drm-radeon-next:
    drm/radeon/kms: fix legacy get_engine/memory clock
    drm/radeon/kms/atom: atom parser fixes
    drm/radeon/kms: clean up atombios pll code
    drm/radeon/kms: clean up pll struct
    drm/radeon/kms/atom: fix crtc lock ordering
    drm/radeon: r6xx/r7xx possible security issue, system ram access
    drm/radeon/kms: r600/r700 don't test ib if ib initialization fails
    drm/radeon/kms: Forbid creation of framebuffer with no valid GEM object
    drm/radeon/kms: r600 handle irq vector ring overflow
    drm/radeon/kms: r600/r700 don't process IRQ if not initialized
    drm/radeon/kms: r600/r700 disable irq at suspend
    drm/radeon/kms/r4xx: cleanup atom path
    drm/radeon/kms: fix atombios_crtc_set_base
    drm/radeon/kms/atom: upstream parser updates
    drm/radeon/kms/atom: fix some parser bugs
    drm/radeon/kms: fix hardcoded mmio size in register functions
    drm/radeon/kms/r100: fix bug in CS parser
    drm/radeon/kms/r200: fix bug in CS parser
    drm/radeon/kms/r200: fix bug in CS parser

    Dave Airlie
     
  • * 'nouveau/for-airlied' of ../drm-nouveau-next:
    drm/nv50: prevent switching off SOR when in use for DVI-over-DP
    drm/nv50: fail auxch transaction if reply count not what we expect
    drm/nouveau: fix failure path if userspace specifies no valid memtypes
    drm/nouveau: report LVDS as disconnected if lid closed
    drm/nv50: prevent accidently turning off encoders we're actually using
    drm/nv50: fix alignment of per-channel fifo cache
    drm/nouveau: Evict buffers in VRAM before freeing sgdma
    drm/nouveau: Acknowledge DMA_VTX_PROTECTION PGRAPH interrupts
    drm/nouveau: fix thinko in nv04_instmem.c
    drm/nouveau: fix a race condition in nouveau_dma_wait()

    Dave Airlie
     
  • Resending this with Thomas Hellstrom's signoff for merging into 2.6.33

    ttm_bo_delayed_delete has a race condition, because after we do:
    kref_put(&nentry->list_kref, ttm_bo_release_list);

    we are not holding the list lock and not holding any reference to
    objects, and thus every bo in the list can be removed and freed at
    this point.

    However, we then use the next pointer we stored, which is not guaranteed
    to be valid.

    This was apparently the cause of some Nouveau oopses I experienced.

    This patch rewrites the function so that it keeps the reference to nentry
    until nentry itself is freed and we already got a reference to nentry->next.

    v2 updated by me according to Thomas Hellstrom's feedback.
    v3 proposed by Thomas Hellstrom. Commit comment updated by me.

    Both updates fixed minor efficiency/style issues only and all three versions
    should be correct.

    Signed-off-by: Luca Barbieri
    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Luca Barbieri
     
  • Another hack because of us exposing each encoder block's function as
    an encoder rather than exposing a single encoder that deals with them
    all.

    A proper fix will come, it's just rather invasive so this hack will
    do until then.

    Signed-off-by: Ben Skeggs

    Ben Skeggs