1. 28 8月, 2015 1 次提交
    • B
      drm/nouveau/nvif: simplify and tidy library interfaces · a01ca78c
      Ben Skeggs 提交于
      A variety of tweaks to the NVIF library interfaces, mostly ripping out
      things that turned out to be not so useful.
      
      - Removed refcounting from nvif_object, callers are expected to not be
        stupid instead.
      - nvif_client is directly reachable from anything derived from nvif_object,
        removing the need for heuristics to locate it
      - _new() versions of interfaces, that allocate memory for the object
        they construct, have been removed.  The vast majority of callers used
        the embedded _init() interfaces.
      - No longer storing constructor arguments (and the data returned from
        nvkm) inside nvif_object, it's more or less unused and just wastes
        memory.
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      a01ca78c
  2. 14 4月, 2015 1 次提交
    • A
      make RAM device optional · eaecf032
      Alexandre Courbot 提交于
      Having a RAM device does not make sense for chips like GK20A which have
      no dedicated video memory. The dummy RAM device that we used so far
      works as a temporary band-aid, but in the longer term it is desirable
      for the driver to be able to work without any kind of VRAM.
      
      This patch adds a few conditionals in places where a RAM device was
      assumed to be present and allows some more objects to be allocated from
      the TT domain, allowing Nouveau to handle GPUs for which
      pfb->ram == NULL.
      Signed-off-by: NAlexandre Courbot <acourbot@nvidia.com>
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      eaecf032
  3. 22 1月, 2015 2 次提交
  4. 24 12月, 2014 1 次提交
  5. 02 12月, 2014 5 次提交
  6. 21 11月, 2014 1 次提交
  7. 02 10月, 2014 1 次提交
  8. 30 9月, 2014 1 次提交
  9. 11 9月, 2014 1 次提交
  10. 02 9月, 2014 2 次提交
  11. 01 9月, 2014 2 次提交
  12. 15 8月, 2014 1 次提交
  13. 10 8月, 2014 13 次提交
  14. 17 6月, 2014 1 次提交
  15. 11 6月, 2014 2 次提交
  16. 10 6月, 2014 1 次提交
  17. 02 5月, 2014 1 次提交
  18. 02 4月, 2014 1 次提交
    • M
      drm: Replace crtc fb with primary plane fb (v3) · f4510a27
      Matt Roper 提交于
      Now that CRTC's have a primary plane, there's no need to track the
      framebuffer in the CRTC.  Replace all references to the CRTC fb with the
      primary plane's fb.
      
      This patch was generated by the Coccinelle semantic patching tool using
      the following rules:
      
              @@ struct drm_crtc C; @@
              -   (C).fb
              +   C.primary->fb
      
              @@ struct drm_crtc *C; @@
              -   (C)->fb
              +   C->primary->fb
      
      v3: Generate patch via coccinelle.  Actual removal of crtc->fb has been
          moved to a subsequent patch.
      
      v2: Fixup several lingering crtc->fb instances that were missed in the
          first patch iteration.  [Rob Clark]
      Signed-off-by: NMatt Roper <matthew.d.roper@intel.com>
      Reviewed-by: NRob Clark <robdclark@gmail.com>
      f4510a27
  19. 26 3月, 2014 2 次提交
    • M
      drm/nouveau: fix small thinko in vblank timestamping. · 6c3252bc
      Mario Kleiner 提交于
      *hpos horizontal scanout position doesn't need to be corrected
      to count the pixels between hactive end and htotal negative.
      That is only needed for *vpos to count lines until end of
      vblank for the vblank timestamping.
      
      Use hpos as is without correction.
      
      Removes occassional spikes in timestamps of up to 1 scanline
      duration, thereby improves accuracy to about +/- 2 usecs instead
      of +/- 12 usecs, wrt. true onset time as measured with high
      precision equipment on NV-A5.
      Signed-off-by: NMario Kleiner <mario.kleiner.de@gmail.com>
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      6c3252bc
    • A
      support for platform devices · 420b9469
      Alexandre Courbot 提交于
      Upcoming mobile Kepler GPUs (such as GK20A) use the platform bus instead
      of PCI to which Nouveau is tightly dependent. This patch allows Nouveau
      to handle platform devices by:
      
      - abstracting PCI-dependent functions that were typically used for
        resource querying and page mapping,
      - introducing a nv_device_is_pci() function that allows to make
        PCI-dependent code conditional,
      - providing a nouveau_drm_platform_probe() function that takes a GPU
        platform device to be probed.
      
      Core code as well as engine/subdev drivers are updated wherever possible
      to make use of these functions. Some older drivers are too dependent on
      PCI to be properly updated, but all newer code on which future chips may
      depend should at least be runnable with platform devices.
      Signed-off-by: NAlexandre Courbot <acourbot@nvidia.com>
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      420b9469