1. 14 Jan, 2014 7 commits
    • Rashika's avatar
      drivers: gpu: Mark functions as static in ast_mode.c · 7f5ccd44
      Rashika authored
      Mark functions ast_set_sync_reg(), ast_set_dac_reg(),
      ast_set_start_address_crt1(), ast_crtc_init(), ast_encoder_init(),
      ast_connector_init(), ast_cursor_init(), ast_cursor_fini(),
      ast_show_cursor() and ast_hide_cursor() as static in drm/ast/ast_mode.c
      because they are not used outside this file.
      
      This eliminates the following warning in drm/ast/ast_mode.c:
      drivers/gpu/drm/ast/ast_mode.c:407:6: warning: no previous prototype for
      ‘ast_set_sync_reg’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:418:6: warning: no previous prototype for
      ‘ast_set_dac_reg’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:430:6: warning: no previous prototype for
      ‘ast_set_start_address_crt1’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:626:5: warning: no previous prototype for
      ‘ast_crtc_init’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:713:5: warning: no previous prototype for
      ‘ast_encoder_init’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:780:5: warning: no previous prototype for
      ‘ast_connector_init’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:813:5: warning: no previous prototype for
      ‘ast_cursor_init’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:850:6: warning: no previous prototype for
      ‘ast_cursor_fini’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:968:6: warning: no previous prototype for
      ‘ast_show_cursor’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_mode.c:979:6: warning: no previous prototype for
      ‘ast_hide_cursor’ [-Wmissing-prototypes]
      Signed-off-by: default avatarRashika Kheria <rashika.kheria@gmail.com>
      Reviewed-by: default avatarJosh Triplett <josh@joshtriplett.org>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      7f5ccd44
    • Rashika's avatar
      drivers: gpu: Mark function as static and remove unused function in ast_main.c · f6109803
      Rashika authored
      Mark function ast_bo_unref() as static because it is not used outside
      file ast_main.c and remove unused function ast_get_max_dclk() in
      ast_main.c.
      
      This eliminates the following warning in drm/ast/ast_main.c:
      drivers/gpu/drm/ast/ast_main.c:192:10: warning: no previous prototype
      for ‘ast_get_max_dclk’ [-Wmissing-prototypes]
      drivers/gpu/drm/ast/ast_main.c:452:6: warning: no previous prototype for
      ‘ast_bo_unref’ [-Wmissing-prototypes]
      Signed-off-by: default avatarRashika Kheria <rashika.kheria@gmail.com>
      Reviewed-by: default avatarJosh Triplett <josh@joshtriplett.org>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      f6109803
    • Rashika's avatar
      drivers: gpu: Include appropriate header file in drm_usb.c · 8eed55be
      Rashika authored
      Include appropriate header file include/drm/drm_usb.h in drm/drm_usb.c
      because functions drm_get_usb_dev(), drm_usb_init() and drm_usb_exit()
      have their prototype declarations in the header file.
      
      This eliminates the following warning in drm/drm_usb.c:
      drivers/gpu/drm/drm_usb.c:5:5: warning: no previous prototype for
      ‘drm_get_usb_dev’ [-Wmissing-prototypes]
      drivers/gpu/drm/drm_usb.c:61:5: warning: no previous prototype for
      ‘drm_usb_init’ [-Wmissing-prototypes]
      drivers/gpu/drm/drm_usb.c:75:6: warning: no previous prototype for
      ‘drm_usb_exit’ [-Wmissing-prototypes]
      Signed-off-by: default avatarRashika Kheria <rashika.kheria@gmail.com>
      Reviewed-by: default avatarJosh Triplett <josh@joshtriplett.org>
      Acked-by: default avatarMaarten Lankhorst <maarten.lankhorst@canonical.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      8eed55be
    • Daniel Vetter's avatar
      drm/gma500: Remove unused function declaration · c85dd51c
      Daniel Vetter authored
      Cc: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      c85dd51c
    • Daniel Vetter's avatar
      drm: store the gem vma offset manager in a typed pointer · b04a5906
      Daniel Vetter authored
      This was hidden in a generic void * dev->mm_private. But only ever
      used for gem. But thanks to this fake generic pretension no one
      noticed that Rob's drm drivers are now all broken.
      
      So just give the offset manager a type pointer and fix up msm, omapdrm
      and tilcdc.
      
      v2: Fixup compile fail.
      
      v3: Fixup rebase fail that David spotted.
      
      Cc: David Herrmann <dh.herrmann@gmail.com>
      Cc: Rob Clark <robdclark@gmail.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      b04a5906
    • Dave Airlie's avatar
      Merge tag 'vmwgfx-next-2014-01-13' of git://people.freedesktop.org/~thomash/linux into drm-next · faf096ff
      Dave Airlie authored
      Anyway, nothing big here, Three more code cleanup patches from Rashika
      Kheria, and one TTM/vmwgfx patch from me that tightens security around TTM
      objects enough for them to opened using prime objects from render nodes:
      
      Previously any client could access a shared buffer using the "name", also
      without actually opening it. Now a reference is required, and for render nodes
      such a reference is intended to only be obtainable using a prime fd.
      
      vmwgfx-next 2014-01-13 pull request
      
      * tag 'vmwgfx-next-2014-01-13' of git://people.freedesktop.org/~thomash/linux:
        drivers: gpu: Mark functions as static in vmwgfx_fence.c
        drivers: gpu: Mark functions as static in vmwgfx_buffer.c
        drivers: gpu: Mark functions as static in vmwgfx_kms.c
        drm/ttm: ttm object security fixes for render nodes
      faf096ff
    • Dave Airlie's avatar
      Merge tag 'ttm-next-2014-01-13' of git://people.freedesktop.org/~thomash/linux into drm-next · a095c60b
      Dave Airlie authored
      Some code cleanup by Rashika Keria,
      VM stuff for ttm:
      -Use PFNMAP instead of MIXEDMAP where possible for performance
      -Refuse to fault imported pages, an initial step to support dma-bufs
      better from within TTM.
      -Correctly set page mapping and -index members. These are needed in various
      places in the vm subsystem that we are not using yet, but plan to use soonish:
      For example unmap-mapping-range keeping COW pages, and dirty tracking
      fbdefio style, but also for PCI memory.
      
      ttm-next 2013-01-14 pull request
      
      * tag 'ttm-next-2014-01-13' of git://people.freedesktop.org/~thomash/linux:
        drivers: gpu: Remove unused function in ttm_lock.c
        drivers: gpu: Mark function as static in ttm_bo_util.c
        drivers: gpu: Mark function as static in ttm_bo.c
        drm/ttm: Correctly set page mapping and -index members
        drm/ttm: Refuse to fault (prime-) imported pages
        drm/ttm: Use VM_PFNMAP for shared bo maps
      a095c60b
  2. 13 Jan, 2014 4 commits
    • Martin Koegler's avatar
      drm/cirrus: Fix cirrus drm driver for fbdev + qemu · 99d4a8ae
      Martin Koegler authored
      Xorg fbdev driver requires smem_start/smem_len, otherwise
      it tries to map 0 bytes as video memory.
      
      Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=856760Signed-off-by: default avatarMartin Koegler <martin.koegler@chello.at>
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      99d4a8ae
    • Dave Airlie's avatar
      Merge branch 'exynos-drm-next' of... · ca2a2bb1
      Dave Airlie authored
      Merge branch 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next
      
      This pull request adds an anon file for exynos specific mmaper
      to resolve potential a dead lock issue pointed out by Al Viro,
      and fixes build break of drm-next.
      
      * 'exynos-drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm/exynos: fix build error caused by removed drm core macros
        drm/exynos: use a new anon file for exynos gem mmaper
      ca2a2bb1
    • Dave Airlie's avatar
      Merge branch 'drm-next-3.14-wip' of git://people.freedesktop.org/~agd5f/linux into drm-next · e95d9f95
      Dave Airlie authored
      This is the drm-next pull for radeon for 3.14. Highlights include:
      - dpm rework which fixes some issues and allows us to enable dpm by
      default on CIK parts
      - enable clockgating on CIK parts
      - pci config reset.  This is a bus-level chip reset that can be more
      reliable than soft reset in certain cases.  Disabled by default.  Enable
      with the hard_reset module option.
      - big endian rptr/wrptr update fixes
      - lots of debugfs improvements
      - some driver cleanup patches from Rashika Kheria
      - bug fixes
      
      * 'drm-next-3.14-wip' of git://people.freedesktop.org/~agd5f/linux: (50 commits)
        drm/radeon: implement pci config reset for CIK (v3)
        drm/radeon: implement pci config reset for SI (v2)
        drm/radeon: implement pci config reset for evergreen/cayman (v2)
        drm/radeon: implement pci config reset for r6xx/7xx (v3)
        drm/radeon: add pci config hard reset
        drm/radeon: add hard_reset module parameter
        drm/radeon: skip colorbuffer checking if COLOR_INFO.FORMAT is set to INVALID
        radeon/pm: Guard access to rdev->pm.power_state array
        drivers: gpu: Move prototype declarations to header file radeon_mode.h from radeon_atombios.c and radeon_combios.c
        drivers: gpu: Move prototype declaration to header file radeon_mode.h
        drm/radeon: move com/atombios scratch reg functions to radeon_mode.h
        drm/radeon/dpm: make some functions static for TN
        drm/radeon/dpm: make some functions static for sumo
        drm/radeon/dpm: make some functions static for CI
        drivers: gpu: Include appropriate header file in ci_smc.c
        drivers: gpu: Move prototype declaration to header file radeon_mode.h from atombios_i2c.c
        drivers: gpu: Include appropriate header file in si_smc.c and remove prototype declaration from header file sislands_smc.h
        drivers: gpu: Add static keyword to the definition of KMS_INVALID_IOCTL in radeon_kms.c
        drivers: gpu: Mark function as static in r600_hdmi.c
        drivers: gpu: Mark function as static in radeon_gem.c
        ...
      e95d9f95
    • Dave Airlie's avatar
      Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next · feb5cde6
      Dave Airlie authored
      MSM tree from Rob.
      
      * 'msm-next' of git://people.freedesktop.org/~robclark/linux:
        drm/msm: add a330/apq8x74
        drm/msm: add mdp5/apq8x74
        drm/msm: add hdmi support for apq8x74/mdp5
        drm/msm: move irq utils to mdp_kms
        drm/msm: split out msm_kms.h
        drm/msm: mdp4_format -> mdp_format
        drm/msm: resync generated headers
        drm/msm: move mdp4 -> mdp/mdp4
        drm/msm: add support for msm8060ab/bstem
        drm/msm: add support for non-IOMMU systems
        drm/msm: fix bus scaling
        drm/msm: add missing MODULE_FIRMWARE()s
        drm/msm: COMPILE_TEST support
      feb5cde6
  3. 09 Jan, 2014 13 commits
    • Rob Clark's avatar
      drm/msm: add a330/apq8x74 · 55459968
      Rob Clark authored
      Add support for adreno 330.  Not too much different, just a few
      differences in initial configuration plus setting OCMEM base.
      Userspace support is already in upstream mesa.
      
      Note that the existing DT code is simply using the bindings from
      downstream android kernel, to simplify porting of this driver to
      existing devices.  These do not constitute any committed/stable
      DT ABI.  The addition of proper DT bindings will be a subsequent
      patch, at which point (as best as possible) I will try to support
      either upstream bindings or what is found in downstream android
      kernel, so that existing device DT files can be used.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      55459968
    • Rob Clark's avatar
      drm/msm: add mdp5/apq8x74 · 06c0dd96
      Rob Clark authored
      Add support for the new MDP5 display controller block.  The mapping
      between parts of the display controller and KMS is:
      
        plane   -> PIPE{RGBn,VIGn}             \
        crtc    -> LM (layer mixer)            |-> MDP "device"
        encoder -> INTF                        /
        connector -> HDMI/DSI/eDP/etc          --> other device(s)
      
      Unlike MDP4, it appears we can get by with a single encoder, rather
      than needing a different implementation for DTV, DSI, etc.  (Ie. the
      register interface is same, just different bases.)
      
      Also unlike MDP4, all the IRQs for other blocks (HDMI, DSI, etc) are
      routed through MDP.
      
      And finally, MDP5 has this "Shared Memory Pool" (called "SMP"), from
      which blocks need to be allocated to the active pipes based on fetch
      stride.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      06c0dd96
    • Rob Clark's avatar
      drm/msm: add hdmi support for apq8x74/mdp5 · dada25bd
      Rob Clark authored
      The HDMI block is basically the same between older SoC's with mdp4
      display controller, and newer ones with mdp5.
      
      So mostly this consists of better abstracting out the different sets of
      regulators, clks, etc.  In particular, for regulators and clks we can
      split it up by what is needed for hot plug detect to work, and what is
      needed to light up the display.
      
      Also, 8x74 has a new phy.. a very simple one, but split out into a
      different mmio space.  And with mdp5, the irq is shared with mdp, so we
      don't directly register our own irq handler.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      dada25bd
    • Rob Clark's avatar
      drm/msm: move irq utils to mdp_kms · 9e0efa63
      Rob Clark authored
      We'll want basically the same thing for mdp5, so refactor it out so it
      can be shared.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      9e0efa63
    • Rob Clark's avatar
      drm/msm: split out msm_kms.h · dd2da6e3
      Rob Clark authored
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      dd2da6e3
    • Rob Clark's avatar
      drm/msm: mdp4_format -> mdp_format · 10a02eb6
      Rob Clark authored
      This can be shared between mdp4 and mdp5.  Both use the same set of
      parameters to describe the format to the hw.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      10a02eb6
    • Rob Clark's avatar
      drm/msm: resync generated headers · facb4f4e
      Rob Clark authored
      resync to latest envytools db, add mdp5 registers
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      facb4f4e
    • Rob Clark's avatar
      drm/msm: move mdp4 -> mdp/mdp4 · 2e54a92f
      Rob Clark authored
      There are some little bits and pieces that mdp4 and mdp5 can share, so
      move things around so that we can have both in a common parent
      directory.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      2e54a92f
    • Rob Clark's avatar
      drm/msm: add support for msm8060ab/bstem · e529c7e6
      Rob Clark authored
      This adds the necessary configuration for the APQ8060A SoC (dual-core
      krait + a320 gpu) as found on the bstem board.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      e529c7e6
    • Rob Clark's avatar
      drm/msm: add support for non-IOMMU systems · 871d812a
      Rob Clark authored
      Add a VRAM carveout that is used for systems which do not have an IOMMU.
      
      The VRAM carveout uses CMA.  The arch code must setup a CMA pool for the
      device (preferrably in highmem.. a 256m-512m VRAM pool in lowmem is not
      cool).  The user can configure the VRAM pool size using msm.vram module
      param.
      
      Technically, the abstraction of IOMMU behind msm_mmu is not strictly
      needed, but it simplifies the GEM code a bit, and will be useful later
      when I add support for a2xx devices with GPUMMU, so I decided to keep
      this part.
      
      It appears to be possible to configure the GPU to restrict access to
      addresses within the VRAM pool, but this is not done yet.  So for now
      the GPU will refuse to load if there is no sort of mmu.  Once address
      based limits are supported and tested to confirm that we aren't giving
      the GPU access to arbitrary memory, this restriction can be lifted
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      871d812a
    • Rob Clark's avatar
      drm/msm: fix bus scaling · bf2b33af
      Rob Clark authored
      This got a bit broken with original patches when re-arranging things to
      move dependencies on mach-msm inside #ifndef OF.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      bf2b33af
    • Rob Clark's avatar
      drm/msm: add missing MODULE_FIRMWARE()s · 3b57f23b
      Rob Clark authored
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      3b57f23b
    • Rob Clark's avatar
      drm/msm: COMPILE_TEST support · 3083894f
      Rob Clark authored
      With a simple stub, we can get COMPILE_TEST support.
      Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
      3083894f
  4. 08 Jan, 2014 16 commits