1. 20 Jul, 2010 1 commit
  2. 01 Jul, 2010 1 commit
    • Dave Airlie's avatar
      fb: fix colliding defines for fb flags. · b26c9497
      Dave Airlie authored
      When I added the flags I must have been using a 25 line terminal and missed the following flags.
      The collided with flag has one user in staging despite being in-tree for 5 years.
      I'm happy to push this via my drm tree unless someone really wants to do it.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Cc: stable@kernel.org
  3. 28 May, 2010 1 commit
  4. 25 May, 2010 1 commit
  5. 18 May, 2010 3 commits
  6. 01 Mar, 2010 1 commit
    • Dave Airlie's avatar
      vga_switcheroo: initial implementation (v15) · 6a9ee8af
      Dave Airlie authored
      Many new laptops now come with 2 gpus, one to be used for low power
      modes and one for gaming/on-ac applications. These GPUs are typically
      wired to the laptop panel and VGA ports via a multiplexer unit which
      is controlled via ACPI methods.
      4 combinations of systems typically exist - with 2 ACPI methods.
      Intel/ATI - Lenovo W500/T500 - use ATPX ACPI method
      ATI/ATI - some ASUS - use ATPX ACPI Method
      Intel/Nvidia - - use _DSM ACPI method
      Nvidia/Nvidia -  - use _DSM ACPI method.
      This patch adds support for the ATPX method and initial bits
      for the _DSM methods that need to written by someone with
      access to the hardware.
      Add a proper non-debugfs interface - need to get some proper
      testing first.
      v2: add power up/down support for both devices
      on W500 puts i915/radeon into D3 and cuts power to radeon.
      v3: redo probing methods, no DMI list, drm devices call to
      register with switcheroo, it tries to find an ATPX method on
      any device and once there is two devices + ATPX it inits the
      v4: ATPX msg handling using buffers - should work on more machines
      v5: rearchitect after more mjg59 discussion - move ATPX handling to
          radeon driver.
      v6: add file headers + initial nouveau bits (to be filled out).
      v7: merge delayed switcher code.
      v8: avoid suspend/resume of gpu that is off
      v9: rearchitect - mjg59 is always right. - move all ATPX code to
      radeon, should allow simpler DSM also proper ATRM handling
      v10: add ATRM support for radeon BIOS, add mutex to lock vgasr_priv
      v11: fix bug in resuming Intel for 2nd time.
      v12: start fixing up nvidia code blindly.
      v13: blindly guess at finishing nvidia code
      v14: remove radeon audio hacks - fix up intel resume more like upstream
      v15: clean up printks + remove unnecessary igd/dis pointers
      mount debugfs
      /sys/kernel/debug/vgaswitcheroo/switch - should exist if ATPX detected
       + 2 cards.
      DIS - immediate change to discrete
      IGD - immediate change to IGD
      DDIS - delayed change to discrete
      DIGD - delayed change to IGD
      ON - turn on not in use
      OFF - turn off not in use
      Tested on W500 (Intel/ATI) and T500 (Intel/ATI)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
  7. 04 Dec, 2009 1 commit
  8. 12 Nov, 2009 1 commit
  9. 11 Sep, 2009 1 commit
  10. 01 Jul, 2009 1 commit
    • Krzysztof Helt's avatar
      fbdev: add mutex for fb_mmap locking · 537a1bf0
      Krzysztof Helt authored
      Add a mutex to avoid a circular locking problem between the mm layer
      semaphore and fbdev ioctl mutex through the fb_mmap() call.
      Also, add mutex to all places where smem_start and smem_len fields change
      so the mutex inside the fb_mmap() is actually used.  Changing of these
      fields before calling the framebuffer_register() are not mutexed.
      This is 2.6.31 material.  It removes one lockdep (fb_mmap() and
      register_framebuffer()) but there is still another one (fb_release() and
      register_framebuffer()).  It also cleans up handling of the smem_start and
      smem_len fields used by mutexed section of the fb_mmap().
      Signed-off-by: default avatarKrzysztof Helt <krzysztof.h1@wp.pl>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
      Cc: <stable@kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
  11. 17 Jun, 2009 2 commits
  12. 13 Apr, 2009 1 commit
  13. 01 Apr, 2009 2 commits
  14. 05 Feb, 2009 1 commit
    • Andrea Righi's avatar
      fbmem: don't call copy_from/to_user() with mutex held · 1f5e31d7
      Andrea Righi authored
      Avoid calling copy_from/to_user() with fb_info->lock mutex held in fbmem
      fb_mmap() is called under mm->mmap_sem (A) held, that also acquires
      fb_info->lock (B); fb_ioctl() takes fb_info->lock (B) and does
      copy_from/to_user() that might acquire mm->mmap_sem (A), causing a
      NOTE: it doesn't push down the fb_info->lock in each own driver's
      fb_ioctl(), so there are still potential deadlocks elsewhere.
      Signed-off-by: default avatarAndrea Righi <righi.andrea@gmail.com>
      Cc: Dave Jones <davej@redhat.com>
      Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
      Cc: Johannes Weiner <hannes@saeurebad.de>
      Cc: Krzysztof Helt <krzysztof.h1@wp.pl>
      Cc: Harvey Harrison <harvey.harrison@gmail.com>
      Cc: Stefan Richter <stefanr@s5r6.in-berlin.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
  15. 16 Jan, 2009 1 commit
  16. 22 Dec, 2008 1 commit
  17. 20 Oct, 2008 1 commit
  18. 20 Aug, 2008 1 commit
    • Ian Campbell's avatar
      fbdefio: add set_page_dirty handler to deferred IO FB · d847471d
      Ian Campbell authored
      Fixes kernel BUG at lib/radix-tree.c:473.
      Previously the handler was incidentally provided by tmpfs but this was
      removed with:
        commit 14fcc23f
        Author: Hugh Dickins <hugh@veritas.com>
        Date:   Mon Jul 28 15:46:19 2008 -0700
          tmpfs: fix kernel BUG in shmem_delete_inode
      relying on this behaviour was incorrect in any case and the BUG also
      appeared when the device node was on an ext3 filesystem.
      v2: override a_ops at open() time rather than mmap() time to minimise
      races per AKPM's concerns.
      Signed-off-by: Ian Campbell's avatarIan Campbell <ijc@hellion.org.uk>
      Cc: Jaya Kumar <jayakumar.lkml@gmail.com>
      Cc: Nick Piggin <npiggin@suse.de>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Hugh Dickins <hugh@veritas.com>
      Cc: Johannes Weiner <hannes@saeurebad.de>
      Cc: Jeremy Fitzhardinge <jeremy@goop.org>
      Cc: Kel Modderman <kel@otaku42.de>
      Cc: Markus Armbruster <armbru@redhat.com>
      Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
      Cc: <stable@kernel.org> [14fcc23f
       is in and]
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
  19. 24 Jul, 2008 2 commits
  20. 28 Apr, 2008 1 commit
    • Anton Vorontsov's avatar
      fb: add support for foreign endianness · e4c690e0
      Anton Vorontsov authored
      Add support for the framebuffers with non-native endianness.  This is done via
      FBINFO_FOREIGN_ENDIAN flag that will be used by the drivers.  Depending on the
      host endianness this flag will be overwritten by FBINFO_BE_MATH internal flag,
      or cleared.
      Tested to work on MPC8360E-RDK (BE) + Fujitsu MINT framebuffer (LE).
      Signed-off-by: default avatarAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: "Antonino A. Daplas" <adaplas@pol.net>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: <Valdis.Kletnieks@vt.edu>
      Cc: Clemens Koller <clemens.koller@anagramm.de>
      Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
  21. 16 Oct, 2007 3 commits
  22. 17 Jul, 2007 2 commits
  23. 01 Jun, 2007 1 commit
  24. 09 May, 2007 1 commit
  25. 08 May, 2007 8 commits