Commit Graph

89 Commits

Author SHA1 Message Date
qctecmdr
8a9b4f9b81 Merge "drm/msm/dsi-staging: update dsi debug bus error message" 2019-09-19 09:05:22 -07:00
qctecmdr
690701d8c0 Merge "disp: msm: dsi: refine the logic for mode filling and calculation" 2019-09-18 19:21:04 -07:00
Lei Chen
e4fc324197 disp: msm: dsi: refine the logic for mode filling and calculation
Video and command mode will be included in same timing node
when POMS is enabled, but DFPS is only applicable for video
mode, so add this change to differentiate panel mode, and fill
display mode according to panel mode.

Change-Id: I6aa0f8572f23f0612684ed7cdf406b20ab3df822
Signed-off-by: Lei Chen <chenlei@codeaurora.org>
2019-09-12 11:30:36 +08:00
qctecmdr
6795628a68 Merge "disp: msm: dsi: enable multi mode support for video mode panel" 2019-09-11 16:07:01 -07:00
Vara Reddy
ddd2b4fe12 drm/msm/dsi-staging: update dsi debug bus error message
Change lowers the log level of the debug bus dump to info.

Change-Id: I129f9f2e611428dc392d7888df43870beddac307
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-09-11 14:33:58 -07:00
qctecmdr
5dab5f4592 Merge "drm:msm:dsi: Add check for max controller count" 2019-09-10 09:21:21 -07:00
Lei Chen
6c75ae324d disp: msm: dsi: enable multi mode support for video mode panel
Multi-panel can't be supported by video panel, but multi panel
operating mode can be supported for video mode panel, so enable
multi-mode support for video mode panel for panel operating mode
switch.

Change-Id: I9a62ba0c880d13c7201235b9cb65728fa13e3232
Signed-off-by: Lei Chen <chenlei@codeaurora.org>
2019-09-09 02:50:28 -07:00
Lei Chen
4e679c086d disp: msm: dsi: Enable ESD check after POMS done
ESD check is disabled while switching panel operating mode.
This change enables ESD check after panel operating
mode switch is done.

Change-Id: I421d70d9be4c14107a7b51470801157d28874ffb
Signed-off-by: Lei Chen <chenlei@codeaurora.org>
2019-09-04 15:18:27 +08:00
Vishnuvardhan Prodduturi
ea1176e4f8 drm:msm:dsi: Add check for max controller count
Add check for max controller count while iterating through
display ctrl structure to avoid out of bounds access.

Change-Id: If4d32c648e7d34591726286226600a92a357479a
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
2019-08-16 18:35:07 +05:30
Prashant Singh
dc6f198f99 disp: msm: add null pointer sanity checks
Add missing null pointer checks for variables
before referencing them.

Change-Id: I5592ea136d2759e0a4adb288492c6ef00ae79c4d
Signed-off-by: Prashant Singh <prasin@codeaurora.org>
2019-08-14 18:04:45 +05:30
qctecmdr
70bb28eaba Merge "disp: msm: dsi: set default value of PPS CMD delay to zero" 2019-08-09 19:20:51 -07:00
Vara Reddy
122b647775 disp: msm: dsi: update the threshold time based on panel jitter
Minimum threshold time is sum of panel jitter time, prefill lines time
and buffer time of 100usec. For panels with high jitter, we can cross the
default threshold time. Update the calculation to accommodate high jitter
panels in calculating dsi clocks.

Change-Id: I93163a07c7d0b51eb3704609b4efed6c1e277761
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-08-07 16:36:45 -07:00
Satya Rama Aditya Pinapala
2059ae463b disp: msm: dsi: set default value of PPS CMD delay to zero
Fix the default value of post PPS command delay to zero, if
it is not specified as a panel device tree property.

Change-Id: I9aa972839d8be0620036595ac2514290cc6cf697
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-08-05 14:14:44 -07:00
Satya Rama Aditya Pinapala
c32df7879d disp: msm: dsi: add check to avoid null pointer access
Add a check for valid pointer in the DSI CTRL logging macros
to fix null pointer access issues.

Change-Id: I92576e1db6c2d8b52c2adddd8c964bc2455536e4
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-08-05 10:22:46 -07:00
qctecmdr
66b5946f37 Merge "disp: msm: dsi: batch max packet size command with read command" 2019-07-29 14:02:29 -07:00
qctecmdr
ccaaf63268 Merge "disp: msm: dsi: make PPS delay configurable" 2019-07-28 20:29:00 -07:00
qctecmdr
5baf44d58d Merge "disp: msm: dsi: deny an ESD trigger when not enabled" 2019-07-28 02:01:24 -07:00
qctecmdr
541da47199 Merge "drm/msm: perform mode fixup against current state" 2019-07-27 09:33:20 -07:00
qctecmdr
6ad46f19c3 Merge "disp: msm: Use the new notifier function instead of msm_drm_notifier" 2019-07-26 17:45:17 -07:00
Satya Rama Aditya Pinapala
804f6e0de2 disp: msm: dsi: add check before buffer copy
This change adds a check for the length of the buffer
before copying it to avoid a buffer overflow.

Change-Id: I146895660be4060d9896706636257a57c6aef94f
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-23 09:22:26 -07:00
Satya Rama Aditya Pinapala
7b76eb582d disp: msm: dsi: deny an ESD trigger when not enabled
During an ESD trigger, a check must be done to ensure
that ESD is enabled on the particular panel. If not the
panel might end up in a bad state, if the trigger is
propagated successfully instead of reporting a failure.

Change-Id: I310578e7136301ab75ba7f44f14d36ed7e6a519c
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-23 09:21:40 -07:00
qctecmdr
a6bfb7fc1e Merge "disp: msm: dsi: adding prefix for logs" 2019-07-23 01:20:03 -07:00
qctecmdr
04dcddd7c0 Merge "disp: msm: dsi: update default physical panel width and height" 2019-07-22 21:20:22 -07:00
Satya Rama Aditya Pinapala
e52bd3228c disp: msm: dsi: make PPS delay configurable
This change makes the post PPS command delay a panel property.
By default the value is set to zero if not specified.

Change-Id: I50c86ba0f0cb28ff617435e92e9675e5c35404ca
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-22 17:48:51 -07:00
Satya Rama Aditya Pinapala
6c483e3b23 disp: msm: dsi: adding prefix for logs
Adding debug, info and error prefix for log messages
in dsi files. To enable debug logs
run "echo 0x1 > /sys/module/drm/parameters/debug"

Change-Id: I438ac16954bd1d39450f8adeb7fb17f9ea6f8140
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-22 17:43:35 -07:00
qctecmdr
f95b75fdc6 Merge "drm/msm/sde: fix unpaired sde trace" 2019-07-22 13:55:17 -07:00
qctecmdr
82a67564fb Merge "disp: msm: dsi: signal pending clock change in case of DMS" 2019-07-19 05:17:06 -07:00
qctecmdr
f23d62f8b1 Merge "disp: msm: dsi: update DSI PHY sequence for Kona" 2019-07-19 05:17:06 -07:00
qctecmdr
e9482e9e43 Merge "disp: msm: dsi: update dsi pclk in panel mode settings" 2019-07-19 05:17:06 -07:00
qctecmdr
9e4f9dab61 Merge "disp: msm: dsi: remove using static memory for roi commands" 2019-07-19 05:17:06 -07:00
Yuan Zhao
f2fdcee320 disp: msm: dsi: Set the panel test gpio to input
This GPIO is a input signal, so need to set it
to input mode, or it will lead leakage in RBC.
This change is only to fix the power issue.

Change-Id: I87716f646c75dac2f1350a2ea55188829a4ccc9e
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-07-19 00:52:34 -07:00
Yuan Zhao
a7b5db0465 disp: msm: dsi: Add a new DT property panel test pin
This pin is a output pin from panel. Panel can
output signal of internal VSYNC and ERR_FLAG.

Change-Id: Ib8e661ca1fdb33bb7060935edb9bc1f1a858c4b3
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-07-18 23:01:02 -07:00
Vara Reddy
30d6730b20 disp: msm: dsi: update dsi pclk in panel mode settings
Change calculates and updates correct pclk that is being
used to drm modes in kilo hertz.

Change-Id: I7aab10c08689697120d4d7c152f30993defd36d3
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-07-18 15:42:01 -07:00
Vara Reddy
8915522efc disp: msm: dsi: remove using static memory for roi commands
Partial update commands are using static memory. For dual dsi,
both dsi's can manipulate on same memory, if partial update is enabled
on both of them. Change removes the static configuration.

Change-Id: I0ca16324a27427d13deaa9d18e3ab4f47fe1cc21
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-07-18 14:23:28 -07:00
Satya Rama Aditya Pinapala
db61fc7518 disp: msm: dsi: update DSI PHY sequence for Kona
This change updates the DSI PHY sequence for Kona target as
per latest HW team recommendation.

Change-Id: I20f6a81bb1112e9e976acae595b985dad7ad4b7a
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-18 13:59:05 -07:00
Midas Chien
216abbf9fa drm/msm/sde: fix unpaired sde trace
Unpaired trace "sde_power_resource_enable" caused tracer parse
incorrect trace points and display weird state on Chrome. Make
trace "sde_power_resource_enable" pair to fix it.

Bug: 122510119
Test: Checked sde trace can be displayed correctly on Chrome
Change-Id: I938b5648a09e00eaea59070af31a2e6469763087
Signed-off-by: Midas Chien <midaschieh@google.com>
(cherry picked from commit 3a335059bf7a200977e8f4e0a4aa5c6ceca3863a)
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2019-07-18 10:36:25 -07:00
Vara Reddy
4920154558 disp: msm: dsi: update default physical panel width and height
Change updates connector edid node with proper panel physical
dimensions based on panel device tree file.

Change-Id: I36db9c3e5b5aee926a0d029ae742166fc8c7591c
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-07-17 17:22:20 -07:00
Vara Reddy
6c456bad33 disp: msm: dsi: batch max packet size command with read command
Change batches max packet size and read command together, so that
for each esd read, there will not be two independent command transfers.
Without batching sometimes esd thread can hold the panel mutex for
longer time, which can cause framedrops as crtc thread can be blocked on
panel lock to send partial update command and kickoff next frame.

Change-Id: I101283a2559b616911f4312421acb00a8f154dba
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2019-07-17 15:41:30 -07:00
Yuan Zhao
df6d76968e disp: msm: dsi: Add a new function to get drm_panel
A new API to get drm_panel from dsi_display.
The drm_panel was defined as a member of drm_connector.
When doing connector initialize, can set drm_panel to
drm_connector. So this API is needed to get drm_panel
from dsi_dsiplay.

Change-Id: I0ec9de5a9407085048a8fef421b7b28d466085ed
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-07-16 19:32:37 -07:00
Satya Rama Aditya Pinapala
07f4b98ff4 Revert "disp: msm: dsi: update DSI PHY sequence for Kona"
This reverts commit 03295175d6.

Change-Id: I9e31e27196f7ee82f2355bf1300a7895ef8e1306
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-16 13:46:10 -07:00
Satya Rama Aditya Pinapala
094f183278 disp: msm: dsi: signal pending clock change in case of DMS
When there is a change in resolution or FPS, a new clock rate is
calculated. During such a Dynamic Mode Switch, the clock rate
change pending flag needs to be set after it has been calculated.
This flag is later checked before kickoff and the clocks are updated
accordingly.

Change-Id: Iec102796d5c61d01c567f0b6676e9a6d4ed94268
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-16 10:48:39 -07:00
qctecmdr
3e7ef1e1d0 Merge "disp: msm: dsi: Remove drm_panel tracking from sde_connector" 2019-07-13 00:16:26 -07:00
qctecmdr
b6913a5af2 Merge "disp: msm: dsi: snapshot of dsi from 4.14 to 4.19" 2019-07-12 12:29:14 -07:00
qctecmdr
3ab9638e45 Merge "disp: msm: add resource caps structure and api changes" 2019-07-12 02:20:32 -07:00
Satya Rama Aditya Pinapala
edef6ae040 disp: msm: dsi: snapshot of dsi from 4.14 to 4.19
This change is a snapshot of dsi files taken of 4.14
as of commit 764f7c2 (Merge remote-tracking branch
'quic/dev/msm-4.14-display' into msm-4.14)

Change-Id: I8361a844c35a4450f7800964a8da2741676fd6c7
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2019-07-11 12:29:10 -07:00
Yuan Zhao
cc9aa48df6 disp: msm: dsi: Remove drm_panel tracking from sde_connector
The drm_panel defined in sde_connector was not used, so
removed it.

Change-Id: I70a94f11ebd60362d25e37a256f46d3d4942089d
Signed-off-by: Yuan Zhao <yzhao@codeaurora.org>
2019-07-11 20:11:26 +08:00
qctecmdr
e5aaaf8785 Merge "disp: msm: dsi: fix the DMS mode flag setting" 2019-07-06 14:05:03 -07:00
qctecmdr
21af73b82c Merge "drm/msm/dsi-staging: update frame transfer time calculations" 2019-07-06 04:53:51 -07:00
Ray Zhang
dc36ec057b disp: msm: dsi: fix the DMS mode flag setting
DFPS validation doesn't update DSI_MODE_FLAG_DMS when there is
only refresh rate change but not resolution change. This is not
expected. DMS should be able to support this use case if DFPS
is not enabled.

Change-Id: I738bce68b1dc098338281ac95156a483769608c4
Signed-off-by: Ray Zhang <rayz@codeaurora.org>
2019-07-05 11:02:02 +08:00
Adrian Salido
2cd1775195 drm/msm: perform mode fixup against current state
Current mode fixup validates mode against both state mode and crtc mode
which causes mismatch between validation and drm_mode_equal check.
Perform validation against the same mode (crtc->state->mode) to avoid
mismatch and reflect proper state.

Change-Id: If5647f2df0275cc14dd8d761d16e58fd0aa775f7
Signed-off-by: Adrian Salido <salidoa@google.com>
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2019-07-03 13:06:44 -07:00