1. 14 Nov, 2013 5 commits
    • Daniel Vetter's avatar
      drm/i915: Reject opening of pipe crc files for invalid pipes · 7eb1c496
      Daniel Vetter authored
      We don't init the lock nor set up all the other state. And it doesn't
      make sense anyway.
      
      This appeases lockdep when running the igt/drv_debugfs_reader test.
      Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      7eb1c496
    • Daniel Vetter's avatar
      drm/i915: Use for_each_pipe in intel_display_crc_init · b378360e
      Daniel Vetter authored
      We have a nice macro, so use it.
      Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      b378360e
    • Daniel Vetter's avatar
      drm/i915: Deprecated UMS support · b30324ad
      Daniel Vetter authored
      It's been 5 years since kms support was merged and roughly 4 years
      since UMS support was ripped out from userspace drivers.
      
      Thus far it's not been a big burden to keep the ums paths alive, and
      we've made some good progress in better separating it from the kms
      code by sprinkling DRIVER_MODESET checks all over the place.
      
      But now that the drm demidlayering is within reach this changes. I
      want to make the driver loading code more robust using devres.c and
      other cool tricks. But that doesn't work with ums due to the
      shadow-attach trick. Which means we either
      a) need to split out a complete ums codebase like radeon has
      b) kill it for good.
      
      The 2nd option is obviously much less work than the first, so I think
      it's time to test the waters and see how many people out there still
      use ums.
      
      I've decided that silently failing to initialize the driver (and not
      e.g. failing to load the module) is the right thing. That way we
      should only get reports from users that actually care about some ums
      features (like accelerated gl or support for secondary outputs).
      Everyone else will just fall back to the vesa X driver.
      
      For developers there's a small info level dmesg output.
      
      The plan is to drop this Kconfig option after 3.16 (so gives us 2 full
      releases) and then start killing code for real 2-3 releases
      afterwards. That should be more than enough time for users to pipe up.
      
      Of course if anyone does we need to revisit this plan and maybe go
      with option a) above.
      
      Also enable the KMS support by default in Kconfig and polish the help
      texts a bit.
      
      v2: Add the missing hunk of actual code changes. Oops. (Ville)
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Cc: Dave Airlie <airlied@gmail.com>
      Acked-by: default avatarDave Airlie <airlied@gmail.com>
      Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      b30324ad
    • Daniel Vetter's avatar
      drm/i915: Kill legeacy AGP for gen3 kms · 3bb6ce66
      Daniel Vetter authored
      Thus far we've tried to carefully work around the fact that old
      userspace relied on the AGP-backed legacy buffer mapping ioctls for a
      bit too long. But it's really horribly, and now some new users for it
      started to show up again:
      
      http://www.mail-archive.com/mesa-dev@lists.freedesktop.org/msg45547.html
      
      This uses drmAgpSize to figure out the GTT size, which is both the
      wrong thing to inquire and also might force us to keep this crap
      around for another few years.
      
      So I want to stop this particular zombie from raising ever again. Now
      it's only been 4 years since XvMC was fixed for gen3, so a bit early
      by the usual rules. But since Linus explicitly said that an ABI
      breakage only counts if someone actually observes it I want to tempt
      fate an accelarate the demise of AGP.
      
      We probably need to wait 2-3 kernel releases with this shipping until
      we go on a killing spree code-wise.
      
      v2: Remove intel_agp_enabled since it's unused (Ville).
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Cc: Dave Airlie <airlied@gmail.com>
      Acked-by: default avatarDave Airlie <airlied@gmail.com>
      Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      3bb6ce66
    • Daniel Vetter's avatar
      drm/i915: Make AGP=n work even on gen3 · ea8eea73
      Daniel Vetter authored
      Most platforms din't hit this condition, but if we want to allow
      building without agp we should also make this allowed on gen3.
      
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      ea8eea73
  2. 13 Nov, 2013 2 commits
  3. 12 Nov, 2013 2 commits
    • Mika Kuoppala's avatar
      drm/i915: add i915_get_reset_stats_ioctl · b6359918
      Mika Kuoppala authored
      This ioctl returns reset stats for specified context.
      
      The struct returned contains context loss counters.
      
      reset_count:    all resets across all contexts
      batch_active:   active batches lost on resets
      batch_pending:  pending batches lost on resets
      
      v2: get rid of state tracking completely and deliver only counts. Idea
          from Chris Wilson.
      
      v3: fix commit message
      
      v4: default context handled inside i915_gem_context_get_hang_stats
      
      v5: reset_count only for priviledged process
      
      v6: ctx=0 needs CAP_SYS_ADMIN for batch_* counters (Chris Wilson)
      
      v7: context hang stats never returns NULL
      
      v8: rebased on top of reworked context hang stats
          DRM_RENDER_ALLOW for ioctl
      
      v9: use DEFAULT_CONTEXT_ID. Improve comments for ioctl struct members
      Signed-off-by: default avatarMika Kuoppala <mika.kuoppala@intel.com>
      Cc: Ian Romanick <idr@freedesktop.org>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
      Reviewed-by: default avatarIan Romanick <ian.d.romanick@intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      b6359918
    • Mika Kuoppala's avatar
      drm/i915: add i915_reset_count · 2ac0f450
      Mika Kuoppala authored
      reset_counter will be incremented twice per successful
      reset. Odd values mean reset is in progress and even values
      mean that reset has completed.
      
      Reset status ioctl introduced in following commit
      needs to deliver global reset count to userspace so
      use reset_counter to derive the actual reset count
      for the gpu
      
      Note that reset in progress is enough to increment
      the counter.
      
      v2: wedged equals reset in progress (Daniel Vetter)
      
      v3: Fixed stale comments (Damien Lespiau)
      Signed-off-by: default avatarMika Kuoppala <mika.kuoppala@intel.com>
      Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      2ac0f450
  4. 11 Nov, 2013 2 commits
  5. 08 Nov, 2013 2 commits
    • Ville Syrjälä's avatar
      drm/i915: Make AGP support optional · 00fe639a
      Ville Syrjälä authored
      We only depend on the intel-gtt module for GTT frobbign on older gens.
      The intel_agp module is optional, except for UMS and some old XvMC
      userland on gen3. So make AGP support optional. As before, we will
      fail the i915 init for UMS and gen3 KMS the same as before if
      intel_agp isn't around.
      
      intel-gtt.c is left with a somewhat ugly ifdef mess, but I'm going
      to save that for a later cleaning.
      
      At least my gen2 still works with the patch and CONFIG_AGP=n.
      
      v2: Make i915 depend on X86 and PCI, and intel-gtt depend on PCI
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      00fe639a
    • Chon Ming Lee's avatar
      drm/i915/vlv: Rename VLV DPIO register to be more structure to match configdb document. · ab3c759a
      Chon Ming Lee authored
      Some VLV PHY/PLL DPIO registers have group/lane/channel access.  Current
      DPIO register definition doesn't have a structure way to break them
      down. As a result it is not easy to match the PHY/PLL registers with the
      configdb document.  Rename those registers based on the configdb for easy
      cross references, and without the need to check the offset in the header
      file.
      
      New format is as following.
      
      <platform name>_<DPIO component><optional lane #>_DW<dword # in the
      doc>_<optional channel #>
      
      For example,
      
      VLV_PCS_DW0 - Group access to PCS for lane 0 to 3 for PCS DWORD 0.
      VLV_PCS01_DW0_CH0 - PCS access to lane 0/1, channel 0 for PCS DWORD 0.
      
      Another example is
      
      VLV_TX_DW0 - Group access to TX lane 0 to 3 for TX DWORD 0
      VLV_TX0_DW0 - Refer to TX Lane 0 access only for TX DWORD 0.
      
      There is no functional change on this patch.
      
      v2: Rebase based on previous patch change.
      v3: There may be configdb different version that document the start DW
      differently. Add a comment to clarify.  Fix up some mismatch start DW
      for second PLL block. (Ville)
      Suggested-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarChon Ming Lee <chon.ming.lee@intel.com>
      Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      ab3c759a
  6. 07 Nov, 2013 8 commits
  7. 06 Nov, 2013 3 commits
  8. 05 Nov, 2013 5 commits
  9. 04 Nov, 2013 3 commits
    • Daniel Vetter's avatar
      drm/i915/ns2501: Rip out the reenable hack · c77ba21d
      Daniel Vetter authored
      With the change in the modeset sequence this shouldn't be required
      any more since the ->mode_set callback now gets called when the dvo
      port is fully up and running.
      
      Also limit the retry loop to 10 tries to avoid hanging the machine
      while holding important modeset locks.
      
      Cc: Thomas Richter <thor@math.tu-berlin.de>
      Tested-by: default avatarThomas Richter <thor@math.tu-berlin.de>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      c77ba21d
    • Daniel Vetter's avatar
      drm/i915/dvo: call ->mode_set callback only when the port is running · 48f34e10
      Daniel Vetter authored
      The ns2501 controller seems to need the dpll and dvo port to accept
      the timing update commands. Quick testing on my x30 here seems to
      indicate that other dvo controllers don't mind. So let's move the
      ->mode_set callback to a place where we have the port up and running
      already.
      Tested-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Tested-by: default avatarThomas Richter <thor@math.tu-berlin.de>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      48f34e10
    • Daniel Vetter's avatar
      Merge tag 'v3.12' into drm-intel-next · 7f16e5c1
      Daniel Vetter authored
      I want to merge in the new Broadwell support as a late hw enabling
      pull request. But since the internal branch was based upon our
      drm-intel-nightly integration branch I need to resolve all the
      oustanding conflicts in drm/i915 with a backmerge to make the 60+
      patches apply properly.
      
      We'll propably have some fun because Linus will come up with a
      slightly different merge solution.
      
      Conflicts:
      	drivers/gpu/drm/i915/i915_dma.c
      	drivers/gpu/drm/i915/i915_drv.c
      	drivers/gpu/drm/i915/intel_crt.c
      	drivers/gpu/drm/i915/intel_ddi.c
      	drivers/gpu/drm/i915/intel_display.c
      	drivers/gpu/drm/i915/intel_dp.c
      	drivers/gpu/drm/i915/intel_drv.h
      
      All rather simple adjacent lines changed or partial backports from
      -next to -fixes, with the exception of the thaw code in i915_dma.c.
      That one needed a bit of shuffling to restore the intent.
      
      Oh and the massive header file reordering in intel_drv.h is a bit
      trouble. But not much.
      
      v2: Also don't forget the fixup for the silent conflict that results
      in compile fail ...
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      7f16e5c1
  10. 03 Nov, 2013 3 commits
  11. 02 Nov, 2013 2 commits
  12. 01 Nov, 2013 3 commits
    • Ming Lei's avatar
      scripts/kallsyms: filter symbols not in kernel address space · f6537f2f
      Ming Lei authored
      This patch uses CONFIG_PAGE_OFFSET to filter symbols which
      are not in kernel address space because these symbols are
      generally for generating code purpose and can't be run at
      kernel mode, so we needn't keep them in /proc/kallsyms.
      
      For example, on ARM there are some symbols which may be
      linked in relocatable code section, then perf can't parse
      symbols any more from /proc/kallsyms, this patch fixes the
      problem (introduced b9b32bf7)
      
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: Michal Marek <mmarek@suse.cz>
      Signed-off-by: default avatarMing Lei <tom.leiming@gmail.com>
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Cc: stable@vger.kernel.org
      f6537f2f
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9581b7d2
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Two fixes:
      
         - Fix 'NMI handler took too long to run' false positives
      
           [ Genuine NMI overhead speedups will come for v3.13, this commit
             only fixes a measurement bug ]
      
         - Fix perf ring-buffer missed barrier causing (rare) ring-buffer data
           corruption on ppc64"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86: Fix NMI measurements
        perf: Fix perf ring buffer memory ordering
      9581b7d2
    • Linus Torvalds's avatar
      Merge tag 'usb-3.12-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 9119e33e
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here is a set of patches that revert all of the changes done to the
        pl2303 USB serial driver in the 3.12-rc timeframe, as it turns out
        they break some devices that work just fine on 3.11.  As it's not a
        good idea to break working systems, drop them all and they will be
        reworked for future kernel versions such that there is no breakage.
      
        I've also included a MAINTAINERS update for the USB serial subsystem
        and a new device id for the ftdi_sio driver as well"
      
      * tag 'usb-3.12-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        USB: serial: ftdi_sio: add id for Z3X Box device
        USB: Maintainers change for usb serial drivers
        Revert "USB: pl2303: restrict the divisor based baud rate encoding method to the "HX" chip type"
        Revert "usb: pl2303: fix+improve the divsor based baud rate encoding method"
        Revert "usb: pl2303: do not round to the next nearest standard baud rate for the divisor based baud rate encoding method"
        Revert "usb: pl2303: remove 500000 baud from the list of standard baud rates"
        Revert "usb: pl2303: move the two baud rate encoding methods to separate functions"
        Revert "usb: pl2303: increase the allowed baud rate range for the divisor based encoding method"
        Revert "usb: pl2303: also use the divisor based baud rate encoding method for baud rates < 115200 with HX chips"
        Revert "usb: pl2303: add two comments concerning the supported baud rates with HX chips"
        Revert "pl2303: simplify the else-if contruct for type_1 chips in pl2303_startup()"
        Revert "pl2303: improve the chip type information output on startup"
        Revert "pl2303: improve the chip type detection/distinction"
        Revert "USB: pl2303: distinguish between original and cloned HX chips"
      9119e33e