1. 31 3月, 2010 1 次提交
  2. 15 3月, 2010 2 次提交
  3. 25 2月, 2010 1 次提交
  4. 23 2月, 2010 2 次提交
  5. 20 2月, 2010 1 次提交
  6. 18 2月, 2010 1 次提交
    • J
      drm/radeon/kms: simplify memory controller setup V2 · d594e46a
      Jerome Glisse 提交于
      Get rid of _location and use _start/_end also simplify the
      computation of vram_start|end & gtt_start|end. For R1XX-R2XX
      we place VRAM at the same address of PCI aperture, those GPU
      shouldn't have much memory and seems to behave better when
      setup that way. For R3XX and newer we place VRAM at 0. For
      R6XX-R7XX AGP we place VRAM before or after AGP aperture this
      might limit to limit the VRAM size but it's very unlikely.
      For IGP we don't change the VRAM placement.
      
      Tested on (compiz,quake3,suspend/resume):
      PCI/PCIE:RV280,R420,RV515,RV570,RV610,RV710
      AGP:RV100,RV280,R420,RV350,RV620(RPB*),RV730
      IGP:RS480(RPB*),RS690,RS780(RPB*),RS880
      
      RPB: resume previously broken
      
      V2 correct commit message to reflect more accurately the bug
      and move VRAM placement to 0 for most of the GPU to avoid
      limiting VRAM.
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      d594e46a
  7. 11 2月, 2010 2 次提交
    • D
      drm/radeon/kms: set gart pages to invalid on unbind and point to dummy page · 82568565
      Dave Airlie 提交于
      this uses a new entrypoint to invalidate gart entries instead of using 0.
      Changed to rather than pointing to 0 address point empty entry to dummy
      page. This might help to avoid hard lockup if for some wrong
      reasons GPU try to access unmapped GART entry.
      
      I'm not 100% sure this is going to work, we probably need to allocate
      a dummy page and point all the GTT entries at it similiar to what AGP does.
      but we can test this first I suppose.
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      82568565
    • J
      drm/radeon/kms: r600/r700 command stream checker · 961fb597
      Jerome Glisse 提交于
      This patch add cs checker to r600/r700 hw. Command stream checking
      will rewrite some of the cs value in order to restrict GPU access
      to BO size. This doesn't break old userspace but just enforce safe
      value. It should break any things that was using the r600/r700 cs
      ioctl to do forbidden things (malicious software), though we are
      not aware of such things.
      
      Here is the list of thing we check :
      - enforcing resource size
      - enforcing color buffer slice tile max, will restrict cb access
      - enforcing db buffer slice tile max, will restrict db access
      
      We don't check for shader bigger than the BO in which they are
      supposed to be, such use would lead to GPU lockup and is harmless
      from security POV, as far as we can tell (note that even checking
      for this wouldn't prevent someone to write bogus shader that lead
      to lockup).
      
      This patch has received as much testing as humanly possible with
      old userspace to check that it didn't break such configuration.
      However not all the applications out there were tested, thus it
      might broke some odd, rare applications.
      
      [airlied: fix rules for cs checker for parallel builds]
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      961fb597
  8. 05 2月, 2010 2 次提交
  9. 01 2月, 2010 1 次提交
  10. 21 1月, 2010 2 次提交
  11. 14 1月, 2010 2 次提交
  12. 08 1月, 2010 1 次提交
  13. 16 12月, 2009 1 次提交
  14. 10 12月, 2009 1 次提交
  15. 04 12月, 2009 1 次提交
  16. 02 12月, 2009 4 次提交
    • J
      drm/radeon/kms: Rework radeon object handling · 4c788679
      Jerome Glisse 提交于
      The locking & protection of radeon object was somewhat messy.
      This patch completely rework it to now use ttm reserve as a
      protection for the radeon object structure member. It also
      shrink down the various radeon object structure by removing
      field which were redondant with the ttm information. Last it
      converts few simple functions to inline which should with
      performances.
      
      airlied: rebase on top of r600 and other changes.
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      4c788679
    • D
      drm/radeon/kms: add irq mitigation code for sw interrupt. · 1614f8b1
      Dave Airlie 提交于
      We really don't need to process every irq that comes in, we only
      really want to do SW irq processing when we are actually waiting for
      a fence to pass. I'm not 100% sure this is race free esp on non-MSI systems
      so it needs some testing.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      1614f8b1
    • A
      drm/radeon/kms: Add support for interrupts on r6xx/r7xx chips (v3) · d8f60cfc
      Alex Deucher 提交于
      This enables the use of interrupts on r6xx/r7xx hardware.
      Interrupts are implemented via a ring buffer.  The GPU adds
      interrupts vectors to the ring and the host reads them off
      in the interrupt handler.  The interrupt controller requires
      firmware like the CP.  This firmware must be installed and
      accessble to the firmware loader for interrupts to function.
      
      MSIs don't seem to work on my RS780.  They work fine on all
      my discrete cards.  I'm not sure about other RS780s or
      RS880s.  I've disabled MSIs on RS780 and RS880, but it would
      probably be worth checking on some other systems.
      
      v2 - fix some checkpatch.pl problems;
           re-read the disp int status reg if we restart the ih;
      
      v3 - remove the irq handler if r600_irq_init() fails;
           remove spinlock in r600_ih_ring_fini();
           move ih rb overflow check to r600_get_ih_wptr();
           move irq ack to separate function;
      Signed-off-by: NAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      d8f60cfc
    • D
      drm/radeon/kms: ignore unposted GPUs with no BIOS. · 72542d77
      Dave Airlie 提交于
      If we find a GPU but we can't find its BIOS and it isn't posted,
      then ignore it.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      72542d77
  17. 06 11月, 2009 1 次提交
  18. 04 11月, 2009 1 次提交
  19. 26 10月, 2009 1 次提交
  20. 08 10月, 2009 2 次提交
  21. 02 10月, 2009 5 次提交
  22. 29 9月, 2009 1 次提交
  23. 26 9月, 2009 1 次提交
  24. 21 9月, 2009 1 次提交
  25. 18 9月, 2009 2 次提交