summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-10disp: msm: dp: fix dp-mst stream double disabled issueXiaowen Wu
There is a corner case when dp-mst stream is disabled twice: 1. stream 1 is enabled 2. cable plugged out, stream 1 is disabled by kernel 3. cable plugged in, enable stream 0 first 4. disable stream 1 Stream 1 is double disabled and will cause hw crash. This change will add the check and skip stream_off if already disabled. Change-Id: Icd1e815a1ed14cd4e784924f3db19b98eb06d571 Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org> Signed-off-by: Sankeerth Billakanti <sbillaka@codeaurora.org>
2020-09-10Merge "disp: msm: read mdp intf line count and trigger dma accordingly"qctecmdr
2020-09-09disp: msm: read mdp intf line count and trigger dma accordinglyHarigovindan P
This change reads the video line count from MDP_INTF_LINE_COUNT register and checks whether DMA trigger happens close to the schedule line. If it is not close to the schedule line, then DMA command transfer is triggered. Without this change there is a chance that when 2 DSI's with broadcast, schedule enabled, the DMA command gets triggered close to the schedule line which could cause DMA timeout. Change-Id: Ida92e63e46b4cc703d57ce24097834f810776aa8 Signed-off-by: Harigovindan P <harigovi@codeaurora.org>
2020-09-08disp: msm: sde: add event to event_list after register is successfulPing Li
Add event to event_list after msm_register_event is successful to avoid use-after-free vulnerability. Change-Id: I144ae82c657c1e2cf16608c0e8768b12a7d27974 Signed-off-by: Ping Li <pingli@codeaurora.org>
2020-09-04Merge "disp: msm: assert nrt vbif halt req as part of rscc mode2 sequence"qctecmdr
2020-08-26disp: msm: sde: update input fence after plane state destroyYashwanth
In few cases, even though input fence is freed, it might get accessed through debugfs node. This change updates input fence in plane state destroy to prevent accessing it. Change-Id: I1a3799249e6a177af87653e17d014d1dad7ca638 Signed-off-by: Yashwanth <yvulapu@codeaurora.org>
2020-08-11Revert "disp: msm: dsi: update args for mipi_dsi_dcs_set_display_brightness"Rajeev Nandan
This reverts commit a54fdd7a6bad990471ace7126e7c5301654f204f which was added because of upstream android-kernel API change 8a744ca6639c. In latest android-kernel revision, the commit 8a744ca6639c ("ANDROID: drm/dsi: Fix byte order of DCS set/get brightness") got reverted, which was modifying the upstream API and was making hard to reconcile it to android-4.19 without breaking APIs for GKI. Android kernel has rolled back the upstream API change and suggested to implemnet it in downstream side. The MIPI brightness byte ordering issue is already been taken care in current dsi driver using bl_inverted_dbv panel config flag. Change-Id: Ia8964a08a8e0b8290b1bb10ee583de064550017a Signed-off-by: Rajeev Nandan <rajeevny@codeaurora.org>
2020-08-10Merge "disp: msm: dsi: Add missing LAST_COMMAND support in debugfs path"qctecmdr
2020-08-07disp: msm: clear dma done interrupt status for slave controllerHarigovindan P
When Broadcast is enabled, DMA_DONE bit gets set for slave controller on command transfer completion but it is not getting cleared. Due to this, DMA transfer failures on slave controller are not getting caught. This patch add supports for clearing DMA_DONE for slave controller on every successful transfer. This also prints error if transfer fails on slave controller. Change-Id: I61ce7b2d8be323adc70d888b5a2416afd9ae9fac Signed-off-by: Harigovindan P <harigovi@codeaurora.org>
2020-08-07disp: msm: dsi: Add missing LAST_COMMAND support in debugfs pathVishnuvardhan Prodduturi
Existing debugfs path for sending DCS command never sets LAST_COMMAND flag due to which commands are not sent to panel. This patches fixes the same. Change-Id: I5fd4cbfca2842736a28d3e75e74f49dafa83e4cc Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
2020-08-06Merge "disp: msm: avoid deadlock by prepending connection_mutex"qctecmdr
2020-08-04Merge "disp: msm: sde: avoid seamless crtc transition in splash handoff commit"qctecmdr
2020-08-04Merge "disp: msm: dsi: Fix num of displays for firmware approach"qctecmdr
2020-08-04Merge "disp: msm: sde: avoid wb commit with null output framebuffer"qctecmdr
2020-08-04Merge "disp: msm: dsi: update args for mipi_dsi_dcs_set_display_brightness"qctecmdr
2020-08-04Merge "disp: rotator: modify the args for sid switch call"qctecmdr
2020-08-04disp: msm: assert nrt vbif halt req as part of rscc mode2 sequenceJayaprakash
Add changes to assert nrt vbif halt request as part of rscc mode2 sequence even if NRT path is not used for rscc enabled targets in kona family to avoid hang in some stability cases. Change-Id: I8b9e13738634e305c9e9ce19dfa3a88b61a2fb9f Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-08-04disp: msm: avoid deadlock by prepending connection_mutexYujun Zhang
Commit caused by dpms on may use extra modeset lock on connection_mutex before msm_atomic_commit, so to avoid deadlock, make the modeset lock within prepare_fence callback to use before waiting for pending_crtcs_event. Change-Id: Ifa2298cd030720cc0e7dcc0f80e63326b3e86768 Signed-off-by: Yujun Zhang <yujunzhang@codeaurora.org>
2020-07-29disp: rotator: modify the args for sid switch callYashwanth
Modify the size of SID's passed as an argument during scm call as per client requirement. Change-Id: I84bbd1e034ba6dcd8ded1ddf3913a735a2139663 Signed-off-by: Yashwanth <yvulapu@codeaurora.org>
2020-07-28disp: msm: dsi: update args for mipi_dsi_dcs_set_display_brightnessRajeev Nandan
The upstream MIPI DSC set/get brightness api has been changed, and now it requires one extra argument which is number of parameters (bytes) to encode brightness value in. The MIPI specification states that one parameter shall be sent for devices that support 8-bit brightness levels. For devices that support brightness levels wider than 8-bit, two parameters shall be sent. Change-Id: I08aabf70207d5b7ab79966a1f12fe18b83c34721 Signed-off-by: Rajeev Nandan <rajeevny@codeaurora.org>
2020-07-28disp: msm: dsi: Fix num of displays for firmware approachLipsa Rout
Currently, in firmware approach, the panel node is null for secondary display. As a result, the number of display remains one, in case of dual display also. This change updates the number of displays. Change-Id: I4b945b8b94d931e0dedf7ca7b27cb1a288b9d6ab Signed-off-by: Lipsa Rout <lrout@codeaurora.org>
2020-07-27Merge "disp: msm: dsi: Add support for secondary display using firmware ↵qctecmdr
approach"
2020-07-24disp: msm: dsi: Add support for secondary display using firmware approachLipsa Rout
Currently, changing panel configuration from firmware approach is present for single display. This change adds support for secondary display using firmware approach. Change-Id: I8095dceed1567d8582c7473c0ac7f59c4666a200 Signed-off-by: Lipsa Rout <lrout@codeaurora.org>
2020-07-24disp: msm: sde: avoid seamless crtc transition in splash handoff commitJayaprakash
Add changes to avoid seamless crtc transition, if CWB is enabled in splash handoff commit. Change-Id: Ib93bd9714b743d3d303e99ba3f87b74e19796dc8 Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-07-23Merge "disp: msm: dsi: fix t_clk_pre in high dsi clock use case"qctecmdr
2020-07-23Merge "disp: msm: dsi: enable xlog in critical paths"qctecmdr
2020-07-23Merge "disp: msm: sde: modify clone_mode in wb phys_enc post cwb detection ↵qctecmdr
logic"
2020-07-23disp: msm: sde: avoid wb commit with null output framebufferKrishna Manikandan
Writeback commit with null output framebuffer is not a valid usecase. Add support to fail such scenarios. Change-Id: I78f89908d95e1f28218491efb9d1d5df3b7608ff Signed-off-by: Krishna Manikandan <mkrishn@codeaurora.org>
2020-07-22Merge "disp: msm: sde: modify Qos for linear format with scaler enabled"qctecmdr
2020-07-22Merge "disp: msm: sde: serialize rm reserve for check only commit"qctecmdr
2020-07-22disp: msm: sde: modify clone_mode in wb phys_enc post cwb detection logicJayaprakash
Add changes to modify in_clone_mode setting post CWB detection logic and after commit failure cases. This change handles two error cases. 1) When there is a WB commit during CWB session, we fail the WB commit as part of atomic_check but in_clone_mode setting in wb phys_enc is not restored to its original value. The previous CWB session is not disabled yet in HW and leads to HW timeouts. 2) If there is an CWB done IRQ scheduled and there is a atomic_check for CWB encoder happening, the CWB done irq triggers an incorrect fence event where the release fence of primary crtc gets signalled early. Change-Id: I80446063e3edc276dc753dbe5c549dcf3a9f3b47 Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-07-17Merge "disp: msm: sde: avoid zero BW votes in cases where planes are staged"qctecmdr
2020-07-17Merge "disp: msm: sde: add allow_gdsc_toggle property for scuba target"qctecmdr
2020-07-16disp: msm: dsi: fix t_clk_pre in high dsi clock use caseRajeev Nandan
The t_clk_pre extend register used to configure the resolution of the t_clk_pre setting. Without this set, the duration of the t_clk_pre would be half of what is needed. This change adds the provision to configure this register. Change-Id: Iac12ac3da949e042fd560fa3945a97555d1283e6 Signed-off-by: Rajeev Nandan <rajeevny@codeaurora.org>
2020-07-14disp: msm: sde: serialize rm reserve for check only commitPrabhanjan Kandula
During back to back mode set, current driver logic fails atomic check during resource allocation with test only if previous commit also with modeset, has tagged resources for allocation but did not commit the resources yet. Since client invoking atomic check before previous mode set commit complete is an expected scenario now, instead of failing atomic check, this change allows resource allocation for next commit also go through by polling till the first mode set is complete. Change-Id: I1261b7d205bb0d886085664fab3664162a419c99 Signed-off-by: Prabhanjan Kandula <pkandula@codeaurora.org>
2020-07-07disp: msm: sde: add allow_gdsc_toggle property for scuba targetYashwanth
During crtc_disable, gdsc toggle will not happen if an external vote(like secure vote) is present. In such cases, this change allows gdsc to toggle by removing the vote temporarily and adding it again. Change-Id: Ib3a745d75bba460ba3563940770726347786348a Signed-off-by: Yashwanth <yvulapu@codeaurora.org>
2020-07-02Merge "disp: msm: sde: update min_prefill lines for lito and lagoon"qctecmdr
2020-07-01disp: msm: sde: modify Qos for linear format with scaler enabledJayaprakash
Add changes to modify the Qos lut index in case of linear format with scaler enabled to be same as macrotile qseed as per Qos recommendation for lagoon target. Change-Id: I3bde4f8fb8eecde954e118e7c909b84e93b0c89d Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-07-01disp: msm: sde: avoid zero BW votes in cases where planes are stagedJayaprakash
During low power state transitions, populate MNOC AB, MNOC per_pipe_ib and core_clk values from the old state in cases where current state values are zeros from userspace but planes are staged. Change-Id: Iaafdbc9be78d4cfb12ee9cefdcf96030c05f5c6d Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-07-01disp: msm: dsi: enable xlog in critical pathsRajeev Nandan
Enable xlog in critical paths to increase debug coverage. Change-Id: I177acd3f2c2ab349f533bb9fbd8a8122539d524b Signed-off-by: Rajeev Nandan <rajeevny@codeaurora.org>
2020-06-30Merge "disp: msm: dp: correct the dp_usbpd driver logging"qctecmdr
2020-06-30Merge "disp: msm: dsi: Update pll delay calculation as per latest DSI HPG"qctecmdr
2020-06-30Merge "disp: msm: dp: avoid register access when lclk is off"qctecmdr
2020-06-29disp: msm: sde: update min_prefill lines for lito and lagoonJayaprakash
Add changes to update min_prefill_lines to 35 for inline rotation usecases in lito and lagoon targets. Change-Id: I1d6ba877972e31a8f950d98ebab8944e1b93cef0 Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-06-27disp: msm: dp: correct the dp_usbpd driver loggingSankeerth Billakanti
Correct the peer_usb_comm log message in dp_usbpd sub module. Change-Id: Iafa49dedcca0d7c8fe84d839a13ed40e69a9552b Signed-off-by: Sankeerth Billakanti <sbillaka@codeaurora.org>
2020-06-26disp: msm: dsi: Update pll delay calculation as per latest DSI HPGRitesh Kumar
As per DSI HPG, pll delay should be 25usec for phy ver 4.0 and 100usec for phy ver 2.0 and 3.0. This change updates pll delay calculation during dynamic DSI clock switch accordingly. Change-Id: Ief5cbdc9304cf5ad025fe3bbe689b93834a1f710 Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
2020-06-25Merge "disp: msm: sde: avoid registering vblank callback during CWB"qctecmdr
2020-06-25disp: msm: dsi: Fix pll delay calculation during clock switchRitesh Kumar
During clock switch, Pll delay is calculated considering escape clock to be in KHz. But escape clock is in Hz. This leads to wrong pll delay calculation. Change-Id: I616d16cc3d775a37e77c7c35bb860c23b1f9e37a Signed-off-by: Ritesh Kumar <riteshk@codeaurora.org>
2020-06-24disp: msm: dp: avoid register access when lclk is offSankeerth Billakanti
Sometimes the link clock is not getting locked when dp display is resumed from PM suspend. This is causing NOC error when registers in link clock domain are accessed without proper checks. The set_colorspace, config_hdr and update_pps connector ops are accessing the registers in link clock domain without checking if the necessary clocks are enabled. These changes will ensure the DP stream clocks are not enabled when link clock enable fails and prevents the connector ops from accessing the registers whose clocks are not enabled. Change-Id: If89d2552ee0ce96493ee8c1666d7677221705d9a Signed-off-by: Sankeerth Billakanti <sbillaka@codeaurora.org>
2020-06-24disp: msm: sde: update dim layer check during secure transitionYashwanth
This change updates check for dim layer while transitioning to secure UI if no planes are staged in previous commit. Change-Id: Iba4a3cf58043a974647c0aabd38cad6d5522169b Signed-off-by: Yashwanth <yvulapu@codeaurora.org>