1. 22 1月, 2015 1 次提交
    • B
      drm/nouveau: remove symlinks, move core/ to nvkm/ (no code changes) · c39f472e
      Ben Skeggs 提交于
      The symlinks were annoying some people, and they're not used anywhere
      else in the kernel tree.  The include directory structure has been
      changed so that symlinks aren't needed anymore.
      
      NVKM has been moved from core/ to nvkm/ to make it more obvious as to
      what the directory is for, and as some minor prep for when NVKM gets
      split out into its own module (virt) at a later date.
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      c39f472e
  2. 10 8月, 2014 1 次提交
  3. 11 6月, 2014 2 次提交
  4. 26 3月, 2014 1 次提交
  5. 23 1月, 2014 2 次提交
  6. 08 11月, 2013 5 次提交
  7. 26 4月, 2013 1 次提交
  8. 20 2月, 2013 2 次提交
    • B
    • M
      drm/nouveau/pbus: add a PBUS subdev that hands IRQs to the right subdevs · a10220bb
      Martin Peres 提交于
      We are going to use PTHERM's IRQs for thermal monitoring but we need to route
      them first.
      
      On nv31-50, PBUS's IRQ line is shared with GPIOs IRQs.
      
      It seems like nv10-31 GPIO interruptions aren't well handled. I kept the
      original behaviour but it is wrong and may lead to an IRQ storm.
      
      Since we enable all PBUS IRQs, we need a way to avoid being stormed if we
      don't handle them. The solution I used was to mask the IRQs that have not been
      handled. This will also print one message in the logs to let us know.
      
      v2: drop the shared intr handler because of was racy
      v3: style fixes
      v4: drop a useless construct in the chipset-dependent INTR
      v5: add BUS to the disable mask
      v6 (Ben Skeggs):
      - general tidy to match the rest of the driver's style
      - nva3->nvc0, nva3 can be serviced just fine with nv50.c, rnndb even notes
        that the THERM_ALARM bit got left in the hw until fermi anyway.. so, it's
        not going to conflict
      - removed the peephole and user stuff, for the moment.. will handle them
        later if we find a good reason to actually care..
      - limited INTR_EN to just what we can handle for now, mostly to prevent
        spam of unknown status bits (seen on at least nv4x)
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      Signed-off-by: NMartin Peres <martin.peres@labri.fr>
      a10220bb
  9. 29 11月, 2012 1 次提交
  10. 03 10月, 2012 12 次提交
    • B
      drm/nouveau/device: include the official chipset names · 2094dd82
      Ben Skeggs 提交于
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      2094dd82
    • B
      drm/nouveau: port all engines to new engine module format · ebb945a9
      Ben Skeggs 提交于
      This is a HUGE commit, but it's not nearly as bad as it looks - any problems
      can be isolated to a particular chipset and engine combination.  It was
      simply too difficult to port each one at a time, the compat layers are
      *already* ridiculous.
      
      Most of the changes here are simply to the glue, the process for each of the
      engine modules was to start with a standard skeleton and copy+paste the old
      code into the appropriate places, fixing up variable names etc as needed.
      
      v2: Marcin Slusarz <marcin.slusarz@gmail.com>
      - fix find/replace bug in license header
      
      v3: Ben Skeggs <bskeggs@redhat.com>
      - bump indirect pushbuf size to 8KiB, 4KiB barely enough for userspace and
        left no space for kernel's requirements during GEM pushbuf submission.
      - fix duplicate assignments noticed by clang
      
      v4: Marcin Slusarz <marcin.slusarz@gmail.com>
      - add sparse annotations to nv04_fifo_pause/nv04_fifo_start
      - use ioread32_native/iowrite32_native for fifo control registers
      
      v5: Ben Skeggs <bskeggs@redhat.com>
      - rebase on v3.6-rc4, modified to keep copy engine fix intact
      - nv10/fence: unmap fence bo before destroying
      - fixed fermi regression when using nvidia gr fuc
      - fixed typo in supported dma_mask checking
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      ebb945a9
    • B
      drm/nouveau/instmem: completely new implementation, as a subdev module · 3863c9bc
      Ben Skeggs 提交于
      v2 (Ben Skeggs):
      - some fixes for 64KiB PAGE_SIZE
      - fix porting issues in (currently unused) nv41/nv44 pciegart code
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      3863c9bc
    • B
      861d2107
    • B
      drm/nouveau/timer: port to subdev interfaces · 5a5c7432
      Ben Skeggs 提交于
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      5a5c7432
    • B
      drm/nouveau/mc: port to subdev interfaces · 7d9115de
      Ben Skeggs 提交于
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      7d9115de
    • B
      drm/nouveau: implement devinit subdev, and new init table parser · cb75d97e
      Ben Skeggs 提交于
      v2:
      - make sure not to execute display scripts unless resuming
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      cb75d97e
    • B
      drm/nouveau/clk: implement stub clock subdev · 8aceb7de
      Ben Skeggs 提交于
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      8aceb7de
    • B
      drm/nouveau/i2c: port to subdev interfaces · 4196faa8
      Ben Skeggs 提交于
      v2/v3: Ben Skeggs <bskeggs@redhat.com>
      - fix typo in default bus selection
      - fix accidental loss of destructor
      
      v4: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
      - fix typo causing incorrect default i2c port settings when no BMP data
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      4196faa8
    • B
      drm/nouveau/gpio: port gpio to subdev interfaces · e0996aea
      Ben Skeggs 提交于
      v2: Ben Skeggs <bskeggs@redhat.com>
      - rebase on top of v3.6-rc6 with gpio reset patch integrated already
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      e0996aea
    • B
      drm/nouveau/bios: pull in basic vbios subdev, more to come later · 70c0f263
      Ben Skeggs 提交于
      v2: Ben Skeggs <bskeggs@redhat.com>
      - use unaligned macros to access vbios image
      - endianness fixes
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      70c0f263
    • B
      drm/nouveau/core: pull in most of the new core infrastructure · 9274f4a9
      Ben Skeggs 提交于
      This commit provides most of the infrastructure to support a major overhaul
      of Nouveau's internals coming in the following commits.  This work aims to
      take all the things we've learned over the last several years, and turn that
      into a cleaner architecture that's more maintainable going forward.
      
      RAMHT and MM bits of the new core have been left out for the moment, and
      will be pulled in as I go through the process of porting the code to
      become either subdev or engine modules.
      
      There are several main goals I wanted to achieve through this work:
      
      -- Reduce complexity
      
      The goal here was to make each component of the driver as independent as
      possible, which will ease maintainability and readability, and provide a
      good base for resetting locked up GPU units in the future.
      
      -- Better tracking of GPU units that are required at any given time
      
      This is for future PM work, we'll be able to tell exactly what parts of the
      GPU we need powered at any given point (etc).
      
      -- Expose all available NVIDIA GPUs to the client
      
      In order to support things such as multi-GPU channels, we want to be able
      to expose all the NVIDIA GPUs to the client over a single file descriptor
      so it can send a single push buffer to multiple GPUs.
      
      -- Untangle the core hardware support code from the DRM implementation
      
      This happened initially as an unexpected side-effect of developing the
      initial core infrastructure in userspace, but it turned into a goal of
      the whole project.  Initial benefits will be the availablility of a
      number of userspace tools and tests using the same code as the driver
      itself, but will also be important as I look into some virtualisation
      ideas.
      
      v2: Ben Skeggs <bskeggs@redhat.com>
      - fix duplicate assignments noticed by clang
      - implement some forgotten yelling in error path
      - ensure 64-bit engine mask is used everywhere
      
      v3: Marcin Slusarz <marcin.slusarz@gmail.com>
      - sparse fixes
      - inline nv_printk into nv_assert to prevent recursive inlining issues
      
      v4: Ben Skeggs <bskeggs@redhat.com>
      - fixed minor memory leak on gpuobj destruction
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      9274f4a9
  11. 15 6月, 2009 1 次提交
    • J
      drm/radeon: introduce kernel modesetting for radeon hardware · 771fe6b9
      Jerome Glisse 提交于
      Add kernel modesetting support to radeon driver, use the ttm memory
      manager to manage memory and DRM/GEM to provide userspace API.
      In order to avoid backward compatibility issue and to allow clean
      design and code the radeon kernel modesetting use different code path
      than old radeon/drm driver.
      
      When kernel modesetting is enabled the IOCTL of radeon/drm
      driver are considered as invalid and an error message is printed
      in the log and they return failure.
      
      KMS enabled userspace will use new API to talk with the radeon/drm
      driver. The new API provide functions to create/destroy/share/mmap
      buffer object which are then managed by the kernel memory manager
      (here TTM). In order to submit command to the GPU the userspace
      provide a buffer holding the command stream, along this buffer
      userspace have to provide a list of buffer object used by the
      command stream. The kernel radeon driver will then place buffer
      in GPU accessible memory and will update command stream to reflect
      the position of the different buffers.
      
      The kernel will also perform security check on command stream
      provided by the user, we want to catch and forbid any illegal use
      of the GPU such as DMA into random system memory or into memory
      not owned by the process supplying the command stream. This part
      of the code is still incomplete and this why we propose that patch
      as a staging driver addition, future security might forbid current
      experimental userspace to run.
      
      This code support the following hardware : R1XX,R2XX,R3XX,R4XX,R5XX
      (radeon up to X1950). Works is underway to provide support for R6XX,
      R7XX and newer hardware (radeon from HD2XXX to HD4XXX).
      
      Authors:
          Jerome Glisse <jglisse@redhat.com>
          Dave Airlie <airlied@redhat.com>
          Alex Deucher <alexdeucher@gmail.com>
      Signed-off-by: NJerome Glisse <jglisse@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      Signed-off-by: NAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      771fe6b9
  12. 14 7月, 2008 1 次提交
    • D
      drm: reorganise drm tree to be more future proof. · c0e09200
      Dave Airlie 提交于
      With the coming of kernel based modesetting and the memory manager stuff,
      the everything in one directory approach was getting very ugly and
      starting to be unmanageable.
      
      This restructures the drm along the lines of other kernel components.
      
      It creates a drivers/gpu/drm directory and moves the hw drivers into
      subdirectores. It moves the includes into an include/drm, and
      sets up the unifdef for the userspace headers we should be exporting.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      c0e09200
  13. 02 1月, 2006 1 次提交
  14. 11 11月, 2005 1 次提交
  15. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4