1. 16 6月, 2017 10 次提交
    • J
      drm/msm: gpu: Enable zap shader for A5XX · 7c65817e
      Jordan Crouse 提交于
      The A5XX GPU powers on in "secure" mode. In secure mode the GPU can
      only render to buffers that are marked as secure and inaccessible
      to the kernel and user through a series of hardware protections. In
      practice secure mode is used to draw things like a UI on a secure
      video frame.
      
      In order to switch out of secure mode the GPU executes a special
      shader that clears out the GMEM and other sensitve registers and
      then writes a register. Because the kernel can't be trusted the
      shader binary is signed and verified and programmed by the
      secure world. To do this we need to read the MDT header and the
      segments from the firmware location and put them in memory and
      present them for approval.
      
      For targets without secure support there is an out: if the
      secure world doesn't support secure then there are no hardware
      protections and we can freely write the SECVID_TRUST register from
      the CPU. We don't have 100% confidence that we can query the
      secure capabilities at run time but we have enough calls that
      need to go right to give us some confidence that we're at least doing
      something useful.
      
      Of course if we guess wrong you trigger a permissions violation
      which usually ends up in a system crash but thats a problem
      that shows up immediately.
      
      [v2: use child device per Bjorn]
      [v3: use generic MDT loader per Bjorn]
      [v4: use managed dma functions and ifdefs for the MDT loader]
      [v5: Add depends for QCOM_MDT_LOADER]
      Signed-off-by: NJordan Crouse <jcrouse@codeaurora.org>
      Acked-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      [robclark: fix Kconfig to use select instead of depends + #if IS_ENABLED()]
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      7c65817e
    • D
      BackMerge tag 'v4.12-rc5' into drm-next · 925344cc
      Dave Airlie 提交于
      Linux 4.12-rc5 for nouveau fixes
      925344cc
    • D
      Merge tag 'imx-drm-next-2017-06-08' of git://git.pengutronix.de/git/pza/linux into drm-next · a6821698
      Dave Airlie 提交于
      imx-drm: cleanups and YUV 4:2:0 memory read/write reduction support
      
      - Remove counter load enable form PRE, which has no effect.
      - Add support for setting the double read/write reduction flag in channel
        parameter memory. This can be used to save some memory bandwidth when
        capturing in YUV 4:2:0 chroma subsampled formats.
      - Allocate DMA channel structures as needed, most of the 64 channels are
        unused or even reserved.
      - Remove unused interrupt busy waiting routine.
      - Set VDIC field order for both AUTO and MAN inputs simultaneously as
        both can't be active at the same time.
      
      * tag 'imx-drm-next-2017-06-08' of git://git.pengutronix.de/git/pza/linux:
        gpu: ipu-v3: vdic: include AUTO field order bit in ipu_vdi_set_field_order
        gpu: ipu-v3: remove interrupt busy waiting routine
        gpu: ipu-v3: allocate ipuv3_channels as needed
        gpu: ipu-v3: Add support for double read/write reduction
        gpu: ipu-v3: prg: remove counter load enable
      a6821698
    • D
      Merge tag 'drm-fsl-dcu-for-v4.13' of http://git.agner.ch/git/linux-drm-fsl-dcu into drm-next · 033fd325
      Dave Airlie 提交于
      some fsl-dcu cleanups
      
      * tag 'drm-fsl-dcu-for-v4.13' of http://git.agner.ch/git/linux-drm-fsl-dcu:
        drm/fsl-dcu: use new drm_atomic_helper_shutdown
        drm/fsl-dcu: implement irq_preinstall/uninstall callbacks
        drm/fsl: Drop drm_vblank_cleanup
      033fd325
    • D
      Merge branch 'drm/next/du' of git://linuxtv.org/pinchartl/media into drm-next · 202dfa08
      Dave Airlie 提交于
      The series interleaves DRM and V4L2 patches due to dependencies between the R-
      Car DU and VSP drivers. Mauro has acked all the V4L2 patches to go through
      your tree, and they don't conflict with anything queued for v4.13 in his tree.
      If I need to send any conflicting patches through Mauro's tree for v4.13, I'll
      make sure to base them on this branch.
      
      * 'drm/next/du' of git://linuxtv.org/pinchartl/media:
        drm: rcar-du: Map memory through the VSP device
        v4l: vsp1: Add API to map and unmap DRM buffers through the VSP
        v4l: vsp1: Map the DL and video buffers through the proper bus master
        v4l: rcar-fcp: Add an API to retrieve the FCP device
        v4l: rcar-fcp: Don't get/put module reference
        drm: rcar-du: Register a completion callback with VSP1
        v4l: vsp1: Extend VSP1 module API to allow DRM callbacks
        v4l: vsp1: Postpone frame end handling in event of display list race
        drm: rcar-du: Arm the page flip event after queuing the page flip
      202dfa08
    • D
      Merge tag 'sunxi-drm-for-4.13' of... · 7249e3d6
      Dave Airlie 提交于
      Merge tag 'sunxi-drm-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into drm-next
      
      sun4i-drm changes for 4.13
      
      An unusually big pull request for this merge window, with three notable
      features:
        - V3s display engine support. This is especially notable because it uses
          a different display engine used on the newer Allwinner SoCs (H3, A64
          and the likes) that will be quite easily supported now.
        - HDMI support for the old Allwinner SoCs. This is enabled only on the
          A10s for now, but should be really easy to extend to deal with A10, A20
          and A31
        - Preliminary work to deal with dual-pipeline SoCs (A10, A20, A31, H3,
          etc.). It currently ignores the second pipeline, but we can use the
          dual-pipelines bindings. This will be useful to enable the display
          pipeline while we work on the dual-pipeline.
      
      * tag 'sunxi-drm-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux: (27 commits)
        drm/sun4i: Add compatible for the A10s pipeline
        drm/sun4i: Add HDMI support
        dt-bindings: display: sun4i: Add allwinner,tcon-channel property
        dt-bindings: display: sun4i: Add HDMI display bindings
        drm/sun4i: Ignore the generic connectors for components
        drm/sun4i: tcon: multiply the vtotal when not in interlace
        drm/sun4i: tcon: Change vertical total size computation inconsistency
        drm/sun4i: tcon: Fix tcon channel 1 backporch calculation
        drm/sun4i: tcon: Switch mux on only for composite
        drm/sun4i: tcon: Move the muxing out of the mode set function
        drm/sun4i: tcon: Add channel debug
        drm/sun4i: tcon: add support for V3s TCON
        drm/sun4i: Add compatible string for V3s display engine
        drm/sun4i: add support for Allwinner DE2 mixers
        drm/sun4i: add a Kconfig option for sun4i-backend
        drm/sun4i: abstract a engine type
        drm/sun4i: return only planes for layers created
        dt-bindings: add bindings for DE2 on V3s SoC
        drm/sun4i: backend: Clarify sun4i_backend_layer_enable debug message
        drm/sun4i: Set TCON clock inside sun4i_tconX_mode_set
        ...
      7249e3d6
    • D
      Merge branch 'drm-next-4.13' of git://people.freedesktop.org/~agd5f/linux into drm-next · 04d4fb5f
      Dave Airlie 提交于
      New radeon and amdgpu features for 4.13:
      - Lots of Vega10 bug fixes
      - Preliminary Raven support
      - KIQ support for compute rings
      - MEC queue management rework from Andres
      - Audio support for DCE6
      - SR-IOV improvements
      - Improved module parameters for controlling radeon vs amdgpu support
        for SI and CIK
      - Bug fixes
      - General code cleanups
      
      [airlied: dropped drmP.h header from one file was needed and build broke]
      
      * 'drm-next-4.13' of git://people.freedesktop.org/~agd5f/linux: (362 commits)
        drm/amdgpu: Fix compiler warnings
        drm/amdgpu: vm_update_ptes remove code duplication
        drm/amd/amdgpu: Port VCN over to new SOC15 macros
        drm/amd/amdgpu: Port PSP v10.0 over to new SOC15 macros
        drm/amd/amdgpu: Port PSP v3.1 over to new SOC15 macros
        drm/amd/amdgpu: Port NBIO v7.0 driver over to new SOC15 macros
        drm/amd/amdgpu: Port NBIO v6.1 driver over to new SOC15 macros
        drm/amd/amdgpu: Port UVD 7.0 over to new SOC15 macros
        drm/amd/amdgpu: Port MMHUB over to new SOC15 macros
        drm/amd/amdgpu: Cleanup gfxhub read-modify-write patterns
        drm/amd/amdgpu: Port GFXHUB over to new SOC15 macros
        drm/amd/amdgpu: Add offset variant to SOC15 macros
        drm/amd/powerplay: add avfs control for Vega10
        drm/amdgpu: add virtual display support for raven
        drm/amdgpu/gfx9: fix compute ring doorbell index
        drm/amd/amdgpu: Rename KIQ ring to avoid spaces
        drm/amd/amdgpu: gfx9 tidy ups (v2)
        drm/amdgpu: add contiguous flag in ucode bo create
        drm/amdgpu: fix missed gpu info firmware when cache firmware during S3
        drm/amdgpu: export test ib debugfs interface
        ...
      04d4fb5f
    • D
      Merge tag 'drm-misc-next-2017-06-15' of git://anongit.freedesktop.org/git/drm-misc into drm-next · bfda9aa1
      Dave Airlie 提交于
      Cross-subsystem Changes:
      - dt-bindings: add vendor prefix for NLT Technologies, Ltd. (Lucas)
      - dt-bindings: Add support for samsung s6e3hf2 panel (Hoegeun)
      
      Core Changes:
      - Add drm_panel_bridge to avoid connector boilerplate in drivers (Eric)
      - Trival fixes for dupe forward decl and reduce scope of variable (Dawid)
      
      Driver Changes:
      - dw-hdmi: Use mode_valid hook on bridge instead of connector (Jose)
      - vc4,atmel-hlcdc: Use drm_panel_bridge where appropriate (Eric)
      - panel: Add Innolux P079ZCA panel driver (Chris)
      - panel-simple: Add NL12880B20-05, NL192108AC18-02D, P320HVN03 panels (Lucas)
      - panel-samsung-s6e3ha2: Add s6e3hf2 panel support (Hoegeun)
      - zte,vc4,pl111,panel,mxsfb: Miscellaneous fixes
      
      Cc: Jose Abreu <Jose.Abreu@synopsys.com>
      Cc: Eric Anholt <eric@anholt.net>
      Cc: Chris Zhong <zyw@rock-chips.com>
      Cc: Lucas Stach <l.stach@pengutronix.de>
      Cc: Hoegeun Kwon <hoegeun.kwon@samsung.com>
      Cc: Dawid Kurek <dawikur@gmail.com>
      
      * tag 'drm-misc-next-2017-06-15' of git://anongit.freedesktop.org/git/drm-misc: (26 commits)
        drm: Reduce scope of 'state' variable
        drm: mxsfb_crtc: Reset the eLCDIF controller
        drm: Remove duplicate forward declaration
        drm/panel: s6e3ha2: Add support for s6e3hf2 panel on TM2e board
        dt-bindings: Add support for samsung s6e3hf2 panel
        drm/panel: add backlight dependency for sitronix-st7789v
        drm/panel: S6E3HA2 needs backlight code
        drm/panel: simple: add support for AUO P320HVN03
        drm/panel: simple: add support for NLT NL192108AC18-02D
        dt-bindings: add vendor prefix for NLT Technologies, Ltd.
        drm/panel: simple: add support for NEC NL12880B20-05
        drm/panel: add Innolux P079ZCA panel driver
        dt-bindings: Add INNOLUX P079ZCA panel bindings
        drm/vc4: Fix resource leak in 'vc4_get_hang_state_ioctl()' in error handling path
        drm/vc4/vc4_bo.c: always set bo->resv
        drm: Add const to name field declaration in struct drm_prop_enum_list
        drm/pl111: Fix offset calculation for the primary plane.
        drm/atmel-hlcdc: Fix panel registration
        drm/bridge: Build the panel wrapper in drm_kms_helper
        drm/atmel-hlcdc: Replace the panel usage with drm_panel_bridge.
        ...
      bfda9aa1
    • D
      drm: Reduce scope of 'state' variable · ac7c7483
      Dawid Kurek 提交于
      Smaller scope reduces visibility of variable and makes usage of
      uninitialized variable less possible.
      
      Changes in v2:
      	- separate declaration and initialization
      Changes in v3:
      	- add missing signed-off-by tag
      Signed-off-by: NDawid Kurek <dawikur@gmail.com>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: http://patchwork.freedesktop.org/patch/msgid/20170615174556.GA8872@gmail.com
      ac7c7483
    • F
      drm: mxsfb_crtc: Reset the eLCDIF controller · ae9d0421
      Fabio Estevam 提交于
      According to the eLCDIF initialization steps listed in the MX6SX
      Reference Manual the eLCDIF block reset is mandatory.
      
      Without performing the eLCDIF reset the display shows garbage content
      when the kernel boots.
      
      In earlier tests this issue has not been observed because the bootloader
      was previously showing a splash screen and the bootloader display driver
      does properly implement the eLCDIF reset.
      
      Add the eLCDIF reset to the driver, so that it can operate correctly
      independently of the bootloader.
      
      Tested on a imx6sx-sdb board.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NFabio Estevam <fabio.estevam@nxp.com>
      Reviewed-by: NMarek Vasut <marex@denx.de>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: http://patchwork.freedesktop.org/patch/msgid/1494007301-14535-1-git-send-email-fabio.estevam@nxp.com
      ae9d0421
  2. 15 6月, 2017 30 次提交