summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm (follow)
Commit message (Collapse)AuthorAge
...
* | | | | drm/msm: Bring in new register definitionsJordan Crouse2017-02-21
| |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | Bring in refreshed register definitions from the rnndb database. Change-Id: Ic0dedbaddd22f6ac0b8cfb6184073968569de22d Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | drm/msm: gpu: Return error on hw_init failureJordan Crouse2017-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the GPU hardware init function fails (like say, ME_INIT timed out) return error instead of blindly continuing on. This gives us a small chance of saving the system before it goes boom. Change-Id: Ic0dedbad142efbc9bd93e8531b40c391ec15f557 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | drm/msm: Detach the MMU during msm_gpu_cleanup()Jordan Crouse2017-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure to detach the MMU device before destroying the address space. Change-Id: Ic0dedbadff27fed017840a61ec5e0d55ce0c71e6 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | drm/msm: Support different SMMU backends for address spacesJordan Crouse2017-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SDE and the GPU have different requirements for the SMMU backends - the SDE generates its own iova addresses and needs special support for DMA buffers and the GPU does its own IOMMU operations. Add a shim layer to aspace to break out the address generation and call the appropriate SMMU functions. There is probably consolidation that can be done, but for now this is the best way to deal with the two use cases. Change-Id: Ic0dedbadc6dc03504ef7dffded18ba09fb3ef291 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | drm/msm: support multiple address spacesRob Clark2017-02-19
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can have various combinations of 64b and 32b address space, ie. 64b CPU but 32b display and gpu, or 64b CPU and GPU but 32b display. So best to decouple the device iova's from mmap offset. Change-Id: Ic0dedbad2b36b535df3e8fb2ddddc20add592cea Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 22877bcbdacd50d076f9b2f829e6a3753aa9821f Git-repo: https://github.com/freedreno/kernel-msm.git [jcrouse@codeaurora.org: Fix merge conflicts, remove mdp5 due to large infrastructure changes, compile fixes] Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | Merge "drm/msm: add put_iova() helper"Linux Build Service Account2017-02-18
|\ \ \
| * | | drm/msm: add put_iova() helperRob Clark2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We'll need this too for shrinker/purging. Change-Id: Ic0dedbada844d46b608c99cf3eaa3a898a6d5016 Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 4fe5f65e66823dcb212a0404af47389b2b1c58f0 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git [jcrouse@codeaurora.org: Modified to use different iommu map function and merge with existing display changes] Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm: Remove the 'len' parameter from mmu map/unmap functionsJordan Crouse2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nobody uses this now that we are entirely scatter/gather enabled. Remove it to avoid having to calculate the length unnecessarily. Change-Id: Ic0dedbad020998e1c8fd5d526789f73beb0d5755 Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | | Merge "drm/msm: set dma_mask properly"Linux Build Service Account2017-02-18
|\| | |
| * | | drm/msm: set dma_mask properlyRob Clark2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previous value really only made sense on armv7 without LPAE. Everything that supports more than 4g of memory also has iommu's that can map anything. Change-Id: Ic0dedbad6ca5973f2ac0d2690dec77e40787b8da Git-commit: 49d24b7a6bf253aeb7cb81672316c83e7b628ea9 Git-repo: https://github.com/freedreno/kernel-msm Signed-off-by: Rob Clark <robdclark@gmail.com> [jcrouse@codeaurora.org: Fixed minor merge issues] Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm: Use phys_addr_t for physical addressesJordan Crouse2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use phys_addr_t to store physical addresses destined for iommu_map() to support targets that can have more than 32 bits of physical address space. Change-Id: Ic0dedbad8d87bf05c602bccdd48338086d76478d Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm/adreno: Remove CONFIG_OF checksArchit Taneja2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove CONFIG_OF checks in adreno_device.c. The downstream bus scaling stuff is included only when CONFIG_OF is not set. So, remove that too. Change-Id: Ic0dedbadbd39970667e7ab745c4b276690a0b0d7 Signed-off-by: Archit Taneja <architt@codeaurora.org> Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 66a42f8586897c3a95ac2fef5e2ee1e69da695c8 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm/adreno: remove duplicate adreno_hw_init() callRob Clark2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not sure where it came from, but seem unintentional. And also not needed on a420, so let's just drop it. Change-Id: Ic0dedbaddb70f0268d4182cc206412b6c69fd472 Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 7977f4426c44da95c5dba91a62f099411e029de8 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm/adreno: get CP_RPTR from register instead of shadow memoryCraig Stout2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As described in the downstream/kgsl driver: Sometimes the RPTR shadow memory is unreliable causing timeouts in adreno_idle(). Read it directly from the register instead. Change-Id: Ic0dedbadf67029a7f8f872daa16d2286efe46267 Signed-off-by: Craig Stout <cstout@chromium.org> Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 7d0c5ee9f07779ab29ac291748060a0a6f1d66db Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm: add timestamp paramRob Clark2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need this for GL_TIMESTAMP queries. Note: currently only supported on a4xx.. a3xx doesn't have this always-on counter. I think we could emulate it with the one CP counter that is available, but for now it is of limited usefulness on a3xx (since we can't seem to do time-elapsed queries in any sane way with the existing firmware on a3xx, and if you are trying to do profiling on a tiler you want time-elapsed). We can add that later if it becomes useful. Change-Id: Ic0dedbad46a7cb22391de89ed2341a5a378e1bb0 Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 6c77d1abe61797239533918d7a0336fc84f4aef1 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm: add max-freq gpu param to uapiRob Clark2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need this in userspace for interpreting some of the perf ctrs. Note possibly not quite sufficient if we had some frequency mgmt approach other than race-to-idle. Not really sure what the best thing to do if we did. Although displaying results as a percentage of max frequence seems sensible(ish) if we did. Change-Id: Ic0dedbad1d8481cd2609ae0d86d4de6045f0d22e Signed-off-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com> Git-commit: 4102a9e5325941223fbfa0a56175e9efb3d4385a Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm/adreno: add adreno430 power controlCraig Stout2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ic0dedbadb04269a45b56bc88955977110607b566 Signed-off-by: Craig Stout <cstout@chromium.org> Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 38bbc55ef5858301f5da6f6261434033a30058f6 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm/adreno: support for adreno 430.Craig Stout2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ic0dedbad2287ea30f82398e3a8d2e40d15fad95a Signed-off-by: Craig Stout <cstout@chromium.org> Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: 357ff00b08d67cfb489f2e306bda7d3ef45a1306 Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
| * | | drm/msm: update generated headersRob Clark2017-02-13
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull in additional regs needed for a430, etc. Change-Id: Ic0dedbada256c546268b2a19556a78e8912d06e4 Signed-off-by: Rob Clark <robdclark@gmail.com> Git-commit: a2272e48eef02869dc3fa031720f36dd4cb05e4f Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | | Merge "drm/msm/sde:: fix optional property parsing for qseed and csc properties"Linux Build Service Account2017-02-17
|\ \ \
| * | | drm/msm/sde:: fix optional property parsing for qseed and csc propertiesAbhinav Kumar2017-02-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With commit <5aad7456b5a5aeea93a437ae46680a97d089fe51> (<drm/msm/sde: parse csc type dtsi entry to select valid csc>), support for CSC is added to 8998 target. However this is an optional property for some targets. Fix the parsing logic to not fail in case of missing optional properties. CRs-Fixed: 2002381 Change-Id: Idfe750d3afbd0d88d89ffa873deae130a24b2827 Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org> Signed-off-by: Manoj Kumar AVM <manojavm@codeaurora.org>
* | | | Merge "drm/msm/sde: signal pending PAGE_FLIP events"Linux Build Service Account2017-02-16
|\ \ \ \ | |/ / / |/| | |
| * | | drm/msm/sde: signal pending PAGE_FLIP eventsAbhinav Kumar2017-02-11
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently any pending PAGE_FLIP events are not signalled by the drm driver. Userspace blocks on these events to trigger a redraw. Add support to signal the PAGE_FLIP complete events after commit is complete. Change-Id: I887efc48f8890e5e1ed055f7016393a90fc26fa6 Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
* | | Merge "drm/msm/sde: enable pixel extension and qseed3 along with VIG pipes"Linux Build Service Account2017-02-15
|\ \ \ | |/ / |/| |
| * | drm/msm/sde: enable pixel extension and qseed3 along with VIG pipesGopikrishnaiah Anandan2017-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the user-space client doesn't provide the pixel extension and qseed3 configuration, driver should set the default values. Change sets the default values if user-space client is not configuring the blocks when VIG pipes are selected. CRs-Fixed:2002381 Change-Id: I02f0e76fb87587d2eed9e5f4fcca5baa7d605b92 Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org> Signed-off-by: Manoj Kumar AVM <manojavm@codeaurora.org>
* | | drm/msm: Use dma_sync_sg_for_device() to flush cache for new buffersJordan Crouse2017-02-09
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | With the conversion of the master device to use the arm iommu ops we lose the benefit of a cache flush using the dma_map_sg trick. Plus we end up mapping all the GPU buffers into the master DMA device which is admittedly sub optimal. However it did end up mapping all the display buffers which unintentionally worked. Put the map_sg() functions back into msm_gem.c to make it intentionally work from now on. Change-Id: Ic0dedbada1a8723fb47311189a6b7e11969427ee Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
* | Merge remote-tracking branch 'quic/dev/msm-4.4-drm_kms' into msm-4.4-01-29-tipNarendra Muppalla2017-01-30
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * quic/dev/msm-4.4-drm_kms: drm/msm/sde: allow mmus to be optional during kms init drm/msm/sde: check for null catalog in sde hw destroy drm/msm: treat data bus dtsi property as optional drm/msm/sde: add crtc clock & bandwidth capabilities drm/msm/sde: parse csc type dtsi entry to select valid csc drm/msm: fix copyright marking in "msm" drm driver drm/msm: remove smmu coherent hardware table walk attrib drm/msm/sde: add DMA2 and DMA3 pipe staging support drm/msm/sde: add event for underruns drm/msm/sde: fix check for frame event overflow ARM: dts: msm: add ping pong split definitions for msm8996 ARM: dts: msm: add sde max bus bandwidth setting for msm8996 drm/msm/sde: add dynamic clock and bandwidth commit support ARM: dts: msm: add sde bus scale settings for msm8996 drm/msm/sde: add bus bandwidth control for crtc drm/msm/sde: add frame done callback event to crtc drm/msm/sde: bypass crtc atomic begin/flush if disabled drm/msm/sde: add debugfs entry for vbif drm/msm/sde: add debugfs entry for danger and safe status drm/msm/sde: enable ping pong split support ARM: dts: msm: enable imgswap on sharp nt35597 dual panel drm/msm/sde: remove catalog parsing limits drm/msm/sde: update pixel extension uapi drm/msm/sde: enable master physical encoder last drm/msm/sde: reset ctl mixer config at end of use case drm/msm: Support virtualization of color processing properties drm/msm/sde: Move DSPP/SSPP color process hw programming to common location drm/msm/sde: Add support for Memory Color in plane drm/msm/sde: Add PA global adjustment properties to plane drm/msm: implement smmu detach and guard freeing of client dev drm/msm/sde: reset kickoff count atomically before irq enable ARM: dts: msm: default sde clock rate to max for msm8996 drm/msm/sde: base scaler phase on decimated dimensions drm/msm/sde: move sde hw init to hw_init callback drm/msm/sde: check for missed irqs in command encoder drm/msm: support probe deferral in msm_drv drm/msm/sde: fix iounmap usage and init callflow drm/msm/sde: fixup sde_kms shutdown sequence and naming drm/msm/sde: fix cmd mode vblank irq control drm/msm/sde: apply correct zpos range for sde clients drm: Increase max number of DRM object properties drm/msm/sde: add debug dump and panic facility drm/msm/sde: match xlog features in evtlog drm/msm/sde: add debugfs support for misr data drm/msm/sde: Add device tree subnode parsing capability drm/msm: create separate commit thread for each display drm/msm/sde: Add backlight class support for sde drm driver drm/msm/sde: add common sde debug folder drm/msm/sde: route evtlog to sde trace log drm/msm/sde: add systrace compatible trace macro drm/msm/sde: separate plane/encoder/crtc functions into headers drm/msm/sde: add default 10 bit csc matrix to source pipe drm/msm/sde: add 10 bit csc for sde drm/msm/sde: add qseedv3.x support for sde drm/msm/sde: add 10-bit formats support drm/msm/sde: print error only if catalog property is mandatory drm/msm/sde: remove redundant vblank request in crtc drm/msm/sde: add vblank reference counting to crtc drm/msm/sde: handle pingpong blocks from virtual encoder drm/msm/sde: add support for BGRX and XBGR formats in plane drm/msm/sde: add multi-client and ref counting for core irq drm/msm/sde: cache connector list in sde crtc drm/msm/sde: remove display manager drm/msm/sde: fix video encoder access in phy encoder drm/msm/sde: add debugfs node for vsync and underrun status drm/msm/sde: update vblank and underrun isr handling drm/msm/sde: fix color component order drm/msm/dsi-staging: fix issues related to deferral drm/msm/sde: remove static allocation of mdp_top hw block drm/msm: initialize local varibles in sde power module drm/msm/sde: dual pipe use case support drm/msm/sde: update crtc status debugfs node ARM: dts: msm: add vbif OT and plane QoS/LUT for msm8996 drm/msm/sde: add clock control parsing to hardware catalog drm/msm/sde: correct read out of bit offset array drm/msm/sde: add plane QoS parsing to hardware catalog drm/msm/sde: add vbif parsing to hardware catalog drm/msm/sde: add writeback id parsing to hardware catalog drm/msm/sde: update mixer op mode config bit fields correctly drm/msm/sde: add sde error prefix for all errors drm/msm: add capability property for crtc drm/msm/sde: update ubwc and src split properties for sde drm/msm/sde: correct to use sync vblank request for commit drm/msm: execute pending vblank disable upon last close drm/msm/sde: update crtc to use sde debug macros drm/msm/sde: remove unused functions in sde crtc drm/msm/sde: move sde_crtc declarations into sde_crtc header drm/msm/sde: move sde_crtc away from legacy drm vblank apis drm/msm: add error logging in msm_atomic drm/msm/sde: move vbif functions to their own file defconfig: enable backlight class driver for msm defconfig. drm/msm/sde: additional event logging for fences drm/msm/sde: assign relative mixer stages based on zpos drm/msm/sde: remove redundant vblank request and notification drm/msm/sde: fixup header markings drm/msm: fix power handle APIs when clk are not present drm/msm/sde: don't convert ktime to ns when waiting for fences DOWNSTREAM: drm/msm/sde: enable sde client customizations drm/msm: rename kernel module to msm_drm drm/msm/sde: allow primary planes to be used with all crtcs drm/msm/sde: limit primary plane count to number of crtcs drm/msm: teardown all modes in lastclose handler drm/msm/sde: update proper error message for rm failure drm/sde: move hardware catalog to dtsi parser drm/msm/sde: enable proper support for split flush drm/msm/sde: add mode config mutex lock for connector search drm/msm/sde: bypass wait for commit done if crtc is not enabled drm/msm/sde: add proper mode config lock to plane QoS check drm/msm/sde: correct crtc to use new plane state for update drm/msm/sde: remove error message from optional settings drm/msm/sde: remove unused traffic shaper from hw drivers drm/msm: property read should return success for virtual crtc drm/msm/sde: avoid programming same plane source address drm/msm/sde: update plane dmesg logging to use sde macros drm/msm/sde: update scaler property definition and type drm/msm/sde: break out plane decimation to separate properties drm/msm/sde: update register writes to use SDE logging macros drm/msm/sde: update csc property definition and type drm/msm: Modularize property install function of color processing drm/msm: Add support for PA vLut feature drm/msm: Expose Assertive display capability drm/msm: Suspend/Resume support for color processing features drm/msm: Add support for PCC in Crtc drm/msm/sde: update catalog for post processing drm/msm/sde: don't duplicate input fence pointer with state drm/msm/sde: fix color component order for compressed formats drm/msm/sde: add writeback ROI support for msmskunk drm/msm/sde: add const alpha support for msmskunk ARM: dts: msm: add max clock property for sde to msm8996 drm/msm/sde: add max clock property for sde drm/msm: add support for custom event notification drm/msm: Initial version post processing header drm/msm: remove msm clock driver header files drm/msm/dsi-staging: keep backlight api under LED config drm/msm/sde: enable sde clocks during debugfs register read drm/msm/sde: update pipes on dirty plane properties drm/msm/sde: fix compilation issues in sde driver drm/msm/sde: update encoder dmesg logging to use sde macros drm/msm/sde: remove unused header dependency drm/msm/sde: use const alpha for wb if pipe alpha not supported drm/msm/sde: remove unused sde functions drm/msm/sde: add mode change request to cdm resource update drm/msm/sde: cleanup alpha calc and plane stage in crtc ARM: dts: msm: send panel off command during pre off state drm/msm/sde: remove unused writeback function stubs drm/msm/sde: remove unused vblank control for writeback drm/msm/sde: remove unused encoder function drm/msm/sde: always clear topology name when removing rsvp drm/msm/sde: reorganize top level interrupt handling code drm/msm/sde: add OT support for source pipe and writeback drm/msm/sde: add danger/safe/QoS support for source pipe drm/msm/sde: improve debug log for blend setup DOWNSTREAM: drm/msm/sde: optionally delay output fence signal drm/msm/sde: determine output fence timing on create drm/sde: use power handle api to vote for core clock ARM: dts: msm: add clk rate and gdsc supply entry for msm8996 drm/msm: add power handle driver for msm drm/msm/sde: add helper macro for performing ktime comparisons drm/msm/sde: assign ctls based on capability requirements drm/msm/sde: clean up crtc ctl tracking drm/msm/sde: improve resource manager hw block lookup time drm/msm: internal property updates should update cached value drm/msm/sde: fix plane stage setup in sde crtc ARM: dts: msm: add nt35597 panel definition for msm8996 drm/sde: remove warn on from sde encoder drm/sde: allow base layer plane stagging drm/msm: update plane, crtc and connector caps blob prop drm/msm/sde: add api for determining current interface mode drm/msm/sde: fix uninitialized return code in rm drm/msm/sde: fix atomic check for crtc driver drm/msm: validate framebuffer before accessing it drm/msm: fix atomic mode check for sde plane drm/msm: use drm helper API for atomic check ARM: dts: msm: remove hdmi connector for msm8996 drm/msm/sde: enable dynamic hardware resource assignment drm/msm/sde: dynamic hardware resource manager drm/msm/sde: move crtc towards multi-encoder support drm/msm/sde: list block interconnects as bitmasks drm/msm/sde: add topology management properties drivers/gpu/drm: disable drm fbdev emulation drm/msm/sde: use common structure for phys encoder init drm/msm/sde: list hardwired mixer connections drm/msm: enable/disable sde during driver open and close drm/dsi: turn off the wled backlight with panel power off drm/dsi: fix dsi control power supply turn off sequence drm/msm/sde: add support for dirty properties drm/msm: allow flags to be set in property helpers drm/msm/sde: trigger plane modeset on buffer pitch change ARM: dts: msm: add SDE writeback display for msm8996 drm/msm/sde: enable writeback enumeration in display manager drm/msm/sde: add virtual writeback device and connector drm/msm/sde: add resource management for writeback and cdm drm/msm/sde: add hardware driver support for chroma down module drm/msm/sde: add hardware driver support for writeback interface drm/msm/sde: add smmu domain selection logic to connector drm/msm/sde: add function to return raw interrupt status ARM: dts: msm: add SDE smmu node to msm8996 drm/msm/sde: Bypass unused interface during smmu init drm/msm: add non-realtime and secure smmu domains drm/msm: cache active displays within display manager drm/msm/sde: add connector api for querying display info drm/msm/sde: use msm_display_info for display information drm/msm/sde: explicitly enumerate supported plane formats drm/msm/sde: add retire fence support drm/msm/dsi-staging: use sde connector for dsi drm/msm/sde: add generic support for drm connectors drm/msm/sde: add utility functions for kms info drm/msm/sde: enable output_fence property drm/msm/sde: add output fence utility functions drm/msm/sde: support more formats including compression drm/msm: subdriver hook to validate modified formats drm/msm/sde: add drm fourcc modifier for qcom compressed format drm/msm/sde: command mode panel encoder support drm/msm/dsi-staging: turn gpio off if panel reset fails drm/msm/sde: single kickoff to flush hardware drm/msm/dsi-staging: add dsi cmd/vid mode to display info drm/msm: add subdriver callback for single kickoff drm/msm/sde: fix reading of the pingpong counters drm/dsi-staging: update configurations for display related GPIOs drm/msm/sde: add register name to logging drm/msm/sde: add logmask area for top registers drm/msm/sde: define sde specific macros for dmesg logging drm/msm/sde: enable explicit input fences drm/msm/sde: add support for crtc properties drm/dsi-staging: reset drm/dsi data before reconfiguring ARM: dts: msm: fix compilation errors for msm8996 ARM: dts: msm: add configurations for 1080p panel on msm8996 defconfig: enabled drm/kms driver in msm defconfig drm/msm/dsi: remove unused tag from dsi API drm/kms: remove compilation of hdcp_hdmi ARM: dts: msm: update settings for dsi panels drm/msm: disable mdp4 driver in drm kms drm/msm: switch to qti KGSL driver ARM: dts: msm: add configurations for 720p panel ARM: dts: msm: add device tree for sde dsi device on msm8996 drm/dsi-staging: add support to get regulator data from device tree drm/msm/sde: use sde plane csc cfg struct for user settings drm/msm: add display manager to makefile drm/msm: rename MSM drm platform driver's name into msm_drm drm/msm/sde: avoid dereferencing scaler blob if null state drm/msm: handle null blob property array drm/msm: enable both dsi drivers together drm: mipi: change header format to work with msm hardware drm/dsi-staging: remove interrupt handling drm/msm: move display manager out from dsi-staging drm/msm/dsi-staging: fix dynamic fps and seamless updates drm/msm/dsi-staging: support dynamic frame-rate and validation drm/msm: defer drm driver probe if backlight isn't ready drm/msm: common display interface for mdp driver drm/msm/sde: init private kms pointer before modeset init drm/msm/dsi-staging: add dsi panel driver drm/msm/dsi-staging: add debugfs support for dsi driver drm/msm/dsi-staging: add support for command mode panels drm/msm/dsi-staging: dsi display tests drm/msm/dsi-staging: add dsi drm interface drm/msm/dsi-staging: add dsi display driver drm/msm/sde: replace plane property/state handling with msm_prop drm/msm: add generic property/state handling drm/msm: use sde specific color format throughout drm/msm: move dynamic fps and seamless updates drm/msm: update wrapper macros for event logging drm/msm/sde: init spinlock for lm_lock drm/msm/sde: clean up debug output drm/msm: add event log for profiling msm drm driver events drm/msm/sde: pageflip fixes drm/msm/sde: remove crtc full modeset based on plane changes drm/msm/sde: add z-order and plane id to prints drm/msm/sde: add wrappers for release fence API drm/msm/sde: update max up/down scale drm/msm/sde: add planes color fill/fence timeout drm/msm/sde: updates to planes atomic_check drm/msm/sde: add cache for released plane states drm/msm/sde: input fence support for planes drm/msm/sde: add debugfs for crtc drm/msm/sde: don't overflow mixer cfg fields drm/msm: enable seamless dynamic framerates drm/msm/sde: remove plane decimation properties drm/msm/sde: change csc matrix coeff in h/w driver to s15.16 drm/msm/sde: enable blending across all planes drm/msm/sde: remove 'mdp' from sde file names defconfig: msm: enable SYNC Driver drm/msm/sde: add valid rotator writeback flag drm/msm/sde: add properties for planes msm: sde: sde plane properties user definitions drm/msm/sde: consolidate SDE error logging on DRM standard calls drm/msm/sde: set encoder role at display probe time drm/msm/sde: add preliminary debugfs support drm/msm/sde: add blending support for more use cases drm/msm/sde: enable NV12 modetest for planes drm/msm/sde: fixup mdp top split pipe control drm/msm/sde: add support for vblank callback drm/msm/dsi-staging: add dsi phy driver drm/msm/dsi-staging: add clock and power utilities drm/msm/dsi-staging: add dsi controller driver drm/msm/sde: add resource manager to enable dual dsi drm/msm/sde: adding implementation for mdp_top in hw driver drm/msm/sde: sde hw interrupt handling drm/msm/sde: simplify encoder display probe logic drm/msm/sde: move sde encoder to new display interface drm/msm/sde: programmable pre-fetch support for video encoders drm/msm/sde: sde encoder virtualization drm/msm/sde: add controller instance to INTF block in catalog drm/msm/sde: add basic sde object enumeration drm/msm: add smmu handler drm/msm/sde: add driver for sde support drm/msm/dsi-staging: add catalog for dsi driver drm/msm/dsi-staging: add hardware driver for dsi controller drm/msm/dsi-staging: add hardware driver for dsi phy drm/msm/dsi-staging: add dsi definitions for new dsi driver drm/msm: remove clock framework dependency Change-Id: I20ec5183e730d1033f824f3b33f52d5b1578f740 Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
| * \ Merge "drm/msm: treat data bus dtsi property as optional" into ↵Dhaval Patel2017-01-20
| |\ \ | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | drm/msm: treat data bus dtsi property as optionalAlan Kwong2017-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Data bus properties such as number of bus channel and number of axi ports are optional dtsi properties, and should not cause data bus parsing function to fail. Clear error code if the above properties do not exist in dtsi. Change-Id: I44b9d2b462f95444047c8f9f2a83dffae5596074 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | Merge "drm/msm/sde: add crtc clock & bandwidth capabilities" into ↵Dhaval Patel2017-01-20
| |\| | | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | drm/msm/sde: add crtc clock & bandwidth capabilitiesAlan Kwong2017-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add clock and bandwidth properties to capabilities blob for crtc. These properties are used by user mode client to fine tune use case power/performance. Change-Id: I9d2a4a299198bc3ba72d1a76f4cc80ee19df8ae0 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | | drm/msm/sde: allow mmus to be optional during kms initLloyd Atkinson2017-01-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix to avoid failing overall drm sde driver initialization in case one of the mmus expected is not defined by DTSI. Particular MMU support varies by platform and can be optional. Change-Id: I07162d1d064c9cc025ec494e83e1dfa7f14f65c1 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | drm/msm/sde: check for null catalog in sde hw destroyLloyd Atkinson2017-01-20
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Fix sde hw deconstruction which can be called twice back to back if hw initialization itself fails. In this case the catalog pointer will already be null, so we must check for it. Change-Id: Idc05efd7dd8c2a27f2c8128654e4c0b06697f39e Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: parse csc type dtsi entry to select valid cscDhaval Patel2017-01-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | msm8998 supports 10bit csc while msm8996 supports csc only. This patch adds the dtsi entry to select the correct csc type while parsing hardware catalog to configure the valid csc hardware block. Change-Id: I376f1e485a5de4a95d03e395e06d10b043036cb0 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | drm/msm: fix copyright marking in "msm" drm driverDhaval Patel2017-01-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | msm driver is updated signficantly by CAF authors but it does not carry the CAF license. This patch update it accordingly. At the same time; kms, smmu, plane, crtc, encoder code was written by referring the mdp5 driver but it did not carry the license from mdp5 driver. The patch fixes the issue. Change-Id: I4670d2220d6df46213c7220a2b46de32e3ec15a5 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | drm/msm: remove smmu coherent hardware table walk attribDhaval Patel2017-01-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | SMMU coherent hardware table walk attribute is not supported on kernel. This change removes this obsolete call from drm smmu driver. Change-Id: Ie0a79b6abad940043d8fdf453d31a711fc206770 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | drm/msm/sde: add DMA2 and DMA3 pipe staging supportDhaval Patel2017-01-19
| | | | | | | | | | | | | | | | | | | | | | | | Add DMA2 and DMA3 source pipe staging support on layer mixer. Change-Id: I9b653261bf933312202e645d859179e0d84fc704 Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
| * | drm/msm/sde: add event for underrunsLloyd Atkinson2017-01-12
| | | | | | | | | | | | | | | | | | | | | | | | Need to add an event log item for underruns for debugging and testing purposes. Change-Id: I711b2560a61421677f36912545fef0ae9d370e66 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: fix check for frame event overflowLloyd Atkinson2017-01-03
| | | | | | | | | | | | | | | | | | | | | | | | Fix check to detect an empty free event list needed when there are too many in-flight frame events in the sde_crtc. Change-Id: I12c9bf7d449d6582584505a7887b6bdf82f2f0d5 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | drm/msm/sde: add dynamic clock and bandwidth commit supportAlan Kwong2016-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current crtc supports static clock and bandwidth defined in device tree. Add support for dynamic clock and bandwidth control using new atomic crtc properties. User mode can adjust core clock rate, instantaneous and arbitrated bandwidth per crtc commit. Change-Id: I753a141bbc023d89f1532943f48252875883d684 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | drm/msm/sde: add bus bandwidth control for crtcAlan Kwong2016-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add bus bandwidth control (on/off) for crtc around atomic commit and frame done event. To support video mode interface, also add bandwidth control around encoder enable/disable. Change-Id: I90ef372aad4a20040602a468393e8a5cd8f08201 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | drm/msm/sde: add frame done callback event to crtcAlan Kwong2016-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Frame done is signaled when the current commit request completes after wb/pp/cmd done or vsync are received. Frame done callback is used by crtc to control clock and bandwidth setting dynamically. Change-Id: I48d633bfc1174dec5084487da17faa91ec5fa52d Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | drm/msm/sde: bypass crtc atomic begin/flush if disabledAlan Kwong2016-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current crtc exeuctes atomic begin and flush even if crtc is not enabled. This causes unnecessary updates to crtc. Hence, modify crtc to bypass atomic begin and flush if not enabled. Change-Id: I1de9c0965e552126ed7be59f7ee5400e3605a17f Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | drm/msm/sde: add debugfs entry for vbifAlan Kwong2016-12-14
| | | | | | | | | | | | | | | | | | | | | | | | Add debugfs entry for vbif, allowing get/set of default and dynamic OT settings. Change-Id: Ia0237aa0befc0c6dee879bb2fca771ee39958321 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | drm/msm/sde: add debugfs entry for danger and safe statusAlan Kwong2016-12-14
| | | | | | | | | | | | | | | | | | | | | | | | Add debugfs entry for current danger and safe status of each pipe and current overall status for debugging purposes. Change-Id: I3e784d0218df40c184a431409c864a3208a90b45 Signed-off-by: Alan Kwong <akwong@codeaurora.org>
| * | drm/msm/sde: enable ping pong split supportClarence Ip2016-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for using a single layer mixer to drive two video or command mode interfaces. This configuration frees up one of the layer mixer paths for other use cases/displays. Change-Id: I3a0ca07e37f121bf56ea8984c0cca25af7bc647e Signed-off-by: Clarence Ip <cip@codeaurora.org>
| * | Merge "drm/msm: implement smmu detach and guard freeing of client dev" into ↵Jeykumar Sankaran2016-12-09
| |\ \ | | | | | | | | | | | | dev/msm-4.4-drm_kms
| | * | drm/msm: implement smmu detach and guard freeing of client devLloyd Atkinson2016-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a basic implementation of msm_smmu_detach. Check that smmu client_dev exists before doing platform_device_unregister. Change-Id: Ied1481003d878af452d3b00b950b234c6b7dd698 Signed-off-by: Lloyd Atkinson <latkinso@codeaurora.org>
| * | | Merge "drm/msm/sde: update pixel extension uapi" into dev/msm-4.4-drm_kmsJeykumar Sankaran2016-12-05
| |\ \ \
| | * | | drm/msm/sde: update pixel extension uapiabeykun2016-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch changes pixel extension uapi to match FB driver and exposes QSEED3 filter configuration defines. Change-Id: Id5dba041df77d1c663742fcda74f420ca3d228f9 Signed-off-by: abeykun <abeykun@codeaurora.org>