summaryrefslogtreecommitdiff
path: root/drivers/gpu/msm (follow)
Commit message (Collapse)AuthorAge
...
| * | | | | | msm: kgsl: Add MEMDESC_MAPPED back to for legacy mappingsCarter Cooper2016-10-13
| | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We still need to keep this internal flag for non-sparse mappings. Add back so we don't map multiple times if the range is already mapped. Change-Id: Ifcf6073b5b778bcb535d26bc33990254ff48c406 Signed-off-by: Carter Cooper <ccooper@codeaurora.org>
* | | | | | msm: kgsl: Allow mempools to configure from the device treeHareesh Gundu2016-11-07
| |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add driver support to configure mempools from the device tree. This will enable mempools to configure per device specific and reduces the high kgsl memory usage based on configuration. CRs-Fixed: 1064046 Change-Id: I0a7e36b7e1fef9d42a4c0fe33d69a4debf15af2f Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* | | | | msm: kgsl: Fix potential device NULL pointer dereferencesHareesh Gundu2016-11-04
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure that device pointer isn't NULL before using it in kgsl_snapshot_save_frozen_objs(). Change-Id: I676dfa5567b1d09427e3e7691045fabc71b53d43 Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* | | | Merge "msm: kgsl: Clear the interrupt immediately"Linux Build Service Account2016-10-31
|\ \ \ \ | |_|/ / |/| | |
| * | | msm: kgsl: Clear the interrupt immediatelyHarshdeep Dhatt2016-10-14
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes an interrupt from GPU is ignored while we are still executing the previous interrupt. In order to service any interrupt that was fired while executing the interrupt handler, clear the interrupt register immediately. Also, clear the ADRENO_INT_RBBM_AHB_ERROR bit not before but after it's serviced in its respective handler. This will avoid firing the main interrupt handler a second time. CRs-Fixed: 1072781 Change-Id: Ie6b5a511f5b3077adae7d464de437f2aa893b0c9 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | | msm: kgsl: Add sysfs control for pwrscaleJonathan Wicks2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | Add a sysfs entry to enable control of notifications from pwrscale to devfreq. Change-Id: Ife0a31e96975239bf4fefd59ac6266568c4db1a5 Signed-off-by: Jonathan Wicks <jwicks@codeaurora.org>
* | | msm: kgsl: Remove DPM registers from snapshotHarshdeep Dhatt2016-10-13
|/ / | | | | | | | | | | | | | | | | Remove the DPM registers from a5xx snapshot as they are not needed for A540. CRs-Fixed: 1074810 Change-Id: Ic4259821e1ee74e49068545208587ad66ac29679 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | Merge "msm: kgsl: restructure GPU power initialization"Linux Build Service Account2016-10-11
|\ \
| * | msm: kgsl: restructure GPU power initializationGeorge Shen2016-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move target specific initialization and setup into target specific init functions. The change is required to port the GPU driver to support future generation GPUs. CRs-Fixed: 1053516 Change-Id: I808e247669fab61a6a64131858fe2f9e19754242 Signed-off-by: George Shen <sqiao@codeaurora.org>
* | | Merge "msm: kgsl: Remove obsolete IOMMU domain attribute"Linux Build Service Account2016-10-11
|\ \ \
| * | | msm: kgsl: Remove obsolete IOMMU domain attributeMitchel Humpherys2016-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The DOMAIN_ATTR_COHERENT_HTW_DISABLE IOMMU domain attribute is being removed. SMMU coherency will be configured through the SMMU device tree nodes moving forward. Remove the obsolete option. Change-Id: I4bbbfb90fe172e048cc9504c4e6be5f36501b485 Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
* | | | Merge "msm: kgsl: Modify dispatcher to accept generic objects"Linux Build Service Account2016-10-10
|\ \ \ \
| * | | | msm: kgsl: Modify dispatcher to accept generic objectsTarun Karra2016-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently dispatcher accepts kgsl_cmdbatch object. This object is a superset of all the types of objects dispatcher accepts. Split kgsl_cmdbatch object to SYNC and IB/MARKER objects and structure the code to make it easier for new type of objects to be added to the dispatcher queue. CRs-Fixed: 1054354 Change-Id: I2d482d1081ce6fdb7925243c88ce00ea6b864efe Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
| * | | | msm: kgsl: Rename cmdbatch to drawobjTarun Karra2016-10-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename all cmdbatch to drawobj. This forms a platform for future changes where cmdbatch is split into different types of drawobjs. CRs-Fixed: 1054353 Change-Id: Ib84bee679e859db34e0d1f8a0ac70319eabddf53 Signed-off-by: Tarun Karra <tkarra@codeaurora.org>
* | | | | Merge "msm: kgsl: Remove GPU BCL and LMH support"Linux Build Service Account2016-10-10
|\ \ \ \ \ | |_|_|/ / |/| | | |
| * | | | msm: kgsl: Remove GPU BCL and LMH supportOleg Perelet2016-10-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a540 hardware does not support BCL and LMH after all. CRs-Fixed: 1075694 Change-Id: I09808145d20ded63b5043cae6510429560cb599e Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
* | | | | Merge "msm: kgsl: Get GPU snapshot if wait for global timestamp timeout"Linux Build Service Account2016-10-07
|\ \ \ \ \
| * | | | | msm: kgsl: Get GPU snapshot if wait for global timestamp timeoutHareesh Gundu2016-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the wait for global fails due to timeout then nothing after this point is likely to work very well. Get GPU snapshot in addition to BUG_ON(), to analyze the GPU fault. CRs-Fixed: 1053780 Change-Id: I29930120a72a08533c859002f646af93e67c754f Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* | | | | | Merge "msm: kgsl: Disable UCHE global filter"Linux Build Service Account2016-10-07
|\ \ \ \ \ \ | |_|/ / / / |/| | | | |
| * | | | | msm: kgsl: Disable UCHE global filterSunil Khatri2016-10-05
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disable UCHE global filter for invalidate/flush, SP will handle the invalidate/flush for each SP independently on A5XX GPUs. CRs-Fixed: 1073853 Change-Id: I3daf3722cfbdfff080161f9a0248fd8096550328 Signed-off-by: Sunil Khatri <sunilkh@codeaurora.org>
* | | | | Merge "msm: kgsl: Disable workaround on A540v2"Linux Build Service Account2016-10-06
|\ \ \ \ \
| * | | | | msm: kgsl: Disable workaround on A540v2Harshdeep Dhatt2016-10-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we have a workaround for A540 which inserts WFI after every direct-render 3D mode and every 2D mode draw. Add a check to enable this only on A540v1 as this workaround is not required for A540v2. CRs-Fixed: 1072767 Change-Id: I679bbf68ee3dcc1aee30d56a646a42b6ff09fb6f Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | | | | | Merge "msm: kgsl: Add A540v2 to adreno gpulist"Linux Build Service Account2016-10-06
|\| | | | |
| * | | | | msm: kgsl: Add A540v2 to adreno gpulistHarshdeep Dhatt2016-10-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add adreno_is_a540v2 function CRs-Fixed: 1072767 Change-Id: Ibf1d5058a1273e1f558afa3871e27c9d124956a5 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | | | | | Merge "msm: kgsl: Add and link gpu sysfs nodes"Linux Build Service Account2016-10-06
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | |
| * | | | | msm: kgsl: Add and link gpu sysfs nodesHarshdeep Dhatt2016-10-05
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add new sysfs nodes which satisfy a generic format requested by customer. Also add a new node to track GPU temperature. Create links to these nodes at a generic location: /sys/kernel/gpu/ CRs-Fixed: 1064728 Change-Id: I414a07ff4f9ee14b8f882d15644b06a73d5fcf76 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | | | | Merge "msm: kgsl: Add facility to BUG_ON for a gpu fault"Linux Build Service Account2016-10-06
|\ \ \ \ \
| * | | | | msm: kgsl: Add facility to BUG_ON for a gpu faultHareesh Gundu2016-10-03
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Few gpu faults need system level information like voltages, interface clock etc. This information can't be extracted through the snapshot dump. Add a facility to force panic on gpu fault, which will help to extract additional information from the ramdumps. To trigger BUG_ON for a gpu fault: echo 1 > /sys/class/kgsl/kgsl-3d0/snapshot/force_panic Change-Id: I020b5518fcaedd4fecc572b580a989bf117f6ceb Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* / / / / msm: kgsl: Reschedule idle work in case transition to idle state failsDeepak Kumar2016-10-05
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reschedule the idle work in case transition to idle state is rejected because the GPU is busy. This change avoids the condition where transition to NAP state gets rejected due to a pending IRQ which is currently getting served by IRQ handler because of which GPU remains in active state even when GPU is idle. Change-Id: I472a30b6a0e83cdd6957ed12eaa39d0c7731fcb5 Signed-off-by: Deepak Kumar <dkumar@codeaurora.org>
* | | | Merge "msm: kgsl: Change GPU clock gating sequence for A4XX and A5XX"Linux Build Service Account2016-09-30
|\ \ \ \
| * | | | msm: kgsl: Change GPU clock gating sequence for A4XX and A5XXHareesh Gundu2016-09-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disable SP clock before programming the clock gating control registers and enable back SP clock. CRs-Fixed: 1061048 Change-Id: Ic19a8a67fe0e192c9c7c3f855c7eb33901ca2adc Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* | | | | Merge "msm: kgsl: Fix dispatch_q NULL dereference"Linux Build Service Account2016-09-30
|\ \ \ \ \
| * | | | | msm: kgsl: Fix dispatch_q NULL dereferenceHareesh Gundu2016-09-30
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a NULL check for dispatch_q which will avoid NULL pointer dereference in dispatcher_do_fault(). Change-Id: I429aa91f9c5fa92ce2e8b23cc4911454744f75c9 Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* | | | | Merge "msm: kgsl: Do not free gpuaddr range if unmap fails"Linux Build Service Account2016-09-30
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | msm: kgsl: Do not free gpuaddr range if unmap failsHarshdeep Dhatt2016-09-29
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we free up the gpuaddr range whether unmap succeeds or fails. If it fails and we free up the gpuaddr range, there is a possibility that a later allocation will overlap with this range. Mapping this new range leads to a BUG_ON() in the iommu driver which thinks that we are overwriting an existing mapping. To avoid this, we never free the failing gpuaddr range, effectively removing it from being re-used for any future mappings. CRs-Fixed: 1072834 Change-Id: I57dfd6abe6c928dbe4df1bcc682d4093040ccb9f Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | | | Merge "msm: kgsl: Add memory and periphery clock control for A540"Linux Build Service Account2016-09-29
|\ \ \ \
| * | | | msm: kgsl: Add memory and periphery clock control for A540Oleg Perelet2016-09-22
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call clk_set_flag() to turn off both memory core and periphery for bimc_gfx_clk clock and memory for gfx_3d. CRs-Fixed: 1046649 Change-Id: I941f91eeba01f4e7aa5427056bc57875e7edf197 Signed-off-by: Oleg Perelet <operelet@codeaurora.org>
* | | | msm: kgsl: Revisit the GPU snapshot dumpingHareesh Gundu2016-09-26
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new linux header to support 64 bit pagetable address in Linux OS section. Add a new linux context header to support v2+ Linux version in Linux context section. Remove multiple register reads on CP IB registers and have a single CP register read to get the active IB information. Add Active IBs to obj_list in case static snapshot blob is not having enough memory, so that it get dumped into dynamic blob. Add a message in case any active IB is not getting dumped into snapshot binary. Change-Id: Icee01f6ba95e469acac9eed6bf2fdbc83947f5a8 Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
* | | msm: kgsl: Disable rbbm countable on a540Harshdeep Dhatt2016-09-23
|/ / | | | | | | | | | | | | | | | | | | The RBBM_ALWAYS_COUNT countable does not function properly when top level clock gating is enabled. Return -EINVAL when user requests this perfcounter. CRs-Fixed: 1038778 Change-Id: I48d560ab2caa6ea467ac56bf0d323937a475cdde Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | Merge "msm: kgsl: Trigger preemption from preemption complete interrupt"Linux Build Service Account2016-09-16
|\ \
| * | msm: kgsl: Trigger preemption from preemption complete interruptHarshdeep Dhatt2016-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a high priority context submits while preemption to a lower context is underway, then preemption to higher context is not triggered until either we get a GPU command complete interrupt or another workload from the higher context is submitted. To avoid this latency, trigger preemption from the preemption complete interrupt. CRs-Fixed: 1058401 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org> Change-Id: I0a05df94e7bdd5daadfa0713371a595a06b7bda7
* | | Merge "msm: kgsl: Use A540 zap shader for msmcobalt"Linux Build Service Account2016-09-15
|\ \ \
| * | | msm: kgsl: Use A540 zap shader for msmcobaltHarshdeep Dhatt2016-09-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Update adreno-gpulist so that msmcobalt GPU uses A540 zap shader. Change-Id: Ieac8951840f3313bca927f92207318d29c3f8161 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
* | | | Merge "msm: kgsl: Add WQ_SYSFS to the worker threads"Linux Build Service Account2016-09-15
|\ \ \ \ | |/ / / |/| | |
| * | | msm: kgsl: Add WQ_SYSFS to the worker threadsJonathan Wicks2016-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add WQ_SYSFS to the worker threads so that they show up under /sys/bus/workqueue/devices. This allows some of the properties to be adjusted at runtime. Change-Id: I3424ae51461e04e0771560ff1c5b35cdf5b1fd6c Signed-off-by: Jonathan Wicks <jwicks@codeaurora.org>
* | | | Merge "msm: kgsl: Change the shrinker to not free reserved pages"Linux Build Service Account2016-09-12
|\ \ \ \
| * | | | msm: kgsl: Change the shrinker to not free reserved pagesShrenuj Bansal2016-08-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the low memory killer runs early in execution, it could free several reserved pages and for pools which are not allowed to allocate new pages, those pages are gone forever. Change the shrinker to not free the reserved pages from pools which are not allowed to allocate new pages. Crs-Fixed: 1052430 Change-Id: I65631628a3043fe7c2f74d41bb116fe1b6255873 Signed-off-by: Shrenuj Bansal <shrenujb@codeaurora.org>
* | | | | Merge "msm: kgsl: Improve logs for pagefaults on global buffers"Linux Build Service Account2016-09-08
|\ \ \ \ \
| * | | | | msm: kgsl: Improve logs for pagefaults on global buffersSushmita Susheelendra2016-08-25
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Log the nearby allocations for pagefaults on global buffers. Print the names of the allocations that fall around the faulting address on a global buffer. Also add a new debugfs file to list all the global pagetable entries. Useful for debugging pagefaults and other issues with "global" objects. CRs-Fixed: 985631 Change-Id: Ifbbdc69044fc64d7ea02509bf8113ed94eeece1e Signed-off-by: Sushmita Susheelendra <ssusheel@codeaurora.org>
* | | | | Merge "msm: kgsl: Add trace for throttling counters"Linux Build Service Account2016-09-08
|\ \ \ \ \